Browse Source

修复定位卡同步bug

巡检记录上传优化
master
liwenxuan 1 month ago
parent
commit
f7ffd615c5
  1. 29
      src/main/java/com/hxjt/dataupload/jobhandler/devicenohandle/DeviceNoSynchronizationJobHandler.java
  2. 4
      src/main/java/com/hxjt/dataupload/mapper/PersonArchivesMapper.java
  3. 2
      src/main/java/com/hxjt/dataupload/service/IsmTagService.java
  4. 5
      src/main/java/com/hxjt/dataupload/service/impl/IsmTagServiceImpl.java
  5. 4
      src/main/resources/mapper/FxfxdxMapper.xml
  6. 7
      src/main/resources/mapper/PersonArchivesMapper.xml

29
src/main/java/com/hxjt/dataupload/jobhandler/devicenohandle/DeviceNoSynchronizationJobHandler.java

@ -35,10 +35,13 @@ public class DeviceNoSynchronizationJobHandler {
if(null!=pa){
//System.out.println(pa);
if(pa.getDeviceNo().equals(ismTag.getDeviceNo())){
//if(2==1){
//System.out.println(pa);
//System.out.println("数据一致无需同步");
/*if(ismTag.getWorkNumber().equals("301345")||ismTag.getWorkNumber().equals("303192")||ismTag.getWorkNumber().equals("200053")||ismTag.getWorkNumber().equals("201058")){
System.out.println(ismTag);
}*/
}else{
XxlJobHelper.log("需更新:" + pa+"-----"+ismTag);
pa.setDeviceNo(ismTag.getDeviceNo());
@ -60,6 +63,26 @@ public class DeviceNoSynchronizationJobHandler {
}
}
//在此根据deviceNo查询hr库,看看有没有重复的,如果有,就把并非此次的deviceNo对应工号的本deviceNo 都设为空
ArrayList<PersonArchives> personArchivesByDeviceNo = ismTagService.getPersonArchivesByDeviceNo(pa.getDeviceNo());
if(personArchivesByDeviceNo.size()>1){
for (int i = 0; i < personArchivesByDeviceNo.size();i++){
if(personArchivesByDeviceNo.get(i).getNumber().equals(pa.getNumber())){
}else{
String toSetEmptyNumber = personArchivesByDeviceNo.get(i).getNumber();
PersonArchives pa1 = ismTagService.getPersonArchivesByNumber(toSetEmptyNumber);
pa1.setDeviceNo("");
ismTagService.update2point87(pa1);
ismTagService.update5point33(pa1);
ismTagService.updateLowcodeOnline(pa1);
XxlJobHelper.log("成功更新:" + pa1);
count++;
}
}
}
}
}
System.out.println("更新了"+count+"个");

4
src/main/java/com/hxjt/dataupload/mapper/PersonArchivesMapper.java

@ -3,9 +3,13 @@ package com.hxjt.dataupload.mapper;
import com.hxjt.dataupload.model.entity.devicenohandle.PersonArchives;
import org.apache.ibatis.annotations.Mapper;
import java.util.ArrayList;
@Mapper
public interface PersonArchivesMapper {
PersonArchives getPersonArchivesByNumber(String number);
void updateDeviceNoForPersonArchives(PersonArchives personArchives);
ArrayList<PersonArchives> getPersonArchivesByDeviceNo(String deviceNo);
}

2
src/main/java/com/hxjt/dataupload/service/IsmTagService.java

@ -15,4 +15,6 @@ public interface IsmTagService {
void update5point33(PersonArchives pa);
void updateLowcodeOnline(PersonArchives pa);
ArrayList<PersonArchives> getPersonArchivesByDeviceNo(String deviceNo);
}

5
src/main/java/com/hxjt/dataupload/service/impl/IsmTagServiceImpl.java

@ -43,5 +43,10 @@ public class IsmTagServiceImpl implements IsmTagService {
public void updateLowcodeOnline(PersonArchives pa) {
personArchivesMapper.updateDeviceNoForPersonArchives(pa);
}
@DS("hrnewlowcodeprod")
@Override
public ArrayList<PersonArchives> getPersonArchivesByDeviceNo(String deviceNo) {
return personArchivesMapper.getPersonArchivesByDeviceNo(deviceNo);
}
}

4
src/main/resources/mapper/FxfxdxMapper.xml

@ -416,11 +416,11 @@
</when>
<otherwise>
and i.FCHECKTIME >= '2025-01-01 00:00:00.000'
and i.FCHECKTIME >= '2025-09-18 00:00:00.000'
</otherwise>
</choose>
ORDER BY
chuangjianshijian
chuangjianshijian desc
</select>
<select id="getZdwxyBbzrrs" resultType="java.util.HashMap">
select id,EMPNAME from PF_EMPLOYEE pe where EMPNAME in ('王来发','谭洪金','李尽','王绍武','王国敬')

7
src/main/resources/mapper/PersonArchivesMapper.xml

@ -14,5 +14,12 @@
</update>
<select id="getPersonArchivesByDeviceNo" resultType="com.hxjt.dataupload.model.entity.devicenohandle.PersonArchives">
select number,admin_org,emp_type from man_cont where `deviceNo` = #{deviceNo} and company in ('309','224') and maindeparment not in ('104','268','271','275') and emp_type
<![CDATA[
and emp_type < 9
]]>
</select>
</mapper>
Loading…
Cancel
Save