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} +