From e7db6d5fe551a275ad5457cf9da8e52ee385296f Mon Sep 17 00:00:00 2001
From: CZT <czt18638530771@163.com>
Date: 星期一, 14 八月 2023 18:17:22 +0800
Subject: [PATCH] 优化4.0版本-监控点位同步更新

---
 src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService11.java          |   55 +++++++
 src/main/java/com/fzzy/async/fzzy40/entity/Fz40SecCamera.java         |  113 ++++++++++++++++
 src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService13.java          |   46 ++++++
 src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1111Rep.java |   24 +++
 src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1111.java          |  114 ++++++++++++++++
 src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService12.java          |   23 +++
 src/main/resources/application.yml                                    |    2 
 7 files changed, 376 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService11.java b/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService11.java
new file mode 100644
index 0000000..e82fd5f
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService11.java
@@ -0,0 +1,55 @@
+package com.fzzy.async.fzzy40;
+
+import com.fzzy.api.data.ApiParam;
+import com.fzzy.api.data.SyncProtocol;
+import com.fzzy.api.service.SyncService11;
+import com.fzzy.async.fzzy40.impl.Fzzy40Sync1111;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+import java.util.Date;
+
+
+/**
+ * @Desc: 鍩虹淇℃伅鍚屾
+ *
+ * @author: czt
+ * @update-time: 2023/08/14
+ *
+ */
+@Slf4j
+@Component
+public class Fzzy40SyncService11 implements SyncService11 {
+
+
+    @Autowired
+    private Fzzy40Sync1111 fzzy40Sync1111;
+
+    @Override
+    public String getProtocol() {
+        return SyncProtocol.FZZY_V35_GB.getCode();
+    }
+
+    @Override
+    public void syncData(ApiParam param) {
+        log.info("--------------鍩虹鏁版嵁鎵嬪姩閰嶇疆鎺ㄩ��--------");
+        String kqdm = param.getKqdm();
+        String deptId = param.getDeptId();
+        Date start = param.getStart();
+        Date end = param.getEnd();
+
+        //鏂囦欢淇℃伅鍚屾锛岃浆绉诲埌12澶х被涓�,涓昏鏄嚭鍏ュ簱杩芥函鐓х墖
+
+        //鐩戞帶鐐逛綅淇℃伅鍚屾
+        fzzy40Sync1111.syncData(kqdm, deptId, start, end);
+
+        //鑽墏淇℃伅鍚屾  TODO
+
+        //璁惧淇℃伅鍚屾  TODO
+
+        //浜哄憳淇℃伅鍚屾  TODO
+
+        //浼佷笟淇$敤淇℃伅鍚屾--鏆備笉鎵ц
+    }
+
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService12.java b/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService12.java
index c4998a3..13eb1a0 100644
--- a/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService12.java
+++ b/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService12.java
@@ -43,15 +43,38 @@
 
         //瀹㈡埛鍚屾
         fzzySync1212.syncData(kqdm, deptId, start, end);
+
         //鍚堝悓鍚屾
         fzzySync1201.syncData(kqdm, deptId, start, end);
 
         //绮鍏ュ簱鍚屾
         fzzySync1202.syncData(kqdm, deptId, start, end);
 
+        //绮鍏ュ簱璐ㄦ  TODO
+
+        //绮鍏ュ簱缁撶畻  TODO
+
         //绮鍑哄簱鍚屾
         fzzySync1205.syncData(kqdm, deptId, start, end);
 
+        //绮鍑哄簱缁撶畻   TODO
+
+        //绮鎹熺泭  TODO
+
+        //鍊掍粨淇℃伅鍚屾  TODO
+
+
+        //鍑哄叆搴撴枃浠朵俊鎭悓姝�  TODO
+
+
+        //绮搴撳瓨鍚屾  TODO
+
+
+        //绮鎬ц川杞彉淇℃伅鍚屾  TODO
+
+
+        //璐﹂潰搴撳瓨淇℃伅鍚屾  TODO
+
     }
 
 }
diff --git a/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService13.java b/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService13.java
new file mode 100644
index 0000000..09f259f
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/Fzzy40SyncService13.java
@@ -0,0 +1,46 @@
+package com.fzzy.async.fzzy40;
+
+import com.fzzy.api.data.ApiParam;
+import com.fzzy.api.data.SyncProtocol;
+import com.fzzy.api.service.SyncService13;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Desc: 绮绠$悊淇℃伅鍚屾
+ *
+ * @author: czt
+ * @update-time: 2023/08/14
+ *
+ */
+@Component
+public class Fzzy40SyncService13 implements SyncService13 {
+
+
+    @Override
+    public String getProtocol() {
+        return SyncProtocol.FZZY_V35_GB.getCode();
+    }
+
+    @Override
+    public void syncData(ApiParam param) {
+
+        //娓╂箍搴︽娴嬫暟鎹悓姝� TODO
+
+
+        //铏妫�娴嬪悓姝�  TODO
+
+
+        //姘斾綋妫�娴嬪悓姝�  TODO
+
+
+        //璐ㄦ鍚屾  TODO
+
+        //閫氶浣滀笟淇℃伅鍚屾  TODO
+
+        //鐔忚捀浣滀笟淇℃伅鍚屾  TODO
+
+        //鐔忚捀澶囨鏁版嵁鍚屾   TODO--寰呭畾
+
+    }
+
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/entity/Fz40SecCamera.java b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40SecCamera.java
new file mode 100644
index 0000000..d9b0949
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/entity/Fz40SecCamera.java
@@ -0,0 +1,113 @@
+package com.fzzy.async.fzzy40.entity;
+
+import com.bstek.dorado.annotation.PropertyDef;
+import lombok.Data;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 瀹夐槻瑙嗛鐩戞帶璁惧
+ *
+ * @author: czt
+ * @data: 2023骞�8鏈�14鏃�
+ */
+@Data
+@Entity
+@Table(name = "D_SEC_CAMERA")
+public class Fz40SecCamera implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @Id
+    @Column(name = "ID_", length = 40)
+    @PropertyDef(label = "ID")
+    private String id;
+
+    @Column(name = "SN_", length = 50)
+    @PropertyDef(label = "璁惧搴忓垪鍙�")
+    private String sn;
+
+    @Column(name = "COMPANY_ID_", length = 10)
+    @PropertyDef(label = "缁勭粐缂栫爜")
+    private String companyId;
+
+    @Column(name = "DEPT_ID_", length = 40)
+    @PropertyDef(label = "鎵�灞炲垎搴�")
+    private String deptId;
+
+    @Column(name = "TYPE_", length = 10)
+    @PropertyDef(label = "璁惧绫诲瀷")
+    private String type;
+    
+    @Column(name = "PLAY_TYPE_", length = 40)
+    @PropertyDef(label = "鎾斁鏂瑰紡")
+    private String playType;
+
+    @Column(name = "SNAP_TYPE_", length = 25)
+    @PropertyDef(label = "鎶撴媿鏂瑰紡")
+    private String snapType;
+
+    @Column(name = "NAME_", length = 50)
+    @PropertyDef(label = "鍚嶇О")
+    private String name;
+
+    @Column(name = "LOGIN_ID_", length = 20)
+    @PropertyDef(label = "甯愬彿")
+    private String loginId;
+
+    @Column(name = "PWD_", length = 20)
+    @PropertyDef(label = "瀵嗙爜")
+    private String pwd;
+
+    @Column(name = "IP_IN_", length = 20)
+    @PropertyDef(label = "鍐呯綉IP")
+    private String ipIn;
+
+    @Column(name = "PORT_IN_C_")
+    @PropertyDef(label = "鍐呯綉鎺у埗绔彛")
+    private Integer portInC;
+
+    @Column(name = "PORT_IN_V_")
+    @PropertyDef(label = "鍐呯綉WEB绔彛")
+    private Integer portInV;
+
+    @Column(name = "CHAN_NUM_")
+    @PropertyDef(label = "閫氶亾鍙�")
+    private int chanNum = 0;
+
+    @Column(name = "BRAND_", length = 50)
+    @PropertyDef(label = "璁惧鍝佺墝")
+    private String brand;
+
+    @Column(name = "MEDIA_ADDR_", length = 100)
+    @PropertyDef(label = "娴佸獟浣撳湴鍧�")
+    private String mediaAddr;
+
+    @Column(name = "REMARK_", length = 300)
+    @PropertyDef(label = "澶囨敞")
+    private String remark;
+
+    @PropertyDef(label = "椤甸潰涓殑鍧愭爣")
+    @Column(name = "POS_X_",updatable = false)
+    private double posX;
+
+    @PropertyDef(label = "椤甸潰涓殑鍧愭爣")
+    @Column(name = "POS_Y_",updatable = false)
+    private double posY;
+
+    @Column(name = "SCREEN_SHOW_", length = 1)
+    @PropertyDef(label = "澶у睆鏄剧ず鏍囪")
+    private String screenShow;
+
+    @Column(name = "SNAP_TAG_", length = 1)
+    @PropertyDef(label = "鐩戠鑷姩鎶撴媿")
+    private String snapTag;
+
+    @Column(name = "UPDATE_TIME_")
+    @PropertyDef(label = "鏇存柊鏃堕棿")
+    private Date updateTime;
+}
\ No newline at end of file
diff --git a/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1111.java b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1111.java
new file mode 100644
index 0000000..4219cce
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/impl/Fzzy40Sync1111.java
@@ -0,0 +1,114 @@
+package com.fzzy.async.fzzy40.impl;
+
+import com.fzzy.api.Constant;
+import com.fzzy.api.entity.Api1101;
+import com.fzzy.api.entity.Api1102;
+import com.fzzy.api.entity.Api1111;
+import com.fzzy.api.entity.ApiLog;
+import com.fzzy.api.utils.ContextUtil;
+import com.fzzy.api.view.repository.Api1101Rep;
+import com.fzzy.api.view.repository.Api1102Rep;
+import com.fzzy.api.view.repository.Api1111Rep;
+import com.fzzy.api.view.repository.ApiLogRep;
+import com.fzzy.async.fzzy40.entity.Fz40SecCamera;
+import com.fzzy.async.fzzy40.repository.Fzzy40Sync1111Rep;
+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;
+
+/**
+ * 搴撳尯鍥捐棰戠洃鎺ц澶囩偣浣嶆爣娉�
+ */
+@Slf4j
+@Component
+public class Fzzy40Sync1111 {
+
+    @Autowired
+    private Fzzy40Sync1111Rep fzzy40Sync1111Rep;
+    @Autowired
+    private Api1101Rep api1101Rep;
+    @Autowired
+    private Api1102Rep api1102Rep;
+    @Autowired
+    private Api1111Rep api1111Rep;
+    @Autowired
+    private ApiLogRep apiLogRep;
+
+    /**
+     * 鍚屾鐩戞帶鎺ュ彛
+     *
+     * @param deptId
+     * @param start
+     * @param end
+     */
+    public void syncData(String kqdm, String deptId, Date start, Date end) {
+
+        log.info("-------------1111鎺ュ彛鐩戞帶鐐逛綅鏁版嵁寮�濮嬪悓姝�------------------");
+
+        //鍚屾鏁版嵁锛屽彧璁板綍澶辫触鐨勪俊鎭�
+        ApiLog apiLog = new ApiLog();
+        apiLog.setType(ApiLog.TYPE_SYNC);
+        apiLog.setKqdm(deptId);
+        apiLog.setUploadTime(new Date());
+        apiLog.setInteId(Constant.API_CODE_1111);
+        apiLog.setStatus(99);
+        apiLog.setId(ContextUtil.getUUID());
+        try {
+            List<Fz40SecCamera> list = fzzy40Sync1111Rep.listCamera(deptId);
+
+            if (null == list || list.isEmpty()) {
+                log.info("-------------娌℃湁鑾峰彇鍒扮洃鎺т俊鎭�------------------");
+                return;
+            }
+
+            //鏍规嵁搴撳尯浠g爜鑾峰彇鍗曚綅浠g爜
+            Api1102 api1102 = api1102Rep.findById(kqdm).get();
+            Api1101 api1101 = api1101Rep.findById(api1102.getDwdm()).get();
+            Api1111 apiData;
+            List<Api1111> listApi1111;
+            Integer num = 1000001;
+            String spjksbwzys = "left: {X}px ; top : {Y}px ; width : 10px ; height: 10px";
+            for (Fz40SecCamera sysData : list) {
+
+                apiData = new Api1111();
+                apiData.setDwmc(api1101.getDwmc());
+                apiData.setDwdm(api1101.getDwdm());
+                apiData.setKqdm(api1102.getKqdm());
+                apiData.setKqmc(api1102.getKqmc());
+
+                apiData.setSpjksbmc(api1102.getKqmc() + "-" + sysData.getName());
+                apiData.setSpjksbid(api1102.getKqdm().substring(2,8) + "00401327" + String.valueOf(num).substring(1));
+
+                apiData.setSpjksbxdwz("(" + Math.round(sysData.getPosX()*100) + "," + Math.round(sysData.getPosY()*100) + ")");
+                apiData.setSpjksbwzys(spjksbwzys.replace("{X}",Math.round(sysData.getPosX()*100) + "").replace("{Y}",Math.round(sysData.getPosY()*100) + ""));
+                apiData.setBz(sysData.getRemark());
+                //鎿嶄綔鏍囧織鍙婃渶鍚庢洿鏂版椂闂�
+                apiData.setZhgxsj(new Date());
+                //涓氬姟id銆佸簱鍖虹紪鐮併�佸悓姝ユ椂闂�
+                apiData.setSyncTime(new Date());
+                apiData.setCzbz(Constant.CZBZ_I);
+                apiData.setSpjklx("1");
+                listApi1111 = api1111Rep.getApi1111ById(apiData.getSpjksbid());
+                if(null != listApi1111 && listApi1111.size() > 0){
+                    apiData.setCzbz(listApi1111.get(0).getCzbz());
+                    if(StringUtils.isNotEmpty(listApi1111.get(0).getSpjklx())){
+                        apiData.setSpjklx(listApi1111.get(0).getSpjklx());
+                    }
+                }
+                apiData.setBizId(sysData.getId());
+
+                //淇濆瓨鏁版嵁
+                api1111Rep.save(apiData);
+                num ++;
+                log.info("1111---鍚屾鏁版嵁锛歿}", apiData.toString());
+            }
+        } catch (Exception e) {
+            log.error("---鐩戞帶鐐逛綅鍚屾鎵ц澶辫触----{}", e.toString());
+            apiLog.setResult("鐩戞帶鐐逛綅鍚屾鎵ц澶辫触锛�" + e.getMessage());
+            apiLogRep.save(apiLog);
+        }
+    }
+}
diff --git a/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1111Rep.java b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1111Rep.java
new file mode 100644
index 0000000..2f2903c
--- /dev/null
+++ b/src/main/java/com/fzzy/async/fzzy40/repository/Fzzy40Sync1111Rep.java
@@ -0,0 +1,24 @@
+package com.fzzy.async.fzzy40.repository;
+
+import com.fzzy.async.fzzy40.entity.Fz40SecCamera;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+import java.util.List;
+
+/**
+ * 鐩戞帶淇℃伅
+ */
+public interface Fzzy40Sync1111Rep extends JpaRepository<Fz40SecCamera, String> {
+
+    /**
+     * 鑾峰彇鎽勫儚澶翠俊鎭�
+     *
+     * @return
+     */
+//    @Query("from Fz40SecCamera where deptId=:deptId and updateTime >=:start and updateTime <:end order by updateTime ")
+//    List<Fz40SecCamera> listCamera(@Param("deptId") String deptId, @Param("start") Date start, @Param("end") Date end);
+    @Query("from Fz40SecCamera where deptId=:deptId order by ipIn")
+    List<Fz40SecCamera> listCamera(@Param("deptId") String deptId);
+
+}
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index bf2561d..0e225ad 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -1,7 +1,7 @@
 ##########################  Server   ##########################
 spring:
   profiles:
-    active: pro
+    active: dev
   application:
     name: igds-api
   main:

--
Gitblit v1.9.3