缴费审核
This commit is contained in:
+12
@@ -32,5 +32,17 @@ public class PayPaymentCheckController extends JeroController<PayPaymentRecordSu
|
|||||||
return Result.OK("操作成功");
|
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.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.jero.payment.entity.PayPaymentRecordSub;
|
import com.jero.payment.entity.PayPaymentRecordSub;
|
||||||
import com.jero.payment.entity.PayPaymentRecord;
|
import com.jero.payment.entity.PayPaymentRecord;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
@@ -14,7 +15,13 @@ public interface IPayPaymentCheckService extends IService<PayPaymentRecordSub> {
|
|||||||
* 申请
|
* 申请
|
||||||
* @param payPaymentRecord
|
* @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);
|
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);
|
void type5AddCheck(PayPaymentRecord payPaymentRecord);
|
||||||
|
|
||||||
|
|||||||
+110
@@ -145,6 +145,116 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
|
|||||||
payPaymentCheckMapper.insert(payPaymentRecordSub);
|
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 应收
|
* @param amountReceivable 应收
|
||||||
|
|||||||
+4
-2
@@ -545,7 +545,8 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
|||||||
* @param amountReceived 到账
|
* @param amountReceived 到账
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
private BigDecimal addPaidAmount(BigDecimal paidAmount,BigDecimal amountReceived){
|
@Override
|
||||||
|
public BigDecimal addPaidAmount(BigDecimal paidAmount,BigDecimal amountReceived){
|
||||||
|
|
||||||
if(paidAmount == null){
|
if(paidAmount == null){
|
||||||
paidAmount = new BigDecimal("0");
|
paidAmount = new BigDecimal("0");
|
||||||
@@ -559,7 +560,8 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
|||||||
* @param paidAmount 实收
|
* @param paidAmount 实收
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
private Integer getInAccount(BigDecimal receivableAmount,BigDecimal paidAmount){
|
@Override
|
||||||
|
public Integer getInAccount(BigDecimal receivableAmount,BigDecimal paidAmount){
|
||||||
BigDecimal zero =new BigDecimal("0");
|
BigDecimal zero =new BigDecimal("0");
|
||||||
if(receivableAmount == null){
|
if(receivableAmount == null){
|
||||||
receivableAmount = new BigDecimal("0");
|
receivableAmount = new BigDecimal("0");
|
||||||
|
|||||||
Reference in New Issue
Block a user