缴费审核
This commit is contained in:
+12
@@ -32,5 +32,17 @@ public class PayPaymentCheckController extends JeroController<PayPaymentRecordSu
|
||||
return Result.OK("操作成功");
|
||||
}
|
||||
|
||||
@ApiOperation(value="审核", notes="审核")
|
||||
@PostMapping(value = "/check")
|
||||
public Result<?> check(@RequestBody PayPaymentRecord payPaymentRecord) {
|
||||
try{
|
||||
payPaymentCheckService.check(payPaymentRecord);
|
||||
}catch (Exception e){
|
||||
log.error("审核异常",e);
|
||||
return Result.error(e.getMessage());
|
||||
}
|
||||
return Result.OK("操作成功");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
+8
-1
@@ -3,6 +3,7 @@ package com.jero.payment.service;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.payment.entity.PayPaymentRecordSub;
|
||||
import com.jero.payment.entity.PayPaymentRecord;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@@ -14,7 +15,13 @@ public interface IPayPaymentCheckService extends IService<PayPaymentRecordSub> {
|
||||
* 申请
|
||||
* @param payPaymentRecord
|
||||
*/
|
||||
public void applicant(PayPaymentRecord payPaymentRecord);
|
||||
void applicant(PayPaymentRecord payPaymentRecord);
|
||||
|
||||
/**
|
||||
* 审核
|
||||
* @param payPaymentRecord
|
||||
*/
|
||||
void check(PayPaymentRecord payPaymentRecord);
|
||||
|
||||
/**
|
||||
* 得到缴费状态
|
||||
|
||||
+15
@@ -58,6 +58,21 @@ public interface IPayPaymentRecordService extends IService<PayPaymentRecord> {
|
||||
|
||||
void updateStandards(String tbPaymentId, MemberInfo memberInfo);
|
||||
|
||||
/**
|
||||
* 累加实收并四舍五入
|
||||
* @param paidAmount 实收
|
||||
* @param amountReceived 到账
|
||||
* @return
|
||||
*/
|
||||
BigDecimal addPaidAmount(BigDecimal paidAmount,BigDecimal amountReceived);
|
||||
/**
|
||||
* 得到到账状态
|
||||
* @param receivableAmount 应收
|
||||
* @param paidAmount 实收
|
||||
* @return
|
||||
*/
|
||||
Integer getInAccount(BigDecimal receivableAmount,BigDecimal paidAmount);
|
||||
|
||||
//标协类型新增时条件校验
|
||||
void type5AddCheck(PayPaymentRecord payPaymentRecord);
|
||||
|
||||
|
||||
+110
@@ -145,6 +145,116 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
|
||||
payPaymentCheckMapper.insert(payPaymentRecordSub);
|
||||
}
|
||||
|
||||
/**
|
||||
* 审核
|
||||
* @param payPaymentRecord
|
||||
*/
|
||||
@Override
|
||||
public void check(PayPaymentRecord payPaymentRecord){
|
||||
|
||||
//拒绝
|
||||
if(PaymentStatusEnum.REJECTED.getCode().equals(payPaymentRecord.getPaymentStatus())){
|
||||
LoginUser sysUser = (LoginUser)SecurityUtils.getSubject().getPrincipal();
|
||||
payPaymentRecord.setReviewerId(sysUser.getId());
|
||||
payPaymentRecord.setReviewerName(sysUser.getRealname());
|
||||
|
||||
//更新来款记录主表
|
||||
payPaymentRecordMapper.updateById(payPaymentRecord);
|
||||
|
||||
//新增来款记录表子表
|
||||
PayPaymentRecordSub payPaymentRecordSub = new PayPaymentRecordSub();
|
||||
payPaymentRecordSub.setRecordId(payPaymentRecord.getId());
|
||||
BeanUtils.copyProperties(payPaymentRecord, payPaymentRecordSub);
|
||||
payPaymentCheckMapper.insert(payPaymentRecordSub);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
//通过
|
||||
|
||||
BigDecimal newPaidAmount;
|
||||
Integer inAccount;
|
||||
String paymentStatus;
|
||||
|
||||
switch (String.valueOf(payPaymentRecord.getProjectType())){
|
||||
|
||||
// 普通项目
|
||||
case PayIncomeContractCommon.PROJECT_TYPE1:
|
||||
//来款条件校验
|
||||
payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
|
||||
|
||||
PayCommonProject payCommonProject = payCommonProjectMapper.selectById(payPaymentRecord.getProjectId());
|
||||
|
||||
newPaidAmount =payPaymentRecordService.addPaidAmount(payCommonProject.getPaidAmount(),payPaymentRecord.getAmountReceived());//累加实收
|
||||
inAccount = payPaymentRecordService.getInAccount(payCommonProject.getReceivableAmount(), newPaidAmount);//到账状态
|
||||
paymentStatus = getPaymentStatus(payCommonProject.getReceivableAmount(), newPaidAmount, PaymentStatusEnum.COMPLETED.getCode());//缴费状态
|
||||
|
||||
//更新主列表
|
||||
payCommonProject.setPaidAmount(newPaidAmount);
|
||||
payCommonProject.setInAccount(inAccount);
|
||||
payCommonProject.setPaymentStatus(paymentStatus);
|
||||
payCommonProjectMapper.updateById(payCommonProject);
|
||||
|
||||
break;
|
||||
// 工作组项目
|
||||
case PayIncomeContractCommon.PROJECT_TYPE2:
|
||||
//来款条件校验
|
||||
payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
|
||||
|
||||
PayWorkingGroupSubItem payWorking = payWorkingGroupSubItemMapper.selectById(payPaymentRecord.getProjectId());
|
||||
|
||||
newPaidAmount =payPaymentRecordService.addPaidAmount(payWorking.getPaidAmount(),payPaymentRecord.getAmountReceived());//累加实收
|
||||
inAccount = payPaymentRecordService.getInAccount(payWorking.getReceivableAmount(), newPaidAmount);//到账状态
|
||||
paymentStatus = getPaymentStatus(payWorking.getReceivableAmount(), newPaidAmount, PaymentStatusEnum.COMPLETED.getCode());//缴费状态
|
||||
|
||||
//更新主列表
|
||||
payWorking.setPaidAmount(newPaidAmount);
|
||||
payWorking.setInAccount(inAccount);
|
||||
payWorking.setPaymentStatus(paymentStatus);
|
||||
payWorkingGroupSubItemMapper.updateById(payWorking);
|
||||
|
||||
break;
|
||||
//会议项目
|
||||
case PayIncomeContractCommon.PROJECT_TYPE3:
|
||||
// //来款条件校验
|
||||
// payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
|
||||
//
|
||||
// PayMeetingSituation meeting = payMeetingSituationMapper.selectById(payPaymentRecord.getProjectId());
|
||||
//
|
||||
// PayMeetingSituation meeting = new PayMeetingSituation();
|
||||
// meeting.setId(payPaymentRecord.getProjectId());
|
||||
// meeting.setPaymentStatus(PaymentStatusEnum.TO_BE_REVIEWED.getCode());
|
||||
// payMeetingSituationMapper.updateById(meeting);
|
||||
|
||||
break;
|
||||
//会员项目
|
||||
case PayIncomeContractCommon.PROJECT_TYPE4:
|
||||
//来款条件校验
|
||||
payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
|
||||
|
||||
PayMemberProjectSubitem member = new PayMemberProjectSubitem();
|
||||
member.setId(payPaymentRecord.getProjectId());
|
||||
member.setPaymentStatus(PaymentStatusEnum.TO_BE_REVIEWED.getCode());
|
||||
payMemberProjectSubitemMapper.updateById(member);
|
||||
|
||||
break;
|
||||
//标协会员
|
||||
case PayIncomeContractCommon.PROJECT_TYPE5:
|
||||
//标协类型条件校验
|
||||
payPaymentRecordService.type5AddCheck(payPaymentRecord);
|
||||
//来款条件校验
|
||||
payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
|
||||
|
||||
TbMemberProjectSubitem tbMember= new TbMemberProjectSubitem();
|
||||
tbMember.setId(payPaymentRecord.getProjectId());
|
||||
tbMember.setPaymentStatus(PaymentStatusEnum.TO_BE_REVIEWED.getCode());
|
||||
tbMemberProjectSubitemMapper.updateById(tbMember);
|
||||
|
||||
break;
|
||||
default:break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 得到缴费状态
|
||||
* @param amountReceivable 应收
|
||||
|
||||
+4
-2
@@ -545,7 +545,8 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
||||
* @param amountReceived 到账
|
||||
* @return
|
||||
*/
|
||||
private BigDecimal addPaidAmount(BigDecimal paidAmount,BigDecimal amountReceived){
|
||||
@Override
|
||||
public BigDecimal addPaidAmount(BigDecimal paidAmount,BigDecimal amountReceived){
|
||||
|
||||
if(paidAmount == null){
|
||||
paidAmount = new BigDecimal("0");
|
||||
@@ -559,7 +560,8 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
||||
* @param paidAmount 实收
|
||||
* @return
|
||||
*/
|
||||
private Integer getInAccount(BigDecimal receivableAmount,BigDecimal paidAmount){
|
||||
@Override
|
||||
public Integer getInAccount(BigDecimal receivableAmount,BigDecimal paidAmount){
|
||||
BigDecimal zero =new BigDecimal("0");
|
||||
if(receivableAmount == null){
|
||||
receivableAmount = new BigDecimal("0");
|
||||
|
||||
Reference in New Issue
Block a user