From 63522440b1eaeaa3e5d0a7bf9ffd387ca327135e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Tue, 7 Jan 2025 18:35:12 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=AD=A5=E5=85=A8=E5=8B=A4=E5=A5=96?= =?UTF-8?q?=E6=A0=87=E5=87=86=E7=9A=84=E6=A1=A3=E6=A1=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salary/timer/AutoSyncEmpArchiveStartDateJob.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/com/engine/salary/timer/AutoSyncEmpArchiveStartDateJob.java b/src/com/engine/salary/timer/AutoSyncEmpArchiveStartDateJob.java index 07e6f398e..f9ff8b960 100644 --- a/src/com/engine/salary/timer/AutoSyncEmpArchiveStartDateJob.java +++ b/src/com/engine/salary/timer/AutoSyncEmpArchiveStartDateJob.java @@ -1,14 +1,16 @@ package com.engine.salary.timer; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import com.engine.common.util.ServiceUtil; import com.engine.salary.biz.SalaryArchiveBiz; import com.engine.salary.biz.SalaryArchiveItemBiz; import com.engine.salary.constant.SalaryDefaultTenantConstant; import com.engine.salary.entity.datacollection.DataCollectionEmployee; -import com.engine.salary.entity.salaryarchive.po.SalaryArchiveItemPO; import com.engine.salary.entity.salaryarchive.dto.SalaryArchiveListDTO; +import com.engine.salary.entity.salaryarchive.param.SalaryArchiveItemQueryParam; import com.engine.salary.entity.salaryarchive.param.SalaryArchiveQueryParam; +import com.engine.salary.entity.salaryarchive.po.SalaryArchiveItemPO; import com.engine.salary.entity.salaryarchive.po.SalaryArchivePO; import com.engine.salary.entity.siarchives.po.InsuranceArchivesBaseInfoPO; import com.engine.salary.entity.siarchives.po.InsuranceArchivesFundSchemePO; @@ -175,14 +177,18 @@ public class AutoSyncEmpArchiveStartDateJob extends BaseCronJob { if (StrUtil.isNotEmpty(cusQqjbzId) && StrUtil.isNotEmpty(cusQqjbz)) { - List list = getSalaryArchiveService(user).listSome(SalaryArchivePO.builder().runStatus(SalaryArchiveListTypeEnum.PENDING.getValue()).build()); + List list = getSalaryArchiveService(user).listSome(SalaryArchivePO.builder().build()); Date now = new Date(); //同步全勤奖标准 List collect = list .stream() .filter(salaryArchive -> salaryArchive.getPayStartDate() != null) + .filter(salaryArchive -> { + //排除已有全勤奖标准的档案 + List salaryArchiveItemPOS = salaryArchiveItemMapper.listByParam(SalaryArchiveItemQueryParam.builder().salaryArchiveId(salaryArchive.getId()).salaryItemId(Long.valueOf(cusQqjbzId)).build()); + return CollUtil.isEmpty(salaryArchiveItemPOS); + }) .map(salaryArchive -> SalaryArchiveItemPO.builder() -// .id(IdGenerator.generate()) .salaryArchiveId(salaryArchive.getId()) .employeeId(salaryArchive.getEmployeeId()) .effectiveTime(salaryArchive.getPayStartDate())