Pārlūkot izejas kodu

2022-8-3 应用管理 功能管理 新增 查询功能开发

沈永艺 3 gadi atpakaļ
vecāks
revīzija
c18da9dd3a
20 mainītis faili ar 446 papildinājumiem un 34 dzēšanām
  1. 1 1
      PCS/src/main/java/cn/cslg/permission/common/config/MybatisPlusConfig.java
  2. 19 19
      PCS/src/main/java/cn/cslg/permission/common/config/SaTokenConfigure.java
  3. 1 0
      PCS/src/main/java/cn/cslg/permission/common/core/base/Constants.java
  4. 4 1
      PCS/src/main/java/cn/cslg/permission/common/model/BaseEntity.java
  5. 11 0
      PCS/src/main/java/cn/cslg/permission/common/model/BaseVO.java
  6. 21 0
      PCS/src/main/java/cn/cslg/permission/common/model/vo/ApplicationVO.java
  7. 54 0
      PCS/src/main/java/cn/cslg/permission/common/model/vo/FunctionVO.java
  8. 41 0
      PCS/src/main/java/cn/cslg/permission/controller/ApplicationController.java
  9. 39 0
      PCS/src/main/java/cn/cslg/permission/controller/FunctionController.java
  10. 3 1
      PCS/src/main/java/cn/cslg/permission/domain/Application.java
  11. 3 1
      PCS/src/main/java/cn/cslg/permission/domain/Department.java
  12. 23 3
      PCS/src/main/java/cn/cslg/permission/domain/Function.java
  13. 69 1
      PCS/src/main/java/cn/cslg/permission/domain/Personnel.java
  14. 3 1
      PCS/src/main/java/cn/cslg/permission/domain/Position.java
  15. 3 1
      PCS/src/main/java/cn/cslg/permission/domain/Role.java
  16. 3 1
      PCS/src/main/java/cn/cslg/permission/domain/Tenant.java
  17. 3 1
      PCS/src/main/java/cn/cslg/permission/domain/UserGroup.java
  18. 30 1
      PCS/src/main/java/cn/cslg/permission/service/ApplicationService.java
  19. 114 1
      PCS/src/main/java/cn/cslg/permission/service/FunctionService.java
  20. 1 1
      PCS/src/main/resources/application-dev.yml

+ 1 - 1
PCS/src/main/java/cn/cslg/permission/common/config/MybatisPlusConfig.java

@@ -8,7 +8,7 @@ import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
 @Configuration
-@MapperScan("cn.cslg.pas.mapper")
+@MapperScan("cn.cslg.permission.mapper")
 public class MybatisPlusConfig {
 
     @Bean

+ 19 - 19
PCS/src/main/java/cn/cslg/permission/common/config/SaTokenConfigure.java

@@ -10,26 +10,26 @@ import cn.dev33.satoken.stp.StpUtil;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
-@Configuration
+//@Configuration
 public class SaTokenConfigure {
 
-    @Bean
-    public SaServletFilter getSaServletFilter() {
-        return new SaServletFilter()
-                .addInclude(Constants.API_VERSION_V2 + "/**")
-                .addExclude("/favicon.ico")
-                .setAuth(obj -> {
-                    SaRouter.match(Constants.API_VERSION_V2 + "/**").notMatch(
-                            Constants.API_VERSION_V2 + "/ws/**",
-                            Constants.API_VERSION_V2 + "/test/**",
-                            Constants.API_VERSION_V2 + "/oauth2/**",
-                            Constants.API_VERSION_V2 + "/admin/**",
-                            Constants.API_VERSION_V2 + "/common/download",
-                            Constants.API_VERSION_V2 + "/common/export"
-                    ).check(StpUtil::checkLogin);
-                    SaRouter.match(Constants.API_VERSION_V2 + "/admin/**", Constants.API_VERSION_V2 + "/admin/login", StpAdminUtil::checkLogin);
-                })
-                .setError(e -> Response.error(ResponseEnum.UNAUTHORIZED));
-    }
+//    @Bean
+//    public SaServletFilter getSaServletFilter() {
+//        return new SaServletFilter()
+//                .addInclude(Constants.PERMISSION_API + "/**")
+//                .addExclude("/favicon.ico")
+//                .setAuth(obj -> {
+//                    SaRouter.match(Constants.PERMISSION_API + "/**").notMatch(
+//                            Constants.PERMISSION_API + "/ws/**",
+//                            Constants.PERMISSION_API + "/test/**",
+//                            Constants.PERMISSION_API + "/oauth2/**",
+//                            Constants.PERMISSION_API + "/admin/**",
+//                            Constants.PERMISSION_API + "/common/download",
+//                            Constants.PERMISSION_API + "/common/export"
+//                    ).check(StpUtil::checkLogin);
+//                    SaRouter.match(Constants.PERMISSION_API + "/admin/**", Constants.PERMISSION_API + "/admin/login", StpAdminUtil::checkLogin);
+//                })
+//                .setError(e -> Response.error(ResponseEnum.UNAUTHORIZED));
+//    }
 
 }

+ 1 - 0
PCS/src/main/java/cn/cslg/permission/common/core/base/Constants.java

@@ -44,6 +44,7 @@ public class Constants {
     public static final String PROJECT_FIELD_PATENT_LINK_FILE_NAME = "project-field-patent-link.json";
 
     public static final String API_VERSION_V2 = "/api/v2";
+    public static final String PERMISSION_API = "/permission/api";
 
     public static final Integer PATENT_CLASS_NUMBER_IPC = 1;
     public static final Integer PATENT_CLASS_NUMBER_CPC = 2;

+ 4 - 1
PCS/src/main/java/cn/cslg/permission/common/model/BaseEntity.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.*;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
 
 import java.util.Date;
 
@@ -13,8 +14,10 @@ import java.util.Date;
  * @date 2022-8-2 19:58:00
  * @description Entity基类
  */
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
 @Data
-public class BaseEntity {
+public class BaseEntity<T extends Model> extends Model {
     private static final long serialVersionUID = -4851055162892178225L;
 
     /**

+ 11 - 0
PCS/src/main/java/cn/cslg/permission/common/model/BaseVO.java

@@ -0,0 +1,11 @@
+package cn.cslg.permission.common.model;
+
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+@Data
+@Accessors(chain = true)
+public class BaseVO {
+    private Integer size;
+    private Integer current;
+}

+ 21 - 0
PCS/src/main/java/cn/cslg/permission/common/model/vo/ApplicationVO.java

@@ -0,0 +1,21 @@
+package cn.cslg.permission.common.model.vo;
+
+import cn.cslg.permission.common.model.BaseVO;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Accessors(chain = true)
+public class ApplicationVO extends BaseVO {
+    /**
+     * 应用名称
+     */
+    private String name;
+
+    /**
+     * 应用描述
+     */
+    private String describe;
+}

+ 54 - 0
PCS/src/main/java/cn/cslg/permission/common/model/vo/FunctionVO.java

@@ -0,0 +1,54 @@
+package cn.cslg.permission.common.model.vo;
+
+import cn.cslg.permission.common.model.BaseVO;
+import cn.cslg.permission.domain.Function;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.List;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Accessors(chain = true)
+public class FunctionVO extends BaseVO {
+    /**
+     * id
+     */
+    private Integer id;
+
+    /**
+     * 功能权限名称
+     */
+    private String name;
+
+    /**
+     * 功能权限描述
+     */
+    private String describe;
+
+    /**
+     * 功能权限所属应用
+     */
+    private Integer apply;
+
+    /**
+     * 功能权限(上级)
+     */
+    private Integer function;
+
+    /**
+     * 功能权限对应功能
+     */
+    private String sign;
+
+    /**
+     * 功能权限上级名称
+     */
+    private String upName;
+
+    /**
+     * 功能权限子项
+     */
+    private List<FunctionVO> children;
+}

+ 41 - 0
PCS/src/main/java/cn/cslg/permission/controller/ApplicationController.java

@@ -0,0 +1,41 @@
+package cn.cslg.permission.controller;
+
+import cn.cslg.permission.common.core.base.Constants;
+import cn.cslg.permission.common.model.vo.ApplicationVO;
+import cn.cslg.permission.common.utils.Response;
+import cn.cslg.permission.service.ApplicationService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.RequiredArgsConstructor;
+import org.springframework.context.annotation.Lazy;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * <p>
+ * 管理员 前端控制器
+ * </p>
+ *
+ * @author 沈永艺
+ * @since 2022-8-3
+ */
+@Tag(name = "应用管理")
+@RestController
+@RequestMapping(Constants.PERMISSION_API + "/application")
+@RequiredArgsConstructor(onConstructor_ = {@Lazy})
+public class ApplicationController {
+    private final ApplicationService applicationService;
+
+    @PostMapping("/add")
+    @Operation(summary = "新增应用")
+    public String addApplication(@RequestBody ApplicationVO applicationVO) {
+        applicationService.addApplication(applicationVO);
+        return Response.success(true);
+    }
+
+    @GetMapping("/queryPageList")
+    @Operation(summary = "分页查询应用")
+    public String queryPageList(ApplicationVO applicationVO) {
+        return Response.success(applicationService.queryPageList(applicationVO));
+    }
+
+}

+ 39 - 0
PCS/src/main/java/cn/cslg/permission/controller/FunctionController.java

@@ -0,0 +1,39 @@
+package cn.cslg.permission.controller;
+
+import cn.cslg.permission.common.core.base.Constants;
+import cn.cslg.permission.common.model.vo.FunctionVO;
+import cn.cslg.permission.common.utils.Response;
+import cn.cslg.permission.service.FunctionService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.RequiredArgsConstructor;
+import org.springframework.context.annotation.Lazy;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @author 沈永艺
+ * @version 1.0
+ * @date 2022-8-2 19:58:00
+ * @description 功能类
+ */
+
+@Tag(name = "功能管理")
+@RestController
+@RequestMapping(Constants.PERMISSION_API + "/function")
+@RequiredArgsConstructor(onConstructor_ = {@Lazy})
+public class FunctionController {
+    private final FunctionService functionService;
+
+    @PostMapping("/add")
+    @Operation(summary = "新增功能")
+    public String addFunction(@RequestBody FunctionVO functionVO) {
+        functionService.addFunction(functionVO);
+        return Response.success(true);
+    }
+
+    @GetMapping("/queryPageList")
+    @Operation(summary = "分页查询应用")
+    public String queryPageList(FunctionVO functionVO) {
+        return Response.success(functionService.queryPageList(functionVO));
+    }
+}

+ 3 - 1
PCS/src/main/java/cn/cslg/permission/domain/Application.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
 
 /**
  * @author 沈永艺
@@ -15,8 +16,9 @@ import lombok.EqualsAndHashCode;
 
 @EqualsAndHashCode(callSuper = true)
 @Data
+@Accessors(chain = true)
 @TableName(value = "application")
-public class Application extends BaseEntity {
+public class Application extends BaseEntity<Application> {
     /**
      * 应用名称
      */

+ 3 - 1
PCS/src/main/java/cn/cslg/permission/domain/Department.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
 
 /**
  * @author 沈永艺
@@ -15,8 +16,9 @@ import lombok.EqualsAndHashCode;
 
 @EqualsAndHashCode(callSuper = true)
 @Data
+@Accessors(chain = true)
 @TableName(value = "department")
-public class Department extends BaseEntity {
+public class Department extends BaseEntity<Department> {
     /**
      * 部门名称
      */

+ 23 - 3
PCS/src/main/java/cn/cslg/permission/domain/Function.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
 
 /**
  * @author 沈永艺
@@ -13,10 +14,11 @@ import lombok.EqualsAndHashCode;
  * @description 功能类
  */
 
-@EqualsAndHashCode(callSuper = true)
 @Data
-@TableName(value = "function_table`")
-public class Function extends BaseEntity {
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@TableName(value = "function_table")
+public class Function extends BaseEntity<Function> {
     /**
      * 功能权限名称
      */
@@ -34,4 +36,22 @@ public class Function extends BaseEntity {
      */
     @TableField(value = "FUNCTION_UP")
     private Integer functionUp;
+
+    /**
+     * 功能权限所属应用ID
+     */
+    @TableField(value = "APPLICATION_ID")
+    private Integer applicationId;
+
+    /**
+     * 功能权限描述
+     */
+    @TableField(value = "FUNCTION_DESCRIPTION")
+    private String functionDescription;
+
+//    /**
+//     * 功能权限描述
+//     */
+//    @TableField(value = "FUNCTION_PATH")
+//    private String functionPath;
 }

+ 69 - 1
PCS/src/main/java/cn/cslg/permission/domain/Personnel.java

@@ -1,9 +1,11 @@
 package cn.cslg.permission.domain;
 
 import cn.cslg.permission.common.model.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
 
 /**
  * @author 沈永艺
@@ -14,6 +16,72 @@ import lombok.EqualsAndHashCode;
 
 @EqualsAndHashCode(callSuper = true)
 @Data
+@Accessors(chain = true)
 @TableName(value = "personnel")
-public class Personnel extends BaseEntity {
+public class Personnel extends BaseEntity<Personnel> {
+    /**
+     * 人员账号
+     */
+    @TableField(value = "PERSONNEL_USERNAME")
+    private String personnelUserName;
+
+//    /**
+//     * 人员密码
+//     */
+//    @TableField(value = "PERSONNEL_USERNAME")
+//    private String personnelUserName;
+//
+//    /**
+//     * 人员账号
+//     */
+//    @TableField(value = "PERSONNEL_USERNAME")
+//    private String personnelUserName;
+//
+//    /**
+//     * 人员账号
+//     */
+//    @TableField(value = "PERSONNEL_USERNAME")
+//    private String personnelUserName;
+//
+//    /**
+//     * 人员账号
+//     */
+//    @TableField(value = "PERSONNEL_USERNAME")
+//    private String personnelUserName;
+//
+//    /**
+//     * 人员账号
+//     */
+//    @TableField(value = "PERSONNEL_USERNAME")
+//    private String personnelUserName;
+//
+//    /**
+//     * 人员账号
+//     */
+//    @TableField(value = "PERSONNEL_USERNAME")
+//    private String personnelUserName;
+//
+//    /**
+//     * 人员账号
+//     */
+//    @TableField(value = "PERSONNEL_USERNAME")
+//    private String personnelUserName;
+//
+//    /**
+//     * 人员账号
+//     */
+//    @TableField(value = "PERSONNEL_USERNAME")
+//    private String personnelUserName;
+//
+//    /**
+//     * 人员账号
+//     */
+//    @TableField(value = "PERSONNEL_USERNAME")
+//    private String personnelUserName;
+//
+//    /**
+//     * 人员账号
+//     */
+//    @TableField(value = "PERSONNEL_USERNAME")
+//    private String personnelUserName;
 }

+ 3 - 1
PCS/src/main/java/cn/cslg/permission/domain/Position.java

@@ -4,6 +4,7 @@ import cn.cslg.permission.common.model.BaseEntity;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
 
 /**
  * @author 沈永艺
@@ -14,6 +15,7 @@ import lombok.EqualsAndHashCode;
 
 @EqualsAndHashCode(callSuper = true)
 @Data
+@Accessors(chain = true)
 @TableName(value = "position")
-public class Position extends BaseEntity {
+public class Position extends BaseEntity<Position> {
 }

+ 3 - 1
PCS/src/main/java/cn/cslg/permission/domain/Role.java

@@ -4,6 +4,7 @@ import cn.cslg.permission.common.model.BaseEntity;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
 
 /**
  * @author 沈永艺
@@ -14,6 +15,7 @@ import lombok.EqualsAndHashCode;
 
 @EqualsAndHashCode(callSuper = true)
 @Data
+@Accessors(chain = true)
 @TableName(value = "role")
-public class Role extends BaseEntity {
+public class Role extends BaseEntity<Role> {
 }

+ 3 - 1
PCS/src/main/java/cn/cslg/permission/domain/Tenant.java

@@ -4,6 +4,7 @@ import cn.cslg.permission.common.model.BaseEntity;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
 
 /**
  * @author 沈永艺
@@ -14,6 +15,7 @@ import lombok.EqualsAndHashCode;
 
 @EqualsAndHashCode(callSuper = true)
 @Data
+@Accessors(chain = true)
 @TableName(value = "tenant")
-public class Tenant extends BaseEntity {
+public class Tenant extends BaseEntity<Tenant> {
 }

+ 3 - 1
PCS/src/main/java/cn/cslg/permission/domain/UserGroup.java

@@ -4,6 +4,7 @@ import cn.cslg.permission.common.model.BaseEntity;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
 
 /**
  * @author 沈永艺
@@ -14,6 +15,7 @@ import lombok.EqualsAndHashCode;
 
 @EqualsAndHashCode(callSuper = true)
 @Data
+@Accessors(chain = true)
 @TableName(value = "user_group")
-public class UserGroup extends BaseEntity {
+public class UserGroup extends BaseEntity<UserGroup> {
 }

+ 30 - 1
PCS/src/main/java/cn/cslg/permission/service/ApplicationService.java

@@ -1,5 +1,11 @@
 package cn.cslg.permission.service;
 
+import cn.cslg.permission.common.model.vo.ApplicationVO;
+import cn.cslg.permission.domain.Application;
+import cn.cslg.permission.mapper.ApplicationMapper;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.RequiredArgsConstructor;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
@@ -13,5 +19,28 @@ import org.springframework.stereotype.Service;
 
 @Service
 @RequiredArgsConstructor(onConstructor_ = {@Lazy})
-public class ApplicationService {
+public class ApplicationService extends ServiceImpl<ApplicationMapper, Application> {
+    public void addApplication(ApplicationVO applicationVO) {
+        Application application = new Application();
+        application.setApplicationName(applicationVO.getName());
+        application.setApplicationDescription(applicationVO.getDescribe());
+        application.insert();
+    }
+
+    public Object queryPageList(ApplicationVO applicationVO) {
+        LambdaQueryWrapper<Application> queryWrapper = new LambdaQueryWrapper<>();
+        if (applicationVO.getSize() == null || applicationVO.getCurrent() == null) {
+            queryWrapper.eq(Application::getIsDelete, 0);
+            Application application = new Application();
+
+            return application.selectList(queryWrapper);
+        } else {
+            queryWrapper.like(Application::getApplicationDescription, applicationVO.getName());
+            queryWrapper.or();
+            queryWrapper.like(Application::getApplicationName, applicationVO.getName());
+            queryWrapper.eq(Application::getIsDelete, 0);
+
+            return page(new Page<>(applicationVO.getCurrent(), applicationVO.getSize()), queryWrapper);
+        }
+    }
 }

+ 114 - 1
PCS/src/main/java/cn/cslg/permission/service/FunctionService.java

@@ -1,9 +1,18 @@
 package cn.cslg.permission.service;
 
+import cn.cslg.permission.common.model.vo.FunctionVO;
+import cn.cslg.permission.domain.Function;
+import cn.cslg.permission.mapper.FunctionMapper;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.RequiredArgsConstructor;
 import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * @author 沈永艺
  * @version 1.0
@@ -13,5 +22,109 @@ import org.springframework.stereotype.Service;
 
 @Service
 @RequiredArgsConstructor(onConstructor_ = {@Lazy})
-public class FunctionService {
+public class FunctionService extends ServiceImpl<FunctionMapper, Function> {
+    public void addFunction(FunctionVO functionVO) {
+        Function function = new Function();
+        function.setFunctionUp(functionVO.getFunction())
+                .setFunctionName(functionVO.getName())
+                .setFunctionCorresponding(functionVO.getSign())
+                .setApplicationId(functionVO.getApply())
+                .setFunctionDescription(functionVO.getDescribe());
+        function.insert();
+    }
+
+    public Object queryPageList(FunctionVO functionVO) {
+        LambdaQueryWrapper<Function> queryWrapper = new LambdaQueryWrapper<>();
+        if (functionVO.getSize() == null || functionVO.getCurrent() == null) {
+            LambdaQueryWrapper<Function> lambdaQueryWrapper = new LambdaQueryWrapper();
+
+            queryWrapper.eq(Function::getIsDelete, 0);
+            Function function = new Function();
+
+            List<Function> lst = function.selectList(queryWrapper);
+            List<FunctionVO> voList = new ArrayList<>();
+            for (Function value : lst) {
+                int id;
+                if (value.getFunctionUp() == 0) {
+
+                    id = value.getId();
+                    LambdaQueryWrapper<Function> functionLambdaQueryWrapper = new LambdaQueryWrapper<>();
+                    functionLambdaQueryWrapper.eq(Function::getFunctionUp, id);
+
+                    Function function1 = new Function();
+                    List<Function> children = function1.selectList(functionLambdaQueryWrapper);
+                    List<FunctionVO> children1 = new ArrayList<>();
+                    for (Function child : children) {
+                        FunctionVO functionVO1 = new FunctionVO();
+                        functionVO1.setFunction(child.getFunctionUp())
+                                .setName(child.getFunctionName())
+                                .setSign(child.getFunctionCorresponding())
+                                .setDescribe(child.getFunctionDescription())
+                                .setApply(child.getApplicationId())
+                                .setId(child.getId());
+                        children1.add(functionVO1);
+                    }
+
+                    FunctionVO functionVO1 = new FunctionVO();
+                    functionVO1.setChildren(children1)
+                            .setFunction(value.getFunctionUp())
+                            .setApply(value.getApplicationId())
+                            .setName(value.getFunctionName())
+                            .setDescribe(value.getFunctionDescription())
+                            .setSign(value.getFunctionCorresponding())
+                            .setUpName("测试")
+                            .setId(value.getId());
+                    voList.add(functionVO1);
+                }
+            }
+            return voList;
+        } else {
+            queryWrapper.like(Function::getFunctionName, functionVO.getName());
+            queryWrapper.or();
+            queryWrapper.like(Function::getFunctionCorresponding, functionVO.getName());
+            queryWrapper.or();
+            queryWrapper.like(Function::getFunctionDescription, functionVO.getName());
+            queryWrapper.eq(Function::getIsDelete, 0);
+
+            Function function = new Function();
+            List<Function> lst = function.selectList(queryWrapper);
+
+            List<FunctionVO> voList = new ArrayList<>();
+            for (Function value : lst) {
+                int id;
+                if (value.getFunctionUp() == 0) {
+
+                    id = value.getId();
+                    LambdaQueryWrapper<Function> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+                    lambdaQueryWrapper.eq(Function::getFunctionUp, id);
+
+                    Function function1 = new Function();
+                    List<Function> children = function1.selectList(lambdaQueryWrapper);
+                    List<FunctionVO> children1 = new ArrayList<>();
+                    for (Function child : children) {
+                        FunctionVO functionVO1 = new FunctionVO();
+                        functionVO1.setFunction(child.getFunctionUp())
+                                .setName(child.getFunctionName())
+                                .setSign(child.getFunctionCorresponding())
+                                .setDescribe(child.getFunctionDescription())
+                                .setApply(child.getApplicationId())
+                                .setId(child.getId());
+                        children1.add(functionVO1);
+                    }
+
+                    FunctionVO functionVO1 = new FunctionVO();
+                    functionVO1.setChildren(children1)
+                            .setFunction(value.getFunctionUp())
+                            .setApply(value.getApplicationId())
+                            .setName(value.getFunctionName())
+                            .setDescribe(value.getFunctionDescription())
+                            .setSign(value.getFunctionCorresponding())
+                            .setUpName("测试")
+                            .setId(value.getId());
+                    voList.add(functionVO1);
+                }
+            }
+            return voList;
+        }
+    }
 }

+ 1 - 1
PCS/src/main/resources/application-dev.yml

@@ -5,7 +5,7 @@ spring:
     database: 8
     timeout: 1000
   datasource:
-    url: jdbc:mysql://192.168.0.57:3306/syy?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B8
+    url: jdbc:mysql://192.168.0.57:3306/syy_access_control_db?autoReconnect=true&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&serverTimezone=GMT%2B8
     username: root
     password: 123456
     driver-class-name: com.mysql.cj.jdbc.Driver