From 75527a93cbf1285ea279cafa168f08fa88b44380 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BE=9A=E8=B1=86=E8=B1=86?= <13356128+sunandmoon60@user.noreply.gitee.com> Date: Mon, 3 Nov 2025 11:32:25 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BB=98=E6=AC=BE=E7=BB=93=E6=9E=9C=E5=8F=8D?= =?UTF-8?q?=E9=A6=88=E6=8E=A5=E5=8F=A3=E8=B0=83=E6=95=B4=202.=E5=8C=97?= =?UTF-8?q?=E5=B9=BF=E5=87=BA=E5=85=A5=E5=BA=93=E6=8E=A5=E5=8F=A3=E8=B0=83?= =?UTF-8?q?=E6=95=B4=203.=E6=B3=A8=E5=86=8C=E8=AF=81=E7=94=9F=E4=BA=A7?= =?UTF-8?q?=E5=95=86=E9=93=BE=E6=8E=A5=E4=B8=8B=E8=BD=BD=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/form/pm/PurApplyBillPlugin.java | 1 + .../pm/PurorderEntryIntroPaybillPlugin.java | 1 + .../operate/conm/RebateRuleAuditToFlOp.java | 2 +- .../operate/sys/RebateRuleOpPlugin.java | 62 ++++++++++--------- 4 files changed, 37 insertions(+), 29 deletions(-) diff --git a/lc123/cloud/app/plugin/form/pm/PurApplyBillPlugin.java b/lc123/cloud/app/plugin/form/pm/PurApplyBillPlugin.java index 1a343cd..c8bbbfb 100644 --- a/lc123/cloud/app/plugin/form/pm/PurApplyBillPlugin.java +++ b/lc123/cloud/app/plugin/form/pm/PurApplyBillPlugin.java @@ -461,6 +461,7 @@ public class PurApplyBillPlugin extends AbstractBillPlugIn implements Plugin { if (i == 0) { model.setValue("org", LCJT);//申请组织 model.setValue("dept", dept);//申请部门 + model.setValue("tqq9_dept", dept);//创建部门 model.setValue("bizuser", user);//申请人 model.setValue("currency", currency);//币别 model.setValue("creator", user);//创建人 diff --git a/lc123/cloud/app/plugin/form/pm/PurorderEntryIntroPaybillPlugin.java b/lc123/cloud/app/plugin/form/pm/PurorderEntryIntroPaybillPlugin.java index e142a8e..00c9a1a 100644 --- a/lc123/cloud/app/plugin/form/pm/PurorderEntryIntroPaybillPlugin.java +++ b/lc123/cloud/app/plugin/form/pm/PurorderEntryIntroPaybillPlugin.java @@ -246,6 +246,7 @@ public class PurorderEntryIntroPaybillPlugin extends AbstractBillPlugIn imple org = BusinessDataServiceHelper.loadSingle(tqq9_org.getLong("id"), "bos_org");//组织 model.setValue("org", org);//申请组织 model.setValue("dept", dept);//申请部门 + model.setValue("tqq9_dept", dept);//创建部门 model.setValue("creator", user);//创建人 model.setValue("lastupdateuser", user);//修改人 model.setValue("currency", currency);//币别 diff --git a/lc123/cloud/app/plugin/operate/conm/RebateRuleAuditToFlOp.java b/lc123/cloud/app/plugin/operate/conm/RebateRuleAuditToFlOp.java index cb824d2..80adf90 100644 --- a/lc123/cloud/app/plugin/operate/conm/RebateRuleAuditToFlOp.java +++ b/lc123/cloud/app/plugin/operate/conm/RebateRuleAuditToFlOp.java @@ -7,7 +7,7 @@ import kd.bos.logging.LogFactory; import kd.sdk.plugin.Plugin; /** - * 单据操作插件 + * 单据操作插件(暂时不用) */ public class RebateRuleAuditToFlOp extends AbstractOperationServicePlugIn implements Plugin { private final static Log logger = LogFactory.getLog(RebateRuleAuditToFlOp.class); diff --git a/lc123/cloud/app/plugin/operate/sys/RebateRuleOpPlugin.java b/lc123/cloud/app/plugin/operate/sys/RebateRuleOpPlugin.java index 25a953f..cc274e0 100644 --- a/lc123/cloud/app/plugin/operate/sys/RebateRuleOpPlugin.java +++ b/lc123/cloud/app/plugin/operate/sys/RebateRuleOpPlugin.java @@ -22,6 +22,7 @@ import tqq9.lc123.cloud.app.plugin.utils.HttpRequestUtils; import java.io.IOException; import java.math.BigDecimal; +import java.math.RoundingMode; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; @@ -83,12 +84,17 @@ public class RebateRuleOpPlugin extends AbstractOperationServicePlugIn implement e.getFieldKeys().add("tqq9_exclupur"); e.getFieldKeys().add("tqq9_purchaseorder"); e.getFieldKeys().add("tqq9_rebateamount"); + e.getFieldKeys().add("tqq9_rebate_entry.tqq9_excl_start_base"); + e.getFieldKeys().add("tqq9_rebate_entry.tqq9_excl_end_base"); + e.getFieldKeys().add("tqq9_rebate_entry.tqq9_proportion"); } @Override public void afterExecuteOperationTransaction(AfterOperationArgs e) { super.afterExecuteOperationTransaction(e); for (DynamicObject dataEntity : e.getDataEntities()) { + Gson gson = new Gson(); + // HashMap bodyMap = new HashMap<>(); HashMap tokenMap = new HashMap(); tokenMap.put("Authorization", FLXT_TOKEN); @@ -105,14 +111,14 @@ public class RebateRuleOpPlugin extends AbstractOperationServicePlugIn implement DynamicObjectCollection tqq9_supplier = dataEntity.getDynamicObjectCollection("tqq9_supplier");//返利供应商 StringBuilder supplierIds = new StringBuilder(); for (DynamicObject dynamicObject : tqq9_supplier) { - supplierIds.append(",").append(dynamicObject.getDynamicObject("fbasedataid").getString("id")); + supplierIds.append(",").append(dynamicObject.getDynamicObject("fbasedataid").getString("tqq9_ztsupplierid")); } - BigDecimal tqq9_estimatepro = dataEntity.getBigDecimal("tqq9_estimatepro");//预测比例 - BigDecimal tqq9_targetamount = dataEntity.getBigDecimal("tqq9_targetamount");//预测总金额 + BigDecimal tqq9_estimatepro = dataEntity.getBigDecimal("tqq9_estimatepro").setScale(2, RoundingMode.HALF_UP);//预测比例 + BigDecimal tqq9_targetamount = dataEntity.getBigDecimal("tqq9_targetamount").setScale(2, RoundingMode.HALF_UP);//预测总金额 DynamicObjectCollection tqq9_rebatebrand = dataEntity.getDynamicObjectCollection("tqq9_rebatebrand");//返利品牌 StringBuilder rebatebrandIds = new StringBuilder(); for (DynamicObject dynamicObject : tqq9_rebatebrand) { - rebatebrandIds.append(",").append(dynamicObject.getDynamicObject("fbasedataid").getString("id")); + rebatebrandIds.append(",").append(dynamicObject.getDynamicObject("fbasedataid").getString("tqq9_ztbrandid")); } DynamicObjectCollection tqq9_rebategoods = dataEntity.getDynamicObjectCollection("tqq9_rebategoods");//返利商品 StringBuilder rebategoodsIds = new StringBuilder(); @@ -142,9 +148,9 @@ public class RebateRuleOpPlugin extends AbstractOperationServicePlugIn implement List.add(bjList); } } else { - BigDecimal tqq9_gzlcbl = dataEntity.getBigDecimal("tqq9_gzlcbl"); - BigDecimal tqq9_shlcbl = dataEntity.getBigDecimal("tqq9_shlcbl"); - BigDecimal tqq9_bjlcbl = dataEntity.getBigDecimal("tqq9_bjlcbl"); + BigDecimal tqq9_gzlcbl = dataEntity.getBigDecimal("tqq9_gzlcbl").setScale(2, RoundingMode.HALF_UP); + BigDecimal tqq9_shlcbl = dataEntity.getBigDecimal("tqq9_shlcbl").setScale(2, RoundingMode.HALF_UP); + BigDecimal tqq9_bjlcbl = dataEntity.getBigDecimal("tqq9_bjlcbl").setScale(2, RoundingMode.HALF_UP); if (tqq9_gzlcbl.compareTo(BigDecimal.ZERO) > 0) { List gzList = new ArrayList<>(); gzList.add("GZ_LC"); @@ -164,27 +170,27 @@ public class RebateRuleOpPlugin extends AbstractOperationServicePlugIn implement List.add(bjList); } } - String distributeCity = List.toString(); + String distributeCity = gson.toJson(List); List> calculationProportionList = new ArrayList<>(); - BigDecimal tqq9_excl_start_base = dataEntity.getBigDecimal("tqq9_excl_start_base"); - BigDecimal tqq9_excl_end_base = dataEntity.getBigDecimal("tqq9_excl_end_base"); - BigDecimal tqq9_proportion = dataEntity.getBigDecimal("tqq9_proportion"); - if (tqq9_excl_start_base.compareTo(BigDecimal.ZERO) > 0) { - List startList = new ArrayList<>(); - startList.add(tqq9_excl_start_base.toString()); - calculationProportionList.add(startList); + DynamicObjectCollection tqq9_rebate_entry = dataEntity.getDynamicObjectCollection("tqq9_rebate_entry"); + for (DynamicObject dynamicObject : tqq9_rebate_entry) { + List flList = new ArrayList<>(); + + BigDecimal tqq9_excl_start_base = dynamicObject.getBigDecimal("tqq9_excl_start_base").setScale(2, RoundingMode.HALF_UP); + BigDecimal tqq9_excl_end_base = dynamicObject.getBigDecimal("tqq9_excl_end_base").setScale(2, RoundingMode.HALF_UP); + BigDecimal tqq9_proportion = dynamicObject.getBigDecimal("tqq9_proportion").setScale(2, RoundingMode.HALF_UP); + if (tqq9_excl_start_base.compareTo(BigDecimal.ZERO) > 0&&tqq9_proportion.compareTo(BigDecimal.ZERO) > 0&&tqq9_excl_end_base.compareTo(BigDecimal.ZERO) > 0) { + flList.add(tqq9_excl_start_base.toString()); + flList.add(tqq9_proportion.toString()); + flList.add(tqq9_excl_end_base.toString()); + } + calculationProportionList.add(flList); } - if (tqq9_proportion.compareTo(BigDecimal.ZERO) > 0) { - List proportionList = new ArrayList<>(); - proportionList.add(tqq9_proportion.toString()); - calculationProportionList.add(proportionList); - } - if (tqq9_excl_end_base.compareTo(BigDecimal.ZERO) > 0) { - List endList = new ArrayList<>(); - endList.add(tqq9_excl_end_base.toString()); - calculationProportionList.add(endList); - } - String calculationProportion = calculationProportionList.toString(); + + + //String calculationProportion = calculationProportionList.toString(); + String calculationProportion = gson.toJson(calculationProportionList); + Integer isTax = 1; Boolean tqq9_istax = dataEntity.getBoolean("tqq9_istax");//是否含税 if (tqq9_istax) { @@ -263,13 +269,13 @@ public class RebateRuleOpPlugin extends AbstractOperationServicePlugIn implement purchaseorderIds.append(",").append(dynamicObject.getDynamicObject("fbasedataid").getString("billno")); } } - BigDecimal tqq9_rebateamount = dataEntity.getBigDecimal("tqq9_rebateamount");//返利金额 + BigDecimal tqq9_rebateamount = dataEntity.getBigDecimal("tqq9_rebateamount").setScale(2, RoundingMode.HALF_UP);//返利金额 bodyMap.put("orderIds", (purchaseorderIds.length() == 0) ? null : purchaseorderIds.substring(1)); bodyMap.put("returnMoney", tqq9_rebateamount); } - Gson gson = new Gson(); + LCLogService lcLogService = new LCLogServiceImpl(); try { String bodyString = HttpRequestUtils.postJson(Push_URL, bodyMap.toString(), tokenMap);