Index: ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/inventorymanagement/dwr/InventoryTableManager.java =================================================================== diff -u -r34257 -r34539 --- ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/inventorymanagement/dwr/InventoryTableManager.java (.../InventoryTableManager.java) (revision 34257) +++ ssts-datasync-default-impl/src/main/java/com/forgon/disinfectsystem/inventorymanagement/dwr/InventoryTableManager.java (.../InventoryTableManager.java) (revision 34539) @@ -4,8 +4,14 @@ import java.util.ArrayList; import java.util.Calendar; import java.util.Collection; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; import net.sf.json.JSONObject; +import net.sf.json.JsonConfig; +import net.sf.json.util.CycleDetectionStrategy; +import net.sf.json.util.PropertyFilter; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang.StringUtils; @@ -17,7 +23,9 @@ import com.forgon.disinfectsystem.inventorymanagement.model.StorageEntry; import com.forgon.disinfectsystem.inventorymanagement.model.StorageEntryItem; import com.forgon.disinfectsystem.inventorymanagement.service.InventoryManager; +import com.forgon.tools.json.DateJsonValueProcessor; import com.forgon.tools.json.JSONUtil; +import com.forgon.tools.json.JsonPropertyFilter; import com.forgon.tools.util.ForgonDateUtils; import com.google.gson.JsonObject; @@ -59,6 +67,37 @@ return null; } } + + /** + * 查询入库单明细 + * @param entrySerialNumber + * @param type + * @return + */ + public String findStorageEntryItemsJson(String entrySerialNumber, String type) { + JSONObject result = JSONUtil.buildJsonObject(false); + try { + Collection items = inventoryManager + .findStorageEntryItems(entrySerialNumber, type); + + JsonConfig config = new JsonConfig(); + PropertyFilter propertyFilter = new JsonPropertyFilter(new String[] { + "inventory"}); + config.setJsonPropertyFilter(propertyFilter); + config.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); + config.setExcludes(new String[]{"handler","hibernateLazyInitializer"}); + config.registerJsonValueProcessor(Date.class, new DateJsonValueProcessor("yyyy-MM-dd")); + config.registerJsonValueProcessor(java.sql.Date.class, new DateJsonValueProcessor("yyyy-MM-dd")); + Map map = new HashMap(); + map.put("success", true); + map.put("data", items); + result = JSONObject.fromObject(map, config); + } catch (Exception ex) { + ex.printStackTrace(); + result = JSONUtil.buildJsonObject(false, "加载失败:" + ex.getMessage()); + } + return result.toString(); + } public String startSyncStorageEntry(String jsonParamStr, String type) { try {