Pārlūkot izejas kodu

1、获取三级功能目录,供前端展示,用户可选/

guanzi 3 gadi atpakaļ
vecāks
revīzija
9dd5efbd76
16 mainītis faili ar 763 papildinājumiem un 7 dzēšanām
  1. 1 1
      README.md
  2. 87 1
      saas-backen/src/main/java/com/pavis/app/saasbacken/controller/CommonController.java
  3. 1 2
      saas-backen/src/main/java/com/pavis/app/saasbacken/entity/InitDataParent.java
  4. 2 2
      saas-backen/src/main/java/com/pavis/app/saasbacken/entity/InitDataThird.java
  5. 32 0
      saas-backen/src/main/java/com/pavis/app/saasbacken/form/ModuleData.java
  6. 23 0
      saas-backen/src/main/java/com/pavis/app/saasbacken/form/ModuleParam.java
  7. 24 0
      saas-backen/src/main/java/com/pavis/app/saasbacken/service/CheckModuleService.java
  8. 23 0
      saas-backen/src/main/java/com/pavis/app/saasbacken/service/InitDataChildService.java
  9. 25 0
      saas-backen/src/main/java/com/pavis/app/saasbacken/service/InitDataParentService.java
  10. 23 0
      saas-backen/src/main/java/com/pavis/app/saasbacken/service/InitDataThirdService.java
  11. 94 0
      saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/base/CheckModuleServiceImpl.java
  12. 78 0
      saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/base/InitDataChildServiceImpl.java
  13. 81 0
      saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/base/InitDataParentServiceImpl.java
  14. 230 0
      saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/base/InitDataThirdServiceImpl.java
  15. 0 1
      saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/other/MinioServiceImpl.java
  16. 39 0
      saas-backen/src/main/java/com/pavis/app/saasbacken/utils/PageSettingUtils.java

+ 1 - 1
README.md

@@ -10,7 +10,7 @@ springboot+elasticsearch7.6.1
 - ORM框架:MyBatisPlus 3.3.2
 - ORM框架:MyBatisPlus 3.3.2
 - 数据库连接池: Druid 1.1.23
 - 数据库连接池: Druid 1.1.23
 - 搜索引擎: elasticsearch 7.6.1
 - 搜索引擎: elasticsearch 7.6.1
-- 文件存储系统: MinIO 7.0.2 & FastDFS 5.05 待定
+- 文件存储系统: MinIO 8.0.3 & FastDFS 5.05 待定
 
 
 
 
 ##**注意事项**
 ##**注意事项**

+ 87 - 1
saas-backen/src/main/java/com/pavis/app/saasbacken/controller/CommonController.java

@@ -3,7 +3,7 @@ package com.pavis.app.saasbacken.controller;
 import com.pavis.app.saasbacken.aop.PreSaveLog;
 import com.pavis.app.saasbacken.aop.PreSaveLog;
 import com.pavis.app.saasbacken.exception.GlobalExceptionHandler;
 import com.pavis.app.saasbacken.exception.GlobalExceptionHandler;
 import com.pavis.app.saasbacken.http.ResultBody;
 import com.pavis.app.saasbacken.http.ResultBody;
-import com.pavis.app.saasbacken.service.DicService;
+import com.pavis.app.saasbacken.service.*;
 import com.pavis.app.saasbacken.utils.HttpContextUtils;
 import com.pavis.app.saasbacken.utils.HttpContextUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiOperation;
@@ -30,6 +30,19 @@ public class CommonController {
 
 
     @Autowired
     @Autowired
     private DicService dicService;
     private DicService dicService;
+
+    @Autowired
+    private CheckModuleService checkModuleService;
+
+    @Autowired
+    private InitDataParentService initDataParentService;
+
+    @Autowired
+    private InitDataChildService initDataChildService;
+
+    @Autowired
+    private InitDataThirdService initDataThirdService;
+
     /**
     /**
      * 通用配置:
      * 通用配置:
      *  key-value。通用配置。
      *  key-value。通用配置。
@@ -48,4 +61,77 @@ public class CommonController {
         }
         }
     }
     }
 
 
+    /**
+     * 通用配置:
+     *  key-value。通用配置。
+     */
+    @PreSaveLog("初始化节点data1数据信息")
+    @ApiOperation(value = "初始化节点data1数据信息接口", notes = "初始化节点data1数据信息接口")
+    @GetMapping("/init/parent")
+    public ResultBody initDataParent() {
+        HttpServletRequest request = HttpContextUtils.getHttpServletRequest();
+        String uri = request.getRequestURI();
+        try {
+            log.info("init:{}", "init");
+            return ResultBody.ok().path(uri).data(initDataParentService.initDataParent());
+        } catch (Exception e) {
+            return GlobalExceptionHandler.resolveException(e, uri);
+        }
+    }
+
+    /**
+     * 通用配置:
+     *  key-value。通用配置。
+     */
+    @PreSaveLog("初始化节点data2数据信息")
+    @ApiOperation(value = "初始化节点data2数据信息接口", notes = "初始化节点data2数据信息接口")
+    @GetMapping("/init/child")
+    public ResultBody initDataChild() {
+        HttpServletRequest request = HttpContextUtils.getHttpServletRequest();
+        String uri = request.getRequestURI();
+        try {
+            log.info("init:{}", "init");
+            return ResultBody.ok().path(uri).data(initDataChildService.initDataChild());
+        } catch (Exception e) {
+            return GlobalExceptionHandler.resolveException(e, uri);
+        }
+    }
+
+
+    /**
+     * 通用配置:
+     *  key-value。通用配置。
+     */
+    @PreSaveLog("初始化节点data3数据信息")
+    @ApiOperation(value = "初始化节点data3数据信息接口", notes = "初始化节点data3数据信息接口")
+    @GetMapping("/init/third")
+    public ResultBody initDataThird() {
+        HttpServletRequest request = HttpContextUtils.getHttpServletRequest();
+        String uri = request.getRequestURI();
+        try {
+            log.info("init:{}", "init");
+            return ResultBody.ok().path(uri).data(initDataThirdService.initDataThird());
+        } catch (Exception e) {
+            return GlobalExceptionHandler.resolveException(e, uri);
+        }
+    }
+
+    /**
+     * 通用配置:
+     *  key-value。通用配置。
+     */
+    @PreSaveLog("获取基础功能数据")
+    @ApiOperation(value = "获取基础功能数据信息接口", notes = "获取基础功能数据信息接口")
+    @GetMapping("/get/lib")
+    public ResultBody getLibrary() {
+        HttpServletRequest request = HttpContextUtils.getHttpServletRequest();
+        String uri = request.getRequestURI();
+        try {
+            log.info("init:{}", "init");
+            return ResultBody.ok().path(uri).data(checkModuleService.selModules());
+        } catch (Exception e) {
+            return GlobalExceptionHandler.resolveException(e, uri);
+        }
+    }
+
 }
 }

+ 1 - 2
saas-backen/src/main/java/com/pavis/app/saasbacken/entity/InitDataParent.java

@@ -1,6 +1,5 @@
 package com.pavis.app.saasbacken.entity;
 package com.pavis.app.saasbacken.entity;
 
 
-import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
@@ -31,7 +30,7 @@ public class InitDataParent extends Model<InitDataParent> {
 
 
     @ApiModelProperty(value = "主键自增id")
     @ApiModelProperty(value = "主键自增id")
     // @TableId(value = "id", type = IdType.INPUT)
     // @TableId(value = "id", type = IdType.INPUT)
-    @TableId(type = IdType.ASSIGN_UUID)
+    @TableId
     private String id;
     private String id;
 
 
     @ApiModelProperty(value = "初始化数据父级代码")
     @ApiModelProperty(value = "初始化数据父级代码")

+ 2 - 2
saas-backen/src/main/java/com/pavis/app/saasbacken/entity/InitDataThird.java

@@ -1,6 +1,5 @@
 package com.pavis.app.saasbacken.entity;
 package com.pavis.app.saasbacken.entity;
 
 
-import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
@@ -31,7 +30,8 @@ public class InitDataThird extends Model<InitDataThird> {
 
 
     @ApiModelProperty(value = "主键自增id")
     @ApiModelProperty(value = "主键自增id")
     // @TableId(value = "id", type = IdType.INPUT)
     // @TableId(value = "id", type = IdType.INPUT)
-    @TableId(type = IdType.ASSIGN_UUID)
+    // @TableId(value = "id",type = IdType.AUTO)
+    @TableId
     private String id;
     private String id;
 
 
     @ApiModelProperty(value = "初始化数据父级代码")
     @ApiModelProperty(value = "初始化数据父级代码")

+ 32 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/form/ModuleData.java

@@ -0,0 +1,32 @@
+package com.pavis.app.saasbacken.form;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+/**
+ * @description: 前端获取所有基础功能及子字段
+ * @author: Guanzi
+ * @created: 2021/11/04 14:12
+ */
+@Getter
+@Setter
+@NoArgsConstructor
+@AllArgsConstructor
+public class ModuleData {
+
+    @ApiModelProperty(value = "主键")
+    private String id;
+
+    @ApiModelProperty(value = "功能名称")
+    private String title;
+
+    @ApiModelProperty(value = "功能名称代码")
+    private String titleCode;
+
+    @ApiModelProperty(value = "图标")
+    private String icon;
+
+}

+ 23 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/form/ModuleParam.java

@@ -0,0 +1,23 @@
+package com.pavis.app.saasbacken.form;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @description: 前端获取所有基础功能及子字段
+ * @author: Guanzi
+ * @created: 2021/11/04 14:12
+ */
+@Getter
+@Setter
+@NoArgsConstructor
+@AllArgsConstructor
+public class ModuleParam extends ModuleData{
+    List<ModuleData> trees;
+    // List<ModuleData> childs;
+    // List<ModuleData> thirds;
+}

+ 24 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/service/CheckModuleService.java

@@ -0,0 +1,24 @@
+package com.pavis.app.saasbacken.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.pavis.app.saasbacken.entity.CheckModule;
+import com.pavis.app.saasbacken.form.ModuleParam;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  用户初始化自选功能与字段
+ * </p>
+ *
+ * @author guan
+ * @since 2021-10-29
+ */
+public interface CheckModuleService extends IService<CheckModule> {
+
+    /**
+     * 查询已有数据。
+     * @return
+     */
+    List<ModuleParam> selModules();
+}

+ 23 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/service/InitDataChildService.java

@@ -0,0 +1,23 @@
+package com.pavis.app.saasbacken.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.pavis.app.saasbacken.entity.InitDataChild;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  初始化数据2
+ * </p>
+ *
+ * @author guan
+ * @since 2021-10-29
+ */
+public interface InitDataChildService extends IService<InitDataChild> {
+
+    /**
+     * 资源库数据生成。
+     * @return
+     */
+    List<InitDataChild> initDataChild();
+}

+ 25 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/service/InitDataParentService.java

@@ -0,0 +1,25 @@
+package com.pavis.app.saasbacken.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.pavis.app.saasbacken.entity.InitDataParent;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  初始化数据1
+ * </p>
+ *
+ * @author guan
+ * @since 2021-10-29
+ */
+public interface InitDataParentService extends IService<InitDataParent> {
+
+    /**
+     * 资源库数据生成。
+     * @return
+     */
+    List<InitDataParent> initDataParent();
+
+    void getDataParent();
+}

+ 23 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/service/InitDataThirdService.java

@@ -0,0 +1,23 @@
+package com.pavis.app.saasbacken.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.pavis.app.saasbacken.entity.InitDataThird;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  初始化数据3
+ * </p>
+ *
+ * @author guan
+ * @since 2021-10-29
+ */
+public interface InitDataThirdService extends IService<InitDataThird> {
+
+    /**
+     * 资源库数据生成。
+     * @return
+     */
+    List<InitDataThird> initDataThird() throws NoSuchFieldException;
+}

+ 94 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/base/CheckModuleServiceImpl.java

@@ -0,0 +1,94 @@
+package com.pavis.app.saasbacken.service.impl.base;
+
+import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.pavis.app.saasbacken.dao.CheckModuleMapper;
+import com.pavis.app.saasbacken.dao.InitDataChildMapper;
+import com.pavis.app.saasbacken.dao.InitDataParentMapper;
+import com.pavis.app.saasbacken.dao.InitDataThirdMapper;
+import com.pavis.app.saasbacken.entity.CheckModule;
+import com.pavis.app.saasbacken.entity.InitDataChild;
+import com.pavis.app.saasbacken.entity.InitDataParent;
+import com.pavis.app.saasbacken.entity.InitDataThird;
+import com.pavis.app.saasbacken.form.ModuleData;
+import com.pavis.app.saasbacken.form.ModuleParam;
+import com.pavis.app.saasbacken.service.CheckModuleService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * <p>
+ * 用户初始化自选功能与字段
+ * </p>
+ *
+ * @author guan
+ * @since 2021-10-29
+ */
+@Service
+@Slf4j
+@Transactional(rollbackFor = Exception.class)
+public class CheckModuleServiceImpl extends ServiceImpl<CheckModuleMapper, CheckModule> implements CheckModuleService {
+
+    @Autowired
+    private CheckModuleMapper checkModuleMapper;
+
+    @Autowired
+    private InitDataParentMapper initDataParentMapper;
+
+    @Autowired
+    private InitDataChildMapper initDataChildMapper;
+
+    @Autowired
+    private InitDataThirdMapper initDataThirdMapper;
+
+    @Override
+    public List<ModuleParam> selModules() {
+        // 父类数据。
+        List<InitDataParent> initDataParents = initDataParentMapper.selectList(new QueryWrapper<InitDataParent>()
+                .lambda().isNotNull(InitDataParent::getId));
+        log.info("***initDataParents:{}", initDataParents.size());
+        // 返回数据。
+        ModuleParam moduleParam;
+        List<ModuleParam> moduleParams = new ArrayList<>();
+        for (InitDataParent initDataParent : initDataParents) {
+            moduleParam = new ModuleParam();
+            BeanUtils.copyProperties(initDataParent, moduleParam);
+
+            // 二级目录
+            List<InitDataChild> initDataChilds = initDataChildMapper.selectList(new QueryWrapper<InitDataChild>()
+                    .lambda().eq(InitDataChild::getParentId, initDataParent.getId()));
+            log.info("***initDataChilds:{}", initDataChilds.size());
+            List<ModuleData> childs = new ArrayList<>();
+            ModuleParam moduleParamChild;
+            for (InitDataChild initDataChild : initDataChilds) {
+                moduleParamChild = new ModuleParam();
+                BeanUtils.copyProperties(initDataChild, moduleParamChild);
+                childs.add(moduleParamChild);
+
+                // 三级目录
+                List<InitDataThird> initDataThirds = initDataThirdMapper.selectList(new QueryWrapper<InitDataThird>()
+                        .lambda().eq(InitDataThird::getParentId, initDataChild.getId()));
+                log.info("***initDataThirds:{}", initDataThirds.size());
+                ModuleParam moduleParamThird;
+                List<ModuleData> thirds = new ArrayList<>();
+                for (InitDataThird initDataThird : initDataThirds) {
+                    moduleParamThird = new ModuleParam();
+                    BeanUtils.copyProperties(initDataThird, moduleParamThird);
+                    thirds.add(moduleParamThird);
+                }
+                moduleParamChild.setTrees(thirds);
+            }
+            moduleParam.setTrees(childs);
+            moduleParams.add(moduleParam);
+        }
+        System.err.println("*****" + JSON.toJSONString(moduleParams));
+        return moduleParams;
+    }
+}

+ 78 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/base/InitDataChildServiceImpl.java

@@ -0,0 +1,78 @@
+package com.pavis.app.saasbacken.service.impl.base;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.pavis.app.saasbacken.dao.InitDataChildMapper;
+import com.pavis.app.saasbacken.entity.InitDataChild;
+import com.pavis.app.saasbacken.service.InitDataChildService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * <p>
+ *  初始化数据2
+ * </p>
+ *
+ * @author guan
+ * @since 2021-10-29
+ */
+@Service
+@Slf4j
+@Transactional(rollbackFor = Exception.class)
+public class InitDataChildServiceImpl extends ServiceImpl<InitDataChildMapper, InitDataChild> implements InitDataChildService {
+
+    @Override
+    public List<InitDataChild> initDataChild() {
+        // 初始化父类。
+        List<InitDataChild> initDataChilds = new ArrayList<>();
+        initDataChilds.add(createData("601","","基本信息","601","6","1","http://192.168.1.139:9000/push-test/qiyeku.jpg","1"));
+        initDataChilds.add(createData("602","","其他信息","602","6","1","http://192.168.1.139:9000/push-test/task-org.png","1"));
+        initDataChilds.add(createData("603","","税务信息","603","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataChilds.add(createData("604","","资质信息","604","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataChilds.add(createData("605","","知识产权信息","605","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataChilds.add(createData("606","","研究成果信息","606","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataChilds.add(createData("607","","产品信息","607","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataChilds.add(createData("608","","人员信息","608","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataChilds.add(createData("701","","高企自检","701","7","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataChilds.add(createData("702","","市级研发中心","701","7","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+
+        // initDataChildMapper.insert(initDataChild);
+        boolean b = saveBatch(initDataChilds);
+        log.info("create:{}",b);
+        return initDataChilds;
+    }
+
+    /**
+     * 初始化data。
+     * @param id
+     * @param title
+     * @param titleCode
+     * @param isChild
+     * @param icon
+     * @param isEnabled
+     * @return
+     */
+    public InitDataChild createData(String id,String initCode,String title,String titleCode,
+                                    String parentId,String isChild,
+                                     String icon,String isEnabled){
+        return InitDataChild.builder()
+                .id(id)
+                // 初始化数据父级代码
+                .initCode(initCode)
+                // 初始化数据父级名称
+                .title(title)
+                // 父级名称代码
+                .titleCode(titleCode)
+                // 是否含有子级
+                .isChild(isChild)
+                .parentId(parentId)
+                // 图标
+                .icon(icon)
+                // 是否可用
+                .isEnabled(isEnabled)
+                .build();
+    }
+}

+ 81 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/base/InitDataParentServiceImpl.java

@@ -0,0 +1,81 @@
+package com.pavis.app.saasbacken.service.impl.base;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.pavis.app.saasbacken.dao.InitDataParentMapper;
+import com.pavis.app.saasbacken.entity.InitDataParent;
+import com.pavis.app.saasbacken.service.InitDataParentService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * <p>
+ *  初始化数据1
+ * </p>
+ *
+ * @author guan
+ * @since 2021-10-29
+ */
+@Service
+@Slf4j
+@Transactional(rollbackFor = Exception.class)
+public class InitDataParentServiceImpl extends ServiceImpl<InitDataParentMapper, InitDataParent> implements InitDataParentService {
+
+    @Override
+    public List<InitDataParent> initDataParent() {
+        // 初始化父类。
+        List<InitDataParent> initDataParents = new ArrayList<>();
+        initDataParents.add(createData("6","企业库","6","1","http://192.168.1.139:9000/push-test/qiyeku.jpg","1"));
+        initDataParents.add(createData("1","需求库","1","1","http://192.168.1.139:9000/push-test/task-org.png","1"));
+        initDataParents.add(createData("2","成果库","2","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataParents.add(createData("8","专家库","8","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataParents.add(createData("38","人才库","38","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataParents.add(createData("3","政策库","3","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataParents.add(createData("39","金融库","39","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataParents.add(createData("40","中介库","40","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataParents.add(createData("41","平台库","41","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataParents.add(createData("42","项目库","42","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataParents.add(createData("35","技术经理库","35","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        initDataParents.add(createData("7","高企管理","7","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+
+        // initDataParentMapper.insert(initDataParent);
+        boolean b = saveBatch(initDataParents);
+        log.info("create:{}",b);
+        return initDataParents;
+    }
+
+    @Override
+    public void getDataParent() {
+
+    }
+
+    /**
+     * 初始化data。
+     * @param id
+     * @param title
+     * @param titleCode
+     * @param isChild
+     * @param icon
+     * @param isEnabled
+     * @return
+     */
+    public InitDataParent createData(String id,String title,String titleCode,String isChild,
+                                     String icon,String isEnabled){
+        return InitDataParent.builder()
+                .id(id)
+                // 初始化数据父级名称
+                .title(title)
+                // 父级名称代码
+                .titleCode(titleCode)
+                // 是否含有子级
+                .isChild(isChild)
+                // 图标
+                .icon(icon)
+                // 是否可用
+                .isEnabled(isEnabled)
+                .build();
+    }
+}

+ 230 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/base/InitDataThirdServiceImpl.java

@@ -0,0 +1,230 @@
+package com.pavis.app.saasbacken.service.impl.base;
+
+import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.pavis.app.saasbacken.dao.InitDataThirdMapper;
+import com.pavis.app.saasbacken.entity.*;
+import com.pavis.app.saasbacken.service.InitDataThirdService;
+import com.pavis.app.saasbacken.utils.PageSettingUtils;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  初始化数据3
+ * </p>
+ *
+ * @author guan
+ * @since 2021-10-29
+ */
+@Service
+@Slf4j
+@Transactional(rollbackFor = Exception.class)
+public class InitDataThirdServiceImpl extends ServiceImpl<InitDataThirdMapper, InitDataThird> implements InitDataThirdService {
+
+    @Override
+    public List<InitDataThird> initDataThird() throws NoSuchFieldException {
+        // 初始化父类。
+        List<InitDataThird> initDataThirds = new ArrayList<>();
+        // todo 基本信息:
+        addData(601001,"601");
+        System.err.println("addBasic*********>" + JSON.toJSONString(initDataThirds));
+        // todo 其他信息
+        // initDataThirds.add(createData("602","","其他信息","602","6","1","http://192.168.1.139:9000/push-test/task-org.png","1"));
+        addData(602002,"602");
+        System.err.println("addOther*********>" + JSON.toJSONString(initDataThirds));
+        // todo 税务信息
+        // initDataThirds.add(createData("603","","税务信息","603","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        addData(603001,"603");
+        // todo 资质信息
+        // initDataThirds.add(createData("604","","资质信息","604","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        addData(604001,"604");
+        // todo 知识产权信息
+        // initDataThirds.add(createData("605","","知识产权信息","605","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        addData(605001,"605");
+        // todo 研究成果信息
+        // initDataThirds.add(createData("606","","研究成果信息","606","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        addData(606001,"606");
+        // todo 产品信息
+        // initDataThirds.add(createData("607","","产品信息","607","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        addData(607001,"607");
+        // todo 人员信息
+        // initDataThirds.add(createData("608","","人员信息","608","6","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        addData(608001,"608");
+        // todo 高企自检
+        // initDataThirds.add(createData("701","","高企自检","701","7","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        addData(701001,"701");
+        // todo 市级研发中心
+        // initDataThirds.add(createData("702","","市级研发中心","701","7","1","http://192.168.1.139:9000/push-test/orginspect.png","1"));
+        addData(702001,"702");
+
+        // boolean b = saveBatch(initDataThirds);
+        // log.info("create:{}",b);
+        return initDataThirds;
+    }
+
+    /**
+     * 初始化data。
+     * @param title
+     * @param titleCode
+     * @param isChild
+     * @param icon
+     * @param isEnabled
+     * @return
+     */
+    public InitDataThird createData(String id,String initCode,String title,String titleCode,
+                                    String parentId,String isChild,
+                                     String icon,String isEnabled){
+        return InitDataThird.builder()
+                .id(id)
+                // 初始化数据父级代码
+                .initCode(initCode)
+                // 初始化数据父级名称
+                .title(title)
+                // 父级名称代码
+                .titleCode(titleCode)
+                // 是否含有子级
+                .isChild(isChild)
+                .parentId(parentId)
+                // 图标
+                .icon(icon)
+                // 是否可用
+                .isEnabled(isEnabled)
+                .build();
+    }
+
+    /**
+     * 初始化忽略属性。
+     * @return
+     */
+    public Map<String,String> initMap(){
+        // fieldMap中的属性
+        Map<String,String> fieldMap = new HashMap<>();
+        fieldMap.put("serialVersionUID","");
+        fieldMap.put("id","");
+        fieldMap.put("createTime","");
+        fieldMap.put("creator","");
+        fieldMap.put("updateTime","");
+        fieldMap.put("updator","");
+        fieldMap.put("by1","");
+        fieldMap.put("by2","");
+        fieldMap.put("by3","");
+        fieldMap.put("by4","");
+        fieldMap.put("by5","");
+        fieldMap.put("by6","");
+        fieldMap.put("by7","");
+        fieldMap.put("by8","");
+        fieldMap.put("by9","");
+        fieldMap.put("by10","");
+        return fieldMap;
+    }
+
+    /**
+     * 企业库税务信息入库。
+     * @throws NoSuchFieldException
+     */
+    public void addData(Integer num,String parentId) throws NoSuchFieldException {
+        List<Map<String, String>> declaredFieldsInfo = new ArrayList<>();
+        List<InitDataThird> initDataThirds = new ArrayList<>();
+        boolean b = false;
+        switch (parentId) {
+            case "601":
+                // 企业基本信息
+                declaredFieldsInfo = PageSettingUtils.getDeclaredFields(new EnterpriseBasicInfo(), initMap());
+                initDataThirds = saveInitDataThirds(declaredFieldsInfo,num,parentId);
+                b = saveBatch(initDataThirds);
+                log.info("基本信息 addBasic:{}",b);
+                break;
+            case "602":
+                // 其他信息
+                declaredFieldsInfo = PageSettingUtils.getDeclaredFields(new EnterpriseOtherInfo(), initMap());
+                initDataThirds = saveInitDataThirds(declaredFieldsInfo,num,parentId);
+                b = saveBatch(initDataThirds);
+                log.info("其他信息 addBasic:{}",b);
+                break;
+            case "603":
+                // 税务信息
+                declaredFieldsInfo = PageSettingUtils.getDeclaredFields(new TaxInfo(), initMap());
+                initDataThirds = saveInitDataThirds(declaredFieldsInfo,num,parentId);
+                b = saveBatch(initDataThirds);
+                log.info("税务信息 addBasic:{}",b);
+                break;
+            case "604":
+                // 资质信息
+                declaredFieldsInfo = PageSettingUtils.getDeclaredFields(new QualityInfo(), initMap());
+                initDataThirds = saveInitDataThirds(declaredFieldsInfo,num,parentId);
+                b = saveBatch(initDataThirds);
+                log.info("资质信息 addBasic:{}",b);
+                break;
+            case "605":
+                // 知识产权信息
+                declaredFieldsInfo = PageSettingUtils.getDeclaredFields(new IntellectualPropertyInfo(), initMap());
+                initDataThirds = saveInitDataThirds(declaredFieldsInfo,num,parentId);
+                b = saveBatch(initDataThirds);
+                log.info("知识产权信息 addBasic:{}",b);
+                break;
+            case "606":
+                // 研究成果信息
+                declaredFieldsInfo = PageSettingUtils.getDeclaredFields(new ResearchAchievementInfo(), initMap());
+                initDataThirds = saveInitDataThirds(declaredFieldsInfo,num,parentId);
+                b = saveBatch(initDataThirds);
+                log.info("研究成果信息 addBasic:{}",b);
+                break;
+            case "607":
+                // 产品信息
+                declaredFieldsInfo = PageSettingUtils.getDeclaredFields(new ProductInfo(), initMap());
+                initDataThirds = saveInitDataThirds(declaredFieldsInfo,num,parentId);
+                b = saveBatch(initDataThirds);
+                log.info("产品信息 addBasic:{}",b);
+                break;
+            case "608":
+                // 人员信息
+                declaredFieldsInfo = PageSettingUtils.getDeclaredFields(new PersonalInfo(), initMap());
+                initDataThirds = saveInitDataThirds(declaredFieldsInfo,num,parentId);
+                b = saveBatch(initDataThirds);
+                log.info("人员信息 addBasic:{}",b);
+                break;
+            case "701":
+                // 高企自检信息
+                declaredFieldsInfo = PageSettingUtils.getDeclaredFields(new HighSelfCheck(), initMap());
+                initDataThirds = saveInitDataThirds(declaredFieldsInfo,num,parentId);
+                b = saveBatch(initDataThirds);
+                log.info("高企自检信息 addBasic:{}",b);
+                break;
+            case "702":
+                // 市级研发中心信息
+                declaredFieldsInfo = PageSettingUtils.getDeclaredFields(new MunicipalResearchCenterCheck(), initMap());
+                initDataThirds = saveInitDataThirds(declaredFieldsInfo,num,parentId);
+                b = saveBatch(initDataThirds);
+                log.info("市级研发中心信息 addBasic:{}",b);
+                break;
+
+            default:
+        }
+    }
+
+    /**
+     * 根据实体类获取各模块字段。
+     * @param declaredFieldsInfo
+     * @param num
+     * @param parentId
+     * @return
+     */
+    public List<InitDataThird> saveInitDataThirds(List<Map<String, String>> declaredFieldsInfo,Integer num,String parentId) throws NoSuchFieldException {
+        List<InitDataThird> initDataThirds = new ArrayList<>();
+        for (Map<String, String> stringStringMap : declaredFieldsInfo) {
+            for (String s : stringStringMap.keySet()) {
+                initDataThirds.add(createData(String.valueOf(num),"",s,stringStringMap.get(s),
+                        parentId,"1","http://192.168.1.139:9000/push-test/qiyeku.jpg","1"));
+                num += 1;
+            }
+        }
+        return initDataThirds;
+    }
+}

+ 0 - 1
saas-backen/src/main/java/com/pavis/app/saasbacken/service/impl/other/MinioServiceImpl.java

@@ -144,7 +144,6 @@ public class MinioServiceImpl implements MinioService {
                 if (expires == null){
                 if (expires == null){
                     expires = 604800;
                     expires = 604800;
                 }
                 }
-
                 GetPresignedObjectUrlArgs getPresignedObjectUrlArgs = GetPresignedObjectUrlArgs.builder()
                 GetPresignedObjectUrlArgs getPresignedObjectUrlArgs = GetPresignedObjectUrlArgs.builder()
                         .method(Method.GET)
                         .method(Method.GET)
                         .bucket(bucketName)
                         .bucket(bucketName)

+ 39 - 0
saas-backen/src/main/java/com/pavis/app/saasbacken/utils/PageSettingUtils.java

@@ -1,9 +1,12 @@
 package com.pavis.app.saasbacken.utils;
 package com.pavis.app.saasbacken.utils;
 
 
+import com.alibaba.fastjson.JSON;
 import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiModelProperty;
 
 
 import java.lang.reflect.Field;
 import java.lang.reflect.Field;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 import java.util.Map;
 
 
 /**
 /**
@@ -24,6 +27,7 @@ public class PageSettingUtils {
      */
      */
     // public static Map<String, String> getDeclaredFieldsInfo(Object instance, JSONObject jsonObject) throws NoSuchFieldException {
     // public static Map<String, String> getDeclaredFieldsInfo(Object instance, JSONObject jsonObject) throws NoSuchFieldException {
     public static Map<String, String> getDeclaredFieldsInfo(Object instance, Map<String, String> fieldMap) throws NoSuchFieldException {
     public static Map<String, String> getDeclaredFieldsInfo(Object instance, Map<String, String> fieldMap) throws NoSuchFieldException {
+
         Map<String, String> map = new HashMap();
         Map<String, String> map = new HashMap();
         Class<?> clazz = instance.getClass();
         Class<?> clazz = instance.getClass();
         Field[] fields = clazz.getDeclaredFields();
         Field[] fields = clazz.getDeclaredFields();
@@ -44,4 +48,39 @@ public class PageSettingUtils {
         }
         }
         return map;
         return map;
     }
     }
+
+    /**
+     * 根据实体类获取对应的key-value。
+     *
+     * @param instance 实体类对象。
+     * @param fieldMap 待忽略的属性。
+     * @return
+     * @throws NoSuchFieldException
+     */
+    // public static Map<String, String> getDeclaredFieldsInfo(Object instance, JSONObject jsonObject) throws NoSuchFieldException {
+    public static List<Map<String,String>> getDeclaredFields(Object instance, Map<String, String> fieldMap) throws NoSuchFieldException {
+
+        Class<?> clazz = instance.getClass();
+        Field[] fields = clazz.getDeclaredFields();
+        boolean b = false;
+        List<Map<String,String>> maps = new ArrayList<>();
+        for (int i = 0; i < fields.length; i++) {
+            Map<String, String> map = new HashMap();
+            System.out.println("i:" + fields[i].getName());
+            // 除过fieldMap中的属性,其他属性都获取
+            if (!fieldMap.containsKey(fields[i].getName())) {
+                System.err.println("********" + fields[i].getName());
+                // Field field=clazz.getDeclaredField(fields[i].getName());
+                boolean annotationPresent = fields[i].isAnnotationPresent(ApiModelProperty.class);
+                if (annotationPresent) {
+                    // 获取注解值
+                    String name = fields[i].getAnnotation(ApiModelProperty.class).value();
+                    map.put(name, fields[i].getName());
+                    maps.add(map);
+                }
+            }
+        }
+        System.err.println("maps:" + JSON.toJSONString(maps));
+        return maps;
+    }
 }
 }