From 6220c3a87fc1c18b144ebba4ea2877071bd25ae4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Tue, 2 Nov 2021 14:29:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=98=E6=9B=B4=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/jero/common/common/ProjectCommon.java | 9 + .../controller/PayMailBillController.java | 241 ++++++++++++++---- .../impl/PayMeetingSituationServiceImpl.java | 2 +- .../PayPaymentRecordController.java | 3 +- .../service/IPayPaymentRecordService.java | 5 +- .../impl/PayPaymentRecordServiceImpl.java | 10 +- 6 files changed, 214 insertions(+), 56 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/common/ProjectCommon.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/common/ProjectCommon.java index bd6774de..1bae8865 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/common/common/ProjectCommon.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/common/ProjectCommon.java @@ -147,4 +147,13 @@ public class ProjectCommon { */ public final static String MESSAGE_TYPE3 = "3"; + /** + * flag 1为会议审核来款,2为正常来款 + */ + public final static Integer PAYMENT_FLAG1 = 1; + /** + * flag 1为会议审核来款,2为正常来款 + */ + public final static Integer PAYMENT_FLAG2 = 2; + } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailBillController.java b/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailBillController.java index bd8279fe..65c79249 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailBillController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailBillController.java @@ -1,17 +1,17 @@ package com.jero.mail.controller; import java.math.BigDecimal; -import java.text.DecimalFormat; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.StringUtils; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; import com.jero.common.aspect.annotation.AutoLog; @@ -19,7 +19,8 @@ import com.jero.common.common.ProjectCommon; import com.jero.common.constant.GlobalConstants; import com.jero.common.dto.SendMessageDTO; import com.jero.common.enums.CompanyMessageEnums; -import com.jero.common.service.ProjectDetailService; +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; @@ -28,24 +29,38 @@ import com.jero.common.util.oConvertUtils; //import com.jero.mail.commont.BatOrder; //import com.jero.mail.commont.HospitalInformation; //import com.jero.mail.commont.Print; +import com.jero.company.entity.PayContactsManagement; +import com.jero.company.service.IPayContactsManagementService; +import com.jero.contract.common.PayIncomeContractCommon; import com.jero.mail.commont.constant; import com.jero.mail.entity.PayMailBill; import com.jero.mail.entity.PayMailBillProject; import com.jero.mail.entity.PayMailBillSearch; import com.jero.mail.service.IPayMailBillProjectService; import com.jero.mail.service.IPayMailBillService; +import com.jero.meeting.entity.PayMeeting; import com.jero.meeting.entity.PayMeetingSituation; +import com.jero.meeting.service.IPayMeetingService; import com.jero.meeting.service.IPayMeetingSituationService; +import com.jero.member.entity.PayMemberProject; import com.jero.member.entity.PayMemberProjectSubitem; +import com.jero.member.entity.TbMemberProject; import com.jero.member.entity.TbMemberProjectSubitem; +import com.jero.member.service.IPayMemberProjectService; import com.jero.member.service.IPayMemberProjectSubitemService; +import com.jero.member.service.ITbMemberProjectService; import com.jero.member.service.ITbMemberProjectSubitemService; +import com.jero.modules.system.entity.SysUser; +import com.jero.modules.system.service.ISysUserService; import com.jero.project.entity.PayCommonProject; +import com.jero.project.entity.PayWorkingGroup; import com.jero.project.entity.PayWorkingGroupSubItem; import com.jero.project.service.IPayCommonProjectService; +import com.jero.project.service.IPayWorkingGroupService; import com.jero.project.service.IPayWorkingGroupSubItemService; +import com.jero.temporary.entity.PayContactsManagementTemporary; +import com.jero.temporary.service.IPayContactsManagementTemporaryService; import com.jero.util.AmountUtil; -import com.jero.util.SearchUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; @@ -59,7 +74,6 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import javax.annotation.Resource; -import javax.validation.Valid; /** * @Description: 邮寄票据 @@ -73,22 +87,36 @@ import javax.validation.Valid; @Slf4j public class PayMailBillController extends JeroController { - @Autowired - private IPayMailBillProjectService payMailBillProjectService; - @Autowired - private IPayMailBillService payMailBillService; - @Autowired - private IPayCommonProjectService payCommonProjectService; - @Autowired - private IPayMemberProjectSubitemService payMemberProjectSubitemService; - @Autowired - private IPayMeetingSituationService payMeetingSituationService; - @Autowired - private IPayWorkingGroupSubItemService payWorkingGroupSubItemService; - @Autowired - private ITbMemberProjectSubitemService tbMemberProjectSubitemService; - @Resource - private SendMessageService sendMessageService; + @Autowired + private IPayMailBillProjectService payMailBillProjectService; + @Autowired + private IPayMailBillService payMailBillService; + @Autowired + private IPayCommonProjectService payCommonProjectService; + @Autowired + private IPayMemberProjectSubitemService payMemberProjectSubitemService; + @Autowired + private IPayMeetingSituationService payMeetingSituationService; + @Autowired + private IPayWorkingGroupSubItemService payWorkingGroupSubItemService; + @Autowired + private ITbMemberProjectSubitemService tbMemberProjectSubitemService; + @Resource + private SendMessageService sendMessageService; + @Resource + private IPayContactsManagementTemporaryService payContactsManagementTemporaryService; + @Resource + private IPayWorkingGroupService payWorkingGroupService; + @Resource + private IPayMeetingService payMeetingService; + @Resource + private IPayContactsManagementService payContactsManagementService; + @Resource + private IPayMemberProjectService memberProjectService; + @Resource + private ITbMemberProjectService tbMemberProjectService; + @Resource + private ISysUserService sysUserService; /** @@ -206,9 +234,23 @@ public class PayMailBillController extends JeroController listId = new ArrayList<>(); //判断变更那个项目的邮寄状态 if (GlobalConstants.ONE.equals(one.getProjectType())) { - receivableAmount = payCommonProjectService.getById(one.getProjectId()).getReceivableAmount(); + PayCommonProject payCommonProjectOld = payCommonProjectService.getById(one.getProjectId()); + if(!Objects.isNull(payCommonProjectOld)){ + throw new JeroBootException("项目不存在!"); + } + PayContactsManagementTemporary payCommonProjectTemporary = payContactsManagementTemporaryService.getById(payCommonProjectOld.getContactsTemporaryId()); + if(!Objects.isNull(payCommonProjectTemporary)){ + listId.add(payCommonProjectTemporary); + } + project = payCommonProjectOld.getChargeProject(); + principalId = payCommonProjectOld.getPrincipalId(); + + receivableAmount = payCommonProjectOld.getReceivableAmount(); PayCommonProject payCommonProject = new PayCommonProject(); if (receivableAmount.compareTo(invoice) == 0 && c == y) { payCommonProject.setId(one.getProjectId()); @@ -220,7 +262,35 @@ public class PayMailBillController extends JeroController map = new HashMap<>(); + map.put("projectName",project); + sendMessageDTO.setFromUser(sysUser.getUsername()); + sendMessageDTO.setToUser(sysUserInfo.getUsername()); + sendMessageDTO.setTemplateCode(ManagementMessageEnums.MSG13.getCode()); + sendMessageDTO.setTemplateParam(map); + sendMessageDTO.setBusType("M_OPEN_TYPE13"); + JSONObject json = new JSONObject(); + json.put("id",one.getProjectId()); + sendMessageDTO.setBusId(json.toJSONString()); + sendMessageService.SendMessageService(sendMessageDTO); + } + if(!CollectionUtils.isEmpty(listId)){ + String finalProject = project; + listId.forEach(p->{ + // 发送消息 + SendMessageDTO sendMessageDTO = new SendMessageDTO(); + if(!org.apache.commons.lang3.StringUtils.isBlank(p.getEmail())){ + sendMessageDTO.setEmail(PasswordUtil.decrypt(p.getEmail())); + } + if(!org.apache.commons.lang3.StringUtils.isEmpty(p.getPhone())){ + sendMessageDTO.setPhone(PasswordUtil.decrypt(p.getPhone())); + sendMessageDTO.setToUser(PasswordUtil.decrypt(p.getPhone())); + } + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + HashMap map = new HashMap<>(); + map.put("projectName", finalProject); + sendMessageDTO.setFromUser(sysUser.getUsername()); + sendMessageDTO.setTemplateCode(CompanyMessageEnums.MSG9.getCode()); + sendMessageDTO.setTemplateParam(map); + sendMessageDTO.setBusType("C_OPEN_TYPE9"); + JSONObject json = new JSONObject(); + json.put("id",one.getProjectId()); + sendMessageDTO.setBusId(json.toJSONString()); + sendMessageService.SendMessageService(sendMessageDTO); + }); + } } -// PayMailBill payMailBillData = payMailBillService.getById(payMailBill.getId()); -// if (!Objects.isNull(payMailBillData)) { -// // 发送消息 -// SendMessageDTO sendMessageDTO = new SendMessageDTO(); -// if (!StringUtils.isBlank(payMailBillData.getEmail())) { -// sendMessageDTO.setEmail(PasswordUtil.decrypt(payMailBillData.getEmail())); -// } -// if (!StringUtils.isBlank(payMailBillData.getContactMobile())) { -// sendMessageDTO.setToUser(PasswordUtil.decrypt(payMailBillData.getContactMobile())); -// sendMessageDTO.setPhone(PasswordUtil.decrypt(payMailBillData.getContactMobile())); -// } -// HashMap map = new HashMap<>(); -// map.put("projectName", payMailBillData.getProjectName()); -// sendMessageDTO.setFromUser(sysUser.getUsername()); -// sendMessageDTO.setTemplateCode(CompanyMessageEnums.MSG9.getCode()); -// sendMessageDTO.setTemplateParam(map); -// sendMessageDTO.setBusType("C_OPEN_TYPE9"); -// JSONObject jsonObject = new JSONObject(); -// jsonObject.put("id", payMailBill.getPostNo()); -// sendMessageDTO.setBusId(jsonObject.toJSONString()); -// sendMessageService.SendMessageService(sendMessageDTO); -// } } return Result.OK("编辑成功!"); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java index 562568a2..a731eefd 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java @@ -457,7 +457,7 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl addAmountReceived(@RequestBody List list) { try{ - payPaymentRecordService.addAmountReceived(list); + payPaymentRecordService.addAmountReceived(list, ProjectCommon.PAYMENT_FLAG2); }catch (Exception e){ log.error("添加来款异常",e); return Result.error(e.getMessage()); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentRecordService.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentRecordService.java index d789c740..9a5e11e1 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentRecordService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentRecordService.java @@ -32,14 +32,15 @@ public interface IPayPaymentRecordService extends IService { /** * 添加来款 * @param list + * flag 1为会议审核来款,2为正常来款 */ - void addAmountReceived(List list); + void addAmountReceived(List list,Integer flag); /** * 添加一个来款 * @param payPaymentRecord */ - void addOneAmountReceived(PayPaymentRecord payPaymentRecord,List typr5List); + void addOneAmountReceived(PayPaymentRecord payPaymentRecord,List typr5List,Integer flag); /** * 标协会员添加来款 diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java index 4a3ec778..b70000f3 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.api.vo.Result; +import com.jero.common.common.ProjectCommon; import com.jero.common.dto.SendMessageDTO; import com.jero.common.enums.CompanyMessageEnums; import com.jero.common.enums.ManagementMessageEnums; @@ -20,6 +21,7 @@ import com.jero.company.entity.PayContactsManagement; import com.jero.company.service.IPayCompanyManagementService; import com.jero.company.service.IPayContactsManagementService; import com.jero.contract.common.PayIncomeContractCommon; +import com.jero.meeting.common.MeetingSubitemCommon; import com.jero.meeting.entity.PayMeeting; import com.jero.meeting.entity.PayMeetingSituation; import com.jero.meeting.mapper.PayMeetingSituationMapper; @@ -145,10 +147,10 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl list){ + public void addAmountReceived(List list,Integer flag){ List typr5List = new ArrayList<>(); for(PayPaymentRecord payPaymentRecord : list){ - addOneAmountReceived(payPaymentRecord,typr5List); + addOneAmountReceived(payPaymentRecord,typr5List,flag); } //推送到会员端 @@ -174,7 +176,7 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl typr5List){ + public void addOneAmountReceived(PayPaymentRecord payPaymentRecord,List typr5List,Integer flag){ BigDecimal receivableAmount; Boolean isAdd; @@ -281,7 +283,7 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl