修改bug#40784

This commit is contained in:
梁琦涛
2021-10-15 17:19:19 +08:00
parent 4369d9cae4
commit 5a6e1bea21
3 changed files with 16 additions and 17 deletions
@@ -49,7 +49,7 @@ public interface IPayMailBillService extends IService<PayMailBill> {
* @param payMailBillVo
* @return
*/
Result<?> editPayBill(PayMailBillVO payMailBillVo);
void editPayBill(PayMailBillVO payMailBillVo);
/**
* 推送邮寄数据到会员系统
@@ -146,7 +146,7 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
//票据关联项目表
List<PayMailBillProject> bmpList = payMailBill.getBmpList();
//校验不同项目是否属于同一个公司,开票金额是否大于当前未开票金额,企业名称是否审核
//校验不同项目是否属于同一个公司,开票金额是否大于当前未开票金额,企业名称是否审核
String res = checkCompanyProject(bmpList);
if (!"success".equals(res)) {
return Result.error(res);
@@ -290,7 +290,7 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
}
//校验不同项目是否属于同一个公司,开票金额是否大于当前未开票金额,企业名称是否审核
//校验不同项目是否属于同一个公司,开票金额是否大于当前未开票金额,企业名称是否审核
private String checkCompanyProject(List<PayMailBillProject> bmpList) {
String standardCompanyId = null;//基准公司id
@@ -321,7 +321,7 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
invoiceAmount = oldInvoiceAmount.add(bmpList.get(i).getInvoiceAmount()).setScale(2, BigDecimal.ROUND_HALF_UP);
//开票总额>应收
if(invoiceAmount.compareTo(payCommonProject.getReceivableAmount()) == 1){
return "开票金额大于当前未开票金额,输入有误!";
return "开票金额大于当前未开票金额,输入有误!";
}
PayCompanyManagementTemporary payCompanyManagement = payCompanyManagementTemporaryService.getById(payCommonProject.getChargeCompanyTemporaryId());
if(!Objects.isNull(payCompanyManagement) && "2".equals(payCompanyManagement.getStatus()) ){
@@ -346,7 +346,7 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
invoiceAmount = oldInvoiceAmount.add(bmpList.get(i).getInvoiceAmount()).setScale(2, BigDecimal.ROUND_HALF_UP);
//开票总额>应收
if(invoiceAmount.compareTo(workingGroup.getReceivableAmount()) == 1){
return "开票金额大于当前未开票金额,输入有误!";
return "开票金额大于当前未开票金额,输入有误!";
}
PayCompanyManagementTemporary payCompanyManagementWorkingGroup = payCompanyManagementTemporaryService.getById(workingGroup.getChargeCompanyTemporaryId());
if(!Objects.isNull(payCompanyManagementWorkingGroup) && "2".equals(payCompanyManagementWorkingGroup.getStatus()) ){
@@ -371,7 +371,7 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
invoiceAmount = oldInvoiceAmount.add(bmpList.get(i).getInvoiceAmount()).setScale(2, BigDecimal.ROUND_HALF_UP);
//开票总额>应收
if(invoiceAmount.compareTo(meeting.getAmountReceivable()) == 1){
return "开票金额大于当前未开票金额,输入有误!";
return "开票金额大于当前未开票金额,输入有误!";
}
// TODO 缺少会议报名审核状态(非凭证审核的状态)的校验,审核通过的可以来款
PayCompanyManagement payCompanyManagementMeeting = payCompanyManagementService.getById(meeting.getCompanyId());
@@ -680,13 +680,14 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
* @param payMailBillVo 这里的开票金额invoiceAmount,其实是payMailBillProject里的开票金额
* @return
*/
public Result<?> editPayBill(PayMailBillVO payMailBillVo){
@Override
public void editPayBill(PayMailBillVO payMailBillVo){
//查出没编辑之前的开票记录
PayMailBillProject oldBmp = payMailBillProjectMapper.selectById(payMailBillVo.getBmpId());
//校验开票金额是否大于当前未开票金额
//校验开票金额是否大于当前未开票金额
String res = editCheckCompanyProject(payMailBillVo,oldBmp);
if (!"success".equals(res)) {
return Result.error(res);
throw new JeroBootException(res);
}
//更新票据邮寄表
@@ -698,11 +699,9 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
payMailBillProject.setInvoiceAmount(payMailBillVo.getInvoiceAmount());
payMailBillProject.setRemark(payMailBillVo.getRemark());
payMailBillProjectService.updateById(payMailBillProject);
return Result.OK("更新成功!");
}
//编辑时开票金额是否大于当前未开票金额
//编辑时开票金额是否大于当前未开票金额
private String editCheckCompanyProject(PayMailBillVO bm,PayMailBillProject oldBmp) {
int makeInvoice=4;
@@ -730,7 +729,7 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
invoiceAmount = oldInvoiceAmount.add(bm.getInvoiceAmount()).setScale(2, BigDecimal.ROUND_HALF_UP);
//开票总额>应收
if(invoiceAmount.compareTo(payCommonProject.getReceivableAmount()) == 1){
return "开票金额大于当前未开票金额,输入有误!";
return "开票金额大于当前未开票金额,输入有误!";
}
break;
// 工作组项目
@@ -748,7 +747,7 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
invoiceAmount = oldInvoiceAmount.add(bm.getInvoiceAmount()).setScale(2, BigDecimal.ROUND_HALF_UP);
//开票总额>应收
if(invoiceAmount.compareTo(workingGroup.getReceivableAmount()) == 1){
return "开票金额大于当前未开票金额,输入有误!";
return "开票金额大于当前未开票金额,输入有误!";
}
break;
//会议项目
@@ -766,7 +765,7 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
invoiceAmount = oldInvoiceAmount.add(bm.getInvoiceAmount()).setScale(2, BigDecimal.ROUND_HALF_UP);
//开票总额>应收
if(invoiceAmount.compareTo(meeting.getAmountReceivable()) == 1){
return "开票金额大于当前未开票金额,输入有误!";
return "开票金额大于当前未开票金额,输入有误!";
}
break;
//会员项目
@@ -784,7 +783,7 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
invoiceAmount = oldInvoiceAmount.add(bm.getInvoiceAmount()).setScale(2, BigDecimal.ROUND_HALF_UP);
//开票总额>应收
if(invoiceAmount.compareTo(memberProject.getAmountReceivable()) == 1){
return "开票金额大于当前未开票金额,输入有误!";
return "开票金额大于当前未开票金额,输入有误!";
}
break;
//标协会员
@@ -169,7 +169,7 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
payWorking.setInAccount(inAccount);
payWorkingGroupSubItemMapper.updateById(payWorking);
}else{
throw new JeroBootException("到账金额大于当前款金额,不可提交!");
throw new JeroBootException("到账金额大于当前款金额,不可提交!");
}
PayCompanyManagementTemporary payCompanyManagementWorkingGroup = payCompanyManagementTemporaryService.getById(payWorking.getChargeCompanyTemporaryId());
if(!Objects.isNull(payCompanyManagementWorkingGroup) && "2".equals(payCompanyManagementWorkingGroup.getStatus()) ){