Эх сурвалжийг харах

Merge branch 'master' of http://192.168.101.10:13000/boman/boman-framwork

sr 4 жил өмнө
parent
commit
8e50126895

+ 3 - 2
boman-web-core/src/main/java/com/boman/web/core/service/TableServiceCmdService.java

@@ -358,7 +358,7 @@ public class TableServiceCmdService {
                         }
                         // fk
                         if (isNotEmpty(column.getForeignKey())) {
-                            column.setFkInfo(getFkMap(column.getFkInfo(), json.get(columnName)));
+                            column.setFkInfo(getFkInfoForGetObject(column.getFkInfo(), json.get(columnName)));
                         }
                         // annex
                         if (HTML_IMAGE_UPLOAD.equalsIgnoreCase(htmlType) || HTML_FILE_UPLOAD.equalsIgnoreCase(htmlType)) {
@@ -452,7 +452,8 @@ public class TableServiceCmdService {
                 btns.add(RoleMenuDto.getBtnFromPerms(perms));
             }
         }
-
+        // 删除Q
+        btns.remove(GenTable.Q);
         return btns;
     }
 

+ 4 - 0
boman-web-core/src/main/java/com/boman/web/core/utils/AuthUtils.java

@@ -83,6 +83,10 @@ public class AuthUtils {
      * @param errMsg    错误提示语
      */
     public static void containsFunction(String menuRole, String funcType, String errMsg) {
+        if (isEmpty(menuRole)) {
+            throw new NoSuchFunctionException("菜单权限未配置");
+
+        }
         if (!menuRole.contains(funcType)) {
             throw new NoSuchFunctionException(errMsg);
         }

+ 27 - 2
boman-web-core/src/main/java/com/boman/web/core/utils/HandlerFormDataUtils.java

@@ -111,7 +111,7 @@ public class HandlerFormDataUtils {
             for (GenTableColumn column : fkColumns) {
                 String selfColumnName = column.getColumnName();
                 if (containsKeyIgnoreCase(jsonObject, selfColumnName)) {
-                    JSONObject fkMap = getFkMap(column.getFkInfo(), jsonObject.get(selfColumnName));
+                    JSONObject fkMap = getFkInfoForQueryList(column.getFkInfo(), jsonObject.get(selfColumnName));
                     jsonObject.put(selfColumnName.toLowerCase(), fkMap);
                 }
             }
@@ -166,7 +166,7 @@ public class HandlerFormDataUtils {
         return DateUtils.dateTime(date);
     }
 
-    public static JSONObject getFkMap(Map<String, Object> fkInfoMap, Object value) {
+    public static JSONObject getFkInfoForQueryList(Map<String, Object> fkInfoMap, Object value) {
         Object fkTableName = fkInfoMap.get(FK_TABLE_NAME);
         Object fkColumnName = fkInfoMap.get(FK_COLUMN_NAME);
         Object dkColumnName = fkInfoMap.get(DK_COLUMN_NAME);
@@ -187,6 +187,31 @@ public class HandlerFormDataUtils {
         return result;
     }
 
+
+    public static JSONObject getFkInfoForGetObject(Map<String, Object> fkInfoMap, Object value) {
+        Object fkTableName = fkInfoMap.get(FK_TABLE_NAME);
+        Object fkColumnName = fkInfoMap.get(FK_COLUMN_NAME);
+        Object dkColumnName = fkInfoMap.get(DK_COLUMN_NAME);
+
+        // 到子表中查
+        JSONObject param = new JSONObject();
+        param.put(fkColumnName.toString(), value);
+        IBaseSelectService selectService = SpringUtils.getBean(IBaseSelectService.class);
+        JSONObject fkInfo = selectService.getOneByMap(fkTableName.toString(), param);
+        JSONObject result = new JSONObject();
+        if (isEmpty(fkInfo)) {
+            return result;
+        }
+
+        Object fkValue = fkInfo.get(dkColumnName);
+        result.put(SINGLE_OBJ_NAME, value);
+        result.put(SINGLE_OBJ_VALUE, fkValue);
+        result.put(FK_TABLE_NAME, fkTableName);
+        result.put(FK_COLUMN_NAME, fkColumnName);
+        result.put(DK_COLUMN_NAME, dkColumnName);
+        return result;
+    }
+
     public static List<SysFile> getAnnex(String value) {
         if (ArrayUtils.equalsEmptyArray(value)) {
             return null;