feat: 打包后对应项目的待确收金额变为0
This commit is contained in:
+85
-13
@@ -15,6 +15,14 @@ import com.jero.common.service.SendMessageService;
|
|||||||
import com.jero.common.system.vo.LoginUser;
|
import com.jero.common.system.vo.LoginUser;
|
||||||
import com.jero.common.util.PasswordUtil;
|
import com.jero.common.util.PasswordUtil;
|
||||||
import com.jero.contract.common.PayIncomeContractCommon;
|
import com.jero.contract.common.PayIncomeContractCommon;
|
||||||
|
import com.jero.meeting.entity.PayMeetingSituation;
|
||||||
|
import com.jero.meeting.mapper.PayMeetingSituationMapper;
|
||||||
|
import com.jero.member.entity.PayMemberProjectSubitem;
|
||||||
|
import com.jero.member.entity.TbCertificatePayment;
|
||||||
|
import com.jero.member.entity.TbMemberProjectSubitem;
|
||||||
|
import com.jero.member.mapper.PayMemberProjectSubitemMapper;
|
||||||
|
import com.jero.member.mapper.TbCertificatePaymentMapper;
|
||||||
|
import com.jero.member.mapper.TbMemberProjectSubitemMapper;
|
||||||
import com.jero.modules.system.entity.SysUser;
|
import com.jero.modules.system.entity.SysUser;
|
||||||
import com.jero.modules.system.service.ISysUserService;
|
import com.jero.modules.system.service.ISysUserService;
|
||||||
import com.jero.pack.common.PackCommon;
|
import com.jero.pack.common.PackCommon;
|
||||||
@@ -25,8 +33,13 @@ import com.jero.pack.service.IPayPackCompanyProjectService;
|
|||||||
import com.jero.pack.service.IPayPackCompanyService;
|
import com.jero.pack.service.IPayPackCompanyService;
|
||||||
import com.jero.pack.vo.PayPackCompanyProjectInput;
|
import com.jero.pack.vo.PayPackCompanyProjectInput;
|
||||||
import com.jero.pack.vo.PayProjectExcel;
|
import com.jero.pack.vo.PayProjectExcel;
|
||||||
|
import com.jero.payment.mapper.PayPaymentRecordMapper;
|
||||||
|
import com.jero.payment.service.IPayPaymentRecordService;
|
||||||
import com.jero.project.common.PayProjectCommon;
|
import com.jero.project.common.PayProjectCommon;
|
||||||
import com.jero.project.entity.PayCommonProject;
|
import com.jero.project.entity.PayCommonProject;
|
||||||
|
import com.jero.project.entity.PayWorkingGroupSubItem;
|
||||||
|
import com.jero.project.mapper.PayCommonProjectMapper;
|
||||||
|
import com.jero.project.mapper.PayWorkingGroupSubItemMapper;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
import org.apache.commons.collections.CollectionUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.apache.shiro.SecurityUtils;
|
import org.apache.shiro.SecurityUtils;
|
||||||
@@ -36,6 +49,7 @@ import org.springframework.transaction.annotation.Isolation;
|
|||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -63,6 +77,18 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
|
|||||||
private SendMessageService sendMessageService;
|
private SendMessageService sendMessageService;
|
||||||
@Resource
|
@Resource
|
||||||
private ProjectDetailService projectDetailService;
|
private ProjectDetailService projectDetailService;
|
||||||
|
@Resource
|
||||||
|
private PayCommonProjectMapper payCommonProjectMapper;
|
||||||
|
@Resource
|
||||||
|
private PayWorkingGroupSubItemMapper payWorkingGroupSubItemMapper;
|
||||||
|
@Resource
|
||||||
|
private PayMeetingSituationMapper payMeetingSituationMapper;
|
||||||
|
@Resource
|
||||||
|
private PayMemberProjectSubitemMapper payMemberProjectSubitemMapper;
|
||||||
|
@Resource
|
||||||
|
private TbMemberProjectSubitemMapper tbMemberProjectSubitemMapper;
|
||||||
|
@Resource
|
||||||
|
private TbCertificatePaymentMapper certificatePaymentMapper;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -116,8 +142,6 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
|
|||||||
LambdaQueryWrapper<PayPackCompanyProject> query = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<PayPackCompanyProject> query = new LambdaQueryWrapper<>();
|
||||||
query.in(PayPackCompanyProject::getProjectId, Arrays.asList(payPackCompanyProject.getProjectIds()));
|
query.in(PayPackCompanyProject::getProjectId, Arrays.asList(payPackCompanyProject.getProjectIds()));
|
||||||
List<PayPackCompanyProject> listPayPackCompanyProjectNew = payPackCompanyProjectService.list(query);
|
List<PayPackCompanyProject> listPayPackCompanyProjectNew = payPackCompanyProjectService.list(query);
|
||||||
// TODO 将对应的project的待确收金额设为0
|
|
||||||
|
|
||||||
if(!CollectionUtils.isEmpty(listPayPackCompanyProjectNew)){
|
if(!CollectionUtils.isEmpty(listPayPackCompanyProjectNew)){
|
||||||
throw new JeroBootException("项目已被打包!");
|
throw new JeroBootException("项目已被打包!");
|
||||||
}
|
}
|
||||||
@@ -127,6 +151,8 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
|
|||||||
projectPackService.updateProjectStatus(p.getProjectId(),String.valueOf(p.getProjectType()),String.valueOf(PackCommon.PACKAGING1),payPackCompanyProject.getPackId());
|
projectPackService.updateProjectStatus(p.getProjectId(),String.valueOf(p.getProjectType()),String.valueOf(PackCommon.PACKAGING1),payPackCompanyProject.getPackId());
|
||||||
});
|
});
|
||||||
payPackCompanyProjectService.saveBatch(listPayPackCompanyProject);
|
payPackCompanyProjectService.saveBatch(listPayPackCompanyProject);
|
||||||
|
// 将对应的project的待确收金额设为0
|
||||||
|
setAmountReceivableZero(listPayPackCompanyProject);
|
||||||
}
|
}
|
||||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||||
// 获取项目负责人,发送消息
|
// 获取项目负责人,发送消息
|
||||||
@@ -164,28 +190,74 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void setAmountReceivableZero(List<PayPackCompanyProject> listPayPackCompanyProject) {
|
||||||
|
listPayPackCompanyProject.forEach(p -> {
|
||||||
|
setAmountReceivable(p.getProjectId(), String.valueOf(p.getProjectType()));
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据项目id和项目类型将具体项目的待确收金额改为0
|
* 根据项目id和项目类型将具体项目的待确收金额改为0
|
||||||
*/
|
*/
|
||||||
private void setAmountReceivable(String projectId, String projectType){
|
private void setAmountReceivable(String projectId, String projectType){
|
||||||
switch (projectType){
|
switch (projectType){
|
||||||
case PayProjectCommon.PROJECT_TYPE1:
|
// 普通项目
|
||||||
|
case PayIncomeContractCommon.PROJECT_TYPE1:
|
||||||
|
PayCommonProject payCommonProject = payCommonProjectMapper.selectById(projectId);
|
||||||
|
if (payCommonProject == null) {
|
||||||
|
throw new JeroBootException("项目不存在");
|
||||||
|
}
|
||||||
|
payCommonProject.setReceivableAmount(new BigDecimal(0));
|
||||||
|
payCommonProjectMapper.updateById(payCommonProject);
|
||||||
break;
|
break;
|
||||||
case PayProjectCommon.PROJECT_TYPE2:
|
// 工作组项目
|
||||||
|
case PayIncomeContractCommon.PROJECT_TYPE2:
|
||||||
|
PayWorkingGroupSubItem payWorking = payWorkingGroupSubItemMapper.selectById(projectId);
|
||||||
|
if (payWorking == null) {
|
||||||
|
throw new JeroBootException("项目不存在");
|
||||||
|
}
|
||||||
|
payWorking.setReceivableAmount(new BigDecimal(0));
|
||||||
|
payWorkingGroupSubItemMapper.updateById(payWorking);
|
||||||
break;
|
break;
|
||||||
case PayProjectCommon.PROJECT_TYPE3:
|
//会议项目
|
||||||
|
case PayIncomeContractCommon.PROJECT_TYPE3:
|
||||||
|
PayMeetingSituation meeting = payMeetingSituationMapper.selectById(projectId);
|
||||||
|
if (meeting == null) {
|
||||||
|
throw new JeroBootException("项目不存在");
|
||||||
|
}
|
||||||
|
meeting.setAmountReceivable(new BigDecimal(0));
|
||||||
|
payMeetingSituationMapper.updateById(meeting);
|
||||||
break;
|
break;
|
||||||
case PayProjectCommon.PROJECT_TYPE4:
|
//会员项目
|
||||||
|
case PayIncomeContractCommon.PROJECT_TYPE4:
|
||||||
|
PayMemberProjectSubitem member = payMemberProjectSubitemMapper.selectById(projectId);
|
||||||
|
if (member == null) {
|
||||||
|
throw new JeroBootException("项目不存在");
|
||||||
|
}
|
||||||
|
member.setAmountReceivable(new BigDecimal(0));
|
||||||
|
payMemberProjectSubitemMapper.updateById(member);
|
||||||
break;
|
break;
|
||||||
case PayProjectCommon.PROJECT_TYPE5:
|
//标协会员
|
||||||
|
case PayIncomeContractCommon.PROJECT_TYPE5:
|
||||||
|
TbMemberProjectSubitem tbMember = tbMemberProjectSubitemMapper.selectById(projectId);
|
||||||
|
if (tbMember == null) {
|
||||||
|
throw new JeroBootException("项目不存在");
|
||||||
|
}
|
||||||
|
tbMember.setAmountReceivable(new BigDecimal(0));
|
||||||
|
tbMemberProjectSubitemMapper.updateById(tbMember);
|
||||||
|
break;
|
||||||
|
//标协证书
|
||||||
|
case PayIncomeContractCommon.PROJECT_TYPE6:
|
||||||
|
TbCertificatePayment tbMemberCertificate = certificatePaymentMapper.selectById(projectId);
|
||||||
|
if (tbMemberCertificate == null) {
|
||||||
|
throw new JeroBootException("项目不存在");
|
||||||
|
}
|
||||||
|
// 获取待确收金额
|
||||||
|
tbMemberCertificate.setAmountReceivable(new BigDecimal(0));
|
||||||
|
certificatePaymentMapper.updateById(tbMemberCertificate);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
throw new JeroBootException("项目类型错误");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user