From dbef4eea6194ffba3bd25f978b33e09d65f5a6de Mon Sep 17 00:00:00 2001
From: czt <czt18638530771@163.com>
Date: 星期五, 01 十一月 2024 14:07:21 +0800
Subject: [PATCH] 根据国家局接口,调整基础表字段

---
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1311.java |  107 ++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 72 insertions(+), 35 deletions(-)

diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1311.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1311.java
index 177cecf..4809125 100644
--- a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1311.java
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1311.java
@@ -1,10 +1,13 @@
 package com.fzzy.async.fzzy40.impl;
 
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
 import com.fzzy.api.Constant;
+import com.fzzy.api.entity.Api1102;
 import com.fzzy.api.entity.ApiInfoData;
 import com.fzzy.api.entity.ApiLog;
 import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.Api1102Rep;
 import com.fzzy.api.view.repository.ApiInfoDataRep;
 import com.fzzy.api.view.repository.ApiLogRep;
 import com.fzzy.async.fzzy40.entity.Fz40SecCamera;
@@ -12,8 +15,10 @@
 import com.fzzy.push.sh2023.SH2023Constant;
 import com.fzzy.push.sh2023.dto.SH2023Api1311;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+
 import java.util.Date;
 import java.util.List;
 
@@ -27,6 +32,8 @@
 public class Fzzy40Sync1311 {
     @Autowired
     private ApiLogRep apiLogRep;
+    @Autowired
+    private Api1102Rep api1102Rep;
     @Autowired
     private Fzzy40Sync1311Rep fzzy40Sync1311Rep;
     @Autowired
@@ -48,71 +55,85 @@
                 log.debug("-------------娌℃湁鑾峰彇鍒拌棰戠洃鎺т俊鎭�------------------");
                 return;
             }
+            Api1102 api1102 = api1102Rep.findById(kqdm).get();
             SH2023Api1311 sh2023Api1311;
+            SH2023Api1311 sh1311;
             List<ApiInfoData> apiInfoDataList;
-            String dataID;
-            int num = 1;
-            String secType = "01,02,03,04,05";
             for (Fz40SecCamera sysData : list) {
-                dataID = kqdm.substring(3, 8) + "01401327" + String.format("%06d", num++);
-                List<ApiInfoData> apiInfoData = apiInfoDataRep.getDataByInteAndData(SH2023Constant.SH_2023_API_CODE_1311, dataID, kqdm);
-                if (null != apiInfoData && apiInfoData.size() > 0) {
-                    continue;
-                }
                 sh2023Api1311 = new SH2023Api1311();
+                sh2023Api1311.setSpjksbid(sysData.getId());
                 sh2023Api1311.setTdbh(sysData.getChanNum());
-                sh2023Api1311.setTdmc(sysData.getChanNum() + "鍙烽�氶亾");
                 sh2023Api1311.setJksbmc(sysData.getName());
                 sh2023Api1311.setKqdm(kqdm);
-                if (sysData.getBrand().equals("01")) {
-                    sh2023Api1311.setJkcs("2");
-                } else if (sysData.getBrand().equals("02")) {
-                    sh2023Api1311.setJkcs("1");
-                } else {
-                    sh2023Api1311.setJkcs("9");
-                }
-                sh2023Api1311.setJkxlh(sysData.getSn());
-                if (sysData.getAzwzlx().equals("08")) {
-                    sh2023Api1311.setSpjklx("1");
-                } else if (secType.indexOf(sysData.getAzwzlx()) >= 0) {
-                    sh2023Api1311.setSpjklx("2");
-                } else {
-                    sh2023Api1311.setSpjklx("3");
-                }
+
+                //鐩戞帶鍘傚晢
+                sh2023Api1311.setJkcs(getBrandId(sysData.getBrand()));
+
+                sh2023Api1311.setJkxh(sysData.getSn());
+
+                sh2023Api1311.setSpjklx(StringUtils.isEmpty(sysData.getSpjklx()) ? "3" : sysData.getSpjklx());
                 sh2023Api1311.setSblxbm("1");
-                sh2023Api1311.setAzwzlx(sysData.getAzwzlx());
-                sh2023Api1311.setZsqy("Y");
-                sh2023Api1311.setJkjlxbm(sysData.getType().substring(1));
+
+                sh2023Api1311.setAzwz(sysData.getName());
+                sh2023Api1311.setAzwzlx(StringUtils.isEmpty(sysData.getSpdwlx()) ? "7" : sysData.getSpdwlx());
+                if(sh2023Api1311.getAzwzlx().length() == 1){
+                    sh2023Api1311.setAzwzlx("0" + sh2023Api1311.getAzwzlx());
+                }
+                if ("12".equals(sh2023Api1311.getAzwzlx()) || "13".equals(sh2023Api1311.getAzwzlx())
+                        || "14".equals(sh2023Api1311.getAzwzlx()) || "15".equals(sh2023Api1311.getAzwzlx())) {
+                    sh2023Api1311.setAzwzlx("99");
+                }
+                if ("16".equals(sh2023Api1311.getAzwzlx())) {
+                    sh2023Api1311.setAzwzlx("12");
+                }
+                sh2023Api1311.setSfazbgd("Y");
+
+                if(StringUtils.isEmpty(sysData.getType())){
+                    sysData.setType("01");
+                }
+                if(sysData.getType().equals("02")){
+                    sh2023Api1311.setJkjlxbm("2");
+                }
+                if(sysData.getType().equals("01")){
+                    sh2023Api1311.setJkjlxbm("1");
+                }
+                sh2023Api1311.setJktyzw(12);
                 sh2023Api1311.setSbipdz(sysData.getIpIn());
                 sh2023Api1311.setSbdkh(sysData.getPortInV());
                 sh2023Api1311.setSbdlmc(sysData.getLoginId());
                 sh2023Api1311.setSbdlmm(sysData.getPwd());
                 sh2023Api1311.setBz(sysData.getRemark());
-                sh2023Api1311.setZhgxsj(sysData.getUpdateTime());
+                sh2023Api1311.setZhgxsj(sysData.getUpdateTime()==null?new Date():sysData.getUpdateTime());
 
                 //鎸佷箙鍖栦繚瀛橈紝鍗曠嫭瀛樺叆闈炲浗鏍囨帴鍙h〃
                 ApiInfoData infoData = new ApiInfoData();
-                infoData.setId(ContextUtil.getUUID());
+                infoData.setId(sh2023Api1311.getSpjksbid());
                 infoData.setKqdm(kqdm);
                 infoData.setInteType(Constant.API_CATEGORY_13);
                 infoData.setInteId(SH2023Constant.SH_2023_API_CODE_1311);
-                infoData.setUpdateTime(new Date());
-                infoData.setDataId(dataID);
+                infoData.setUpdateTime(sh2023Api1311.getZhgxsj());
+                infoData.setDataId(sh2023Api1311.getSpjksbid());
                 infoData.setRemarks("瑙嗛鐩戞帶淇℃伅");
                 //璁剧疆鎿嶄綔鏍囧織
                 apiInfoDataList = apiInfoDataRep.getDataByInteAndData(SH2023Constant.SH_2023_API_CODE_1311, infoData.getDataId(), kqdm);
                 if (null == apiInfoDataList || apiInfoDataList.isEmpty()) {
+                    sh2023Api1311.setCzbz(Constant.CZBZ_I);
                     infoData.setCzbz(Constant.CZBZ_I);
                 } else {
+                    sh2023Api1311.setCzbz(apiInfoDataList.get(0).getCzbz());
                     infoData.setCzbz(apiInfoDataList.get(0).getCzbz());
+                    sh1311 = JSONObject.parseObject(apiInfoDataList.get(0).getData(), SH2023Api1311.class);
+                    if(null != sh1311 && StringUtils.isNotEmpty(sh1311.getAjdm())){
+                        sh2023Api1311.setAjdm(sh1311.getAjdm());
+                    }
+                    if(null != sh1311 && StringUtils.isNotEmpty(sh1311.getHwdm())){
+                        sh2023Api1311.setHwdm(sh1311.getHwdm());
+                    }
                 }
-
 
                 infoData.setData(JSON.toJSONString(sh2023Api1311));
                 apiInfoDataRep.save(infoData);
-
-
-                log.info("1311---甯傚偍妫�鏂ゅ崟-鍚屾鏁版嵁锛歿}", sh2023Api1311);
+                log.info("1311---瑙嗛鐩戞帶-鍚屾鏁版嵁锛歿}", sh2023Api1311);
             }
 
         } catch (Exception e) {
@@ -121,4 +142,20 @@
             apiLogRep.save(apiLog);
         }
     }
+
+    private String getBrandId(String brandName) {
+        if (StringUtils.isEmpty(brandName)) {
+            return "9";
+        }
+        if (brandName.contains("娴峰悍")) {
+            return "1";
+        }
+        if (brandName.contains("澶у崕")) {
+            return "2";
+        }
+        if (brandName.contains("瀹囪")) {
+            return "3";
+        }
+        return "9";
+    }
 }

--
Gitblit v1.9.3