|
@ -298,14 +298,6 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification |
|
|
boolean isStop = "backed".equals(flag)||"refuse".equals(flag); |
|
|
boolean isStop = "backed".equals(flag)||"refuse".equals(flag); |
|
|
//释放费用
|
|
|
//释放费用
|
|
|
boolean isRelease = itemCommit.getReleaseFlag()!=null&&itemCommit.getReleaseFlag().equals(1); |
|
|
boolean isRelease = itemCommit.getReleaseFlag()!=null&&itemCommit.getReleaseFlag().equals(1); |
|
|
// if (isStop){
|
|
|
|
|
|
// log.warn("单据[{}]状态:{},中止审批",verification.getVerificationCode(),flag);
|
|
|
|
|
|
// verificationApplication.backCommitAndStop(verification, "backed".equals(flag));
|
|
|
|
|
|
// if(isRelease){
|
|
|
|
|
|
// log.warn("单据[{}]状态:{},中止审批并释放费用",verification.getVerificationCode(),flag);
|
|
|
|
|
|
// vtbVerificationService.release(verification.getActivityId(),sysUser.getCode(),false);
|
|
|
|
|
|
// }
|
|
|
|
|
|
// }else
|
|
|
|
|
|
if (!isFinish && !isNext){ |
|
|
if (!isFinish && !isNext){ |
|
|
log.error("远程调用返回,非指定状态:{}",JsonUtil.objectToJson(commitParam)); |
|
|
log.error("远程调用返回,非指定状态:{}",JsonUtil.objectToJson(commitParam)); |
|
|
continue; |
|
|
continue; |
|
@ -313,10 +305,9 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification |
|
|
yardService.save(yard); |
|
|
yardService.save(yard); |
|
|
//非终止或者驳回,保存审批线金额明细
|
|
|
//非终止或者驳回,保存审批线金额明细
|
|
|
BigDecimal totalAmount = BigDecimal.ZERO; |
|
|
BigDecimal totalAmount = BigDecimal.ZERO; |
|
|
|
|
|
BigDecimal totalDispatchAmount = BigDecimal.ZERO; |
|
|
if(!isStop){ |
|
|
if(!isStop){ |
|
|
List<VtbVerificationSubjectCenter> subjectCenters = vtbVerificationSubjectCenterService.listByVerificationId(verification.getId()); |
|
|
List<VtbVerificationSubjectCenter> subjectCenters = vtbVerificationSubjectCenterService.listByVerificationId(verification.getId()); |
|
|
//isCenterCommit 代表自定义成本中心维度递交
|
|
|
|
|
|
boolean isCenterCommit = subjectCenters.size()>0; |
|
|
|
|
|
List<VtbVerificationSubject> verificationSubjects = vtbVerificationSubjectService.listByVerificationId(verification.getId()); |
|
|
List<VtbVerificationSubject> verificationSubjects = vtbVerificationSubjectService.listByVerificationId(verification.getId()); |
|
|
List<VtbVerificationYardItem> yardItemList = new ArrayList<>(); |
|
|
List<VtbVerificationYardItem> yardItemList = new ArrayList<>(); |
|
|
List<VtbVerificationSubject> verSubject4Update = new ArrayList<>(); |
|
|
List<VtbVerificationSubject> verSubject4Update = new ArrayList<>(); |
|
@ -325,10 +316,10 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification |
|
|
List<VtbVerificationSubjectCenter> subjectCenterUpdateList = new ArrayList<>(); |
|
|
List<VtbVerificationSubjectCenter> subjectCenterUpdateList = new ArrayList<>(); |
|
|
for (VtbVerificationSubject currVs : verificationSubjects) { |
|
|
for (VtbVerificationSubject currVs : verificationSubjects) { |
|
|
BigDecimal changeAmount = null; |
|
|
BigDecimal changeAmount = null; |
|
|
|
|
|
BigDecimal changeDispatch = null; |
|
|
Integer countSession = null; |
|
|
Integer countSession = null; |
|
|
Integer countPerson = null; |
|
|
Integer countPerson = null; |
|
|
List<TbsAffairCommitBo.AffairSubjectCenterItemLine> centerItemLineList = null; |
|
|
List<TbsAffairCommitBo.AffairSubjectCenterItemLine> centerItemLineList = null; |
|
|
// if(isCenterCommit){
|
|
|
|
|
|
if(CollectionUtil.isNotEmpty(itemCommit.getAffairSubjectCenterLines())){ |
|
|
if(CollectionUtil.isNotEmpty(itemCommit.getAffairSubjectCenterLines())){ |
|
|
for (TbsAffairCommitBo.AffairSubjectCenterLine centerLine : itemCommit.getAffairSubjectCenterLines()) { |
|
|
for (TbsAffairCommitBo.AffairSubjectCenterLine centerLine : itemCommit.getAffairSubjectCenterLines()) { |
|
|
if(currVs.getSubjectId().equals(centerLine.getSubjectId())){ |
|
|
if(currVs.getSubjectId().equals(centerLine.getSubjectId())){ |
|
@ -338,9 +329,13 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification |
|
|
changeAmount = changeAmount.add(itemLine.getAmount()); |
|
|
changeAmount = changeAmount.add(itemLine.getAmount()); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
if (centerLine.getFinalDispatchAmount()!=null){ |
|
|
|
|
|
totalDispatchAmount = totalDispatchAmount.add(centerLine.getFinalDispatchAmount()); |
|
|
|
|
|
} |
|
|
centerItemLineList = centerLine.getCenterItemLines(); |
|
|
centerItemLineList = centerLine.getCenterItemLines(); |
|
|
countSession = centerLine.getCountSession(); |
|
|
countSession = centerLine.getCountSession(); |
|
|
countPerson = centerLine.getCountPerson(); |
|
|
countPerson = centerLine.getCountPerson(); |
|
|
|
|
|
changeDispatch = centerLine.getFinalDispatchAmount(); |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
@ -403,6 +398,7 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification |
|
|
VtbVerificationSubject verSub4Upd = new VtbVerificationSubject(); |
|
|
VtbVerificationSubject verSub4Upd = new VtbVerificationSubject(); |
|
|
verSub4Upd.setId(currVs.getId()); |
|
|
verSub4Upd.setId(currVs.getId()); |
|
|
verSub4Upd.setUsedAmount(changeAmount); |
|
|
verSub4Upd.setUsedAmount(changeAmount); |
|
|
|
|
|
verSub4Upd.setFinalDispatchAmt(changeDispatch); |
|
|
verSubject4Update.add(verSub4Upd); |
|
|
verSubject4Update.add(verSub4Upd); |
|
|
}else { |
|
|
}else { |
|
|
yardItem.setCurrAmount(lastAmount); |
|
|
yardItem.setCurrAmount(lastAmount); |
|
@ -439,6 +435,13 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification |
|
|
|
|
|
|
|
|
yardItemList.add(yardItem); |
|
|
yardItemList.add(yardItem); |
|
|
} |
|
|
} |
|
|
|
|
|
// 记录修改的发货金额
|
|
|
|
|
|
if (verification.getRebateId()!=null&&verification.getRebateId()>0){ |
|
|
|
|
|
BigDecimal orgDispatch = verification.getFinalDispatchAmt(); |
|
|
|
|
|
// TODO 记录日志
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
yardItemService.saveBatch(yardItemList); |
|
|
yardItemService.saveBatch(yardItemList); |
|
|
if(yarnCenterList.size()>0){ |
|
|
if(yarnCenterList.size()>0){ |
|
|
yardCenterItemService.saveBatch(yarnCenterList); |
|
|
yardCenterItemService.saveBatch(yarnCenterList); |
|
@ -447,25 +450,12 @@ public class VtbVerificationBatchOperationServiceImpl implements VtbVerification |
|
|
if(subjectCenterUpdateList.size()>0){ |
|
|
if(subjectCenterUpdateList.size()>0){ |
|
|
vtbVerificationSubjectCenterService.updateBatchById(subjectCenterUpdateList); |
|
|
vtbVerificationSubjectCenterService.updateBatchById(subjectCenterUpdateList); |
|
|
} |
|
|
} |
|
|
// //重新计算合计
|
|
|
|
|
|
// if(isFinish){
|
|
|
|
|
|
// verificationApplication.finishCallBack(verification, totalAmount);
|
|
|
|
|
|
// if(isRelease){
|
|
|
|
|
|
// log.warn("核销"+verification.getVerificationCode()+"释放金额");
|
|
|
|
|
|
// vtbVerificationService.release(verification.getActivityId(),sysUser.getCode(),false);
|
|
|
|
|
|
// }
|
|
|
|
|
|
// }else {
|
|
|
|
|
|
// //更新金额
|
|
|
|
|
|
// VtbVerification vtbVer = new VtbVerification();
|
|
|
|
|
|
// vtbVer.setId(verification.getId());
|
|
|
|
|
|
// vtbVer.setAmount(totalAmount);
|
|
|
|
|
|
// vtbVerificationService.updateById(vtbVer);
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
//更新金额
|
|
|
//更新金额
|
|
|
VtbVerification vtbVer = new VtbVerification(); |
|
|
VtbVerification vtbVer = new VtbVerification(); |
|
|
vtbVer.setId(verification.getId()); |
|
|
vtbVer.setId(verification.getId()); |
|
|
vtbVer.setAmount(totalAmount); |
|
|
vtbVer.setAmount(totalAmount); |
|
|
|
|
|
vtbVer.setFinalDispatchAmt(totalDispatchAmount); |
|
|
vtbVerificationService.updateById(vtbVer); |
|
|
vtbVerificationService.updateById(vtbVer); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|