From 186fc8ddfb3f35d4529fc1c26aeb4efcf8ed1c35 Mon Sep 17 00:00:00 2001 From: haozq <1611483981@qq.com> Date: Fri, 10 Oct 2025 15:44:01 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/bonus/bmw/mapper/PmWorkerExitMapper.java | 7 +++++++ .../com/bonus/bmw/service/impl/AppServiceImpl.java | 11 ++++++++++- .../bmw/service/impl/PmWorkerExitServiceImpl.java | 6 +++++- .../main/resources/mapper/bmw/PmWorkerExitMapper.xml | 7 ++++++- 4 files changed, 28 insertions(+), 3 deletions(-) diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/mapper/PmWorkerExitMapper.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/mapper/PmWorkerExitMapper.java index a72ff32..812872b 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/mapper/PmWorkerExitMapper.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/mapper/PmWorkerExitMapper.java @@ -44,4 +44,11 @@ public interface PmWorkerExitMapper { Boolean getProLocationByProId(Integer proId); int getEinProNum(Integer workerId); + + /** + * 查询 数据信息 + * @param record + * @return + */ + PmWorkerDto getPmWorkInfo(PmWorkerDto record); } diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/AppServiceImpl.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/AppServiceImpl.java index 2e1db0e..54e5bd0 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/AppServiceImpl.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/AppServiceImpl.java @@ -224,6 +224,7 @@ public class AppServiceImpl implements AppService { List list = pmWorkerExitMapper.getContractIdAndWageCard(record.getWorkerId()); if(Integer.parseInt(list.get(0).getValue())>0 && Integer.parseInt(list.get(1).getValue())>0){ //查询是否上海外 + PmWorkerDto data=pmWorkerExitMapper.getPmWorkInfo(record); Boolean isShangHai = pmWorkerExitMapper.getProLocationByProId(record.getProId()); if(isShangHai == null || !isShangHai){ int m = contractMapper.deleteByWorkerId(record.getWorkerId()); @@ -250,7 +251,7 @@ public class AppServiceImpl implements AppService { } int k = pmWorkerExitMapper.updateEinProRecordStatus(record.getId(),einStatus,isUploadFile,record.getExitWay(),isLast); if(k==1){ - urkSendService.delUserByDevice(record.getWorkerId(),record.getProId(),record.getSubId(), record.getTeamId()); + delUrkUser(data, urkSendService); //删除app人脸 // delAppFace(record.getWorkerId()); } @@ -260,6 +261,14 @@ public class AppServiceImpl implements AppService { } } + static void delUrkUser(PmWorkerDto record, UrkSendService urkSendService) throws Exception { + int workerId = record.getWorkerId()==null?0:record.getWorkerId(); + int proId = record.getProId()==null?0:record.getProId(); + int subId = record.getSubId()==null?0:record.getSubId(); + int teamId = record.getTeamId()==null?0:record.getTeamId(); + urkSendService.delUserByDevice(workerId,proId,subId,teamId); + } + /** * 基础数据添加完毕,在进行入场数据添加 * diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/PmWorkerExitServiceImpl.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/PmWorkerExitServiceImpl.java index 5c4910f..0a2cfcb 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/PmWorkerExitServiceImpl.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/PmWorkerExitServiceImpl.java @@ -56,6 +56,7 @@ public class PmWorkerExitServiceImpl implements PmWorkerExitService { @Override public AjaxResult updateWorkerExit(PmWorkerDto record, List listFile) throws Exception { StringBuilder sb = new StringBuilder(); + PmWorkerDto data=mapper.getPmWorkInfo(record); //查询合同工资卡是否齐全 List list = mapper.getContractIdAndWageCard(record.getWorkerId()); if(Integer.parseInt(list.get(0).getValue())>0 && Integer.parseInt(list.get(1).getValue())>0){ @@ -66,8 +67,10 @@ public class PmWorkerExitServiceImpl implements PmWorkerExitService { int i = contractService.deleteByWorkerId(record.getWorkerId()); } //查询是不是上海内最后一个在场工程(一定要放在删除实时在场前查) + int number = mapper.getEinProNum(record.getWorkerId()); //删除实时在场 + int n = mapper.deleteEinMsgByWorkerId(record.getWorkerId(), record.getProId()); //修改在场记录表状态 int einStatus = 2; @@ -92,7 +95,8 @@ public class PmWorkerExitServiceImpl implements PmWorkerExitService { int k = mapper.updateEinProRecordStatus(record.getId(),einStatus,isUploadFile,record.getExitWay(),isLast); if(k==1){ try { - urkSendService.delUserByDevice(record.getWorkerId(),record.getProId(),record.getSubId(),record.getTeamId()); + + AppServiceImpl.delUrkUser(data, urkSendService); } catch (Exception e) { log.error("人员下发考勤机失败:",e); sb.append("人员下发考勤机失败--"); diff --git a/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/PmWorkerExitMapper.xml b/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/PmWorkerExitMapper.xml index 6e6889e..4357046 100644 --- a/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/PmWorkerExitMapper.xml +++ b/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/PmWorkerExitMapper.xml @@ -97,7 +97,7 @@ - DELETE FROM bm_worker_ein_msg WHERE worker_id = #{workerId} and pro_id = #{proId} + DELETE FROM bm_worker_ein_msg WHERE worker_id = #{workerId} and pro_id = #{proId} @@ -169,4 +169,9 @@ `bm_worker_ein_msg` where is_active = 1 and worker_id = #{workerId} +