From 244d75f283627ccdc78988dc50056b221659814d 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, 26 Oct 2021 16:14:19 +0800 Subject: [PATCH 01/11] =?UTF-8?q?=E6=94=AF=E5=87=BA=E5=90=88=E5=90=8C?= =?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 --- .../common/PayIncomeContractCommon.java | 2 +- .../PaySpendingContractController.java | 97 ++++++-- .../contract/entity/PaySpendingContract.java | 9 +- .../entity/PaySpendingContractAudit.java | 72 ++++++ .../PaySpendingContractAuditMapper.java | 15 ++ .../mapper/PaySpendingContractMapper.java | 2 +- .../xml/PaySpendingContractAuditMapper.xml | 5 + .../mapper/xml/PaySpendingContractMapper.xml | 8 + .../IPaySpendingContractAuditService.java | 14 ++ .../service/IPaySpendingContractService.java | 23 +- .../PaySpendingContractAuditServiceImpl.java | 18 ++ .../impl/PaySpendingContractServiceImpl.java | 232 +++++++++++++++--- .../vo/PaySpendingContractAuditOutput.java | 14 ++ .../vo/PaySpendingContractDetailOutput.java | 22 ++ .../vo/PaySpendingContractExcelModel.java | 50 ++-- 15 files changed, 493 insertions(+), 90 deletions(-) create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContractAudit.java create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractAuditMapper.java create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractAuditMapper.xml create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractAuditService.java create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractAuditServiceImpl.java create mode 100644 jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractAuditOutput.java diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java index 304f197d..ec954d33 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/common/PayIncomeContractCommon.java @@ -80,7 +80,7 @@ public class PayIncomeContractCommon { */ public final static List LIST_SPENDING_CONTRACT = Arrays.asList("合同编号","合同名称","签订单位","签订联系人","是否开口","负责人", "部门名称","签订合同总金额","税率","未税金额","合同签订日期","合同终止日期","合同约定主要时点", - "应付金额","已付金额","未付金额","账款状态","合同约定付款次数","是否打包","打包年份"); + "应付金额","已付金额","未付金额","账款状态","合同约定付款次数"); /** * 支出合同分期信息excel 表头 */ diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java index fd121ef2..b3a8c737 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java @@ -9,9 +9,9 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; 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.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; @@ -20,12 +20,12 @@ import com.jero.common.common.RoleCommon; import com.jero.common.exception.JeroBootException; import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.base.controller.JeroController; -import com.jero.common.system.query.QueryGenerator; import com.jero.common.system.vo.LoginUser; import com.jero.common.util.DateUtils; import com.jero.common.util.oConvertUtils; import com.jero.contract.common.PayIncomeContractCommon; import com.jero.contract.entity.*; +import com.jero.contract.service.IPaySpendingContractAuditService; import com.jero.contract.service.IPaySpendingContractInstallmentService; import com.jero.contract.service.IPaySpendingContractService; import com.jero.contract.vo.*; @@ -39,9 +39,7 @@ import org.jeecgframework.poi.excel.entity.ExportParams; import org.jeecgframework.poi.excel.entity.enmus.ExcelType; import org.jeecgframework.poi.excel.entity.params.ExcelExportEntity; import org.jeecgframework.poi.excel.view.JeecgMapExcelView; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.env.Environment; -import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; import io.swagger.annotations.Api; @@ -63,6 +61,8 @@ public class PaySpendingContractController extends JeroController 50){ return Result.error("合同编号长度不能大于50个字符!"); @@ -98,8 +99,12 @@ public class PaySpendingContractController extends JeroController page = new Page<>(pageNo, pageSize); - IPage pageList = paySpendingContractService.queryPageList(page, paySpendingContract,startTime,endTime); + IPage pageList = paySpendingContractService.queryPageList(page, paySpendingContract,startTime,endTime,chargeStatus); return Result.OK(pageList); } @@ -157,6 +162,40 @@ public class PaySpendingContractController extends JeroController audit(@RequestBody PaySpendingContractAudit paySpendingContractAudit) { + if(StringUtils.isBlank(paySpendingContractAudit.getContractId())){ + return Result.error("id不能为空!"); + } + paySpendingContractService.updateAudit(paySpendingContractAudit); + return Result.OK("审核成功!"); + } + + /** + * 归档 + * + * @param paySpendingContractAudit 审核记录 + */ + @AutoLog(value = "收入合同-归档",operateType = 8) + @RequiresPermissions("revenueContract:archive") + @ApiOperation(value="收入合同-归档", notes="收入合同-归档") + @PostMapping(value = "/archive") + public Result archive(@RequestBody PaySpendingContractAudit paySpendingContractAudit) { + if(StringUtils.isBlank(paySpendingContractAudit.getContractId())){ + return Result.error("id不能为空!"); + } + paySpendingContractService.updateArchive(paySpendingContractAudit); + return Result.OK("归档成功!"); + } /** * 通过id删除 * @@ -220,14 +259,40 @@ public class PaySpendingContractController extends JeroController listPaySpendingContractInstallment = paySpendingContractInstallmentService.list(queryPaySpendingContractInstallment); String str = JSON.toJSONString(paySpendingContract); + PaySpendingContractDetailOutput paySpendingContractDetailOutput = JSONObject.parseObject(str,PaySpendingContractDetailOutput.class); - // 字典翻译 - paySpendingContractDetailOutput.setOpening_dictText(sysBaseAPI.translateDict("yn",String.valueOf(paySpendingContract.getOpening()))); paySpendingContractDetailOutput.setAccountStatus_dictText(sysBaseAPI.translateDict("revenue_contract_account_status",String.valueOf(paySpendingContract.getAccountStatus()))); paySpendingContractDetailOutput.setPack_dictText(sysBaseAPI.translateDict("yn",String.valueOf(paySpendingContract.getPack()))); + paySpendingContractDetailOutput.setContractStatus_dictText(sysBaseAPI.translateDict("revenue_contract_status",String.valueOf(paySpendingContract.getStatus()))); if(!CollectionUtils.isEmpty(listPaySpendingContractInstallment)){ paySpendingContractDetailOutput.setListInstallment(listPaySpendingContractInstallment); } + + LambdaQueryWrapper queryPaySpendingContractAudit = new LambdaQueryWrapper<>(); + queryPaySpendingContractAudit.in(PaySpendingContractAudit::getContractId,id); + List listPaySpendingContractAudit = paySpendingContractAuditService.list(queryPaySpendingContractAudit); + List listArchive = new ArrayList<>(); + List listAudit = new ArrayList<>(); + if(!CollectionUtils.isEmpty(listPaySpendingContractAudit)){ + String strAudit = JSON.toJSONString(listPaySpendingContractAudit); + List listAll = JSONArray.parseArray(strAudit,PaySpendingContractAuditOutput.class); + listAll.forEach(p->{ + if(!Objects.isNull(p.getContractStatus())){ + p.setContractStatus_dictText(sysBaseAPI.translateDict("revenue_contract_status",String.valueOf(p.getContractStatus()))); + } + }); + // 获取存档记录 + listArchive = listAll.stream().filter(p->Objects.equals(p.getContractStatus(), PayIncomeContractCommon.STATUS5)).collect(Collectors.toList()); + // 获取审核记录 + listAudit = listAll.stream().filter(p->!Objects.equals(p.getContractStatus(), PayIncomeContractCommon.STATUS5)).collect(Collectors.toList()); + } + + if(!CollectionUtils.isEmpty(listArchive)){ + paySpendingContractDetailOutput.setListArchive(listArchive); + } + if(!CollectionUtils.isEmpty(listAudit)){ + paySpendingContractDetailOutput.setListAudit(listAudit); + } return Result.OK(paySpendingContractDetailOutput); } @@ -325,26 +390,24 @@ public class PaySpendingContractController extends JeroController 0){ for (int i = 1; i <= count; i++){ filedsList.add(new ExcelExportEntity(i + "阶段", "phaseName" + i)); - filedsList.add(new ExcelExportEntity(i + "阶段应收", "accountsReceivableAmount" + i)); - filedsList.add(new ExcelExportEntity(i + "阶段应收时间", "accountsReceivableTime" + i)); - filedsList.add(new ExcelExportEntity(i + "阶段实收", "paidAmount" + i)); - filedsList.add(new ExcelExportEntity(i + "阶段实收时间", "paidTime" + i)); + filedsList.add(new ExcelExportEntity(i + "阶段应付", "accountsReceivableAmount" + i)); + filedsList.add(new ExcelExportEntity(i + "阶段应付时间", "accountsReceivableTime" + i)); + filedsList.add(new ExcelExportEntity(i + "阶段实付", "paidAmount" + i)); + filedsList.add(new ExcelExportEntity(i + "阶段实付时间", "paidTime" + i)); } } // Step.3 AutoPoi 导出Excel ModelAndView mv = new ModelAndView(new JeecgMapExcelView()); - mv.addObject(MapExcelConstants.FILE_NAME, "收入合同"); //此处设置的filename无效 ,前端会重更新设置一下 + mv.addObject(MapExcelConstants.FILE_NAME, "支出合同"); //此处设置的filename无效 ,前端会重更新设置一下 mv.addObject(MapExcelConstants.ENTITY_LIST, filedsList); //update-begin--Author:liusq Date:20210126 for:图片导出报错,ImageBasePath未设置-------------------- ExportParams exportParams=new ExportParams("支出合同", "支出合同"); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContract.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContract.java index 39051857..b12495f3 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContract.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContract.java @@ -164,16 +164,17 @@ public class PaySpendingContract implements Serializable { @ApiModelProperty(value = "合同约定付款次数") private String contractPaymentTimes; /**是否打包(1:是,0:否)*/ - @Excel(name = "是否打包(1:是,0:否)", width = 15) @ApiModelProperty(value = "是否打包(1:是,0:否)") - @NotNull(message = "是否打包不能为空") - @Dict(dicCode = "yn") private Integer pack; /**打包年份*/ - @Excel(name = "打包年份", width = 15) @ApiModelProperty(value = "打包年份") @Pattern(regexp = "^\\d{4}$",message = "打包年份式错误") private String packYear; + /**合同状态(2:已通过,3:未通过,4:已归档)*/ + @Excel(name = "合同状态(2:已通过,3:未通过,4:已存档)", width = 15) + @ApiModelProperty(value = "合同状态(2:已通过,3:未通过,4:已存档)") + @Dict(dicCode = "expenditure_contract_status") + private java.lang.Integer status; /**创建人*/ @ApiModelProperty(value = "创建人") private String createBy; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContractAudit.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContractAudit.java new file mode 100644 index 00000000..5989b0a5 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PaySpendingContractAudit.java @@ -0,0 +1,72 @@ +package com.jero.contract.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.Max; +import javax.validation.constraints.Min; +import javax.validation.constraints.Size; +import java.io.Serializable; + +/** + * @Description: pay_spending_contract_audit + * @Author: jeecg-boot + * @Date: 2021-09-03 + * @Version: V1.0 + */ +@Data +@TableName("pay_spending_contract_audit") +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="pay_spending_contract_audit对象", description="pay_spending_contract_audit") +public class PaySpendingContractAudit implements Serializable { + private static final long serialVersionUID = 1L; + + /**主键*/ + @TableId(type = IdType.ASSIGN_ID) + @ApiModelProperty(value = "主键") + private String id; + /**合同id*/ + @Excel(name = "合同id", width = 15) + @ApiModelProperty(value = "合同id") + @Size(max = 32, message = "合同id长度不能大于32个字符") + private String contractId; + /**合同状态(2:待审核,3:已通过,4:未通过,5:已归档)*/ + @Excel(name = "合同状态(2:待审核,3:已通过,4:未通过,5:已归档)", width = 15) + @ApiModelProperty(value = "合同状态(2:待审核,3:已通过,4:未通过,5:已归档)") + @Dict(dicCode = "expenditure_contract_status") + @Max(5) + @Min(1) + private Integer contractStatus; + /**拒绝说明*/ + @Excel(name = "拒绝说明", width = 15) + @ApiModelProperty(value = "拒绝说明") + @Size(max = 200, message = "拒绝说明长度不能大于200个字符") + private String explainRemarks; + /**创建人*/ + @ApiModelProperty(value = "创建人") + private String createBy; + /**创建时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "创建时间") + private java.util.Date createTime; + /**更新人*/ + @ApiModelProperty(value = "更新人") + private String updateBy; + /**更新时间*/ + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @ApiModelProperty(value = "更新时间") + private java.util.Date updateTime; +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractAuditMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractAuditMapper.java new file mode 100644 index 00000000..4ae5ffb4 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractAuditMapper.java @@ -0,0 +1,15 @@ +package com.jero.contract.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.jero.contract.entity.PaySpendingContractAudit; + +/** + * @Description: pay_income_contract_audit + * @Author: jeecg-boot + * @Date: 2021-09-03 + * @Version: V1.0 + */ +public interface PaySpendingContractAuditMapper extends BaseMapper { + +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java index d5d2244c..0a760973 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java @@ -26,7 +26,7 @@ public interface PaySpendingContractMapper extends BaseMapper queryPageList(Page page, @Param("paySpendingContract") PaySpendingContract paySpendingContract - ,@Param("startTime") String startTime, @Param("endTime") String endTime); + ,@Param("startTime") String startTime, @Param("endTime") String endTime,@Param("chargeStatus") String chargeStatus); /** * @Description excel导出 diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractAuditMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractAuditMapper.xml new file mode 100644 index 00000000..39461036 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractAuditMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml index a8085638..25d13871 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml @@ -30,6 +30,8 @@ contract_payment_times, pack, pack_year, + status, + if(status = 2,1,0) as statusOrder, create_by, create_time, update_by, @@ -55,6 +57,12 @@ AND principal_id = #{paySpendingContract.principalId} + + AND aa.status = #{paySpendingContract.status} + + + AND aa.chargeStatus = #{chargeStatus} + ORDER BY chargeStatus desc,create_time desc diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractAuditService.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractAuditService.java new file mode 100644 index 00000000..c7d88516 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractAuditService.java @@ -0,0 +1,14 @@ +package com.jero.contract.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.contract.entity.PaySpendingContractAudit; + +/** + * @Description: pay_income_contract_audit + * @Author: jeecg-boot + * @Date: 2021-09-03 + * @Version: V1.0 + */ +public interface IPaySpendingContractAuditService extends IService { + +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java index dec52bb5..3789b2a3 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java @@ -3,7 +3,10 @@ package com.jero.contract.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.contract.entity.PayIncomeContract; +import com.jero.contract.entity.PayIncomeContractAudit; import com.jero.contract.entity.PaySpendingContract; +import com.jero.contract.entity.PaySpendingContractAudit; import com.jero.contract.vo.PaySpendingContractInput; import javax.servlet.http.HttpServletRequest; @@ -24,7 +27,7 @@ public interface IPaySpendingContractService extends IService queryPageList(Page page,PaySpendingContract paySpendingContract,String startTime,String endTime); + IPage queryPageList(Page page,PaySpendingContract paySpendingContract,String startTime,String endTime,String chargeStatus); /** * @Description 添加 @@ -80,4 +83,22 @@ public interface IPaySpendingContractService extends IService queryList(String contractNum,String contractName,String startTime,String endTime); + /** + * @Description 审核 + * @Author lqt + * @Date 2021/9/5 + * @Param paySpendingContractAudit 审核记录 + * @Return + * @Exception + */ + void updateAudit(PaySpendingContractAudit paySpendingContractAudit); + /** + * @Description 归档 + * @Author lqt + * @Date 2021/9/5 + * @Param paySpendingContractAudit 审核记录 + * @Return + * @Exception + */ + void updateArchive(PaySpendingContractAudit paySpendingContractAudit); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractAuditServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractAuditServiceImpl.java new file mode 100644 index 00000000..cd190bdc --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractAuditServiceImpl.java @@ -0,0 +1,18 @@ +package com.jero.contract.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.jero.contract.entity.PaySpendingContractAudit; +import com.jero.contract.mapper.PaySpendingContractAuditMapper; +import com.jero.contract.service.IPaySpendingContractAuditService; +import org.springframework.stereotype.Service; + +/** + * @Description: pay_income_contract_audit + * @Author: jeecg-boot + * @Date: 2021-09-03 + * @Version: V1.0 + */ +@Service +public class PaySpendingContractAuditServiceImpl extends ServiceImpl implements IPaySpendingContractAuditService { + +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java index ee5395dd..cf28460f 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java @@ -1,27 +1,39 @@ package com.jero.contract.service.impl; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.common.RoleCommon; +import com.jero.common.dto.SendMessageDTO; +import com.jero.common.enums.ManagementMessageEnums; 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.DateUtils; import com.jero.common.util.ImportExcelUtil; +import com.jero.common.util.PasswordUtil; import com.jero.common.util.ValidUtil; import com.jero.contract.common.PayIncomeContractCommon; +import com.jero.contract.entity.PayIncomeContract; import com.jero.contract.entity.PaySpendingContract; +import com.jero.contract.entity.PaySpendingContractAudit; import com.jero.contract.entity.PaySpendingContractInstallment; import com.jero.contract.mapper.PaySpendingContractMapper; +import com.jero.contract.service.IPaySpendingContractAuditService; import com.jero.contract.service.IPaySpendingContractInstallmentService; import com.jero.contract.service.IPaySpendingContractService; import com.jero.contract.vo.PaySpendingContractImportExcel; import com.jero.contract.vo.PaySpendingContractInput; +import com.jero.mail.entity.PayMailContract; +import com.jero.mail.service.IPayMailContractService; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.service.ISysUserService; +import com.jero.temporary.entity.PayContactsManagementTemporary; +import com.jero.temporary.service.IPayContactsManagementTemporaryService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; @@ -64,11 +76,19 @@ public class PaySpendingContractServiceImpl extends ServiceImpl queryPageList(Page page, PaySpendingContract paySpendingContract, String startTime, String endTime) { - return paySpendingContractMapper.queryPageList(page,paySpendingContract,startTime,endTime); + public IPage queryPageList(Page page, PaySpendingContract paySpendingContract, String startTime, String endTime,String chargeStatus) { + return paySpendingContractMapper.queryPageList(page,paySpendingContract,startTime,endTime,chargeStatus); } @Override @@ -83,7 +103,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl list = sysUserService.getRolesUser(Arrays.asList(RoleCommon.CWRY)); + if(!CollectionUtils.isEmpty(list)){ + list.forEach(p->{ + // 发送消息 + SendMessageDTO sendMessageDTO = new SendMessageDTO(); + if(!StringUtils.isBlank(p.getEmail())){ + sendMessageDTO.setEmail(PasswordUtil.decrypt(p.getEmail())); + } + if(!StringUtils.isEmpty(p.getPhone())){ + sendMessageDTO.setPhone(PasswordUtil.decrypt(p.getPhone())); + } + HashMap map = new HashMap<>(); + map.put("contractNum",paySpendingContract.getContractNum()); + map.put("contractName",paySpendingContract.getContractName()); + sendMessageDTO.setFromUser(sysUser.getUsername()); + sendMessageDTO.setToUser(p.getUsername()); + sendMessageDTO.setTemplateCode(ManagementMessageEnums.MSG2.getCode()); + sendMessageDTO.setTemplateParam(map); + sendMessageDTO.setBusType("M_OPEN_TYPE2"); + JSONObject json = new JSONObject(); + json.put("revenueId",paySpendingContract.getId()); + json.put("contractNum",paySpendingContract.getContractNum()); + sendMessageDTO.setBusId(json.toJSONString()); + sendMessageService.SendMessageService(sendMessageDTO); + }); + } return paySpendingContract; } @@ -146,7 +195,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl listPaySpendingContractStatus = paySpendingContractService.list(query); if(CollectionUtils.isEmpty(listPaySpendingContractStatus)){ - throw new JeroBootException("收入合同不存在!"); + throw new JeroBootException("支出合同不存在!"); } paySpendingContractService.removeByIds(ids); LambdaUpdateWrapper updatePaySpendingContractInstallment = new LambdaUpdateWrapper<>(); @@ -338,28 +388,28 @@ public class PaySpendingContractServiceImpl extends ServiceImpl"); + sb.append("第").append(n + 1).append("行:").append(i+1).append("阶段应付格式错误,请修改。
"); }else{ paySpendingContractInstallment.setAccountsReceivableAmount(new BigDecimal(sub.get(mm + 1))); } } if(!StringUtils.isBlank(sub.get(mm + 2))){ if(!DateUtils.isValidDate(sub.get(mm + 2))){ - sb.append("第").append(n + 1).append("行:").append(i+1).append("阶段应收时间日期格式不正确,请修改。
"); + sb.append("第").append(n + 1).append("行:").append(i+1).append("阶段应付时间日期格式不正确,请修改。
"); }else{ paySpendingContractInstallment.setAccountsReceivableTime(DateUtils.str2Date(sub.get(mm + 2),new SimpleDateFormat("yyyy-MM-dd"))); } } if(!StringUtils.isBlank(sub.get(mm + 3))){ if(!pattern.matcher(sub.get(mm + 3)).matches()){ - sb.append("第").append(n + 1).append("行:").append(i+1).append("阶段实收格式错误,请修改。
"); + sb.append("第").append(n + 1).append("行:").append(i+1).append("阶段实付格式错误,请修改。
"); }else{ paySpendingContractInstallment.setPaidAmount(new BigDecimal(sub.get(mm + 3))); } } if(!StringUtils.isBlank(sub.get(mm + 4))) { if (!DateUtils.isValidDate(sub.get(mm + 4))) { - sb.append("第").append(n + 1).append("行:").append(i+1).append("阶段实收时间日期格式不正确,请修改。
"); + sb.append("第").append(n + 1).append("行:").append(i+1).append("阶段实付时间日期格式不正确,请修改。
"); } else { paySpendingContractInstallment.setPaidTime(DateUtils.str2Date(sub.get(mm + 4), new SimpleDateFormat("yyyy-MM-dd"))); } @@ -444,9 +494,9 @@ public class PaySpendingContractServiceImpl extends ServiceImpl"); + sb.append("第").append(n + 1).append("行:已付金额大于应付金额,请修改。
"); }else if(!Objects.isNull(paySpendingContract.getOutstandingAmount()) && paySpendingContract.getAccountsReceivableAmount().subtract(paySpendingContract.getAmountReceived()).compareTo(paySpendingContract.getOutstandingAmount()) != 0){ - sb.append("第").append(n + 1).append("行:未收金额不正确,请修改。
"); + sb.append("第").append(n + 1).append("行:未付金额不正确,请修改。
"); } } List listPaySpendingContractInstallment = p.getListInstallment(); @@ -455,7 +505,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl"); + sb.append("第").append(n + 1).append("行:").append(c).append("阶段实付大于应付,请修改。
"); } }); } @@ -508,6 +558,133 @@ public class PaySpendingContractServiceImpl extends ServiceImpl update = new LambdaUpdateWrapper<>(); + update.set(PaySpendingContract::getUpdateBy,sysUser.getUsername()); + update.set(PaySpendingContract::getUpdateTime,new Date()); + update.eq(PaySpendingContract::getId,paySpendingContractAudit.getContractId()); + update.set(PaySpendingContract::getStatus, paySpendingContractAudit.getContractStatus()); + paySpendingContractService.update(update); + // 添加审核记录 + paySpendingContractAuditService.save(paySpendingContractAudit); + + // 审核通过 + if(Objects.equals(paySpendingContractAudit.getContractStatus(),PayIncomeContractCommon.STATUS3)){ + // 更新到合同邮寄表 + PayMailContract payMailContract = new PayMailContract(); + PayContactsManagementTemporary payContactsManagementTemporary = payContactsManagementTemporaryService.getById(paySpendingContractStatus.getSignedContactsTemporaryId()); + if(!Objects.isNull(payContactsManagementTemporary)){ + payMailContract.setMobile(payContactsManagementTemporary.getPhone()); + payMailContract.setEmail(payContactsManagementTemporary.getEmail()); + } + payMailContract.setContractId(paySpendingContractStatus.getId()); + payMailContract.setPostStatus(PayIncomeContractCommon.POST_STATUS0); + payMailContract.setLiaisonMan(paySpendingContractStatus.getContractName()); + payMailContractService.save(payMailContract); + // 获取项目负责人,发送消息 + List list = sysUserService.getRolesUser(Arrays.asList(RoleCommon.CWRY)); + if(!CollectionUtils.isEmpty(list)){ + list.forEach(p->{ + // 发送消息 + SendMessageDTO sendMessageDTO = new SendMessageDTO(); + if(!StringUtils.isBlank(p.getEmail())){ + sendMessageDTO.setEmail(PasswordUtil.decrypt(p.getEmail())); + } + if(!StringUtils.isBlank(p.getPhone())){ + sendMessageDTO.setPhone(PasswordUtil.decrypt(p.getPhone())); + } + HashMap map = new HashMap<>(); + map.put("contractNum",paySpendingContractStatus.getContractNum()); + map.put("contractName",paySpendingContractStatus.getContractName()); + sendMessageDTO.setFromUser(sysUser.getUsername()); + sendMessageDTO.setToUser(p.getUsername()); + sendMessageDTO.setTemplateCode(ManagementMessageEnums.MSG3.getCode()); + sendMessageDTO.setTemplateParam(map); + sendMessageDTO.setBusType("M_OPEN_TYPE3"); + JSONObject json = new JSONObject(); + json.put("revenueId",paySpendingContractStatus.getId()); + json.put("contractNum",paySpendingContractStatus.getContractNum()); + sendMessageDTO.setBusId(json.toJSONString()); + sendMessageService.SendMessageService(sendMessageDTO); + }); + } + } + // 审核未通过 + if(Objects.equals(paySpendingContractAudit.getContractStatus(),PayIncomeContractCommon.STATUS4)){ + SysUser sysUserData = sysUserService.getById(paySpendingContractStatus.getPrincipalId()); + if(!Objects.isNull(sysUserData)){ + // 发送消息 + SendMessageDTO sendMessageDTO = new SendMessageDTO(); + if(!StringUtils.isBlank(sysUserData.getEmail())){ + sendMessageDTO.setEmail(PasswordUtil.decrypt(sysUserData.getEmail())); + } + if(!StringUtils.isEmpty(sysUserData.getPhone())){ + sendMessageDTO.setPhone(PasswordUtil.decrypt(sysUserData.getPhone())); + } + HashMap map = new HashMap<>(); + map.put("contractNum",paySpendingContractStatus.getContractNum()); + map.put("contractName",paySpendingContractStatus.getContractName()); + sendMessageDTO.setFromUser(sysUser.getUsername()); + sendMessageDTO.setToUser(sysUserData.getUsername()); + sendMessageDTO.setTemplateCode(ManagementMessageEnums.MSG4.getCode()); + sendMessageDTO.setTemplateParam(map); + sendMessageDTO.setBusType("M_OPEN_TYPE4"); + JSONObject json = new JSONObject(); + json.put("revenueId",paySpendingContractStatus.getId()); + json.put("contractNum",paySpendingContractStatus.getContractNum()); + sendMessageDTO.setBusId(json.toJSONString()); + sendMessageService.SendMessageService(sendMessageDTO); + } + } + } + + @Override + @Transactional + public void updateArchive(PaySpendingContractAudit paySpendingContractAudit) { + PaySpendingContract paySpendingContractStatus = paySpendingContractService.getById(paySpendingContractAudit.getContractId()); + if(Objects.isNull(paySpendingContractStatus)){ + throw new JeroBootException("支出合同不存在!"); + } + // 校验合同状态是否为已通过 + if(!Objects.equals(paySpendingContractStatus.getStatus(),PayIncomeContractCommon.STATUS3)){ + throw new JeroBootException("支出合同不可归档!"); + } + if(Objects.isNull(paySpendingContractAudit.getContractStatus()) || !Objects.equals(paySpendingContractAudit.getContractStatus(),PayIncomeContractCommon.STATUS5)){ + throw new JeroBootException("支出合同状态不正确!"); + } + LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + LambdaUpdateWrapper update = new LambdaUpdateWrapper<>(); + update.set(PaySpendingContract::getUpdateBy,sysUser.getUsername()); + update.set(PaySpendingContract::getUpdateTime,new Date()); + update.eq(PaySpendingContract::getId,paySpendingContractAudit.getContractId()); + update.set(PaySpendingContract::getStatus, PayIncomeContractCommon.STATUS5); + paySpendingContractService.update(update); + // 添加归档记录 + paySpendingContractAudit.setContractStatus(PayIncomeContractCommon.STATUS5); + paySpendingContractAuditService.save(paySpendingContractAudit); + } + private PaySpendingContract setPaySpendingContractExcel(Map map,Map mapOpening,Map mapPack, int n,StringBuilder sb){ @@ -573,48 +750,27 @@ public class PaySpendingContractServiceImpl extends ServiceImpl"); + sb.append("第").append(n).append("行:应付金额格式错误,请修改。
"); }else{ paySpendingContract.setAccountsReceivableAmount(new BigDecimal(map.get(13))); } } if(!StringUtils.isBlank(map.get(14))){ if(!pattern.matcher(map.get(14)).matches()){ - sb.append("第").append(n).append("行:已收金额格式错误,请修改。
"); + sb.append("第").append(n).append("行:已付金额格式错误,请修改。
"); }else{ paySpendingContract.setAmountReceived(new BigDecimal(map.get(14))); } } if(!StringUtils.isBlank(map.get(15))){ if(!pattern.matcher(map.get(15)).matches()){ - sb.append("第").append(n).append("行:未收金额格式错误,请修改。
"); + sb.append("第").append(n).append("行:未付金额格式错误,请修改。
"); }else{ paySpendingContract.setOutstandingAmount(new BigDecimal(map.get(15))); } } paySpendingContract.setContractPaymentTimes(map.get(17)); - if(StringUtils.isEmpty(map.get(18))){ - sb.append("第").append(n).append("行:是否打包不能为空,请修改。
"); - }else{ - mapPack.forEach((k,v)->{ - if(Objects.equals(map.get(18),k)){ - paySpendingContract.setPack(Integer.parseInt(v)); - } - }); - if(Objects.isNull(paySpendingContract.getPack())){ - sb.append("第").append(n).append("行:是否打包格式错误,请修改。
"); - paySpendingContract.setPack(2); - } - // 打包获取打包年份 - if(Objects.equals(paySpendingContract.getPack(),PayIncomeContractCommon.PACK1)){ - if(StringUtils.isEmpty(map.get(19))){ - sb.append("第").append(n).append("行:打包年份不能为空,请修改。
"); - }else{ - paySpendingContract.setPackYear(map.get(19)); - } - } - } return paySpendingContract; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractAuditOutput.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractAuditOutput.java new file mode 100644 index 00000000..fbd91e85 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractAuditOutput.java @@ -0,0 +1,14 @@ +package com.jero.contract.vo; + +import com.jero.contract.entity.PayIncomeContractAudit; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class PaySpendingContractAuditOutput extends PayIncomeContractAudit implements Serializable { + /** + * 合同状态(1:草稿,2:待审核,3:已通过,4:未通过,5:已归档) + */ + private String contractStatus_dictText; +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractDetailOutput.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractDetailOutput.java index b65ccfe4..153ba304 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractDetailOutput.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractDetailOutput.java @@ -2,6 +2,7 @@ package com.jero.contract.vo; import com.jero.contract.entity.PaySpendingContract; import com.jero.contract.entity.PaySpendingContractInstallment; +import com.jero.mail.entity.PayMailContract; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -23,9 +24,30 @@ public class PaySpendingContractDetailOutput extends PaySpendingContract impleme * 是否打包(1:是,2:否) */ private String pack_dictText; + + /** + * 合同状态(2:待审核,3:已通过,4:未通过,5:已存档) + */ + private String contractStatus_dictText; /** * 分期记录 */ @ApiModelProperty(value = "分期记录集合") private List listInstallment; + + /** + * 归档记录 + */ + @ApiModelProperty(value = "归档记录") + private List listArchive; + /** + * 审核记录 + */ + @ApiModelProperty(value = "审核记录") + private List listAudit; + /** + * 邮寄信息 + */ + @ApiModelProperty(value = "邮寄信息") + private PayMailContract payMailContract; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractExcelModel.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractExcelModel.java index 2d266d84..0ce863af 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractExcelModel.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PaySpendingContractExcelModel.java @@ -47,14 +47,14 @@ public class PaySpendingContractExcelModel implements Serializable { /**合同约定主要时点*/ @Excel(name = "合同约定主要时点", width = 15) private String contractTimePoints; - /**应收金额*/ - @Excel(name = "应收金额", width = 15) + /**应付金额*/ + @Excel(name = "应付金额", width = 15) private String accountsReceivableAmount; - /**已收金额*/ - @Excel(name = "已收金额", width = 15) + /**已付金额*/ + @Excel(name = "已付金额", width = 15) private String amountReceived; - /**未收金额*/ - @Excel(name = "未收金额", width = 15) + /**未付金额*/ + @Excel(name = "未付金额", width = 15) private BigDecimal outstandingAmount; /**账款状态(1:未支付,2:部分支付,3:已付全款)*/ @Excel(name = "账款状态", width = 15) @@ -62,40 +62,34 @@ public class PaySpendingContractExcelModel implements Serializable { /**合同约定付款次数*/ @Excel(name = "合同约定付款次数", width = 15) private String contractPaymentTimes; - /**是否打包(1:是,0:否)*/ - @Excel(name = "是否打包", width = 15) - private Integer pack; - /**打包年份*/ - @Excel(name = "打包年份", width = 15) - private String packYear; /**阶段名称*/ @Excel(name = "1阶段", width = 15) private String phaseName1; - /**应收金额*/ - @Excel(name = "1阶段应收", width = 15) + /**应付金额*/ + @Excel(name = "1阶段应付", width = 15) private Integer accountsReceivableAmount1; - /**应收时间*/ - @Excel(name = "1阶段应收时间", width = 15, format = "yyyy-MM-dd") + /**应付时间*/ + @Excel(name = "1阶段应付时间", width = 15, format = "yyyy-MM-dd") private Date accountsReceivableTime1; - /**实收金额*/ - @Excel(name = "1阶段实收", width = 15) + /**实付金额*/ + @Excel(name = "1阶段实付", width = 15) private Integer paidAmount1; - /**实收时间*/ - @Excel(name = "1阶段实收时间", width = 15, format = "yyyy-MM-dd") + /**实付时间*/ + @Excel(name = "1阶段实付时间", width = 15, format = "yyyy-MM-dd") private Date paidTime1; /**阶段名称*/ @Excel(name = "2阶段", width = 15) private String phaseName2; - /**应收金额*/ - @Excel(name = "2阶段应收", width = 15) + /**应付金额*/ + @Excel(name = "2阶段应付", width = 15) private Integer accountsReceivableAmount2; - /**应收时间*/ - @Excel(name = "2阶段应收时间", width = 15, format = "yyyy-MM-dd") + /**应付时间*/ + @Excel(name = "2阶段应付时间", width = 15, format = "yyyy-MM-dd") private Date accountsReceivableTime2; - /**实收金额*/ - @Excel(name = "2阶段实收", width = 15) + /**实付金额*/ + @Excel(name = "2阶段实付", width = 15) private Integer paidAmount2; - /**实收时间*/ - @Excel(name = "2阶段实收时间", width = 15, format = "yyyy-MM-dd") + /**实付时间*/ + @Excel(name = "2阶段实付时间", width = 15, format = "yyyy-MM-dd") private Date paidTime2; } From 7065ec5eddaaece338bf376f523dcf39b17626f7 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, 26 Oct 2021 18:58:19 +0800 Subject: [PATCH 02/11] =?UTF-8?q?=E6=94=B6=E5=85=A5=E5=90=88=E5=90=8C?= =?UTF-8?q?=E5=B7=B2=E6=94=B6=E9=87=91=E9=A2=9D=E5=8F=98=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PayIncomeContractController.java | 79 +++++++++++++------ .../mapper/xml/PayIncomeContractMapper.xml | 16 ++-- .../impl/PayIncomeContractServiceImpl.java | 16 ++-- 3 files changed, 72 insertions(+), 39 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java index c661872d..a3723297 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java @@ -456,8 +456,15 @@ public class PayIncomeContractController extends JeroController query = new LambdaQueryWrapper<>(); query.in(PayIncomeContractInstallment::getContractId,listId); List listPayIncomeContractInstallment = payIncomeContractInstallmentService.list(query); - if(!CollectionUtils.isEmpty(listPayIncomeContractInstallment)){ - exportList.forEach(p->{ - String str = JSON.toJSONString(p); - Map map = JSONObject.parseObject(str,Map.class); - map.put("contractDate",DateUtils.date2Str(p.getContractDate(),new SimpleDateFormat("yyyy-MM-dd"))); - map.put("terminationDate",DateUtils.date2Str(p.getTerminationDate(),new SimpleDateFormat("yyyy-MM-dd"))); - map.put("opening",sysBaseAPI.translateDict("yn",String.valueOf(p.getOpening()))); - map.put("accountStatus",sysBaseAPI.translateDict("revenue_contract_account_status",String.valueOf(p.getAccountStatus()))); - map.put("pack",sysBaseAPI.translateDict("yn",String.valueOf(p.getPack()))); - List listSub = listPayIncomeContractInstallment.stream().filter(item-> - Objects.equals(p.getId(),item.getContractId())).collect(Collectors.toList()); - if(!CollectionUtils.isEmpty(listSub)){ + exportList.forEach(p->{ + if(Objects.isNull(p.getAccountsReceivableAmount())){ + p.setAccountsReceivableAmount(new BigDecimal("0.00")); + } + if(Objects.isNull(p.getAmountReceived())){ + p.setAmountReceived(new BigDecimal("0.00")); + } + p.setOutstandingAmount(p.getAccountsReceivableAmount().subtract(p.getAmountReceived())); + // 已收全款 + if(p.getOutstandingAmount().compareTo(new BigDecimal("0.00")) == 0 + || p.getOutstandingAmount().compareTo(new BigDecimal("0.00")) < 0){ + p.setAccountStatus(PayIncomeContractCommon.ACCOUNT_STATUS3); + } + // 部分收款 + if(p.getOutstandingAmount().compareTo(new BigDecimal("0.00")) > 0 && p.getOutstandingAmount().compareTo(p.getAccountsReceivableAmount()) < 0){ + p.setAccountStatus(PayIncomeContractCommon.ACCOUNT_STATUS2); + } + // 待收款 + if(p.getOutstandingAmount().compareTo(p.getAccountsReceivableAmount()) == 0 && p.getAccountsReceivableAmount().compareTo(new BigDecimal("0.00")) > 0 ){ + p.setAccountStatus(PayIncomeContractCommon.ACCOUNT_STATUS1); + } + String str = JSON.toJSONString(p); + Map map = JSONObject.parseObject(str,Map.class); + map.put("contractDate",DateUtils.date2Str(p.getContractDate(),new SimpleDateFormat("yyyy-MM-dd"))); + map.put("terminationDate",DateUtils.date2Str(p.getTerminationDate(),new SimpleDateFormat("yyyy-MM-dd"))); + map.put("opening",sysBaseAPI.translateDict("yn",String.valueOf(p.getOpening()))); + map.put("accountStatus",sysBaseAPI.translateDict("revenue_contract_account_status",String.valueOf(p.getAccountStatus()))); + map.put("pack",sysBaseAPI.translateDict("yn",String.valueOf(p.getPack()))); + + if(!CollectionUtils.isEmpty(listPayIncomeContractInstallment)) { + List listSub = listPayIncomeContractInstallment.stream().filter(item -> + Objects.equals(p.getId(), item.getContractId())).collect(Collectors.toList()); + if (!CollectionUtils.isEmpty(listSub)) { int count = mapCount.get("count"); - if(count < listSub.size()){ - mapCount.put("count",listSub.size()); + if (count < listSub.size()) { + mapCount.put("count", listSub.size()); } - listSub.forEach(p1->{ + listSub.forEach(p1 -> { int n = listSub.indexOf(p1) + 1; - map.put("phaseName" + n,p1.getPhaseName()); - map.put("accountsReceivableAmount" + n,Objects.isNull(p1.getAccountsReceivableAmount()) ? "" : String.valueOf(p1.getAccountsReceivableAmount())); - map.put("accountsReceivableTime" + n, DateUtils.date2Str(p1.getAccountsReceivableTime(),new SimpleDateFormat("yyyy-MM-dd"))); - map.put("paidAmount" + n,Objects.isNull(p1.getPaidAmount()) ? "" : String.valueOf(p1.getPaidAmount())); - map.put("paidTime" + n,DateUtils.date2Str(p1.getPaidTime(),new SimpleDateFormat("yyyy-MM-dd"))); + map.put("phaseName" + n, p1.getPhaseName()); + map.put("accountsReceivableAmount" + n, Objects.isNull(p1.getAccountsReceivableAmount()) ? "" : String.valueOf(p1.getAccountsReceivableAmount())); + map.put("accountsReceivableTime" + n, DateUtils.date2Str(p1.getAccountsReceivableTime(), new SimpleDateFormat("yyyy-MM-dd"))); + map.put("paidAmount" + n, Objects.isNull(p1.getPaidAmount()) ? "" : String.valueOf(p1.getPaidAmount())); + map.put("paidTime" + n, DateUtils.date2Str(p1.getPaidTime(), new SimpleDateFormat("yyyy-MM-dd"))); }); } list.add(map); - }); - } + } + }); }else{ throw new JeroBootException("数据为空!"); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PayIncomeContractMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PayIncomeContractMapper.xml index 2e9272cb..a56aac43 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PayIncomeContractMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PayIncomeContractMapper.xml @@ -231,9 +231,6 @@ pic.termination_date AS terminationDate, pic.contract_time_points AS contractTimePoints, pic.accounts_receivable_amount AS accountsReceivableAmount, - pic.amount_received AS amountReceived, - pic.outstanding_amount AS outstandingAmount, - pic.account_status AS accountStatus, pic.contract_payment_times AS contractPaymentTimes, pic.pack, pic.pack_year AS packYear, @@ -248,26 +245,27 @@ where contract_id = pic.id AND accounts_receivable_time is not null AND accounts_receivable_time < DATE_FORMAT( NOW(), '%Y-%m-%d' ) AND accounts_receivable_amount != 0 AND accounts_receivable_amount > if(paid_amount is null or paid_amount = '',0,paid_amount) ) AS chargeStatus, - GROUP_CONCAT(project.projectName ORDER BY project.id DESC) AS associatedProject + GROUP_CONCAT(project.projectName ORDER BY project.id DESC) AS associatedProject, + sum(project.paid_amount) as amountReceived FROM pay_income_contract pic LEFT JOIN pay_income_contract_associated pica ON pica.contract_id = pic.id LEFT JOIN ( - SELECT id,charge_project AS projectName FROM pay_common_project + SELECT id,charge_project AS projectName,paid_amount FROM pay_common_project UNION ALL - SELECT pwgs.id,pwg.working_group_project AS projectName FROM pay_working_group_subitem pwgs + SELECT pwgs.id,pwg.working_group_project AS projectName,paid_amount FROM pay_working_group_subitem pwgs LEFT JOIN pay_working_group pwg ON pwg.id = pwgs.working_group_id WHERE pwg.working_group_project IS NOT NULL AND pwg.working_group_project != '' UNION ALL - SELECT sit.id,meeting.meeting_name AS projectName FROM pay_meeting meeting + SELECT sit.id,meeting.meeting_name AS projectName,paid_amount FROM pay_meeting meeting INNER JOIN pay_meeting_situation sit ON meeting.id = sit.meeting_id WHERE meeting.meeting_name IS NOT NULL AND meeting.meeting_name != '' UNION ALL - SELECT msub.id,pmp.project_name AS projectName FROM pay_member_project pmp + SELECT msub.id,pmp.project_name AS projectName,paid_amount FROM pay_member_project pmp INNER JOIN pay_member_project_subitem msub ON pmp.id = msub.project_id WHERE pmp.project_name IS NOT NULL AND pmp.project_name != '' UNION ALL - SELECT tmsub.id,tmember.project_name AS projectName FROM tb_member_project tmember + SELECT tmsub.id,tmember.project_name AS projectName,paid_amount FROM tb_member_project tmember INNER JOIN tb_member_project_subitem tmsub ON tmember.id=tmsub.project_id where tmember.project_name IS NOT NULL AND tmember.project_name != '' ) project ON project.id = pica.project_id diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java index e6aea71e..3f89c2e5 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java @@ -138,10 +138,10 @@ public class PayIncomeContractServiceImpl extends ServiceImpl Date: Wed, 27 Oct 2021 11:39:43 +0800 Subject: [PATCH 03/11] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E9=80=89=E6=8B=A9?= =?UTF-8?q?=E5=90=88=E5=90=8C=E7=BC=96=E5=8F=B7=E5=8F=98=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PayIncomeContractController.java | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java index a3723297..7ab8f04d 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PayIncomeContractController.java @@ -469,6 +469,26 @@ public class PayIncomeContractController extends JeroController queryByCompanyId(@RequestParam(name="companyId") String companyId) { + if (StringUtils.isBlank(companyId)) { + return Result.error("企业id不能为空!"); + } + LambdaQueryWrapper queryPayIncomeContract = new LambdaQueryWrapper(); + queryPayIncomeContract.eq(PayIncomeContract::getSignedCompanyId,companyId); + List listPayIncomeContract = payIncomeContractService.list(queryPayIncomeContract); + List list = new ArrayList<>(); + if(!CollectionUtils.isEmpty(listPayIncomeContract)){ + list = listPayIncomeContract.stream().map(PayIncomeContract::getContractNum).collect(Collectors.toList()); + } + return Result.OK(list); + } /** * 通过id查询详情 * From 318041a2266085c99eab959a739b1677b8755b75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Wed, 27 Oct 2021 11:55:40 +0800 Subject: [PATCH 04/11] =?UTF-8?q?=E6=B6=88=E6=81=AF=E5=8F=98=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/enums/CompanyMessageEnums.java | 4 +- .../common/enums/ManagementMessageEnums.java | 7 ++- .../jero/common/enums/MessageUrlEnums.java | 10 +++- .../service/impl/SendMessageServiceImpl.java | 50 +++++++++++++++++-- 4 files changed, 64 insertions(+), 7 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/CompanyMessageEnums.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/CompanyMessageEnums.java index 7aa69e92..750dc527 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/CompanyMessageEnums.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/CompanyMessageEnums.java @@ -24,7 +24,9 @@ public enum CompanyMessageEnums { MSG10("QY_10_YJTZ_MAIL_CONTRACT","邮寄通知","contractName"),//查看该物流信息,contractName MSG11("QY_11_CKTZ_PAY","催款通知","projectName"),//弹窗:查看该项目详情 MSG12("QY_12_WJTZ_WORK_GROUP_SEND","文件通知","workGroupName,systemAddress,wxName"),//弹窗:查看该项目详情,workGroupName,systemUrl,wxName - MSG13("QY_13_HYTZ_FBW_CREATE","会议通知","meetingName,busId");//点击跳转到报名页面,meetingName,busId + MSG13("QY_13_JFTZ_DZ_CREATE","缴费通知","projectName,amount"),//弹窗:查看该项目详情,projectName,amount + MSG14("QY_14_KPTZ_KP_CREATE","开票通知","projectName"),//弹窗:查看该项目详情,projectName + MSG15("QY_15_HYTZ_NOT_AUDIT_CREATE","会议通知","");//弹窗:查看该会议详情 diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/ManagementMessageEnums.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/ManagementMessageEnums.java index 12fae14d..6949f126 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/ManagementMessageEnums.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/ManagementMessageEnums.java @@ -19,7 +19,12 @@ public enum ManagementMessageEnums { MSG6("GL_6_DBTZ_ADD","打包通知","projectName"),//查看该项目详情,projectName MSG7("GL_7_DBTZ_CONTRACT","打包通知","projectName"),//查看项目详情,projectName MSG8("GL_8_HYTZ_ON_ACCESS_UPDATE","会议通知","meetingName,username1,username2,record"),//查看该参会人详情,meetingName,username1,username2 - MSG9("GL_9_QYTZ_CREATE","企业通知","");//企业列表页 + MSG9("GL_9_QYTZ_CREATE","企业通知",""),//企业列表页 + MSG10("GL_10_HYTZ_CREATE","会议通知","meetingName"),//参会人员列表页, meetingName + 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 private String code; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/MessageUrlEnums.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/MessageUrlEnums.java index d2ce082c..2cd1054b 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/MessageUrlEnums.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/enums/MessageUrlEnums.java @@ -21,6 +21,11 @@ public enum MessageUrlEnums { M_OPEN_TYPE7("M_OPEN_TYPE7","component","@comp/ProjectDetailModal"), M_OPEN_TYPE8("M_OPEN_TYPE8","url","/incomePayments/meetManage/SignUpInfoDetail"), M_OPEN_TYPE9("M_OPEN_TYPE9","url","/businessManagement/BusinessManagement"), + M_OPEN_TYPE10("M_OPEN_TYPE10","url","/businessManagement/BusinessManagement"),// todo 未改 + M_OPEN_TYPE11("M_OPEN_TYPE11","url","/businessManagement/BusinessManagement"),// todo 未改 + M_OPEN_TYPE12("M_OPEN_TYPE12","url","/businessManagement/BusinessManagement"),// todo 未改 + M_OPEN_TYPE13("M_OPEN_TYPE13","url","/businessManagement/BusinessManagement"),// todo 未改 + M_OPEN_TYPE14("M_OPEN_TYPE14","url","/businessManagement/BusinessManagement"),// todo 未改 // todo 待定企业端 C_OPEN_TYPE1("C_OPEN_TYPE1","href",""), C_OPEN_TYPE2("C_OPEN_TYPE2","component","MessagePage/MeetingDetailModal"), @@ -34,7 +39,10 @@ public enum MessageUrlEnums { C_OPEN_TYPE10("C_OPEN_TYPE10","href","https://www.kuaidi100.com/all/hhair56.shtml?mscomnu"), C_OPEN_TYPE11("C_OPEN_TYPE11","component","MessagePage/ProjectDetailModal"), C_OPEN_TYPE12("C_OPEN_TYPE12","component","MessagePage/ProjectDetailModal"), - C_OPEN_TYPE13("C_OPEN_TYPE13","href",""); + C_OPEN_TYPE13("C_OPEN_TYPE13","href",""),// todo 未改 + C_OPEN_TYPE14("C_OPEN_TYPE14","href",""),// todo 未改 + C_OPEN_TYPE15("C_OPEN_TYPE15","href","");// todo 未改 + /** * 业务类型(email:邮件 bpm:流程) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/SendMessageServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/SendMessageServiceImpl.java index 1132f415..1de119b5 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/SendMessageServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/SendMessageServiceImpl.java @@ -293,6 +293,36 @@ public class SendMessageServiceImpl implements SendMessageService { signature = "中汽中心标准所"; templateId = "1b9dd79bb217420fa25725feb1ffaef4"; break; + case "GL_10_HYTZ_CREATE": + //中汽中心标准所-管理端-会议通知-10 + sender = "8821092414406"; + signature = "中汽中心标准所"; + templateId = "c842206392b944998bf9dd2742570931"; + break; + case "GL_11_DZTZ_DZ_CREATE": + //中汽中心标准所-管理端-到账通知-11 + sender = "8821092414406"; + signature = "中汽中心标准所"; + templateId = "908238343aa94bab9d3921f77e98431d"; + break; + case "GL_12_KPTZ_KP_CREATE": + //中汽中心标准所-管理端-开票通知-12 + sender = "8821092414406"; + signature = "中汽中心标准所"; + templateId = "626041c1823240b99f7aad68aa2bd9ec"; + break; + case "GL_13_YJTZ_PJ_CREATE": + //中汽中心标准所-管理端-邮寄通知-13 + sender = "8821092414406"; + signature = "中汽中心标准所"; + templateId = "b933c487581146f38a7a7bf306b8aa0e"; + break; + case "GL_14_YJTZ_HT_CREATE": + //中汽中心标准所-管理端-邮寄通知-14 + sender = "8821092414406"; + signature = "中汽中心标准所"; + templateId = "6f054af3cfc345168e1e2e3cbf03403b"; + break; case "QY_1_HYTZ_WORK_GROUP_CREATE": //中汽中心标准所-企业端-会议通知-1 sender = "8821092414406"; @@ -367,13 +397,25 @@ public class SendMessageServiceImpl implements SendMessageService { //中汽中心标准所-企业端-文件通知-12 sender = "8821092414406"; signature = "中汽中心标准所"; - templateId = "e1a089109aaa4820927d488613171b54";//todo 审核不通过 + templateId = "e1a089109aaa4820927d488613171b54"; break; - case "QY_13_HYTZ_FBW_CREATE": - //中汽中心标准所-企业端-会议通知-13 + case "QY_13_JFTZ_DZ_CREATE": + //中汽中心标准所-企业端-缴费通知-13 sender = "8821092414406"; signature = "中汽中心标准所"; - templateId = "926e49e09008438b88d80849fe9f5bbb"; + templateId = "8beb893a9ce64444a71019c9eec6e310"; + break; + case "QY_14_KPTZ_KP_CREATE": + //中汽中心标准所-企业端-开票通知-14 + sender = "8821092414406"; + signature = "中汽中心标准所"; + templateId = "9895707d70584324b3ff398b362a83e6"; + break; + case "QY_15_HYTZ_NOT_AUDIT_CREATE": + //中汽中心标准所-企业端-会议通知-15 + sender = "8821092414406"; + signature = "中汽中心标准所"; + templateId = "5f438a655ed148c69f9d17e881112017"; break; default: throw new JeroBootException("codeType flase."); From 136230322223bbb2ce830713d2da96a874a14f3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Wed, 27 Oct 2021 15:41:38 +0800 Subject: [PATCH 05/11] =?UTF-8?q?=E6=99=AE=E9=80=9A=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=EF=BC=8C=E5=B7=A5=E4=BD=9C=E7=BB=84=E9=A1=B9=E7=9B=AE=E9=80=89?= =?UTF-8?q?=E6=8B=A9=E5=90=88=E5=90=8C=E7=BC=96=E5=8F=B7=E5=8F=98=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/PayWorkingGroupSubItem.java | 6 ++++ .../PayWorkingGroupSubItemServiceImpl.java | 35 +++++++++++++++++-- 2 files changed, 39 insertions(+), 2 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayWorkingGroupSubItem.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayWorkingGroupSubItem.java index 7a204712..00f6bc9a 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayWorkingGroupSubItem.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/entity/PayWorkingGroupSubItem.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.jero.common.aspect.annotation.Dict; +import com.jero.contract.entity.PayIncomeContract; import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; import org.springframework.format.annotation.DateTimeFormat; @@ -229,4 +230,9 @@ public class PayWorkingGroupSubItem implements Serializable { @TableField(exist = false) @ApiModelProperty(value = "运行年份") private String year; + /** + * 合同数据 + */ + @TableField(exist = false) + private PayIncomeContract payIncomeContract; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java index 81a0b4c9..29ca3c6f 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java @@ -16,6 +16,8 @@ import com.jero.company.entity.PayContactsManagement; import com.jero.company.service.IPayCompanyManagementService; import com.jero.company.service.IPayContactsManagementService; import com.jero.contract.entity.PayIncomeContract; +import com.jero.contract.entity.PayIncomeContractAssociated; +import com.jero.contract.service.IPayIncomeContractAssociatedService; import com.jero.contract.service.IPayIncomeContractService; import com.jero.meeting.entity.PayMeetingRemindRecord; import com.jero.meeting.service.IPayMeetingRemindRecordService; @@ -43,7 +45,6 @@ import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; -import java.io.IOException; import java.util.*; import java.util.stream.Collectors; @@ -81,7 +82,8 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl queryPageList(Page page, PayWorkingGroupSubItem payWorkingGroupSubitem,String paymentDate) { @@ -492,6 +494,17 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl"); + }else{ + // 合同编号验证 + LambdaQueryWrapper queryPayIncomeContract = new LambdaQueryWrapper(); + queryPayIncomeContract.eq(PayIncomeContract::getContractNum,p.getContractNum()); + queryPayIncomeContract.eq(PayIncomeContract::getSignedCompanyId,p.getChargeCompanyId()); + List listPayIncomeContract = payIncomeContractService.list(queryPayIncomeContract); + if(CollectionUtils.isEmpty(listPayIncomeContract)){ + msg.append("第").append(count + 3).append("行:合同号不存在,请修改。
"); + }else{ + p.setPayIncomeContract(listPayIncomeContract.get(0)); + } } } if (Objects.equals(p.getChargeWay(), PayProjectCommon.CHARGE_WAY3)) { @@ -512,6 +525,7 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl"); } } + p.setChargeUse(PayProjectCommon.CHARGE_USE1); p.setPack(PayProjectCommon.PACKAGING0); p.setInAccount(PayProjectCommon.IN_ACCOUNT0); p.setMakeInvoice(PayProjectCommon.MAKE_INVOICE0); @@ -527,6 +541,23 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl{ + PayIncomeContract payIncomeContract = p.getPayIncomeContract(); + // 合同存在 && 合同状态不为草稿,不为未通过 关联合同 + PayIncomeContractAssociated payIncomeContractAssociated = new PayIncomeContractAssociated(); + payIncomeContractAssociated.setContractId(payIncomeContract.getId()); + payIncomeContractAssociated.setProjectType(Integer.parseInt(PayProjectCommon.PROJECT_TYPE2)); + payIncomeContractAssociated.setProjectId(p.getId()); + payIncomeContractAssociatedService.save(payIncomeContractAssociated); + // 关联了合同,判断合同是否打包,更新项目打包状态,添加打包 + if(Objects.equals(payIncomeContract.getPack(),PayProjectCommon.PACKAGING1)){ + payPackCompanyProjectService.setPack(p.getChargeCompanyId(),p.getContactsIdOne(),payIncomeContract.getPackYear(),p.getId(),PayProjectCommon.PROJECT_TYPE2,payIncomeContract.getPack()); + LambdaUpdateWrapper update = new LambdaUpdateWrapper<>(); + update.eq(PayWorkingGroupSubItem::getId,p.getId()); + update.set(PayWorkingGroupSubItem::getPack,PayProjectCommon.PACKAGING1); + payWorkingGroupSubItemService.update(update); + } + }); } } }else{ From 0f6ac2b1dbd359ada676e5bc598fe8cd14402f5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Wed, 27 Oct 2021 17:51:59 +0800 Subject: [PATCH 06/11] =?UTF-8?q?=E5=90=88=E5=90=8C=E5=85=B3=E8=81=94?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=8F=98=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/PayIncomeContractServiceImpl.java | 69 ++++++++++--------- .../impl/PayPayMemberProjectServiceImpl.java | 3 + ...PayPayMemberProjectSubitemServiceImpl.java | 16 +++++ 3 files changed, 54 insertions(+), 34 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java index 6e1489ae..b3065051 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java @@ -46,6 +46,7 @@ import com.jero.modules.system.service.ISysUserService; import com.jero.pack.common.PackCommon; import com.jero.pack.entity.PayPackCompanyProject; import com.jero.pack.service.IPayPackCompanyProjectService; +import com.jero.project.common.PayProjectCommon; import com.jero.project.entity.PayCommonProject; import com.jero.project.entity.PayWorkingGroup; import com.jero.project.entity.PayWorkingGroupSubItem; @@ -353,17 +354,16 @@ public class PayIncomeContractServiceImpl extends ServiceImpl updatePayCommonProject = new LambdaUpdateWrapper<>(); + updatePayCommonProject.set(PayCommonProject::getUpdateBy,sysUser.getUsername()); + updatePayCommonProject.set(PayCommonProject::getUpdateTime,new Date()); // 合同为打包 if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){ // 查询打包项目来源是否为收入合同 @@ -616,14 +618,12 @@ public class PayIncomeContractServiceImpl extends ServiceImpl updatePayCommonProject = new LambdaUpdateWrapper<>(); - updatePayCommonProject.set(PayCommonProject::getUpdateBy,sysUser.getUsername()); - updatePayCommonProject.set(PayCommonProject::getUpdateTime,new Date()); updatePayCommonProject.set(PayCommonProject::getPack,PayIncomeContractCommon.PACK0); - updatePayCommonProject.eq(PayCommonProject::getId,payIncomeContractAssociated.getProjectId()); - payCommonProjectService.update(updatePayCommonProject); } } + updatePayCommonProject.eq(PayCommonProject::getId,payIncomeContractAssociated.getProjectId()); + updatePayCommonProject.set(PayCommonProject::getContractNum,null); + payCommonProjectService.update(updatePayCommonProject); break; case PayIncomeContractCommon.PROJECT_TYPE2: // 工作组项目 @@ -633,7 +633,9 @@ public class PayIncomeContractServiceImpl extends ServiceImpl updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>(); + updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateBy,sysUser.getUsername()); + updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateTime,new Date()); // 合同为打包 if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){ // 查询打包项目来源是否为收入合同 @@ -644,14 +646,12 @@ public class PayIncomeContractServiceImpl extends ServiceImpl updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>(); - updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateBy,sysUser.getUsername()); - updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateTime,new Date()); updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getPack,PayIncomeContractCommon.PACK0); - updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getId,listPayWorkingGroupSubItem.getId()); - payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem); } } + updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getId,listPayWorkingGroupSubItem.getId()); + updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getContractNum,null); + payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem); break; case PayIncomeContractCommon.PROJECT_TYPE3: // 会议项目 @@ -682,6 +682,9 @@ public class PayIncomeContractServiceImpl extends ServiceImpl updatePayMemberProjectSubitem = new LambdaUpdateWrapper<>(); + updatePayMemberProjectSubitem.set(PayMemberProjectSubitem::getUpdateBy,sysUser.getUsername()); + updatePayMemberProjectSubitem.set(PayMemberProjectSubitem::getUpdateTime,new Date()); // 合同为打包 if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){ // 查询打包项目来源是否为收入合同 @@ -692,14 +695,12 @@ public class PayIncomeContractServiceImpl extends ServiceImpl updatePayMemberProjectSubitem = new LambdaUpdateWrapper<>(); - updatePayMemberProjectSubitem.set(PayMemberProjectSubitem::getUpdateBy,sysUser.getUsername()); - updatePayMemberProjectSubitem.set(PayMemberProjectSubitem::getUpdateTime,new Date()); updatePayMemberProjectSubitem.set(PayMemberProjectSubitem::getPack,PayIncomeContractCommon.PACK0); - updatePayMemberProjectSubitem.eq(PayMemberProjectSubitem::getId,payMemberProjectSubitem.getId()); - memberProjectSubitemService.update(updatePayMemberProjectSubitem); } } + updatePayMemberProjectSubitem.eq(PayMemberProjectSubitem::getId,payMemberProjectSubitem.getId()); + updatePayMemberProjectSubitem.set(PayMemberProjectSubitem::getContractNo,null); + memberProjectSubitemService.update(updatePayMemberProjectSubitem); break; case PayIncomeContractCommon.PROJECT_TYPE5: // 标协会员 diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectServiceImpl.java index 1281c286..a0c10f37 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectServiceImpl.java @@ -14,10 +14,13 @@ import com.jero.member.service.IPayMemberProjectService; import com.jero.member.service.IPayMemberProjectSubitemService; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.mapper.SysUserMapper; +import com.jero.project.common.PayProjectCommon; +import com.jero.project.entity.PayCommonProject; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; +import java.util.Objects; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.transaction.annotation.Transactional; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectSubitemServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectSubitemServiceImpl.java index 279029cf..8304c1c9 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectSubitemServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/PayPayMemberProjectSubitemServiceImpl.java @@ -18,6 +18,7 @@ import com.jero.contract.service.IPayIncomeContractService; import com.jero.pack.entity.PayPackCompanyProject; import com.jero.pack.service.IPayPackCompanyProjectService; import com.jero.project.common.PayProjectCommon; +import com.jero.project.entity.PayCommonProject; import com.jero.temporary.entity.PayCompanyManagementTemporary; import com.jero.temporary.entity.PayContactsManagementTemporary; import com.jero.temporary.service.IPayCompanyManagementTemporaryService; @@ -203,6 +204,21 @@ public class PayPayMemberProjectSubitemServiceImpl extends ServiceImpl Date: Thu, 28 Oct 2021 16:08:35 +0800 Subject: [PATCH 07/11] =?UTF-8?q?=E5=90=88=E5=90=8C=E7=BC=96=E5=8F=B7?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=88=90=E4=B8=8B=E6=8B=89=E6=A1=86=EF=BC=8C?= =?UTF-8?q?=E5=81=9A=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/PayIncomeContractServiceImpl.java | 2 +- .../PayMemberProjectSubitemController.java | 24 +++++++++++++++++-- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java index b3065051..7d94d1de 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PayIncomeContractServiceImpl.java @@ -1115,7 +1115,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl importExcel(HttpServletRequest request, HttpServletResponse response) { String projectId = request.getParameter("projectId"); if (StringUtils.isBlank(projectId)) { @@ -253,6 +262,17 @@ public class PayMemberProjectSubitemController extends JeroController queryPayIncomeContract = new LambdaQueryWrapper(); + queryPayIncomeContract.eq(PayIncomeContract::getContractNum,projectSubitemExcel.getContractNo()); + queryPayIncomeContract.eq(PayIncomeContract::getSignedCompanyId,projectSubitemExcel.getCompanyId()); + List listPayIncomeContract = payIncomeContractService.list(queryPayIncomeContract); + if(CollectionUtils.isEmpty(listPayIncomeContract)){ + errorMessage.add("第" + errorRowNum + "行:合同号不存在"); + } + } + //复制属性 BeanUtils.copyProperties(projectSubitemExcel, projectSubitem); @@ -266,7 +286,7 @@ public class PayMemberProjectSubitemController extends JeroController"); + msg.append(s).append(",请修改!
"); } throw new JeroBootException(msg.toString()); } From a784851bbcdd85746faf12ad1d05d957bbb2d682 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Thu, 28 Oct 2021 16:34:47 +0800 Subject: [PATCH 08/11] =?UTF-8?q?=E6=94=AF=E5=87=BA=E5=90=88=E5=90=8C?= =?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 --- .../PaySpendingContractController.java | 7 +++--- .../mapper/PaySpendingContractMapper.java | 5 ++--- .../mapper/xml/PaySpendingContractMapper.xml | 22 ++++++++++++------- .../service/IPaySpendingContractService.java | 2 +- .../impl/PaySpendingContractServiceImpl.java | 5 +++-- 5 files changed, 24 insertions(+), 17 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java index 04225069..5a07d442 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/controller/PaySpendingContractController.java @@ -21,6 +21,7 @@ import com.jero.common.system.base.controller.JeroController; import com.jero.common.system.vo.LoginUser; import com.jero.common.util.DateUtils; import com.jero.common.util.oConvertUtils; +import com.jero.contract.common.PayIncomeContractCommon; import com.jero.contract.entity.*; import com.jero.contract.service.IPaySpendingContractAuditService; import com.jero.contract.service.IPaySpendingContractInstallmentService; @@ -317,14 +318,14 @@ public class PaySpendingContractController extends JeroController pageList = paySpendingContractService.queryList(paySpendingContract.getPrincipalId(), paySpendingContract.getContractNum(), - paySpendingContract.getContractName(),startTime,endTime); + List pageList = paySpendingContractService.queryList(paySpendingContract,startTime,endTime,chargeStatus); List exportList = null; // 过滤选中数据 diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java index 0eadf172..c01bfe8f 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/PaySpendingContractMapper.java @@ -36,8 +36,7 @@ public interface PaySpendingContractMapper extends BaseMapper queryList(@Param("principalId") String principalId, @Param("contractNum") String contractNum, - @Param("contractName") String contractName,@Param("startTime") String startTime, - @Param("endTime") String endTime); + List queryList(@Param("paySpendingContract") PaySpendingContract paySpendingContract + ,@Param("startTime") String startTime, @Param("endTime") String endTime,@Param("chargeStatus") String chargeStatus); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml index ae85f392..42c7841e 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/mapper/xml/PaySpendingContractMapper.xml @@ -58,10 +58,10 @@ AND principal_id = #{paySpendingContract.principalId} - AND aa.status = #{paySpendingContract.status} + AND psc.status = #{paySpendingContract.status} - AND aa.chargeStatus = #{chargeStatus} + AND psc.chargeStatus = #{chargeStatus} ORDER BY chargeStatus desc,create_time desc @@ -105,11 +105,11 @@ ) AS chargeStatus FROM pay_spending_contract psc - - AND contract_num LIKE CONCAT('%',CONCAT(#{contractNum},'%')) + + AND contract_num LIKE CONCAT('%',CONCAT(#{paySpendingContract.contractNum},'%')) - - AND contract_name LIKE CONCAT('%',CONCAT(#{contractName},'%')) + + AND contract_name LIKE CONCAT('%',CONCAT(#{paySpendingContract.contractName},'%')) AND DATE_FORMAT(create_time,'%Y-%m-%d') >= #{startTime} @@ -117,8 +117,14 @@ AND DATE_FORMAT(create_time,'%Y-%m-%d') <= #{endTime} - - AND principal_id = #{principalId} + + AND principal_id = #{paySpendingContract.principalId} + + + AND psc.status = #{paySpendingContract.status} + + + AND psc.chargeStatus = #{chargeStatus} ORDER BY chargeStatus desc,create_time desc diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java index 3789b2a3..e862f9a3 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPaySpendingContractService.java @@ -82,7 +82,7 @@ public interface IPaySpendingContractService extends IService queryList(String contractNum,String contractName,String startTime,String endTime); + List queryList(PaySpendingContract paySpendingContract,String startTime,String endTime,String chargeStatus); /** * @Description 审核 * @Author lqt diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java index b574b947..65b4e018 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/impl/PaySpendingContractServiceImpl.java @@ -549,6 +549,7 @@ public class PaySpendingContractServiceImpl extends ServiceImpl listPaySpendingContractInstallment = p.getListInstallment(); if(!CollectionUtils.isEmpty(listPaySpendingContractInstallment)){ @@ -568,8 +569,8 @@ public class PaySpendingContractServiceImpl extends ServiceImpl queryList(String principalId,String contractNum, String contractName, String startTime, String endTime) { - return paySpendingContractMapper.queryList(principalId, contractNum, contractName, startTime, endTime); + public List queryList(PaySpendingContract paySpendingContract,String startTime,String endTime,String chargeStatus) { + return paySpendingContractMapper.queryList( paySpendingContract, startTime, endTime, chargeStatus); } @Override From 84789d348c1c475eeb8c67acb45043c3dc3bacfc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Thu, 28 Oct 2021 16:50:35 +0800 Subject: [PATCH 09/11] =?UTF-8?q?1.=E6=89=93=E5=8C=85=E7=AE=A1=E7=90=86-?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=89=93=E5=8C=85=E9=A1=B9=E7=9B=AE-?= =?UTF-8?q?=E9=80=89=E6=8B=A9=E9=A1=B9=E7=9B=AE=E5=BC=B9=E6=A1=86=202.?= =?UTF-8?q?=E7=A5=A8=E6=8D=AE=E9=82=AE=E5=AF=84=E5=88=97=E8=A1=A8=203.?= =?UTF-8?q?=E5=88=B0=E8=B4=A6=E5=BC=80=E7=A5=A8=E5=88=97=E8=A1=A8=20?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=BC=81=E4=B8=9A=E8=81=94=E7=B3=BB=E4=BA=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pack/mapper/xml/PayPackCompanyProjectMapper.xml | 10 +++++----- .../payment/mapper/xml/PayPaymentRecordMapper.xml | 12 ++++++------ 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/pack/mapper/xml/PayPackCompanyProjectMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/pack/mapper/xml/PayPackCompanyProjectMapper.xml index 5abf6657..30ebd739 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/pack/mapper/xml/PayPackCompanyProjectMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/pack/mapper/xml/PayPackCompanyProjectMapper.xml @@ -130,7 +130,7 @@ - select p.id,p.charge_project, p.charge_use, p.principal_id,p.principal_name,p.charge_company_id,p.charge_company_temporary_name,p.receivable_amount,p.paid_amount,p.need_invoice,p.pack,p.in_account,p.make_invoice,p.mail,p.create_time,p.projectType,p.invoice_amount,p.mail_contacts_id,p.register_check_result + select p.id,p.charge_project, p.charge_use, p.principal_id,p.principal_name,p.charge_company_id,p.charge_company_temporary_name,p.receivable_amount,p.paid_amount,p.need_invoice,p.pack,p.in_account,p.make_invoice,p.mail,p.create_time,p.projectType,p.invoice_amount,p.mail_contacts_id,p.register_check_result,p.contacts_temporary_name from ( - select c.id,c.charge_project, c.charge_use, c.principal_id,c.principal_name,c.charge_company_id,c.charge_company_temporary_name,c.receivable_amount,c.paid_amount,c.need_invoice,c.pack,c.in_account,c.make_invoice,c.mail,c.create_time,1 as projectType,c.invoice_amount,c.mail_contacts_id,'' as register_check_result + select c.id,c.charge_project, c.charge_use, c.principal_id,c.principal_name,c.charge_company_id,c.charge_company_temporary_name,c.receivable_amount,c.paid_amount,c.need_invoice,c.pack,c.in_account,c.make_invoice,c.mail,c.create_time,1 as projectType,c.invoice_amount,c.mail_contacts_id,'' as register_check_result,c.contacts_temporary_name from pay_common_project c where c.receivable_amount ]]> 0 @@ -23,7 +23,7 @@ UNION ALL - select gsub.id,g.working_group_project, gsub.charge_use, g.principal_id_a,g.principal_name_a,gsub.charge_company_id,gsub.charge_company_temporary_name,gsub.receivable_amount,gsub.paid_amount,gsub.need_invoice,gsub.pack,gsub.in_account,gsub.make_invoice,gsub.mail,gsub.create_time,2,gsub.invoice_amount,gsub.mail_contacts_id,'' as register_check_result + select gsub.id,g.working_group_project, gsub.charge_use, g.principal_id_a,g.principal_name_a,gsub.charge_company_id,gsub.charge_company_temporary_name,gsub.receivable_amount,gsub.paid_amount,gsub.need_invoice,gsub.pack,gsub.in_account,gsub.make_invoice,gsub.mail,gsub.create_time,2,gsub.invoice_amount,gsub.mail_contacts_id,'' as register_check_result,gsub.contacts_temporary_name_one from pay_working_group g inner join pay_working_group_subitem gsub on g.id = gsub.working_group_id where @@ -40,7 +40,7 @@ UNION ALL - select sit.id,meeting.meeting_name,sit.charge_use, meeting.director_id, meeting.director_name,sit.company_id,sit.company_name,sit.amount_receivable,sit.paid_amount,sit.need_invoice,sit.pack,sit.in_account,sit.make_invoice,sit.mail,sit.create_time,3,sit.invoice_amount,sit.post_contact_id,sit.register_check_result + select sit.id,meeting.meeting_name,sit.charge_use, meeting.director_id, meeting.director_name,sit.company_id,sit.company_name,sit.amount_receivable,sit.paid_amount,sit.need_invoice,sit.pack,sit.in_account,sit.make_invoice,sit.mail,sit.create_time,3,sit.invoice_amount,sit.post_contact_id,sit.register_check_result,sit.company_contact_name from pay_meeting meeting inner join pay_meeting_situation sit on meeting.id = sit.meeting_id where @@ -57,7 +57,7 @@ UNION ALL - select msub.id,member.project_name,msub.charge_use,member.director_id,member.director_name,msub.company_id,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4,msub.invoice_amount,msub.post_contact_id,'' as register_check_result + select msub.id,member.project_name,msub.charge_use,member.director_id,member.director_name,msub.company_id,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4,msub.invoice_amount,msub.post_contact_id,'' as register_check_result,msub.company_contact_name from pay_member_project member inner join pay_member_project_subitem msub on member.id=msub.project_id where @@ -74,7 +74,7 @@ UNION ALL - select tmsub.id,tmember.project_name,tmsub.charge_use,'空','空',tmsub.company_id,tmsub.company_name,tmsub.amount_receivable,tmsub.paid_amount,tmsub.invoice_requirements,tmsub.pack,tmsub.in_account,tmsub.make_invoice,tmsub.mail,tmsub.create_time,5,tmsub.invoice_amount,tmsub.liaison_man_id,'' as register_check_result + select tmsub.id,tmember.project_name,tmsub.charge_use,'空','空',tmsub.company_id,tmsub.company_name,tmsub.amount_receivable,tmsub.paid_amount,tmsub.invoice_requirements,tmsub.pack,tmsub.in_account,tmsub.make_invoice,tmsub.mail,tmsub.create_time,5,tmsub.invoice_amount,tmsub.liaison_man_id,'' as register_check_result,tmsub.liaison_man from tb_member_project tmember inner join tb_member_project_subitem tmsub on tmember.id=tmsub.project_id where From 6ebf03cc09764bbce0b7218f51bc5845e0fa7cd5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Thu, 28 Oct 2021 18:28:55 +0800 Subject: [PATCH 10/11] =?UTF-8?q?=E6=B6=88=E6=81=AF=E5=8F=98=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/PayMailBillServiceImpl.java | 48 +++++++-- .../impl/PayPaymentRecordServiceImpl.java | 99 ++++++++++++++++++- 2 files changed, 136 insertions(+), 11 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/mail/service/impl/PayMailBillServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/mail/service/impl/PayMailBillServiceImpl.java index f7f5088b..f63c6832 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/mail/service/impl/PayMailBillServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/mail/service/impl/PayMailBillServiceImpl.java @@ -9,8 +9,12 @@ 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.ManagementMessageEnums; import com.jero.common.exception.JeroBootException; import com.jero.common.service.ProjectDetailService; +import com.jero.common.service.SendMessageService; +import com.jero.common.system.vo.LoginUser; import com.jero.common.util.AuthenticationUtils; import com.jero.common.util.PasswordUtil; import com.jero.company.entity.PayCompanyManagement; @@ -55,16 +59,15 @@ import com.jero.temporary.entity.PayCompanyManagementTemporary; import com.jero.temporary.service.IPayCompanyManagementTemporaryService; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; +import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Objects; +import java.text.SimpleDateFormat; +import java.util.*; import java.util.stream.Collectors; /** @@ -104,13 +107,11 @@ public class PayMailBillServiceImpl extends ServiceImpl map = new HashMap<>(); + map.put("projectName", payMailBill.getProjectName()); + map.put("time", sdf.format(payMailBill.getCreateTime())); + map.put("amount", String.valueOf(payMailBill.getInvoiceAmount())); + map.put("num", String.valueOf(payMailBill.getBillNo())); + sendMessageDTO.setFromUser(sysUser.getUsername()); + sendMessageDTO.setToUser(sysUserInfo.getUsername()); + sendMessageDTO.setTemplateCode(ManagementMessageEnums.MSG12.getCode()); + sendMessageDTO.setTemplateParam(map); + sendMessageDTO.setBusType("M_OPEN_TYPE12"); +// JSONObject json = new JSONObject(); +// if(payWorkingGroupDistributionRecord.getProjectType() == PayProjectCommon.PROJECT_TYPE_FILE1){ +// json.put("id",listStr.get(0).getSubId()); +// }else if(payWorkingGroupDistributionRecord.getProjectType() == PayProjectCommon.PROJECT_TYPE_FILE2){ +// json.put("id",listStr.get(0).getProjectId()); +// } +// sendMessageDTO.setBusId(json.toJSONString()); + sendMessageService.SendMessageService(sendMessageDTO); + } + return Result.OK("添加成功!"); } 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 fc459b05..90176d61 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 @@ -1,36 +1,54 @@ package com.jero.payment.service.impl; +import com.alibaba.fastjson.JSONObject; 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.RoleCommon; +import com.jero.common.dto.SendMessageDTO; +import com.jero.common.enums.ManagementMessageEnums; 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.PasswordUtil; import com.jero.common.util.oConvertUtils; import com.jero.company.entity.PayCompanyManagement; import com.jero.company.service.IPayCompanyManagementService; import com.jero.contract.common.PayIncomeContractCommon; +import com.jero.meeting.entity.PayMeeting; import com.jero.meeting.entity.PayMeetingSituation; import com.jero.meeting.mapper.PayMeetingSituationMapper; +import com.jero.meeting.service.IPayMeetingService; +import com.jero.member.entity.PayMemberProject; import com.jero.member.entity.PayMemberProjectSubitem; import com.jero.member.entity.TbMemberProjectSubitem; import com.jero.member.mapper.PayMemberProjectSubitemMapper; import com.jero.member.mapper.TbMemberProjectSubitemMapper; +import com.jero.member.service.IPayMemberProjectService; +import com.jero.modules.system.entity.SysUser; +import com.jero.modules.system.service.ISysUserService; import com.jero.payment.entity.PayPaymentRecord; import com.jero.payment.mapper.PayPaymentRecordMapper; 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.common.util.AuthenticationUtils; +import com.jero.project.service.IPayWorkingGroupService; import com.jero.project.vo.PayCommonProjectOutput; import com.jero.standards.memberinfo.entity.MemberInfo; import com.jero.temporary.entity.PayCompanyManagementTemporary; import com.jero.temporary.service.IPayCompanyManagementTemporaryService; import org.apache.commons.beanutils.PropertyUtils; +import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; +import org.apache.shiro.SecurityUtils; import org.jeecgframework.poi.excel.def.NormalExcelConstants; import org.jeecgframework.poi.excel.entity.ExportParams; import org.jeecgframework.poi.excel.entity.enmus.ExcelType; @@ -42,6 +60,7 @@ import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.math.BigDecimal; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -72,6 +91,16 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl map = new HashMap<>(); + map.put("projectName", project); + map.put("time", sdf.format(payPaymentRecord.getCreateTime())); + map.put("amount", String.valueOf(payPaymentRecord.getAmountReceived())); + sendMessageDTO.setFromUser(sysUser.getUsername()); + sendMessageDTO.setToUser(sysUserInfo.getUsername()); + sendMessageDTO.setTemplateCode(ManagementMessageEnums.MSG11.getCode()); + sendMessageDTO.setTemplateParam(map); + sendMessageDTO.setBusType("M_OPEN_TYPE11"); +// JSONObject json = new JSONObject(); +// if(payWorkingGroupDistributionRecord.getProjectType() == PayProjectCommon.PROJECT_TYPE_FILE1){ +// json.put("id",listStr.get(0).getSubId()); +// }else if(payWorkingGroupDistributionRecord.getProjectType() == PayProjectCommon.PROJECT_TYPE_FILE2){ +// json.put("id",listStr.get(0).getProjectId()); +// } +// sendMessageDTO.setBusId(json.toJSONString()); + sendMessageService.SendMessageService(sendMessageDTO); + } } /** From 3ce7e5200901c9d8bec3b554852b20e8cfce622f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Fri, 29 Oct 2021 10:23:27 +0800 Subject: [PATCH 11/11] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E5=8F=98=E6=9B=B4?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9C=AC=E6=9C=88=E6=96=B0=E5=A2=9E=E6=94=B6?= =?UTF-8?q?=E6=AC=BE=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/jero/common/mapper/xml/ProjectDetailMapper.xml | 3 --- 1 file changed, 3 deletions(-) diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/mapper/xml/ProjectDetailMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/common/mapper/xml/ProjectDetailMapper.xml index 9056b56c..baa15669 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/common/mapper/xml/ProjectDetailMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/mapper/xml/ProjectDetailMapper.xml @@ -177,9 +177,6 @@ UNION ALL select count(*) as num from pay_member_project_subitem msub where DATE_FORMAT(create_time,'%Y-%m') = #{time} - - UNION ALL - select count(*) as num from tb_member_project_subitem tmsub where DATE_FORMAT(create_time,'%Y-%m') = #{time} ) a \ No newline at end of file