From e69dec94fe9763d04425756370760698850f926f Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 22 三月 2024 19:38:39 +0800
Subject: [PATCH] 部门端基础数据保存、基础数据导入模板下载、基础数据导入接口

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbFieldServiceImpl.java |   36 ++++++++++++++++++++++++------------
 1 files changed, 24 insertions(+), 12 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbFieldServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbFieldServiceImpl.java
index 8555a6f..9c64edf 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbFieldServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbFieldServiceImpl.java
@@ -6,6 +6,7 @@
 import com.ruoyi.common.enums.FieldInputTypeEnum;
 import com.ruoyi.common.enums.FieldTypeEnum;
 import com.ruoyi.common.enums.ShowStatusEnum;
+import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.BeanUtils;
 import com.ruoyi.common.utils.CollUtils;
 import com.ruoyi.common.utils.StringUtils;
@@ -14,6 +15,7 @@
 import com.ruoyi.system.domain.TbFieldCategory;
 import com.ruoyi.system.dto.FieldDTO;
 import com.ruoyi.system.dto.ShowHideDTO;
+import com.ruoyi.system.dto.update.FieldUpdateDTO;
 import com.ruoyi.system.mapper.TbFieldMapper;
 import com.ruoyi.system.query.FieldQuery;
 import com.ruoyi.system.service.TbBasicDataConfigService;
@@ -27,6 +29,7 @@
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
+import java.util.Objects;
 import java.util.concurrent.CompletableFuture;
 import java.util.stream.Collectors;
 
@@ -52,9 +55,9 @@
         //1:数字 2:文本 3:百分比
         if (FieldTypeEnum.TEXT.getCode().equals(fieldType)) {
             if (StringUtils.isNull(dto.getTextInputType())) {
-                throw new RuntimeException("输入类型不能为空");
+                throw new ServiceException("输入类型不能为空");
             } else if (FieldInputTypeEnum.FIXED_CONTENT.getCode().equals(dto.getTextInputType()) && StringUtils.isBlank(dto.getTextContent())) {
-                throw new RuntimeException("内容设置不能为空");
+                throw new ServiceException("内容设置不能为空");
             }
         }
         TbField tbField = BeanUtils.copyBean(dto, TbField.class);
@@ -76,7 +79,7 @@
         log.info("======主线程执行showHide{}",Thread.currentThread().getName() );
         TbField field = this.getById(dto.getId());
         if (StringUtils.isNull(field)) {
-            throw new RuntimeException("非法参数");
+            throw new ServiceException("非法参数");
         }
         //隐藏字段
         this.lambdaUpdate().set(TbField::getStatus, dto.getStatus()).eq(TbField::getId, dto.getId()).update();
@@ -119,25 +122,34 @@
     }
 
     @Override
-    public List<String> influencedData(Integer id) {
-        //List<TbBasicDataConfig> list = tbBasicDataConfigService.lambdaQuery().like(TbBasicDataConfig::getFieldIdStr, id).list();
-        List<TbBasicDataConfig> list = tbBasicDataConfigService.lambdaQuery().eq(TbBasicDataConfig::getStatus, ShowStatusEnum.SHOW.getCode()).list();
+    public String influencedData(Integer id) {
+        List<TbBasicDataConfig> list = tbBasicDataConfigService.lambdaQuery().eq(TbBasicDataConfig::getStatus, ShowStatusEnum.SHOW).list();
         if (CollUtils.isEmpty(list)) {
-            return CollUtils.emptyList();
+            return "";
         }
-        List<String> collect = list.stream().map(config -> {
+        String collect = list.stream().map(config -> {
             String fieldIdStr = config.getFieldIdStr();
             String[] split = fieldIdStr.split(",");
             //字符串数组转为List
-            List<String> idList = new ArrayList<>(Arrays.asList(split));
+            List<String> idList = Arrays.asList(split);
             if (idList.contains(id.toString())) {
                 return config.getTypeName();
             }
             return null;
-        }).collect(Collectors.toList());
-        if (CollUtils.isEmpty(collect)) {
-            return CollUtils.emptyList();
+        }).filter(Objects::nonNull).collect(Collectors.joining(","));
+        if (StringUtils.isBlank(collect)) {
+            return "";
         }
         return collect;
     }
+
+    @Override
+    public void update(FieldUpdateDTO dto) {
+        TbField field = this.getById(dto.getId());
+        if (Objects.isNull(field)) {
+            throw new ServiceException("参数异常");
+        }
+        TbField tbField = BeanUtils.copyBean(dto, TbField.class);
+        this.updateById(tbField);
+    }
 }
\ No newline at end of file

--
Gitblit v1.7.1