From eba563608c2d059a8dbbc789dd2c567f2302c088 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期六, 25 三月 2023 17:06:34 +0800
Subject: [PATCH] 1

---
 src/main/java/com/lf/server/mapper/sys/AttachMapper.java         |    3 ++-
 src/main/java/com/lf/server/service/sys/AttachService.java       |   43 ++++++++++++++++++++++++++++++++++++++++++-
 src/main/java/com/lf/server/service/all/UploadAttachService.java |    2 +-
 src/main/resources/mapper/sys/AttachMapper.xml                   |    3 +--
 4 files changed, 46 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/lf/server/mapper/sys/AttachMapper.java b/src/main/java/com/lf/server/mapper/sys/AttachMapper.java
index 2a0563a..7f37218 100644
--- a/src/main/java/com/lf/server/mapper/sys/AttachMapper.java
+++ b/src/main/java/com/lf/server/mapper/sys/AttachMapper.java
@@ -142,9 +142,10 @@
     /**
      * 鏌ヨFME鏃ュ織
      *
+     * @param tabs
      * @return
      */
-    public List<FmeLogEntity> selectFmeLogs();
+    public List<FmeLogEntity> selectFmeLogs(String tabs);
 
     /**
      * 鏇存柊FME鏃ュ織
diff --git a/src/main/java/com/lf/server/service/all/UploadAttachService.java b/src/main/java/com/lf/server/service/all/UploadAttachService.java
index 74a669d..04e134b 100644
--- a/src/main/java/com/lf/server/service/all/UploadAttachService.java
+++ b/src/main/java/com/lf/server/service/all/UploadAttachService.java
@@ -45,7 +45,7 @@
 
     private static String tabs = "''";
 
-    private final static Map<String, String> ATTACH_TABS = new HashMap<>();
+    public final static Map<String, String> ATTACH_TABS = new HashMap<>();
 
     private final static Log log = LogFactory.getLog(UploadAttachService.class);
 
diff --git a/src/main/java/com/lf/server/service/sys/AttachService.java b/src/main/java/com/lf/server/service/sys/AttachService.java
index fe7c253..5a91129 100644
--- a/src/main/java/com/lf/server/service/sys/AttachService.java
+++ b/src/main/java/com/lf/server/service/sys/AttachService.java
@@ -1,9 +1,13 @@
 package com.lf.server.service.sys;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.lf.server.entity.data.FmeLogEntity;
 import com.lf.server.entity.sys.AttachEntity;
+import com.lf.server.helper.ClassHelper;
 import com.lf.server.helper.StringHelper;
+import com.lf.server.mapper.all.BasicMapper;
 import com.lf.server.mapper.sys.AttachMapper;
+import com.lf.server.service.all.UploadAttachService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -17,6 +21,8 @@
 public class AttachService implements AttachMapper {
     @Autowired
     AttachMapper attachMapper;
+
+    private static String tabs;
 
     @Override
     public Integer selectCount(String name) {
@@ -98,8 +104,19 @@
     }
 
     @Override
+    public List<FmeLogEntity> selectFmeLogs(String tabs) {
+        return attachMapper.selectFmeLogs(tabs);
+    }
+
+    /**
+     * 鏌ヨFME鏃ュ織
+     */
     public List<FmeLogEntity> selectFmeLogs() {
-        return attachMapper.selectFmeLogs();
+        if (null == tabs) {
+            tabs = UploadAttachService.getTabs().replace("'", "");
+        }
+
+        return attachMapper.selectFmeLogs(tabs);
     }
 
     @Override
@@ -111,6 +128,30 @@
      * 鍚屾闄勪欢
      */
     public void syncAttaches(FmeLogEntity entity) {
+        String tab = entity.getPgNs() + "." + entity.getTcdm();
+        String field = UploadAttachService.ATTACH_TABS.get(tab);
+
+        List<?> list = selectRowsByParentid(entity.getTcdm().replace("_", ""), entity.getParentid(), field);
+        if (null == list || list.isEmpty()) {
+            return;
+        }
+
         //
     }
+
+    /**
+     * 鏍规嵁鐖禝D鏌ヨ璁板綍
+     */
+    private List<?> selectRowsByParentid(String entity, String parentid, String field) {
+        BasicMapper baseMapper = ClassHelper.getBasicMapper(entity);
+        if (null == baseMapper) {
+            return null;
+        }
+
+        QueryWrapper wrapper = new QueryWrapper();
+        wrapper.eq("parentid", parentid);
+        wrapper.apply(field + " is not null");
+
+        return baseMapper.selectList(wrapper);
+    }
 }
diff --git a/src/main/resources/mapper/sys/AttachMapper.xml b/src/main/resources/mapper/sys/AttachMapper.xml
index 3f3c070..d2fb54b 100644
--- a/src/main/resources/mapper/sys/AttachMapper.xml
+++ b/src/main/resources/mapper/sys/AttachMapper.xml
@@ -106,8 +106,7 @@
 
     <select id="selectFmeLogs" resultType="com.lf.server.entity.data.FmeLogEntity">
         select * from lf.sys_fme_log
-        where count > 0 and update_time is null and create_time > now()::timestamp + '-1 min'
-            position(tcdm in 'bd.b_pac_hydrogeology,bd.b_pac_frozensoil,bd.b_pac_geologic_hazard,bd.b_pac_marine_meteorological,bd.b_pac_meteorological,bs.m_equipment_nameplate,bs.m_hydraulic_protection,bs.m_marker,bs.s_explorationpoint,bs.u_sectionline') > 0;
+        where count > 0 and update_time is null and create_time > now()::timestamp + '-1 min' and position(tcdm in '${tabs}') > 0;
     </select>
 
     <update id="updateFmeLog">

--
Gitblit v1.9.3