1811872455@163.com hace 4 días
padre
commit
ddb68e0400

+ 25 - 0
storlead-centre-api/src/main/java/com/storlead/centre/app/AppManageApiController.java

@@ -3,9 +3,13 @@ package com.storlead.centre.app;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.storlead.centre.entity.SysAppPageInfoEntity;
 import com.storlead.centre.pojo.dto.SysAppInfoQuery;
 import com.storlead.centre.pojo.entity.SysAppInfoEntity;
+import com.storlead.centre.pojo.vo.SysAppPageVO;
+import com.storlead.centre.pojo.vo.SysAppVO;
 import com.storlead.centre.service.SysAppInfoService;
+import com.storlead.centre.service.SysAppPageInfoService;
 import com.storlead.centre.util.CryptoZipUtil;
 import com.storlead.centre.util.HttpSecurityCheckUtil;
 import com.storlead.framework.common.constant.CommonConstant;
@@ -26,6 +30,7 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * @program: storlead-centre-platform
@@ -41,6 +46,9 @@ public class AppManageApiController {
     @Resource
     private SysAppInfoService sysAppInfoService;
 
+    @Resource
+    private SysAppPageInfoService sysAppPageInfoService;
+
     private static final String SALT_KEY = "G4YfTqX6Kh8cHQy5";
 
     @PostMapping(value = "/save")
@@ -80,6 +88,23 @@ public class AppManageApiController {
         LambdaQueryWrapper<SysAppInfoEntity> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.eq(SysAppInfoEntity::getIsDelete, CommonConstant.FALSE_FLAG);
         List<SysAppInfoEntity> apps = sysAppInfoService.list(queryWrapper);
+        List<SysAppVO> appTree = SysAppVO.appInfoListToAppTreeVoList(apps);
+
+        if (CollectionUtils.isEmpty(appTree)) {
+            return Result.result(appTree);
+        }
+        LambdaQueryWrapper<SysAppPageInfoEntity> queryWra1 = new LambdaQueryWrapper<>();
+        queryWra1.eq(SysAppPageInfoEntity::getIsDelete, CommonConstant.FALSE_FLAG);
+        List<SysAppPageInfoEntity> appPages = sysAppPageInfoService.list(queryWra1);
+        if (CollectionUtils.isEmpty(appPages)) {
+            return Result.result(appTree);
+        }
+
+        appTree.forEach(e -> {
+           List<SysAppPageInfoEntity> appPagels = appPages.stream().filter(p ->p.getAppId().equals(e.getAppId())).collect(Collectors.toList());
+           List<SysAppPageVO> pageTree =  SysAppPageVO.appPageInfoListToAppPageTreeVoList(appPagels);
+           e.setAppPages(pageTree);
+        });
 
         return Result.result(apps);
     }

+ 25 - 0
storlead-centre-api/src/main/java/com/storlead/centre/app/AppPageManageApiController.java

@@ -0,0 +1,25 @@
+package com.storlead.centre.app;
+
+import com.storlead.centre.service.SysAppPageInfoService;
+import io.swagger.annotations.Api;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import javax.annotation.Resource;
+
+/**
+ * @program: storlead-centre-platform
+ * @description:
+ * @author: chenkq
+ * @create: 2025-12-08 14:54
+ */
+
+@RestController
+@RequestMapping("/app/page/manage")
+@Api(tags = "2.应用页面管理")
+public class AppPageManageApiController {
+
+    @Resource
+    private SysAppPageInfoService sysAppPageInfoService;
+
+
+}

+ 20 - 0
storlead-centre-service/src/main/java/com/storlead/centre/controller/SysAppPageInfoController.java

@@ -0,0 +1,20 @@
+package com.storlead.centre.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 应用页面配置表 前端控制器
+ * </p>
+ *
+ * @author chenkq
+ * @since 2025-12-08
+ */
+@RestController
+@RequestMapping("/sys-app-page-info-entity")
+public class SysAppPageInfoController {
+
+}

+ 56 - 0
storlead-centre-service/src/main/java/com/storlead/centre/entity/SysAppPageInfoEntity.java

@@ -0,0 +1,56 @@
+package com.storlead.centre.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.storlead.framework.mybatis.entity.SysBaseField;
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 应用页面配置表
+ * </p>
+ *
+ * @author chenkq
+ * @since 2025-12-08
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@TableName("sys_app_page_info")
+@ApiModel(value="SysAppPageInfoEntity对象", description="应用页面配置表")
+public class SysAppPageInfoEntity extends SysBaseField {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "主键ID")
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    @ApiModelProperty(value = "应用id")
+    @TableField("app_id")
+    private Long appId;
+
+    @ApiModelProperty(value = "应用名称")
+    @TableField("page_name")
+    private String pageName;
+
+    @ApiModelProperty(value = "应用标识(唯一)")
+    @TableField("page_code")
+    private String pageCode;
+
+    @ApiModelProperty(value = "回调地址(OAuth2)")
+    @TableField("redirect_uri")
+    private String redirectUri;
+
+    @ApiModelProperty(value = "应用描述")
+    @TableField("description")
+    private String description;
+
+
+}

+ 16 - 0
storlead-centre-service/src/main/java/com/storlead/centre/mapper/SysAppPageInfoMapper.java

@@ -0,0 +1,16 @@
+package com.storlead.centre.mapper;
+
+import com.storlead.centre.entity.SysAppPageInfoEntity;
+import com.storlead.framework.mybatis.mapper.MyBaseMapper;
+
+/**
+ * <p>
+ * 应用页面配置表 Mapper 接口
+ * </p>
+ *
+ * @author chenkq
+ * @since 2025-12-08
+ */
+public interface SysAppPageInfoMapper extends MyBaseMapper<SysAppPageInfoEntity> {
+
+}

+ 32 - 0
storlead-centre-service/src/main/java/com/storlead/centre/mapper/xml/SysAppPageInfoMapper.xml

@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.storlead.centre.mapper.SysAppPageInfoMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.storlead.centre.entity.SysAppPageInfoEntity">
+        <id column="id" property="id" />
+    <result column="sort" property="sort" />
+    <result column="enabled" property="enabled" />
+    <result column="create_by" property="createBy" />
+    <result column="create_time" property="createTime" />
+    <result column="update_by" property="updateBy" />
+    <result column="update_time" property="updateTime" />
+        <result column="app_id" property="appId" />
+        <result column="page_name" property="pageName" />
+        <result column="page_code" property="pageCode" />
+        <result column="redirect_uri" property="redirectUri" />
+        <result column="description" property="description" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        sort,
+        enabled,
+        create_by,
+        create_time,
+        update_by,
+        update_time,
+        id, app_id, page_name, page_code, redirect_uri, description
+    </sql>
+
+</mapper>

+ 47 - 0
storlead-centre-service/src/main/java/com/storlead/centre/pojo/vo/SysAppPageVO.java

@@ -0,0 +1,47 @@
+package com.storlead.centre.pojo.vo;
+
+import com.storlead.centre.entity.SysAppPageInfoEntity;
+import com.storlead.centre.pojo.entity.SysAppInfoEntity;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.util.CollectionUtils;
+
+import java.util.Collections;
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+/**
+ * @program: storlead-centre-platform
+ * @description:
+ * @author: chenkq
+ * @create: 2025-12-08 15:03
+ */
+@Data
+public class SysAppPageVO {
+
+    @ApiModelProperty(value = "主键ID")
+    private Long pageId;
+
+    @ApiModelProperty(value = "应用名称")
+    private String appName;
+
+
+    public static List<SysAppPageVO> appPageInfoListToAppPageTreeVoList(List<SysAppPageInfoEntity> vals) {
+        if (CollectionUtils.isEmpty(vals)) {
+            return null;
+        }
+        List<SysAppPageVO> departmentTrees = vals.stream().map(SysAppPageVO::appPageInfoListToAppPageTreeVo).filter(obj -> !Objects.isNull(obj)).collect(Collectors.toList());
+        return departmentTrees;
+    }
+
+    public static SysAppPageVO  appPageInfoListToAppPageTreeVo(SysAppPageInfoEntity val) {
+        if (null == val) {
+            return null;
+        }
+        SysAppPageVO appPageTree = new SysAppPageVO();
+        appPageTree.setPageId(val.getId());
+        appPageTree.setAppName(val.getPageName());
+        return appPageTree;
+    }
+}

+ 55 - 0
storlead-centre-service/src/main/java/com/storlead/centre/pojo/vo/SysAppVO.java

@@ -0,0 +1,55 @@
+package com.storlead.centre.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.storlead.centre.pojo.entity.SysAppInfoEntity;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+import java.util.Objects;
+import java.util.stream.Collectors;
+
+/**
+ * @program: storlead-centre-platform
+ * @description:
+ * @author: chenkq
+ * @create: 2025-12-08 15:03
+ */
+@Data
+public class SysAppVO {
+
+    @ApiModelProperty(value = "主键ID")
+    private Long appId;
+
+    @ApiModelProperty(value = "应用名称")
+    private String appName;
+
+    private List<SysAppPageVO> appPages;
+
+
+    /**
+     * 子公司转换
+     * @param vals
+     * @return
+     */
+    public static List<SysAppVO> appInfoListToAppTreeVoList(List<SysAppInfoEntity> vals) {
+        if (CollectionUtils.isEmpty(vals)) {
+            return null;
+        }
+        List<SysAppVO> departmentTrees = vals.stream().map(SysAppVO::appInfoListToAppTreeVo).filter(obj -> !Objects.isNull(obj)).collect(Collectors.toList());
+        return departmentTrees;
+    }
+
+    public static SysAppVO  appInfoListToAppTreeVo(SysAppInfoEntity val) {
+        if (null == val) {
+            return null;
+        }
+        SysAppVO appTree = new SysAppVO();
+        appTree.setAppId(val.getId());
+        appTree.setAppName(val.getAppName());
+        return appTree;
+    }
+}

+ 16 - 0
storlead-centre-service/src/main/java/com/storlead/centre/service/SysAppPageInfoService.java

@@ -0,0 +1,16 @@
+package com.storlead.centre.service;
+
+import com.storlead.centre.entity.SysAppPageInfoEntity;
+import com.storlead.framework.mybatis.service.MyBaseService;
+
+/**
+ * <p>
+ * 应用页面配置表 服务类
+ * </p>
+ *
+ * @author chenkq
+ * @since 2025-12-08
+ */
+public interface SysAppPageInfoService extends MyBaseService<SysAppPageInfoEntity> {
+
+}

+ 20 - 0
storlead-centre-service/src/main/java/com/storlead/centre/service/impl/SysAppPageInfoServiceImpl.java

@@ -0,0 +1,20 @@
+package com.storlead.centre.service.impl;
+
+import com.storlead.centre.entity.SysAppPageInfoEntity;
+import com.storlead.centre.mapper.SysAppPageInfoMapper;
+import com.storlead.centre.service.SysAppPageInfoService;
+import com.storlead.framework.mybatis.service.impl.MyBaseServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 应用页面配置表 服务实现类
+ * </p>
+ *
+ * @author chenkq
+ * @since 2025-12-08
+ */
+@Service
+public class SysAppPageInfoServiceImpl extends MyBaseServiceImpl<SysAppPageInfoMapper, SysAppPageInfoEntity> implements SysAppPageInfoService {
+
+}

+ 32 - 0
storlead-centre-service/src/main/resources/mapper/SysAppPageInfoMapper.xml

@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.storlead.centre.mapper.SysAppPageInfoMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.storlead.centre.entity.SysAppPageInfoEntity">
+        <id column="id" property="id" />
+    <result column="sort" property="sort" />
+    <result column="enabled" property="enabled" />
+    <result column="create_by" property="createBy" />
+    <result column="create_time" property="createTime" />
+    <result column="update_by" property="updateBy" />
+    <result column="update_time" property="updateTime" />
+        <result column="app_id" property="appId" />
+        <result column="page_name" property="pageName" />
+        <result column="page_code" property="pageCode" />
+        <result column="redirect_uri" property="redirectUri" />
+        <result column="description" property="description" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        sort,
+        enabled,
+        create_by,
+        create_time,
+        update_by,
+        update_time,
+        id, app_id, page_name, page_code, redirect_uri, description
+    </sql>
+
+</mapper>

+ 0 - 59
storlead-user/src/main/java/com/storlead/user/mapper/RoleMapper.java

@@ -1,59 +0,0 @@
-package com.storlead.user.mapper;
-
-import com.storlead.frame.mybatis.mapper.MyBaseMapper;
-import com.storlead.system.pojo.entity.RoleEntity;
-import org.apache.ibatis.annotations.Param;
-
-import javax.validation.constraints.NotNull;
-import java.util.List;
-import java.util.Set;
-
-/**
- * <p>
- * 角色表 Mapper 接口
- * </p>
- *
- * @Author chenk
- * @since 20124-4-1
- */
-public interface RoleMapper extends MyBaseMapper<RoleEntity> {
-
-    /**
-     * 根据用户ID 查询所有的全部菜单权限 也就是用户角色所有的菜单的 permission 字段
-     *
-     * @param userId 用户id
-     * @return java.util.Set<java.lang.String>
-     * @author blank
-     * @date 2021-3-12 下午 3:17
-     */
-    Set<String> findMenuPermissionsByUserId(@NotNull @Param("userId") Long userId);
-
-    /**
-     * 根据系统用户ID 查询所有权限
-     *
-     * @param userId 用户ID
-     * @return java.util.List<com.storlead.web.model.entity.Role>
-     * @author blank
-     * @date 2021-3-31 下午 5:26
-     */
-    List<RoleEntity> findByUserId(@NotNull @Param("userId") Long userId);
-
-    /**
-     * 查询当前用户所拥有的自定义角色中的部门ID集的权限列表
-     *
-     * @param userId 用户ID
-     * @return java.util.Set<java.lang.Long>
-     * @author blank
-     * @date 2021-4-15 下午 2:25
-     */
-    Set<Long> getDeptIdsByUserId(@NotNull @Param("userId") Long userId);
-
-    Set<Long> getDeptIdsByRoleId(@NotNull @Param("roleId") Long roleId);
-
-    /**
-     * 根据角色查询角色对应的 菜单id*
-     * @param roleId
-     * @return
-     */
-    Set<Long> getMenuIdsByRoleId(@NotNull @Param("roleId") Long roleId,@Param("isApp") Integer isApp);
-}

+ 0 - 37
storlead-user/src/main/java/com/storlead/user/service/impl/RoleServiceImpl.java

@@ -1,37 +0,0 @@
-package com.storlead.user.service.impl;
-
-import com.storlead.frame.mybatis.service.impl.MyBaseServiceImpl;
-import com.storlead.system.mapper.RoleMapper;
-import com.storlead.system.pojo.entity.RoleEntity;
-import com.storlead.system.service.IRoleService;
-import org.springframework.stereotype.Service;
-
-import java.util.List;
-import java.util.Set;
-
-/**
- * <p>
- * 角色表 服务实现类
- * </p>
- *
- * @Author scott
- * @since 2018-12-19
- */
-@Service
-public class RoleServiceImpl extends MyBaseServiceImpl<RoleMapper, RoleEntity> implements IRoleService {
-
-    @Override
-    public List<RoleEntity> findByUserId(Long userId) {
-        return baseMapper.findByUserId(userId);
-    }
-
-    @Override
-    public Set<Long> getMenuIdsByRoleId(Long roleId,Integer isApp) {
-        return baseMapper.getMenuIdsByRoleId(roleId,isApp);
-    }
-
-    @Override
-    public Set<Long> getdeptIdsByRoleId(Long roleId) {
-        return baseMapper.getDeptIdsByRoleId(roleId);
-    }
-}