发消息

This commit is contained in:
baozhipeng
2021-12-20 16:38:23 +08:00
parent d08ecb8b07
commit 62df017c5e
3 changed files with 118 additions and 29 deletions
@@ -90,6 +90,11 @@ public interface IPayPaymentRecordService extends IService<PayPaymentRecord> {
* @param payPaymentRecord
*/
void editAmountReceived(PayPaymentRecord payPaymentRecord);
/**
* 标协会员项目来款推送到标协项目
* @param typr5List
*/
void pushToStandards(List<TbCheckVo> typr5List);
/**
* 导出
* @param request
@@ -1,5 +1,6 @@
package com.jero.payment.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
@@ -14,17 +15,18 @@ import com.jero.common.exception.JeroBootException;
import com.jero.common.service.SendMessageService;
import com.jero.common.system.api.ISysBaseAPI;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.AuthenticationUtils;
import com.jero.common.util.PasswordUtil;
import com.jero.company.entity.PayContactsManagement;
import com.jero.company.service.IPayContactsManagementService;
import com.jero.contract.common.PayIncomeContractCommon;
import com.jero.meeting.mapper.PayMeetingSituationMapper;
import com.jero.member.entity.PayMemberProject;
import com.jero.member.entity.PayMemberProjectSubitem;
import com.jero.member.entity.*;
import com.jero.member.mapper.PayMemberProjectSubitemMapper;
import com.jero.member.mapper.TbCertificatePaymentMapper;
import com.jero.member.mapper.TbMemberProjectSubitemMapper;
import com.jero.member.service.IPayMemberProjectService;
import com.jero.member.service.ITbMemberProjectService;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.service.ISysUserService;
import com.jero.payment.entity.PayPaymentRecord;
@@ -33,12 +35,15 @@ import com.jero.payment.mapper.PayPaymentCheckMapper;
import com.jero.payment.mapper.PayPaymentRecordMapper;
import com.jero.payment.service.IPayPaymentCheckService;
import com.jero.payment.service.IPayPaymentRecordService;
import com.jero.payment.vo.TbCheckVo;
import com.jero.project.common.PayProjectCommon;
import com.jero.project.entity.PayCommonProject;
import com.jero.project.entity.PayWorkingGroup;
import com.jero.project.entity.PayWorkingGroupSubItem;
import com.jero.project.mapper.PayCommonProjectMapper;
import com.jero.project.mapper.PayWorkingGroupSubItemMapper;
import com.jero.project.service.IPayWorkingGroupService;
import com.jero.temporary.entity.PayContactsManagementTemporary;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
@@ -77,6 +82,8 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
@Resource
private IPayMemberProjectService memberProjectService;
@Resource
private ITbMemberProjectService tbMemberProjectService;
@Resource
private TbMemberProjectSubitemMapper tbMemberProjectSubitemMapper;
@Resource
private TbCertificatePaymentMapper certificatePaymentMapper;
@@ -404,6 +411,9 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
*/
@Override
public void check(PayPaymentRecord payPaymentRecord){
//来款条件校验
payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
//更新来款记录主表
LoginUser sysUser = (LoginUser)SecurityUtils.getSubject().getPrincipal();
payPaymentRecord.setReviewerId(sysUser.getId());
@@ -433,9 +443,6 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
// 普通项目
case PayIncomeContractCommon.PROJECT_TYPE1:
//来款条件校验
payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
PayCommonProject payCommonProject = payCommonProjectMapper.selectById(payPaymentRecord.getProjectId());
if(PaymentStatusEnum.COMPLETED.getCode().equals(payPaymentRecord.getPaymentStatus())) {
@@ -447,10 +454,9 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
paymentStatus = getPaymentStatus(payCommonProject.getReceivableAmount(), newPaidAmount, PaymentStatusEnum.COMPLETED.getCode());//缴费状态
}else{
paymentStatus = getPaymentStatus(payCommonProject.getReceivableAmount(), payCommonProject.getPaidAmount(), PaymentStatusEnum.REJECTED.getCode());//缴费状态
//发消息
//发消息参数
principalId = payCommonProject.getId();
project=payCommonProject.getChargeProject();
checkSendMessage(payPaymentRecord.getCreateBy(), principalId, project, PayIncomeContractCommon.PROJECT_TYPE1);
}
payCommonProject.setPaymentStatus(paymentStatus);
@@ -460,9 +466,6 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
break;
// 工作组项目
case PayIncomeContractCommon.PROJECT_TYPE2:
//来款条件校验
payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
PayWorkingGroupSubItem payWorking = payWorkingGroupSubItemMapper.selectById(payPaymentRecord.getProjectId());
PayWorkingGroup payWorkingGroup = payWorkingGroupService.getById(payWorking.getWorkingGroupId());
@@ -475,10 +478,9 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
paymentStatus = getPaymentStatus(payWorking.getReceivableAmount(), newPaidAmount, PaymentStatusEnum.COMPLETED.getCode());//缴费状态
}else{
paymentStatus = getPaymentStatus(payWorking.getReceivableAmount(), payWorking.getPaidAmount(), PaymentStatusEnum.REJECTED.getCode());//缴费状态
//发消息
//发消息参数
principalId = payWorkingGroup.getPrincipalIdA();
project = payWorkingGroup.getWorkingGroupProject();
checkSendMessage(payPaymentRecord.getCreateBy(), principalId,project, PayIncomeContractCommon.PROJECT_TYPE2);
}
payWorking.setPaymentStatus(paymentStatus);
@@ -488,9 +490,6 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
break;
//会员项目
case PayIncomeContractCommon.PROJECT_TYPE4:
//来款条件校验
payPaymentRecordService.amountReceivedVerification( payPaymentRecord, ProjectCommon.PAYMENT_FLAG2);
PayMemberProjectSubitem member = payMemberProjectSubitemMapper.selectById(payPaymentRecord.getProjectId());
PayMemberProject payMemberProject = memberProjectService.getById(member.getProjectId());
@@ -503,19 +502,94 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl<PayPaymentCheckMappe
paymentStatus = getPaymentStatus(member.getAmountReceivable(), newPaidAmount, PaymentStatusEnum.COMPLETED.getCode());//缴费状态
}else{
paymentStatus = getPaymentStatus(member.getAmountReceivable(), member.getPaidAmount(), PaymentStatusEnum.REJECTED.getCode());//缴费状态
//发消息
//发消息参数
principalId = payMemberProject.getDirectorId();
project = payMemberProject.getProjectName();
checkSendMessage(payPaymentRecord.getCreateBy(), principalId,project, PayIncomeContractCommon.PROJECT_TYPE4);
}
member.setPaymentStatus(paymentStatus);
//更新主列表
payMemberProjectSubitemMapper.updateById(member);
break;
//标协会员
case PayIncomeContractCommon.PROJECT_TYPE5:
TbMemberProjectSubitem tbMember = tbMemberProjectSubitemMapper.selectById(payPaymentRecord.getProjectId());
TbMemberProject tbMemberProject = tbMemberProjectService.getById(tbMember.getProjectId());
TbCheckVo tbCheckVo = new TbCheckVo();
if(PaymentStatusEnum.COMPLETED.getCode().equals(payPaymentRecord.getPaymentStatus())) {
//已同意
newPaidAmount =payPaymentRecordService.addPaidAmount(tbMember.getPaidAmount(),payPaymentRecord.getAmountReceived());//累加实收
inAccount = payPaymentRecordService.getInAccount(tbMember.getAmountReceivable(), newPaidAmount);//到账状态
tbMember.setPaidAmount(newPaidAmount);
tbMember.setInAccount(inAccount);
paymentStatus = getPaymentStatus(tbMember.getAmountReceivable(), newPaidAmount, PaymentStatusEnum.COMPLETED.getCode());//缴费状态
tbCheckVo.setCheckResult(PayProjectCommon.YES);
}else{
paymentStatus = getPaymentStatus(tbMember.getAmountReceivable(), tbMember.getPaidAmount(), PaymentStatusEnum.REJECTED.getCode());//缴费状态
//发消息参数
principalId = tbMemberProject.getDirectorId();
project = tbMemberProject.getProjectName();
tbCheckVo.setCheckResult(PayProjectCommon.NO);
}
tbMember.setPaymentStatus(paymentStatus);
//更新主列表
tbMemberProjectSubitemMapper.updateById(tbMember);
//拼装推到标协缴费的参数
List<TbCheckVo> typr5List = new ArrayList<>();
tbCheckVo.setId(tbMember.getTbPaymentId());
tbCheckVo.setCheckMark(payPaymentRecord.getRemark());
typr5List.add(tbCheckVo);
payPaymentRecordService.pushToStandards(typr5List);
break;
//标协证书
case PayIncomeContractCommon.PROJECT_TYPE6:
TbCertificatePayment tbMemberCertificate = certificatePaymentMapper.selectById(payPaymentRecord.getProjectId());
TbMemberProject tbMemberProjectCertificate = tbMemberProjectService.getById(tbMemberCertificate.getProjectId());
TbCheckVo tbCheckCerVo = new TbCheckVo();
if(PaymentStatusEnum.COMPLETED.getCode().equals(payPaymentRecord.getPaymentStatus())) {
//已同意
newPaidAmount =payPaymentRecordService.addPaidAmount(tbMemberCertificate.getPaidAmount(),payPaymentRecord.getAmountReceived());//累加实收
inAccount = payPaymentRecordService.getInAccount(tbMemberCertificate.getAmountReceivable(), newPaidAmount);//到账状态
tbMemberCertificate.setPaidAmount(newPaidAmount);
tbMemberCertificate.setInAccount(inAccount);
paymentStatus = getPaymentStatus(tbMemberCertificate.getAmountReceivable(), newPaidAmount, PaymentStatusEnum.COMPLETED.getCode());//缴费状态
tbCheckCerVo.setCheckResult(PayProjectCommon.YES);
}else{
paymentStatus = getPaymentStatus(tbMemberCertificate.getAmountReceivable(), tbMemberCertificate.getPaidAmount(), PaymentStatusEnum.REJECTED.getCode());//缴费状态
//发消息参数
principalId = tbMemberProjectCertificate.getDirectorId();
project = tbMemberProjectCertificate.getProjectName();
tbCheckCerVo.setCheckResult(PayProjectCommon.NO);
}
tbMemberCertificate.setPaymentStatus(paymentStatus);
//更新主列表
certificatePaymentMapper.updateById(tbMemberCertificate);
//拼装推到标协缴费的参数
List<TbCheckVo> typr6List = new ArrayList<>();
tbCheckCerVo.setId(tbMemberCertificate.getTbPaymentId());
tbCheckCerVo.setCheckMark(payPaymentRecord.getRemark());
typr6List.add(tbCheckCerVo);
JSONObject jsonObject = AuthenticationUtils.postResult("/certificatePaymentInfo/incomingPaymentCheckCertificate", null, typr6List);
break;
default:break;
}
//发消息
checkSendMessage(payPaymentRecord.getCreateBy(), principalId,project, String.valueOf(payPaymentRecord.getProjectType()));
}
/**
@@ -155,18 +155,7 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
}
//会员到账推送到会员系统
if(typr5List.size()>0){
JSONObject jsonObject = AuthenticationUtils.postResult("/paymentInfo/incomingPaymentCheckMember", null, typr5List);
String memberNo = jsonObject.getString("memberNo");
Integer memberType = jsonObject.getInteger("memberType");
Integer memberStatus = jsonObject.getInteger("memberStatus");
MemberInfo memberInfo = new MemberInfo();
memberInfo.setMemberNo(memberNo);
memberInfo.setMemberType(memberType);
memberInfo.setMemberStatus(memberStatus);
for (TbCheckVo tbCheckVo : typr5List) {
String id = tbCheckVo.getId();
updateStandards(id,memberInfo);
}
pushToStandards(typr5List);
}
//证书到账推送到会员系统
if(typr6List.size()>0){
@@ -906,6 +895,27 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
payPaymentRecordMapper.updateById(payPaymentRecord);
}
/**
* 标协会员项目来款推送到标协项目
* @param typr5List
*/
@Override
public void pushToStandards(List<TbCheckVo> typr5List){
JSONObject jsonObject = AuthenticationUtils.postResult("/paymentInfo/incomingPaymentCheckMember", null, typr5List);
String memberNo = jsonObject.getString("memberNo");
Integer memberType = jsonObject.getInteger("memberType");
Integer memberStatus = jsonObject.getInteger("memberStatus");
MemberInfo memberInfo = new MemberInfo();
memberInfo.setMemberNo(memberNo);
memberInfo.setMemberType(memberType);
memberInfo.setMemberStatus(memberStatus);
for (TbCheckVo tbCheckVo : typr5List) {
String id = tbCheckVo.getId();
updateStandards(id,memberInfo);
}
}
/**
* 导出
* @param request