From f148054711c1fa8581f4e9d710010cf4f97d434a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E7=90=A6=E6=B6=9B?= <18222067976@163.com> Date: Sat, 18 Sep 2021 11:56:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B6=E5=85=A5=E5=90=88=E5=90=8C=E5=85=B3?= =?UTF-8?q?=E8=81=94=E4=BC=9A=E5=91=98=E9=A1=B9=E7=9B=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/IPayIncomeContractService.java | 12 +++- .../impl/PayIncomeContractServiceImpl.java | 10 +++ .../PayMemberProjectController.java | 4 ++ .../PayMemberProjectSubitemController.java | 7 +- .../impl/PayPayMemberProjectServiceImpl.java | 34 +++------ ...PayPayMemberProjectSubitemServiceImpl.java | 63 ++++++++++------- .../impl/TbMemberProjectServiceImpl.java | 32 +++------ .../TbMemberProjectSubitemServiceImpl.java | 70 +++++++++++++------ .../PayCommonProjectController.java | 36 ++-------- .../PayWorkingGroupSubItemController.java | 54 +------------- .../service/IPayCommonProjectService.java | 18 +++++ .../IPayWorkingGroupSubItemService.java | 20 ++++++ .../impl/PayCommonProjectServiceImpl.java | 60 ++++++++++++++-- .../impl/PayWorkingGroupServiceImpl.java | 11 ++- .../PayWorkingGroupSubItemServiceImpl.java | 57 ++++++++++++++- 15 files changed, 295 insertions(+), 193 deletions(-) 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 d83648e1..43fd0bb3 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 @@ -8,6 +8,7 @@ import com.jero.contract.entity.PayIncomeContractAssociated; import com.jero.contract.entity.PayIncomeContractAudit; import com.jero.contract.vo.PayIncomeContractInput; import com.jero.contract.vo.ProjectOutput; +import com.jero.project.entity.PayWorkingGroupSubItem; import java.util.List; @@ -130,7 +131,16 @@ public interface IPayIncomeContractService extends IService { */ PayIncomeContract checkContractNum(String contractNum); /** - * @Description 校验项目是否已关联合同 + * @Description 校验项目是否已关联合同 抛异常 + * @Author lqt + * @Date 2021/9/18 + * @Param + * @Return + * @Exception + */ + void getPayIncomeContractAssociated(List list); + /** + * @Description 校验项目是否已关联合同 ,返回合同信息 * @Author lqt * @Date 2021/9/9 * @Param projectId 项目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 e2ba9c0a..65204e6d 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 @@ -796,6 +796,16 @@ public class PayIncomeContractServiceImpl extends ServiceImpl list) { + LambdaQueryWrapper queryPayIncomeContractAssociated = new LambdaQueryWrapper<>(); + queryPayIncomeContractAssociated.in(PayIncomeContractAssociated::getProjectId,list); + List listPayIncomeContractAssociated = payIncomeContractAssociatedService.list(queryPayIncomeContractAssociated); + if(!CollectionUtils.isEmpty(listPayIncomeContractAssociated)){ + throw new JeroBootException("已关联合同不可删除!"); + } + } + @Override public PayIncomeContract checkPayIncomeContractAssociated(String projectId) { // 检查项目是否关联了合同 diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/PayMemberProjectController.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/PayMemberProjectController.java index fb78ef63..d4db4f1a 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/PayMemberProjectController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/PayMemberProjectController.java @@ -20,6 +20,7 @@ import com.jero.member.service.ITbMemberProjectSubitemService; import com.jero.project.common.PayProjectCommon; import lombok.extern.slf4j.Slf4j; import com.jero.common.system.base.controller.JeroController; +import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; @@ -104,6 +105,9 @@ public class PayMemberProjectController extends JeroController page = new Page<>(pageNo, pageSize); IPage list = tbMemberProjectSubitemService.queryListByCompany(page,companyId,PayProjectCommon.PROJECT_TYPE4,payIncomeContract.getPack(),payIncomeContract.getPackYear()); + if(!CollectionUtils.isEmpty(list.getRecords())){ + List listTbMemberProjectSubitem = list.getRecords(); + } return Result.OK(list); } return Result.OK(null); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/PayMemberProjectSubitemController.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/PayMemberProjectSubitemController.java index f238469e..53fe9421 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/PayMemberProjectSubitemController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/PayMemberProjectSubitemController.java @@ -1,16 +1,11 @@ package com.jero.member.controller; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - -import cn.hutool.core.math.MathUtil; import cn.hutool.core.util.NumberUtil; import com.jero.common.api.vo.Result; import com.jero.common.exception.JeroBootException; 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 ec962ab9..ccfcd30c 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 @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.exception.JeroBootException; import com.jero.contract.entity.PayIncomeContractAssociated; import com.jero.contract.service.IPayIncomeContractAssociatedService; +import com.jero.contract.service.IPayIncomeContractService; import com.jero.member.entity.PayMemberProject; import com.jero.member.entity.PayMemberProjectSubitem; import com.jero.member.mapper.PayMemberProjectMapper; @@ -17,11 +18,13 @@ import com.jero.modules.system.mapper.SysUserMapper; import com.jero.project.entity.PayWorkGroupSubletStatistics; import com.jero.statistics.entity.AllProjectStatistics; import com.jero.statistics.entity.AllProjectStatisticsSearch; +import com.jero.project.common.PayProjectCommon; import com.jero.project.entity.PayWorkingGroupSubItem; 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 java.util.stream.Collectors; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -39,13 +42,14 @@ import javax.annotation.Resource; public class PayPayMemberProjectServiceImpl extends ServiceImpl implements IPayMemberProjectService { @Resource private SysUserMapper userMapper; - @Resource private PayMemberProjectMapper payMemberProjectMapper; @Autowired private IPayIncomeContractAssociatedService payIncomeContractAssociatedService; @Resource private IPayMemberProjectSubitemService memberProjectSubitemService; + @Autowired + private IPayIncomeContractService payIncomeContractService; /** * 保存 * @@ -94,30 +98,12 @@ public class PayPayMemberProjectServiceImpl extends ServiceImpl query = new LambdaQueryWrapper<>(); query.eq(PayMemberProjectSubitem::getProjectId, id); List listPayMemberProjectSubitem = memberProjectSubitemService.list(query); - getPayIncomeContractAssociated(listPayMemberProjectSubitem); + if(!CollectionUtils.isEmpty(listPayMemberProjectSubitem)) { + throw new JeroBootException("会员项目下存在企业,不可进行删除!"); + } removeById(id); } - /** - * @Description 校验是存在关联合同的项目 - * @Author lqt - * @Date 2021/9/8 - * @Param - * @Return - * @Exception - */ - private void getPayIncomeContractAssociated(List listPayMemberProjectSubitem){ - if(!CollectionUtils.isEmpty(listPayMemberProjectSubitem)){ - List list = listPayMemberProjectSubitem.stream().map(PayMemberProjectSubitem::getId).collect(Collectors.toList()); - LambdaQueryWrapper queryPayIncomeContractAssociated = new LambdaQueryWrapper<>(); - queryPayIncomeContractAssociated.in(PayIncomeContractAssociated::getProjectId,list); - List listPayIncomeContractAssociated = payIncomeContractAssociatedService.list(queryPayIncomeContractAssociated); - if(!CollectionUtils.isEmpty(listPayIncomeContractAssociated)){ - throw new JeroBootException("已关联合同不可删除!"); - } - } - } - /** * 批量删除 * @@ -129,7 +115,9 @@ public class PayPayMemberProjectServiceImpl extends ServiceImpl query = new LambdaQueryWrapper<>(); query.in(PayMemberProjectSubitem::getProjectId, ids); List listPayMemberProjectSubitem = memberProjectSubitemService.list(query); - getPayIncomeContractAssociated(listPayMemberProjectSubitem); + if(!CollectionUtils.isEmpty(listPayMemberProjectSubitem)) { + throw new JeroBootException("会员项目下存在企业,不可进行删除!"); + } removeByIds(ids); } 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 7840f381..59544824 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 @@ -7,12 +7,11 @@ import com.jero.common.service.ProjectDetailService; import com.jero.common.util.ValidUtil; import com.jero.common.vo.ProjectStatusVO; 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.pack.entity.PayPackCompanyProject; import com.jero.pack.service.IPayPackCompanyProjectService; import com.jero.project.common.PayProjectCommon; import com.jero.temporary.entity.PayCompanyManagementTemporary; @@ -30,6 +29,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; +import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.Objects; @@ -63,6 +64,8 @@ public class PayPayMemberProjectSubitemServiceImpl extends ServiceImpl query = new LambdaQueryWrapper<>(); - query.eq(PayIncomeContractAssociated::getProjectId, id); - PayIncomeContractAssociated payIncomeContractAssociated = payIncomeContractAssociatedService.getOne(query); - if (!Objects.isNull(payIncomeContractAssociated)) { - throw new JeroBootException("已关联合同不可删除!"); - } - } catch (Exception e) { - log.error("会员项目-批量删除异常", e); - throw new JeroBootException("已关联合同不可删除!"); - } - delectTemporaryById(id); + deleteProject(id); + // delectTemporaryById(id); removeById(id); } @@ -283,23 +276,41 @@ public class PayPayMemberProjectSubitemServiceImpl extends ServiceImpl ids) { for (String id : ids) { - try { - LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - query.eq(PayIncomeContractAssociated::getProjectId, id); - PayIncomeContractAssociated payIncomeContractAssociated = payIncomeContractAssociatedService.getOne(query); - if (!Objects.isNull(payIncomeContractAssociated)) { - throw new JeroBootException("已关联合同不可删除!"); - } - } catch (Exception e) { - log.error("普通项目管理-批量删除异常", e); - throw new JeroBootException("已关联合同不可删除!"); - } - delectTemporaryById(id); + deleteProject(id); + // delectTemporaryById(id); } removeByIds(ids); } + + /** + * @Description 删除项目打包关联,临时企业、联系信息 + * @Author lqt + * @Date 2021/9/18 + * @Param id 项目id + * @Return + * @Exception + */ + private void deleteProject(String id){ + PayMemberProjectSubitem payMemberProjectSubitem = memberProjectSubitemService.getById(id); + // 到账!=0 || 开票!=0 || 邮寄!=0 + if(!Objects.equals(payMemberProjectSubitem.getInAccount(), PayProjectCommon.IN_ACCOUNT0) + || !Objects.equals(payMemberProjectSubitem.getMakeInvoice(),PayProjectCommon.MAKE_INVOICE0) + || !Objects.equals(payMemberProjectSubitem.getMail(),PayProjectCommon.MAIL0)){ + throw new JeroBootException("项目已有到账信息不可删除!"); + } + // 校验项目是否已关联合同 抛异常 + payIncomeContractService.getPayIncomeContractAssociated(Collections.singletonList(payMemberProjectSubitem.getId())); + // 如果已打报,同步删除打包关联 + LambdaUpdateWrapper update = new LambdaUpdateWrapper<>(); + update.eq(PayPackCompanyProject::getProjectId,payMemberProjectSubitem.getId()); + payPackCompanyProjectService.remove(update); + // 删除企业联系人临时数据 + companyManagementTemporaryService.removeById(payMemberProjectSubitem.getCompanyTemporaryId()); + contactsManagementTemporaryService.removeByIds(Arrays.asList(payMemberProjectSubitem.getCompanyContactTemporaryId(),payMemberProjectSubitem.getPostContactTemporaryId())); + } + /** * 通过id查询 */ diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectServiceImpl.java index 0ca8ddc1..42dcf7b1 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectServiceImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.jero.common.exception.JeroBootException; import com.jero.contract.entity.PayIncomeContractAssociated; import com.jero.contract.service.IPayIncomeContractAssociatedService; +import com.jero.contract.service.IPayIncomeContractService; import com.jero.member.entity.PayMemberProjectSubitem; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -34,12 +35,12 @@ import javax.annotation.Resource; @Service public class TbMemberProjectServiceImpl extends ServiceImpl implements ITbMemberProjectService { - @Autowired - private IPayIncomeContractAssociatedService payIncomeContractAssociatedService; @Resource private ITbMemberProjectSubitemService tbMemberProjectSubitemService; @Resource private TbMemberProjectMapper tbMemberProjectMapper; + @Autowired + private IPayIncomeContractService payIncomeContractService; /** * 保存 */ @@ -64,28 +65,11 @@ public class TbMemberProjectServiceImpl extends ServiceImpl query = new LambdaQueryWrapper<>(); query.eq(TbMemberProjectSubitem::getProjectId, id); List listTbMemberProjectSubitem = tbMemberProjectSubitemService.list(query); - getPayIncomeContractAssociated(listTbMemberProjectSubitem); + if(!CollectionUtils.isEmpty(listTbMemberProjectSubitem)) { + throw new JeroBootException("标协会员项目下存在企业,不可进行删除!"); + } removeById(id); } - /** - * @Description 校验是存在关联合同的项目 - * @Author lqt - * @Date 2021/9/8 - * @Param - * @Return - * @Exception - */ - private void getPayIncomeContractAssociated(List listTbMemberProjectSubitem){ - if(!CollectionUtils.isEmpty(listTbMemberProjectSubitem)){ - List list = listTbMemberProjectSubitem.stream().map(TbMemberProjectSubitem::getId).collect(Collectors.toList()); - LambdaQueryWrapper queryPayIncomeContractAssociated = new LambdaQueryWrapper<>(); - queryPayIncomeContractAssociated.in(PayIncomeContractAssociated::getProjectId,list); - List listPayIncomeContractAssociated = payIncomeContractAssociatedService.list(queryPayIncomeContractAssociated); - if(!CollectionUtils.isEmpty(listPayIncomeContractAssociated)){ - throw new JeroBootException("已关联合同不可删除!"); - } - } - } /** * 批量删除 @@ -95,7 +79,9 @@ public class TbMemberProjectServiceImpl extends ServiceImpl query = new LambdaQueryWrapper<>(); query.in(TbMemberProjectSubitem::getProjectId, ids); List listTbMemberProjectSubitem = tbMemberProjectSubitemService.list(query); - getPayIncomeContractAssociated(listTbMemberProjectSubitem); + if(!CollectionUtils.isEmpty(listTbMemberProjectSubitem)) { + throw new JeroBootException("标协会员项目下存在企业,不可进行删除!"); + } removeByIds(ids); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectSubitemServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectSubitemServiceImpl.java index 2357134e..1f75c703 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectSubitemServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/impl/TbMemberProjectSubitemServiceImpl.java @@ -1,16 +1,27 @@ package com.jero.member.service.impl; 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.jero.common.exception.JeroBootException; import com.jero.contract.entity.PayIncomeContractAssociated; import com.jero.contract.service.IPayIncomeContractAssociatedService; +import com.jero.contract.service.IPayIncomeContractService; +import com.jero.member.entity.PayMemberProjectSubitem; import com.jero.member.entity.TbMemberProjectSubitem; import com.jero.member.mapper.TbMemberProjectSubitemMapper; import com.jero.member.service.ITbMemberProjectSubitemService; +import com.jero.pack.entity.PayPackCompanyProject; +import com.jero.pack.service.IPayPackCompanyProjectService; +import com.jero.project.common.PayProjectCommon; +import com.jero.temporary.service.IPayCompanyManagementTemporaryService; +import com.jero.temporary.service.IPayContactsManagementTemporaryService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; + +import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.Objects; @@ -31,6 +42,16 @@ public class TbMemberProjectSubitemServiceImpl extends ServiceImpl query = new LambdaQueryWrapper<>(); - query.eq(PayIncomeContractAssociated::getProjectId, id); - PayIncomeContractAssociated payIncomeContractAssociated = payIncomeContractAssociatedService.getOne(query); - if (!Objects.isNull(payIncomeContractAssociated)) { - throw new JeroBootException("已关联合同不可删除!"); - } - } catch (Exception e) { - log.error("标协会员-批量删除异常", e); - throw new JeroBootException("已关联合同不可删除!"); - } + deleteProject(id); removeById(id); } @@ -72,21 +83,36 @@ public class TbMemberProjectSubitemServiceImpl extends ServiceImpl ids) { ids.forEach(p->{ - try { - LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - query.eq(PayIncomeContractAssociated::getProjectId, p); - PayIncomeContractAssociated payIncomeContractAssociated = payIncomeContractAssociatedService.getOne(query); - if (!Objects.isNull(payIncomeContractAssociated)) { - throw new JeroBootException("已关联合同不可删除!"); - } - } catch (Exception e) { - log.error("标协会员-批量删除异常", e); - throw new JeroBootException("已关联合同不可删除!"); - } + deleteProject(p); }); removeByIds(ids); } + + /** + * @Description 删除项目打包关联,临时企业、联系信息 + * @Author lqt + * @Date 2021/9/18 + * @Param id 项目id + * @Return + * @Exception + */ + private void deleteProject(String id){ + TbMemberProjectSubitem tbMemberProjectSubitem = tbMemberProjectSubitemService.getById(id); + // 到账!=0 || 开票!=0 || 邮寄!=0 + if(!Objects.equals(tbMemberProjectSubitem.getInAccount(), PayProjectCommon.IN_ACCOUNT0) + || !Objects.equals(tbMemberProjectSubitem.getMakeInvoice(),PayProjectCommon.MAKE_INVOICE0) + || !Objects.equals(tbMemberProjectSubitem.getMail(),PayProjectCommon.MAIL0)){ + throw new JeroBootException("项目已有到账信息不可删除!"); + } + // 校验项目是否已关联合同 抛异常 + payIncomeContractService.getPayIncomeContractAssociated(Collections.singletonList(tbMemberProjectSubitem.getId())); + // 如果已打报,同步删除打包关联 + LambdaUpdateWrapper update = new LambdaUpdateWrapper<>(); + update.eq(PayPackCompanyProject::getProjectId,tbMemberProjectSubitem.getId()); + payPackCompanyProjectService.remove(update); + } + /** * 通过id查询 */ diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayCommonProjectController.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayCommonProjectController.java index b825ffd1..da051033 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayCommonProjectController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayCommonProjectController.java @@ -11,7 +11,9 @@ import javax.servlet.http.HttpServletResponse; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.jero.common.api.vo.Result; +import com.jero.common.exception.JeroBootException; import com.jero.common.service.ProjectDetailService; import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.base.controller.JeroController; @@ -23,6 +25,7 @@ import com.jero.contract.service.IPayIncomeContractAssociatedService; import com.jero.contract.service.IPayIncomeContractService; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.service.ISysUserService; +import com.jero.pack.entity.PayPackCompanyProject; import com.jero.pack.service.IPayPackCompanyProjectService; import com.jero.project.common.PayProjectCommon; import com.jero.project.service.IPayCommonProjectService; @@ -220,21 +223,7 @@ public class PayCommonProjectController extends JeroController delete(@RequestParam(name="id") String id) { - if(StringUtils.isBlank(id)){ - return Result.error("id不能为空!"); - } - try { - LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - query.eq(PayIncomeContractAssociated::getProjectId,id); - PayIncomeContractAssociated payIncomeContractAssociated = payIncomeContractAssociatedService.getOne(query); - if(!Objects.isNull(payIncomeContractAssociated)){ - return Result.error("已关联合同不可删除!"); - } - }catch (Exception e){ - log.error("普通项目管理-批量删除异常",e); - return Result.error("已关联合同不可删除!"); - } - payCommonProjectService.removeById(id); + payCommonProjectService.delete(id); return Result.OK("删除成功!"); } @@ -247,22 +236,7 @@ public class PayCommonProjectController extends JeroController deleteBatch(@RequestParam(name="ids") String ids) { - if(StringUtils.isBlank(ids)){ - return Result.error("id不能为空!"); - } - String[] s = ids.split(","); - for (String s1 : s) { - if(StringUtils.isBlank(s1)){ - return Result.error("id不能为空!"); - } - } - LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - query.in(PayIncomeContractAssociated::getProjectId,Arrays.asList(ids.split(","))); - List listPayIncomeContractAssociated = payIncomeContractAssociatedService.list(query); - if(!CollectionUtils.isEmpty(listPayIncomeContractAssociated)){ - return Result.error("已关联合同不可删除!"); - } - this.payCommonProjectService.removeByIds(Arrays.asList(ids.split(","))); + payCommonProjectService.deleteBatch(ids); return Result.OK("批量删除成功!"); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupSubItemController.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupSubItemController.java index f490faf9..ff123407 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupSubItemController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/controller/PayWorkingGroupSubItemController.java @@ -3,24 +3,13 @@ package com.jero.project.controller; import java.util.*; import java.util.stream.Collectors; import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.jero.common.api.vo.Result; -import com.jero.common.aspect.annotation.AutoLog; import com.jero.common.service.ProjectDetailService; -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.DictModel; import com.jero.common.util.PasswordUtil; import com.jero.common.util.ValidUtil; import com.jero.common.vo.ProjectDetailVO; -import com.jero.contract.entity.PayIncomeContractAssociated; -import com.jero.contract.service.IPayIncomeContractAssociatedService; import com.jero.modules.message.handle.impl.EmailSendMsgHandle; import com.jero.project.common.PayProjectCommon; import com.jero.project.entity.*; @@ -31,16 +20,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.project.vo.SetChargeInput; import com.jero.temporary.entity.PayContactsManagementTemporary; import com.jero.temporary.service.IPayContactsManagementTemporaryService; -import com.jero.util.AmountUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; -import org.apache.poi.hssf.record.DVALRecord; -import org.jeecgframework.poi.excel.def.NormalExcelConstants; -import org.jeecgframework.poi.excel.entity.ExportParams; -import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.core.env.Environment; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; import io.swagger.annotations.Api; @@ -56,15 +39,11 @@ import io.swagger.annotations.ApiOperation; @RequestMapping("/project/payWorkingGroupSubitem") @Slf4j public class PayWorkingGroupSubItemController extends JeroController { - @Autowired - private ISysBaseAPI sysBaseAPI; @Autowired private IPayWorkingGroupSubItemService payWorkingGroupSubItemService; @Autowired private ProjectDetailService projectDetailService; @Autowired - private IPayIncomeContractAssociatedService payIncomeContractAssociatedService; - @Autowired private IPayContactsManagementTemporaryService payContactsManagementTemporaryService; @Autowired private IPayWorkingGroupService payWorkingGroupService; @@ -188,21 +167,7 @@ public class PayWorkingGroupSubItemController extends JeroController delete(@RequestParam(name = "id") String id) { - if (StringUtils.isBlank(id)) { - return Result.error("id不能为空!"); - } - try { - LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - query.eq(PayIncomeContractAssociated::getProjectId, id); - PayIncomeContractAssociated payIncomeContractAssociated = payIncomeContractAssociatedService.getOne(query); - if (!Objects.isNull(payIncomeContractAssociated)) { - return Result.error("已关联合同不可删除!"); - } - } catch (Exception e) { - log.error("普通项目管理-批量删除异常", e); - return Result.error("已关联合同不可删除!"); - } - payWorkingGroupSubItemService.removeById(id); + payWorkingGroupSubItemService.delete(id); return Result.OK("删除成功!"); } @@ -215,22 +180,7 @@ public class PayWorkingGroupSubItemController extends JeroController deleteBatch(@RequestParam(name = "ids") String ids) { - if (StringUtils.isBlank(ids)) { - return Result.error("id不能为空!"); - } - String[] s = ids.split(","); - for (String s1 : s) { - if (StringUtils.isBlank(s1)) { - return Result.error("id不能为空!"); - } - } - LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - query.in(PayIncomeContractAssociated::getProjectId, Arrays.asList(ids.split(","))); - List listPayIncomeContractAssociated = payIncomeContractAssociatedService.list(query); - if (!CollectionUtils.isEmpty(listPayIncomeContractAssociated)) { - return Result.error("已关联合同不可删除!"); - } - payWorkingGroupSubItemService.removeByIds(Arrays.asList(ids.split(","))); + payWorkingGroupSubItemService.deleteBatch(ids); return Result.OK("批量删除成功!"); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayCommonProjectService.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayCommonProjectService.java index d37320ab..4ad3ea4b 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayCommonProjectService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayCommonProjectService.java @@ -45,6 +45,24 @@ public interface IPayCommonProjectService extends IService { * @Exception */ void editPayCommonProject(PayCommonProject payCommonProject); + /** + * @Description 根据id删除 + * @Author lqt + * @Date 2021/9/18 + * @Param + * @Return + * @Exception + */ + void delete(String id); + /** + * @Description 批量删除 + * @Author lqt + * @Date 2021/9/18 + * @Param + * @Return + * @Exception + */ + void deleteBatch(String ids); /** * 全所统计 diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayWorkingGroupSubItemService.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayWorkingGroupSubItemService.java index f575bb7f..bdcbd18c 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayWorkingGroupSubItemService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/IPayWorkingGroupSubItemService.java @@ -79,4 +79,24 @@ public interface IPayWorkingGroupSubItemService extends IService importExcelStatistics(String id); + /** + * @Description 根据id删除 + * @Author lqt + * @Date 2021/9/18 + * @Param + * @Return + * @Exception + */ + void delete(String id); + + /** + * @Description 批量删除 + * @Author lqt + * @Date 2021/9/18 + * @Param + * @Return + * @Exception + */ + void deleteBatch(String ids); + } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayCommonProjectServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayCommonProjectServiceImpl.java index 1c03138d..4d33d849 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayCommonProjectServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayCommonProjectServiceImpl.java @@ -16,6 +16,7 @@ import com.jero.contract.service.IPayIncomeContractService; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.service.ISysUserService; import com.jero.pack.entity.PayPackCompany; +import com.jero.pack.entity.PayPackCompanyProject; import com.jero.pack.service.IPayPackCompanyProjectService; import com.jero.pack.service.IPayPackCompanyService; import com.jero.project.common.PayProjectCommon; @@ -40,7 +41,9 @@ import org.springframework.transaction.annotation.Isolation; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; +import java.lang.reflect.Array; import java.util.Arrays; +import java.util.Collections; import java.util.List; import java.util.Objects; @@ -56,7 +59,6 @@ public class PayCommonProjectServiceImpl extends ServiceImpl update = new LambdaUpdateWrapper<>(); + update.eq(PayPackCompanyProject::getProjectId,payCommonProject.getId()); + payPackCompanyProjectService.remove(update); + // 删除企业联系人临时数据 + payCompanyManagementTemporaryService.removeById(payCommonProject.getChargeCompanyTemporaryId()); + payContactsManagementTemporaryService.removeByIds(Arrays.asList(payCommonProject.getContactsTemporaryId(),payCommonProject.getMailContactsTemporaryId())); + } + /** * @Description 插入企业信息,联系人信息到临时表,更新项目记录 * @Author lqt diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupServiceImpl.java index beab81f1..78d7e66f 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.exception.JeroBootException; import com.jero.contract.entity.PayIncomeContractAssociated; import com.jero.contract.service.IPayIncomeContractAssociatedService; +import com.jero.contract.service.IPayIncomeContractService; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.service.ISysUserService; import com.jero.project.entity.*; @@ -49,6 +50,8 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl queryPageList(Page page, PayWorkingGroup payWorkingGroup) { @@ -71,7 +74,9 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl query = new LambdaQueryWrapper<>(); query.eq(PayWorkingGroupSubItem::getWorkingGroupId,id); List listPayWorkingGroupSubItem = payWorkingGroupSubItemService.list(query); - getPayIncomeContractAssociated(listPayWorkingGroupSubItem); + if(!CollectionUtils.isEmpty(listPayWorkingGroupSubItem)) { + throw new JeroBootException("工作组下存在企业,不可进行删除!"); + } payWorkingGroupService.removeById(id); LambdaUpdateWrapper updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>(); updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getWorkingGroupId,id); @@ -84,7 +89,9 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl query = new LambdaQueryWrapper<>(); query.in(PayWorkingGroupSubItem::getWorkingGroupId, ids); List listPayWorkingGroupSubItem = payWorkingGroupSubItemService.list(query); - getPayIncomeContractAssociated(listPayWorkingGroupSubItem); + if(!CollectionUtils.isEmpty(listPayWorkingGroupSubItem)) { + throw new JeroBootException("工作组下存在企业,不可进行删除!"); + } payWorkingGroupService.removeByIds(ids); LambdaUpdateWrapper updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>(); updatePayWorkingGroupSubItem.in(PayWorkingGroupSubItem::getWorkingGroupId,ids); 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 0b524a3f..403fd8b0 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 @@ -4,6 +4,7 @@ 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.jero.common.api.vo.Result; import com.jero.common.exception.JeroBootException; import com.jero.common.service.ProjectDetailService; import com.jero.common.util.ValidUtil; @@ -13,8 +14,10 @@ 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.pack.entity.PayPackCompanyProject; import com.jero.pack.service.IPayPackCompanyProjectService; import com.jero.project.common.PayProjectCommon; import com.jero.project.entity.*; @@ -77,8 +80,6 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl update = new LambdaUpdateWrapper<>(); + update.eq(PayPackCompanyProject::getProjectId,payWorkingGroupSubItem.getId()); + payPackCompanyProjectService.remove(update); + // 删除企业联系人临时数据 + payCompanyManagementTemporaryService.removeById(payWorkingGroupSubItem.getChargeCompanyTemporaryId()); + payContactsManagementTemporaryService.removeByIds(Arrays.asList(payWorkingGroupSubItem.getContactsTemporaryIdOne(),payWorkingGroupSubItem.getContactsTemporaryIdTwo(),payWorkingGroupSubItem.getContactsTemporaryIdThree(),payWorkingGroupSubItem.getMailContactsTemporaryId())); + } + /** * @Description 插入企业信息,联系人信息到临时表,更新项目记录 * @Author lqt