From 5aa051cbcfeb40fac3e850bd495f31026fc58e22 Mon Sep 17 00:00:00 2001 From: zhangzhiguo <421587375@qq.com> Date: Wed, 16 Jul 2025 15:30:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B6=E5=85=A5/=E6=94=AF=E5=87=BA=E8=B4=A2?= =?UTF-8?q?=E5=8A=A1=E7=A1=AE=E8=AE=A4=E5=8D=95=E7=94=9F=E6=88=90=E7=9A=84?= =?UTF-8?q?=E5=87=AD=E8=AF=81=E5=8F=8D=E5=86=99=E9=97=AE=E9=A2=98=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...InContractFinaceConfirmeVoucherPlugin.java | 29 +++++++++++++++++++ ...utContractFinaceConfirmeVoucherPlugin.java | 29 +++++++++++++++++++ 2 files changed, 58 insertions(+) diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/InContractFinaceConfirmeVoucherPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/InContractFinaceConfirmeVoucherPlugin.java index fde80aa..20ef11f 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/InContractFinaceConfirmeVoucherPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/InContractFinaceConfirmeVoucherPlugin.java @@ -112,6 +112,35 @@ public class InContractFinaceConfirmeVoucherPlugin extends AbstractDapWriteBackI "update " + mt.getAlias() + " set " + getVchStatusField() + " = ? , "+voucherNoFile+" = ? where fid = ?", params); } log.info("AbstractDapWriteBackImpl#最后#结束执行删除凭证反写SQL"); + }else if (VoucherOperation.Submit.equals(operation)) { + log.info("AbstractDapWriteBackImpl#开始执行提交凭证反写:" + operation); + Object vchStatusField = getVchEnableStatus(); + List params = new ArrayList<>(); + for (Long me : keySet) { + log.info("AbstractDapWriteBackImpl#提交凭证的单据ID:" + me); + Voucher voucher=billToVch.get(me);//凭证 + String voucherNo = voucher.getVoucherNo(); + //这里处理的是一个单据只有一个凭证的时候,如果是多个凭证,可以先获取已经生成的凭证号,再拼接上字符串。 + Object[] param = new Object[] { vchStatusField,voucherNo, me };// + params.add(param); + if (params.size() >= 10000) { + log.info("AbstractDapWriteBackImpl#开始执行提交凭证反写SQL"); + log.info("AbstractDapWriteBackImpl#mt.getAlias()" + mt.getAlias()); + log.info("AbstractDapWriteBackImpl#mt.getVchStatusField()" + getVchStatusField()); + DB.executeBatch(getDBRoute(), + "update " + mt.getAlias() + " set " + getVchStatusField() + " = ? , "+voucherNoFile+" = ? where fid = ?", params); + log.info("AbstractDapWriteBackImpl#结束执行提交凭证反写SQL"); + params.clear(); + } + } + log.info("AbstractDapWriteBackImpl#最后#开始执行提交凭证反写SQL"); + log.info("AbstractDapWriteBackImpl#最后#mt.getAlias()" + mt.getAlias()); + log.info("AbstractDapWriteBackImpl#最后#mt.getVchStatusField()" + getVchStatusField()); + if (params.size() > 0) { + DB.executeBatch(getDBRoute(), + "update " + mt.getAlias() + " set " + getVchStatusField() + " = ? , "+voucherNoFile+" = ? where fid = ?", params); + } + log.info("AbstractDapWriteBackImpl#最后#结束执行提交凭证反写SQL"); } } diff --git a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/OutContractFinaceConfirmeVoucherPlugin.java b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/OutContractFinaceConfirmeVoucherPlugin.java index 7ee8470..667c582 100644 --- a/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/OutContractFinaceConfirmeVoucherPlugin.java +++ b/code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form/OutContractFinaceConfirmeVoucherPlugin.java @@ -112,6 +112,35 @@ public class OutContractFinaceConfirmeVoucherPlugin extends AbstractDapWriteBack "update " + mt.getAlias() + " set " + getVchStatusField() + " = ? , "+voucherNoFile+" = ? where fid = ?", params); } log.info("AbstractDapWriteBackImpl#最后#结束执行删除凭证反写SQL"); + }else if (VoucherOperation.Submit.equals(operation)) { + log.info("AbstractDapWriteBackImpl#开始执行提交凭证反写:" + operation); + Object vchStatusField = getVchEnableStatus(); + List params = new ArrayList<>(); + for (Long me : keySet) { + log.info("AbstractDapWriteBackImpl#提交凭证的单据ID:" + me); + Voucher voucher=billToVch.get(me);//凭证 + String voucherNo = voucher.getVoucherNo(); + //这里处理的是一个单据只有一个凭证的时候,如果是多个凭证,可以先获取已经生成的凭证号,再拼接上字符串。 + Object[] param = new Object[] { vchStatusField,voucherNo, me };// + params.add(param); + if (params.size() >= 10000) { + log.info("AbstractDapWriteBackImpl#开始执行提交凭证反写SQL"); + log.info("AbstractDapWriteBackImpl#mt.getAlias()" + mt.getAlias()); + log.info("AbstractDapWriteBackImpl#mt.getVchStatusField()" + getVchStatusField()); + DB.executeBatch(getDBRoute(), + "update " + mt.getAlias() + " set " + getVchStatusField() + " = ? , "+voucherNoFile+" = ? where fid = ?", params); + log.info("AbstractDapWriteBackImpl#结束执行提交凭证反写SQL"); + params.clear(); + } + } + log.info("AbstractDapWriteBackImpl#最后#开始执行提交凭证反写SQL"); + log.info("AbstractDapWriteBackImpl#最后#mt.getAlias()" + mt.getAlias()); + log.info("AbstractDapWriteBackImpl#最后#mt.getVchStatusField()" + getVchStatusField()); + if (params.size() > 0) { + DB.executeBatch(getDBRoute(), + "update " + mt.getAlias() + " set " + getVchStatusField() + " = ? , "+voucherNoFile+" = ? where fid = ?", params); + } + log.info("AbstractDapWriteBackImpl#最后#结束执行提交凭证反写SQL"); } }