yaozhixue il y a 1 an
Parent
commit
2b2912406a

+ 259 - 1
src/main/java/com/zfire/jiasm/syncdata/service/impl/GLPPGFWebsitWorkerServiceImpl.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.zfire.jiasm.syncdata.constant.DictTypeEnum;
 import com.zfire.jiasm.syncdata.plus.entity.*;
 import com.zfire.jiasm.syncdata.plus.service.*;
@@ -493,7 +494,7 @@ public class GLPPGFWebsitWorkerServiceImpl implements GLPPGFWebsitWorkerService
         return add;
     }
 
-    private void getWorker(List<Worker> addWorkerRec, List<String> sfzens, ItfTblWangdianWxgDownload m,
+    private void getWorkerBak(List<Worker> addWorkerRec, List<String> sfzens, ItfTblWangdianWxgDownload m,
                            Map<String, List<Worker>> workerIdcardMap) {
         Boolean flag = Boolean.FALSE;
         Worker v = new Worker();
@@ -599,6 +600,263 @@ public class GLPPGFWebsitWorkerServiceImpl implements GLPPGFWebsitWorkerService
         sfzens.add(m.getSfzen() + m.getWxgmc() + m.getYddh());
     }
 
+
+    private void getWorker(List<Worker> addWorkerRec, List<String> sfzens, ItfTblWangdianWxgDownload m,
+                           Map<String, List<Worker>> workerIdcardMap) {
+        Boolean uflag = Boolean.FALSE;
+        Worker v = new Worker();
+        Worker o = null;
+
+        // 师傅身份证,名称,电话 已存在为修改
+        if (workerIdcardMap.containsKey(m.getSfzen())){
+            for (Worker w:workerIdcardMap.get(m.getSfzen())){
+                if (w.getWorkerName().equals(m.getWxgmc()) && w.getMobile().equals(m.getYddh())){
+                    v.setWorkerId(w.getWorkerId());
+                    o = workerService.lambdaQuery()
+                            .eq(Worker::getWorkerId,w.getWorkerId()).one();
+                    break;
+                }
+            }
+        }
+
+        // 新增
+        if (o==null){
+            addWorkerInfo(addWorkerRec, m, v);
+        } else {
+            // 看有无修改的可能
+            upWorkerInfo(addWorkerRec, m, uflag, o);
+        }
+        sfzens.add(m.getSfzen() + m.getWxgmc() + m.getYddh());
+    }
+
+    private void addWorkerInfo(List<Worker> addWorkerRec, ItfTblWangdianWxgDownload m, Worker v) {
+        v.setWorkerId(IdWorker.getIdStr());
+        v.setWorkerName(m.getWxgmc());
+        v.setCreateBy("system");
+        v.setUpdateBy("system");
+        v.setCreateTime(new Date());
+        v.setUpdateTime(new Date());
+        if (m.getCreatedBy() != null){
+            v.setCreateBy(m.getCreatedBy());
+        }
+        if (m.getCreatedDate() != null){
+            v.setCreateTime(m.getCreatedDate());
+        }
+        if (m.getLastModifiedBy() != null){
+            v.setUpdateBy(m.getLastModifiedBy());
+        }
+        if (m.getLastModifiedDate() != null){
+            v.setUpdateTime(m.getLastModifiedDate());
+        }
+        v.setGender(m.getXingb());
+        v.setMobile(m.getYddh());
+        v.setIdcard(m.getSfzen());
+        v.setAge(m.getNianl());
+        v.setEducation(m.getXueli());
+        v.setNvq(m.getZgzh());
+        v.setSafeNo(m.getGmbxdh());
+        v.setSkillLevel(m.getJsdj());
+        v.setRemark(m.getBeiz());
+        v.setIsZst(DictTypeEnum.ZST_TYPE_NO.getCode());
+        if (m.getSfzst() != null){
+            if (!m.getSfzst().trim().equals(DictTypeEnum.ZST_TYPE_YES.getText())){
+                v.setIsZst(DictTypeEnum.ZST_TYPE_YES.getCode());
+            }
+        }
+        v.setZstExamineRemark(m.getShyj());
+        v.setZstTime(m.getZstsj());
+        v.setCarNo(m.getCphm());
+        v.setGpsMachineId(m.getGpsid());
+        v.setVipFlag(m.getVipflag());
+        v.setSyncFlag(1);
+        addWorkerRec.add(v);
+    }
+
+    private void upWorkerInfo(List<Worker> addWorkerRec, ItfTblWangdianWxgDownload m, Boolean uflag, Worker v) {
+        if (StringUtils.isNotEmpty(v.getWorkerName()) && StringUtils.isNotEmpty(m.getWxgmc()) &&
+                ! v.getWorkerName().equals(m.getWxgmc())){
+            v.setWorkerName(m.getWxgmc());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getWxgmc())){
+                v.setWorkerName(m.getWxgmc());
+                uflag = Boolean.TRUE;
+            }
+         }
+
+        if (StringUtils.isNotEmpty(v.getGender()) && StringUtils.isNotEmpty(m.getXingb()) &&
+                ! v.getGender().equals(m.getXingb())){
+            v.setGender(m.getXingb());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getXingb())){
+                v.setGender(m.getXingb());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (StringUtils.isNotEmpty(v.getMobile()) && StringUtils.isNotEmpty(m.getYddh()) &&
+                ! v.getMobile().equals(m.getYddh())){
+            v.setMobile(m.getYddh());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getYddh())){
+                v.setMobile(m.getYddh());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (StringUtils.isNotEmpty(v.getIdcard()) && StringUtils.isNotEmpty(m.getSfzen()) &&
+                ! v.getIdcard().equals(m.getSfzen())){
+            v.setIdcard(m.getSfzen());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getSfzen())){
+                v.setIdcard(m.getSfzen());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (! v.getAge().equals(m.getNianl())){
+            v.setAge(m.getNianl());
+            uflag = Boolean.TRUE;
+        }
+
+        if (StringUtils.isNotEmpty(v.getEducation()) && StringUtils.isNotEmpty(m.getXueli()) &&
+                ! v.getEducation().equals(m.getXueli())){
+            v.setEducation(m.getXueli());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getXueli())){
+                v.setEducation(m.getXueli());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (StringUtils.isNotEmpty(v.getNvq()) && StringUtils.isNotEmpty(m.getZgzh()) &&
+                ! v.getNvq().equals(m.getZgzh())){
+            v.setNvq(m.getZgzh());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getZgzh())){
+                v.setNvq(m.getZgzh());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (StringUtils.isNotEmpty(v.getSafeNo()) && StringUtils.isNotEmpty(m.getGmbxdh()) &&
+                ! v.getSafeNo().equals(m.getGmbxdh())){
+            v.setSafeNo(m.getGmbxdh());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getGmbxdh())){
+                v.setSafeNo(m.getGmbxdh());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (StringUtils.isNotEmpty(v.getSkillLevel()) && StringUtils.isNotEmpty(m.getJsdj()) &&
+                ! v.getSkillLevel().equals(m.getJsdj())){
+            v.setSkillLevel(m.getJsdj());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getJsdj())){
+                v.setSkillLevel(m.getJsdj());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (StringUtils.isNotEmpty(v.getRemark()) && StringUtils.isNotEmpty(m.getBeiz()) &&
+                ! v.getRemark().equals(m.getBeiz())){
+            v.setRemark(m.getBeiz());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getBeiz())){
+                v.setRemark(m.getBeiz());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (StringUtils.isNotEmpty(v.getRemark()) && StringUtils.isNotEmpty(m.getSfzst())){
+            if (m.getSfzst().trim().equals(DictTypeEnum.ZST_TYPE_YES.getText())){
+                if (!v.getIsZst().equals(DictTypeEnum.ZST_TYPE_YES.getCode())) {
+                    v.setIsZst(DictTypeEnum.ZST_TYPE_YES.getCode());
+                    uflag = Boolean.TRUE;
+                }
+            } else {
+                if (!v.getIsZst().equals(DictTypeEnum.ZST_TYPE_NO.getCode())) {
+                    v.setIsZst(DictTypeEnum.ZST_TYPE_NO.getCode());
+                    uflag = Boolean.TRUE;
+                }
+            }
+        } else {
+            if (StringUtils.isNotEmpty(m.getSfzst())){
+                v.setIsZst(DictTypeEnum.ZST_TYPE_NO.getCode());
+                if (!m.getSfzst().trim().equals(DictTypeEnum.ZST_TYPE_YES.getText())){
+                    v.setIsZst(DictTypeEnum.ZST_TYPE_YES.getCode());
+                }
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (StringUtils.isNotEmpty(v.getZstExamineRemark()) && StringUtils.isNotEmpty(m.getShyj()) &&
+                ! v.getZstExamineRemark().equals(m.getShyj())){
+            v.setZstExamineRemark(m.getShyj());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getShyj())){
+                v.setZstExamineRemark(m.getShyj());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (StringUtils.isNotEmpty(v.getCarNo()) && StringUtils.isNotEmpty(m.getCphm()) &&
+                ! v.getCarNo().equals(m.getCphm())){
+            v.setCarNo(m.getCphm());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getCphm())){
+                v.setCarNo(m.getCphm());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (StringUtils.isNotEmpty(v.getGpsMachineId()) && StringUtils.isNotEmpty(m.getGpsid()) &&
+                ! v.getGpsMachineId().equals(m.getGpsid())){
+            v.setGpsMachineId(m.getGpsid());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getGpsid())){
+                v.setGpsMachineId(m.getGpsid());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (StringUtils.isNotEmpty(v.getVipFlag()) && StringUtils.isNotEmpty(m.getVipflag()) &&
+                ! v.getVipFlag().equals(m.getVipflag())){
+            v.setVipFlag(m.getVipflag());
+            uflag = Boolean.TRUE;
+        } else {
+            if (StringUtils.isNotEmpty(m.getVipflag())){
+                v.setVipFlag(m.getVipflag());
+                uflag = Boolean.TRUE;
+            }
+        }
+
+        if (uflag){
+            v.setUpdateBy("system");
+            v.setUpdateTime(new Date());
+            if (m.getLastModifiedBy() != null){
+                v.setUpdateBy(m.getLastModifiedBy());
+            }
+            if (m.getLastModifiedDate() != null){
+                v.setUpdateTime(m.getLastModifiedDate());
+            }
+
+            addWorkerRec.add(v);
+        }
+    }
+
     private void extractedWorkerAddNew(List<ItfTblWangdianWxgDownload> addRec, List<Worker> addWorkerRec) {
         // 身份证 + 姓名 + 手机号
         List<String> sfzens = new ArrayList<>();