diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java b/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java index bdf2ef7f..52222e72 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/company/controller/PayContactsManagementController.java @@ -16,11 +16,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; 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.PasswordUtil; import com.jero.common.util.ValidUtil; import com.jero.common.util.oConvertUtils; -import com.jero.company.common.PayCompanyManagementCommon; import com.jero.company.common.PayContactsManagementCommon; import com.jero.company.entity.PayCompanyManagement; import com.jero.company.entity.PayContactsManagement; @@ -29,7 +27,6 @@ import com.jero.company.service.IPayContactsManagementService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; -import org.apache.shiro.SecurityUtils; import org.jeecgframework.poi.excel.ExcelImportCheckUtil; import org.jeecgframework.poi.excel.ExcelImportUtil; import org.jeecgframework.poi.excel.def.NormalExcelConstants; 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 633d4b68..5bde7a79 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 @@ -102,7 +102,16 @@ public class PayIncomeContractController extends JeroController 50){ + return Result.error("合同编号长度不能大于50个字符!"); + } + if(!StringUtils.isBlank(payIncomeContract.getContractName()) && payIncomeContract.getContractName().length() > 50){ + return Result.error("合同名称长度不能大于50个字符!"); + } + if(!StringUtils.isBlank(projectName) && projectName.length() > 50){ + return Result.error("关联项目长度不能大于50个字符!"); + } + // todo 缺少会议,会员项目 Page page = new Page<>(pageNo, pageSize); IPage pageList = payIncomeContractService.queryPageList(page, payIncomeContract,chargeStatus,projectName,startTime,endTime); pageList.getRecords().forEach(p->{ @@ -140,14 +149,14 @@ public class PayIncomeContractController extends JeroController associated(@RequestBody PayIncomeContractAssociatedInput input) { - List list = payIncomeContractService.associated(input); + public Result associated(@RequestBody List listPayIncomeContractAssociated) { + List list = payIncomeContractService.associated(listPayIncomeContractAssociated); return Result.OK("关联成功!",list); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PayIncomeContractInstallment.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PayIncomeContractInstallment.java index 7b7747b0..a17c009d 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PayIncomeContractInstallment.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/entity/PayIncomeContractInstallment.java @@ -44,8 +44,8 @@ public class PayIncomeContractInstallment implements Serializable { @ApiModelProperty(value = "应收金额") private java.lang.String accountsReceivableAmount; /**应收时间*/ - @Excel(name = "应收时间", width = 15, format = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "应收时间", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") @DateTimeFormat(pattern="yyyy-MM-dd") @ApiModelProperty(value = "应收时间") private java.util.Date accountsReceivableTime; @@ -54,8 +54,8 @@ public class PayIncomeContractInstallment implements Serializable { @ApiModelProperty(value = "实收金额") private java.lang.String paidAmount; /**实收时间*/ - @Excel(name = "实收时间", width = 15, format = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "实收时间", width = 15, format = "yyyy-MM-dd") + @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd") @DateTimeFormat(pattern="yyyy-MM-dd") @ApiModelProperty(value = "实收时间") private java.util.Date paidTime; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPayIncomeContractService.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPayIncomeContractService.java index c4a1cc3e..35bd1da6 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPayIncomeContractService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/service/IPayIncomeContractService.java @@ -54,11 +54,11 @@ public interface IPayIncomeContractService extends IService { * @Description 收入合同-关联 * @Author lqt * @Date 2021/9/5 - * @Param input 关联项目 + * @Param list 关联项目 * @Return * @Exception */ - List associated(PayIncomeContractAssociatedInput input); + List associated(List listPayIncomeContractAssociated); /** * @Description 取消关联 * @Author lqt 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 f61934b7..102062a1 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 @@ -93,10 +93,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl listPayIncomeContractInstallment = new ArrayList<>(); - if(!StringUtils.isBlank(input.getInstallment())){ - listPayIncomeContractInstallment = JSONArray.parseArray(input.getInstallment(),PayIncomeContractInstallment.class); + if(!CollectionUtils.isEmpty(input.getInstallment())){ + listPayIncomeContractInstallment = input.getInstallment(); } try { LambdaQueryWrapper query = new LambdaQueryWrapper<>(); @@ -142,7 +139,6 @@ public class PayIncomeContractServiceImpl extends ServiceImpl listPayIncomeContractInstallment = new ArrayList<>(); - if(!StringUtils.isBlank(input.getInstallment())){ - listPayIncomeContractInstallment = JSONArray.parseArray(input.getInstallment(),PayIncomeContractInstallment.class); + if(!CollectionUtils.isEmpty(input.getInstallment())){ + listPayIncomeContractInstallment = input.getInstallment(); } try { LambdaQueryWrapper query = new LambdaQueryWrapper<>(); @@ -236,11 +229,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl associated(PayIncomeContractAssociatedInput input) { - if(StringUtils.isBlank(input.getAssociated())){ - throw new JeroBootException("关联项目不能为空!"); - } - List listPayIncomeContractAssociated = JSONArray.parseArray(input.getAssociated(),PayIncomeContractAssociated.class); + public List associated(List listPayIncomeContractAssociated) { if(CollectionUtils.isEmpty(listPayIncomeContractAssociated)){ throw new JeroBootException("关联项目不能为空!"); } @@ -255,13 +244,7 @@ public class PayIncomeContractServiceImpl extends ServiceImpl queryPayIncomeContractAssociated = new LambdaQueryWrapper<>(); - queryPayIncomeContractAssociated.eq(PayIncomeContractAssociated::getContractId,p.getContractId()); - queryPayIncomeContractAssociated.eq(PayIncomeContractAssociated::getProjectId,p.getProjectId()); - List listPayIncomeContractAssociatedNew = payIncomeContractAssociatedService.list(queryPayIncomeContractAssociated); - if(!CollectionUtils.isEmpty(listPayIncomeContractAssociatedNew)){ - throw new JeroBootException("项目已被其他合同关联!"); - } + // 查看项目类型 switch (String.valueOf(p.getProjectType())){ case PayIncomeContractCommon.PROJECT_TYPE1: @@ -271,6 +254,12 @@ public class PayIncomeContractServiceImpl extends ServiceImpl updatePayCommonProject = new LambdaUpdateWrapper<>(); @@ -301,13 +290,19 @@ public class PayIncomeContractServiceImpl extends ServiceImpl updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>(); + updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getPack,PayIncomeContractCommon.PACK1); + updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getId,listPayWorkingGroupSubItem.get(0).getId()); + payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem); + // todo 添加打包企业 + } // 更新项目id p.setProjectId(listPayWorkingGroupSubItem.get(0).getId()); - // 打包,将关联项目设置成打包 - LambdaUpdateWrapper updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>(); - updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getPack,PayIncomeContractCommon.PACK1); - updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getId,listPayWorkingGroupSubItem.get(0).getId()); - payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem); projectOutput.setProjectId(listPayWorkingGroupSubItem.get(0).getId()); projectOutput.setProjectType(PayIncomeContractCommon.PROJECT_TYPE2); projectOutput.setChargeProject(payWorkingGroup.getWorkingGroupProject()); @@ -331,6 +326,16 @@ public class PayIncomeContractServiceImpl extends ServiceImpl query = new LambdaQueryWrapper<>(); + query.eq(PayIncomeContractAssociated::getContractId,contractId); + query.eq(PayIncomeContractAssociated::getProjectId,projectId); + List list = payIncomeContractAssociatedService.list(query); + if(!CollectionUtils.isEmpty(list)){ + throw new JeroBootException("项目已被其他合同关联!"); + } + } + @Override @Transactional public void cancelAssociated(PayIncomeContractAssociated payIncomeContractAssociated) { diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PayIncomeContractInput.java b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PayIncomeContractInput.java index 862186a4..913a7390 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PayIncomeContractInput.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/contract/vo/PayIncomeContractInput.java @@ -1,9 +1,12 @@ package com.jero.contract.vo; +import com.jero.contract.entity.PayIncomeContract; +import com.jero.contract.entity.PayIncomeContractInstallment; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.io.Serializable; +import java.util.List; @Data public class PayIncomeContractInput implements Serializable { @@ -11,10 +14,10 @@ public class PayIncomeContractInput implements Serializable { * 合同数据 */ @ApiModelProperty(value = "合同数据") - private String contract; + private PayIncomeContract contract; /** * 分期信息 */ @ApiModelProperty(value = "分期信息") - private String installment; + private List installment; }