From a8479c0e56cd8c04adbfa6791b2f39082c026ada Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E8=B4=B5=E5=BC=BA?= Date: Tue, 15 Jul 2025 14:29:22 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=AF=E4=BB=98=E4=BF=A1=E6=81=AF=E5=8F=98?= =?UTF-8?q?=E6=9B=B4=E5=8D=95=E7=BB=99=E5=8F=98=E6=9B=B4=E4=BA=BA=E5=8F=91?= =?UTF-8?q?=E9=80=81=E9=82=AE=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../operate/PayInfoChgBillSaveOperation.java | 43 +++++++++++++++++ .../operate/PayinfoChangeOperation.java | 47 ++++++++++--------- 2 files changed, 67 insertions(+), 23 deletions(-) create mode 100644 main/java/shjh/jhzj7/fi/fi/plugin/operate/PayInfoChgBillSaveOperation.java diff --git a/main/java/shjh/jhzj7/fi/fi/plugin/operate/PayInfoChgBillSaveOperation.java b/main/java/shjh/jhzj7/fi/fi/plugin/operate/PayInfoChgBillSaveOperation.java new file mode 100644 index 0000000..6604ad4 --- /dev/null +++ b/main/java/shjh/jhzj7/fi/fi/plugin/operate/PayInfoChgBillSaveOperation.java @@ -0,0 +1,43 @@ +package shjh.jhzj7.fi.fi.plugin.operate; + +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.entity.plugin.AbstractOperationServicePlugIn; +import kd.bos.entity.plugin.args.AfterOperationArgs; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; +import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.sdk.plugin.Plugin; +import shjh.jhzj7.fi.fi.utils.JhzjUtils; + +import java.util.ArrayList; +import java.util.List; + +/** + * 单据操作插件 + */ +public class PayInfoChgBillSaveOperation extends AbstractOperationServicePlugIn implements Plugin { + + @Override + public void afterExecuteOperationTransaction(AfterOperationArgs e) { + super.afterExecuteOperationTransaction(e); + String eok = e.getOperationKey(); + if("save".equals(eok)){ + DynamicObject[] dataEntities = e.getDataEntities(); + for (DynamicObject dataEntity : dataEntities) { + DynamicObject prinfo = BusinessDataServiceHelper.loadSingle(dataEntity.getPkValue(),"cas_paychgbill"); + if(prinfo != null){ + String sourcebillno = prinfo.getString("sourcebillno");//源单编号 + String changeCause = prinfo.getString("remark");//变更原因 + DynamicObject userField = prinfo.getDynamicObject("alterationuser");//变更人 + List receivers = new ArrayList<>(1); + receivers.add(userField.getLong("id")); + String title = "支付信息变更单号"+prinfo.getString("billno"); + String content = "请登录资金系统处理付款单"+sourcebillno+"的变更,原因如下:
"+changeCause; + String pcurl = JhzjUtils.getBillPCURL(prinfo); + JhzjUtils.sendEmail(title,content+"
变更详情页面:"+pcurl+"",receivers,prinfo); + JhzjUtils.sendWEIXINQY(title,content,receivers,prinfo); + } + } + } + } +} \ No newline at end of file diff --git a/main/java/shjh/jhzj7/fi/fi/plugin/operate/PayinfoChangeOperation.java b/main/java/shjh/jhzj7/fi/fi/plugin/operate/PayinfoChangeOperation.java index dcfadd1..f0a4c2e 100644 --- a/main/java/shjh/jhzj7/fi/fi/plugin/operate/PayinfoChangeOperation.java +++ b/main/java/shjh/jhzj7/fi/fi/plugin/operate/PayinfoChangeOperation.java @@ -4,6 +4,7 @@ import kd.bos.dataentity.entity.DynamicObject; import kd.bos.entity.plugin.AbstractOperationServicePlugIn; import kd.bos.entity.plugin.args.AfterOperationArgs; import kd.bos.entity.plugin.args.BeforeOperationArgs; +import kd.bos.entity.plugin.args.EndOperationTransactionArgs; import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; @@ -45,27 +46,27 @@ public class PayinfoChangeOperation extends AbstractOperationServicePlugIn imple } } - @Override - public void afterExecuteOperationTransaction(AfterOperationArgs e) { - super.afterExecuteOperationTransaction(e); - String eok = e.getOperationKey(); - if("recpushchg".equals(eok) || "paypushchg".equals(eok)){ - //根据当前所选付款单找到对应的变更单 - QFilter status = new QFilter("billstatus", QCP.equals, "A"); - QFilter sourcebill = new QFilter("sourcebillid", QCP.equals, e.getDataEntities()[0].getLong("id")); - DynamicObject prinfo = BusinessDataServiceHelper.loadSingle(paychgbill,new QFilter[]{status.and(sourcebill)}); - if(prinfo != null){ - String sourcebillno = prinfo.getString("sourcebillno");//源单编号 - String changeCause = prinfo.getString("remark");//变更原因 - DynamicObject userField = prinfo.getDynamicObject("alterationuser");//变更人 - List receivers = new ArrayList<>(1); - receivers.add(userField.getLong("id")); - String title = "支付信息变更单号"+prinfo.getString("billno"); - String content = "请登录资金系统处理付款单"+sourcebillno+"的变更,原因如下:
"+changeCause; - String pcurl = JhzjUtils.getBillPCURL(prinfo); - JhzjUtils.sendEmail(title,content+"
变更详情页面:"+pcurl+"",receivers,prinfo); - JhzjUtils.sendWEIXINQY(title,content,receivers,prinfo); - } - } - } +// @Override +// public void afterExecuteOperationTransaction(AfterOperationArgs e) { +// super.afterExecuteOperationTransaction(e); +// String eok = e.getOperationKey(); +// if("recpushchg".equals(eok) || "paypushchg".equals(eok)){ +// //根据当前所选付款单找到对应的变更单 +// QFilter status = new QFilter("billstatus", QCP.equals, "A"); +// QFilter sourcebill = new QFilter("sourcebillid", QCP.equals, e.getDataEntities()[0].getLong("id")); +// DynamicObject prinfo = BusinessDataServiceHelper.loadSingle(paychgbill,new QFilter[]{status.and(sourcebill)}); +// if(prinfo != null){ +// String sourcebillno = prinfo.getString("sourcebillno");//源单编号 +// String changeCause = prinfo.getString("remark");//变更原因 +// DynamicObject userField = prinfo.getDynamicObject("alterationuser");//变更人 +// List receivers = new ArrayList<>(1); +// receivers.add(userField.getLong("id")); +// String title = "支付信息变更单号"+prinfo.getString("billno"); +// String content = "请登录资金系统处理付款单"+sourcebillno+"的变更,原因如下:
"+changeCause; +// String pcurl = JhzjUtils.getBillPCURL(prinfo); +// JhzjUtils.sendEmail(title,content+"
变更详情页面:"+pcurl+"",receivers,prinfo); +// JhzjUtils.sendWEIXINQY(title,content,receivers,prinfo); +// } +// } +// } } \ No newline at end of file