diff --git a/src/main/java/com/yem/em/utils/AtlasUtils.java b/src/main/java/com/yem/em/utils/AtlasUtils.java index fe97d725..f16085d1 100644 --- a/src/main/java/com/yem/em/utils/AtlasUtils.java +++ b/src/main/java/com/yem/em/utils/AtlasUtils.java @@ -329,6 +329,11 @@ public class AtlasUtils { subentryentity.set("yem_creationtime", new Date()); int yem_enableparno = SubRelationUtils.Getatlasno(entryentity.getString("yem_enableparno")); subentryentity.set("yem_atlasno", yem_enableparno + 1); + //zzs add https://docs.qq.com/sheet/DQkFUcGxLTnRTaWl4?tab=BB08J2 问题974 + if (entryentity.containsProperty("yem_remark") && subentryentity.containsProperty("yem_partremark")) { + subentryentity.set("yem_partremark", entryentity.getString("yem_remark")); + } + //end } else { String yem_enablesubno = entryentity.getString("yem_subno"); for (int j = 0; j < yem_entryentity.size(); j++) { @@ -380,6 +385,11 @@ public class AtlasUtils { entryObject.set("yem_enablesubname", entryentity.getString("yem_enablesubname")); entryObject.set("yem_enablesubenname", entryentity.getString("yem_enablesubenname")); entryObject.set("yem_enablesubqty", entryentity.getBigDecimal("yem_enablesubqty")); + //zzs add https://docs.qq.com/sheet/DQkFUcGxLTnRTaWl4?tab=BB08J2 问题974 + if (entryentity.containsProperty("yem_remark") && subentryentity.containsProperty("yem_partremark")) { + subentryentity.set("yem_partremark", entryentity.getString("yem_remark")); + } + //end } else { String yem_enablesubno = entryentity.getString("yem_enablesubno"); for (int j = 0; j < yem_entryentity.size(); j++) { @@ -397,6 +407,9 @@ public class AtlasUtils { entryObject.set("yem_enablesubname", ""); entryObject.set("yem_enablesubenname", ""); entryObject.set("yem_enablesubqty", BigDecimal.ZERO); + if (entryObject.containsProperty("yem_partremark")) { + entryObject.set("yem_partremark", ""); + } } } break; @@ -457,7 +470,11 @@ public class AtlasUtils { subentryentity.set("yem_creationtime", new Date()); int yem_enableparno = SubRelationUtils.Getatlasno(entryentity.getString("yem_repno")); subentryentity.set("yem_atlasno", yem_enableparno + 1); - + //zzs add https://docs.qq.com/sheet/DQkFUcGxLTnRTaWl4?tab=BB08J2 问题974 + if (entryentity.containsProperty("yem_remark") && subentryentity.containsProperty("yem_partremark")) { + subentryentity.set("yem_partremark", entryentity.getString("yem_remark")); + } + //end } else { String yem_repnumber = entryentity.getString("yem_repnumber"); for (int j = 0; j < yem_entryentity.size(); j++) { @@ -511,7 +528,14 @@ public class AtlasUtils { entryObject.set("yem_enablesubname", entryentity.getString("yem_repname")); entryObject.set("yem_enablesubenname", entryentity.getString("yem_repenname")); entryObject.set("yem_enablesubqty", entryentity.getBigDecimal("yem_repenqty")); - + //zzs add https://docs.qq.com/sheet/DQkFUcGxLTnRTaWl4?tab=BB08J2 问题974 + if (entryentity.containsProperty("yem_remark") && subentryentity.containsProperty("yem_partremark")) { + subentryentity.set("yem_partremark", entryentity.getString("yem_remark")); + } + if (entryentity.containsProperty("yem_remark") && entryObject.containsProperty("yem_partremark")) { + entryObject.set("yem_partremark", entryentity.getString("yem_remark")); + } + //end } else { String yem_repnumber = entryentity.getString("yem_repnumber"); for (int j = 0; j < yem_entryentity.size(); j++) { @@ -529,6 +553,11 @@ public class AtlasUtils { entryObject.set("yem_enablesubname", ""); entryObject.set("yem_enablesubenname", ""); entryObject.set("yem_enablesubqty", BigDecimal.ZERO); + //zzs add https://docs.qq.com/sheet/DQkFUcGxLTnRTaWl4?tab=BB08J2 问题974 + if (entryObject.containsProperty("yem_partremark")) { + entryObject.set("yem_partremark", ""); + } + //end } } break; @@ -884,112 +913,99 @@ public class AtlasUtils { * @param fromCmmp */ public static void addbomchange(List fromCmmp, String yem_producttype) { - QFilter qFilter = new QFilter("number", QCP.equals, "110"); + QFilter qFilter = new QFilter("number", QCP.equals, "0101"); DynamicObject bos_org = BusinessDataServiceHelper.loadSingle("bos_org", "id", qFilter.toArray()); for (int i = 0; i < fromCmmp.size(); i++) { Map map = fromCmmp.get(i); if (map != null) { String changebill_code = map.get("changebill_code").toString(); -// QFilter qFilter1 = new QFilter("number", QCP.equals, changebill_code); -// DynamicObject yem_em_bomchange = BusinessDataServiceHelper.loadSingle("yem_em_bomchange", "id", qFilter1.toArray()); -// if (yem_em_bomchange != null) { -// DynamicObject bomchange = BusinessDataServiceHelper.loadSingle(yem_em_bomchange.getLong("id"), "yem_em_bomchange"); -// if (bomchange != null) { -// DynamicObjectCollection yem_entryentity = bomchange.getDynamicObjectCollection("yem_entryentity"); -// if (yem_entryentity.size() == 0) { -// DynamicObject dynamicObject = yem_entryentity.addNew(); -// dynamicObject.set("yem_changeno", changebill_code);//更改单号 -// dynamicObject.set("yem_parentno", map.get("pcode"));//父件编码 -// dynamicObject.set("yem_parentname", map.get("mater_name"));//父件名称 -// dynamicObject.set("yem_subno", map.get("ccode"));//父件编码 -// dynamicObject.set("yem_subname", map.get("cmater_name"));//子件名称 -// dynamicObject.set("yem_qty", map.get("qty"));//数量 -// if (map.get("break_flag").toString().equals("启用")) { -// dynamicObject.set("yem_enablesta", "A");//启用停用状态 -// } -// if (map.get("break_flag").toString().equals("停用")) { -// dynamicObject.set("yem_enablesta", "B");//启用停用状态 -// } -// dynamicObject.set("yem_enableparno", map.get("pcode"));//替换父件名称 -// dynamicObject.set("yem_enableparname", map.get("mater_name"));//替换父件名称 -// dynamicObject.set("yem_enableddate", map.get("enable_time"));//启用时间 -// dynamicObject.set("yem_downdate", map.get("disable_time"));//停用时间 -// dynamicObject.set("yem_exestate", map.get("state"));//执行状态 -// DynamicObject assatlasdet = seelctDyn("yem_em_assatlasdet", "number", map.get("pcode").toString()); -// if (assatlasdet != null) { -// //是否总成 yem_isass -// dynamicObject.set("yem_isass", true); -// } -// DynamicObject basemodelib = seelctDyn("yem_bd_basemodelib", "number", map.get("pcode").toString()); -// if (basemodelib != null) { -// //是否资源 yem_isass -// dynamicObject.set("yem_isresource", true); -// } -// -// dynamicObject.set("yem_completetime", map.get("complete_time")); -// } else { -// Boolean fag = true; -// String code = map.get("pcode").toString() + "_" + map.get("ccode").toString(); -// for (int j = 0; j < yem_entryentity.size(); j++) { -// DynamicObject dynamicObject = yem_entryentity.get(j); -// String key = dynamicObject.getString("yem_parentno") + "_" + dynamicObject.getString("yem_subno"); -// if (key.equals(code)) { -// fag = false; -// break; -// } -// } -// if (fag) { -// DynamicObject dynamicObject = yem_entryentity.addNew(); -// dynamicObject.set("yem_changeno", changebill_code);//更改单号 -// dynamicObject.set("yem_parentno", map.get("pcode"));//父件编码 -// dynamicObject.set("yem_parentname", map.get("mater_name"));//父件名称 -// dynamicObject.set("yem_subno", map.get("ccode"));//父件编码 -// dynamicObject.set("yem_subname", map.get("cmater_name"));//子件名称 -// dynamicObject.set("yem_qty", map.get("qty"));//数量 -// if (map.get("break_flag").toString().equals("启用")) { -// dynamicObject.set("yem_enablesta", "A");//启用停用状态 -// } -// if (map.get("break_flag").toString().equals("停用")) { -// dynamicObject.set("yem_enablesta", "B");//启用停用状态 -// } -// dynamicObject.set("yem_enableparno", map.get("pcode"));//替换父件名称 -// dynamicObject.set("yem_enableparname", map.get("mater_name"));//替换父件名称 -// dynamicObject.set("yem_enableddate", map.get("enable_time"));//启用时间 -// dynamicObject.set("yem_downdate", map.get("disable_time"));//停用时间 -// dynamicObject.set("yem_exestate", map.get("state"));//执行状态 -// DynamicObject assatlasdet = seelctDyn("yem_em_assatlasdet", "number", map.get("pcode").toString()); -// if (assatlasdet != null) { -// //是否总成 yem_isass -// dynamicObject.set("yem_isass", true); -// } -// DynamicObject basemodelib = seelctDyn("yem_bd_basemodelib", "number", map.get("pcode").toString()); -// if (basemodelib != null) { -// //是否资源 yem_isass -// dynamicObject.set("yem_isresource", true); -// } -// dynamicObject.set("yem_completetime", map.get("complete_time")); -// } -// } -// } -// OperationResult Operate = OperationServiceHelper.executeOperate("save", -// bomchange.getDynamicObjectType().getName(), new DynamicObject[]{bomchange}, OperateOption.create()); -// if (Operate.isSuccess()) { -// -// } -// } else { - String selectfields = DynamicObjectUtil.getSelectfields("yem_em_bomchange", false); - DynamicObject[] loaded = BusinessDataServiceHelper.load("yem_em_bomchange", selectfields, null); - List list = new ArrayList<>(); - if (loaded.length > 0) { - for (DynamicObject dynamicObject : loaded) { - String number = dynamicObject.getString("number"); - list.add(number); + QFilter qFilter1 = new QFilter("number", QCP.equals, changebill_code); + DynamicObject yem_em_bomchange = BusinessDataServiceHelper.loadSingle("yem_em_bomchange", "id", qFilter1.toArray()); + if (yem_em_bomchange != null) { + DynamicObject bomchange = BusinessDataServiceHelper.loadSingle(yem_em_bomchange.getLong("id"), "yem_em_bomchange"); + if (bomchange != null) { + DynamicObjectCollection yem_entryentity = bomchange.getDynamicObjectCollection("yem_entryentity"); + if (yem_entryentity.size() == 0) { + DynamicObject dynamicObject = yem_entryentity.addNew(); + dynamicObject.set("yem_changeno", changebill_code);//更改单号 + dynamicObject.set("yem_parentno", map.get("pcode"));//父件编码 + dynamicObject.set("yem_parentname", map.get("mater_name"));//父件名称 + dynamicObject.set("yem_subno", map.get("ccode"));//父件编码 + dynamicObject.set("yem_subname", map.get("cmater_name"));//子件名称 + dynamicObject.set("yem_qty", map.get("qty"));//数量 + if (map.get("break_flag").toString().equals("启用")) { + dynamicObject.set("yem_enablesta", "A");//启用停用状态 + } + if (map.get("break_flag").toString().equals("停用")) { + dynamicObject.set("yem_enablesta", "B");//启用停用状态 + } + dynamicObject.set("yem_enableparno", map.get("pcode"));//替换父件名称 + dynamicObject.set("yem_enableparname", map.get("mater_name"));//替换父件名称 + dynamicObject.set("yem_enableddate", map.get("enable_time"));//启用时间 + dynamicObject.set("yem_downdate", map.get("disable_time"));//停用时间 + dynamicObject.set("yem_exestate", map.get("state"));//执行状态 + DynamicObject assatlasdet = seelctDyn("yem_em_assatlasdet", "number", map.get("pcode").toString()); + if (assatlasdet != null) { + //是否总成 yem_isass + dynamicObject.set("yem_isass", true); + } + DynamicObject basemodelib = seelctDyn("yem_bd_basemodelib", "number", map.get("pcode").toString()); + if (basemodelib != null) { + //是否资源 yem_isass + dynamicObject.set("yem_isresource", true); + } + + dynamicObject.set("yem_completetime", map.get("complete_time")); + } else { + Boolean fag = true; + String code = map.get("pcode").toString() + "_" + map.get("ccode").toString(); + for (int j = 0; j < yem_entryentity.size(); j++) { + DynamicObject dynamicObject = yem_entryentity.get(j); + String key = dynamicObject.getString("yem_parentno") + "_" + dynamicObject.getString("yem_subno"); + if (key.equals(code)) { + fag = false; + break; + } + } + if (fag) { + DynamicObject dynamicObject = yem_entryentity.addNew(); + dynamicObject.set("yem_changeno", changebill_code);//更改单号 + dynamicObject.set("yem_parentno", map.get("pcode"));//父件编码 + dynamicObject.set("yem_parentname", map.get("mater_name"));//父件名称 + dynamicObject.set("yem_subno", map.get("ccode"));//父件编码 + dynamicObject.set("yem_subname", map.get("cmater_name"));//子件名称 + dynamicObject.set("yem_qty", map.get("qty"));//数量 + if (map.get("break_flag").toString().equals("启用")) { + dynamicObject.set("yem_enablesta", "A");//启用停用状态 + } + if (map.get("break_flag").toString().equals("停用")) { + dynamicObject.set("yem_enablesta", "B");//启用停用状态 + } + dynamicObject.set("yem_enableparno", map.get("pcode"));//替换父件名称 + dynamicObject.set("yem_enableparname", map.get("mater_name"));//替换父件名称 + dynamicObject.set("yem_enableddate", map.get("enable_time"));//启用时间 + dynamicObject.set("yem_downdate", map.get("disable_time"));//停用时间 + dynamicObject.set("yem_exestate", map.get("state"));//执行状态 + DynamicObject assatlasdet = seelctDyn("yem_em_assatlasdet", "number", map.get("pcode").toString()); + if (assatlasdet != null) { + //是否总成 yem_isass + dynamicObject.set("yem_isass", true); + } + DynamicObject basemodelib = seelctDyn("yem_bd_basemodelib", "number", map.get("pcode").toString()); + if (basemodelib != null) { + //是否资源 yem_isass + dynamicObject.set("yem_isresource", true); + } + dynamicObject.set("yem_completetime", map.get("complete_time")); + } + } } - } - for (int i1 = 0; i1 < list.size(); i1++) { - if (list.contains(changebill_code)) { - continue; + OperationResult Operate = OperationServiceHelper.executeOperate("save", + bomchange.getDynamicObjectType().getName(), new DynamicObject[]{bomchange}, OperateOption.create()); + if (Operate.isSuccess()) { + } + } else { DynamicObject cmmptable = BusinessDataServiceHelper.newDynamicObject("yem_em_bomchange"); cmmptable.set("yem_producttype", yem_producttype); cmmptable.set("enable", "1"); @@ -999,7 +1015,6 @@ public class AtlasUtils { cmmptable.set("createorg", bos_org); cmmptable.set("useorg", bos_org); cmmptable.set("creator", YEM.getCurrentUserId()); - cmmptable.set("yem_date", new Date()); DynamicObjectCollection yem_entryentity = cmmptable.getDynamicObjectCollection("yem_entryentity"); DynamicObject dynamicObject = yem_entryentity.addNew(); dynamicObject.set("yem_changeno", changebill_code);//更改单号 @@ -1032,6 +1047,7 @@ public class AtlasUtils { dynamicObject.set("yem_completetime", map.get("complete_time")); OperationResult save = OperationServiceHelper.executeOperate("save", cmmptable.getDynamicObjectType().getName(), new DynamicObject[]{cmmptable}, OperateOption.create()); + if (!save.isSuccess()) { throw new KDBizException("保存失败!" + changebill_code + "_" + save.getMessage()); } @@ -1046,10 +1062,8 @@ public class AtlasUtils { throw new KDBizException("审核失败!" + changebill_code + "_" + save.getMessage()); } } - } } -// } } /**