缴费审核

This commit is contained in:
baozhipeng
2021-12-15 19:08:37 +08:00
parent 5759dd5e57
commit a21f3abbd6
3 changed files with 111 additions and 16 deletions
@@ -42,9 +42,9 @@ public class PayPaymentCheckController extends JeroController<PayPaymentCheck, I
@ApiOperation(value="申请", notes="申请") @ApiOperation(value="申请", notes="申请")
@PostMapping(value = "/applicant") @PostMapping(value = "/applicant")
public Result<?> applicant(@RequestBody PayPaymentCheck payPaymentCheck) { public Result<?> applicant(@RequestBody PayPaymentRecord payPaymentRecord) {
try{ try{
payPaymentCheckService.applicant(payPaymentCheck); payPaymentCheckService.applicant(payPaymentRecord);
}catch (Exception e){ }catch (Exception e){
log.error("申请异常",e); log.error("申请异常",e);
return Result.error(e.getMessage()); return Result.error(e.getMessage());
@@ -20,11 +20,18 @@ import java.util.List;
* 到账审核 * 到账审核
*/ */
public interface IPayPaymentCheckService extends IService<PayPaymentCheck> { public interface IPayPaymentCheckService extends IService<PayPaymentCheck> {
/**
* 申请
* @param payPaymentRecord
*/
public void applicant(PayPaymentRecord payPaymentRecord);
/** /**
* 申请 * 得到缴费状态
* @param payPaymentCheck * @param amountReceivable 应收
* @param paidAmount 实收
* @param paymentStatus 缴费状态
* @return
*/ */
void applicant(PayPaymentCheck payPaymentCheck); String getPaymentStatus(BigDecimal amountReceivable,BigDecimal paidAmount,String paymentStatus);
} }
@@ -10,6 +10,7 @@ import com.jero.common.common.ProjectCommon;
import com.jero.common.dto.SendMessageDTO; import com.jero.common.dto.SendMessageDTO;
import com.jero.common.enums.CompanyMessageEnums; import com.jero.common.enums.CompanyMessageEnums;
import com.jero.common.enums.ManagementMessageEnums; import com.jero.common.enums.ManagementMessageEnums;
import com.jero.common.enums.PaymentStatusEnum;
import com.jero.common.exception.JeroBootException; import com.jero.common.exception.JeroBootException;
import com.jero.common.service.SendMessageService; import com.jero.common.service.SendMessageService;
import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.api.ISysBaseAPI;
@@ -88,23 +89,110 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
private PayPaymentCheckMapper payPaymentCheckMapper; private PayPaymentCheckMapper payPaymentCheckMapper;
@Autowired @Autowired
private IPayPaymentRecordService payPaymentRecordService; private IPayPaymentRecordService payPaymentRecordService;
@Resource
private PayPaymentRecordMapper payPaymentRecordMapper;
@Resource
private PayCommonProjectMapper payCommonProjectMapper;
@Resource
private PayWorkingGroupSubItemMapper payWorkingGroupSubItemMapper;
@Resource
private PayMeetingSituationMapper payMeetingSituationMapper;
@Resource
private PayMemberProjectSubitemMapper payMemberProjectSubitemMapper;
@Resource
private TbMemberProjectSubitemMapper tbMemberProjectSubitemMapper;
/** /**
* 申请 * 申请
* @param payPaymentCheck * @param payPaymentRecord
*/ */
@Override @Override
public void applicant(PayPaymentCheck payPaymentCheck){ public void applicant(PayPaymentRecord payPaymentRecord){
PayPaymentRecord payPaymentRecord = new PayPaymentRecord();
BeanUtils.copyProperties(payPaymentCheck, payPaymentRecord);
List<TbCheckVo> typr5List = new ArrayList<>(); switch (String.valueOf(payPaymentRecord.getProjectType())){
payPaymentRecordService.addOneAmountReceived(payPaymentRecord,typr5List,ProjectCommon.PAYMENT_FLAG2);
// 普通项目
case PayIncomeContractCommon.PROJECT_TYPE1:
//来款条件校验
payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
PayCommonProject payCommonProject = new PayCommonProject();
payCommonProject.setId(payPaymentRecord.getProjectId());
payCommonProject.setPaymentStatus(PaymentStatusEnum.TO_BE_REVIEWED.getCode());
payCommonProjectMapper.updateById(payCommonProject);
break;
// 工作组项目
case PayIncomeContractCommon.PROJECT_TYPE2:
//来款条件校验
payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
PayWorkingGroupSubItem payWorking = new PayWorkingGroupSubItem();
payWorking.setId(payPaymentRecord.getProjectId());
payWorking.setPaymentStatus(PaymentStatusEnum.TO_BE_REVIEWED.getCode());
payWorkingGroupSubItemMapper.updateById(payWorking);
break;
//会议项目
case PayIncomeContractCommon.PROJECT_TYPE3:
//来款条件校验
payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
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;
}
//插入来款记录表
LoginUser sysUser = (LoginUser)SecurityUtils.getSubject().getPrincipal(); LoginUser sysUser = (LoginUser)SecurityUtils.getSubject().getPrincipal();
payPaymentCheck.setRecordId(payPaymentRecord.getId()); payPaymentRecord.setApplicantName(sysUser.getRealname());
payPaymentCheck.setApplicantName(sysUser.getRealname()); payPaymentRecordMapper.insert(payPaymentRecord);
}
payPaymentCheckMapper.insert(payPaymentCheck); /**
* 得到缴费状态
* @param amountReceivable 应收
* @param paidAmount 实收
* @param paymentStatus 缴费状态
* @return
*/
@Override
public String getPaymentStatus(BigDecimal amountReceivable,BigDecimal paidAmount,String paymentStatus){
// 0 < 实收金额 && 实收金额 < 应收金额 && 不等于待审核/已拒绝
if(paidAmount.compareTo(new BigDecimal("0.00")) > 0
&& paidAmount.compareTo(amountReceivable) < 0
&& PaymentStatusEnum.TO_BE_REVIEWED.getCode().equals(paymentStatus)
&& PaymentStatusEnum.REJECTED.getCode().equals(paymentStatus)){
paymentStatus = PaymentStatusEnum.TO_BE_UPLOADED.getCode();
}
return paymentStatus;
} }
} }