|
|
@ -156,6 +156,12 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe |
|
|
|
if(CollectionUtil.isNotEmpty(budgetLogList)){ |
|
|
|
budgetLogService.saveBatch(budgetLogList); |
|
|
|
} |
|
|
|
//更新付款条件状态
|
|
|
|
LambdaQueryWrapper<TbsActivityPayCondition> updLqw = new LambdaQueryWrapper<>(); |
|
|
|
updLqw.eq(TbsActivityPayCondition::getActivityId,activityId); |
|
|
|
TbsActivityPayCondition payCondition = new TbsActivityPayCondition(); |
|
|
|
payCondition.setFinishedFlag(1); |
|
|
|
activityPayConditionService.update(payCondition,updLqw); |
|
|
|
//如果为最后的活动,更变费用申请状态
|
|
|
|
costApplyService.flushCostStatus(costApply.getId(),costApply.getContractFlag().equals(1)); |
|
|
|
} |
|
|
@ -234,14 +240,6 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe |
|
|
|
if(vtbVerificationList.size()>0){ |
|
|
|
Assert.throwEx("支付条件已核销"); |
|
|
|
} |
|
|
|
// BigDecimal totalCheck = BigDecimal.ZERO;
|
|
|
|
// for (VtbVerification verification : vtbVerificationList) {
|
|
|
|
// totalCheck = totalCheck.add(verification.getAmount());
|
|
|
|
// }
|
|
|
|
// BigDecimal totalCheckPl = payCondition.getPaymentPrice().subtract(totalCheck);
|
|
|
|
// if(totalCheckPl.compareTo(totalSubjectAmt)>1){
|
|
|
|
// Assert.throwEx("核销金额超过支付条件金额,剩余金额:"+totalCheckPl.doubleValue());
|
|
|
|
// }
|
|
|
|
payCondition.setFinishedFlag(2); |
|
|
|
activityPayConditionService.updateById(payCondition); |
|
|
|
} |
|
|
@ -336,28 +334,6 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe |
|
|
|
activityParam.setId(activity.getId()); |
|
|
|
activityParam.setActivityState(TbsActivityState.STATE_1_Checking); |
|
|
|
activityService.updateById(activityParam); |
|
|
|
//计算费用申请是否完成
|
|
|
|
BigDecimal totalCostApplyUsed = costApply.getTotalActivityUsedAmount().add(totalAmount); |
|
|
|
TbsCostApply updCost = new TbsCostApply(); |
|
|
|
updCost.setId(costApply.getId()); |
|
|
|
updCost.setTotalActivityUsedAmount(totalCostApplyUsed); |
|
|
|
if(costApply.getTotalActivityAmount().compareTo(totalCostApplyUsed)<=0){ |
|
|
|
updCost.setChargeState(TbsCostApplyState.State_3_finished.getCode()); |
|
|
|
}else { |
|
|
|
List<TbsActivity> activityList = activityService.listByCostApplyId(costApply.getId()); |
|
|
|
boolean updateChargeState = true; |
|
|
|
for (TbsActivity tbsActivity : activityList) { |
|
|
|
if(!tbsActivity.getActivityState().equals(TbsActivityState.STATE_4_Release) |
|
|
|
&&!tbsActivity.getActivityState().equals(TbsActivityState.STATE_1_Finished)){ |
|
|
|
updateChargeState = false; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
if(updateChargeState){ |
|
|
|
updCost.setChargeState(TbsCostApplyState.State_3_finished.getCode()); |
|
|
|
} |
|
|
|
} |
|
|
|
costApplyService.updateById(updCost); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
@ -595,6 +571,40 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe |
|
|
|
VtbVerificationSubject subjectParam = new VtbVerificationSubject(); |
|
|
|
subjectParam.setEffectiveFlag(1); |
|
|
|
verificationSubjectService.update(subjectParam,subjectLqw); |
|
|
|
|
|
|
|
BigDecimal totalCostApplyUsed = costApply.getTotalActivityUsedAmount().add(verification.getAmount()); |
|
|
|
TbsCostApply updCost = new TbsCostApply(); |
|
|
|
updCost.setId(costApply.getId()); |
|
|
|
updCost.setTotalActivityUsedAmount(totalCostApplyUsed); |
|
|
|
if(costApply.getTotalActivityAmount().compareTo(totalCostApplyUsed)<=0){ |
|
|
|
//金额是否用完
|
|
|
|
updCost.setChargeState(TbsCostApplyState.State_3_finished.getCode()); |
|
|
|
}else if (costApply.getContractFlag().equals(1)){ |
|
|
|
//协议类
|
|
|
|
LambdaQueryWrapper<TbsActivityPayCondition> lambdaQueryWrapper = new LambdaQueryWrapper<>(); |
|
|
|
lambdaQueryWrapper.eq(TbsActivityPayCondition::getCostApplyId,costApply.getId()); |
|
|
|
lambdaQueryWrapper.ne(TbsActivityPayCondition::getFinishedFlag,1); |
|
|
|
long count = activityPayConditionService.count(lambdaQueryWrapper); |
|
|
|
if(count<1){ |
|
|
|
updCost.setChargeState(TbsCostApplyState.State_3_finished.getCode()); |
|
|
|
} |
|
|
|
}else { |
|
|
|
//所有活动完成
|
|
|
|
List<TbsActivity> activityList = activityService.listByCostApplyId(costApply.getId()); |
|
|
|
boolean updateChargeState = true; |
|
|
|
for (TbsActivity tbsActivity : activityList) { |
|
|
|
if(!tbsActivity.getActivityState().equals(TbsActivityState.STATE_4_Release) |
|
|
|
&&!tbsActivity.getActivityState().equals(TbsActivityState.STATE_1_Finished)){ |
|
|
|
updateChargeState = false; |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
if(updateChargeState){ |
|
|
|
updCost.setChargeState(TbsCostApplyState.State_3_finished.getCode()); |
|
|
|
} |
|
|
|
} |
|
|
|
costApplyService.updateById(updCost); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|