From 1f9acd6a4190052a909ff04102f8b15b57444ecc Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期五, 26 五月 2023 16:46:48 +0800
Subject: [PATCH] 1

---
 src/main/java/com/lf/server/service/show/ApplyService.java |   40 ++++++++++++++++++++++++++++++++++------
 1 files changed, 34 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/lf/server/service/show/ApplyService.java b/src/main/java/com/lf/server/service/show/ApplyService.java
index 9e831de..518d2ae 100644
--- a/src/main/java/com/lf/server/service/show/ApplyService.java
+++ b/src/main/java/com/lf/server/service/show/ApplyService.java
@@ -2,6 +2,7 @@
 
 import com.lf.server.entity.all.StaticData;
 import com.lf.server.entity.ctrl.DownloadReqEntity;
+import com.lf.server.entity.data.MetaEntity;
 import com.lf.server.entity.show.ApplyEntity;
 import com.lf.server.entity.show.FlowEntity;
 import com.lf.server.entity.sys.UserEntity;
@@ -162,7 +163,7 @@
         ApplyEntity apply = new ApplyEntity();
         apply.setUserid(ue.getId());
         apply.setDepids(StringHelper.join(dr.getDepcodes(), ","));
-        apply.setTabs(StringHelper.join(dr.getTabs(), ","));
+        apply.setTabs(getTabs(dr));
         apply.setEntities(StringHelper.join(dr.getEntities(), ","));
         apply.setWkt(dr.getWkt());
         apply.setPwd(aesPwd);
@@ -176,6 +177,33 @@
         apply.setFilters(dr.getFilter());
 
         return apply;
+    }
+
+    /**
+     * 鑾峰彇琛ㄥ悕
+     */
+    private String getTabs(DownloadReqEntity dr) {
+        if (!StaticData.SYS_META.equals(dr.getEntities())) {
+            return StringHelper.join(dr.getTabs(), ",");
+        }
+
+        List<MetaEntity> list = metaService.selectMetaFiles(dr.getIds());
+        if (null == list || list.isEmpty()) {
+            return "鍏冩暟鎹〃";
+        }
+
+        StringBuilder sb = new StringBuilder();
+        for (MetaEntity me : list) {
+            sb.append(me.getName()).append(",");
+            if (sb.length() > StaticData.I1000) {
+                break;
+            }
+        }
+        if (sb.length() > 1) {
+            sb.deleteCharAt(sb.length() - 1);
+        }
+
+        return sb.toString();
     }
 
     /**
@@ -217,10 +245,10 @@
             dr.setPwd(pwd);
             dr.setDepcode(entity.getDepcode());
             dr.setDirs(entity.getDircodes());
-            dr.setIds(getIds(entity));
+            dr.setIds(getIds(entity.getGids()));
             dr.setFilter(entity.getFilters());
 
-            String guid = "sysmeta".equals(entity.getEntities()) ? metaService.downloadMeteReq(ue, dr) : dataLibService.downloadDbReq(ue, dr);
+            String guid = StaticData.SYS_META.equals(entity.getEntities()) ? metaService.downloadMeteReq(ue, dr) : dataLibService.downloadDbReq(ue, dr);
             if (!StringHelper.isEmpty(guid)) {
                 entity.setGuid(guid);
                 update(entity);
@@ -233,13 +261,13 @@
     /**
      * 鑾峰彇ID闆嗗悎
      */
-    private List<Integer> getIds(ApplyEntity entity) {
-        if (StringHelper.isEmpty(entity.getGids())) {
+    private List<Integer> getIds(String gids) {
+        if (StringHelper.isEmpty(gids)) {
             return null;
         }
 
         List<Integer> list = new ArrayList<>();
-        for (String str : entity.getGids().split(StaticData.COMMA)) {
+        for (String str : gids.split(StaticData.COMMA)) {
             list.add(Integer.parseInt(str));
         }
 

--
Gitblit v1.9.3