From 7d7b42822d9a11f8fa107fc3bbbbd518f0a7ef91 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期六, 09 十一月 2024 01:17:28 +0800
Subject: [PATCH] 1、修复系统功能模块-》管理功能模块修改是否有效功能修改无效问题。 2、Action管理,Action分类删除报错问题修改。

---
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsActionServiceImpl.java |   63 +++++++++++++++++++++++++++++--
 1 files changed, 59 insertions(+), 4 deletions(-)

diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsActionServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsActionServiceImpl.java
index fd3d7b9..a79ae49 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsActionServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsActionServiceImpl.java
@@ -98,6 +98,7 @@
         PLActionCls pac = new PLActionCls();
         pac.name = pLActionCls.getName();
         pac.pid = pLActionCls.getPid();
+        pac.id = pLActionCls.getId();
         pac.description = pLActionCls.getDescription() == null ? "" : pLActionCls.getDescription();
         pac.creator = WebUtil.getCurrentUserId();
         pac.createTime = System.currentTimeMillis();
@@ -127,14 +128,15 @@
         PLActionCls[] clses = platformClientUtil.getUIService().getPLActionClsArray();
         PLActionClsDTO treDto = new PLActionClsDTO();
         treDto.setName("Action鍒嗙被");
+        treDto.setId("root");
         Map<String, List<PLActionCls>> allDataMap = Arrays.stream(clses).collect(Collectors.groupingBy(pl -> pl.pid));
 
         for (PLActionCls cls : clses) {
-            if (StringUtils.isBlank(cls.pid)) {
+            if (StringUtils.isBlank(cls.pid) || cls.pid.equals("root")) {
                 PLActionClsDTO parentDto = new PLActionClsDTO();
                 parentDto.setId(cls.id);
                 parentDto.setName(cls.name);
-                parentDto.setPid(cls.pid);
+                parentDto.setPid("root");
                 parentDto.setDescription(cls.description);
                 parentDto.setCreator(cls.creator);
                 parentDto.setCreateTime(cls.createTime);
@@ -186,7 +188,7 @@
         Constraint[] consArray ;
         if(StringUtils.isNotBlank(dto.getPlactioncls())){
             consArray = new Constraint[7];
-            consArray[6] = new Constraint("plactioncls", dto.getPlactioncls());
+            consArray[6] = new Constraint("plactioncls", dto.getPlactioncls().equals("root") ? "": dto.getPlactioncls());
         }else {
             consArray = new Constraint[6];
         }
@@ -565,6 +567,60 @@
         }
         return BaseResult.success();
     }
+    /**
+     * 鏌ヨAction鍙傛暟鍒楄〃鏁版嵁
+     * actionOid 鍙傛暟涓婚敭
+     * @return 淇濆瓨缁撴灉
+     */
+    @Override
+    public BaseResult getPLActionParam(String actionOid) throws PLException {
+        if (StringUtils.isBlank(actionOid)){
+            throw new PLException("500", new String[]{"Action涓婚敭涓嶈兘涓虹┖锛�"});
+        }
+        PLActionParam[] paramArrays = platformClientUtil.getUIService().getPLActionParamArrayByActionId(actionOid);
+        List<PLActionParamDTO> dtos = new ArrayList<>();
+        for (PLActionParam paramArray : paramArrays) {
+            PLActionParamDTO dto = new PLActionParamDTO();
+            dto.setAction(paramArray.action);
+            dto.setOid(paramArray.oid);
+            dto.setName(paramArray.name);
+            dto.setDescription(paramArray.description);
+            dto.setDefaultValue(paramArray.defaultValue);
+            dtos.add(dto);
+        }
+        return BaseResult.dataList(dtos);
+    }
+
+    /**
+     * 鍒犻櫎鍒嗙被
+     * @param dto 鍒嗙被瀵硅薄
+     * @return 澶勭悊缁撴灉
+     * @throws PLException
+     */
+    @Override
+    public BaseResult deleteActionCls(PLActionClsDTO dto) throws PLException {
+        PLActionCls[] clses = platformClientUtil.getUIService().getPLActionClsArray();
+        // 灏嗘墍鏈夊垎绫荤埗鍒嗙被淇濆瓨
+        HashSet<String> clsPids = new HashSet<String>();
+        for (PLActionCls plActionCls : clses) {
+            clsPids.add(plActionCls.pid);
+        }
+        if (dto.getName().equals("鏈垎绫�")) {
+            throw new PLException("500", new String[]{"鏈垎绫讳笉鑳藉垹闄�!"});
+        }
+        if (clsPids.contains(dto.getId())) {
+            throw new PLException("500", new String[]{"璇ュ垎绫讳笅瀛樺湪瀛愬垎绫讳笉鑳藉垹闄わ紒\n璇峰垹闄ゆ鍒嗙被涓嬬殑瀛愬垎绫伙紒"});
+        }
+        // 鎵ц鍒犻櫎鎿嶄綔
+        PLActionCls actionCls = new PLActionCls();
+        actionCls.id = dto.getId();
+        actionCls.name = dto.getName();
+        String message = platformClientUtil.getUIService().deletePLActionCls(actionCls);
+        if (message.startsWith("0")) {
+            throw new PLException("500", new String[]{"鍒犻櫎鍒嗙被澶辫触锛�" + message.substring(1)});
+        }
+        return BaseResult.success("鍒嗙被鍒犻櫎鎴愬姛锛�" + message.substring(1));
+    }
 
     public boolean isValidPageForamt(PLActionExpDTO plActionExpDTO) throws PLException {
 
@@ -620,7 +676,6 @@
         }
         return res;
     }
-
 
     /**
      * 澶勭悊鍙傛暟鍒楄〃

--
Gitblit v1.9.3