|
@ -95,7 +95,7 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe |
|
|
if(!costApply.getChargeState().equals(TbsCostApplyState.State_2_actioning.getCode())){ |
|
|
if(!costApply.getChargeState().equals(TbsCostApplyState.State_2_actioning.getCode())){ |
|
|
Assert.throwEx("状态不支持释放活动费用"); |
|
|
Assert.throwEx("状态不支持释放活动费用"); |
|
|
} |
|
|
} |
|
|
BigDecimal releaseAmount = validActivity(activity,false,false); |
|
|
BigDecimal releaseAmount = validActivity(costApply.getContractFlag().equals(1),activity,false,false); |
|
|
TbsActivity param = new TbsActivity(); |
|
|
TbsActivity param = new TbsActivity(); |
|
|
param.setId(activityId); |
|
|
param.setId(activityId); |
|
|
param.setActivityState(TbsActivityState.STATE_4_Release); |
|
|
param.setActivityState(TbsActivityState.STATE_4_Release); |
|
@ -201,7 +201,8 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe |
|
|
Assert.throwEx("当前费用状态不支持"); |
|
|
Assert.throwEx("当前费用状态不支持"); |
|
|
} |
|
|
} |
|
|
//协议类申请
|
|
|
//协议类申请
|
|
|
if(costApply.getContractFlag().equals(1)){ |
|
|
boolean cotractFlag = costApply.getContractFlag().equals(1); |
|
|
|
|
|
if(cotractFlag){ |
|
|
if(verificationBo.getPayConditionId()==null){ |
|
|
if(verificationBo.getPayConditionId()==null){ |
|
|
Assert.throwEx("请选择支付条件"); |
|
|
Assert.throwEx("请选择支付条件"); |
|
|
} |
|
|
} |
|
@ -218,20 +219,23 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe |
|
|
vtbVerificationLqw.eq(VtbVerification::getPayConditionId,verificationBo.getPayConditionId()); |
|
|
vtbVerificationLqw.eq(VtbVerification::getPayConditionId,verificationBo.getPayConditionId()); |
|
|
vtbVerificationLqw.eq(VtbVerification::getVerificationState,VtbVerificationState.Finished.getCode()); |
|
|
vtbVerificationLqw.eq(VtbVerification::getVerificationState,VtbVerificationState.Finished.getCode()); |
|
|
List<VtbVerification> vtbVerificationList = this.list(vtbVerificationLqw); |
|
|
List<VtbVerification> vtbVerificationList = this.list(vtbVerificationLqw); |
|
|
BigDecimal totalCheck = BigDecimal.ZERO; |
|
|
if(vtbVerificationList.size()>0){ |
|
|
for (VtbVerification verification : vtbVerificationList) { |
|
|
Assert.throwEx("支付条件已核销"); |
|
|
totalCheck = totalCheck.add(verification.getAmount()); |
|
|
|
|
|
} |
|
|
|
|
|
BigDecimal totalCheckPl = payCondition.getPaymentPrice().subtract(totalCheck); |
|
|
|
|
|
if(totalCheckPl.compareTo(totalSubjectAmt)>1){ |
|
|
|
|
|
Assert.throwEx("核销金额超过支付条件金额,剩余金额:"+totalCheckPl.doubleValue()); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
// 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); |
|
|
payCondition.setFinishedFlag(2); |
|
|
activityPayConditionService.updateById(payCondition); |
|
|
activityPayConditionService.updateById(payCondition); |
|
|
} |
|
|
} |
|
|
//退回的审批跳过校验
|
|
|
//退回的审批跳过校验
|
|
|
boolean isCurrentCommit = verificationBo.getId()!=null; |
|
|
boolean isCurrentCommit = verificationBo.getId()!=null; |
|
|
validActivity(activity,true,isCurrentCommit); |
|
|
validActivity(cotractFlag,activity,true,isCurrentCommit); |
|
|
VtbVerification verification = new VtbVerification(); |
|
|
VtbVerification verification = new VtbVerification(); |
|
|
verification.setId(verificationBo.getId()); |
|
|
verification.setId(verificationBo.getId()); |
|
|
verification.setPayConditionId(verificationBo.getPayConditionId()); |
|
|
verification.setPayConditionId(verificationBo.getPayConditionId()); |
|
@ -392,11 +396,10 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe |
|
|
* @param isCurrentCommit 是否当前活动占用提交 |
|
|
* @param isCurrentCommit 是否当前活动占用提交 |
|
|
* @return |
|
|
* @return |
|
|
*/ |
|
|
*/ |
|
|
private BigDecimal validActivity(TbsActivity activity,boolean filterActTime,boolean isCurrentCommit){ |
|
|
private BigDecimal validActivity(boolean cotractFlag,TbsActivity activity,boolean filterActTime,boolean isCurrentCommit){ |
|
|
LocalDate nowDate = LocalDate.now(); |
|
|
LocalDate nowDate = LocalDate.now(); |
|
|
if(activity.getReopenFlag().equals(0) |
|
|
if(!cotractFlag && activity.getReopenFlag().equals(0) |
|
|
&& filterActTime |
|
|
&& filterActTime |
|
|
|
|
|
|
|
|
//&& nowDate.isAfter(activity.getActEndDate())
|
|
|
//&& nowDate.isAfter(activity.getActEndDate())
|
|
|
&& nowDate.isAfter(activity.getPreCheckDate())){ |
|
|
&& nowDate.isAfter(activity.getPreCheckDate())){ |
|
|
Assert.throwEx("活动已结束"); |
|
|
Assert.throwEx("活动已结束"); |
|
|