Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/materialdefinition/MaterialDefinition.java =================================================================== diff -u -r28631 -r33515 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/materialdefinition/MaterialDefinition.java (.../MaterialDefinition.java) (revision 28631) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/materialdefinition/MaterialDefinition.java (.../MaterialDefinition.java) (revision 33515) @@ -199,6 +199,11 @@ * 类型编码(如复大肿瘤分为耗材与介入一次性耗材、中山眼科物资系统推过来的分类类别:如卫生材料、医疗器械等) */ private String categoryCode; + + /** + * 是否打印到标签BJDXZLYY-26 + */ + private String isPrintToLabel = Constants.STR_YES; public static Map ColumnNameAndPoPropertyNameMap = new LinkedHashMap(13); @@ -684,4 +689,14 @@ this.splitAmount = splitAmount; } + + public String getIsPrintToLabel() { + return isPrintToLabel; + } + + + public void setIsPrintToLabel(String isPrintToLabel) { + this.isPrintToLabel = isPrintToLabel; + } + } Index: ssts-web/src/main/webapp/dataUpdater/sqls/4.9.88_4.9.89.sql =================================================================== diff -u --- ssts-web/src/main/webapp/dataUpdater/sqls/4.9.88_4.9.89.sql (revision 0) +++ ssts-web/src/main/webapp/dataUpdater/sqls/4.9.88_4.9.89.sql (revision 33515) @@ -0,0 +1 @@ + update MaterialDefinition set isPrintToLabel = '是' where isPrintToLabel is null; \ No newline at end of file Index: forgon-tools/src/main/java/com/forgon/Constants.java =================================================================== diff -u -r33206 -r33515 --- forgon-tools/src/main/java/com/forgon/Constants.java (.../Constants.java) (revision 33206) +++ forgon-tools/src/main/java/com/forgon/Constants.java (.../Constants.java) (revision 33515) @@ -27,7 +27,7 @@ "4.9.25","4.9.26","4.9.27","4.9.28","4.9.29","4.9.30","4.9.31","4.9.32","4.9.33","4.9.34","4.9.35","4.9.36","4.9.37","4.9.38","4.9.39","4.9.40","4.9.41","4.9.42","4.9.43","4.9.44", "4.9.45","4.9.46","4.9.47","4.9.48","4.9.49","4.9.50","4.9.51","4.9.52","4.9.53","4.9.54","4.9.55","4.9.56","4.9.57","4.9.58","4.9.59","4.9.60","4.9.61","4.9.62", "4.9.63","4.9.64","4.9.65","4.9.66","4.9.67","4.9.68","4.9.69","4.9.70","4.9.71","4.9.72","4.9.73","4.9.74","4.9.75","4.9.76","4.9.77","4.9.78","4.9.79","4.9.80","4.9.81","4.9.82","4.9.83","4.9.84","4.9.85", - "4.9.86","4.9.87","4.9.88"}; + "4.9.86","4.9.87","4.9.88","4.9.89"}; // 版本列表(4.0版本升级4.1版需要分两步:先从4.0升到4.1.0、然后从4.1.0升级4.1最新版本) /*public final static String[] SOFTWARE_VERSION_ARRAY = new String[] { Index: ssts-idcard/src/main/java/com/forgon/disinfectsystem/idcarddefinition/service/IDCardDefinitionManagerImpl.java =================================================================== diff -u -r33302 -r33515 --- ssts-idcard/src/main/java/com/forgon/disinfectsystem/idcarddefinition/service/IDCardDefinitionManagerImpl.java (.../IDCardDefinitionManagerImpl.java) (revision 33302) +++ ssts-idcard/src/main/java/com/forgon/disinfectsystem/idcarddefinition/service/IDCardDefinitionManagerImpl.java (.../IDCardDefinitionManagerImpl.java) (revision 33515) @@ -654,7 +654,15 @@ } }); config.setCycleDetectionStrategy(CycleDetectionStrategy.LENIENT); - String tousseDefinitionJsonStr = JSONObject.fromObject(tousseDefinition,config).toString(); + JSONObject tousseDefinitionJSON = JSONObject.fromObject(tousseDefinition,config); + List materialInstanceList = tousseDefinition.getIsPrintToLabelMaterials(); + //只返回需要打印到标签的材料 + JSONArray isPrintToLabelMaterials = new JSONArray(); + if(CollectionUtils.isNotEmpty(materialInstanceList)){ + isPrintToLabelMaterials = JSONArray.fromObject(materialInstanceList, config); + } + tousseDefinitionJSON.put("materialInstances", isPrintToLabelMaterials); + String tousseDefinitionJsonStr = tousseDefinitionJSON.toString(); JsonObject tousseDefinitionObj = new JsonParser().parse( tousseDefinitionJsonStr).getAsJsonObject(); @@ -1157,10 +1165,14 @@ if(CollectionUtils.isNotEmpty(materialInstances)){ for (MaterialInstance materialInstance : materialInstances) { + MaterialDefinition md = materialInstance.getMaterialDefinition(); + if(md == null || !StringUtils.equals(md.getIsPrintToLabel(), com.forgon.Constants.STR_YES)){ + continue; + } JSONObject json = new JSONObject(); json.put("name", materialInstance.getMaterialName()); json.put("count", materialInstance.getCount()); - json.put("price", materialInstance.getMaterialDefinition().getCost()); + json.put("price", md.getCost() == null ? 0 : md.getCost()); json.put("specification", materialInstance.getSpecification()); materials.add(json); } Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/toussedefinition/TousseDefinition.java =================================================================== diff -u -r33302 -r33515 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/toussedefinition/TousseDefinition.java (.../TousseDefinition.java) (revision 33302) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/basedatamanager/toussedefinition/TousseDefinition.java (.../TousseDefinition.java) (revision 33515) @@ -2475,4 +2475,25 @@ this.printBOMwhenPrintLabel = printBOMwhenPrintLabel; } + /** + * 获取材料定义【是否打印到标签】为“是”的材料 + * @param materialInstances + * @return + */ + @Transient + @JsonIgnore + public List getIsPrintToLabelMaterials() { + List result = new ArrayList(); + if(CollectionUtils.isEmpty(materialInstances)){ + return result; + } + for (MaterialInstance mi : materialInstances) { + MaterialDefinition md = mi.getMaterialDefinition(); + if(md != null && StringUtils.equals(md.getIsPrintToLabel(), Constants.STR_YES)){ + result.add(mi); + } + } + return result; + } + }