收入合同修改

This commit is contained in:
梁琦涛
2021-11-02 16:21:03 +08:00
parent ab0a25e063
commit 03716104c7
5 changed files with 144 additions and 33 deletions
@@ -18,4 +18,8 @@ public class RoleCommon {
* 企业信息维护人员
*/
public final static String QYXXWHRY = "qyxxwhry";
/**
* 超级管理员
*/
public final static String ADMIN = "admin";
}
@@ -24,7 +24,7 @@ public enum ManagementMessageEnums {
MSG11("GL_11_DZTZ_DZ_CREATE","到账通知","projectName,time,amount"),//查看该项目详情, projectName,time,amount
MSG12("GL_12_KPTZ_KP_CREATE","开票通知","projectName,time,amount,num"),//查看该项目详情,projectName,time,amount,num
MSG13("GL_13_YJTZ_PJ_CREATE","邮寄通知","projectName"),//查看该项目详情, projectName
MSG14("GL_14_YJTZ_HT_CREATE","邮寄通知","contractNum,contractName");//跳转到合同的详情页面, contractNum,contractName
MSG14("GL_14_YJTZ_HT_CREATE","邮寄通知","contractName,contractNum");//跳转到合同的详情页面, contractNum,contractName
private String code;
@@ -279,7 +279,7 @@ public class PayCompanyManagementController extends JeroController<PayCompanyMan
sendMessageDTO.setPhone(PasswordUtil.decrypt(item.getPhone()));
}
HashMap<String,String> map = new HashMap<>();
sendMessageDTO.setFromUser("admin");
sendMessageDTO.setFromUser(RoleCommon.ADMIN);
sendMessageDTO.setToUser(item.getUsername());
sendMessageDTO.setTemplateCode(ManagementMessageEnums.MSG9.getCode());
sendMessageDTO.setTemplateParam(map);
@@ -492,6 +492,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
if(Objects.isNull(tbMemberProject)){
throw new JeroBootException("标协会员项目不存在!");
}
payIncomeContract.getAmountReceived().add(Objects.isNull(tbMemberProjectSubitem.getPaidAmount()) ? new BigDecimal("0.00") : tbMemberProjectSubitem.getPaidAmount());
// 验证企业是否正确
if(!Objects.equals(tbMemberProjectSubitem.getCompanyId(),payIncomeContract.getSignedCompanyId())){
throw new JeroBootException("企业不匹配!");
@@ -552,6 +553,11 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
sendMessageService.SendMessageService(sendMessageDTO);
}
});
// 关联更新已收金额
LambdaUpdateWrapper<PayIncomeContract> updatePayIncomeContract = new LambdaUpdateWrapper();
updatePayIncomeContract.eq(PayIncomeContract::getId,payIncomeContract.getId());
updatePayIncomeContract.set(PayIncomeContract::getAmountReceived,payIncomeContract.getAmountReceived());
payIncomeContractService.update(updatePayIncomeContract);
}
/**
* @Description 验证项目是否被合同关联
@@ -605,6 +611,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
if(Objects.isNull(payCommonProject)){
throw new JeroBootException("项目不存在!");
}
payIncomeContract.getAmountReceived().subtract(Objects.isNull(payCommonProject.getPaidAmount()) ? new BigDecimal("0.00") : payCommonProject.getPaidAmount());
LambdaUpdateWrapper<PayCommonProject> updatePayCommonProject = new LambdaUpdateWrapper<>();
updatePayCommonProject.set(PayCommonProject::getUpdateBy,sysUser.getUsername());
updatePayCommonProject.set(PayCommonProject::getUpdateTime,new Date());
@@ -631,6 +638,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
if(Objects.isNull(listPayWorkingGroupSubItem)){
throw new JeroBootException("工作组成员单位不存在!");
}
payIncomeContract.getAmountReceived().subtract(Objects.isNull(listPayWorkingGroupSubItem.getPaidAmount()) ? new BigDecimal("0.00") : listPayWorkingGroupSubItem.getPaidAmount());
// 更新项目id
payIncomeContractAssociated.setProjectId(listPayWorkingGroupSubItem.getId());
LambdaUpdateWrapper<PayWorkingGroupSubItem> updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>();
@@ -659,6 +667,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
if(Objects.isNull(payMeetingSituation)){
throw new JeroBootException("会员项目不存在!");
}
payIncomeContract.getAmountReceived().subtract(Objects.isNull(payMeetingSituation.getPaidAmount()) ? new BigDecimal("0.00") : payMeetingSituation.getPaidAmount());
// 更新项目id
payIncomeContractAssociated.setProjectId(payMeetingSituation.getId());
// 合同为打包
@@ -680,6 +689,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
if(Objects.isNull(payMemberProjectSubitem)){
throw new JeroBootException("会员项目不存在!");
}
payIncomeContract.getAmountReceived().subtract(Objects.isNull(payMemberProjectSubitem.getPaidAmount()) ? new BigDecimal("0.00") : payMemberProjectSubitem.getPaidAmount());
// 更新项目id
payIncomeContractAssociated.setProjectId(payMemberProjectSubitem.getId());
LambdaUpdateWrapper<PayMemberProjectSubitem> updatePayMemberProjectSubitem = new LambdaUpdateWrapper<>();
@@ -708,6 +718,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
if(Objects.isNull(tbMemberProjectSubitem)){
throw new JeroBootException("标协会员项目不存在!");
}
payIncomeContract.getAmountReceived().subtract(Objects.isNull(tbMemberProjectSubitem.getPaidAmount()) ? new BigDecimal("0.00") : tbMemberProjectSubitem.getPaidAmount());
// 更新项目id
payIncomeContractAssociated.setProjectId(tbMemberProjectSubitem.getId());
// 合同为打包
@@ -732,6 +743,11 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
default:break;
}
payIncomeContractAssociatedService.removeById(payIncomeContractAssociated.getId());
// 关联更新已收金额
LambdaUpdateWrapper<PayIncomeContract> updatePayIncomeContract = new LambdaUpdateWrapper();
updatePayIncomeContract.eq(PayIncomeContract::getId,payIncomeContract.getId());
updatePayIncomeContract.set(PayIncomeContract::getAmountReceived,payIncomeContract.getAmountReceived());
payIncomeContractService.update(updatePayIncomeContract);
}
@Override
@@ -1,5 +1,6 @@
package com.jero.mail.controller;
import java.text.SimpleDateFormat;
import java.util.*;
import javax.annotation.Resource;
@@ -10,6 +11,8 @@ import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.common.ProjectCommon;
import com.jero.common.dto.SendMessageDTO;
import com.jero.common.enums.CompanyMessageEnums;
import com.jero.common.enums.ManagementMessageEnums;
import com.jero.common.exception.JeroBootException;
import com.jero.common.service.SendMessageService;
import com.jero.common.system.base.controller.JeroController;
import com.jero.common.system.vo.LoginUser;
@@ -23,6 +26,8 @@ import com.jero.mail.entity.PayMailContract;
import com.jero.mail.service.IPayMailContractService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.service.ISysUserService;
import com.jero.util.AmountUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.CollectionUtils;
@@ -52,6 +57,8 @@ public class PayMailContractController extends JeroController<PayMailContract, I
private IPayIncomeContractService payIncomeContractService;
@Resource
private SendMessageService sendMessageService;
@Resource
private ISysUserService sysUserService;
/**
* 邮寄合同-分页列表查询
@@ -108,40 +115,70 @@ public class PayMailContractController extends JeroController<PayMailContract, I
@AutoLog(value = "邮寄合同-邮寄接口")
@ApiOperation(value = "邮寄合同-邮寄接口", notes = "邮寄合同-邮寄接口")
@PostMapping(value = "/mile")
@Transactional
public Result<?> mile(@RequestBody PayMailContract payMailContract
) {
LoginUser sysUser =(LoginUser) SecurityUtils.getSubject().getPrincipal();
PayMailContract payMailContractData = payMailContractService.getById(payMailContract.getId());
payMailContract.setPostStatus(1);
payMailContract.setMobile(PasswordUtil.encrypt(payMailContract.getMobile()));
payMailContract.setMailer(sysUser.getUsername());
payMailContractService.updateById(payMailContract);
LoginUser sysUser =(LoginUser) SecurityUtils.getSubject().getPrincipal();
PayMailContract payMailContractData = payMailContractService.getById(payMailContract.getId());
if(Objects.isNull(payMailContractData)){
throw new JeroBootException("邮寄合同不存在");
}
payMailContract.setPostStatus(1);
payMailContract.setMobile(PasswordUtil.encrypt(payMailContract.getMobile()));
payMailContract.setMailer(sysUser.getUsername());
payMailContractService.updateById(payMailContract);
if (!Objects.isNull(payMailContractData) && Objects.equals(payMailContractData.getPostStatus(), ProjectCommon.POST_STATUS0)) {
PayIncomeContract payIncomeContract = payIncomeContractService.getById(payMailContractData.getContractId());
// 发送消息
SendMessageDTO sendMessageDTO = new SendMessageDTO();
if (!StringUtils.isBlank(payMailContractData.getEmail())) {
sendMessageDTO.setEmail(PasswordUtil.decrypt(payMailContractData.getEmail()));
}
if (!StringUtils.isBlank(payMailContractData.getMobile())) {
sendMessageDTO.setToUser(PasswordUtil.decrypt(payMailContractData.getMobile()));
sendMessageDTO.setPhone(PasswordUtil.decrypt(payMailContractData.getMobile()));
}
HashMap<String, String> map = new HashMap<>();
if (!Objects.isNull(payIncomeContract)) {
map.put("contractName", payIncomeContract.getContractName());
}
sendMessageDTO.setFromUser(sysUser.getUsername());
sendMessageDTO.setTemplateCode(CompanyMessageEnums.MSG10.getCode());
sendMessageDTO.setTemplateParam(map);
JSONObject jsonObject = new JSONObject();
jsonObject.put("id",payMailContract.getPostNo());
sendMessageDTO.setBusId(jsonObject.toJSONString());
sendMessageDTO.setBusType("C_OPEN_TYPE10");
sendMessageService.SendMessageService(sendMessageDTO);
}
return Result.OK("操作成功!");
if (!Objects.isNull(payMailContractData)) {
PayIncomeContract payIncomeContract = payIncomeContractService.getById(payMailContractData.getContractId());
if(Objects.isNull(payIncomeContract)){
throw new JeroBootException("合同不存在!");
}
// 发给 合同负责人
SysUser sysUserInfo = sysUserService.getById(payIncomeContract.getPrincipalId());
// 发送消息
SendMessageDTO sendMessageDTO = new SendMessageDTO();
if(!org.apache.commons.lang3.StringUtils.isBlank(sysUserInfo.getEmail())){
sendMessageDTO.setEmail(PasswordUtil.decrypt(sysUserInfo.getEmail()));
}
if(!org.apache.commons.lang3.StringUtils.isEmpty(sysUserInfo.getPhone())){
sendMessageDTO.setPhone(PasswordUtil.decrypt(sysUserInfo.getPhone()));
}
HashMap<String,String> map = new HashMap<>();
map.put("contractName",payIncomeContract.getContractName());
map.put("contractNum",payIncomeContract.getContractNum());
sendMessageDTO.setFromUser(sysUser.getUsername());
sendMessageDTO.setToUser(sysUserInfo.getUsername());
sendMessageDTO.setTemplateCode(ManagementMessageEnums.MSG14.getCode());
sendMessageDTO.setTemplateParam(map);
sendMessageDTO.setBusType("M_OPEN_TYPE14");
JSONObject json = new JSONObject();
json.put("id",payIncomeContract.getId());
sendMessageDTO.setBusId(json.toJSONString());
sendMessageService.SendMessageService(sendMessageDTO);
// 发给合同的签订单位合同联系人
SendMessageDTO sendMessageDTO1 = new SendMessageDTO();
if (!StringUtils.isBlank(payMailContractData.getEmail())) {
sendMessageDTO1.setEmail(PasswordUtil.decrypt(payMailContractData.getEmail()));
}
if (!StringUtils.isBlank(payMailContractData.getMobile())) {
sendMessageDTO1.setToUser(PasswordUtil.decrypt(payMailContractData.getMobile()));
sendMessageDTO1.setPhone(PasswordUtil.decrypt(payMailContractData.getMobile()));
}
HashMap<String, String> map1 = new HashMap<>();
if (!Objects.isNull(payIncomeContract)) {
map1.put("contractName", payIncomeContract.getContractName());
}
sendMessageDTO1.setFromUser(sysUser.getUsername());
sendMessageDTO1.setTemplateCode(CompanyMessageEnums.MSG10.getCode());
sendMessageDTO1.setTemplateParam(map1);
JSONObject jsonObject = new JSONObject();
jsonObject.put("id",payMailContract.getPostNo());
sendMessageDTO1.setBusId(jsonObject.toJSONString());
sendMessageDTO1.setBusType("C_OPEN_TYPE10");
sendMessageService.SendMessageService(sendMessageDTO1);
}
return Result.OK("操作成功!");
}
/**
* 邮寄合同-编辑接口
@@ -152,10 +189,64 @@ public class PayMailContractController extends JeroController<PayMailContract, I
@PostMapping(value = "/edit")
public Result<?> edit(@RequestBody PayMailContract payMailContract
) {
LoginUser sysUser =(LoginUser) SecurityUtils.getSubject().getPrincipal();
PayMailContract payMailContractData = payMailContractService.getById(payMailContract.getId());
if(Objects.isNull(payMailContractData)){
throw new JeroBootException("邮寄合同不存在");
}
payMailContract.setPostStatus(1);
payMailContract.setMobile(PasswordUtil.encrypt(payMailContract.getMobile()));
payMailContractService.updateById(payMailContract);
if (!Objects.isNull(payMailContract)) {
PayIncomeContract payIncomeContract = payIncomeContractService.getById(payMailContractData.getContractId());
if(Objects.isNull(payIncomeContract)){
throw new JeroBootException("合同不存在!");
}
// 发给 合同负责人
SysUser sysUserInfo = sysUserService.getById(payIncomeContract.getPrincipalId());
// 发送消息
SendMessageDTO sendMessageDTO = new SendMessageDTO();
if(!org.apache.commons.lang3.StringUtils.isBlank(sysUserInfo.getEmail())){
sendMessageDTO.setEmail(PasswordUtil.decrypt(sysUserInfo.getEmail()));
}
if(!org.apache.commons.lang3.StringUtils.isEmpty(sysUserInfo.getPhone())){
sendMessageDTO.setPhone(PasswordUtil.decrypt(sysUserInfo.getPhone()));
}
HashMap<String,String> map = new HashMap<>();
map.put("contractName",payIncomeContract.getContractName());
map.put("contractNum",payIncomeContract.getContractNum());
sendMessageDTO.setFromUser(sysUser.getUsername());
sendMessageDTO.setToUser(sysUserInfo.getUsername());
sendMessageDTO.setTemplateCode(ManagementMessageEnums.MSG14.getCode());
sendMessageDTO.setTemplateParam(map);
sendMessageDTO.setBusType("M_OPEN_TYPE14");
JSONObject json = new JSONObject();
json.put("id",payIncomeContract.getId());
sendMessageDTO.setBusId(json.toJSONString());
sendMessageService.SendMessageService(sendMessageDTO);
// 发给合同的签订单位合同联系人
SendMessageDTO sendMessageDTO1 = new SendMessageDTO();
if (!StringUtils.isBlank(payMailContractData.getEmail())) {
sendMessageDTO1.setEmail(PasswordUtil.decrypt(payMailContractData.getEmail()));
}
if (!StringUtils.isBlank(payMailContractData.getMobile())) {
sendMessageDTO1.setToUser(PasswordUtil.decrypt(payMailContractData.getMobile()));
sendMessageDTO1.setPhone(PasswordUtil.decrypt(payMailContractData.getMobile()));
}
HashMap<String, String> map1 = new HashMap<>();
if (!Objects.isNull(payIncomeContract)) {
map1.put("contractName", payIncomeContract.getContractName());
}
sendMessageDTO1.setFromUser(sysUser.getUsername());
sendMessageDTO1.setTemplateCode(CompanyMessageEnums.MSG10.getCode());
sendMessageDTO1.setTemplateParam(map1);
JSONObject jsonObject = new JSONObject();
jsonObject.put("id",payMailContract.getPostNo());
sendMessageDTO1.setBusId(jsonObject.toJSONString());
sendMessageDTO1.setBusType("C_OPEN_TYPE10");
sendMessageService.SendMessageService(sendMessageDTO1);
}
return Result.OK("操作成功!");
}
//