From 0234a1df02c80f7d23dbf358a628850db9d2394e Mon Sep 17 00:00:00 2001 From: ljw Date: Fri, 13 Dec 2024 17:15:18 +0800 Subject: [PATCH 01/50] =?UTF-8?q?fix:=201.=E8=AE=A2=E8=88=B1=E9=80=9A?= =?UTF-8?q?=E7=9F=A5=E5=8D=95=E6=8F=90=E4=BA=A4=E5=90=8C=E6=AD=A5EAS?= =?UTF-8?q?=E3=80=81=E9=80=BB=E8=BE=91=E5=A2=9E=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wm/syn/eas/YemDelivernoticeService.java | 27 ++++++++++++++----- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/yem/wm/syn/eas/YemDelivernoticeService.java b/src/main/java/com/yem/wm/syn/eas/YemDelivernoticeService.java index 8b19efef..c1b9ab3f 100644 --- a/src/main/java/com/yem/wm/syn/eas/YemDelivernoticeService.java +++ b/src/main/java/com/yem/wm/syn/eas/YemDelivernoticeService.java @@ -50,7 +50,7 @@ public class YemDelivernoticeService extends AbstractOperationServicePlugIn { dataEntity = BusinessDataServiceHelper.loadSingle(dataEntity.getPkValue(), dataEntity.getDynamicObjectType().getName()); DynamicObject yem_billtype = dataEntity.getDynamicObject("yem_billtype"); String yemSynchronizeeas = dataEntity.getString("yem_synchronizeeas"); - if ("B".equals(yemSynchronizeeas)){ + if ("B".equals(yemSynchronizeeas)) { list.add(selectedRow); continue; } @@ -129,12 +129,20 @@ public class YemDelivernoticeService extends AbstractOperationServicePlugIn { //单据编号 json.put("number", dataEntitie.getString("billno")); //送货客户 -// if (dataEntitie.getString("yem_sale_type").equals("B")) { -// -// } - DynamicObject yemCustomer = dataEntitie.getDynamicObject("yem_customer1"); - if (yemCustomer != null) { - json.put("customer", setJson("number", yemCustomer.getString("number"))); + if (dataEntitie.getString("yem_sale_type").equals("B")) { + DynamicObject yemCustomer = dataEntitie.getDynamicObject("yem_actualcustomer"); + if (yemCustomer != null) { + json.put("customer", setJson("number", yemCustomer.getString("number"))); + json.put("receiveinfo", dataEntitie.getString("yem_customername")); + json.put("paymentcustomer", setJson("number", yemCustomer.getString("number"))); + json.put("ordercustomer", setJson("number", yemCustomer.getString("number"))); + json.put("balancecustomer", setJson("number", yemCustomer.getString("number"))); + } + } else { + DynamicObject yemCustomer = dataEntitie.getDynamicObject("yem_customer1"); + if (yemCustomer != null) { + json.put("customer", setJson("number", yemCustomer.getString("number"))); + } } //币别 DynamicObject yemCurrency = dataEntitie.getDynamicObject("yem_currency"); @@ -276,6 +284,11 @@ public class YemDelivernoticeService extends AbstractOperationServicePlugIn { if (yemWarehouse != null) { json.put("warehouse", setJson("number", yemWarehouse.getString("number"))); } + //送货客户 + if (dataEntitie.getString("yem_sale_type").equals("B")) { + json.put("terminalamount", materialentry.getString("yem_endamount")); + json.put("terminalprice", materialentry.getString("yem_endprice")); + } //库位 DynamicObject yemLocation = materialentry.getDynamicObject("yem_location"); if (yemLocation != null) { From 19c58d6a6d352f45d5c096689a3d6b6eca64addd Mon Sep 17 00:00:00 2001 From: zzs Date: Mon, 16 Dec 2024 10:03:42 +0800 Subject: [PATCH 02/50] =?UTF-8?q?feat:=E5=AF=84=E5=8D=95=E6=94=BE=E5=8D=95?= =?UTF-8?q?=E7=94=B3=E8=AF=B7=E6=8F=90=E4=BA=A4=E6=94=B6=E6=AC=BE=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C=E6=94=B9=E4=B8=BA=E6=94=B9=E6=88=90=E5=BA=94=E6=94=B6?= =?UTF-8?q?=E6=AC=BE=E6=97=A5=E6=9C=9F1=E5=B0=8F=E4=BA=8E=E5=BD=93?= =?UTF-8?q?=E5=89=8D=E6=97=A5=E6=9C=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ExportPresentSubmitsValidator.java | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/yem/wm/es/exportpresent/validator/ExportPresentSubmitsValidator.java b/src/main/java/com/yem/wm/es/exportpresent/validator/ExportPresentSubmitsValidator.java index ef1760f8..bf58ba20 100644 --- a/src/main/java/com/yem/wm/es/exportpresent/validator/ExportPresentSubmitsValidator.java +++ b/src/main/java/com/yem/wm/es/exportpresent/validator/ExportPresentSubmitsValidator.java @@ -1,6 +1,7 @@ package com.yem.wm.es.exportpresent.validator; import com.yem.wm.utils.DynamicObjectUtil; +import com.yem.wm.utils.YEM; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.entity.ExtendedDataEntity; @@ -11,6 +12,7 @@ import kd.bos.servicehelper.BusinessDataServiceHelper; import java.math.BigDecimal; import java.util.ArrayList; +import java.util.Date; import java.util.List; /** @@ -21,28 +23,27 @@ import java.util.List; public class ExportPresentSubmitsValidator extends AbstractValidator { @Override - public void validate() - { + public void validate() { ExtendedDataEntity[] dataEntities = this.getDataEntities(); for (ExtendedDataEntity data : dataEntities) { DynamicObject dataEntity = data.getDataEntity(); // 款项类型 String paymenttype = dataEntity.getString("yem_paymenttype"); if ("A".equals(paymenttype)) { - arrearsVerification(dataEntity,data); + arrearsVerification(dataEntity, data); } } } - private void arrearsVerification(DynamicObject dataEntity,ExtendedDataEntity data) { + private void arrearsVerification(DynamicObject dataEntity, ExtendedDataEntity data) { DynamicObject yemCustomer = dataEntity.getDynamicObject("yem_customer"); - if (yemCustomer!=null){ + if (yemCustomer != null) { long aLong = yemCustomer.getLong("id"); String selectfield = DynamicObjectUtil.getSelectfields("yem_es_storagetrans_xbs", false); String selectfields = DynamicObjectUtil.getEntrySelectfields(selectfield, "yem_es_storagetrans_xbs", "yem_creditdetail", false); DynamicObject[] load = BusinessDataServiceHelper.load("yem_es_storagetrans_xbs", selectfields , new QFilter[]{new QFilter("yem_customer.id", QCP.equals, aLong)}); - if (load.length>0){ + if (load.length > 0) { List list = new ArrayList<>(); for (DynamicObject dynamicObject : load) { DynamicObjectCollection yemCreditdetail = dynamicObject.getDynamicObjectCollection("yem_creditdetail"); @@ -51,17 +52,18 @@ public class ExportPresentSubmitsValidator extends AbstractValidator { BigDecimal yemCountpayback = object.getBigDecimal("yem_countpayback"); BigDecimal yemActualsinkamtCd = object.getBigDecimal("yem_actualsinkamt_cd"); BigDecimal yemPaymentamt1Cd = object.getBigDecimal("yem_paymentamt1_cd"); - if (yemCountpayback.compareTo(BigDecimal.ZERO)<0&&yemActualsinkamtCd.compareTo(yemPaymentamt1Cd)<0){ + Date paydate1 = object.getDate("yem_paydate1");//应收款日期1 + if (YEM.isNotEmpty(paydate1) && paydate1.before(new Date()) && yemActualsinkamtCd.compareTo(yemPaymentamt1Cd) < 0) { DynamicObject yemSalecontractno = object.getDynamicObject("yem_salecontractno"); - if (yemSalecontractno!=null){ - String billno = yemSalecontractno.getString("billno"); - list.add("当前寄单放单客户存在历史合同:["+billno+"],订舱通知单:["+dynamicObjectString+"],逾期未收款,请确认!!!\n"); + if (yemSalecontractno != null) { + String billno = yemSalecontractno.getString("billno"); + list.add("当前寄单放单客户存在历史合同:[" + billno + "],订舱通知单:[" + dynamicObjectString + "],逾期未收款,请确认!!!\n"); } } } } - if (list.size()>0){ + if (list.size() > 0) { this.addMessage(data, list.toString()); } } From 6c064ad87308ca824227de8c7b38c24240472c02 Mon Sep 17 00:00:00 2001 From: zzs Date: Mon, 16 Dec 2024 15:02:18 +0800 Subject: [PATCH 03/50] =?UTF-8?q?feat:=E4=BA=91=E4=B9=8B=E5=AE=B6=E5=9B=9E?= =?UTF-8?q?=E5=86=99=E5=A2=9E=E5=8A=A0=E6=97=A5=E5=BF=97=E8=BE=93=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/controller/YZJAuditController.java | 58 ++++++++++++------- 1 file changed, 37 insertions(+), 21 deletions(-) diff --git a/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java b/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java index 6d91e353..06cdcff9 100644 --- a/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java +++ b/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java @@ -5,6 +5,7 @@ import com.yem.ia.intebilllogon.Utils.BackfilljsonAssignUtils; import com.yem.wm.syn.eas.api.dto.IntebilllogonAuditDTO; import com.yem.wm.syn.eas.api.service.IYZJAuditService; import com.yem.wm.syn.eas.api.service.impl.YZJAuditServiceImpl; +import com.yem.wm.utils.YEM; import com.yem.wm.utils.YunzhijiaUtils; import kd.bos.dataentity.OperateOption; import kd.bos.dataentity.entity.DynamicObject; @@ -59,11 +60,12 @@ public class YZJAuditController { */ @ApiPostMapping("/rewriting") public CustomApiResult rewriting(@NotNull @ApiParam("参数") String data) throws IOException { + DynamicObject billObj = null; try { JSONObject json = JSONObject.parseObject(data); // JSONObject data1 = json.getJSONObject("data"); JSONObject basicInfo = json.getJSONObject("basicInfo"); - logger.info("云之家回写,入参"+data); + logger.info("云之家回写,入参" + data); logger.info(json.toJSONString()); String formCodeId = basicInfo.getString("formCodeId"); //通过表单定义ID获取模板 @@ -80,14 +82,28 @@ public class YZJAuditController { //单据类型 String bos_entityobjectnum = yem_ia_intebilllogon.getString("yem_formid.number"); //获取单据 - DynamicObject billObj = BusinessDataServiceHelper.loadSingle(bos_entityobjectnum, new QFilter[]{new QFilter("yem_forminstid", QCP.equals, formInstId)}); - if (billObj != null) { - billObj = BusinessDataServiceHelper.loadSingle(billObj.get("id"), bos_entityobjectnum); - } - //通过表单实例ID获取日志对象 - DynamicObject ialog = BusinessDataServiceHelper.loadSingle("yem_ialog", new QFilter[]{new QFilter("yem_forminstid", QCP.equals, billObj.get("yem_forminstid"))}); - ialog.set("yem_writeback", data); + billObj = BusinessDataServiceHelper.loadSingle(bos_entityobjectnum, new QFilter[]{new QFilter("yem_forminstid", QCP.equals, formInstId)}); + } catch (Exception e) { + e.printStackTrace(); + return CustomApiResult.fail("501", e.getMessage()); + } + DynamicObject ialog; + + if (YEM.isNotEmpty(billObj) && billObj.containsProperty("yem_forminstid")) { + //通过表单实例ID获取日志对象 + ialog = BusinessDataServiceHelper.loadSingle("yem_ialog", new QFilter[]{new QFilter("yem_forminstid", QCP.equals, billObj.get("yem_forminstid"))}); + } else { + return CustomApiResult.fail("501", "获取审批单据失败!"); + } + + if (YEM.isNotEmpty(ialog)) { + ialog.set("yem_writeback", data); + } else { + return CustomApiResult.fail("501", "获取审批日志失败!"); + } + + try { //TODO 调用云之家获取审批结果接口 JSONObject reqjson = new JSONObject(); reqjson.put("flowInstId", billObj.get("yem_flowinstid")); @@ -111,31 +127,30 @@ public class YZJAuditController { dynamicObject.set("yem_synfalt", "同步失败,点击按钮查看失败详情!"); dynamicObject.set("yem_synfalt_tag", "同步失败,失败原因:" + audit); logger.info("同步失败,失败原因:" + audit); - ialog.set("yem_error","调用单据审核失败"); - ialog.set("yem_error_tag",audit); - ialog.set("yem_success",false); + ialog.set("yem_error", "调用单据审核失败"); + ialog.set("yem_error_tag", audit); + ialog.set("yem_success", false); SaveServiceHelper.update(dynamicObject); // SaveServiceHelper.save(new DynamicObject[]{ialog}); OperationServiceHelper.executeOperate("unsubmit", billObj.getDynamicObjectType().getName(), new Object[]{billObj.get("id")}, OperateOption.create()); - CustomApiResult fail = CustomApiResult.fail("501", audit); - return fail; + return CustomApiResult.fail("501", audit); } else { - ialog.set("yem_success",true); - ialog.set("yem_error"," "); - ialog.set("yem_error_tag"," "); + ialog.set("yem_success", true); + ialog.set("yem_error", " "); + ialog.set("yem_error_tag", " "); dynamicObject.set("yem_synfalt", "同步成功"); SaveServiceHelper.update(dynamicObject); // SaveServiceHelper.save(new DynamicObject[]{ialog}); } } - SaveServiceHelper.save(new DynamicObject[]{ialog}); } catch (Exception e) { - CustomApiResult fail = CustomApiResult.fail("501", e.getMessage()); - return fail; + e.printStackTrace(); + return CustomApiResult.fail("501", e.getMessage()); + } finally { + SaveServiceHelper.save(new DynamicObject[]{ialog}); } - CustomApiResult ces = CustomApiResult.success("调用成功"); - return ces; + return CustomApiResult.success("调用成功"); } /** @@ -206,6 +221,7 @@ public class YZJAuditController { CustomApiResult ces = CustomApiResult.success("调用成功"); return ces; } + /** * 云之家框架合同 合同签章回写 * From bda98e774b72ba9e616e4cc274893ede4e2d5cff Mon Sep 17 00:00:00 2001 From: zzs Date: Tue, 17 Dec 2024 15:31:48 +0800 Subject: [PATCH 04/50] =?UTF-8?q?feat:=E4=B8=8B=E5=8D=95=E5=B9=B3=E5=8F=B0?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=AE=A1=E7=90=86=E5=91=98=E8=B4=A6=E5=8F=B7?= =?UTF-8?q?=EF=BC=8C=E6=9F=A5=E8=AF=A2=E6=89=80=E6=9C=89=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yem/or/api/AssepcDynamic.java | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/yem/or/api/AssepcDynamic.java b/src/main/java/com/yem/or/api/AssepcDynamic.java index f39faddb..e110142f 100644 --- a/src/main/java/com/yem/or/api/AssepcDynamic.java +++ b/src/main/java/com/yem/or/api/AssepcDynamic.java @@ -27,6 +27,7 @@ import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.QueryServiceHelper; +import org.apache.commons.lang3.StringUtils; import org.jetbrains.annotations.NotNull; import javax.validation.constraints.NotBlank; @@ -117,7 +118,9 @@ public class AssepcDynamic { JSONArray jsonArray = new JSONArray(); QFilter qFilter = new QFilter("createorg.number", QCP.equals, "110"); qFilter.and("status", QCP.equals, "C"); - qFilter.and("yem_customer.number", QCP.equals, number); + if (!StringUtils.containsIgnoreCase(number, "admin")) { + qFilter.and("yem_customer.number", QCP.equals, number); + } // qFilter.and("yem_billtype.number", QCP.equals, "yem_es_salesorder_ZJ"); String selectfields = DynamicObjectUtil.getSelectfields("yem_em_devicefiles", false); DynamicObjectCollection dynamicObjects = QueryServiceHelper.query("yem_em_devicefiles", selectfields @@ -444,8 +447,10 @@ public class AssepcDynamic { @ApiPostMapping("/assepcdynamic/electronic_group") public CustomApiResult queryElectronicGroup(@NotNull @ApiParam("客户.编码(116021200012)") String number) { List> result = new ArrayList<>(); - QFilter qFilter = new QFilter("yem_customer.number", QCP.equals, number); - qFilter.and("status", QCP.equals, "C"); + QFilter qFilter = new QFilter("status", QCP.equals, "C"); + if (!StringUtils.containsIgnoreCase(number, "admin")) { + qFilter.and(new QFilter("yem_customer.number", QCP.equals, number)); + } String selectfields = DynamicObjectUtil.getSelectfields("yem_em_devicefiles"); DynamicObjectCollection load = ORM.create().query("yem_em_devicefiles", selectfields + ",id", qFilter.toArray()); for (DynamicObject dynamicObject : load) { @@ -664,7 +669,9 @@ public class AssepcDynamic { public CustomApiResult queryBayedResourceNo(@NotBlank @ApiParam(value = "客户编码", example = "116021200012") String customerNo) { String algoKey = this.getClass().getName(); QFilter qFilter = new QFilter("status", "=", "C"); - qFilter.and("yem_customer.number", "=", customerNo); + if (!StringUtils.containsIgnoreCase(customerNo, "admin")) { + qFilter.and("yem_customer.number", "=", customerNo); + } qFilter.and("yem_model", "is not null", null); ArrayList list = Lists.newArrayList(); list.add("yem_model"); @@ -796,7 +803,9 @@ public class AssepcDynamic { public CustomApiResult queryProductModel(@NotBlank @ApiParam(value = "客户编码", example = "116021200012") String customerNo) { String algoKey = this.getClass().getName(); QFilter qFilter = new QFilter("status", "=", "C"); - qFilter.and("yem_customer.number", "=", customerNo); + if (!StringUtils.containsIgnoreCase(customerNo, "admin")) { + qFilter.and("yem_customer.number", "=", customerNo); + } qFilter.and("group", "is not null", null); ArrayList list = Lists.newArrayList(); list.add("group.number number"); From ae3724ef64112323c3f0785149c442a7b5d2e9b8 Mon Sep 17 00:00:00 2001 From: ljw Date: Tue, 17 Dec 2024 18:26:44 +0800 Subject: [PATCH 05/50] =?UTF-8?q?fix:=201.=E9=94=80=E5=94=AE=E5=87=BA?= =?UTF-8?q?=E5=BA=93=E5=AE=A1=E6=A0=B8=E4=BC=A0EAS=E5=A4=87=E6=B3=A8?= =?UTF-8?q?=E6=9B=B4=E6=94=B9=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yem/wm/syn/eas/delivernotice/DelivernoticeSynEAS.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/yem/wm/syn/eas/delivernotice/DelivernoticeSynEAS.java b/src/main/java/com/yem/wm/syn/eas/delivernotice/DelivernoticeSynEAS.java index 6feefa23..e6aa9630 100644 --- a/src/main/java/com/yem/wm/syn/eas/delivernotice/DelivernoticeSynEAS.java +++ b/src/main/java/com/yem/wm/syn/eas/delivernotice/DelivernoticeSynEAS.java @@ -217,7 +217,7 @@ public class DelivernoticeSynEAS extends AbstractOperationServicePlugIn { //已领料数量 json.put("HavePickQty", 0); //备注 - json.put("Remark", entryentity.getString("yem_remark")); + json.put("Remark", entryentity.getString("yem_conbillnumber")); jsonArray.add(json); } return jsonArray; From 6a717fa9f8898855eeebf093536719301ca6ad7a Mon Sep 17 00:00:00 2001 From: ljw Date: Tue, 17 Dec 2024 19:38:52 +0800 Subject: [PATCH 06/50] =?UTF-8?q?fix:=201.=E5=87=BA=E5=8F=A3=E5=8F=91?= =?UTF-8?q?=E7=A5=A8=E4=BF=9D=E5=AD=98=E5=A4=87=E6=B3=A8=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E6=B1=87=E6=80=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yem/wm/es/exportinvoice/op/ExportInvoiceSaveOP.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/yem/wm/es/exportinvoice/op/ExportInvoiceSaveOP.java b/src/main/java/com/yem/wm/es/exportinvoice/op/ExportInvoiceSaveOP.java index 02defc28..75c335b9 100644 --- a/src/main/java/com/yem/wm/es/exportinvoice/op/ExportInvoiceSaveOP.java +++ b/src/main/java/com/yem/wm/es/exportinvoice/op/ExportInvoiceSaveOP.java @@ -94,8 +94,11 @@ public class ExportInvoiceSaveOP extends AbstractOperationServicePlugIn { yemDestports.append(string);//目的港 } } - dataEntitie.set("yem_remark", yemTradeway + " 成交总额:" + yemSettlement + totalAmount.stripTrailingZeros() + " 汇率:" + yemExrate.stripTrailingZeros() - + "\r\n 海运费:"+ yemseatransfeecurr + yemSeatransfee.stripTrailingZeros() + " 保险费:" + yeminsurefeecurr + yemInsurefee.stripTrailingZeros() + BigDecimal stripTrailingZeros = new BigDecimal(totalAmount.toPlainString().replaceAll("0*$", "").replaceAll("\\.$", "")); + BigDecimal stripTrailingZeros1 = new BigDecimal(yemSeatransfee.toPlainString().replaceAll("0*$", "").replaceAll("\\.$", "")); + BigDecimal stripTrailingZeros2 = new BigDecimal(yemInsurefee.toPlainString().replaceAll("0*$", "").replaceAll("\\.$", "")); + dataEntitie.set("yem_remark", yemTradeway + " 成交总额:" + yemSettlement + stripTrailingZeros + " 汇率:" + yemExrate.stripTrailingZeros() + + "\r\n 海运费:"+ yemseatransfeecurr + stripTrailingZeros1 + " 保险费:" + yeminsurefeecurr + stripTrailingZeros2 + "\r\n 提单号:"+ yemLadbillnum + "\r\n 合同号:"+ queryString + "\r\n 起运港:" + yemShipports + "\r\n 目的港:" + yemDestports); } } From 4efe0c81260a53accfd71c0cd4f09536b38471a6 Mon Sep 17 00:00:00 2001 From: zzs Date: Thu, 19 Dec 2024 09:30:25 +0800 Subject: [PATCH 07/50] =?UTF-8?q?feat:=E8=B0=83=E7=94=A8=E5=8D=95=E6=8D=AE?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=E6=8E=A5=E5=8F=A3=EF=BC=8C=E4=B8=8D=E5=90=AF?= =?UTF-8?q?=E7=94=A8=E7=BD=91=E6=8E=A7=E6=A3=80=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yem/wm/syn/eas/api/OperationalUniversal.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/yem/wm/syn/eas/api/OperationalUniversal.java b/src/main/java/com/yem/wm/syn/eas/api/OperationalUniversal.java index 5d94fb44..aaa19d2b 100644 --- a/src/main/java/com/yem/wm/syn/eas/api/OperationalUniversal.java +++ b/src/main/java/com/yem/wm/syn/eas/api/OperationalUniversal.java @@ -8,6 +8,7 @@ import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.db.DB; import kd.bos.db.DBRoute; +import kd.bos.entity.operate.OperateOptionConst; import kd.bos.entity.operate.result.IOperateInfo; import kd.bos.entity.operate.result.OperationResult; import kd.bos.metadata.dao.MetaCategory; @@ -22,6 +23,7 @@ import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.operation.OperationServiceHelper; import kd.bos.servicehelper.operation.SaveServiceHelper; +import kd.fi.ar.consts.OperationConst; import org.jetbrains.annotations.NotNull; import javax.validation.Valid; @@ -52,7 +54,9 @@ public class OperationalUniversal { FormMetadata formMeta = (FormMetadata) MetadataDao.readRuntimeMeta(id, MetaCategory.Form); String name = formMeta.getName().toString(); if (operate.length() > 0) { - OperationResult audit = OperationServiceHelper.executeOperate(operateKey, dynamicObject.getDynamicObjectType().getName(), new Object[]{dynamicObject.getPkValue()}, OperateOption.create()); + OperateOption operateOption = OperateOption.create(); + operateOption.setVariableValue(OperateOptionConst.MUTEX_IGNOREMODIFY, Boolean.toString(false)); + OperationResult audit = OperationServiceHelper.executeOperate(operateKey, dynamicObject.getDynamicObjectType().getName(), new Object[]{dynamicObject.getPkValue()}, operateOption); if (!audit.isSuccess()) { List allErrorOrValidateInfo = audit.getAllErrorOrValidateInfo(); String message = audit.getMessage(); From bdd2761c1632642d53d9f30b84096bcaaa726026 Mon Sep 17 00:00:00 2001 From: zzs Date: Thu, 19 Dec 2024 15:09:06 +0800 Subject: [PATCH 08/50] =?UTF-8?q?feat:=E4=BA=91=E4=B9=8B=E5=AE=B6=E5=9B=9E?= =?UTF-8?q?=E5=86=99=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96=EF=BC=8C=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/controller/YZJAuditController.java | 38 ++++++++++++++----- 1 file changed, 28 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java b/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java index 06cdcff9..0891c7c4 100644 --- a/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java +++ b/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java @@ -73,14 +73,25 @@ public class YZJAuditController { ArrayList qFilters = new ArrayList<>(); qFilters.add(new QFilter("yem_yzjid", QCP.equals, formCodeId)); qFilters.add(new QFilter("yem_isdisable", QCP.equals, false)); + logger.info("QFilter{}", qFilters); DynamicObject yem_ia_intebilllogon = BusinessDataServiceHelper.loadSingle("yem_ia_intebilllogon", qFilters.toArray(new QFilter[0])); + if (yem_ia_intebilllogon != null) { - yem_ia_intebilllogon = BusinessDataServiceHelper.loadSingle(yem_ia_intebilllogon.getLong("id"), "yem_ia_intebilllogon"); + logger.info("智能审批单据注册:{},{}", yem_ia_intebilllogon.getString("billno"), yem_ia_intebilllogon.getPkValue()); +// yem_ia_intebilllogon = BusinessDataServiceHelper.loadSingle(yem_ia_intebilllogon.getLong("id"), "yem_ia_intebilllogon"); } else { - return CustomApiResult.success("调用成功"); + logger.info("未获取到智能审批单据注册"); + return CustomApiResult.success("调用成功(未获取到智能审批单据注册)"); } - //单据类型 - String bos_entityobjectnum = yem_ia_intebilllogon.getString("yem_formid.number"); + DynamicObject formType = yem_ia_intebilllogon.getDynamicObject("yem_formid"); + String bos_entityobjectnum; + if (YEM.isNotEmpty(formType)) { + bos_entityobjectnum = formType.getString("number"); + } else { + return CustomApiResult.fail("501", "智能审批单据注册:" + yem_ia_intebilllogon.getString("billno") + ",中单据类为空!"); + } + logger.info("获取审批单据,查询条件:{},{}", bos_entityobjectnum, formInstId); + //获取单据 billObj = BusinessDataServiceHelper.loadSingle(bos_entityobjectnum, new QFilter[]{new QFilter("yem_forminstid", QCP.equals, formInstId)}); } catch (Exception e) { @@ -88,15 +99,22 @@ public class YZJAuditController { return CustomApiResult.fail("501", e.getMessage()); } - DynamicObject ialog; + DynamicObject ialog = null; - if (YEM.isNotEmpty(billObj) && billObj.containsProperty("yem_forminstid")) { - //通过表单实例ID获取日志对象 - ialog = BusinessDataServiceHelper.loadSingle("yem_ialog", new QFilter[]{new QFilter("yem_forminstid", QCP.equals, billObj.get("yem_forminstid"))}); - } else { - return CustomApiResult.fail("501", "获取审批单据失败!"); + try { + if (YEM.isNotEmpty(billObj)) { + //通过表单实例ID获取日志对象 + ialog = BusinessDataServiceHelper.loadSingle("yem_ialog", new QFilter[]{new QFilter("yem_forminstid", QCP.equals, billObj.get("yem_forminstid"))}); + } else { + return CustomApiResult.fail("501", "获取审批单据失败!"); + } + + } catch (Exception e) { + e.printStackTrace(); + return CustomApiResult.fail("501", "获取审批日志失败!" + e.getMessage()); } + if (YEM.isNotEmpty(ialog)) { ialog.set("yem_writeback", data); } else { From 8927475eabd45747fa6fa7b72af722ce12ac1e23 Mon Sep 17 00:00:00 2001 From: zzs Date: Thu, 19 Dec 2024 15:59:54 +0800 Subject: [PATCH 09/50] =?UTF-8?q?feat:=E4=BA=91=E4=B9=8B=E5=AE=B6=E5=9B=9E?= =?UTF-8?q?=E5=86=99=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96=EF=BC=8C=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yem/wm/syn/eas/api/controller/YZJAuditController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java b/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java index 0891c7c4..f26ebd41 100644 --- a/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java +++ b/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java @@ -85,7 +85,7 @@ public class YZJAuditController { } DynamicObject formType = yem_ia_intebilllogon.getDynamicObject("yem_formid"); String bos_entityobjectnum; - if (YEM.isNotEmpty(formType)) { + if (formType != null) { bos_entityobjectnum = formType.getString("number"); } else { return CustomApiResult.fail("501", "智能审批单据注册:" + yem_ia_intebilllogon.getString("billno") + ",中单据类为空!"); From 40a3632539a6bebd52b7c0c3865c5be2e6257e1e Mon Sep 17 00:00:00 2001 From: zzs Date: Thu, 19 Dec 2024 16:10:07 +0800 Subject: [PATCH 10/50] =?UTF-8?q?improve:=E4=BC=98=E5=8C=96=E4=B8=8B?= =?UTF-8?q?=E6=8E=A8=E5=8F=98=E6=9B=B4=E4=B8=AD=E9=80=BB=E8=BE=91=EF=BC=8C?= =?UTF-8?q?=E6=8F=90=E4=BA=A4=E6=9F=A5=E8=AF=A2=E6=95=88=E7=8E=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../list/AbstractVersionListPlugin.java | 32 ++++++++++++++----- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/yem/wm/sys/formplugin/list/AbstractVersionListPlugin.java b/src/main/java/com/yem/wm/sys/formplugin/list/AbstractVersionListPlugin.java index 622fec0f..657da19c 100644 --- a/src/main/java/com/yem/wm/sys/formplugin/list/AbstractVersionListPlugin.java +++ b/src/main/java/com/yem/wm/sys/formplugin/list/AbstractVersionListPlugin.java @@ -1,6 +1,9 @@ package com.yem.wm.sys.formplugin.list; import java.util.EventObject; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; @@ -122,14 +125,27 @@ public class AbstractVersionListPlugin extends AbstractListPlugin { if (BillFormId.equals("yem_es_storagetrans")) { entityNumber = BillFormId; } - if (entityNumber.length() > 0) { - for (ListSelectedRow SelectedData : listSelectedData) { - DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(SelectedData.getPrimaryKeyValue(), entityNumber); - String billNo = SelectedData.getBillNo(); - boolean yem_changing = dynamicObject.getBoolean("yem_changing"); - if (yem_changing) { - this.getView().showErrorNotification("单据【" + billNo + "】正在变更中,禁止下推!"); - e.setCancel(true); + if (!entityNumber.isEmpty()) { + + Set ids = new HashSet<>(); + + for (ListSelectedRow datum : listSelectedData) { + Long keyValue = (Long) datum.getPrimaryKeyValue(); + ids.add(keyValue); + } + + Map loads = BusinessDataServiceHelper.loadFromCache(entityNumber, "id, billno, yem_changing", new QFilter[]{new QFilter("id", "in", ids)}); + + for (ListSelectedRow selectedRow : listSelectedData) { + Object primaryKeyValue = selectedRow.getPrimaryKeyValue(); + if (loads.containsKey(primaryKeyValue)) { + DynamicObject dynamicObject = loads.get(primaryKeyValue); + String billno = dynamicObject.getString("billno"); + boolean yem_changing = dynamicObject.getBoolean("yem_changing"); + if (yem_changing) { + this.getView().showErrorNotification("单据【" + billno + "】正在变更中,禁止下推!"); + e.setCancel(true); + } } } } From 32e006e6b602e00457d13df4fd5824a1aac4dfae Mon Sep 17 00:00:00 2001 From: ljw Date: Thu, 19 Dec 2024 18:39:20 +0800 Subject: [PATCH 11/50] =?UTF-8?q?fix:=201.=E5=A4=96=E9=94=80=E5=90=88?= =?UTF-8?q?=E5=90=8C=E6=8F=90=E4=BA=A4=E8=8E=B7=E5=8F=96=E6=A0=87=E5=87=86?= =?UTF-8?q?=E4=BB=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../es/salesorder/utils/SalesOrderUtils.java | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/yem/wm/es/salesorder/utils/SalesOrderUtils.java b/src/main/java/com/yem/wm/es/salesorder/utils/SalesOrderUtils.java index 1148cba4..581886e9 100644 --- a/src/main/java/com/yem/wm/es/salesorder/utils/SalesOrderUtils.java +++ b/src/main/java/com/yem/wm/es/salesorder/utils/SalesOrderUtils.java @@ -416,11 +416,25 @@ public class SalesOrderUtils { materielId.add(materiel.getLong("id")); } } + String yemBdProductsid = ""; + DynamicObject yemBdProducts = dataEntitie.getDynamicObject("yem_bd_products"); + if (yemBdProducts != null) { + yemBdProductsid = yemBdProducts.getString("number"); + } + if ("CC".equals(yemBdProducts.getString("number"))) {//叉车 + yemBdProductsid = "CCPJ"; + } else if ("ZZJ".equals(yemBdProducts.getString("number"))) {//装载机 + yemBdProductsid = "ZZJPJ"; + } else if ("TLJ".equals(yemBdProducts.getString("number"))) {//拖拉机 + yemBdProductsid = "TLJPJ"; + } String selectFields = DynamicObjectUtil.getSelectfields("yem_pricelibrary", false); selectFields = DynamicObjectUtil.getEntrySelectfields(selectFields, "yem_pricelibrary", "yem_accessory", false); DynamicObject[] accPriceLibrarys = BusinessDataServiceHelper.load("yem_pricelibrary", selectFields, - new QFilter[]{new QFilter("yem_accessory.yem_material", QCP.in, materielId), - new QFilter("billstatus", QCP.equals, "C")}); + new QFilter[]{new QFilter("yem_accessory.yem_material", QCP.in, materielId) + , new QFilter("billstatus", QCP.equals, "C") + , new QFilter("yem_productclass.number", QCP.equals, yemBdProductsid) + ,new QFilter("yem_cancelstatus", QCP.equals, "0")}); for (DynamicObject accPriceLibrary : accPriceLibrarys) { Map> allMap = new HashMap<>(); Date bizDate = accPriceLibrary.getDate("yem_bizdate"); @@ -1234,7 +1248,7 @@ public class SalesOrderUtils { qty = qty.add(dynamicObject.getBigDecimal("yem_qty")); } if (singlepartgiftmat.compareTo(BigDecimal.ZERO) == 0) { - singlepartgiftmat = yemSinglepartgiftmat ; + singlepartgiftmat = yemSinglepartgiftmat; } } BigDecimal amount = qty.multiply(singlepartgiftmat); From 2be019fb95ffd8f91d1498fcbf9a111f18e65907 Mon Sep 17 00:00:00 2001 From: zzs Date: Fri, 20 Dec 2024 16:04:12 +0800 Subject: [PATCH 12/50] =?UTF-8?q?fix:CMMP=E6=88=96BOM=E5=8F=98=E6=9B=B4?= =?UTF-8?q?=E5=8D=95=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=EF=BC=8C=E5=90=AF=E7=94=A8=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E8=B5=8B=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yem/em/task/BomChangeTaskEdit.java | 2 +- .../java/com/yem/em/utils/AtlasUtils.java | 92 +++++++++---------- 2 files changed, 44 insertions(+), 50 deletions(-) diff --git a/src/main/java/com/yem/em/task/BomChangeTaskEdit.java b/src/main/java/com/yem/em/task/BomChangeTaskEdit.java index 844cdeb6..6492d2dd 100644 --- a/src/main/java/com/yem/em/task/BomChangeTaskEdit.java +++ b/src/main/java/com/yem/em/task/BomChangeTaskEdit.java @@ -51,7 +51,7 @@ public class BomChangeTaskEdit extends AbstractTask { QFilter qFilter = new QFilter("number", QCP.equals, "110"); DynamicObject bos_org = BusinessDataServiceHelper.loadSingle("bos_org", "id", qFilter.toArray()); String Queryfield = AtlasUtils.Queryfield("changebill_code", "pcode", "ccode", "qty", "break_flag", "complete_time", - "disable_time", "state", "complete_time", "complete_user", "MATER_NAME", "CMATER_NAME", "COMPLETE_TIME"); + "disable_time", "state", "complete_time", "complete_user", "MATER_NAME", "CMATER_NAME", "COMPLETE_TIME", "enable_time"); Calendar calendar = Calendar.getInstance(); // 昨天 diff --git a/src/main/java/com/yem/em/utils/AtlasUtils.java b/src/main/java/com/yem/em/utils/AtlasUtils.java index 981f3467..89e1e6ed 100644 --- a/src/main/java/com/yem/em/utils/AtlasUtils.java +++ b/src/main/java/com/yem/em/utils/AtlasUtils.java @@ -923,10 +923,13 @@ public class AtlasUtils { 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(); + DynamicObjectCollection yem_entryentity = bomchange.getDynamicObjectCollection("yem_entryentity"); + String code = map.get("pcode").toString() + "_" + map.get("ccode").toString(); + boolean exist = false; + for (DynamicObject dynamicObject : yem_entryentity) { + String key = dynamicObject.getString("yem_parentno") + "_" + dynamicObject.getString("yem_subno"); + if (code.equals(key)) { + exist = true; dynamicObject.set("yem_changeno", changebill_code);//更改单号 dynamicObject.set("yem_parentno", map.get("pcode"));//父件编码 dynamicObject.set("yem_parentname", map.get("mater_name"));//父件名称 @@ -956,54 +959,45 @@ public class AtlasUtils { } 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()) { + if (!exist) { + 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 save = OperationServiceHelper.executeOperate("save", + bomchange.getDynamicObjectType().getName(), new DynamicObject[]{bomchange}, OperateOption.create()); + if (!save.isSuccess()) { + throw new KDBizException("保存失败!" + save.getMessage()); } } else { DynamicObject cmmptable = BusinessDataServiceHelper.newDynamicObject("yem_em_bomchange"); From da7aa098ab0aad8901f79926cf47b5b16f940f44 Mon Sep 17 00:00:00 2001 From: ljw Date: Fri, 20 Dec 2024 20:23:07 +0800 Subject: [PATCH 13/50] =?UTF-8?q?fix:=201.=E5=A4=96=E9=94=80=E5=90=88?= =?UTF-8?q?=E5=90=8C=E8=8E=B7=E5=8F=96=E6=A0=87=E5=87=86=E4=BB=B7=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E7=94=9F=E6=88=90=E6=95=B0=E6=8D=AE=E6=9B=B4=E6=94=B9?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yem/wm/es/salesorder/from/SalesOrderZJEdit.java | 6 +++--- .../com/yem/wm/im/clientdemand/utils/ClientUtils.java | 10 ++-------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderZJEdit.java b/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderZJEdit.java index 178061d9..a7d7f5f4 100644 --- a/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderZJEdit.java +++ b/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderZJEdit.java @@ -420,9 +420,9 @@ public class SalesOrderZJEdit extends AbstractBillPlugIn implements Plugin, Befo case "yem_singlenumber": ZJUtils.countCostSumAmountZJ(model);// break; - case "yem_marketraisepribase": - ClientUtils.countStandardSales(model); - break; +// case "yem_marketraisepribase": +// ClientUtils.countStandardSales(model); +// break; case "yem_giftcurrency": countGiftRate(); break; diff --git a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java index ee109a60..9a2680da 100644 --- a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java +++ b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java @@ -12,8 +12,6 @@ import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import org.apache.commons.lang3.ArrayUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import java.math.BigDecimal; import java.math.RoundingMode; @@ -114,11 +112,7 @@ public class ClientUtils { // list.add(new QFilter("yem_productclass.number",QCP.equals,yemBdProductsid)); //读取价格库数据 DynamicObject yem_pricelibrary = null; - if (multiconfig != null && !multiconfig.isEmpty()) { - yem_pricelibrary = BusinessDataServiceHelper.loadSingle("yem_pricelibrary", list.toArray(new QFilter[0])); - } else { - yem_pricelibrary = BusinessDataServiceHelper.loadSingle("yem_pricelibrary", list.toArray(new QFilter[0])); - } + yem_pricelibrary = BusinessDataServiceHelper.loadSingle("yem_pricelibrary", list.toArray(new QFilter[0])); if (yem_pricelibrary != null) { //多功能配置分录行无数据 则跳过查询价格库 if (multiconfig != null && !multiconfig.isEmpty()) { @@ -1950,7 +1944,7 @@ public class ClientUtils { /** * 计算销售FOB单价 *

- * 销售FOB单价=商品明细对应多功能配置中 单台加价金额(结算币别)合计值 + 销售FCA标配青岛单价+FOB与FCA费用差额 + * 销售FOB单价=商品明细对应多功能配置中 单台加价金额(结算币别)合计值 + 销售FCA标配青岛单价 */ public static void calculateSalesFOBUnitPrice(IDataModel model, int idx) { // if (!isFCAPriceItem(model, idx)) { From c6b75c4d8ebcfc7eed353211958c1ca3ea4e64ad Mon Sep 17 00:00:00 2001 From: ljw Date: Fri, 20 Dec 2024 21:28:14 +0800 Subject: [PATCH 14/50] =?UTF-8?q?fix:=201.=E5=A4=96=E9=94=80=E5=90=88?= =?UTF-8?q?=E5=90=8C=E8=8E=B7=E5=8F=96=E6=A0=87=E5=87=86=E4=BB=B7=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E7=94=9F=E6=88=90=E6=95=B0=E6=8D=AE=E6=9B=B4=E6=94=B9?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yem/wm/es/salesorder/from/SalesOrderZJEdit.java | 6 +++--- .../com/yem/wm/im/clientdemand/utils/ClientUtils.java | 10 ++++++++++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderZJEdit.java b/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderZJEdit.java index a7d7f5f4..178061d9 100644 --- a/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderZJEdit.java +++ b/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderZJEdit.java @@ -420,9 +420,9 @@ public class SalesOrderZJEdit extends AbstractBillPlugIn implements Plugin, Befo case "yem_singlenumber": ZJUtils.countCostSumAmountZJ(model);// break; -// case "yem_marketraisepribase": -// ClientUtils.countStandardSales(model); -// break; + case "yem_marketraisepribase": + ClientUtils.countStandardSales(model); + break; case "yem_giftcurrency": countGiftRate(); break; diff --git a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java index 9a2680da..b6d9e614 100644 --- a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java +++ b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java @@ -1950,6 +1950,7 @@ public class ClientUtils { // if (!isFCAPriceItem(model, idx)) { // return; // } + String string = model.getDataEntityType().getName(); DynamicObject dataEntity = model.getDataEntity(true); DynamicObjectCollection c = dataEntity.getDynamicObjectCollection("yem_es_materialinfo"); @@ -1971,6 +1972,15 @@ public class ClientUtils { int rowCount = model.getEntryRowCount("yem_es_materialinfo"); for (int i = 0; i < rowCount; i++) { DynamicObject d = c.get(i); + if (string.equals("yem_es_xsalesorder")){ + String yemLinetype = d.getString("yem_linetype"); + if (!"add".equals(yemLinetype)){ + continue; + } + } + if (!"Z".equals(d.getString("yem_businesssort"))){ + continue; + } DynamicObjectCollection subC = d.getDynamicObjectCollection("yem_multiconfig"); BigDecimal sumAmt = BigDecimal.ZERO; for (DynamicObject sub : subC) { From 61b200ce0b631387fe45dd18fef7fb056d30e838 Mon Sep 17 00:00:00 2001 From: zzs Date: Sat, 21 Dec 2024 11:52:37 +0800 Subject: [PATCH 15/50] =?UTF-8?q?feat:=E4=B8=8B=E5=8D=95=E5=B9=B3=E5=8F=B0?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=91=98=E7=94=A8=E6=88=B7=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=89=80=E6=9C=89=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/yem/or/api/AssepcDynamic.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/yem/or/api/AssepcDynamic.java b/src/main/java/com/yem/or/api/AssepcDynamic.java index e110142f..b3dce481 100644 --- a/src/main/java/com/yem/or/api/AssepcDynamic.java +++ b/src/main/java/com/yem/or/api/AssepcDynamic.java @@ -184,10 +184,10 @@ public class AssepcDynamic { String algoKey = this.getClass().getName(); //查询零件明细表 根据零件编码过滤n qFilters.add(new QFilter("yem_model.yem_products.number", QCP.equals, number)); - if (YEM.isNotEmpty(custom)) { + if (YEM.isNotEmpty(custom) &&(!StringUtils.containsIgnoreCase(number, "admin"))) { qFilters.add(new QFilter("yem_customer.number", QCP.equals, custom)); } else { - return CustomApiResult.fail("501", "客户编码必传"); + return CustomApiResult.fail("501", "客户编码为空!"); } extracted(algoKey, qFilters, jsonArray); // fillMissInfo(algoKey, number, jsonArray); From ecc285745af62655d80f2f58a3f75d2db40ec068 Mon Sep 17 00:00:00 2001 From: zzs Date: Sat, 21 Dec 2024 11:54:43 +0800 Subject: [PATCH 16/50] =?UTF-8?q?feat:=E4=B8=8B=E5=8D=95=E5=B9=B3=E5=8F=B0?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=91=98=E7=94=A8=E6=88=B7=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=89=80=E6=9C=89=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/yem/or/api/AssepcDynamic.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/yem/or/api/AssepcDynamic.java b/src/main/java/com/yem/or/api/AssepcDynamic.java index b3dce481..6250eac3 100644 --- a/src/main/java/com/yem/or/api/AssepcDynamic.java +++ b/src/main/java/com/yem/or/api/AssepcDynamic.java @@ -184,8 +184,10 @@ public class AssepcDynamic { String algoKey = this.getClass().getName(); //查询零件明细表 根据零件编码过滤n qFilters.add(new QFilter("yem_model.yem_products.number", QCP.equals, number)); - if (YEM.isNotEmpty(custom) &&(!StringUtils.containsIgnoreCase(number, "admin"))) { - qFilters.add(new QFilter("yem_customer.number", QCP.equals, custom)); + if (YEM.isNotEmpty(custom)) { + if ((!StringUtils.containsIgnoreCase(number, "admin"))) { + qFilters.add(new QFilter("yem_customer.number", QCP.equals, custom)); + } } else { return CustomApiResult.fail("501", "客户编码为空!"); } From 58ff914ac5ebc1070f9f21726387493b749267a3 Mon Sep 17 00:00:00 2001 From: zzs Date: Sat, 21 Dec 2024 14:53:37 +0800 Subject: [PATCH 17/50] =?UTF-8?q?fix:=E4=BA=91=E4=B9=8B=E5=AE=B6=E5=9B=9E?= =?UTF-8?q?=E5=86=99=E7=8A=B6=E6=80=81=E6=9C=AA=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wm/syn/eas/api/controller/YZJAuditController.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java b/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java index f26ebd41..7b898431 100644 --- a/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java +++ b/src/main/java/com/yem/wm/syn/eas/api/controller/YZJAuditController.java @@ -93,7 +93,16 @@ public class YZJAuditController { logger.info("获取审批单据,查询条件:{},{}", bos_entityobjectnum, formInstId); //获取单据 - billObj = BusinessDataServiceHelper.loadSingle(bos_entityobjectnum, new QFilter[]{new QFilter("yem_forminstid", QCP.equals, formInstId)}); + QFilter qFilter = new QFilter("yem_forminstid", QCP.equals, formInstId); + DynamicObject[] load = BusinessDataServiceHelper.load(bos_entityobjectnum, "id, billno", qFilter.toArray()); + logger.info("查询到审批单据: {} 条", load.length); + for (DynamicObject d : load) { + logger.info("审批单据:{}", d.getString("billno")); + } + if (load.length > 0) { + DynamicObject object = load[0]; + billObj = BusinessDataServiceHelper.loadSingle(object.getPkValue(), object.getDataEntityType().getName()); + } } catch (Exception e) { e.printStackTrace(); return CustomApiResult.fail("501", e.getMessage()); From 14f54229ecb463459c418ea3fec8a986ca876546 Mon Sep 17 00:00:00 2001 From: zzs Date: Mon, 23 Dec 2024 09:21:00 +0800 Subject: [PATCH 18/50] =?UTF-8?q?feat:=E4=B8=8B=E5=8D=95=E5=B9=B3=E5=8F=B0?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=91=98=E7=94=A8=E6=88=B7=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=89=80=E6=9C=89=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/yem/or/api/AssepcDynamic.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/yem/or/api/AssepcDynamic.java b/src/main/java/com/yem/or/api/AssepcDynamic.java index 6250eac3..376cccee 100644 --- a/src/main/java/com/yem/or/api/AssepcDynamic.java +++ b/src/main/java/com/yem/or/api/AssepcDynamic.java @@ -185,7 +185,7 @@ public class AssepcDynamic { //查询零件明细表 根据零件编码过滤n qFilters.add(new QFilter("yem_model.yem_products.number", QCP.equals, number)); if (YEM.isNotEmpty(custom)) { - if ((!StringUtils.containsIgnoreCase(number, "admin"))) { + if ((!StringUtils.containsIgnoreCase(custom, "admin"))) { qFilters.add(new QFilter("yem_customer.number", QCP.equals, custom)); } } else { From 91ca2fcc9bab4ff00cdf01ac5bddc758e0893bd7 Mon Sep 17 00:00:00 2001 From: ljw Date: Mon, 23 Dec 2024 10:26:22 +0800 Subject: [PATCH 19/50] =?UTF-8?q?fix:=202=E3=80=81=E6=8A=A5=E5=85=B3?= =?UTF-8?q?=E5=8D=95-=E5=8D=95=E4=B8=80=E7=AA=97=E5=8F=A3=E9=A1=B5?= =?UTF-8?q?=E7=AD=BE=E5=A2=9E=E5=8A=A0=E5=AD=97=E6=AE=B5=EF=BC=9A=E8=B5=B7?= =?UTF-8?q?=E8=BF=90=E6=B8=AF=E3=80=81=E7=9B=AE=E7=9A=84=E6=B8=AF=EF=BC=8C?= =?UTF-8?q?=E5=8F=96=E5=8D=95=E4=B8=80=E7=AA=97=E5=8F=A3=E7=9A=84{?= =?UTF-8?q?=E8=BF=90=E8=BE=93/=E5=8C=85=E8=A3=85}=E7=9A=84=E5=85=A5?= =?UTF-8?q?=E5=A2=83/=E7=A6=BB=E5=A2=83=E5=8F=A3=E5=B2=B8=E3=80=81?= =?UTF-8?q?=E6=8C=87=E8=BF=90=E6=B8=AF=EF=BC=9B--1=203=E3=80=81=E6=8A=A5?= =?UTF-8?q?=E5=85=B3=E5=8D=95-=E5=8D=95=E4=B8=80=E7=AA=97=E5=8F=A3?= =?UTF-8?q?=E9=A1=B5=E7=AD=BE=E5=A2=9E=E5=8A=A0=E5=AD=97=E6=AE=B5=EF=BC=9A?= =?UTF-8?q?=E6=88=90=E4=BA=A4=E6=96=B9=E5=BC=8F=EF=BC=88=E5=85=B3=E8=81=94?= =?UTF-8?q?=E4=BB=B7=E6=A0=BC=E6=9D=A1=E6=AC=BE=E5=9F=BA=E7=A1=80=E8=B5=84?= =?UTF-8?q?=E6=96=99=EF=BC=89=EF=BC=8C=E5=8F=96=20=E5=8D=95=E4=B8=80?= =?UTF-8?q?=E7=AA=97=E5=8F=A3=E7=9A=84=E5=9F=BA=E6=9C=AC=E4=BF=A1=E6=81=AF?= =?UTF-8?q?-=E6=88=90=E4=BA=A4=E6=96=B9=E5=BC=8F=EF=BC=9B=20--1=204?= =?UTF-8?q?=E3=80=81=E6=8A=A5=E5=85=B3=E5=8D=95-=E6=8A=A5=E5=85=B3?= =?UTF-8?q?=E5=95=86=E5=93=81=E9=A1=B5=E7=AD=BE=E5=A2=9E=E5=8A=A0=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=EF=BC=9A=E8=A7=84=E6=A0=BC=E5=9E=8B=E5=8F=B7=EF=BC=88?= =?UTF-8?q?=E5=A4=9A=E8=A1=8C=E6=96=87=E6=9C=AC-2000=EF=BC=89=EF=BC=8C?= =?UTF-8?q?=E5=8F=96=E5=8D=95=E4=B8=80=E7=AA=97=E5=8F=A3=20=20=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E4=BF=A1=E6=81=AF=E7=9A=84=E8=A7=84=E6=A0=BC=E5=9E=8B?= =?UTF-8?q?=E5=8F=B7=20=20=EF=BC=8C=E5=B9=B6=E6=90=BA=E5=B8=A6=E5=88=B0?= =?UTF-8?q?=E5=87=BA=E5=8F=A3=E5=8F=91=E7=A5=A8=E7=9A=84=E6=8A=A5=E5=85=B3?= =?UTF-8?q?=E5=95=86=E5=93=81=EF=BC=9B=20--1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yem/tws/task/CusdecToDeclaredocxTask.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java b/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java index 7ee5ee5d..5b4a37c8 100644 --- a/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java +++ b/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java @@ -1,6 +1,5 @@ package com.yem.tws.task; -import com.yem.ensign.common.CommonUtils; import com.yem.wm.task.YunZhiJaGetOpenidTask; import com.yem.wm.utils.DynamicObjectUtil; import com.yem.wm.utils.YEM; @@ -27,11 +26,8 @@ import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.schedule.executor.AbstractTask; import kd.bos.servicehelper.BusinessDataServiceHelper; -import kd.bos.servicehelper.QueryServiceHelper; -import kd.bos.servicehelper.botp.BFTrackerServiceHelper; import kd.bos.servicehelper.botp.ConvertServiceHelper; import kd.bos.servicehelper.coderule.CodeRuleServiceHelper; -import kd.bos.servicehelper.operation.DeleteServiceHelper; import kd.bos.servicehelper.operation.OperationServiceHelper; import kd.bos.servicehelper.operation.SaveServiceHelper; @@ -158,6 +154,7 @@ public class CusdecToDeclaredocxTask extends AbstractTask { String yemErroriskey = billno + "-" + yemDecmatericalname + "-" + yemCusqty + "-" + yemCusconsalesprice + "-" + yemCusamount + "-" + aLong; DynamicObject dynamicObject = maps.get(yemErroriskey); if (dynamicObject != null) { + object.set("yem_gmodel",dynamicObject.getString("yem_gmodel")); i = i - 1; } else { seq = seq + object.getString("seq") + ","; @@ -178,6 +175,9 @@ public class CusdecToDeclaredocxTask extends AbstractTask { , declaredocx.getDynamicObject("yem_usdcurrency") , yemFiedatets); declaredocx.set("yem_usbexrate", exchangeRate); + declaredocx.set("yem_despportcodebase",user.getDynamicObject("yem_despportcodebase") ); + declaredocx.set("yem_distinateportbase", user.getDynamicObject("yem_distinateportbase")); + declaredocx.set("yem_transmodbase", user.getDynamicObject("yem_transmodbase")); SaveServiceHelper.update(declaredocx); SaveServiceHelper.save(new DynamicObject[]{declaredocx}); From 5e9246613075c1e75b9d65ef0f1179ab0ca75ca8 Mon Sep 17 00:00:00 2001 From: zzs Date: Mon, 23 Dec 2024 14:08:50 +0800 Subject: [PATCH 20/50] =?UTF-8?q?fix:PLM=E4=B8=BA=E5=8C=B9=E9=85=8D?= =?UTF-8?q?=E5=88=B0BOM=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../task/MatchingPLMChangeUpdateTaskEdit.java | 63 +++---------------- 1 file changed, 10 insertions(+), 53 deletions(-) diff --git a/src/main/java/com/yem/em/task/MatchingPLMChangeUpdateTaskEdit.java b/src/main/java/com/yem/em/task/MatchingPLMChangeUpdateTaskEdit.java index ca5e0578..fb98395c 100644 --- a/src/main/java/com/yem/em/task/MatchingPLMChangeUpdateTaskEdit.java +++ b/src/main/java/com/yem/em/task/MatchingPLMChangeUpdateTaskEdit.java @@ -15,7 +15,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.math.BigDecimal; +import java.util.ArrayList; import java.util.Date; +import java.util.List; import java.util.Map; /** @@ -56,26 +58,20 @@ public class MatchingPLMChangeUpdateTaskEdit extends AbstractTask { Boolean plmMatchBom = isPlmMatchBom(plmObj, bom, plm); exestate = "30".equals(exestate) ? "B" : "A"; if (plmMatchBom != null && !plmMatchBom) { -// Date stoptime = plm.getDate("yem_stoptime"); Date downdate = bom.getDate("yem_downdate"); if (YEM.isNotEmpty(downdate)) { plm.set("yem_enablestatus_before", bom_enablesta); plm.set("yem_stoptime", downdate); -// plm.set("yem_invoktime", bom_completetime); -// plm.set("yem_invokstatus", exestate); } else { logger.info("停用_无时间,不更新,{},{}", plm_billno, plm_parent); } } if (plmMatchBom != null && plmMatchBom) { -// Date starttime = plm.getDate("yem_starttime"); Date enableddate = bom.getDate("yem_enableddate"); if (YEM.isNotEmpty(enableddate)) { plm.set("yem_enablesta", bom_enablesta); plm.set("yem_starttime", enableddate); -// plm.set("yem_invoktime", bom_completetime); -// plm.set("yem_invokstatus", exestate); if (YEM.isNotEmpty(bom_completetime)) { plm.set("yem_invoktime", bom_completetime); @@ -89,51 +85,12 @@ public class MatchingPLMChangeUpdateTaskEdit extends AbstractTask { } } } -// -// for (DynamicObject plmObj : plms) { -// DynamicObjectCollection plm_entry = plmObj.getDynamicObjectCollection("yem_change_detail"); -// String plm_billno = plmObj.getString("yem_gybg_no");//PLM工艺变更单号 -// for (DynamicObject plm : plm_entry) { -// String plm_parent = plm.getString("yem_textfield");//总成编码 -// for (DynamicObject bomObj : boms) { -// DynamicObjectCollection bom_entry = bomObj.getDynamicObjectCollection("yem_entryentity"); -// for (DynamicObject bom : bom_entry) { -// String bom_enablesta = bom.getString("yem_enablesta");//启用停用状态 -// Date bom_completetime = bom.getDate("yem_completetime"); -// Boolean plmMatchBom = isPlmMatchBom(plmObj, bom, plm); -// if (plmMatchBom != null && !plmMatchBom) { -// Date stoptime = plm.getDate("yem_stoptime"); -// if (YEM.isEmpty(stoptime)) { -// plm.set("yem_enablestatus_before", bom_enablesta); -// Date downdate = bom.getDate("yem_downdate"); -// plm.set("yem_stoptime", downdate); -// plm.set("yem_completetime", bom_completetime); -// } else { -// logger.info("停用_已有时间,不更新,{},{}", plm_billno, plm_parent); -// } -// } -// -// if (plmMatchBom != null && plmMatchBom) { -// Date starttime = plm.getDate("yem_starttime"); -// if (YEM.isEmpty(starttime)) { -// Date enableddate = bom.getDate("yem_enableddate"); -// plm.set("yem_enablesta", bom_enablesta); -// plm.set("yem_starttime", enableddate); -// plm.set("yem_completetime", bom_completetime); -// } else { -// logger.info("启用_已有时间,不更新,{},{}", plm_billno, plm_parent); -// } -// } -// } -// } -// } -// } - SaveServiceHelper.save(plms); } /** * PLM匹配BOM, + * * @param plmObj * @param bom * @param plm @@ -151,20 +108,20 @@ public class MatchingPLMChangeUpdateTaskEdit extends AbstractTask { // BigDecimal plm_qty = plm.getBigDecimal("yem_qty_before");//子件数量 String plm_after_parent_now = plm.getString("yem_parent_now");//父项编码 String plm_after_child_now = plm.getString("yem_child_now");//子项编码 - BigDecimal plm_after_qty = plm.getBigDecimal("yem_qty_new"); +// BigDecimal plm_after_qty = plm.getBigDecimal("yem_qty_new"); String bom_before_parent_no = bom.getString("yem_parentno");//总成编码 - String bom_before_child_no = bom.getString("yem_subno");//数量 - BigDecimal bom_before_qty = bom.getBigDecimal("yem_qty"); - logger.info("停用_compare: {} {}, {} {}, {} {}, {} {}", plm_billno, bom_billno, plm_parent, bom_parent, plm_child, bom_child, bom_child, bom_enablesta); + String bom_before_child_no = bom.getString("yem_subno");//子件编码 +// BigDecimal bom_before_qty = bom.getBigDecimal("yem_qty"); +// logger.info("停用_compare: {} {}, {} {}, {} {}, {} {}", plm_billno, bom_billno, plm_parent, bom_parent, plm_child, bom_child, bom_child, bom_enablesta); if (eq(plm_billno, bom_billno) && eq(plm_parent, bom_parent) && eq(plm_child, bom_child) && "B".equals(bom_enablesta)) { logger.info("停用_PLM匹配到BOM,{} {}, {} {}, {} {}", plm_billno, bom_billno, plm_parent, bom_parent, plm_child, bom_child); return false; } - logger.info("启用_compare:{} {}, {} {}, {} {}, {} {}, {}", plm_billno, bom_billno,plm_after_parent_now, bom_before_parent_no, plm_after_child_now, bom_before_child_no, plm_after_qty, bom_before_qty, bom_enablesta); - if (eq(plm_billno, bom_billno) && eq(plm_after_parent_now, bom_before_parent_no) && eq(plm_after_child_now, bom_before_child_no) && eq(plm_after_qty, bom_before_qty) && "A".equals(bom_enablesta)) { - logger.info("启用_PLM匹配到BOM,{} {}, {} {}, {} {}, {} {}", plm_billno, bom_billno,plm_after_parent_now, bom_before_parent_no, plm_after_child_now, bom_before_child_no, plm_after_qty, bom_before_qty); +// logger.info("启用_compare:{} {}, {} {}, {} {}, {} {}, {}", plm_billno, bom_billno,plm_after_parent_now, bom_before_parent_no, plm_after_child_now, bom_before_child_no, plm_after_qty, bom_before_qty, bom_enablesta); + if (eq(plm_billno, bom_billno) && eq(plm_after_parent_now, bom_before_parent_no) && eq(plm_after_child_now, bom_before_child_no) && "A".equals(bom_enablesta)) { + logger.info("启用_PLM匹配到BOM,{} {}, {} {}, {} {}", plm_billno, bom_billno, plm_after_parent_now, bom_before_parent_no, plm_after_child_now, bom_before_child_no); return true; } From 722b66c836c48b4b37279f777cbe453b915ff9dc Mon Sep 17 00:00:00 2001 From: zzs Date: Mon, 23 Dec 2024 14:09:07 +0800 Subject: [PATCH 21/50] =?UTF-8?q?fix:=E7=94=9F=E6=88=90=E6=9B=BF=E6=8D=A2?= =?UTF-8?q?=E5=85=B3=E7=B3=BB=E6=8A=A5=E9=94=99=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../GenerateReplaceRelationshipTaskEdit.java | 34 ++++++++++++++----- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java b/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java index 4d7b2ee4..8a4aee7a 100644 --- a/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java +++ b/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java @@ -2,6 +2,7 @@ package com.yem.em.task; import com.yem.em.utils.AtlasUtils; import com.yem.wm.utils.AttachmentUtil; +import com.yem.wm.utils.DynamicObjectUtil; import com.yem.wm.utils.YEM; import kd.bos.context.RequestContext; import kd.bos.dataentity.entity.DynamicObject; @@ -22,6 +23,7 @@ import java.util.*; import static com.yem.em.task.MatchingPLMChangeUpdateTaskEdit.*; import static com.yem.em.utils.AtlasUtils.seelctDyn; +import static com.yem.rf.utils.RFUtils.getBaseQFilter; /** * @Description: 1、如《PLM变更单》分录【替换关系】=【相互替换】【新替换旧】【互不替换】,分录【启用停用状态】=‘停用’,并且【替换件启用停用状态】=‘启用’,更新当前行【执行状态】为【完成】、【完成时间】默认当前时间,并生成替换关系,记录替换关系id以及行id @@ -120,23 +122,37 @@ public class GenerateReplaceRelationshipTaskEdit extends AbstractTask { Map successMap = new HashMap<>(); DynamicObject bomChange = createBOMChange(plmObj, enabled); DynamicObjectCollection entry = bomChange.getDynamicObjectCollection("yem_entryentity"); + String selectfields = DynamicObjectUtil.getSelectfields("yem_em_replace"); + selectfields = DynamicObjectUtil.getEntrySelectfields(selectfields, "yem_em_replace", "yem_entryentity"); if (!entry.isEmpty()) { DynamicObject replace = null; String billno = plmObj.getString("billno"); String gybg_no = plmObj.getString("yem_gybg_no"); if (entry.size() == 1) { - logger.info("生成替换关系:PLM单号:{}, PLM工艺变更单号:{},父项编码:{}", billno, gybg_no, enabled.get(0).getString("yem_textfield")); + logger.info("生成替换关系:PLM单号:{}, PLM工艺变更单号:{},父项编码:{}", billno, gybg_no, entry.get(0).getString("yem_parentno")); logger.info("生成_当前替换关系:{}", entry.get(0).getString("yem_replace")); replace = AtlasUtils.Addreplace(bomChange, entry.get(0), null, "yem_em_replace", "add", "PLM"); successMap.put(entry.get(0).getLong("id"), bomChange); - } - for (DynamicObject entryObject : entry) { - int idx = entry.indexOf(entryObject); - if (idx == 0) continue; - logger.info("更新替换关系:PLM单号:{}, PLM工艺变更单号:{},父项编码:{}", billno, gybg_no, entryObject.getString("yem_textfield")); - logger.info("更新_替换关系:{}", entryObject.getString("yem_replace")); - replace = AtlasUtils.Addreplace(bomChange, entry.get(0), replace, "yem_em_replace", "update", "PLM"); - successMap.put(entryObject.getLong("id"), bomChange); + } else { + for (DynamicObject entryObject : entry) { + int idx = entry.indexOf(entryObject); + if (idx == 0) { + QFilter qFilter = new QFilter("status", "=", "C"); + qFilter.and("number", "=", bomChange.getString("number")); + DynamicObject[] load = BusinessDataServiceHelper.load("yem_em_replace", selectfields, qFilter.toArray()); + if (load.length == 1) { + replace = load[0]; + replace = AtlasUtils.Addreplace(bomChange, entry.get(0), replace, "yem_em_replace", "update", "PLM"); + } else { + replace = AtlasUtils.Addreplace(bomChange, entry.get(0), null, "yem_em_replace", "add", "PLM"); + } + continue; + }; + logger.info("更新替换关系:PLM单号:{}, PLM工艺变更单号:{},父项编码:{}", billno, gybg_no, entryObject.getString("yem_parentno")); + logger.info("更新_替换关系:{}", entryObject.getString("yem_replace")); + replace = AtlasUtils.Addreplace(bomChange, entry.get(0), replace, "yem_em_replace", "update", "PLM"); + successMap.put(entryObject.getLong("id"), bomChange); + } } } List list = new ArrayList<>(); From 07f16395d328877f87be19aec508d6daf90f3605 Mon Sep 17 00:00:00 2001 From: ljw Date: Mon, 23 Dec 2024 17:33:06 +0800 Subject: [PATCH 22/50] Revert "fix:" This reverts commit 91ca2fcc9bab4ff00cdf01ac5bddc758e0893bd7. --- .../java/com/yem/tws/task/CusdecToDeclaredocxTask.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java b/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java index 5b4a37c8..7ee5ee5d 100644 --- a/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java +++ b/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java @@ -1,5 +1,6 @@ package com.yem.tws.task; +import com.yem.ensign.common.CommonUtils; import com.yem.wm.task.YunZhiJaGetOpenidTask; import com.yem.wm.utils.DynamicObjectUtil; import com.yem.wm.utils.YEM; @@ -26,8 +27,11 @@ import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.schedule.executor.AbstractTask; import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.QueryServiceHelper; +import kd.bos.servicehelper.botp.BFTrackerServiceHelper; import kd.bos.servicehelper.botp.ConvertServiceHelper; import kd.bos.servicehelper.coderule.CodeRuleServiceHelper; +import kd.bos.servicehelper.operation.DeleteServiceHelper; import kd.bos.servicehelper.operation.OperationServiceHelper; import kd.bos.servicehelper.operation.SaveServiceHelper; @@ -154,7 +158,6 @@ public class CusdecToDeclaredocxTask extends AbstractTask { String yemErroriskey = billno + "-" + yemDecmatericalname + "-" + yemCusqty + "-" + yemCusconsalesprice + "-" + yemCusamount + "-" + aLong; DynamicObject dynamicObject = maps.get(yemErroriskey); if (dynamicObject != null) { - object.set("yem_gmodel",dynamicObject.getString("yem_gmodel")); i = i - 1; } else { seq = seq + object.getString("seq") + ","; @@ -175,9 +178,6 @@ public class CusdecToDeclaredocxTask extends AbstractTask { , declaredocx.getDynamicObject("yem_usdcurrency") , yemFiedatets); declaredocx.set("yem_usbexrate", exchangeRate); - declaredocx.set("yem_despportcodebase",user.getDynamicObject("yem_despportcodebase") ); - declaredocx.set("yem_distinateportbase", user.getDynamicObject("yem_distinateportbase")); - declaredocx.set("yem_transmodbase", user.getDynamicObject("yem_transmodbase")); SaveServiceHelper.update(declaredocx); SaveServiceHelper.save(new DynamicObject[]{declaredocx}); From 75341183013ef13037b5e0b35bfadb7c016144a6 Mon Sep 17 00:00:00 2001 From: ljw Date: Mon, 23 Dec 2024 17:33:36 +0800 Subject: [PATCH 23/50] =?UTF-8?q?=EF=BC=881=EF=BC=89=E5=A6=82=E6=9E=9C?= =?UTF-8?q?=E7=BB=93=E7=AE=97=E5=B8=81=E5=88=AB=3D=E7=BE=8E=E5=85=83?= =?UTF-8?q?=EF=BC=9A=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=E2=91=A0=E3=80=80=E6=89=A3=E5=87=8F=E5=90=8E=E9=87=91?= =?UTF-8?q?=E9=A2=9D=EF=BC=88=E7=BE=8E=E5=85=83=EF=BC=89=3D=E4=B8=8A?= =?UTF-8?q?=E6=AC=A1=E7=BE=8E=E5=85=83=E9=87=91=E9=A2=9D=EF=BC=88=E5=AE=9E?= =?UTF-8?q?=E9=99=85=EF=BC=89+=20=E9=85=8D=E4=BB=B6=E8=B5=84=E9=87=91?= =?UTF-8?q?=E6=B1=A0=E5=A2=9E=E5=8A=A0=E9=87=91=E9=A2=9D-=E9=85=8D?= =?UTF-8?q?=E4=BB=B6=E8=B5=84=E9=87=91=E6=B1=A0=E6=89=A3=E5=87=8F=E9=87=91?= =?UTF-8?q?=E9=A2=9D=EF=BC=9B=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=E2=91=A1=E3=80=80=E6=89=A3=E5=87=8F=E5=90=8E?= =?UTF-8?q?=E9=87=91=E9=A2=9D=EF=BC=88=E4=BA=BA=E6=B0=91=E5=B8=81=EF=BC=89?= =?UTF-8?q?=3D=20=E4=B8=8A=E6=AC=A1=E4=BA=BA=E6=B0=91=E5=B8=81=E9=87=91?= =?UTF-8?q?=E9=A2=9D=EF=BC=88=E5=AE=9E=E9=99=85=EF=BC=89=EF=BC=9B=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=EF=BC=882?= =?UTF-8?q?=EF=BC=89=E5=A6=82=E6=9E=9C=E7=BB=93=E7=AE=97=E5=B8=81=E5=88=AB?= =?UTF-8?q?=3D=E4=BA=BA=E6=B0=91=E5=B8=81=EF=BC=9A=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=20=20=20=E2=91=A0=E3=80=80=E6=89=A3?= =?UTF-8?q?=E5=87=8F=E5=90=8E=E9=87=91=E9=A2=9D=EF=BC=88=E7=BE=8E=E5=85=83?= =?UTF-8?q?=EF=BC=89=3D=E4=B8=8A=E6=AC=A1=E7=BE=8E=E5=85=83=E9=87=91?= =?UTF-8?q?=E9=A2=9D=EF=BC=88=E5=AE=9E=E9=99=85=EF=BC=89=EF=BC=9B=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=E2=91=A1?= =?UTF-8?q?=E3=80=80=E6=89=A3=E5=87=8F=E5=90=8E=E9=87=91=E9=A2=9D=EF=BC=88?= =?UTF-8?q?=E4=BA=BA=E6=B0=91=E5=B8=81=EF=BC=89=3D=20=E4=B8=8A=E6=AC=A1?= =?UTF-8?q?=E4=BA=BA=E6=B0=91=E5=B8=81=E9=87=91=E9=A2=9D=EF=BC=88=E5=AE=9E?= =?UTF-8?q?=E9=99=85=EF=BC=89+=20=E9=85=8D=E4=BB=B6=E8=B5=84=E9=87=91?= =?UTF-8?q?=E6=B1=A0=E5=A2=9E=E5=8A=A0=E9=87=91=E9=A2=9D-=E9=85=8D?= =?UTF-8?q?=E4=BB=B6=E8=B5=84=E9=87=91=E6=B1=A0=E6=89=A3=E5=87=8F=E9=87=91?= =?UTF-8?q?=E9=A2=9D=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java | 4 ---- .../com/yem/wm/im/debcrednotenew/op/DebCredNewSubmitOp.java | 2 -- 2 files changed, 6 deletions(-) diff --git a/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java b/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java index 7ee5ee5d..c05481a2 100644 --- a/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java +++ b/src/main/java/com/yem/tws/task/CusdecToDeclaredocxTask.java @@ -1,6 +1,5 @@ package com.yem.tws.task; -import com.yem.ensign.common.CommonUtils; import com.yem.wm.task.YunZhiJaGetOpenidTask; import com.yem.wm.utils.DynamicObjectUtil; import com.yem.wm.utils.YEM; @@ -27,11 +26,8 @@ import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.schedule.executor.AbstractTask; import kd.bos.servicehelper.BusinessDataServiceHelper; -import kd.bos.servicehelper.QueryServiceHelper; -import kd.bos.servicehelper.botp.BFTrackerServiceHelper; import kd.bos.servicehelper.botp.ConvertServiceHelper; import kd.bos.servicehelper.coderule.CodeRuleServiceHelper; -import kd.bos.servicehelper.operation.DeleteServiceHelper; import kd.bos.servicehelper.operation.OperationServiceHelper; import kd.bos.servicehelper.operation.SaveServiceHelper; diff --git a/src/main/java/com/yem/wm/im/debcrednotenew/op/DebCredNewSubmitOp.java b/src/main/java/com/yem/wm/im/debcrednotenew/op/DebCredNewSubmitOp.java index d4db9813..9e1d1753 100644 --- a/src/main/java/com/yem/wm/im/debcrednotenew/op/DebCredNewSubmitOp.java +++ b/src/main/java/com/yem/wm/im/debcrednotenew/op/DebCredNewSubmitOp.java @@ -9,7 +9,6 @@ import kd.bos.entity.plugin.AbstractOperationServicePlugIn; import kd.bos.entity.plugin.AddValidatorsEventArgs; import kd.bos.entity.plugin.PreparePropertysEventArgs; import kd.bos.entity.plugin.args.BeforeOperationArgs; -import kd.bos.entity.plugin.args.BeginOperationTransactionArgs; import kd.bos.entity.plugin.args.EndOperationTransactionArgs; import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; @@ -19,7 +18,6 @@ import kd.bos.servicehelper.operation.SaveServiceHelper; import java.math.BigDecimal; import java.util.HashMap; -import java.util.List; import java.util.Map; /** From c08202795b7ca5bfd403ee6e4582a0ba562b58b6 Mon Sep 17 00:00:00 2001 From: zzs Date: Tue, 24 Dec 2024 14:27:42 +0800 Subject: [PATCH 24/50] =?UTF-8?q?fix:=E7=94=9F=E6=88=90=E6=9B=BF=E6=8D=A2?= =?UTF-8?q?=E5=85=B3=E7=B3=BB=EF=BC=8C=E6=9B=B4=E6=96=B0=E5=B7=B2=E6=9C=89?= =?UTF-8?q?=E6=9B=BF=E6=8D=A2=E5=85=B3=E7=B3=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../GenerateReplaceRelationshipTaskEdit.java | 92 ++++++++++++------- 1 file changed, 60 insertions(+), 32 deletions(-) diff --git a/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java b/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java index 8a4aee7a..c1363273 100644 --- a/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java +++ b/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java @@ -122,39 +122,41 @@ public class GenerateReplaceRelationshipTaskEdit extends AbstractTask { Map successMap = new HashMap<>(); DynamicObject bomChange = createBOMChange(plmObj, enabled); DynamicObjectCollection entry = bomChange.getDynamicObjectCollection("yem_entryentity"); - String selectfields = DynamicObjectUtil.getSelectfields("yem_em_replace"); - selectfields = DynamicObjectUtil.getEntrySelectfields(selectfields, "yem_em_replace", "yem_entryentity"); - if (!entry.isEmpty()) { - DynamicObject replace = null; - String billno = plmObj.getString("billno"); - String gybg_no = plmObj.getString("yem_gybg_no"); - if (entry.size() == 1) { - logger.info("生成替换关系:PLM单号:{}, PLM工艺变更单号:{},父项编码:{}", billno, gybg_no, entry.get(0).getString("yem_parentno")); - logger.info("生成_当前替换关系:{}", entry.get(0).getString("yem_replace")); - replace = AtlasUtils.Addreplace(bomChange, entry.get(0), null, "yem_em_replace", "add", "PLM"); - successMap.put(entry.get(0).getLong("id"), bomChange); - } else { - for (DynamicObject entryObject : entry) { - int idx = entry.indexOf(entryObject); - if (idx == 0) { - QFilter qFilter = new QFilter("status", "=", "C"); - qFilter.and("number", "=", bomChange.getString("number")); - DynamicObject[] load = BusinessDataServiceHelper.load("yem_em_replace", selectfields, qFilter.toArray()); - if (load.length == 1) { - replace = load[0]; - replace = AtlasUtils.Addreplace(bomChange, entry.get(0), replace, "yem_em_replace", "update", "PLM"); - } else { - replace = AtlasUtils.Addreplace(bomChange, entry.get(0), null, "yem_em_replace", "add", "PLM"); - } - continue; - }; - logger.info("更新替换关系:PLM单号:{}, PLM工艺变更单号:{},父项编码:{}", billno, gybg_no, entryObject.getString("yem_parentno")); - logger.info("更新_替换关系:{}", entryObject.getString("yem_replace")); - replace = AtlasUtils.Addreplace(bomChange, entry.get(0), replace, "yem_em_replace", "update", "PLM"); - successMap.put(entryObject.getLong("id"), bomChange); - } - } + + for (DynamicObject entryObject : entry) { + useExistReplace(bomChange, entryObject, successMap); } +// if (!entry.isEmpty()) { +// DynamicObject replace = null; +// String billno = plmObj.getString("billno"); +// String gybg_no = plmObj.getString("yem_gybg_no"); +// if (entry.size() == 1) { +// logger.info("生成替换关系:PLM单号:{}, PLM工艺变更单号:{},父项编码:{}", billno, gybg_no, entry.get(0).getString("yem_parentno")); +// logger.info("生成_当前替换关系:{}", entry.get(0).getString("yem_replace")); +// replace = AtlasUtils.Addreplace(bomChange, entry.get(0), null, "yem_em_replace", "add", "PLM"); +// successMap.put(entry.get(0).getLong("id"), bomChange); +// } else { +// for (DynamicObject entryObject : entry) { +// int idx = entry.indexOf(entryObject); +// if (idx == 0) { +// QFilter qFilter = new QFilter("status", "=", "C"); +// qFilter.and("number", "=", entryObject.getString("yem_parentno")); +// DynamicObject[] load = BusinessDataServiceHelper.load("yem_em_replace", selectfields, qFilter.toArray()); +// if (load.length == 1) { +// replace = load[0]; +// replace = AtlasUtils.Addreplace(bomChange, entry.get(0), replace, "yem_em_replace", "update", "PLM"); +// } else { +// replace = AtlasUtils.Addreplace(bomChange, entry.get(0), null, "yem_em_replace", "add", "PLM"); +// } +// continue; +// }; +// logger.info("更新替换关系:PLM单号:{}, PLM工艺变更单号:{},父项编码:{}", billno, gybg_no, entryObject.getString("yem_parentno")); +// logger.info("更新_替换关系:{}", entryObject.getString("yem_replace")); +// replace = AtlasUtils.Addreplace(bomChange, entry.get(0), replace, "yem_em_replace", "update", "PLM"); +// successMap.put(entryObject.getLong("id"), bomChange); +// } +// } +// } List list = new ArrayList<>(); for (Map.Entry mapEntry : successMap.entrySet()) { Long bomChangeEntryId = mapEntry.getKey(); @@ -188,6 +190,31 @@ public class GenerateReplaceRelationshipTaskEdit extends AbstractTask { syncImage(plmObj, list); } + /** + * 查询已存在的替换关系 + * + * @param bomChange + * @param bomChangeEntry + * @param successMap + * @return + */ + private void useExistReplace(DynamicObject bomChange, DynamicObject bomChangeEntry, Map successMap) { + QFilter qFilter = new QFilter("status", "=", "C"); + qFilter.and("number", "=", bomChangeEntry.getString("yem_parentno")); + DynamicObject[] load = BusinessDataServiceHelper.load("yem_em_replace", "id, billno", qFilter.toArray()); + if (load.length > 0) { + DynamicObject replace = load[0]; + replace = BusinessDataServiceHelper.loadSingle(replace.getPkValue(), replace.getDataEntityType().getName()); + logger.info("使用已有替换关系:{}", replace.getString("number")); + AtlasUtils.Addreplace(bomChange, bomChangeEntry, replace, "yem_em_replace", "update", "PLM"); + successMap.put(bomChangeEntry.getLong("id"), bomChange); + } else { + logger.info("创建新的替换关系:{}", bomChangeEntry.getString("yem_parentno")); + AtlasUtils.Addreplace(bomChange, bomChangeEntry, null, "yem_em_replace", "add", "PLM"); + successMap.put(bomChangeEntry.getLong("id"), bomChange); + } + } + /** * 根据PLM创建BOM,用于生成替换关系 * @@ -334,6 +361,7 @@ public class GenerateReplaceRelationshipTaskEdit extends AbstractTask { * 查询匹配的 总成图册明细 * PLM:变更后父项编码 - 总成图册明细.编码 * PLM:变更后子项编码 - 替换关系:ABC 替换编码,E(删除):不匹配,D(新增)替换前编码 + * * @return */ private DynamicObject queryMatchAssemblyAtlasDetails(DynamicObject plmObj, DynamicObject d) { From c753ac0fa3e0c30634410651cd75a1c0ddcacd5a Mon Sep 17 00:00:00 2001 From: ljw Date: Tue, 24 Dec 2024 18:04:07 +0800 Subject: [PATCH 25/50] =?UTF-8?q?=E6=8E=A5930=E6=9D=A1=EF=BC=8C=E6=9C=80?= =?UTF-8?q?=E5=90=8E=E4=B8=80=E7=89=88=E9=80=BB=E8=BE=91=E6=98=AFFCA+?= =?UTF-8?q?=E8=B5=B7=E8=BF=90=E6=B8=AF=EF=BC=8C=E7=8E=B0=E5=9C=A8=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E5=90=88=E5=90=8C=E6=8B=BC=E7=9A=84=E6=98=AF=E7=9B=AE?= =?UTF-8?q?=E7=9A=84=E6=B8=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wm/es/salesorder/from/SalesOrderEdit.java | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderEdit.java b/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderEdit.java index 379913e0..5dc9812a 100644 --- a/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderEdit.java +++ b/src/main/java/com/yem/wm/es/salesorder/from/SalesOrderEdit.java @@ -467,6 +467,67 @@ public class SalesOrderEdit extends AbstractBillPlugIn implements Plugin, Before // model.setValue("yem_departure", yemShipportsename, row); // } + /** + * 客户需求单、外销合同的价格条款为FCA时,贸易术语=价格条款+目的港.工厂 + * + * @param model + * @param view + */ + public static void genTradeTermsDestports(IDataModel model, IFormView view) { + DynamicObject priceitem = (DynamicObject) model.getValue("yem_priceitem"); + String priceitemString = ""; + if (priceitem != null) { + priceitemString = priceitem.getString("name"); + } + if ("FCA".equals(priceitemString)) { + StringBuilder sb = new StringBuilder(); + sb.append("FCA "); + DynamicObjectCollection destports = (DynamicObjectCollection) model.getValue("yem_shipports"); + for (DynamicObject destport : destports) { + DynamicObject port = destport.getDynamicObject("fbasedataid"); + if (port == null) continue; + port = BusinessDataServiceHelper.loadSingle(port.getPkValue(), port.getDataEntityType().getName(), "yem_namecn"); + if (!port.getString("yem_namecn").isEmpty()) { + sb.append(port.getString("yem_namecn")).append(";"); + } + } + if (sb.lastIndexOf(";") == sb.length() - 1) { + sb.deleteCharAt(sb.length() - 1); + } + model.setValue("yem_tradeterms", sb.toString()); + } + } + +// /** +// * 客户需求单、外销合同的价格条款为FCA时,贸易术语=价格条款+目的港.工厂 +// * +// * @param model +// * @param view +// */ +// public static void genTradeTermsShipports(IDataModel model, IFormView view) { +// DynamicObject priceitem = (DynamicObject) model.getValue("yem_priceitem"); +// String priceitemString = ""; +// if (priceitem != null) { +// priceitemString = priceitem.getString("name"); +// } +// if ("EXW".equals(priceitemString)) { +// StringBuilder sb = new StringBuilder(); +// sb.append("EXW "); +// DynamicObjectCollection shipports = (DynamicObjectCollection) model.getValue("yem_destports"); +// for (DynamicObject shipport : shipports) { +// DynamicObject port = shipport.getDynamicObject("fbasedataid"); +// if (port == null) continue; +// port = BusinessDataServiceHelper.loadSingle(port.getPkValue(), port.getDataEntityType().getName(), "yem_factory"); +// if (!port.getString("yem_factory").isEmpty()) { +// sb.append(port.getString("yem_factory")).append(";"); +// } +// } +// if (sb.lastIndexOf(";") == sb.length() - 1) { +// sb.deleteCharAt(sb.length() - 1); +// } +// model.setValue("yem_tradeterms", sb.toString()); +// } +// } /** * 方数携带 From 03a9da67ba24d2dadb56817ad10c7ff5245e48c5 Mon Sep 17 00:00:00 2001 From: zzs Date: Tue, 24 Dec 2024 18:19:13 +0800 Subject: [PATCH 26/50] =?UTF-8?q?feat:=E5=9B=BE=E5=86=8C=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E4=B8=8B=E7=BA=A7=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yem/em/utils/SubRelationUtils.java | 27 ++++++++++++------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/yem/em/utils/SubRelationUtils.java b/src/main/java/com/yem/em/utils/SubRelationUtils.java index 2188b6c6..d0c7ac0e 100644 --- a/src/main/java/com/yem/em/utils/SubRelationUtils.java +++ b/src/main/java/com/yem/em/utils/SubRelationUtils.java @@ -13,10 +13,7 @@ import kd.bos.servicehelper.QueryServiceHelper; import kd.bos.servicehelper.operation.OperationServiceHelper; import java.math.BigDecimal; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; -import java.util.List; +import java.util.*; import java.util.stream.Stream; /** @@ -109,7 +106,7 @@ public class SubRelationUtils { qFilter.and(new QFilter("yem_entryentity.yem_completetime", QCP.less_equals, new Date())); String selectfield = DynamicObjectUtil.getSelectfields("yem_em_replace", false); String selectfields = DynamicObjectUtil.getEntrySelectfields(selectfield, "yem_em_replace", "yem_entryentity", false); - object = QueryServiceHelper.query("yem_em_replace", selectfields, new QFilter[]{qFilter}, "yem_entryentity.yem_completetime DESC"); + object = QueryServiceHelper.query("yem_em_replace", "yem_entryentity.id," + selectfields, new QFilter[]{qFilter}, "yem_entryentity.yem_completetime DESC"); if (object.size() > 0) { object = queryAssemblyreplevel(object, replacement, isComplete, yem_completetime); } @@ -147,12 +144,22 @@ public class SubRelationUtils { String selectfield = DynamicObjectUtil.getSelectfields("yem_em_replace", false); String selectfields = DynamicObjectUtil.getEntrySelectfields(selectfield, "yem_em_replace", "yem_entryentity", false); DynamicObjectCollection yem_em_replace = QueryServiceHelper.query("yem_em_replace", - selectfields, new QFilter[]{qFilter}, "yem_entryentity.yem_completetime DESC"); - if (yem_em_replace.size() > 0) { - for (int j = 0; j < yem_em_replace.size(); j++) { - object.add(yem_em_replace.get(j)); + "yem_entryentity.id," + selectfields, new QFilter[]{qFilter}, "yem_entryentity.yem_completetime DESC"); + if (!yem_em_replace.isEmpty()) { + int count = 0; + Set ids = new HashSet<>(); + for (DynamicObject dynamicObject : object) { + ids.add(dynamicObject.getLong("yem_entryentity.id")); + } + for (DynamicObject dynamicObject : yem_em_replace) { + if (!ids.contains(dynamicObject.getLong("yem_entryentity.id"))) { + object.add(dynamicObject); + count++; + } + } + if (count > 0) { + queryAssemblyreplevel(yem_em_replace, replacement, isComplete, yem_completetime); } - queryAssemblyreplevel(yem_em_replace, replacement, isComplete, yem_completetime); } } return object; From 33f00e23ff1aeaae6b34727d74c7a9c051d97ca4 Mon Sep 17 00:00:00 2001 From: zzs Date: Thu, 26 Dec 2024 14:27:16 +0800 Subject: [PATCH 27/50] =?UTF-8?q?fix:=E6=95=B4=E6=9C=BA=E6=A1=A3=E6=A1=88?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E4=B8=8B=E5=8D=95=E5=B9=B3=E5=8F=B0=E5=90=8E?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E6=9C=AA=E6=9B=B4=E6=96=B0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yem/or/utils/OrderApiUtils.java | 23 ++++++++++++------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/yem/or/utils/OrderApiUtils.java b/src/main/java/com/yem/or/utils/OrderApiUtils.java index 73d94a45..85903d6a 100644 --- a/src/main/java/com/yem/or/utils/OrderApiUtils.java +++ b/src/main/java/com/yem/or/utils/OrderApiUtils.java @@ -578,15 +578,22 @@ public class OrderApiUtils { JSONObject objects = (JSONObject) object; String salesorderno = objects.getString("salesorderno"); Long objectsId = objects.getLong("id"); - DynamicObject mechanical = BusinessDataServiceHelper.loadSingle("yem_em_devicefiles" - , "id,number,yem_ordeid,yem_issynorde" - , new QFilter[]{new QFilter("yem_salesorderno", QCP.equals, salesorderno)}); - if (mechanical != null) { - mechanical.set("yem_ordeid", objectsId); - mechanical.set("yem_issynorde", true); - SaveServiceHelper.update(mechanical); - SaveServiceHelper.save(new DynamicObject[]{mechanical}); + Set compNo = new HashSet<>(); + for (Map map : list) { + if (map.containsKey("framenumber")) { + compNo.add((String) map.get("framenumber")); + } } + DynamicObject[] mechanical = BusinessDataServiceHelper.load("yem_em_devicefiles" + , "id,number,yem_ordeid,yem_issynorde" + , new QFilter[]{new QFilter("yem_salesorderno", QCP.equals, salesorderno), + new QFilter("number", QCP.in, compNo) + }); + for (DynamicObject d : mechanical) { + d.set("yem_ordeid", objectsId); + d.set("yem_issynorde", true); + } + SaveServiceHelper.save(mechanical); } } } else { From 05b1f43eca1cea9414acf92b9d4d48802afa5349 Mon Sep 17 00:00:00 2001 From: ljw Date: Thu, 26 Dec 2024 15:49:59 +0800 Subject: [PATCH 28/50] =?UTF-8?q?fix=EF=BC=9A=20--=E6=8A=95=E4=BF=9D?= =?UTF-8?q?=E9=87=91=E9=A2=9D=EF=BC=88USD=EF=BC=89=E5=8F=96=E5=80=BC?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E8=B0=83=E6=95=B4=EF=BC=9A=E5=8E=9F=E9=80=BB?= =?UTF-8?q?=E8=BE=91=EF=BC=9A=E5=8F=96=E6=8A=95=E4=BF=9D=E9=87=91=E9=A2=9D?= =?UTF-8?q?=EF=BC=88=E5=8E=9F=E5=B8=81=E7=A7=8D=EF=BC=89=EF=BC=8C=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E5=90=8E=EF=BC=9A=E5=8F=96=E8=AE=A2=E8=88=B1=E6=8A=95?= =?UTF-8?q?=E4=BF=9D=E9=87=91=E9=A2=9D=EF=BC=88=E5=8E=9F=E5=B8=81=E7=A7=8D?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../shippingdetails/convert/ShippingDetialToStoraConvert.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java b/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java index e80aba0d..de34404b 100644 --- a/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java +++ b/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java @@ -127,7 +127,7 @@ public class ShippingDetialToStoraConvert extends AbstractConvertPlugIn if ("USD".equals(currency)) { // 投保金额(美元) - addNew.set("yem_usacreditamt_cd", storageAmount); + addNew.set("yem_usacreditamt_cd", storageAmount.multiply(yemRaprate).divide(new BigDecimal(100) ,2)); } else { storageAmount = BigDecimal.ZERO; From ddece94661924c8041bd93b941c2f1b235f21ccb Mon Sep 17 00:00:00 2001 From: ljw Date: Thu, 26 Dec 2024 15:56:17 +0800 Subject: [PATCH 29/50] =?UTF-8?q?fix=EF=BC=9A=20--=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=EF=BC=9A=E6=8C=96=E6=8E=98=E6=9C=BA=E9=85=8D=E4=BB=B6=E5=92=8C?= =?UTF-8?q?=E6=8C=96=E6=8E=98=E6=9C=BA=E4=BD=BF=E7=94=A8=E5=90=8C=E4=B8=80?= =?UTF-8?q?=E4=B8=AA=E8=B5=84=E9=87=91=E6=B1=A0=EF=BC=88=E6=8C=96=E6=8E=98?= =?UTF-8?q?=E6=9C=BA=EF=BC=89=E9=80=BB=E8=BE=91=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yem/wm/es/salesorder/op/SaleOrdeAddGenerateOp.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/yem/wm/es/salesorder/op/SaleOrdeAddGenerateOp.java b/src/main/java/com/yem/wm/es/salesorder/op/SaleOrdeAddGenerateOp.java index 90dd57fc..d67a06b8 100644 --- a/src/main/java/com/yem/wm/es/salesorder/op/SaleOrdeAddGenerateOp.java +++ b/src/main/java/com/yem/wm/es/salesorder/op/SaleOrdeAddGenerateOp.java @@ -21,9 +21,6 @@ import kd.bos.servicehelper.QueryServiceHelper; import kd.bos.servicehelper.basedata.BaseDataServiceHelper; import kd.bos.servicehelper.operation.OperationServiceHelper; import kd.bos.servicehelper.operation.SaveServiceHelper; -import kd.fi.gl.accountref.handler.SaveBalDataHandler; -import kd.fi.gl.balcal.carriedintoleaf.SaveBalanceHandler; -import kd.hr.hies.common.enu.Operate; import java.math.BigDecimal; import java.util.Date; @@ -99,6 +96,8 @@ public class SaleOrdeAddGenerateOp extends AbstractOperationServicePlugIn { products = "CC"; } else if (number.contains("TLJ")) { products = "TLJ"; + }else if (number.contains("WJJ")||number.contains("WJZZJ")){ + products = "WJJ"; } } debcrednote.set("yem_bd_products", seelctDyn("yem_bd_productsgroup", "number", products)); From 1fa01c4665d7c21579dbde1c9fc392ae74b1571a Mon Sep 17 00:00:00 2001 From: ljw Date: Thu, 26 Dec 2024 17:10:32 +0800 Subject: [PATCH 30/50] =?UTF-8?q?fix=EF=BC=9A=2012.26=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=AD=97=E6=AE=B5:=20=E5=A4=96=E8=B4=B8?= =?UTF-8?q?=E5=9F=BA=E6=9C=AC=E4=BF=A1=E6=81=AF=E6=96=B0=E5=A2=9E=E5=AD=97?= =?UTF-8?q?=E6=AE=B5:cosmic(=E6=9E=9A=E4=B8=BE:=E6=98=AF=E5=90=A6=EF=BC=8C?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E6=98=AF=EF=BC=8C=E9=94=81=E5=AE=9A=EF=BC=8C?= =?UTF-8?q?=E6=98=AF:true=EF=BC=8C=E5=90=A6:false)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/yem/wm/syn/eas/PayapplyService.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/yem/wm/syn/eas/PayapplyService.java b/src/main/java/com/yem/wm/syn/eas/PayapplyService.java index cb29e730..4d780fb6 100644 --- a/src/main/java/com/yem/wm/syn/eas/PayapplyService.java +++ b/src/main/java/com/yem/wm/syn/eas/PayapplyService.java @@ -108,6 +108,7 @@ public class PayapplyService extends AbstractOperationServicePlugIn { SimpleDateFormat fmtTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String yemBizdate = fmtDate.format(dataEntitie.getDate("yem_bizdate")); json.put("bizDate", yemBizdate); + json.put("cosmic", dataEntitie.getString("yem_cosmic")); //申请人 creator DynamicObject creators = dataEntitie.getDynamicObject("creator"); if (creators != null) { From 995f6cec9b2588aa94d2d1352a88dee1a9b47d06 Mon Sep 17 00:00:00 2001 From: ljw Date: Thu, 26 Dec 2024 17:57:27 +0800 Subject: [PATCH 31/50] =?UTF-8?q?fix=EF=BC=9A=20--=E6=8A=95=E4=BF=9D?= =?UTF-8?q?=E9=87=91=E9=A2=9D=EF=BC=88USD=EF=BC=89=E5=8F=96=E5=80=BC?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E8=B0=83=E6=95=B4=EF=BC=9A=E5=8E=9F=E9=80=BB?= =?UTF-8?q?=E8=BE=91=EF=BC=9A=E5=8F=96=E6=8A=95=E4=BF=9D=E9=87=91=E9=A2=9D?= =?UTF-8?q?=EF=BC=88=E5=8E=9F=E5=B8=81=E7=A7=8D=EF=BC=89=EF=BC=8C=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E5=90=8E=EF=BC=9A=E5=8F=96=E8=AE=A2=E8=88=B1=E6=8A=95?= =?UTF-8?q?=E4=BF=9D=E9=87=91=E9=A2=9D=EF=BC=88=E5=8E=9F=E5=B8=81=E7=A7=8D?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../convert/ShippingDetialToStoraConvert.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java b/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java index de34404b..8b5ff0ce 100644 --- a/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java +++ b/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java @@ -109,7 +109,8 @@ public class ShippingDetialToStoraConvert extends AbstractConvertPlugIn BigDecimal yemRaprate = dynamicObject.getBigDecimal("yem_raprate"); addNew.set("yem_exchangereceipts", yemRaprate); //订舱投保金额(原币种) - addNew.set("yem_bookinginsured",storageAmount.multiply(yemRaprate).divide(new BigDecimal(100) ,2)); + BigDecimal bigDecimal = storageAmount.multiply(yemRaprate).divide(new BigDecimal(100), 2); + addNew.set("yem_bookinginsured", bigDecimal); // 预收金额 addNew.set("yem_preamt_cd", raprate.multiply(storageAmount).divide(new BigDecimal(100), 4, RoundingMode.HALF_UP)); // 合同认领金额 @@ -127,7 +128,7 @@ public class ShippingDetialToStoraConvert extends AbstractConvertPlugIn if ("USD".equals(currency)) { // 投保金额(美元) - addNew.set("yem_usacreditamt_cd", storageAmount.multiply(yemRaprate).divide(new BigDecimal(100) ,2)); + addNew.set("yem_usacreditamt_cd", bigDecimal); } else { storageAmount = BigDecimal.ZERO; @@ -144,7 +145,7 @@ public class ShippingDetialToStoraConvert extends AbstractConvertPlugIn BigDecimal sinosurerate = (BigDecimal) dynamicObject.get("yem_sinosurerate"); addNew.set("yem_sinosurerate_cd", sinosurerate); // yem_insuranceamt_cd = yem_usacreditamt_cd * yem_sinosurerate_cd / 100 - BigDecimal insuranceamt = storageAmount.multiply(sinosurerate).divide(new BigDecimal("100"), 10, RoundingMode.HALF_UP); + BigDecimal insuranceamt = bigDecimal.multiply(sinosurerate).divide(new BigDecimal("100"), 10, RoundingMode.HALF_UP); // 保险费 addNew.set("yem_insuranceamt_cd", insuranceamt); // 信用期限 From 7bd457ce079ae29d574c2aa196f170c59ddf44b1 Mon Sep 17 00:00:00 2001 From: ljw Date: Thu, 26 Dec 2024 20:06:05 +0800 Subject: [PATCH 32/50] =?UTF-8?q?fix=EF=BC=9A=20=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E9=83=A8=E7=BD=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yem/wm/es/salesorder/from/SaleOrderCreditFromEdit.java | 2 ++ .../java/com/yem/wm/es/salesorder/op/SaleOrdeAddGenerateOp.java | 2 +- .../shippingdetails/convert/ShippingDetialToStoraConvert.java | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/yem/wm/es/salesorder/from/SaleOrderCreditFromEdit.java b/src/main/java/com/yem/wm/es/salesorder/from/SaleOrderCreditFromEdit.java index 72806e53..c35dde5f 100644 --- a/src/main/java/com/yem/wm/es/salesorder/from/SaleOrderCreditFromEdit.java +++ b/src/main/java/com/yem/wm/es/salesorder/from/SaleOrderCreditFromEdit.java @@ -318,6 +318,8 @@ public class SaleOrderCreditFromEdit extends AbstractBillPlugIn implements Befor products = "CC"; } else if (number.contains("TLJ")) { products = "TLJ"; + }else if (number.contains("WJJ")){ + products = "WJJ"; } } QFilter qFilter2 = new QFilter("billstatus", QCP.equals, "C");// diff --git a/src/main/java/com/yem/wm/es/salesorder/op/SaleOrdeAddGenerateOp.java b/src/main/java/com/yem/wm/es/salesorder/op/SaleOrdeAddGenerateOp.java index d67a06b8..abd9744b 100644 --- a/src/main/java/com/yem/wm/es/salesorder/op/SaleOrdeAddGenerateOp.java +++ b/src/main/java/com/yem/wm/es/salesorder/op/SaleOrdeAddGenerateOp.java @@ -96,7 +96,7 @@ public class SaleOrdeAddGenerateOp extends AbstractOperationServicePlugIn { products = "CC"; } else if (number.contains("TLJ")) { products = "TLJ"; - }else if (number.contains("WJJ")||number.contains("WJZZJ")){ + }else if (number.contains("WJJ")){ products = "WJJ"; } } diff --git a/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java b/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java index 8b5ff0ce..9e0b2b51 100644 --- a/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java +++ b/src/main/java/com/yem/wm/es/shippingdetails/convert/ShippingDetialToStoraConvert.java @@ -124,6 +124,7 @@ public class ShippingDetialToStoraConvert extends AbstractConvertPlugIn // 信保本位币金额 addNew.set("yem_creditamtbase", storageAmount.multiply(exrate)); //应收款金额1(本位币) + addNew.set("yem_paymentamt1_cd", bigDecimal); addNew.set("yem_paymentamt1_cdbase", storageAmount.multiply(exrate)); if ("USD".equals(currency)) { @@ -153,6 +154,7 @@ public class ShippingDetialToStoraConvert extends AbstractConvertPlugIn // 保险费本位币金额 addNew.set("yem_insuranceamtbas_cd", insuranceamt.multiply(exrate)); + addNew.set("yem_amountowed", bigDecimal); // //SWIFT CODE // addNew.set("yem_swiftcode", dynamicObject.get("yem_swiftcode")); } From 4b07bb93fc43a0f21e1a6e8919a26563a858143a Mon Sep 17 00:00:00 2001 From: ljw Date: Thu, 26 Dec 2024 20:15:37 +0800 Subject: [PATCH 33/50] =?UTF-8?q?fix=EF=BC=9A=20=E6=8A=A5=E9=94=99?= =?UTF-8?q?=E9=83=A8=E7=BD=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yem/wm/es/salesorder/from/SaleOrderCreditFromEdit.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/com/yem/wm/es/salesorder/from/SaleOrderCreditFromEdit.java b/src/main/java/com/yem/wm/es/salesorder/from/SaleOrderCreditFromEdit.java index c35dde5f..2a2f28d4 100644 --- a/src/main/java/com/yem/wm/es/salesorder/from/SaleOrderCreditFromEdit.java +++ b/src/main/java/com/yem/wm/es/salesorder/from/SaleOrderCreditFromEdit.java @@ -136,6 +136,8 @@ public class SaleOrderCreditFromEdit extends AbstractBillPlugIn implements Befor products = "CC"; } else if (number.contains("TLJ")) { products = "TLJ"; + }else if (number.contains("WJJ")){ + products = "WJJ"; } } From eafc4d9957c3902abee2b6f49077fa3c71a794c3 Mon Sep 17 00:00:00 2001 From: zzs Date: Fri, 27 Dec 2024 17:46:16 +0800 Subject: [PATCH 34/50] =?UTF-8?q?fix:CMMP=E8=8E=B7=E5=8F=96=E5=88=B0BOM?= =?UTF-8?q?=E5=8F=98=E6=9B=B4=E5=8D=95=E6=95=B0=E9=87=8F=E7=BC=BA=E5=B0=91?= =?UTF-8?q?=EF=BC=8C=E4=BF=AE=E6=94=B9=E5=8E=BB=E9=87=8D=E5=90=88=E5=B9=B6?= =?UTF-8?q?=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/yem/em/task/BomChangeTaskEdit.java | 4 ++-- src/main/java/com/yem/em/utils/AtlasUtils.java | 11 +++++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/yem/em/task/BomChangeTaskEdit.java b/src/main/java/com/yem/em/task/BomChangeTaskEdit.java index 6492d2dd..018d0a46 100644 --- a/src/main/java/com/yem/em/task/BomChangeTaskEdit.java +++ b/src/main/java/com/yem/em/task/BomChangeTaskEdit.java @@ -71,8 +71,8 @@ public class BomChangeTaskEdit extends AbstractTask { calendar.set(Calendar.MILLISECOND, 999); String end = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime()); -// start = "2024-12-04 00:00:00"; -// end = "2024-12-10 23:59:59"; +// start = "2024-12-25 00:00:00"; +// end = "2024-12-25 23:59:59"; for (String key : productmap.keySet()) { String value = productmap.get(key); diff --git a/src/main/java/com/yem/em/utils/AtlasUtils.java b/src/main/java/com/yem/em/utils/AtlasUtils.java index 89e1e6ed..1e516f80 100644 --- a/src/main/java/com/yem/em/utils/AtlasUtils.java +++ b/src/main/java/com/yem/em/utils/AtlasUtils.java @@ -924,10 +924,17 @@ public class AtlasUtils { if (yem_em_bomchange != null) { DynamicObject bomchange = BusinessDataServiceHelper.loadSingle(yem_em_bomchange.getLong("id"), "yem_em_bomchange"); DynamicObjectCollection yem_entryentity = bomchange.getDynamicObjectCollection("yem_entryentity"); - String code = map.get("pcode").toString() + "_" + map.get("ccode").toString(); + String code = map.get("pcode").toString() + "_" + map.get("ccode").toString() + "_" + map.get("break_flag").toString(); boolean exist = false; for (DynamicObject dynamicObject : yem_entryentity) { - String key = dynamicObject.getString("yem_parentno") + "_" + dynamicObject.getString("yem_subno"); + String break_flag = ""; + if ("A".equals(dynamicObject.getString("yem_enablesta"))) { + break_flag = "启用"; + } + if ("B".equals(dynamicObject.getString("yem_enablesta"))) { + break_flag = "停用"; + } + String key = dynamicObject.getString("yem_parentno") + "_" + dynamicObject.getString("yem_subno") + "_" + break_flag; if (code.equals(key)) { exist = true; dynamicObject.set("yem_changeno", changebill_code);//更改单号 From 9aa561d25824121b7d6ee87537eaa4d3346847e1 Mon Sep 17 00:00:00 2001 From: zzs Date: Tue, 31 Dec 2024 16:32:46 +0800 Subject: [PATCH 35/50] =?UTF-8?q?feat:=E6=96=AD=E7=82=B9=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E5=8F=96=E6=89=A7=E8=A1=8C=E7=8A=B6=E6=80=81=E6=9C=AA=E5=B7=B2?= =?UTF-8?q?=E5=AE=8C=E6=88=90=E7=9A=84=E8=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java b/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java index c1363273..b7ee3c1f 100644 --- a/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java +++ b/src/main/java/com/yem/em/task/GenerateReplaceRelationshipTaskEdit.java @@ -404,6 +404,10 @@ public class GenerateReplaceRelationshipTaskEdit extends AbstractTask { detailPartNo = d.getString("yem_textfield"); } + if (!"B".equals(d.get("yem_invokstatus"))) { + continue; + } + if (partno.lastIndexOf("-") != -1) { partno = partno.substring(0, partno.lastIndexOf("-")).trim(); } From 72dd84a8fb02527f349297bae3ff2d1d96186696 Mon Sep 17 00:00:00 2001 From: zzs Date: Wed, 25 Dec 2024 17:51:02 +0800 Subject: [PATCH 36/50] =?UTF-8?q?feat:=E5=90=88=E5=90=8C=E6=8F=90=E4=BA=A4?= =?UTF-8?q?=E4=BA=91=E4=B9=8B=E5=AE=B6=EF=BC=8C=E7=89=B9=E6=AE=8A=E5=A4=84?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../YemBillSubmitToYZJEndTransactionOp.java | 58 +++++++++++++++++++ .../wm/bc/bill/op/YemBillSubmitToYZJOp.java | 8 ++- 2 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/yem/wm/bc/bill/op/YemBillSubmitToYZJEndTransactionOp.java diff --git a/src/main/java/com/yem/wm/bc/bill/op/YemBillSubmitToYZJEndTransactionOp.java b/src/main/java/com/yem/wm/bc/bill/op/YemBillSubmitToYZJEndTransactionOp.java new file mode 100644 index 00000000..40097e9c --- /dev/null +++ b/src/main/java/com/yem/wm/bc/bill/op/YemBillSubmitToYZJEndTransactionOp.java @@ -0,0 +1,58 @@ +package com.yem.wm.bc.bill.op; + +import com.yem.wm.utils.YunzhijiaUtils; +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.entity.operate.result.OperationResult; +import kd.bos.entity.plugin.AbstractOperationServicePlugIn; +import kd.bos.entity.plugin.PreparePropertysEventArgs; +import kd.bos.entity.plugin.args.EndOperationTransactionArgs; +import kd.bos.exception.KDBizException; + +import java.util.ArrayList; +import java.util.List; + +/** + * @Description: 合同提交云之家特殊处理,事务结束之后在进行同步操作 + * @Date: 2024/12/25 17:34 + * @Created: by ZZSLL + */ + +public class YemBillSubmitToYZJEndTransactionOp extends AbstractOperationServicePlugIn { + + @Override + public void onPreparePropertys(PreparePropertysEventArgs e) { + super.onPreparePropertys(e); + + } + + @Override + public void endOperationTransaction(EndOperationTransactionArgs e) { + super.endOperationTransaction(e); + DynamicObject[] entities = e.getDataEntities(); + List passDataEntity = new ArrayList<>(); + OperationResult result = this.operationResult; + if (!result.isSuccess()) { + return; + } + StringBuilder errMsg = new StringBuilder(); + for (DynamicObject entity : entities) { + String billType = entity.getDataEntityType().getName(); + if (!"yem_es_salesorder".equals(billType)) { + return; + } + + YunzhijiaUtils.submit2YZJ(result, passDataEntity, entity); + + if (result.isSuccess()) { + passDataEntity.add(entity); + } else { + String message = result.getMessage(); + errMsg.append(message).append("\n "); + } + } + + if (errMsg.length() > 0) { + throw new KDBizException("提交云之家失败!错误信息:" + errMsg); + } + } +} diff --git a/src/main/java/com/yem/wm/bc/bill/op/YemBillSubmitToYZJOp.java b/src/main/java/com/yem/wm/bc/bill/op/YemBillSubmitToYZJOp.java index b03b5c04..c5054418 100644 --- a/src/main/java/com/yem/wm/bc/bill/op/YemBillSubmitToYZJOp.java +++ b/src/main/java/com/yem/wm/bc/bill/op/YemBillSubmitToYZJOp.java @@ -29,7 +29,7 @@ public class YemBillSubmitToYZJOp extends AbstractOperationServicePlugIn { @Override public void onPreparePropertys(PreparePropertysEventArgs e) { super.onPreparePropertys(e); - e.getFieldKeys().add("billno"); + e.getFieldKeys().addAll(this.billEntityType.getAllFields().keySet()); } @Override @@ -39,6 +39,12 @@ public class YemBillSubmitToYZJOp extends AbstractOperationServicePlugIn { List passDataEntitys = new ArrayList<>(); for (DynamicObject dynamicObject : dataEntities1) { String name = dynamicObject.getDynamicObjectType().getName(); + if ("yem_es_salesorder".equals(name)) { + // 合同提交云之家特殊处理。 + // 已经移动到插件 com.yem.wm.bc.bill.op.YemBillSubmitToYZJEndTransactionOp + passDataEntitys.add(dynamicObject); + continue; + } dynamicObject = BusinessDataServiceHelper.loadSingle(dynamicObject.getPkValue(), name); if ("yem_es_specialapplica".equals(name)) { From 415ef3506c0f972d9278606be8c99c29724fd0c8 Mon Sep 17 00:00:00 2001 From: zzs Date: Fri, 20 Dec 2024 11:24:58 +0800 Subject: [PATCH 37/50] =?UTF-8?q?feat:=E9=80=89=E8=A3=85=E3=80=81=E6=9B=BF?= =?UTF-8?q?=E6=8D=A2=E5=A2=9E=E5=8A=A0=E5=AD=97=E6=AE=B5=EF=BC=8C=E9=80=89?= =?UTF-8?q?=E8=A3=85=E6=97=B6=E6=90=BA=E5=B8=A6=E5=88=B0=E5=90=88=E5=90=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java | 7 +++++++ .../com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java | 6 ++++++ 2 files changed, 13 insertions(+) diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java index c7388ed2..89b3b00a 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java @@ -77,6 +77,7 @@ public class OptionalFormPlugIn extends AbstractFormPlugin implements Plugin { model.setValue("yem_parameter", mechanical.getString("yem_parameter"), createRow); model.setValue("yem_remarke", mechanical.getString("yem_remarke"), createRow); model.setValue("yem_entryid", id, createRow); + model.setValue("yem_model_config_c", mechanical.getDynamicObject("yem_model_config_c"), createRow); } } } @@ -114,6 +115,7 @@ public class OptionalFormPlugIn extends AbstractFormPlugin implements Plugin { model.setValue("yem_specification", optional.getString("yem_specification_o"), entryRow); model.setValue("yem_remarke", optional.getString("yem_remarke"), entryRow); model.setValue("yem_entryid", optional.getPkValue(), entryRow); + model.setValue("yem_model_config_c", optional.getDynamicObject("yem_model_config_c"), entryRow); } } @@ -179,6 +181,11 @@ public class OptionalFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_arguments", model.getValue("yem_parameter", selectRow), optionalRow); parentModel.setValue("yem_remarkss", model.getValue("yem_remarke", selectRow), optionalRow); parentModel.setValue("yem_configentryid", model.getValue("yem_entryid", selectRow), optionalRow); + DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_c", optionalRow); + if (modelConfigR != null) { + parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); + parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); + } } } } diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java index fdfd4406..179b6883 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java @@ -107,6 +107,7 @@ public class ReplaceFormPlugIn extends AbstractFormPlugin implements Plugin { // model.setValue("yem_marketraiseprice", replaceable.getBigDecimal("yem_salesmarkup_re"), entryRow); model.setValue("yem_remarke", replaceable.getString("yem_remarkr"), entryRow); model.setValue("yem_entryid", replaceable.getPkValue(), entryRow); + model.setValue("yem_model_config_r", replaceable.getDynamicObject("yem_model_config_r"), entryRow); } } @@ -170,6 +171,11 @@ public class ReplaceFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_unitsetnumber", model.getValue("yem_unitsetnumber", selectRow), optionalRow); parentModel.setValue("yem_remarkss", model.getValue("yem_remarke", selectRow), optionalRow); parentModel.setValue("yem_configentryid", model.getValue("yem_entryid", selectRow), optionalRow); + DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_r", optionalRow); + if (modelConfigR != null) { + parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); + parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); + } } } From d7a5ebf2a220e02866346dca9f97fb6da0382997 Mon Sep 17 00:00:00 2001 From: zzs Date: Fri, 20 Dec 2024 11:38:54 +0800 Subject: [PATCH 38/50] =?UTF-8?q?feat:=E9=80=89=E8=A3=85=E3=80=81=E6=9B=BF?= =?UTF-8?q?=E6=8D=A2=E6=97=A0=E5=AD=97=E6=AE=B5=E8=B7=B3=E8=BF=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java | 8 ++++++-- .../yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java index 89b3b00a..718c6997 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java @@ -77,7 +77,10 @@ public class OptionalFormPlugIn extends AbstractFormPlugin implements Plugin { model.setValue("yem_parameter", mechanical.getString("yem_parameter"), createRow); model.setValue("yem_remarke", mechanical.getString("yem_remarke"), createRow); model.setValue("yem_entryid", id, createRow); - model.setValue("yem_model_config_c", mechanical.getDynamicObject("yem_model_config_c"), createRow); + DynamicObject dataEntity = model.getDataEntity(true); + if (dataEntity.containsProperty("yem_model_config_c")) { + model.setValue("yem_model_config_c", mechanical.getDynamicObject("yem_model_config_c"), createRow); + } } } } @@ -182,7 +185,8 @@ public class OptionalFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_remarkss", model.getValue("yem_remarke", selectRow), optionalRow); parentModel.setValue("yem_configentryid", model.getValue("yem_entryid", selectRow), optionalRow); DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_c", optionalRow); - if (modelConfigR != null) { + DynamicObject parentDataEntity = parentModel.getDataEntity(true); + if (modelConfigR != null && parentDataEntity.containsProperty("yem_cname_config") && parentDataEntity.containsProperty("yem_ename_config")) { parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); } diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java index 179b6883..c2d29827 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java @@ -6,6 +6,7 @@ import com.yem.wm.utils.FunctionalCommon; import com.yem.wm.utils.YEM; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.entity.MainEntityType; import kd.bos.entity.datamodel.IDataModel; import kd.bos.form.FormShowParameter; import kd.bos.form.IFormView; @@ -107,7 +108,9 @@ public class ReplaceFormPlugIn extends AbstractFormPlugin implements Plugin { // model.setValue("yem_marketraiseprice", replaceable.getBigDecimal("yem_salesmarkup_re"), entryRow); model.setValue("yem_remarke", replaceable.getString("yem_remarkr"), entryRow); model.setValue("yem_entryid", replaceable.getPkValue(), entryRow); - model.setValue("yem_model_config_r", replaceable.getDynamicObject("yem_model_config_r"), entryRow); + if (model.getDataEntity(true).containsProperty("yem_model_config_r")) { + model.setValue("yem_model_config_r", replaceable.getDynamicObject("yem_model_config_r"), entryRow); + } } } @@ -172,7 +175,8 @@ public class ReplaceFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_remarkss", model.getValue("yem_remarke", selectRow), optionalRow); parentModel.setValue("yem_configentryid", model.getValue("yem_entryid", selectRow), optionalRow); DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_r", optionalRow); - if (modelConfigR != null) { + DynamicObject parentDataEntity = parentModel.getDataEntity(true); + if (modelConfigR != null && parentDataEntity.containsProperty("yem_cname_config") && parentDataEntity.containsProperty("yem_ename_config")) { parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); } From 39a96c9d7a104e1d206d7ae0a65bab8708b9fee7 Mon Sep 17 00:00:00 2001 From: zzs Date: Tue, 31 Dec 2024 17:55:05 +0800 Subject: [PATCH 39/50] =?UTF-8?q?feat:=E5=8F=AF=E9=80=89=E8=A3=85=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E4=BF=84=E8=AF=AD=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../im/priceLibrary/form/OptionalFormPlugIn.java | 14 +++++++------- .../im/priceLibrary/form/ReplaceFormPlugIn.java | 15 ++++++++------- .../priceLibrary/form/RetrofittingFormPlugIn.java | 7 +++++++ 3 files changed, 22 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java index 718c6997..9afa573f 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java @@ -77,8 +77,7 @@ public class OptionalFormPlugIn extends AbstractFormPlugin implements Plugin { model.setValue("yem_parameter", mechanical.getString("yem_parameter"), createRow); model.setValue("yem_remarke", mechanical.getString("yem_remarke"), createRow); model.setValue("yem_entryid", id, createRow); - DynamicObject dataEntity = model.getDataEntity(true); - if (dataEntity.containsProperty("yem_model_config_c")) { + if (mechanical.containsProperty("yem_model_config_c")) { model.setValue("yem_model_config_c", mechanical.getDynamicObject("yem_model_config_c"), createRow); } } @@ -119,6 +118,7 @@ public class OptionalFormPlugIn extends AbstractFormPlugin implements Plugin { model.setValue("yem_remarke", optional.getString("yem_remarke"), entryRow); model.setValue("yem_entryid", optional.getPkValue(), entryRow); model.setValue("yem_model_config_c", optional.getDynamicObject("yem_model_config_c"), entryRow); + model.setValue("yem_ruconfigure_c",optional.getString("yem_ruconfigure_c"),entryRow); } } @@ -177,6 +177,7 @@ public class OptionalFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_configurtype", "A", optionalRow); parentModel.setValue("yem_configurname", model.getValue("yem_profilenamea", selectRow), optionalRow); parentModel.setValue("yem_configurtypeen", model.getValue("yem_configure", selectRow), optionalRow); + parentModel.setValue("yem_configurtyperu", model.getValue("yem_ruconfigure_c", selectRow), optionalRow); parentModel.setValue("yem_specification_o", model.getValue("yem_specification", selectRow), optionalRow); // parentModel.setValue("yem_marketprice", marketPrice, optionalRow); // parentModel.setValue("yem_marketraiseprice", marketRaisePrice, optionalRow); @@ -185,11 +186,10 @@ public class OptionalFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_remarkss", model.getValue("yem_remarke", selectRow), optionalRow); parentModel.setValue("yem_configentryid", model.getValue("yem_entryid", selectRow), optionalRow); DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_c", optionalRow); - DynamicObject parentDataEntity = parentModel.getDataEntity(true); - if (modelConfigR != null && parentDataEntity.containsProperty("yem_cname_config") && parentDataEntity.containsProperty("yem_ename_config")) { - parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); - parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); - } + parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); + parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); + parentModel.setValue("yem_runame_config", modelConfigR.getString("yem_standard_runame"), optionalRow); + } } } diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java index c2d29827..f944d968 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java @@ -108,9 +108,10 @@ public class ReplaceFormPlugIn extends AbstractFormPlugin implements Plugin { // model.setValue("yem_marketraiseprice", replaceable.getBigDecimal("yem_salesmarkup_re"), entryRow); model.setValue("yem_remarke", replaceable.getString("yem_remarkr"), entryRow); model.setValue("yem_entryid", replaceable.getPkValue(), entryRow); - if (model.getDataEntity(true).containsProperty("yem_model_config_r")) { - model.setValue("yem_model_config_r", replaceable.getDynamicObject("yem_model_config_r"), entryRow); - } + model.setValue("yem_ruconfigure_c",replaceable.getString("yem_ruconfigure_r"),entryRow); + + model.setValue("yem_model_config_r", replaceable.getDynamicObject("yem_model_config_r"), entryRow); + } } @@ -168,6 +169,7 @@ public class ReplaceFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_configurtype", "B", optionalRow); parentModel.setValue("yem_configurname", model.getValue("yem_profilenamea", selectRow), optionalRow); parentModel.setValue("yem_configurtypeen", model.getValue("yem_configure", selectRow), optionalRow); + parentModel.setValue("yem_configurtyperu",model.getValue("yem_ruconfigure_c",selectRow),optionalRow); parentModel.setValue("yem_specification_o", model.getValue("yem_specification", selectRow), optionalRow); // parentModel.setValue("yem_marketprice", marketPrice, optionalRow); // parentModel.setValue("yem_marketraiseprice", marketRaisePrice, optionalRow); @@ -176,10 +178,9 @@ public class ReplaceFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_configentryid", model.getValue("yem_entryid", selectRow), optionalRow); DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_r", optionalRow); DynamicObject parentDataEntity = parentModel.getDataEntity(true); - if (modelConfigR != null && parentDataEntity.containsProperty("yem_cname_config") && parentDataEntity.containsProperty("yem_ename_config")) { - parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); - parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); - } + parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); + parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); + parentModel.setValue("yem_runame_config", modelConfigR.getString("yem_standard_runame"), optionalRow); } } diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java index aec6d261..d04d8779 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java @@ -105,6 +105,8 @@ public class RetrofittingFormPlugIn extends AbstractFormPlugin implements Plugin model.setValue("yem_specification",optional.getString("yem_specification_a"),entryRow); model.setValue("yem_remarke",optional.getString("yem_remarka"),entryRow); model.setValue("yem_entryid",optional.getPkValue(),entryRow); + model.setValue("yem_ruconfigure_c", optional.getString("yem_ruconfigure_a"), entryRow); + model.setValue("yem_model_config_r", optional.getDynamicObject("yem_model_config_a"), entryRow); } } @@ -161,12 +163,17 @@ public class RetrofittingFormPlugIn extends AbstractFormPlugin implements Plugin parentModel.setValue("yem_configurtype","C",optionalRow); parentModel.setValue("yem_configurname",model.getValue("yem_profilenamea",selectRow),optionalRow); parentModel.setValue("yem_configurtypeen",model.getValue("yem_configure",selectRow),optionalRow); + parentModel.setValue("yem_configurtyperu",model.getValue("yem_ruconfigure_c",selectRow),optionalRow); parentModel.setValue("yem_specification_o",model.getValue("yem_specification",selectRow),optionalRow); // parentModel.setValue("yem_marketprice",marketPrice,optionalRow); // parentModel.setValue("yem_marketraiseprice",marketRaisePrice,optionalRow); parentModel.setValue("yem_unitsetnumber", model.getValue("yem_unitsetnumber", selectRow), optionalRow); parentModel.setValue("yem_remarkss",model.getValue("yem_remarke",selectRow),optionalRow); parentModel.setValue("yem_configentryid",model.getValue("yem_entryid",selectRow),optionalRow); + DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_c", optionalRow); + parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); + parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); + parentModel.setValue("yem_runame_config", modelConfigR.getString("yem_standard_runame"), optionalRow); } } From f5efd9853c11b2c865c11cb7061ba04297f7c11f Mon Sep 17 00:00:00 2001 From: zzs Date: Tue, 31 Dec 2024 18:23:18 +0800 Subject: [PATCH 40/50] =?UTF-8?q?feat:=E5=8F=AF=E9=80=89=E8=A3=85=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E4=BF=84=E8=AF=AD=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wm/im/priceLibrary/form/OptionalFormPlugIn.java | 8 +++++--- .../yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java | 8 +++++--- .../im/priceLibrary/form/RetrofittingFormPlugIn.java | 10 ++++++---- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java index 9afa573f..7b550093 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java @@ -186,9 +186,11 @@ public class OptionalFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_remarkss", model.getValue("yem_remarke", selectRow), optionalRow); parentModel.setValue("yem_configentryid", model.getValue("yem_entryid", selectRow), optionalRow); DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_c", optionalRow); - parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); - parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); - parentModel.setValue("yem_runame_config", modelConfigR.getString("yem_standard_runame"), optionalRow); + if (YEM.isNotEmpty(modelConfigR)) { + parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); + parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); + parentModel.setValue("yem_runame_config", modelConfigR.getString("yem_standard_runame"), optionalRow); + } } } diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java index f944d968..e921acb8 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java @@ -178,9 +178,11 @@ public class ReplaceFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_configentryid", model.getValue("yem_entryid", selectRow), optionalRow); DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_r", optionalRow); DynamicObject parentDataEntity = parentModel.getDataEntity(true); - parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); - parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); - parentModel.setValue("yem_runame_config", modelConfigR.getString("yem_standard_runame"), optionalRow); + if (YEM.isNotEmpty(modelConfigR)) { + parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); + parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); + parentModel.setValue("yem_runame_config", modelConfigR.getString("yem_standard_runame"), optionalRow); + } } } diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java index d04d8779..dbded121 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java @@ -170,10 +170,12 @@ public class RetrofittingFormPlugIn extends AbstractFormPlugin implements Plugin parentModel.setValue("yem_unitsetnumber", model.getValue("yem_unitsetnumber", selectRow), optionalRow); parentModel.setValue("yem_remarkss",model.getValue("yem_remarke",selectRow),optionalRow); parentModel.setValue("yem_configentryid",model.getValue("yem_entryid",selectRow),optionalRow); - DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_c", optionalRow); - parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); - parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); - parentModel.setValue("yem_runame_config", modelConfigR.getString("yem_standard_runame"), optionalRow); + DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_r", optionalRow); + if (YEM.isNotEmpty(modelConfigR)) { + parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); + parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); + parentModel.setValue("yem_runame_config", modelConfigR.getString("yem_standard_runame"), optionalRow); + } } } From e8df732bccd40395d35817587d12e75cf9024915 Mon Sep 17 00:00:00 2001 From: zzs Date: Tue, 31 Dec 2024 18:42:21 +0800 Subject: [PATCH 41/50] =?UTF-8?q?feat:=E5=8F=AF=E9=80=89=E8=A3=85=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E4=BF=84=E8=AF=AD=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java | 2 +- .../java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java | 2 +- .../com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java index 7b550093..4bf23b5f 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/OptionalFormPlugIn.java @@ -185,7 +185,7 @@ public class OptionalFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_arguments", model.getValue("yem_parameter", selectRow), optionalRow); parentModel.setValue("yem_remarkss", model.getValue("yem_remarke", selectRow), optionalRow); parentModel.setValue("yem_configentryid", model.getValue("yem_entryid", selectRow), optionalRow); - DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_c", optionalRow); + DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_c", selectRow); if (YEM.isNotEmpty(modelConfigR)) { parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java index e921acb8..15eb18bf 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/ReplaceFormPlugIn.java @@ -176,7 +176,7 @@ public class ReplaceFormPlugIn extends AbstractFormPlugin implements Plugin { parentModel.setValue("yem_unitsetnumber", model.getValue("yem_unitsetnumber", selectRow), optionalRow); parentModel.setValue("yem_remarkss", model.getValue("yem_remarke", selectRow), optionalRow); parentModel.setValue("yem_configentryid", model.getValue("yem_entryid", selectRow), optionalRow); - DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_r", optionalRow); + DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_r", selectRow); DynamicObject parentDataEntity = parentModel.getDataEntity(true); if (YEM.isNotEmpty(modelConfigR)) { parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); diff --git a/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java b/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java index dbded121..a7950591 100644 --- a/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java +++ b/src/main/java/com/yem/wm/im/priceLibrary/form/RetrofittingFormPlugIn.java @@ -170,7 +170,7 @@ public class RetrofittingFormPlugIn extends AbstractFormPlugin implements Plugin parentModel.setValue("yem_unitsetnumber", model.getValue("yem_unitsetnumber", selectRow), optionalRow); parentModel.setValue("yem_remarkss",model.getValue("yem_remarke",selectRow),optionalRow); parentModel.setValue("yem_configentryid",model.getValue("yem_entryid",selectRow),optionalRow); - DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_r", optionalRow); + DynamicObject modelConfigR = (DynamicObject) model.getValue("yem_model_config_r", selectRow); if (YEM.isNotEmpty(modelConfigR)) { parentModel.setValue("yem_cname_config", modelConfigR.getString("yem_standard_cname"), optionalRow); parentModel.setValue("yem_ename_config", modelConfigR.getString("yem_standard_ename"), optionalRow); From d420884685d2520a6ccce3e9a9851ba51b781fde Mon Sep 17 00:00:00 2001 From: zzs Date: Thu, 2 Jan 2025 09:45:51 +0800 Subject: [PATCH 42/50] =?UTF-8?q?fix:=E8=8E=B7=E5=8F=96=E5=9B=BE=E5=86=8C?= =?UTF-8?q?=E6=9C=80=E5=A4=A7=E7=BC=96=E5=8F=B7=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yem/em/ass/assatlasdet/from/AssAtlasdetFromEdit.java | 9 +++++++++ src/main/java/com/yem/em/utils/SubRelationUtils.java | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/yem/em/ass/assatlasdet/from/AssAtlasdetFromEdit.java b/src/main/java/com/yem/em/ass/assatlasdet/from/AssAtlasdetFromEdit.java index 16e09c62..8df39ef6 100644 --- a/src/main/java/com/yem/em/ass/assatlasdet/from/AssAtlasdetFromEdit.java +++ b/src/main/java/com/yem/em/ass/assatlasdet/from/AssAtlasdetFromEdit.java @@ -36,6 +36,8 @@ import kd.bos.servicehelper.operation.SaveServiceHelper; import java.util.*; +import static com.yem.em.utils.SubRelationUtils.Getatlasno; + /** * @author zhouc * @date 2023/11/25 15:26 @@ -236,6 +238,13 @@ public class AssAtlasdetFromEdit extends AbstractBillPlugIn implements UploadLis args.cancel = true; } } + + if ("test_getatlasno".equals(key)) { + IDataModel model = this.getModel(); + String number = (String)model.getValue("number"); + int atlasno = Getatlasno(number); + getView().showMessage(String.valueOf(atlasno)); + } } @Override diff --git a/src/main/java/com/yem/em/utils/SubRelationUtils.java b/src/main/java/com/yem/em/utils/SubRelationUtils.java index d0c7ac0e..59184d3a 100644 --- a/src/main/java/com/yem/em/utils/SubRelationUtils.java +++ b/src/main/java/com/yem/em/utils/SubRelationUtils.java @@ -638,7 +638,7 @@ public class SubRelationUtils { QFilter qFilter = new QFilter("number", QCP.in, repno); DynamicObjectCollection data = QueryServiceHelper.query("yem_em_assatlasdet", "id,number,name,yem_entryentity.yem_atlasno", new QFilter[]{qFilter}, - "length(yem_entryentity.yem_atlasno),yem_entryentity.yem_atlasno DESC"); + "length(yem_entryentity.yem_atlasno) DESC,yem_entryentity.yem_atlasno DESC"); if (data.size() > 0) { result = data.get(0).getInt("yem_entryentity.yem_atlasno"); } From 6a3e82e33209fa8a2c3d350b586969c2ee0968ce Mon Sep 17 00:00:00 2001 From: ljw Date: Fri, 3 Jan 2025 10:48:32 +0800 Subject: [PATCH 43/50] =?UTF-8?q?fix=EF=BC=9A=20=E6=8F=90=E5=8D=95?= =?UTF-8?q?=E6=97=A5=E6=9C=9F=E5=90=8C=E6=AD=A5=E8=87=B3=E6=95=B4=E6=9C=BA?= =?UTF-8?q?=E6=A1=A3=E6=A1=88=E6=8A=A5=E9=94=99=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yem/wm/task/StoraGetransToDeviceFilesTask.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/main/java/com/yem/wm/task/StoraGetransToDeviceFilesTask.java b/src/main/java/com/yem/wm/task/StoraGetransToDeviceFilesTask.java index 9c46bb2e..b6d9f780 100644 --- a/src/main/java/com/yem/wm/task/StoraGetransToDeviceFilesTask.java +++ b/src/main/java/com/yem/wm/task/StoraGetransToDeviceFilesTask.java @@ -35,8 +35,7 @@ public class StoraGetransToDeviceFilesTask extends AbstractTask { long yemResourcescodeLong = yemResourcescode.getLong("id"); String yemEmDevicefiles = DynamicObjectUtil.getSelectfields("yem_em_devicefiles", false); QFilter qFilter = new QFilter("yem_framenumber", QCP.equals, yemVehicleno); - qFilter.and("yem_model.id", QCP.equals, yemResourcescodeLong) - .and("billstatus", QCP.equals, "C"); + qFilter.and("yem_model.id", QCP.equals, yemResourcescodeLong); DynamicObject[] dynamicObjects = BusinessDataServiceHelper.load("yem_em_devicefiles", yemEmDevicefiles , new QFilter[]{qFilter}); if (dynamicObjects.length > 0) { From 8d350dd25ee243a711351fabbec1caf6933e4f17 Mon Sep 17 00:00:00 2001 From: zzs Date: Mon, 6 Jan 2025 09:56:48 +0800 Subject: [PATCH 44/50] =?UTF-8?q?feat:PLM=E5=90=AF=E7=94=A8=E3=80=81?= =?UTF-8?q?=E5=81=9C=E7=94=A8=E5=8C=B9=E9=85=8D=E5=88=B0=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E6=89=A7=E8=A1=8C=E7=8A=B6=E6=80=81=E3=80=81=E6=89=A7=E8=A1=8C?= =?UTF-8?q?=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../em/task/MatchingPLMChangeUpdateTaskEdit.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/yem/em/task/MatchingPLMChangeUpdateTaskEdit.java b/src/main/java/com/yem/em/task/MatchingPLMChangeUpdateTaskEdit.java index fb98395c..83fe97a9 100644 --- a/src/main/java/com/yem/em/task/MatchingPLMChangeUpdateTaskEdit.java +++ b/src/main/java/com/yem/em/task/MatchingPLMChangeUpdateTaskEdit.java @@ -55,6 +55,11 @@ public class MatchingPLMChangeUpdateTaskEdit extends AbstractTask { Date bom_completetime = bom.getDate("yem_completetime"); String exestate = bom.getString("yem_exestate"); Date invoktime = plm.getDate("yem_invoktime");//执行时间 + String invokstatus = plm.getString("yem_invokstatus");//执行状态 + if (YEM.isNotEmpty(invoktime) && "B".equals(invokstatus)) { + //已完成跳过 + continue; + } Boolean plmMatchBom = isPlmMatchBom(plmObj, bom, plm); exestate = "30".equals(exestate) ? "B" : "A"; if (plmMatchBom != null && !plmMatchBom) { @@ -72,15 +77,15 @@ public class MatchingPLMChangeUpdateTaskEdit extends AbstractTask { if (YEM.isNotEmpty(enableddate)) { plm.set("yem_enablesta", bom_enablesta); plm.set("yem_starttime", enableddate); - - if (YEM.isNotEmpty(bom_completetime)) { - plm.set("yem_invoktime", bom_completetime); - plm.set("yem_invokstatus", exestate); - } } else { logger.info("启用_无时间,不更新,{},{}", plm_billno, plm_parent); } } + + if (plmMatchBom != null && YEM.isNotEmpty(bom_completetime)) { + plm.set("yem_invoktime", bom_completetime); + plm.set("yem_invokstatus", exestate); + } } } } From 857e1b945873ee3224b5859e98ca12ac5a4ed380 Mon Sep 17 00:00:00 2001 From: ljw Date: Mon, 6 Jan 2025 19:04:14 +0800 Subject: [PATCH 45/50] =?UTF-8?q?fix=EF=BC=9A=20=E5=90=88=E5=90=8C?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=A0=87=E5=87=86=E4=BB=B7=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wm/im/clientdemand/utils/ClientUtils.java | 59 ++++++++++++++----- 1 file changed, 43 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java index b6d9e614..493759d7 100644 --- a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java +++ b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java @@ -46,11 +46,25 @@ public class ClientUtils { int rowInfo = 0; // boolean flag = false; for (DynamicObject temp : detailedinfor) { + String yem_linetype = ""; + if (Entityname.equals("yem_es_xsalesorder")) { - String yem_linetype = temp.getString("yem_linetype"); + yem_linetype = temp.getString("yem_linetype"); if (!yem_linetype.equals("add")) { - rowInfo++; - continue; + boolean tor = true; + DynamicObjectCollection yemMulticonfig = temp.getDynamicObjectCollection("yem_multiconfig"); + if (!yemMulticonfig.isEmpty()){ + for (DynamicObject dynamicObject : yemMulticonfig) { + String yemLinetypes = dynamicObject.getString("yem_linetypes"); + if ("add".equals(yemLinetypes)){ + tor= false; + } + } + } + if (tor){ + rowInfo++; + continue; + } } } //多功能配置分录行获取 @@ -104,7 +118,8 @@ public class ClientUtils { //客户需求单整机 -整机分录行 // if (("yem_im_clientdeman_zj".equals(yem_billtype) || "yem_im_inclientdeman_zj".equals(yem_billtype) || ("yem_es_salesorder_ZJ".equals(yem_billtype)) || "yem_es_salesorder_nmzj".equals(yem_billtype)) && "Z".equals(businesssort)) { if (("yem_im_clientdeman_zj".equals(yem_billtype) || "yem_im_inclientdeman_zj".equals(yem_billtype) || ("yem_es_salesorder_ZJ".equals(yem_billtype)) - || "yem_es_salesorder_nmzj".equals(yem_billtype) || "yem_es_xsalesorder_zj".equals(yem_billtype) | "yem_es_xsalesorder_nmzj".equals(yem_billtype)) && "Z".equals(businesssort)) { + || "yem_es_salesorder_nmzj".equals(yem_billtype) || "yem_es_xsalesorder_zj".equals(yem_billtype) + || "yem_es_xsalesorder_nmzj".equals(yem_billtype)) && "Z".equals(businesssort)) { list.add(new QFilter("yem_bd_products.id", QCP.equals, products)); list.add(new QFilter("billstatus", QCP.equals, "C")); list.add(new QFilter("yem_billtype.number", QCP.equals, "yem_pricelibrary_ZJ")); @@ -143,7 +158,21 @@ public class ClientUtils { } } } - setPriceNow(multiconfig, dataMap, rowInfo, models); + if ("yem_es_xsalesorder".equals(models.getDataEntityType().getName())){ + int multiconfigIndex = 0; + if (!multiconfig.isEmpty()) { + for (DynamicObject dc : multiconfig) { + if ("add".equals(dc.getString("yem_linetypes"))){ + long configentryid = dc.getLong("yem_configentryid"); + BigDecimal configentry = dataMap.get(configentryid) == null ? BigDecimal.ZERO : dataMap.get(configentryid).setScale(2); + models.setValue("yem_marketraisepribase", configentry, multiconfigIndex, rowInfo); + multiconfigIndex++; + } + } + } + }else { + setPriceNow(multiconfig, dataMap, rowInfo, models); + } } DynamicObjectCollection yem_basicmodel = yem_pricelibrary.getDynamicObjectCollection("yem_basicmodel"); if (yem_basicmodel != null && !yem_basicmodel.isEmpty()) { @@ -170,14 +199,20 @@ public class ClientUtils { } //客户需求单整机 -配件分录行 - else if (("yem_im_clientdeman_zj".equals(yem_billtype) || "yem_im_inclientdeman_zj".equals(yem_billtype) || ("yem_es_salesorder_ZJ".equals(yem_billtype)) || "yem_es_salesorder_nmzj".equals(yem_billtype) || "yem_es_xsalesorder_zj".equals(yem_billtype) || "yem_es_xsalesorder_nmzj".equals(yem_billtype)) && "P".equals(businesssort)) { + else if (("yem_im_clientdeman_zj".equals(yem_billtype) || "yem_im_inclientdeman_zj".equals(yem_billtype) + || ("yem_es_salesorder_ZJ".equals(yem_billtype)) || "yem_es_salesorder_nmzj".equals(yem_billtype) + || "yem_es_xsalesorder_zj".equals(yem_billtype) || "yem_es_xsalesorder_nmzj".equals(yem_billtype)) + && "P".equals(businesssort) && !yem_linetype.equals("add")) { // else if (("yem_im_clientdeman_zj".equals(yem_billtype) || "yem_im_inclientdeman_zj".equals(yem_billtype) || ("yem_es_salesorder_ZJ".equals(yem_billtype)) || "yem_es_salesorder_nmzj".equals(yem_billtype)) && "P".equals(businesssort)) { pjFindPrice(yem_exrate, info, pjDatas, rowInfo, list, materials, models, yemBdProductsid); } //客户需求单配件 // else if (("yem_im_clientdema_pj".equals(yem_billtype) || "yem_im_inclientdema_pj".equals(yem_billtype) || "yem_es_salesorder_PJ".equals(yem_billtype) || "yem_es_salesorder_nmpj".equals(yem_billtype)) && "P".equals(businesssort)) { - else if (("yem_im_clientdema_pj".equals(yem_billtype) || "yem_im_inclientdema_pj".equals(yem_billtype) || "yem_es_salesorder_PJ".equals(yem_billtype) || "yem_es_salesorder_nmpj".equals(yem_billtype) || "yem_es_xsalesorder_pj".equals(yem_billtype) || "yem_es_xsalesorder_nmpj".equals(yem_billtype)) && "P".equals(businesssort)) { + else if (("yem_im_clientdema_pj".equals(yem_billtype) || "yem_im_inclientdema_pj".equals(yem_billtype) + || "yem_es_salesorder_PJ".equals(yem_billtype) || "yem_es_salesorder_nmpj".equals(yem_billtype) + || "yem_es_xsalesorder_pj".equals(yem_billtype) || "yem_es_xsalesorder_nmpj".equals(yem_billtype)) + && "P".equals(businesssort)&& !yem_linetype.equals("add")) { pjFindPrice(yem_exrate, info, pjDatas, rowInfo, list, materials, models, yemBdProductsid); } rowInfo++; @@ -331,15 +366,7 @@ public class ClientUtils { * 获取标准价中 给当前行标准销售加价赋值 */ public static void setPriceNow(DynamicObjectCollection multiconfig, Map dataMap, int rowInfo, IDataModel models) { - int multiconfigIndex = 0; - if (multiconfig != null && multiconfig.size() > 0) { - for (DynamicObject dc : multiconfig) { - long configentryid = dc.getLong("yem_configentryid"); - BigDecimal configentry = dataMap.get(configentryid) == null ? BigDecimal.ZERO : dataMap.get(configentryid).setScale(2); - models.setValue("yem_marketraisepribase", configentry, multiconfigIndex, rowInfo); - multiconfigIndex++; - } - } + } /** From f18e6d1d1375c4e5bda83494b72023794556ad5d Mon Sep 17 00:00:00 2001 From: ljw Date: Mon, 6 Jan 2025 20:00:53 +0800 Subject: [PATCH 46/50] =?UTF-8?q?fix=EF=BC=9A=20=E5=90=88=E5=90=8C?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=A0=87=E5=87=86=E4=BB=B7=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/yem/wm/es/xsalesorder/from/XSalesOrderFromEdit.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/com/yem/wm/es/xsalesorder/from/XSalesOrderFromEdit.java b/src/main/java/com/yem/wm/es/xsalesorder/from/XSalesOrderFromEdit.java index 92d5c505..8f0a0bb3 100644 --- a/src/main/java/com/yem/wm/es/xsalesorder/from/XSalesOrderFromEdit.java +++ b/src/main/java/com/yem/wm/es/xsalesorder/from/XSalesOrderFromEdit.java @@ -56,6 +56,9 @@ public class XSalesOrderFromEdit extends AbstractBillPlugIn { if ("yem_es_materialinfo".equals(name)) { setMaterialType(rowIndex); } + if ("yem_multiconfig".equals(name)){ + this.getModel().setValue("yem_linetypes","add",rowIndex); + } } } From 5d9cd98816067e8c44fedd153ffb7465cbf89f00 Mon Sep 17 00:00:00 2001 From: ljw Date: Mon, 6 Jan 2025 21:02:51 +0800 Subject: [PATCH 47/50] =?UTF-8?q?fix=EF=BC=9A=20=E5=90=88=E5=90=8C?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=A0=87=E5=87=86=E4=BB=B7=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java index 493759d7..85578aed 100644 --- a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java +++ b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java @@ -66,6 +66,8 @@ public class ClientUtils { continue; } } + }else { + yem_linetype="add"; } //多功能配置分录行获取 DynamicObjectCollection multiconfig = null; From 8107d90fb11586cbcbfba66bf1ba56f8b19528c1 Mon Sep 17 00:00:00 2001 From: ljw Date: Mon, 6 Jan 2025 21:30:58 +0800 Subject: [PATCH 48/50] =?UTF-8?q?fix=EF=BC=9A=20=E5=90=88=E5=90=8C?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=A0=87=E5=87=86=E4=BB=B7=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yem/wm/im/clientdemand/utils/ClientUtils.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java index 85578aed..822a163f 100644 --- a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java +++ b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java @@ -204,7 +204,7 @@ public class ClientUtils { else if (("yem_im_clientdeman_zj".equals(yem_billtype) || "yem_im_inclientdeman_zj".equals(yem_billtype) || ("yem_es_salesorder_ZJ".equals(yem_billtype)) || "yem_es_salesorder_nmzj".equals(yem_billtype) || "yem_es_xsalesorder_zj".equals(yem_billtype) || "yem_es_xsalesorder_nmzj".equals(yem_billtype)) - && "P".equals(businesssort) && !yem_linetype.equals("add")) { + && "P".equals(businesssort) && yem_linetype.equals("add")) { // else if (("yem_im_clientdeman_zj".equals(yem_billtype) || "yem_im_inclientdeman_zj".equals(yem_billtype) || ("yem_es_salesorder_ZJ".equals(yem_billtype)) || "yem_es_salesorder_nmzj".equals(yem_billtype)) && "P".equals(businesssort)) { pjFindPrice(yem_exrate, info, pjDatas, rowInfo, list, materials, models, yemBdProductsid); } @@ -214,7 +214,7 @@ public class ClientUtils { else if (("yem_im_clientdema_pj".equals(yem_billtype) || "yem_im_inclientdema_pj".equals(yem_billtype) || "yem_es_salesorder_PJ".equals(yem_billtype) || "yem_es_salesorder_nmpj".equals(yem_billtype) || "yem_es_xsalesorder_pj".equals(yem_billtype) || "yem_es_xsalesorder_nmpj".equals(yem_billtype)) - && "P".equals(businesssort)&& !yem_linetype.equals("add")) { + && "P".equals(businesssort)&& yem_linetype.equals("add")) { pjFindPrice(yem_exrate, info, pjDatas, rowInfo, list, materials, models, yemBdProductsid); } rowInfo++; From 440a05d4a677b5003a1d9a461b22da87f56a8a3c Mon Sep 17 00:00:00 2001 From: ljw Date: Mon, 6 Jan 2025 21:41:57 +0800 Subject: [PATCH 49/50] =?UTF-8?q?fix=EF=BC=9A=20=E5=90=88=E5=90=8C?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=A0=87=E5=87=86=E4=BB=B7=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wm/im/clientdemand/utils/ClientUtils.java | 36 +++++++++++-------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java index 822a163f..985ba886 100644 --- a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java +++ b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java @@ -53,21 +53,21 @@ public class ClientUtils { if (!yem_linetype.equals("add")) { boolean tor = true; DynamicObjectCollection yemMulticonfig = temp.getDynamicObjectCollection("yem_multiconfig"); - if (!yemMulticonfig.isEmpty()){ + if (!yemMulticonfig.isEmpty()) { for (DynamicObject dynamicObject : yemMulticonfig) { String yemLinetypes = dynamicObject.getString("yem_linetypes"); - if ("add".equals(yemLinetypes)){ - tor= false; + if ("add".equals(yemLinetypes)) { + tor = false; } } } - if (tor){ + if (tor) { rowInfo++; continue; } } - }else { - yem_linetype="add"; + } else { + yem_linetype = "add"; } //多功能配置分录行获取 DynamicObjectCollection multiconfig = null; @@ -160,11 +160,11 @@ public class ClientUtils { } } } - if ("yem_es_xsalesorder".equals(models.getDataEntityType().getName())){ + if ("yem_es_xsalesorder".equals(models.getDataEntityType().getName())) { int multiconfigIndex = 0; if (!multiconfig.isEmpty()) { for (DynamicObject dc : multiconfig) { - if ("add".equals(dc.getString("yem_linetypes"))){ + if ("add".equals(dc.getString("yem_linetypes"))) { long configentryid = dc.getLong("yem_configentryid"); BigDecimal configentry = dataMap.get(configentryid) == null ? BigDecimal.ZERO : dataMap.get(configentryid).setScale(2); models.setValue("yem_marketraisepribase", configentry, multiconfigIndex, rowInfo); @@ -172,7 +172,7 @@ public class ClientUtils { } } } - }else { + } else { setPriceNow(multiconfig, dataMap, rowInfo, models); } } @@ -214,7 +214,7 @@ public class ClientUtils { else if (("yem_im_clientdema_pj".equals(yem_billtype) || "yem_im_inclientdema_pj".equals(yem_billtype) || "yem_es_salesorder_PJ".equals(yem_billtype) || "yem_es_salesorder_nmpj".equals(yem_billtype) || "yem_es_xsalesorder_pj".equals(yem_billtype) || "yem_es_xsalesorder_nmpj".equals(yem_billtype)) - && "P".equals(businesssort)&& yem_linetype.equals("add")) { + && "P".equals(businesssort) && yem_linetype.equals("add")) { pjFindPrice(yem_exrate, info, pjDatas, rowInfo, list, materials, models, yemBdProductsid); } rowInfo++; @@ -368,7 +368,15 @@ public class ClientUtils { * 获取标准价中 给当前行标准销售加价赋值 */ public static void setPriceNow(DynamicObjectCollection multiconfig, Map dataMap, int rowInfo, IDataModel models) { - + int multiconfigIndex = 0; + if (!multiconfig.isEmpty()) { + for (DynamicObject dc : multiconfig) { + long configentryid = dc.getLong("yem_configentryid"); + BigDecimal configentry = dataMap.get(configentryid) == null ? BigDecimal.ZERO : dataMap.get(configentryid).setScale(2); + models.setValue("yem_marketraisepribase", configentry, multiconfigIndex, rowInfo); + multiconfigIndex++; + } + } } /** @@ -2001,13 +2009,13 @@ public class ClientUtils { int rowCount = model.getEntryRowCount("yem_es_materialinfo"); for (int i = 0; i < rowCount; i++) { DynamicObject d = c.get(i); - if (string.equals("yem_es_xsalesorder")){ + if (string.equals("yem_es_xsalesorder")) { String yemLinetype = d.getString("yem_linetype"); - if (!"add".equals(yemLinetype)){ + if (!"add".equals(yemLinetype)) { continue; } } - if (!"Z".equals(d.getString("yem_businesssort"))){ + if (!"Z".equals(d.getString("yem_businesssort"))) { continue; } DynamicObjectCollection subC = d.getDynamicObjectCollection("yem_multiconfig"); From c47e1d295f7d420c8c3bb25faf13f4fe6ae8b3de Mon Sep 17 00:00:00 2001 From: ljw Date: Mon, 6 Jan 2025 22:03:09 +0800 Subject: [PATCH 50/50] =?UTF-8?q?fix=EF=BC=9A=20=E5=90=88=E5=90=8C?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=A0=87=E5=87=86=E4=BB=B7=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java index 985ba886..6e4d728b 100644 --- a/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java +++ b/src/main/java/com/yem/wm/im/clientdemand/utils/ClientUtils.java @@ -169,6 +169,8 @@ public class ClientUtils { BigDecimal configentry = dataMap.get(configentryid) == null ? BigDecimal.ZERO : dataMap.get(configentryid).setScale(2); models.setValue("yem_marketraisepribase", configentry, multiconfigIndex, rowInfo); multiconfigIndex++; + } else { + multiconfigIndex++; } } }