From 5dc221c42f9d6676bb4e4dd530ae15fb7fbc85ee Mon Sep 17 00:00:00 2001 From: weiyunlong Date: Fri, 23 May 2025 17:49:30 +0800 Subject: [PATCH] =?UTF-8?q?-=20[=20]=20=E5=87=AD=E8=AF=81=E5=8F=8D?= =?UTF-8?q?=E5=A4=8D=E6=A0=B8=E5=90=8E=E5=88=B7=E6=96=B0=E9=A1=B5=E9=9D=A2?= =?UTF-8?q?(=E5=BA=9F=E5=BC=83)=20-=20[=20]=20=E6=8B=89=E5=8F=96SAP?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=87=AD=E8=AF=81=E6=8A=AC=E5=A4=B4=E6=96=87?= =?UTF-8?q?=E6=9C=AC=20-=20[=20]=20=E4=BC=98=E5=8C=96=E8=B5=84=E9=87=91?= =?UTF-8?q?=E8=AE=A1=E5=88=92=E7=A7=91=E7=9B=AE=E5=8F=96=E5=80=BC(?= =?UTF-8?q?=E4=BC=9A=E8=AE=A1=E7=A7=91=E7=9B=AE=E6=A0=B9=E6=8D=AE=E7=BC=96?= =?UTF-8?q?=E7=A0=81)=20-=20[=20]=20=E4=BC=98=E5=8C=96=E6=8E=92=E7=A8=8B?= =?UTF-8?q?=E4=B8=80=E9=94=AE=E6=8E=92=E7=A8=8B=E5=90=8E=E5=88=B7=E6=96=B0?= =?UTF-8?q?=E6=97=A5=E6=9C=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --s --- .../fi/fi/plugin/form/SappzFormPlugin.java | 38 +++++++++---------- .../fi/fi/plugin/form/ScheduleListPlugin.java | 20 ++++++++++ .../fi/fi/plugin/form/TextFieldDemo.java | 7 ++++ .../plugin/operate/PayApplySaveOperation.java | 8 ++-- .../task/QuerySapCreatePayApplyTask.java | 38 +++++++++---------- .../fi/webapi/ApplyAdjustBillControler.java | 38 +++++++++---------- 6 files changed, 88 insertions(+), 61 deletions(-) diff --git a/main/java/shjh/jhzj7/fi/fi/plugin/form/SappzFormPlugin.java b/main/java/shjh/jhzj7/fi/fi/plugin/form/SappzFormPlugin.java index bb40375..096b61a 100644 --- a/main/java/shjh/jhzj7/fi/fi/plugin/form/SappzFormPlugin.java +++ b/main/java/shjh/jhzj7/fi/fi/plugin/form/SappzFormPlugin.java @@ -583,29 +583,29 @@ public class SappzFormPlugin extends AbstractFormPlugin { String bankaccount = bankentry.getString("bankaccount");//银行账号 DynamicObject bank = bankentry.getDynamicObject("bank");//开户银行 String accountname = bankentry.getString("accountname");//账户名称 - // 检查银行账号,开户银行,账户名称是否为空 - if (bankaccount == null || bankaccount.trim().isEmpty()) { - handleError("同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)", fkBillNum, apimenthod, null); - this.getView().showMessage("同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)"); - return; - } - if (null == bank) { - handleError("同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)", fkBillNum, apimenthod, null); - this.getView().showMessage("同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)"); - return; - } - if (accountname == null || accountname.trim().isEmpty()) { - handleError("同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)", fkBillNum, apimenthod, null); - this.getView().showMessage("同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)"); - return; - } +// // 检查银行账号,开户银行,账户名称是否为空 +// if (bankaccount == null || bankaccount.trim().isEmpty()) { +// handleError("同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)", fkBillNum, apimenthod, null); +// this.getView().showMessage("同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)"); +// return; +// } +// if (null == bank) { +// handleError("同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)", fkBillNum, apimenthod, null); +// this.getView().showMessage("同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)"); +// return; +// } +// if (accountname == null || accountname.trim().isEmpty()) { +// handleError("同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)", fkBillNum, apimenthod, null); +// this.getView().showMessage("同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)"); +// return; +// } ap_payapply_entry.set("e_assacct", bankaccount);//银行账号 ap_payapply_entry.set("e_bebank", bank);//开户银行 ap_payapply_entry.set("shjh_asstactrealname", accountname);//账户名称 }else { - handleError("同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息", fkBillNum, apimenthod, null); - this.getView().showMessage("同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息"); - return; +// handleError("同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息", fkBillNum, apimenthod, null); +// this.getView().showMessage("同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息"); +// return; } } //到期日 diff --git a/main/java/shjh/jhzj7/fi/fi/plugin/form/ScheduleListPlugin.java b/main/java/shjh/jhzj7/fi/fi/plugin/form/ScheduleListPlugin.java index f9aa9db..c4cff48 100644 --- a/main/java/shjh/jhzj7/fi/fi/plugin/form/ScheduleListPlugin.java +++ b/main/java/shjh/jhzj7/fi/fi/plugin/form/ScheduleListPlugin.java @@ -7,10 +7,14 @@ import kd.bos.entity.datamodel.ListSelectedRow; import kd.bos.entity.datamodel.ListSelectedRowCollection; import kd.bos.entity.operate.result.OperationResult; import kd.bos.form.events.AfterDoOperationEventArgs; +import kd.bos.list.IListView; import kd.bos.list.plugin.AbstractListPlugin; import kd.bos.logging.Log; import kd.bos.logging.LogFactory; +import kd.bos.orm.query.QCP; +import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.bos.servicehelper.operation.SaveServiceHelper; import java.text.SimpleDateFormat; import java.util.Date; @@ -36,6 +40,22 @@ public class ScheduleListPlugin extends AbstractListPlugin { String status = "chargeback".equals(operateKey)? "04" : "05"; processRows(status); } + + //一键排程 + if ("oneautosche".equals(operateKey)) { + + ListSelectedRowCollection selectedRows = ((IListView)this.getView()).getSelectedRows(); + for (ListSelectedRow selectedRow : selectedRows) { + String formID = selectedRow.getFormID(); + String billNo = selectedRow.getBillNo(); + DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle("psd_schedulebill", new QFilter[]{new QFilter("billno", QCP.equals, billNo)}); + if (null != dynamicObject) { + dynamicObject.set("expectdate",new Date()); + dynamicObject.set("expectpaydate",new Date()); + } + SaveServiceHelper.save(new DynamicObject[]{dynamicObject}); + } + } } } } diff --git a/main/java/shjh/jhzj7/fi/fi/plugin/form/TextFieldDemo.java b/main/java/shjh/jhzj7/fi/fi/plugin/form/TextFieldDemo.java index 4b1cec3..8f23f43 100644 --- a/main/java/shjh/jhzj7/fi/fi/plugin/form/TextFieldDemo.java +++ b/main/java/shjh/jhzj7/fi/fi/plugin/form/TextFieldDemo.java @@ -55,6 +55,8 @@ public class TextFieldDemo extends AbstractFormPlugin { shjh_costcenter.setMustInput(false); shjh_profitcenter.setMustInput(false); } + //赋值结算方式 + this.getView().getModel().setValue("shjh_jsfs",this.getView().getModel().getValue("settletype")); } @Override @@ -79,5 +81,10 @@ public class TextFieldDemo extends AbstractFormPlugin { shjh_costcenter.setMustInput(false); shjh_profitcenter.setMustInput(false); } + + //赋值结算方式 + if ("shjh_jsfs".equals(e.getProperty().getName())) { + this.getView().getModel().setValue("settletype",this.getView().getModel().getValue("shjh_jsfs")); + } } } diff --git a/main/java/shjh/jhzj7/fi/fi/plugin/operate/PayApplySaveOperation.java b/main/java/shjh/jhzj7/fi/fi/plugin/operate/PayApplySaveOperation.java index 04375c8..2d3d56c 100644 --- a/main/java/shjh/jhzj7/fi/fi/plugin/operate/PayApplySaveOperation.java +++ b/main/java/shjh/jhzj7/fi/fi/plugin/operate/PayApplySaveOperation.java @@ -201,12 +201,12 @@ public class PayApplySaveOperation extends AbstractOperationServicePlugIn implem //会计科目_多选基础资料 DynamicObject shjhSapkjkm = bill.getDynamicObject("shjh_sapkjkm"); if (null != shjhSapkjkm) { - Long kjkmid = shjhSapkjkm.getLong("id"); - QFilter q6 = new QFilter("shjh_kjkm.fbasedataid", QCP.equals, kjkmid); - QFilter q7 = new QFilter("shjh_kjkm.fbasedataid", QCP.equals, null); +// Long kjkmid = shjhSapkjkm.getLong("id"); + QFilter q6 = new QFilter("shjh_kjkm.fbasedataid.number", QCP.equals, shjhSapkjkm.getString("number")); + QFilter q7 = new QFilter("shjh_kjkm.fbasedataid.number", QCP.equals, null); qFilter = qFilter.and(q6.or(q7)); }else { - QFilter q7 = new QFilter("shjh_kjkm.fbasedataid", QCP.equals, null); + QFilter q7 = new QFilter("shjh_kjkm.fbasedataid.number", QCP.equals, null); qFilter = qFilter.and(q7); } JhzjUtils.saveLog(bill.getString("billno"), "付款申请携带资金计划科目(会计科目)","" diff --git a/main/java/shjh/jhzj7/fi/fi/plugin/task/QuerySapCreatePayApplyTask.java b/main/java/shjh/jhzj7/fi/fi/plugin/task/QuerySapCreatePayApplyTask.java index c7046d9..78b32b8 100644 --- a/main/java/shjh/jhzj7/fi/fi/plugin/task/QuerySapCreatePayApplyTask.java +++ b/main/java/shjh/jhzj7/fi/fi/plugin/task/QuerySapCreatePayApplyTask.java @@ -316,29 +316,29 @@ public class QuerySapCreatePayApplyTask extends AbstractTask { String bankaccount = bankentry.getString("bankaccount");//银行账号 DynamicObject bank = bankentry.getDynamicObject("bank");//开户银行 String accountname = bankentry.getString("accountname");//账户名称 - // 检查银行账号,开户银行,账户名称是否为空 - if (bankaccount == null || bankaccount.trim().isEmpty()) { - logger.error("同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)"); - JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)", false, "API"); - return null; - } - if (null == bank) { - logger.error("同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)"); - JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)", false, "API"); - return null; - } - if (accountname == null || accountname.trim().isEmpty()) { - logger.error("同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)"); - JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)", false, "API"); - return null; - } +// // 检查银行账号,开户银行,账户名称是否为空 +// if (bankaccount == null || bankaccount.trim().isEmpty()) { +// logger.error("同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)"); +// JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)", false, "API"); +// return null; +// } +// if (null == bank) { +// logger.error("同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)"); +// JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)", false, "API"); +// return null; +// } +// if (accountname == null || accountname.trim().isEmpty()) { +// logger.error("同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)"); +// JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)", false, "API"); +// return null; +// } ap_payapply_entry.set("e_assacct", bankaccount);//银行账号 ap_payapply_entry.set("e_bebank", bank);//开户银行 ap_payapply_entry.set("shjh_asstactrealname", accountname);//账户名称 }else { - logger.error("同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息"); - JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息", false, "API"); - return null; +// logger.error("同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息"); +// JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息", false, "API"); +// return null; } } diff --git a/main/java/shjh/jhzj7/fi/fi/webapi/ApplyAdjustBillControler.java b/main/java/shjh/jhzj7/fi/fi/webapi/ApplyAdjustBillControler.java index 7e740c1..cd85a81 100644 --- a/main/java/shjh/jhzj7/fi/fi/webapi/ApplyAdjustBillControler.java +++ b/main/java/shjh/jhzj7/fi/fi/webapi/ApplyAdjustBillControler.java @@ -722,29 +722,29 @@ public class ApplyAdjustBillControler { String bankaccount = bankentry.getString("bankaccount");//银行账号 DynamicObject bank = bankentry.getDynamicObject("bank");//开户银行 String accountname = bankentry.getString("accountname");//账户名称 - // 检查银行账号,开户银行,账户名称是否为空 - if (bankaccount == null || bankaccount.trim().isEmpty()) { - log.error("同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)"); - JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)", false, "API"); - return "同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)"; - } - if (null == bank) { - log.error("同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)"); - JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)", false, "API"); - return "同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)"; - } - if (accountname == null || accountname.trim().isEmpty()) { - log.error("同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)"); - JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)", false, "API"); - return "同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)"; - } +// // 检查银行账号,开户银行,账户名称是否为空 +// if (bankaccount == null || bankaccount.trim().isEmpty()) { +// log.error("同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)"); +// JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)", false, "API"); +// return "同步失败,凭证号:" + fkBillNum + "的银行账号为空(客户)"; +// } +// if (null == bank) { +// log.error("同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)"); +// JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)", false, "API"); +// return "同步失败,凭证号:" + fkBillNum + "的开户银行为空(客户)"; +// } +// if (accountname == null || accountname.trim().isEmpty()) { +// log.error("同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)"); +// JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)", false, "API"); +// return "同步失败,凭证号:" + fkBillNum + "的账户名称为空(客户)"; +// } ap_payapply_entry.set("e_assacct", bankaccount);//银行账号 ap_payapply_entry.set("e_bebank", bank);//开户银行 ap_payapply_entry.set("shjh_asstactrealname", accountname);//账户名称 }else { - log.error("同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息"); - JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息", false, "API"); - return "同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息"; +// log.error("同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息"); +// JhzjUtils.saveLog(fkBillNum, apimenthod, it_list.toJSONString(), "同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息", false, "API"); +// return "同步失败,凭证号:" + fkBillNum + "的客户不存在银行信息"; } } //结算方式