From eb5d6f3618975f1071ae7f3e642039d09088101d Mon Sep 17 00:00:00 2001 From: zhangqinlin <1500920753@qq.com> Date: Thu, 16 Sep 2021 15:13:55 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E5=90=8C=E9=82=AE=E5=AF=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/PayMailBillController.java | 196 +++++++++++------- .../controller/PayMailContractController.java | 2 +- .../com/jero/mail/entity/PayMailBillList.java | 16 +- .../com/jero/mail/entity/PayMailContract.java | 4 +- .../mail/mapper/xml/PayMailContractMapper.xml | 4 +- 5 files changed, 141 insertions(+), 81 deletions(-) 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 ea0d50b8..2ab820f3 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 @@ -38,10 +38,14 @@ 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.PayMeetingSituation; import com.jero.meeting.service.IPayMeetingSituationService; import com.jero.member.entity.PayMemberProjectSubitem; +import com.jero.member.entity.TbMemberProjectSubitem; import com.jero.member.service.IPayMemberProjectSubitemService; import com.jero.member.service.ITbMemberProjectSubitemService; +import com.jero.project.entity.PayCommonProject; +import com.jero.project.entity.PayWorkingGroupSubItem; import com.jero.project.service.IPayCommonProjectService; import com.jero.project.service.IPayWorkingGroupSubItemService; import com.jero.util.AmountUtil; @@ -154,72 +158,120 @@ public class PayMailBillController extends JeroController edit(@RequestParam(name="id") String id, -// @RequestParam(name="sendMethod") Integer sendMethod, -// @RequestParam(name="postNo") String postNo, -// @RequestParam(name="sendDate") String sendDate, -// @RequestParam(name="remark") String remark -// ) throws ParseException { -// PayMailBill payMailBill = new PayMailBill(); -// payMailBill.setId(id); -// payMailBill.setSendMethod(sendMethod); -// payMailBill.setPostNo(postNo); -// payMailBill.setRemark(remark); -// SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); -// Date parse = simpleDateFormat.parse(sendDate); -// payMailBill.setSendDate(parse); -// payMailBill.setPostStatus(1); -// payMailBillService.updateById(payMailBill); -// //变更5种项目的邮寄状态 -// -// LambdaQueryWrapper queryPayMailBillProject = new LambdaQueryWrapper<>(); -// queryPayMailBillProject.eq(PayMailBillProject::getId,id); -// PayMailBillProject one = payMailBillProjectService.getOne(queryPayMailBillProject); -// -// //获取项目应收金额 -// BigDecimal receivableAmount = null; -// if(GlobalConstants.ONE.equals(one.getProjectType())){ -// receivableAmount= payCommonProjectService.getById(one.getProjectId()).getReceivableAmount();} -// else if(GlobalConstants.TWO.equals(one.getProjectType())) { -// receivableAmount= payWorkingGroupSubItemService.getById(one.getProjectId()).getReceivableAmount(); -// }else if (GlobalConstants.THERE.equals(one.getProjectType())) { -// receivableAmount= payMeetingSituationService.getById(one.getProjectId()).getAmountReceivable(); -// }else if (GlobalConstants.FORE.equals(one.getProjectType())) { -// receivableAmount= payMemberProjectSubitemService.getById(one.getProjectId()).getAmountReceivable(); -// -// }else if (GlobalConstants.FIVE.equals(one.getProjectType())){ -// receivableAmount=tbMemberProjectSubitemService.getById(one.getProjectId()).getAmountReceivable(); -// } -// LambdaQueryWrapper queryPayMailBillProject2 = new LambdaQueryWrapper<>(); -// queryPayMailBillProject.eq(PayMailBillProject::getProjectId,one.getProjectId()); -// List listPayMailBillProject = payMailBillProjectService.list(queryPayMailBillProject2); -// -// // 开票金额 -// BigDecimal invoice = new BigDecimal("0.00"); -// // 开票次数 -// int c = listPayMailBillProject.size(); -// // 邮寄次数 -// int y = 0; -// if(!CollectionUtils.isEmpty(listPayMailBillProject)){ -// BigDecimal b = listPayMailBillProject.stream().map(PayMailBillProject::getInvoiceAmount).reduce(BigDecimal.ZERO,BigDecimal::add); -// invoice = invoice.add(b); -// if(receivableAmount.compareTo(invoice) == -1){ -// throw new JeroBootException("应收金额不能小于开票金额!"); -// } -// List list = listPayMailBillProject.stream().map(PayMailBillProject::getBillId).collect(Collectors.toList()); -// LambdaQueryWrapper queryPayMailBill = new LambdaQueryWrapper<>(); -// queryPayMailBill.in(PayMailBill::getId,list); -// queryPayMailBill.eq(PayMailBill::getPostStatus, ProjectCommon.POST_STATUS1); -// List listPayMailBill = payMailBillService.list(queryPayMailBill); -// y = listPayMailBill.size(); -// } + /** + * 编辑 + * + */ + @ApiOperation(value="邮寄票据-邮寄", notes="邮寄票据-邮寄") + @Transactional + @PostMapping(value = "/edit3") + public Result edit3(@RequestParam(name="id") String id, + @RequestParam(name="sendMethod") Integer sendMethod, + @RequestParam(name="postNo") String postNo, + @RequestParam(name="sendDate") String sendDate, + @RequestParam(name="remark") String remark + ) throws ParseException { + PayMailBill payMailBill = new PayMailBill(); + payMailBill.setId(id); + payMailBill.setSendMethod(sendMethod); + payMailBill.setPostNo(postNo); + payMailBill.setRemark(remark); + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); + Date parse = simpleDateFormat.parse(sendDate); + payMailBill.setSendDate(parse); + payMailBill.setPostStatus(1); + payMailBillService.updateById(payMailBill); + //变更5种项目的邮寄状态 + + LambdaQueryWrapper queryPayMailBillProject = new LambdaQueryWrapper<>(); + queryPayMailBillProject.eq(PayMailBillProject::getId,id); + PayMailBillProject one = payMailBillProjectService.getOne(queryPayMailBillProject); + + LambdaQueryWrapper queryPayMailBillProject2 = new LambdaQueryWrapper<>(); + queryPayMailBillProject.eq(PayMailBillProject::getProjectId,one.getProjectId()); + List listPayMailBillProject = payMailBillProjectService.list(queryPayMailBillProject2); + + // 开票金额 + BigDecimal invoice = new BigDecimal("0.00"); + // 开票次数 + int c = listPayMailBillProject.size(); + // 邮寄次数 + int y = 0; + if(!CollectionUtils.isEmpty(listPayMailBillProject)){ + BigDecimal b = listPayMailBillProject.stream().map(PayMailBillProject::getInvoiceAmount).reduce(BigDecimal.ZERO,BigDecimal::add); + invoice = invoice.add(b); + List list = listPayMailBillProject.stream().map(PayMailBillProject::getBillId).collect(Collectors.toList()); + LambdaQueryWrapper queryPayMailBill = new LambdaQueryWrapper<>(); + queryPayMailBill.in(PayMailBill::getId,list); + queryPayMailBill.eq(PayMailBill::getPostStatus, ProjectCommon.POST_STATUS1); + List listPayMailBill = payMailBillService.list(queryPayMailBill); + y = listPayMailBill.size(); + } + //获取项目应收金额 + BigDecimal receivableAmount = null; + if(GlobalConstants.ONE.equals(one.getProjectType())){ + receivableAmount= payCommonProjectService.getById(one.getProjectId()).getReceivableAmount();} + PayCommonProject payCommonProject = new PayCommonProject(); + if(receivableAmount==invoice && c==y){ + payCommonProject.setId(one.getProjectId()); + payCommonProject.setMail(1); + payCommonProjectService.updateById(payCommonProject); + }else if(y0){ + payCommonProject.setId(one.getProjectId()); + payCommonProject.setMail(2); + payCommonProjectService.updateById(payCommonProject); + } + else if(GlobalConstants.TWO.equals(one.getProjectType())) { + receivableAmount= payWorkingGroupSubItemService.getById(one.getProjectId()).getReceivableAmount(); + PayWorkingGroupSubItem payWorkingGroupSubItem = new PayWorkingGroupSubItem(); + if(receivableAmount==invoice && c==y){ + payWorkingGroupSubItem.setId(one.getProjectId()); + payWorkingGroupSubItem.setMail(1); + payWorkingGroupSubItemService.updateById(payWorkingGroupSubItem); + }else if(y0){ + payWorkingGroupSubItem.setId(one.getProjectId()); + payWorkingGroupSubItem.setMail(2); + payWorkingGroupSubItemService.updateById(payWorkingGroupSubItem); + } + }else if (GlobalConstants.THERE.equals(one.getProjectType())) { + receivableAmount= payMeetingSituationService.getById(one.getProjectId()).getAmountReceivable(); + PayMeetingSituation payMeetingSituation = new PayMeetingSituation(); + if(receivableAmount==invoice && c==y){ + payMeetingSituation.setId(one.getProjectId()); + payMeetingSituation.setMail(1); + payMeetingSituationService.updateById(payMeetingSituation); + }else if(y0){ + payMeetingSituation.setId(one.getProjectId()); + payMeetingSituation.setMail(2); + payMeetingSituationService.updateById(payMeetingSituation); + } + }else if (GlobalConstants.FORE.equals(one.getProjectType())) { + receivableAmount= payMemberProjectSubitemService.getById(one.getProjectId()).getAmountReceivable(); + PayMemberProjectSubitem payMemberProjectSubitem = new PayMemberProjectSubitem(); + if(receivableAmount==invoice && c==y){ + payMemberProjectSubitem.setId(one.getProjectId()); + payMemberProjectSubitem.setMail(1); + payMemberProjectSubitemService.updateById(payMemberProjectSubitem); + }else if(y0){ + payMemberProjectSubitem.setId(one.getProjectId()); + payMemberProjectSubitem.setMail(2); + payMemberProjectSubitemService.updateById(payMemberProjectSubitem); + } + + }else if (GlobalConstants.FIVE.equals(one.getProjectType())){ + receivableAmount=tbMemberProjectSubitemService.getById(one.getProjectId()).getAmountReceivable(); + TbMemberProjectSubitem tbMemberProjectSubitem = new TbMemberProjectSubitem(); + if(receivableAmount==invoice && c==y){ + tbMemberProjectSubitem.setId(one.getProjectId()); + tbMemberProjectSubitem.setMail(1); + tbMemberProjectSubitemService.updateById(tbMemberProjectSubitem); + }else if(y0){ + tbMemberProjectSubitem.setId(one.getProjectId()); + tbMemberProjectSubitem.setMail(2); + tbMemberProjectSubitemService.updateById(tbMemberProjectSubitem); + } + } + // // 到账 // // 应收金额 = 实收金额 = 1 // if(receivableAmount.compareTo(payCommonProject.getPaidAmount()) == 0){ @@ -234,10 +286,10 @@ public class PayMailBillController extends JeroController edit2(PayMailBill payMailBill + public Result edit2(@RequestBody PayMailBill payMailBill ) { payMailBill.setPostStatus(1); payMailBillService.updateById(payMailBill); @@ -259,7 +311,7 @@ public class PayMailBillController extends JeroController edit(PayMailBill payMailBill + public Result edit(@RequestBody PayMailBill payMailBill ) { payMailBill.setPostStatus(1); payMailBillService.updateById(payMailBill); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailContractController.java b/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailContractController.java index c415b016..79b4c14e 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailContractController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/mail/controller/PayMailContractController.java @@ -61,7 +61,7 @@ public class PayMailContractController extends JeroController edit(PayMailContract payMailContract + public Result edit(@RequestBody PayMailContract payMailContract ) { payMailContract.setPostStatus(1); payMailContractService.updateById(payMailContract); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/mail/entity/PayMailBillList.java b/jero-boot-incoming-payment/src/main/java/com/jero/mail/entity/PayMailBillList.java index c48507ce..213d6f8e 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/mail/entity/PayMailBillList.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/mail/entity/PayMailBillList.java @@ -1,9 +1,11 @@ package com.jero.mail.entity; +import com.fasterxml.jackson.annotation.JsonFormat; import com.jero.common.aspect.annotation.Dict; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; @Data public class PayMailBillList { @@ -45,11 +47,17 @@ public class PayMailBillList { private java.lang.String contractAmount; + /**备注*/ + @Excel(name = "备注", width = 15) + @ApiModelProperty(value = "备注") + private java.lang.String remark; - - - - + /**邮寄时间*/ + @Excel(name = "邮寄时间", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern="yyyy-MM-dd") + @ApiModelProperty(value = "邮寄时间") + private java.util.Date sendDate; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/mail/entity/PayMailContract.java b/jero-boot-incoming-payment/src/main/java/com/jero/mail/entity/PayMailContract.java index 25397d95..8ffbb1d3 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/mail/entity/PayMailContract.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/mail/entity/PayMailContract.java @@ -62,13 +62,13 @@ public class PayMailContract implements Serializable { /**快递单号*/ @Excel(name = "快递单号", width = 15) @ApiModelProperty(value = "快递单号") - private java.lang.String postno; + private java.lang.String postNo; /**邮寄时间*/ @Excel(name = "邮寄时间", width = 15, format = "yyyy-MM-dd") @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") @DateTimeFormat(pattern="yyyy-MM-dd") @ApiModelProperty(value = "邮寄时间") - private java.util.Date senddate; + private java.util.Date sendDate; /**备注*/ @Excel(name = "备注", width = 15) @ApiModelProperty(value = "备注") diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/xml/PayMailContractMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/xml/PayMailContractMapper.xml index 1d859169..2d0aa805 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/xml/PayMailContractMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/xml/PayMailContractMapper.xml @@ -6,7 +6,7 @@ SELECT pc.id, pc.post_status as postStatus, pc.send_method as sendMethod, -pc.postNo, +pc.post_no as postNo, pc.liaison_man as liaisonMan, pc.mobile, pic.contract_num as contractNum, @@ -23,7 +23,7 @@ SELECT pc.id, pc.post_status as postStatus, pc.send_method as sendMethod, -pc.postNo, +pc.post_no as postNo, pc.liaison_man as liaisonMan, pc.mobile, pic.contract_num as contractNum,