From 5bc1addcad33ba9fa6cb8f112bed8f6e385dab30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=96=B9=E4=BA=AE?= Date: Mon, 17 Nov 2025 18:53:40 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=B8=80=E4=B8=AA=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E4=BA=BA=E5=91=98=E7=BA=A2=E7=BB=BF=E7=81=AF=E7=9A=84?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bonus/job/domain/PmWorkerEinLightJob.java | 36 +++++++++++++++++++ .../com/bonus/job/mapper/WorkerJobMapper.java | 12 +++++++ .../job/task/WorkerEinDayRecordTask.java | 26 +++++++++++++- .../resources/mapper/job/WorkerJobMapper.xml | 22 ++++++++++++ 4 files changed, 95 insertions(+), 1 deletion(-) create mode 100644 bonus-modules/bonus-job/src/main/java/com/bonus/job/domain/PmWorkerEinLightJob.java diff --git a/bonus-modules/bonus-job/src/main/java/com/bonus/job/domain/PmWorkerEinLightJob.java b/bonus-modules/bonus-job/src/main/java/com/bonus/job/domain/PmWorkerEinLightJob.java new file mode 100644 index 0000000..f0ed57f --- /dev/null +++ b/bonus-modules/bonus-job/src/main/java/com/bonus/job/domain/PmWorkerEinLightJob.java @@ -0,0 +1,36 @@ +package com.bonus.job.domain; + +import lombok.Data; + +/** + * 人员基础信息表 + */ +@Data +public class PmWorkerEinLightJob { + + + /** + * 施工人员id + */ + private String proId; + + /** + * 姓名 + */ + private String workerId; + + /** + * 身份证 + */ + private String lightStatus; + + /** + * 入场状态 0未入场 1 已入场 + */ + private String yellowDate; + + /** + * 合同工资是否全 + */ + private String conAndWage; +} diff --git a/bonus-modules/bonus-job/src/main/java/com/bonus/job/mapper/WorkerJobMapper.java b/bonus-modules/bonus-job/src/main/java/com/bonus/job/mapper/WorkerJobMapper.java index 7fe5234..d761547 100644 --- a/bonus-modules/bonus-job/src/main/java/com/bonus/job/mapper/WorkerJobMapper.java +++ b/bonus-modules/bonus-job/src/main/java/com/bonus/job/mapper/WorkerJobMapper.java @@ -116,4 +116,16 @@ public interface WorkerJobMapper { List getWorkerContractToday(String startDate); void updateWorkerContractByListToday(List list); + + List getEinWorker(); + + /** + * 更新人员红绿灯 + * @param workerId + * @param proId + * @param lightStatus + * @param now + * @return + */ + int updateEinMsgByWorkerId(@Param("workerId") String id,@Param("proId") String proId, @Param("lightStatus") String lightStatus,@Param("lightDate") String lightDate); } diff --git a/bonus-modules/bonus-job/src/main/java/com/bonus/job/task/WorkerEinDayRecordTask.java b/bonus-modules/bonus-job/src/main/java/com/bonus/job/task/WorkerEinDayRecordTask.java index 2cb9090..8b0ca9a 100644 --- a/bonus-modules/bonus-job/src/main/java/com/bonus/job/task/WorkerEinDayRecordTask.java +++ b/bonus-modules/bonus-job/src/main/java/com/bonus/job/task/WorkerEinDayRecordTask.java @@ -2,6 +2,7 @@ package com.bonus.job.task; import cn.hutool.core.date.DateUtil; import com.bonus.job.domain.BmWorkerBlackJob; +import com.bonus.job.domain.PmWorkerEinLightJob; import com.bonus.job.domain.PmWorkerJob; import com.bonus.job.mapper.WorkerJobMapper; import org.slf4j.Logger; @@ -38,12 +39,35 @@ public class WorkerEinDayRecordTask{ updateWorkerContract(); //当天合同以最新的为准 updateWorkerContractToday(startDate); - //TODO加一个红绿灯判断和更新的接口 + //加一个红绿灯判断和更新的接口 + updateWorkerLight(); }catch (Exception e){ logger.error("人员入场更新表失败,{}",e.getMessage()); } } + /** + * 红绿灯判断和更新的接口 + */ + private void updateWorkerLight() { + List list = mapper.getEinWorker(); + if(list != null && !list.isEmpty()){ + for (PmWorkerEinLightJob worker : list) { + if(!worker.getConAndWage().equals(worker.getLightStatus())){ + String lightStatus = worker.getConAndWage(); + String now = DateUtil.now(); + if("2".equals(lightStatus)){ + now = ""; + } + int j = mapper.updateEinMsgByWorkerId(worker.getWorkerId(), worker.getProId(), lightStatus, now); + }else{ + //匹配上的需要校验一下数据,但是现在就不校验了 + //黄灯看时间有没有,绿灯时间清没清除 + } + } + } + } + /** * 当天合同以最新的为准 */ diff --git a/bonus-modules/bonus-job/src/main/resources/mapper/job/WorkerJobMapper.xml b/bonus-modules/bonus-job/src/main/resources/mapper/job/WorkerJobMapper.xml index ac433f1..ba9a142 100644 --- a/bonus-modules/bonus-job/src/main/resources/mapper/job/WorkerJobMapper.xml +++ b/bonus-modules/bonus-job/src/main/resources/mapper/job/WorkerJobMapper.xml @@ -425,4 +425,26 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update bm_worker_ein_day_record set contract_id = #{item.contractId} where worker_id = #{item.workerId} and pro_id = #{item.proId} and ein_day = #{item.einDay} + + + + + update bm_worker_ein_msg + set light_status = #{lightStatus},yellow_date = #{lightDate} + where worker_id = #{workerId} and pro_id = #{proId} +