fix 87782 资料网员--会员项目--封锁后会员单位部分信息还是更新了
This commit is contained in:
+42
-67
@@ -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<PayCompanyManag
|
||||
private SendMessageService sendMessageService;
|
||||
@Resource
|
||||
private Environment env;
|
||||
@Resource
|
||||
private ITbMemberProjectSubitemService tbMemberProjectSubitemService;
|
||||
@Resource
|
||||
private TbMemberProjectSubitemMapper tbMemberProjectSubitemMapper;
|
||||
@Resource
|
||||
private AnnualDataLockingService annualDataLockingService;
|
||||
|
||||
@Override
|
||||
public void addMeeting(PayCompanyManagement payCompanyManagement) {
|
||||
@@ -748,107 +758,72 @@ public class PayCompanyManagementServiceImpl extends ServiceImpl<PayCompanyManag
|
||||
updatePayContactsManagement.eq(PayContactsManagement::getCompanyId,payCompanyManagement.getId());
|
||||
updatePayContactsManagement.set(PayContactsManagement::getCompanyName,payCompanyManagement.getCompanyName());
|
||||
payContactsManagementService.update(updatePayContactsManagement);
|
||||
int thisYear = DateUtil.thisYear();
|
||||
List<String> allYear = annualDataLockingService.getAllYear();
|
||||
//需要更新的临时企业id
|
||||
List<String> companyTemporaryIdList = new ArrayList<>();
|
||||
// 更新普通项目
|
||||
LambdaQueryWrapper<PayCommonProject> 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<PayCommonProject> list = payCommonProjectService.list(quaryPayCommonProject);
|
||||
List<String> collect = list.stream().map(PayCommonProject::getChargeCompanyTemporaryId).collect(Collectors.toList());
|
||||
List<String> idList = list.stream().map(PayCommonProject::getId).collect(Collectors.toList());
|
||||
companyTemporaryIdList.addAll(collect);
|
||||
if (!collect.isEmpty()){
|
||||
if (!idList.isEmpty()){
|
||||
LambdaUpdateWrapper<PayCommonProject> updatePayCommonProject = new LambdaUpdateWrapper<>();
|
||||
updatePayCommonProject.in(PayCommonProject::getChargeCompanyTemporaryId,collect);
|
||||
updatePayCommonProject.in(PayCommonProject::getId,idList);
|
||||
updatePayCommonProject.set(PayCommonProject::getChargeCompanyTemporaryName,payCompanyManagement.getCompanyName());
|
||||
payCommonProjectService.update(updatePayCommonProject);
|
||||
}
|
||||
|
||||
// 更新工作组
|
||||
QueryWrapper<PayWorkingGroupSubItem> 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<PayWorkingGroupSubItem> workingGroupSubItemList = payWorkingGroupSubItemService.queryList(queryPayWorkingGroupSubItem);
|
||||
List<String> collect1 = workingGroupSubItemList.stream().map(PayWorkingGroupSubItem::getChargeCompanyTemporaryId).collect(Collectors.toList());
|
||||
List<String> idList1 = workingGroupSubItemList.stream().map(PayWorkingGroupSubItem::getId).collect(Collectors.toList());
|
||||
companyTemporaryIdList.addAll(collect1);
|
||||
if (!collect1.isEmpty()){
|
||||
if (!idList1.isEmpty()){
|
||||
LambdaUpdateWrapper<PayWorkingGroupSubItem> updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>();
|
||||
updatePayWorkingGroupSubItem.in(PayWorkingGroupSubItem::getChargeCompanyId,collect1);
|
||||
updatePayWorkingGroupSubItem.in(PayWorkingGroupSubItem::getId,idList1);
|
||||
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getChargeCompanyTemporaryName,payCompanyManagement.getCompanyName());
|
||||
payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem);
|
||||
}
|
||||
|
||||
// 更新会员
|
||||
QueryWrapper<PayMemberProjectSubitem> 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<PayMemberProjectSubitem> payMemberProjectSubitems = memberProjectSubitemService.queryPageListCompany(queryPayMemberProjectSubitem);
|
||||
List<String> collect2 = payMemberProjectSubitems.stream().map(PayMemberProjectSubitem::getCompanyTemporaryId).collect(Collectors.toList());
|
||||
List<String> idList2 = payMemberProjectSubitems.stream().map(PayMemberProjectSubitem::getId).collect(Collectors.toList());
|
||||
companyTemporaryIdList.addAll(collect2);
|
||||
if (!collect2.isEmpty()){
|
||||
if (!idList2.isEmpty()){
|
||||
LambdaUpdateWrapper<PayMemberProjectSubitem> updatePayMemberProjectSubitem = new LambdaUpdateWrapper<>();
|
||||
updatePayMemberProjectSubitem.in(PayMemberProjectSubitem::getCompanyId,payCompanyManagement.getId());
|
||||
updatePayMemberProjectSubitem.in(PayMemberProjectSubitem::getId,idList2);
|
||||
updatePayMemberProjectSubitem.set(PayMemberProjectSubitem::getCompanyName,payCompanyManagement.getCompanyName());
|
||||
memberProjectSubitemService.update(updatePayMemberProjectSubitem);
|
||||
}
|
||||
// 更新标协会员
|
||||
QueryWrapper<TbMemberProjectSubitem> queryTbMemberProjectSubitem = new QueryWrapper<>();
|
||||
queryTbMemberProjectSubitem.notIn("tmp.year",allYear);
|
||||
queryTbMemberProjectSubitem.lambda().eq(TbMemberProjectSubitem::getCompanyId,payCompanyManagement.getId());
|
||||
|
||||
|
||||
List<TbMemberProjectSubitem> tbMemberProjectSubitems = tbMemberProjectSubitemMapper.queryListCompanyYear(queryTbMemberProjectSubitem);
|
||||
List<String> collect3 = tbMemberProjectSubitems.stream().map(TbMemberProjectSubitem::getCompanyTemporaryId).collect(Collectors.toList());
|
||||
List<String> idList3 = tbMemberProjectSubitems.stream().map(TbMemberProjectSubitem::getId).collect(Collectors.toList());
|
||||
companyTemporaryIdList.addAll(collect3);
|
||||
if (!idList3.isEmpty()){
|
||||
LambdaUpdateWrapper<TbMemberProjectSubitem> updateWrapper = new LambdaUpdateWrapper<>();
|
||||
updateWrapper.in(TbMemberProjectSubitem::getId,idList3);
|
||||
updateWrapper.set(TbMemberProjectSubitem::getCompanyName,payCompanyManagement.getCompanyName());
|
||||
tbMemberProjectSubitemService.update(updateWrapper);
|
||||
}
|
||||
// 更新临时数据
|
||||
if (!companyTemporaryIdList.isEmpty()) {
|
||||
LambdaUpdateWrapper<PayCompanyManagementTemporary> updatePayCompanyManagementTemporary = new LambdaUpdateWrapper<>();
|
||||
|
||||
+2
@@ -63,4 +63,6 @@ public interface TbMemberProjectSubitemMapper extends BaseMapper<TbMemberProject
|
||||
List<TbMemberProjectSubitem> getAllYearInfoByCompanyId(@Param("companyId") String companyId);
|
||||
|
||||
List<TbMemberProjectSubitem> listByYear(@Param("year") String year);
|
||||
|
||||
List<TbMemberProjectSubitem> queryListCompanyYear(@Param(Constants.WRAPPER) QueryWrapper<TbMemberProjectSubitem> queryTbMemberProjectSubitem);
|
||||
}
|
||||
|
||||
+7
@@ -204,4 +204,11 @@
|
||||
LEFT JOIN tb_member_project tmp on tmp.id = tmps.project_id
|
||||
where tmp.year = #{year}
|
||||
</select>
|
||||
|
||||
<select id="queryListCompanyYear" resultMap="TbMemberProjectSubitemResultMap">
|
||||
select tmps.*
|
||||
from tb_member_project_subitem tmps
|
||||
LEFT JOIN tb_member_project tmp on tmp.id = tmps.project_id
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
</mapper>
|
||||
+5
@@ -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> {
|
||||
AnnualDataLocking countByYear(@Param("year")String year);
|
||||
|
||||
List<String> getYear();
|
||||
|
||||
|
||||
}
|
||||
+6
@@ -26,4 +26,10 @@
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<!--auto generated by MybatisCodeHelper on 2024-07-31-->
|
||||
<select id="getYear" resultType="java.lang.String">
|
||||
select `year`
|
||||
from pay_annual_data_locking
|
||||
</select>
|
||||
</mapper>
|
||||
+8
@@ -386,6 +386,14 @@ public class AnnualDataLockingService extends ServiceImpl<AnnualDataLockingMappe
|
||||
return CollectionUtil.distinct(companyIdList1);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询所有锁定年份
|
||||
* @return
|
||||
*/
|
||||
public List<String> getAllYear(){
|
||||
return baseMapper.getYear();
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询年份是否存在
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user