From 64f3ca55961af31696b206a225ad0ee98247a8b2 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期五, 25 十一月 2022 21:32:31 +0800
Subject: [PATCH] 1

---
 src/main/java/com/lf/server/controller/all/BaseUploadController.java |   32 ++++++++++++++++++++++++++++----
 src/main/java/com/lf/server/controller/data/MetaController.java      |    7 +++++--
 src/main/java/com/lf/server/service/data/MetaService.java            |    5 +++++
 src/main/java/com/lf/server/mapper/data/MetaMapper.java              |    8 ++++++++
 src/main/resources/mapper/data/MetaMapper.xml                        |    5 +++++
 5 files changed, 51 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/lf/server/controller/all/BaseUploadController.java b/src/main/java/com/lf/server/controller/all/BaseUploadController.java
index 5857a6d..af09edc 100644
--- a/src/main/java/com/lf/server/controller/all/BaseUploadController.java
+++ b/src/main/java/com/lf/server/controller/all/BaseUploadController.java
@@ -7,8 +7,10 @@
 import com.lf.server.entity.data.VerEntity;
 import com.lf.server.entity.sys.DepEntity;
 import com.lf.server.entity.sys.UserEntity;
+import com.lf.server.helper.StringHelper;
 import com.lf.server.service.all.BaseUploadService;
 import com.lf.server.service.data.DirService;
+import com.lf.server.service.data.MetaService;
 import com.lf.server.service.data.VerService;
 import com.lf.server.service.sys.DepService;
 import com.lf.server.service.sys.TokenService;
@@ -16,10 +18,7 @@
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -38,6 +37,9 @@
 
     @Autowired
     VerService verService;
+
+    @Autowired
+    MetaService metaService;
 
     @Autowired
     protected TokenService tokenService;
@@ -156,4 +158,26 @@
             return fail(ex.getMessage(), null);
         }
     }
+
+    @SysLog()
+    @ApiOperation(value = "鍒犻櫎鍏冩暟鎹�")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "ids", value = "ID鏁扮粍", dataType = "Integer", paramType = "query", example = "1,2")
+    })
+    @GetMapping(value = "/deleteMetas")
+    public ResponseMsg<Integer> deleteMetas(@RequestParam List<Integer> ids) {
+        try {
+            if (ids == null || ids.isEmpty()) {
+                return fail("id鏁扮粍涓嶈兘涓虹┖", -1);
+            }
+
+            // int count = metaService.deletes(ids)
+            String idStr = StringHelper.join(ids, ",");
+            int count = metaService.deleteCascade(idStr);
+
+            return success(count);
+        } catch (Exception ex) {
+            return fail(ex.getMessage(), -1);
+        }
+    }
 }
diff --git a/src/main/java/com/lf/server/controller/data/MetaController.java b/src/main/java/com/lf/server/controller/data/MetaController.java
index 494e1e4..53da3ac 100644
--- a/src/main/java/com/lf/server/controller/data/MetaController.java
+++ b/src/main/java/com/lf/server/controller/data/MetaController.java
@@ -151,7 +151,8 @@
     @GetMapping(value = "/delete")
     public ResponseMsg<Integer> delete(int id) {
         try {
-            int count = metaService.delete(id);
+            // int count = metaService.delete(id)
+            int count = metaService.deleteCascade(String.valueOf(id));
 
             return success(count);
         } catch (Exception ex) {
@@ -171,7 +172,9 @@
                 return fail("id鏁扮粍涓嶈兘涓虹┖", -1);
             }
 
-            int count = metaService.deletes(ids);
+            // int count = metaService.deletes(ids)
+            String idStr = StringHelper.join(ids, ",");
+            int count = metaService.deleteCascade(idStr);
 
             return success(count);
         } catch (Exception ex) {
diff --git a/src/main/java/com/lf/server/mapper/data/MetaMapper.java b/src/main/java/com/lf/server/mapper/data/MetaMapper.java
index a3bed32..e382609 100644
--- a/src/main/java/com/lf/server/mapper/data/MetaMapper.java
+++ b/src/main/java/com/lf/server/mapper/data/MetaMapper.java
@@ -112,6 +112,14 @@
     public Integer deletes(List<Integer> ids);
 
     /**
+     * 绾ц仈鍒犻櫎
+     *
+     * @param ids
+     * @return
+     */
+    public Integer deleteCascade(String ids);
+
+    /**
      * 鏇存柊涓�鏉�
      *
      * @param entity
diff --git a/src/main/java/com/lf/server/service/data/MetaService.java b/src/main/java/com/lf/server/service/data/MetaService.java
index 3205514..c4f85a8 100644
--- a/src/main/java/com/lf/server/service/data/MetaService.java
+++ b/src/main/java/com/lf/server/service/data/MetaService.java
@@ -82,6 +82,11 @@
     }
 
     @Override
+    public Integer deleteCascade(String ids) {
+        return metaMapper.deleteCascade(ids);
+    }
+
+    @Override
     public Integer update(MetaEntity entity) {
         return metaMapper.update(entity);
     }
diff --git a/src/main/resources/mapper/data/MetaMapper.xml b/src/main/resources/mapper/data/MetaMapper.xml
index 211f050..ac15172 100644
--- a/src/main/resources/mapper/data/MetaMapper.xml
+++ b/src/main/resources/mapper/data/MetaMapper.xml
@@ -100,6 +100,11 @@
         </foreach>
     </delete>
 
+    <delete id="deleteCascade">
+        delete from lf.sys_meta_file where metaid in (${ids});
+        delete from lf.sys_meta where id in (${ids});
+    </delete>
+
     <update id="update">
         update lf.sys_meta
         set name=#{name},dirid=#{dirid},depid=#{depid},verid=#{verid},type=#{type},sizes=#{sizes},tab=#{tab},rows=#{rows},cs=#{cs},scale=#{scale},resolution=#{resolution},gather=now(),batch=#{batch},descr=#{descr},update_user=#{updateUser},update_time=now(),geom=#{geom}

--
Gitblit v1.9.3