diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/company/service/impl/PayCompanyManagementServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/company/service/impl/PayCompanyManagementServiceImpl.java index 4576dcc5..b4d082d1 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/company/service/impl/PayCompanyManagementServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/company/service/impl/PayCompanyManagementServiceImpl.java @@ -33,13 +33,17 @@ import com.jero.company.vo.UpdateInvoicePram; import com.jero.contract.entity.PayIncomeContract; 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.IPayMemberProjectSubitemService; +import com.jero.member.service.ITbMemberProjectSubitemService; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.service.ISysUserService; import com.jero.pack.entity.PayPackCompany; import com.jero.pack.service.IPayPackCompanyService; import com.jero.project.entity.PayCommonProject; import com.jero.project.entity.PayWorkingGroupSubItem; +import com.jero.project.service.AnnualDataLockingService; import com.jero.project.service.IPayCommonProjectService; import com.jero.project.service.IPayWorkingGroupSubItemService; import com.jero.temporary.entity.PayCompanyManagementTemporary; @@ -93,6 +97,12 @@ public class PayCompanyManagementServiceImpl extends ServiceImpl allYear = annualDataLockingService.getAllYear(); //需要更新的临时企业id List companyTemporaryIdList = new ArrayList<>(); // 更新普通项目 LambdaQueryWrapper quaryPayCommonProject = new LambdaQueryWrapper<>(); quaryPayCommonProject.eq(PayCommonProject::getChargeCompanyId,payCompanyManagement.getId()); - quaryPayCommonProject.eq(PayCommonProject::getYear,thisYear); - quaryPayCommonProject.and( - a -> { - a.eq(PayCommonProject::getPaidAmount, BigDecimal.ZERO) - .or() - .isNull(PayCommonProject::getPaidAmount); - }); - quaryPayCommonProject.and( - a -> { - a.eq(PayCommonProject::getInvoiceAmount, BigDecimal.ZERO) - .or() - .isNull(PayCommonProject::getInvoiceAmount); - }); - quaryPayCommonProject.and( - a -> { - a.eq(PayCommonProject::getConfirmAmount, BigDecimal.ZERO) - .or() - .isNull(PayCommonProject::getConfirmAmount); - }); + quaryPayCommonProject.notIn(PayCommonProject::getYear,allYear); + List list = payCommonProjectService.list(quaryPayCommonProject); List collect = list.stream().map(PayCommonProject::getChargeCompanyTemporaryId).collect(Collectors.toList()); + List idList = list.stream().map(PayCommonProject::getId).collect(Collectors.toList()); companyTemporaryIdList.addAll(collect); - if (!collect.isEmpty()){ + if (!idList.isEmpty()){ LambdaUpdateWrapper updatePayCommonProject = new LambdaUpdateWrapper<>(); - updatePayCommonProject.in(PayCommonProject::getChargeCompanyTemporaryId,collect); + updatePayCommonProject.in(PayCommonProject::getId,idList); updatePayCommonProject.set(PayCommonProject::getChargeCompanyTemporaryName,payCompanyManagement.getCompanyName()); payCommonProjectService.update(updatePayCommonProject); } // 更新工作组 QueryWrapper queryPayWorkingGroupSubItem = new QueryWrapper<>(); - queryPayWorkingGroupSubItem.eq("pwg.year",thisYear); - queryPayWorkingGroupSubItem.lambda().eq(PayWorkingGroupSubItem::getChargeCompanyId,payCompanyManagement.getId()) - .and( - a -> { - a.eq(PayWorkingGroupSubItem::getPaidAmount, BigDecimal.ZERO) - .or() - .isNull(PayWorkingGroupSubItem::getPaidAmount); - }) - .and( - a -> { - a.eq(PayWorkingGroupSubItem::getInvoiceAmount, BigDecimal.ZERO) - .or() - .isNull(PayWorkingGroupSubItem::getInvoiceAmount); - }) - .and( - a -> { - a.eq(PayWorkingGroupSubItem::getConfirmAmount, BigDecimal.ZERO) - .or() - .isNull(PayWorkingGroupSubItem::getConfirmAmount); - }); + queryPayWorkingGroupSubItem.notIn("pwg.year",allYear); + queryPayWorkingGroupSubItem.lambda().eq(PayWorkingGroupSubItem::getChargeCompanyId,payCompanyManagement.getId()); + List workingGroupSubItemList = payWorkingGroupSubItemService.queryList(queryPayWorkingGroupSubItem); List collect1 = workingGroupSubItemList.stream().map(PayWorkingGroupSubItem::getChargeCompanyTemporaryId).collect(Collectors.toList()); + List idList1 = workingGroupSubItemList.stream().map(PayWorkingGroupSubItem::getId).collect(Collectors.toList()); companyTemporaryIdList.addAll(collect1); - if (!collect1.isEmpty()){ + if (!idList1.isEmpty()){ LambdaUpdateWrapper updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>(); - updatePayWorkingGroupSubItem.in(PayWorkingGroupSubItem::getChargeCompanyId,collect1); + updatePayWorkingGroupSubItem.in(PayWorkingGroupSubItem::getId,idList1); updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getChargeCompanyTemporaryName,payCompanyManagement.getCompanyName()); payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem); } // 更新会员 QueryWrapper queryPayMemberProjectSubitem = new QueryWrapper<>(); - queryPayMemberProjectSubitem.eq("pmp.particular_year",thisYear); - queryPayMemberProjectSubitem.lambda().eq(PayMemberProjectSubitem::getCompanyId,payCompanyManagement.getId()) - .and( - a -> { - a.eq(PayMemberProjectSubitem::getPaidAmount, BigDecimal.ZERO) - .or() - .isNull(PayMemberProjectSubitem::getPaidAmount); - }) - .and( - a -> { - a.eq(PayMemberProjectSubitem::getInvoiceAmount, BigDecimal.ZERO) - .or() - .isNull(PayMemberProjectSubitem::getInvoiceAmount); - }) - .and( - a -> { - a.eq(PayMemberProjectSubitem::getConfirmAmount, BigDecimal.ZERO) - .or() - .isNull(PayMemberProjectSubitem::getConfirmAmount); - }); + queryPayMemberProjectSubitem.notIn("pmp.particular_year",allYear) ; + queryPayMemberProjectSubitem.lambda().eq(PayMemberProjectSubitem::getCompanyId,payCompanyManagement.getId()); + List payMemberProjectSubitems = memberProjectSubitemService.queryPageListCompany(queryPayMemberProjectSubitem); List collect2 = payMemberProjectSubitems.stream().map(PayMemberProjectSubitem::getCompanyTemporaryId).collect(Collectors.toList()); + List idList2 = payMemberProjectSubitems.stream().map(PayMemberProjectSubitem::getId).collect(Collectors.toList()); companyTemporaryIdList.addAll(collect2); - if (!collect2.isEmpty()){ + if (!idList2.isEmpty()){ LambdaUpdateWrapper updatePayMemberProjectSubitem = new LambdaUpdateWrapper<>(); - updatePayMemberProjectSubitem.in(PayMemberProjectSubitem::getCompanyId,payCompanyManagement.getId()); + updatePayMemberProjectSubitem.in(PayMemberProjectSubitem::getId,idList2); updatePayMemberProjectSubitem.set(PayMemberProjectSubitem::getCompanyName,payCompanyManagement.getCompanyName()); memberProjectSubitemService.update(updatePayMemberProjectSubitem); } + // 更新标协会员 + QueryWrapper queryTbMemberProjectSubitem = new QueryWrapper<>(); + queryTbMemberProjectSubitem.notIn("tmp.year",allYear); + queryTbMemberProjectSubitem.lambda().eq(TbMemberProjectSubitem::getCompanyId,payCompanyManagement.getId()); - + List tbMemberProjectSubitems = tbMemberProjectSubitemMapper.queryListCompanyYear(queryTbMemberProjectSubitem); + List collect3 = tbMemberProjectSubitems.stream().map(TbMemberProjectSubitem::getCompanyTemporaryId).collect(Collectors.toList()); + List idList3 = tbMemberProjectSubitems.stream().map(TbMemberProjectSubitem::getId).collect(Collectors.toList()); + companyTemporaryIdList.addAll(collect3); + if (!idList3.isEmpty()){ + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.in(TbMemberProjectSubitem::getId,idList3); + updateWrapper.set(TbMemberProjectSubitem::getCompanyName,payCompanyManagement.getCompanyName()); + tbMemberProjectSubitemService.update(updateWrapper); + } // 更新临时数据 if (!companyTemporaryIdList.isEmpty()) { LambdaUpdateWrapper updatePayCompanyManagementTemporary = new LambdaUpdateWrapper<>(); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/TbMemberProjectSubitemMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/TbMemberProjectSubitemMapper.java index 45899468..563dad3e 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/TbMemberProjectSubitemMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/TbMemberProjectSubitemMapper.java @@ -63,4 +63,6 @@ public interface TbMemberProjectSubitemMapper extends BaseMapper getAllYearInfoByCompanyId(@Param("companyId") String companyId); List listByYear(@Param("year") String year); + + List queryListCompanyYear(@Param(Constants.WRAPPER) QueryWrapper queryTbMemberProjectSubitem); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/xml/TbMemberProjectSubitemMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/xml/TbMemberProjectSubitemMapper.xml index e687f393..5801f0c9 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/xml/TbMemberProjectSubitemMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/mapper/xml/TbMemberProjectSubitemMapper.xml @@ -204,4 +204,11 @@ LEFT JOIN tb_member_project tmp on tmp.id = tmps.project_id where tmp.year = #{year} + + \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/AnnualDataLockingMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/AnnualDataLockingMapper.java index 1147feb7..bbf03d88 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/AnnualDataLockingMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/AnnualDataLockingMapper.java @@ -1,9 +1,12 @@ package com.jero.project.mapper; +import java.util.List; import org.apache.ibatis.annotations.Param; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.jero.project.entity.AnnualDataLocking; +import java.time.Year; + /** * *@author liJiaRao @@ -12,5 +15,7 @@ import com.jero.project.entity.AnnualDataLocking; public interface AnnualDataLockingMapper extends BaseMapper { AnnualDataLocking countByYear(@Param("year")String year); + List getYear(); + } \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/AnnualDataLockingMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/AnnualDataLockingMapper.xml index 34b4a4bd..f903e833 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/AnnualDataLockingMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/mapper/xml/AnnualDataLockingMapper.xml @@ -26,4 +26,10 @@ + + + \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/AnnualDataLockingService.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/AnnualDataLockingService.java index 05e6d181..7724d9bb 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/AnnualDataLockingService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/AnnualDataLockingService.java @@ -386,6 +386,14 @@ public class AnnualDataLockingService extends ServiceImpl getAllYear(){ + return baseMapper.getYear(); + } + /** * 查询年份是否存在 */