Sfoglia il codice sorgente

完善swagger接口注释;
部门查询的部分入参修改为数组;

lixing 4 anni fa
parent
commit
571d45b35d
38 ha cambiato i file con 168 aggiunte e 67 eliminazioni
  1. 1 1
      fm-person/src/main/java/com/persagy/fm/department/controller/DepEnumController.java
  2. 1 1
      fm-person/src/main/java/com/persagy/fm/department/model/Department.java
  3. 1 1
      fm-person/src/main/java/com/persagy/fm/department/model/dto/AddDepartmentDTO.java
  4. 4 2
      fm-person/src/main/java/com/persagy/fm/department/model/dto/PageQueryDepartmentDTO.java
  5. 7 2
      fm-person/src/main/java/com/persagy/fm/department/model/dto/QueryDepartmentDTO.java
  6. 3 2
      fm-person/src/main/java/com/persagy/fm/department/model/dto/QueryDepartmentTreeDTO.java
  7. 1 1
      fm-person/src/main/java/com/persagy/fm/department/model/dto/UpdateDepartmentDTO.java
  8. 4 0
      fm-person/src/main/java/com/persagy/fm/department/model/vo/DepSimpleObjVO.java
  9. 1 1
      fm-person/src/main/java/com/persagy/fm/department/model/vo/FullPathInfoVO.java
  10. 2 0
      fm-person/src/main/java/com/persagy/fm/department/model/vo/ManagerSimpleObjVO.java
  11. 1 1
      fm-person/src/main/java/com/persagy/fm/department/model/vo/ResponseDepartmentItemVO.java
  12. 1 1
      fm-person/src/main/java/com/persagy/fm/department/model/vo/ResponseDepartmentListItemVO.java
  13. 48 22
      fm-person/src/main/java/com/persagy/fm/department/service/impl/DepTreeServiceImpl.java
  14. 10 7
      fm-person/src/main/java/com/persagy/fm/department/service/impl/DepartmentServiceImpl.java
  15. 2 0
      fm-person/src/main/java/com/persagy/fm/depproject/model/dto/PageQueryDepProjectDTO.java
  16. 1 1
      fm-person/src/main/java/com/persagy/fm/person/controller/PersonEnumController.java
  17. 1 1
      fm-person/src/main/java/com/persagy/fm/person/model/dto/AddPerson4BackEndDTO.java
  18. 1 1
      fm-person/src/main/java/com/persagy/fm/person/model/dto/AddPerson4FrontEndDTO.java
  19. 7 0
      fm-person/src/main/java/com/persagy/fm/person/model/dto/CheckDuplicateDTO.java
  20. 2 2
      fm-person/src/main/java/com/persagy/fm/person/model/dto/QueryPersonDetailDTO.java
  21. 2 0
      fm-person/src/main/java/com/persagy/fm/person/model/dto/UpsertPerson4BackEndDTO.java
  22. 2 0
      fm-person/src/main/java/com/persagy/fm/person/model/dto/UpsertPerson4FrontEndDTO.java
  23. 2 3
      fm-person/src/main/java/com/persagy/fm/person/model/dto/UpsertPersonDTO.java
  24. 4 0
      fm-person/src/main/java/com/persagy/fm/person/model/vo/LatestJobNumberVO.java
  25. 0 1
      fm-person/src/main/java/com/persagy/fm/person/service/impl/PersonServiceImpl.java
  26. 9 2
      fm-person/src/main/java/com/persagy/fm/saas/account/service/impl/SaasAccountServiceImpl.java
  27. 7 0
      fm-person/src/main/java/com/persagy/fm/saas/common/model/dto/SaasBaseDTO.java
  28. 5 0
      fm-person/src/main/java/com/persagy/fm/saas/common/model/dto/SaasBasePageDTO.java
  29. 5 0
      fm-person/src/main/java/com/persagy/fm/saas/project/model/dto/UpsertSaasProjectDTO.java
  30. 2 0
      fm-person/src/main/java/com/persagy/fm/saas/project/model/vo/ProjectSimpleObjVO.java
  31. 8 6
      fm-person/src/main/java/com/persagy/fm/saas/project/model/vo/ProjectTreeItemVO.java
  32. 4 0
      fm-person/src/main/java/com/persagy/fm/saas/project/model/vo/ProjectVO.java
  33. 7 4
      fm-person/src/main/java/com/persagy/fm/saas/role/model/dto/AddSaasRoleDTO.java
  34. 1 1
      fm-person/src/main/java/com/persagy/fm/saas/role/model/dto/QuerySaasRoleByNameDTO.java
  35. 7 1
      fm-person/src/main/java/com/persagy/fm/saas/role/model/dto/UpdateSaasRoleDTO.java
  36. 1 1
      fm-person/src/main/java/com/persagy/fm/saas/role/model/vo/SaasRoleIdVO.java
  37. 2 0
      fm-person/src/main/java/com/persagy/fm/workresume/model/dto/PageQueryWorkResumeDTO.java
  38. 1 1
      fm-supplier/src/main/java/com/persagy/fm/saas/model/dto/UpdateSaasRoleDTO.java

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/department/controller/DepEnumController.java

@@ -32,7 +32,7 @@ public class DepEnumController {
     IDepEnumService depEnumService;
 
     @PostMapping("/get")
-    @ApiOperation(value="查询")
+    @ApiOperation(value="查询(部门类型:dept_type,数据来源:resource_from)")
     public CommonResult<PageList<EnumVO>> queryEnum(
             @Valid @RequestBody EnumQueryDTO enumQueryDTO) {
         String type = enumQueryDTO.getType();

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/department/model/Department.java

@@ -39,7 +39,7 @@ public class Department extends AuditableEntity<Department> implements Serializa
     @ApiModelProperty("部门全路径")
     private String fullPath;
 
-    @ApiModelProperty("编制人数")
+    @ApiModelProperty(value = "编制人数", hidden = true)
     private Integer staffCount;
 
     public static String PROP_NAME = "name";

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/department/model/dto/AddDepartmentDTO.java

@@ -43,7 +43,7 @@ public class AddDepartmentDTO {
     @ApiModelProperty(value = "部门全路径")
     private String fullPath;
 
-    @ApiModelProperty(value = "编制人数")
+    @ApiModelProperty(value = "编制人数", hidden = true)
     private Integer staffCount;
 
     @ApiModelProperty(value = "关联项目")

+ 4 - 2
fm-person/src/main/java/com/persagy/fm/department/model/dto/PageQueryDepartmentDTO.java

@@ -6,6 +6,8 @@ import io.swagger.annotations.ApiModelProperty;
 import com.persagy.fm.common.model.dto.PageDTO;
 import lombok.Data;
 
+import java.util.List;
+
 /**
  * @author lixing
  * @version V1.0 2021-03-11 15:09:19
@@ -22,8 +24,8 @@ public class PageQueryDepartmentDTO extends PageDTO {
     @ApiModelProperty(value = "部门类型", required = true, notes = "com.persagy.fm.department.constant.enums.DepTypeEnum")
     private String type;
 
-    @ApiModelProperty(value = "上级部门id", required = true)
-    private String parentId;
+    @ApiModelProperty(value = "上级部门id列表", required = true)
+    private List<String> parentIds;
 
     @ApiModelProperty(value = "数据来源", required = true, notes = "com.persagy.fm.department.constant.enums.ResourceFromEnum")
     private String resourceFrom;

+ 7 - 2
fm-person/src/main/java/com/persagy/fm/department/model/dto/QueryDepartmentDTO.java

@@ -4,6 +4,8 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
+import java.util.List;
+
 /**
  * @author lixing
  * @version V1.0 2021-03-11 15:09:19
@@ -11,14 +13,17 @@ import lombok.Data;
 @Data
 @ApiModel(value = "查询部门入参")
 public class QueryDepartmentDTO {
+    @ApiModelProperty(value = "部门id列表")
+    private List<String> ids;
+
     @ApiModelProperty(value = "部门名称")
     private String name;
 
     @ApiModelProperty(value = "部门类型", notes = "com.persagy.fm.department.constant.enums.DepTypeEnum")
     private String type;
 
-    @ApiModelProperty(value = "上级部门id")
-    private String parentId;
+    @ApiModelProperty(value = "上级部门id列表")
+    private List<String> parentIds;
 
     @ApiModelProperty(value = "数据来源", notes = "com.persagy.fm.department.constant.enums.ResourceFromEnum")
     private String resourceFrom;

+ 3 - 2
fm-person/src/main/java/com/persagy/fm/department/model/dto/QueryDepartmentTreeDTO.java

@@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import javax.validation.constraints.Min;
+import java.util.List;
 
 /**
  * @author lixing
@@ -13,8 +14,8 @@ import javax.validation.constraints.Min;
 @Data
 @ApiModel(value = "查询部门树入参")
 public class QueryDepartmentTreeDTO {
-    @ApiModelProperty(value = "选中的树节点")
-    private String checkedId;
+    @ApiModelProperty(value = "选中的树节点列表")
+    private List<String> checkedIds;
 
     @ApiModelProperty(value = "需要展示的层级")
     @Min(value = 1, message = "需要展示的层级最小为1")

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/department/model/dto/UpdateDepartmentDTO.java

@@ -44,7 +44,7 @@ public class UpdateDepartmentDTO {
     @ApiModelProperty(value = "部门全路径")
     private String fullPath;
 
-    @ApiModelProperty(value = "编制人数")
+    @ApiModelProperty(value = "编制人数", hidden = true)
     private Integer staffCount;
 
     @ApiModelProperty(value = "关联的项目")

+ 4 - 0
fm-person/src/main/java/com/persagy/fm/department/model/vo/DepSimpleObjVO.java

@@ -1,6 +1,8 @@
 package com.persagy.fm.department.model.vo;
 
 import com.persagy.fm.common.model.vo.SimpleObjVO;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
@@ -14,7 +16,9 @@ import lombok.NoArgsConstructor;
 @EqualsAndHashCode(callSuper = true)
 @Data
 @NoArgsConstructor
+@ApiModel
 public class DepSimpleObjVO extends SimpleObjVO {
+    @ApiModelProperty("部门全路径")
     private String fullPath;
 
     public DepSimpleObjVO(String id, String name, String fullPath) {

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/department/model/vo/FullPathInfoVO.java

@@ -10,7 +10,7 @@ import java.util.List;
  * @author lixing
  * @version V1.0 2021/4/26 4:47 下午
  **/
-@ApiModel("部门全路径信息vo类")
+@ApiModel
 @Data
 public class FullPathInfoVO {
     @ApiModelProperty("部门全路径中包含的部门列表")

+ 2 - 0
fm-person/src/main/java/com/persagy/fm/department/model/vo/ManagerSimpleObjVO.java

@@ -3,6 +3,7 @@ package com.persagy.fm.department.model.vo;
 import com.persagy.fm.common.model.vo.SimpleObjVO;
 import com.persagy.fm.translate.model.Trans;
 import com.persagy.fm.translate.model.TransType;
+import io.swagger.annotations.ApiModel;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
@@ -14,5 +15,6 @@ import lombok.EqualsAndHashCode;
  **/
 @EqualsAndHashCode(callSuper = true)
 @Data
+@ApiModel
 public class ManagerSimpleObjVO extends SimpleObjVO {
 }

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/department/model/vo/ResponseDepartmentItemVO.java

@@ -45,7 +45,7 @@ public class ResponseDepartmentItemVO {
     @ApiModelProperty("部门全路径")
     private String fullPath;
 
-    @ApiModelProperty("编制人数")
+    @ApiModelProperty(value = "编制人数", hidden = true)
     private Integer staffCount;
 
     @ApiModelProperty("是否包含下级部门")

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/department/model/vo/ResponseDepartmentListItemVO.java

@@ -40,7 +40,7 @@ public class ResponseDepartmentListItemVO {
     @ApiModelProperty("部门全路径")
     private String fullPath;
 
-    @ApiModelProperty("编制人数")
+    @ApiModelProperty(value = "编制人数", hidden = true)
     private Integer staffCount;
 
     @ApiModelProperty("是否包含下级部门")

+ 48 - 22
fm-person/src/main/java/com/persagy/fm/department/service/impl/DepTreeServiceImpl.java

@@ -2,21 +2,20 @@ package com.persagy.fm.department.service.impl;
 
 import com.google.common.collect.Lists;
 import com.persagy.fm.common.constant.DefaultValueConstants;
+import com.persagy.fm.common.constant.enums.BoolEnum;
 import com.persagy.fm.department.model.ConvertDepartmentTool;
 import com.persagy.fm.department.model.Department;
-import com.persagy.fm.department.service.IDepartmentService;
-import com.persagy.fm.common.constant.enums.BoolEnum;
+import com.persagy.fm.department.model.dto.QueryDepartmentDTO;
 import com.persagy.fm.department.model.dto.QueryDepartmentTreeDTO;
 import com.persagy.fm.department.model.vo.ResponseDepartmentTreeItemVO;
 import com.persagy.fm.department.service.IDepTreeService;
+import com.persagy.fm.department.service.IDepartmentService;
 import com.persagy.fm.department.utils.DepDataUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -38,21 +37,38 @@ public class DepTreeServiceImpl implements IDepTreeService {
      * @version V1.0 2021/3/12 11:58 上午
      */
     private Map<Integer, List<Department>> initTreeData(QueryDepartmentTreeDTO queryDepartmentTreeDTO) {
-        String checkedId = queryDepartmentTreeDTO.getCheckedId();
-        if (checkedId != null) {
-            Department checkedDep = departmentService.queryDepartmentDetail(checkedId);
-            // 获取部门全路径,计算部门所在层级
-            String fullPath = checkedDep.getFullPath();
+        Integer showLevel = getShowLevel(queryDepartmentTreeDTO);
+        queryDepartmentTreeDTO.setShowLevel(showLevel);
+        return initDefaultTreeData(showLevel);
+    }
+
+    /**
+     * 根据选中的节点判断需要加载的层级
+     *
+     * @param checkIdsSet 选中的节点
+     * @return 需要加载的层级
+     * @author lixing
+     * @version V1.0 2021/4/28 10:39 上午
+     */
+    private int getShowLevel(Set<String> checkIdsSet) {
+        int result = getDefaultShowLevel();
+
+        if (CollectionUtils.isEmpty(checkIdsSet)) {
+            return result;
+        }
+        QueryDepartmentDTO queryDepartmentDTO = new QueryDepartmentDTO();
+        queryDepartmentDTO.setIds(new ArrayList<>(checkIdsSet));
+        List<Department> departments = departmentService.queryDepartmentList(queryDepartmentDTO);
+
+
+        for (Department department : departments) {
+            String fullPath = department.getFullPath();
             String separator = "-";
             String[] paths = fullPath.split(separator);
-            int defaultShowLevel = getDefaultShowLevel();
-            int showLevel = Math.max(paths.length, defaultShowLevel);
-            // 拼装树时会用到queryDepartmentTreeDTO中的showLevel
-            queryDepartmentTreeDTO.setShowLevel(showLevel);
-            return initDefaultTreeData(showLevel);
-        } else {
-            return initDefaultTreeData(getShowLevel(queryDepartmentTreeDTO));
+            result = Math.max(paths.length, result);
         }
+
+        return result;
     }
 
     /**
@@ -62,9 +78,19 @@ public class DepTreeServiceImpl implements IDepTreeService {
      * @return 需要展示的层级
      */
     private Integer getShowLevel(QueryDepartmentTreeDTO queryDepartmentTreeDTO) {
+        // 如果查询条件中有选中的节点,先判断选中节点的展示等级
+        List<String> checkedIds = queryDepartmentTreeDTO.getCheckedIds();
+        if (checkedIds == null) {
+            checkedIds = Lists.newArrayList();
+        }
+        Set<String> checkIdsSet = new HashSet<>(checkedIds);
+        int showLevelFromCheckedIds = getShowLevel(checkIdsSet);
+
         Integer showLevel = queryDepartmentTreeDTO.getShowLevel();
         if (showLevel == null) {
-            showLevel = getDefaultShowLevel();
+            showLevel = showLevelFromCheckedIds;
+        } else {
+            showLevel = Math.max(showLevelFromCheckedIds, showLevel);
         }
         return showLevel;
     }
@@ -104,7 +130,7 @@ public class DepTreeServiceImpl implements IDepTreeService {
      * @param levelDepListMap level -> depList
      * @param level           当前层级
      * @param parentDepIdList 上一层部门Id列表
-     * @param showLevel 前端传入的要展示的层级
+     * @param showLevel       前端传入的要展示的层级
      * @return 需要展示的每一层级的部门:level -> depList
      * @author lixing
      * @version V1.0 2021/3/12 12:02 下午
@@ -133,9 +159,9 @@ public class DepTreeServiceImpl implements IDepTreeService {
      * 获取节点的子节点,追加到部门树
      *
      * @param levelParentIdMap level -> { parentId -> depList }
-     * @param treeItem 节点
-     * @param level 节点的下一级,例如根节点的下一级为 1
-     * @param showLevel 前端传入的需要展示的层级
+     * @param treeItem         节点
+     * @param level            节点的下一级,例如根节点的下一级为 1
+     * @param showLevel        前端传入的需要展示的层级
      * @author lixing
      * @version V1.0 2021/3/12 3:12 下午
      */

+ 10 - 7
fm-person/src/main/java/com/persagy/fm/department/service/impl/DepartmentServiceImpl.java

@@ -386,7 +386,7 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
 
         // 查询部门是否有子部门
         QueryDepartmentDTO queryDepartmentDTO = new QueryDepartmentDTO();
-        queryDepartmentDTO.setParentId(id);
+        queryDepartmentDTO.setParentIds(Lists.newArrayList(id));
         List<Department> departments = queryDepartmentList(queryDepartmentDTO);
 
         if (!CollectionUtils.isEmpty(departments)) {
@@ -437,6 +437,9 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
         // 默认按创建时间倒序排序
         queryWrapper.orderBy(true, true, Department.PROP_CREATIONTIME);
         if (queryDepartmentDTO != null) {
+            if (queryDepartmentDTO.getIds() != null) {
+                queryWrapper.in(Department.PROP_ID, queryDepartmentDTO.getIds());
+            }
 
             if (StringUtils.isNotEmpty(queryDepartmentDTO.getName())) {
                 queryWrapper.like(Department.PROP_NAME, queryDepartmentDTO.getName());
@@ -446,8 +449,8 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
                 queryWrapper.eq(Department.PROP_TYPE, queryDepartmentDTO.getType());
             }
 
-            if (queryDepartmentDTO.getParentId() != null) {
-                queryWrapper.eq(Department.PROP_PARENT_ID, queryDepartmentDTO.getParentId());
+            if (queryDepartmentDTO.getParentIds() != null) {
+                queryWrapper.in(Department.PROP_PARENT_ID, queryDepartmentDTO.getParentIds());
             }
 
             if (StringUtils.isNotEmpty(queryDepartmentDTO.getResourceFrom())) {
@@ -488,8 +491,8 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
             queryWrapper.eq(Department.PROP_TYPE, pageQueryDepartmentDTO.getType());
         }
 
-        if (StringUtils.isNotEmpty(pageQueryDepartmentDTO.getParentId())) {
-            queryWrapper.eq(Department.PROP_PARENT_ID, pageQueryDepartmentDTO.getParentId());
+        if (pageQueryDepartmentDTO.getParentIds() != null) {
+            queryWrapper.in(Department.PROP_PARENT_ID, pageQueryDepartmentDTO.getParentIds());
         }
 
         if (StringUtils.isNotEmpty(pageQueryDepartmentDTO.getResourceFrom())) {
@@ -544,7 +547,7 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
     @Override
     public Department getGroupDep() {
         QueryDepartmentDTO queryDepartmentDTO = new QueryDepartmentDTO();
-        queryDepartmentDTO.setParentId(DepConstants.NO_PARENT_ID);
+        queryDepartmentDTO.setParentIds(Lists.newArrayList(DepConstants.NO_PARENT_ID));
         queryDepartmentDTO.setType(DepTypeEnum.GROUP.getType());
         List<Department> departments = queryDepartmentList(queryDepartmentDTO);
         if (!CollectionUtils.isEmpty(departments)) {
@@ -568,7 +571,7 @@ public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Departm
     /**
      * 获取部门全路径中的部门信息列表
      *
-     * @param depId 部门id
+     * @param depId      部门id
      * @param resultList 最终要返回的结果
      * @author lixing
      * @version V1.0 2021/4/26 5:12 下午

+ 2 - 0
fm-person/src/main/java/com/persagy/fm/depproject/model/dto/PageQueryDepProjectDTO.java

@@ -7,11 +7,13 @@ import java.util.Date;
 
 import com.persagy.fm.common.model.dto.PageDTO;
 import lombok.Data;
+import lombok.EqualsAndHashCode;
 
 /**
  * @author lixing
  * @version V1.0 2021-03-24 10:08:14
  */
+@EqualsAndHashCode(callSuper = true)
 @Data
 @ApiModel(value = "分页查询部门项目入参")
 public class PageQueryDepProjectDTO extends PageDTO {

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/person/controller/PersonEnumController.java

@@ -34,7 +34,7 @@ public class PersonEnumController {
     IPersonEnumService personEnumService;
 
     @PostMapping("/get")
-    @ApiOperation(value="查询, type: 证件类型 -> certificate_type, 人员类型 -> person_type")
+    @ApiOperation(value="查询(certificate_type:证件类型, person_type:人员类型)")
     public CommonResult<PageList<EnumVO>> queryEnum(
             @Valid @RequestBody EnumQueryDTO enumQueryDTO) {
         String type = enumQueryDTO.getType();

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/person/model/dto/AddPerson4BackEndDTO.java

@@ -10,7 +10,7 @@ import lombok.EqualsAndHashCode;
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
-@ApiModel(value = "给后端使用的创建人员入参")
+@ApiModel
 public class AddPerson4BackEndDTO extends UpsertPerson4BackEndDTO{
 
 }

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/person/model/dto/AddPerson4FrontEndDTO.java

@@ -10,7 +10,7 @@ import lombok.EqualsAndHashCode;
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
-@ApiModel(value = "给前端使用的创建人员入参")
+@ApiModel
 public class AddPerson4FrontEndDTO extends UpsertPerson4FrontEndDTO{
 
 }

+ 7 - 0
fm-person/src/main/java/com/persagy/fm/person/model/dto/CheckDuplicateDTO.java

@@ -1,6 +1,7 @@
 package com.persagy.fm.person.model.dto;
 
 import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 /**
@@ -10,10 +11,16 @@ import lombok.Data;
 @Data
 @ApiModel(value = "校验属性重复入参")
 public class CheckDuplicateDTO {
+    @ApiModelProperty("人员主键")
     private String personId;
+    @ApiModelProperty("证件号码")
     private String idNumber;
+    @ApiModelProperty("手机号码")
     private String phoneNumber;
+    @ApiModelProperty("账号")
     private String username;
+    @ApiModelProperty("邮箱")
     private String mail;
+    @ApiModelProperty("工号")
     private String jobNumber;
 }

+ 2 - 2
fm-person/src/main/java/com/persagy/fm/person/model/dto/QueryPersonDetailDTO.java

@@ -14,10 +14,10 @@ import javax.validation.constraints.NotNull;
 @ApiModel(value = "获取人员详情入参")
 public class QueryPersonDetailDTO {
     @NotNull(message = "id不能为空")
-    @ApiModelProperty(value = "id", required = true)
+    @ApiModelProperty(value = "人员id", required = true)
     private String id;
 
-    @ApiModelProperty(value = "depId")
+    @ApiModelProperty(value = "部门id")
     private String depId;
 
 }

+ 2 - 0
fm-person/src/main/java/com/persagy/fm/person/model/dto/UpsertPerson4BackEndDTO.java

@@ -1,6 +1,7 @@
 package com.persagy.fm.person.model.dto;
 
 import com.persagy.fm.saas.project.model.dto.UpsertSaasProjectDTO;
+import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
@@ -13,6 +14,7 @@ import java.util.List;
  * @version V1.0 2021/3/23 11:09 上午
  **/
 @Data
+@ApiModel
 public class UpsertPerson4BackEndDTO extends UpsertPersonDTO{
     @ApiModelProperty(value = "项目权限")
     private List<UpsertSaasProjectDTO> projects;

+ 2 - 0
fm-person/src/main/java/com/persagy/fm/person/model/dto/UpsertPerson4FrontEndDTO.java

@@ -2,6 +2,7 @@ package com.persagy.fm.person.model.dto;
 
 import com.persagy.fm.common.constant.RegexConstants;
 import com.persagy.fm.saas.project.model.dto.UpsertSaasProjectDTO;
+import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
@@ -22,6 +23,7 @@ import java.util.List;
  **/
 @EqualsAndHashCode(callSuper = true)
 @Data
+@ApiModel
 public class UpsertPerson4FrontEndDTO extends UpsertPersonDTO{
     @ApiModelProperty(value = "项目权限")
     private List<UpsertSaasProjectDTO> projects;

+ 2 - 3
fm-person/src/main/java/com/persagy/fm/person/model/dto/UpsertPersonDTO.java

@@ -1,8 +1,7 @@
 package com.persagy.fm.person.model.dto;
 
 import com.persagy.fm.common.constant.RegexConstants;
-import com.persagy.fm.saas.accountproject.model.dto.ResetAccountProjectItem;
-import com.persagy.fm.saas.project.model.dto.UpsertSaasProjectDTO;
+import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import net.minidev.json.annotate.JsonIgnore;
@@ -10,7 +9,6 @@ import org.hibernate.validator.constraints.Length;
 
 import javax.validation.constraints.Email;
 import javax.validation.constraints.NotEmpty;
-import javax.validation.constraints.NotNull;
 import javax.validation.constraints.Pattern;
 import java.util.Date;
 import java.util.List;
@@ -22,6 +20,7 @@ import java.util.List;
  * @version V1.0 2021/3/23 11:09 上午
  **/
 @Data
+@ApiModel
 public class UpsertPersonDTO {
     @ApiModelProperty(value = "姓名", required = true)
     @NotEmpty(message = "姓名不能为空")

+ 4 - 0
fm-person/src/main/java/com/persagy/fm/person/model/vo/LatestJobNumberVO.java

@@ -1,5 +1,7 @@
 package com.persagy.fm.person.model.vo;
 
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 /**
@@ -9,6 +11,8 @@ import lombok.Data;
  * @version V1.0 2021/4/7 10:40 上午
  **/
 @Data
+@ApiModel(value = "最新工号")
 public class LatestJobNumberVO {
+    @ApiModelProperty("工号")
     private String jobNumber;
 }

+ 0 - 1
fm-person/src/main/java/com/persagy/fm/person/service/impl/PersonServiceImpl.java

@@ -950,7 +950,6 @@ public class PersonServiceImpl extends ServiceImpl<PersonMapper, Person>
             saasAccountService.disableAccount(deleteSaasAccountDTO);
         }
 
-
         // 工作信息状态更新为禁用
         workResumeService.changeWorkResumeEnableStateByPersonId(
                 personId, WorkResumeEnableStateEnum.DISABLE.getType());

+ 9 - 2
fm-person/src/main/java/com/persagy/fm/saas/account/service/impl/SaasAccountServiceImpl.java

@@ -1,5 +1,6 @@
 package com.persagy.fm.saas.account.service.impl;
 
+import com.persagy.fm.common.constant.enums.ValidEnum;
 import com.persagy.fm.common.response.FmResponseContent;
 import com.persagy.fm.saas.account.client.SaasAccountClient;
 import com.persagy.fm.saas.account.constant.enums.AccountTypeEnum;
@@ -50,8 +51,14 @@ public class SaasAccountServiceImpl implements ISaasAccountService {
 
     @Override
     public void enableAccount(EnableSaasAccountDTO enableSaasAccountDTO) {
-        enableSaasAccountDTO.setDefaultValueNoAccountId();
-        saasAccountClient.enableAccount(enableSaasAccountDTO);
+        // 判断账号的状态,如果账号是禁用状态重新启用
+        String accountId = enableSaasAccountDTO.getAccountId();
+        SaasAccountListItemVO saasAccountListItemVO = querySaasAccountDetail(accountId);
+        if (saasAccountListItemVO != null &&
+                ValidEnum.FALSE.getType().equals(saasAccountListItemVO.getValid())) {
+            enableSaasAccountDTO.setDefaultValueNoAccountId();
+            saasAccountClient.enableAccount(enableSaasAccountDTO);
+        }
     }
 
     @Override

+ 7 - 0
fm-person/src/main/java/com/persagy/fm/saas/common/model/dto/SaasBaseDTO.java

@@ -2,6 +2,8 @@ package com.persagy.fm.saas.common.model.dto;
 
 import com.persagy.fm.common.context.AppContext;
 import com.persagy.fm.saas.account.constant.enums.AccountBelongEnum;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.apache.commons.lang3.StringUtils;
 
@@ -12,10 +14,15 @@ import org.apache.commons.lang3.StringUtils;
  * @version V1.0 2021/3/26 4:48 下午
  **/
 @Data
+@ApiModel
 public class SaasBaseDTO {
+    @ApiModelProperty("数据来源")
     private String accountBelong;
+    @ApiModelProperty("集团编码")
     private String groupCode;
+    @ApiModelProperty("客户端类型(PC、APP)")
     private String appId;
+    @ApiModelProperty("账号id")
     private String accountId;
 
     /**

+ 5 - 0
fm-person/src/main/java/com/persagy/fm/saas/common/model/dto/SaasBasePageDTO.java

@@ -3,6 +3,8 @@ package com.persagy.fm.saas.common.model.dto;
 import com.persagy.fm.common.constant.PageQueryConstants;
 import com.persagy.fm.common.context.AppContext;
 import com.persagy.fm.saas.account.constant.enums.AccountBelongEnum;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
@@ -14,8 +16,11 @@ import lombok.EqualsAndHashCode;
  **/
 @EqualsAndHashCode(callSuper = true)
 @Data
+@ApiModel
 public class SaasBasePageDTO extends SaasBaseDTO{
+    @ApiModelProperty("当前页数")
     private Integer page;
+    @ApiModelProperty("每页条数")
     private Integer size;
 
     @Override

+ 5 - 0
fm-person/src/main/java/com/persagy/fm/saas/project/model/dto/UpsertSaasProjectDTO.java

@@ -1,5 +1,7 @@
 package com.persagy.fm.saas.project.model.dto;
 
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 /**
@@ -9,7 +11,10 @@ import lombok.Data;
  * @version V1.0 2021/4/13 4:36 下午
  **/
 @Data
+@ApiModel
 public class UpsertSaasProjectDTO {
+    @ApiModelProperty("项目id")
     private String projectId;
+    @ApiModelProperty("区域id")
     private String areaId;
 }

+ 2 - 0
fm-person/src/main/java/com/persagy/fm/saas/project/model/vo/ProjectSimpleObjVO.java

@@ -1,6 +1,7 @@
 package com.persagy.fm.saas.project.model.vo;
 
 import com.persagy.fm.common.model.vo.SimpleObjVO;
+import io.swagger.annotations.ApiModel;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
@@ -12,5 +13,6 @@ import lombok.EqualsAndHashCode;
  **/
 @EqualsAndHashCode(callSuper = true)
 @Data
+@ApiModel
 public class ProjectSimpleObjVO extends SimpleObjVO {
 }

+ 8 - 6
fm-person/src/main/java/com/persagy/fm/saas/project/model/vo/ProjectTreeItemVO.java

@@ -1,6 +1,8 @@
 package com.persagy.fm.saas.project.model.vo;
 
 import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.util.List;
@@ -13,17 +15,17 @@ import java.util.List;
  **/
 @Data
 @JsonInclude(JsonInclude.Include.NON_NULL)
+@ApiModel
 public class ProjectTreeItemVO {
-
+    @ApiModelProperty("id")
     private String id;
+    @ApiModelProperty("项目名称")
     private String name;
+    @ApiModelProperty("区域id")
     private String areaId;
-    /**
-     * 是否为项目,条目可能是区域或项目
-     */
+    @ApiModelProperty(value = "是否为项目,条目可能是区域或项目", notes = "com.persagy.fm.common.constant.enums.BoolEnum")
     private String isProject;
-
-
+    @ApiModelProperty("子节点")
     private List<ProjectTreeItemVO> children;
 }
 

+ 4 - 0
fm-person/src/main/java/com/persagy/fm/saas/project/model/vo/ProjectVO.java

@@ -1,5 +1,7 @@
 package com.persagy.fm.saas.project.model.vo;
 
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
@@ -11,6 +13,8 @@ import lombok.EqualsAndHashCode;
  **/
 @EqualsAndHashCode(callSuper = true)
 @Data
+@ApiModel
 public class ProjectVO extends ProjectSimpleObjVO{
+    @ApiModelProperty("区域id")
     private String areaId;
 }

+ 7 - 4
fm-person/src/main/java/com/persagy/fm/saas/role/model/dto/AddSaasRoleDTO.java

@@ -1,15 +1,15 @@
 package com.persagy.fm.saas.role.model.dto;
 
+import com.persagy.fm.common.constant.RegexConstants;
 import com.persagy.fm.saas.common.model.dto.SaasBaseDTO;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-
-import javax.validation.constraints.NotNull;
-
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import org.hibernate.validator.constraints.Length;
 
-import java.util.Date;
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Pattern;
 
 /**
  * @author lixing
@@ -21,6 +21,9 @@ import java.util.Date;
 public class AddSaasRoleDTO extends SaasBaseDTO {
     @ApiModelProperty(value = "角色名称", required = true)
     @NotNull(message = "角色名称不能为空")
+    @Length(max = 20, message = "角色名称长度不能超过20位")
+    @Pattern(regexp = RegexConstants.NAME_REGEX,
+            message = "角色名称" + RegexConstants.NAME_REGEX_WARNING)
     private String roleName;
 
     @ApiModelProperty(value = "角色类型", required = true, notes="com.persagy.fm.saas.role.constant.enums.RoleTypeEnum")

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/saas/role/model/dto/QuerySaasRoleByNameDTO.java

@@ -14,7 +14,7 @@ import java.util.List;
  */
 @EqualsAndHashCode(callSuper = true)
 @Data
-@ApiModel(value = "查询入参")
+@ApiModel
 public class QuerySaasRoleByNameDTO extends SaasBaseDTO {
     @ApiModelProperty(value = "角色名称", required = true)
     private String roleName;

+ 7 - 1
fm-person/src/main/java/com/persagy/fm/saas/role/model/dto/UpdateSaasRoleDTO.java

@@ -1,13 +1,16 @@
 package com.persagy.fm.saas.role.model.dto;
 
+import com.persagy.fm.common.constant.RegexConstants;
 import com.persagy.fm.saas.common.model.dto.SaasBaseDTO;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 
 import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Pattern;
 
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import org.hibernate.validator.constraints.Length;
 
 import java.util.Date;
 
@@ -24,6 +27,9 @@ public class UpdateSaasRoleDTO extends SaasBaseDTO {
     private String id;
 
     @ApiModelProperty(value = "角色名称", required = true)
-    @NotNull(message = "角色名称不能为空") 
+    @NotNull(message = "角色名称不能为空")
+    @Length(max = 20, message = "角色名称长度不能超过20位")
+    @Pattern(regexp = RegexConstants.NAME_REGEX,
+            message = "角色名称" + RegexConstants.NAME_REGEX_WARNING)
     private String roleName;
 }

+ 1 - 1
fm-person/src/main/java/com/persagy/fm/saas/role/model/vo/SaasRoleIdVO.java

@@ -10,7 +10,7 @@ import lombok.Data;
  * @version V1.0 2021-03-22 19:04:25
  */
 @Data
-@ApiModel(value = "返回角色id参数")
+@ApiModel
 @JsonInclude(JsonInclude.Include.NON_NULL)
 public class SaasRoleIdVO {
     @ApiModelProperty("主键")

+ 2 - 0
fm-person/src/main/java/com/persagy/fm/workresume/model/dto/PageQueryWorkResumeDTO.java

@@ -7,11 +7,13 @@ import java.util.Date;
 
 import com.persagy.fm.common.model.dto.PageDTO;
 import lombok.Data;
+import lombok.EqualsAndHashCode;
 
 /**
  * @author lixing
  * @version V1.0 2021-03-15 17:20:08
  */
+@EqualsAndHashCode(callSuper = true)
 @Data
 @ApiModel(value = "分页查询工作信息入参")
 public class PageQueryWorkResumeDTO extends PageDTO {

+ 1 - 1
fm-supplier/src/main/java/com/persagy/fm/saas/model/dto/UpdateSaasRoleDTO.java

@@ -21,6 +21,6 @@ public class UpdateSaasRoleDTO extends SaasBaseDTO {
     private String id;
 
     @ApiModelProperty(value = "角色名称", required = true)
-    @NotNull(message = "角色名称不能为空") 
+    @NotNull(message = "角色名称不能为空")
     private String roleName;
 }