Index: ssts-web/src/main/webapp/disinfectsystem/config/dysyy/print/printConfig.js =================================================================== diff -u -r17175 -r19184 --- ssts-web/src/main/webapp/disinfectsystem/config/dysyy/print/printConfig.js (.../printConfig.js) (revision 17175) +++ ssts-web/src/main/webapp/disinfectsystem/config/dysyy/print/printConfig.js (.../printConfig.js) (revision 19184) @@ -1498,6 +1498,46 @@ LODOP.SET_PRINT_STYLEA(0,"Angle",90); LODOP.PRINT(); } +/** + * 器械包管理界面的包定义材料清单 + */ +var tousseDefinitionMaterialsConfig = { + customPrint:printTousseDefinitionMaterialsWithUnitNameAndTipsAndBarcode +} +function printTousseDefinitionMaterialsWithUnitNameAndTipsAndBarcode(tousseDefinitionObj){ + if(isUndefinedOrNullOrEmpty(tousseDefinitionObj)){ + alert('包定义不能为空!'); + return; + } + doGetLodop(); + var ret = buildTousseDefinitionMeterialTable(tousseDefinitionObj,tousseDefinitionObj.unit); + + var tableHtml = ret.tableHtml + ""; + barcode = tousseDefinitionObj.barcode; + if(!isUndefinedOrNullOrEmpty(barcode)){ + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + }else{ + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + } + + //告警语(已注释不打印,经省医护长与封枫、关总确认 since 2016-01-25 SYF) + tableHtml += ""; + tableHtml += ""; + tableHtml += ""; + tableHtml += "
"; + tableHtml += ""; + tableHtml += "
"+barcode; + tableHtml += "
器械总数量:"+ret.amount+"件"; + tableHtml += "
器械总数量:"+ret.amount+"件"; + tableHtml += "
***需要回收,切勿丢失***
"; + LODOP.ADD_PRINT_HTM("10mm",0,"95%","100%",""+tableHtml+""); +} var printConfig = { //发货计划单 invoicePlan : invoicePlanPrintConfig, @@ -1546,6 +1586,8 @@ foreignTousseAppliation : foreignTousseAppliationPrintConfig, // 外来器械包大标签80*50 foreignTousseLargeLabel:foreignTousseLargeLabelConfig, + //打印器械包明细单 + tousseDefinitionMaterials:tousseDefinitionMaterialsConfig, // 标识牌 idCardLargeLabel:idCardLargeLabelConfig, idCardSmallLabel:idCardSmallLabelConfig, Index: ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/dwr/table/TousseDefinitionTableManager.java =================================================================== diff -u -r17584 -r19184 --- ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/dwr/table/TousseDefinitionTableManager.java (.../TousseDefinitionTableManager.java) (revision 17584) +++ ssts-tousse/src/main/java/com/forgon/disinfectsystem/tousse/toussedefinition/dwr/table/TousseDefinitionTableManager.java (.../TousseDefinitionTableManager.java) (revision 19184) @@ -8,10 +8,6 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; -import com.forgon.Constants; -import com.forgon.disinfectsystem.tousse.comboTousse.service.ComboTousseManager; -import com.forgon.disinfectsystem.tousse.comboTousse.service.ComboTousseOrgUnitHandler; - import net.sf.json.JSONArray; import net.sf.json.JSONObject; import net.sf.json.JsonConfig; @@ -20,7 +16,9 @@ import org.apache.commons.lang.ObjectUtils; import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import com.forgon.Constants; import com.forgon.component.grid.GridManager; import com.forgon.directory.acegi.tools.AcegiHelper; import com.forgon.directory.vo.LoginUserData; @@ -29,8 +27,10 @@ import com.forgon.disinfectsystem.entity.basedatamanager.materialinstance.MaterialInstance; import com.forgon.disinfectsystem.entity.basedatamanager.supplyroomconfig.SupplyRoomConfig; import com.forgon.disinfectsystem.entity.basedatamanager.toussedefinition.TousseDefinition; +import com.forgon.disinfectsystem.tousse.comboTousse.service.ComboTousseManager; +import com.forgon.disinfectsystem.tousse.comboTousse.service.ComboTousseOrgUnitHandler; import com.forgon.disinfectsystem.tousse.toussedefinition.service.TousseDefinitionManager; -import com.forgon.tools.db.DatabaseUtil; +import com.forgon.disinfectsystem.tousse.toussedefinition.service.TousseInstanceManager; import com.forgon.tools.hibernate.ObjectDao; import com.forgon.tools.json.JSONUtil; import com.forgon.tools.string.StringTools; @@ -47,6 +47,8 @@ private TousseDefinitionManager tousseDefinitionManager; private SupplyRoomConfigManager supplyRoomConfigManager; private ComboTousseManager comboTousseManagerImpl; + @Autowired + private TousseInstanceManager tousseInstanceManager; private ObjectDao objectDao; @@ -337,37 +339,31 @@ public String getTousseDefinition(String tousseDefinitionIds){ if(StringTools.isNotEmpty(tousseDefinitionIds)){ - String[] ids = tousseDefinitionIds.split(";"); SupplyRoomConfig supplyRoomConfig = supplyRoomConfigManager.getSystemParamsObj(); String unit = supplyRoomConfig == null? "" :supplyRoomConfig.getUnitName(); JSONArray array = new JSONArray(); - for(int i = 0; i < ids.length;++i){ - String tousseDefinitionId = ids[i]; - if(DatabaseUtil.isPoIdValid(tousseDefinitionId)){ - TousseDefinition tousseDefinition = tousseDefinitionManager.getTousseDefinitionById(tousseDefinitionId); - if (tousseDefinition == null) { - continue; - } - tousseDefinition.getMaterialInstances(); - tousseDefinition.buildTousseDefinitionMaterials(); - - JsonConfig config = new JsonConfig(); - config.setExcludes(new String[] { "fieldHandler", "handler", - "idCardDefinitions", "hibernateLazyInitializer", "image", - "tousse", "goodsBatchs", "tousseInstances" }); // 解决hibernate延迟加载的问题 - config.registerDefaultValueProcessor(Double.class, - new DefaultValueProcessor() { - @Override - public Object getDefaultValue( - @SuppressWarnings("rawtypes") Class arg0) { - return null; - } - }); - config.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); - JSONObject tousseDefinitionJson = JSONObject.fromObject(tousseDefinition,config); - JSONUtil.addProperty(tousseDefinitionJson, "unit", unit); - array.add(tousseDefinitionJson); - } + List tds = tousseDefinitionManager.getCollection(tousseDefinitionIds, ";"); + for(TousseDefinition tousseDefinition : tds){ + tousseDefinition.getMaterialInstances(); + tousseDefinition.buildTousseDefinitionMaterials(); + + JsonConfig config = new JsonConfig(); + config.setExcludes(new String[] { "fieldHandler", "handler", + "idCardDefinitions", "hibernateLazyInitializer", "image", + "tousse", "goodsBatchs", "tousseInstances" }); // 解决hibernate延迟加载的问题 + config.registerDefaultValueProcessor(Double.class, + new DefaultValueProcessor() { + @Override + public Object getDefaultValue( + @SuppressWarnings("rawtypes") Class arg0) { + return null; + } + }); + config.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); + JSONObject tousseDefinitionJson = JSONObject.fromObject(tousseDefinition,config); + JSONUtil.addProperty(tousseDefinitionJson, "unit", unit); + JSONUtil.addProperty(tousseDefinitionJson, "barcode", tousseInstanceManager.getTousseDefinitionFixedBarcode(tousseDefinition.getId())); + array.add(tousseDefinitionJson); } JSONObject json = JSONUtil.buildJsonObject(true); JSONUtil.addProperty(json, "tousseDefinitions", array);