From 7377c6ab43dfc4b622055a992efaadc972c24726 Mon Sep 17 00:00:00 2001
From: yuxc <yuxc@vci-tech.com>
Date: 星期五, 03 一月 2025 17:18:58 +0800
Subject: [PATCH] 1、管理功能模块、业务功能模块,判断菜单标识alias是否唯一并且必须是英文。 2、操作类型模块添加图标数据。 3、ACTION增加图标。

---
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/SmHMSysModConfigServiceImpl.java |   66 ++++++++++++++++++++++++++------
 1 files changed, 53 insertions(+), 13 deletions(-)

diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/SmHMSysModConfigServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/SmHMSysModConfigServiceImpl.java
index 70f48bc..00e1816 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/SmHMSysModConfigServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/SmHMSysModConfigServiceImpl.java
@@ -7,6 +7,7 @@
 import com.vci.corba.framework.data.*;
 import com.vci.pagemodel.ExpExcelConditionVO;
 import com.vci.pagemodel.MenuVO;
+import com.vci.pagemodel.OperateVO;
 import com.vci.starter.poi.bo.SheetDataSet;
 import com.vci.starter.poi.bo.SheetRowData;
 import com.vci.starter.poi.bo.WriteExcelData;
@@ -25,6 +26,7 @@
 import com.vci.web.util.PlatformClientUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -116,6 +118,9 @@
         VciBaseUtil.alertNotNull(menuVO,"淇敼鐨勬ā鍧楀璞�");
         try {
             String res = "";
+            if(!menuVO.getAlias().matches("[a-z A-Z \\p{Punct}+]*")){
+                throw new VciBaseException("娉ㄦ剰锛氬睘鎬у悕鍙兘涓鸿嫳鏂囧瓧姣�!");
+            }
             //鏇存柊鏁版嵁搴�
             res = foDelegate.updateMod(menuVO);
             /**
@@ -154,10 +159,10 @@
             String puid = "";
             if("FunctionObject".equals(menuVO.getModeType())) {
                 puid = menuVO.getId();
-            }else if("modelManagmentNode".equals(menuVO.getId())) {
-                puid = "modelManagmentNode";
-            }else if("systemManagmentNode".equals(menuVO.getId())) {
-                puid = "systemManagmentNode";
+            }else if("business".equals(menuVO.getId())) {
+                puid = "business";
+            }else if("system".equals(menuVO.getId())) {
+                puid = "system";
             }
             if(Func.isBlank(puid)){
                 throw new VciBaseException("鏈壘鍒拌鍒犻櫎鐨勬ā鍧楋紒");
@@ -224,12 +229,30 @@
     }
 
     /**
+     * 鎿嶄綔瀵硅薄澶嶅埗
+     * @param operateVO 鎿嶄綔浼犺緭瀵硅薄
+     * @param operateInfo 鎿嶄綔淇℃伅
+     */
+    private void copyOperationProperties(OperateVO operateVO, OperateInfo operateInfo){
+        operateInfo.id = operateVO.getId();
+        operateInfo.name = operateVO.getName();
+        operateInfo.alias = operateVO.getAlias();
+        operateInfo.image = operateVO.getSource();
+        operateInfo.desc = operateVO.getDesc();
+        operateInfo.identify = operateVO.getIdentify();
+        operateInfo.seq = operateVO.getSeq();
+    }
+
+    /**
      * 澧炲姞鎿嶄綔绫诲瀷
      * @return
      */
     @Override
-    public OperateInfo addOperationType(OperateInfo operateInfo) throws VciBaseException {
+    public OperateInfo addOperationType(OperateVO operateVO) throws VciBaseException {
         try {
+            OperateInfo operateInfo = new OperateInfo();
+            copyOperationProperties(operateVO,operateInfo);
+            operateInfo.image = operateVO.getSource();
             //鏍¢獙
             this.checkItem(operateInfo);
             String s = foDelegate.saveOperate(operateInfo);
@@ -253,13 +276,16 @@
 
     /**
      * 淇敼鎿嶄綔绫诲瀷
-     * @param operateInfo
+     * @param operateVO
      * @return
      */
     @Override
-    public OperateInfo updateOperationType(OperateInfo operateInfo) throws VciBaseException {
+    public OperateInfo updateOperationType(OperateVO operateVO) throws VciBaseException {
         try {
+            OperateInfo operateInfo = new OperateInfo();
+            copyOperationProperties(operateVO, operateInfo);
             this.checkItem(operateInfo);
+            operateInfo.image = operateVO.getSource();
             String res = foDelegate.updateOperate(operateInfo);
             /**杩斿洖1琛ㄧず鍚嶇О鏈夐噸澶嶏紝杩斿洖2琛ㄧず鏍囪瘑鏈夐噸澶�,杩斿洖3琛ㄧず椤哄簭鏈夐噸澶�**/
             if (res.equals("1")) {
@@ -329,7 +355,7 @@
         if (operateInfo.name.length() > 128) {
             throw new VciBaseException("鍚嶇О闀垮害涓嶈兘瓒呰繃128锛�");
         }
-        if (operateInfo.desc.length() > 255) {
+        if (operateInfo.desc != null &&operateInfo.desc.length() > 255) {
             throw new VciBaseException("鎻忚堪闀垮害涓嶈兘瓒呰繃255锛�");
         }
         if (operateInfo.alias.length() > 128) {
@@ -850,7 +876,7 @@
 
                                 } else {
                                     funObj.id = id;
-                                    funObj.parentId = "modelManagmentNode";
+                                    funObj.parentId = "business";
                                     fuzhi(funObj,oneData);
                                     fileFunctionDatas.add(funObj);
                                     first=false;
@@ -1300,10 +1326,10 @@
                 /*String parentId = "";
                 if(menuVO.getModeType().equals("FunctionObject")) {
                     parentId = menuVO.getParentId();
-                }else if("modelManagmentNode".equals(menuVO.getParentId())) {
-                    parentId = "modelManagmentNode";
-                }else if("systemManagmentNode".equals(menuVO.getParentId())) {
-                    parentId = "systemManagmentNode";
+                }else if("business".equals(menuVO.getParentId())) {
+                    parentId = "business";
+                }else if("system".equals(menuVO.getParentId())) {
+                    parentId = "system";
                 }*/
                 obj.parentId = menuVO.getParentId();
             }else{
@@ -1613,4 +1639,18 @@
 
     }
 
+    /**
+     * 鑾峰彇鍦ㄧ嚎浜哄憳
+     *
+     * @return
+     */
+    @Override
+    public List<OnlineUserInfo> getOnlineUsers() {
+        try {
+            OnlineUserInfo[] onlinUserInfos = platformClientUtil.getFrameworkService().getOnlineUsers();
+            return Arrays.asList(onlinUserInfos);
+        } catch (PLException e) {
+            throw new VciBaseException(String.valueOf(e.code), e.messages);
+        }
+    }
 }

--
Gitblit v1.9.3