收入/支出财务确认单生成的凭证反写问题修复

This commit is contained in:
zhangzhiguo 2025-07-16 15:30:17 +08:00
parent 411b1619a8
commit 5aa051cbcf
2 changed files with 58 additions and 0 deletions

View File

@ -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<Object[]> 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");
}
}

View File

@ -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<Object[]> 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");
}
}