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"); } }