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

feat: 群组新增、查询、修改

zhaomuran 7 сар өмнө
parent
commit
974f755052
15 өөрчлөгдсөн 437 нэмэгдсэн , 28 устгасан
  1. 46 0
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/controller/GroupController.java
  2. 8 8
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/controller/PostController.java
  3. 49 0
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/domain/dataobject/GroupDO.java
  4. 44 0
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/domain/dto/GroupDTO.java
  5. 19 0
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/domain/qry/GroupQry.java
  6. 1 1
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/domain/qry/PostQry.java
  7. 112 0
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/manager/GroupServiceImpl.java
  8. 16 8
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/manager/PostServiceImpl.java
  9. 27 0
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/objectmapper/GroupMapper.java
  10. 33 0
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/repository/GroupRepository.java
  11. 2 2
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/repository/PostRepository.java
  12. 41 0
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/service/IGroupService.java
  13. 4 4
      bound-link-api/blink-management/src/main/java/com/cloud/sa/management/service/IPostService.java
  14. 30 0
      bound-link-api/blink-management/src/main/resources/mapper/GroupRepositoryMapper.xml
  15. 5 5
      bound-link-api/blink-management/src/main/resources/mapper/PostRepositoryMapper.xml

+ 46 - 0
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/controller/GroupController.java

@@ -0,0 +1,46 @@
+package com.cloud.sa.management.controller;
+
+import com.cloud.sa.base.common.domain.PageResult;
+import com.cloud.sa.base.common.domain.ResponseDTO;
+import com.cloud.sa.management.domain.dto.GroupDTO;
+import com.cloud.sa.management.domain.qry.GroupQry;
+import com.cloud.sa.management.service.IGroupService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import javax.validation.Valid;
+
+@RestController
+@Tag(name = "群组")
+public class GroupController {
+
+    @Resource
+    private IGroupService groupService;
+
+    @Operation(summary = "新增群组")
+    @PostMapping("/supports/group/create")
+    public ResponseDTO<String> supportsGroupCreate(@RequestBody @Valid GroupDTO dto){
+        return groupService.supportsGroupCreate(dto);
+    }
+
+    @Operation(summary = "查询群组")
+    @GetMapping("/supports/group/queryPage")
+    public ResponseDTO<PageResult<GroupDTO>> supportsGroupQueryPage(GroupQry qry){
+        return groupService.supportsGroupQueryPage(qry);
+    }
+
+    @Operation(summary = "获取群组信息")
+    @GetMapping("/supports/group/{id}")
+    public ResponseDTO<GroupDTO> supportsGroupSingleQuery(@PathVariable("id") Long id){
+        return groupService.supportsGroupSingleQuery(id);
+    }
+
+    @Operation(summary = "编辑群组信息")
+    @PostMapping("/supports/group/update")
+    public ResponseDTO<String> supportsGroupUpdate(@RequestBody @Valid GroupDTO dto){
+        return groupService.supportsGroupUpdate(dto);
+    }
+
+}

+ 8 - 8
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/controller/PostController.java

@@ -31,16 +31,16 @@ public class PostController {
         return postService.supportsPostQueryPage(qry);
     }
 
-    @Operation(summary = "岗位信息回显-去修改")
-    @GetMapping("/supports/post/toUpdate/{id}")
-    public ResponseDTO<PostDTO> supportsToUpdatePost(@PathVariable("id") Long id){
-        return postService.supportsToUpdatePost(id);
+    @Operation(summary = "获取岗位信息")
+    @GetMapping("/supports/post/{id}")
+    public ResponseDTO<PostDTO> supportsPostSingleQuery(@PathVariable("id") Long id){
+        return postService.supportsPostSingleQuery(id);
     }
 
-    @Operation(summary = "岗位信息修改")
-    @PostMapping("/supports/post/updateFinish")
-    public ResponseDTO<String> supportsUpdateFinishPost(@RequestBody @Valid PostDTO dto){
-        return postService.supportsUpdateFinishPost(dto);
+    @Operation(summary = "编辑岗位信息")
+    @PostMapping("/supports/post/update")
+    public ResponseDTO<String> supportsPostUpdate(@RequestBody @Valid PostDTO dto){
+        return postService.supportsPostUpdate(dto);
     }
 
 }

+ 49 - 0
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/domain/dataobject/GroupDO.java

@@ -0,0 +1,49 @@
+package com.cloud.sa.management.domain.dataobject;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.cloud.sa.base.common.domain.BaseEntity;
+import lombok.Data;
+
+@Data
+@TableName("mate_group")
+public class GroupDO extends BaseEntity {
+
+    /**
+     * id
+     */
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 群组编码
+     * */
+    private String groupCode;
+
+    /**
+     * 群组名称
+     * */
+    private String groupName;
+
+    /**
+     * 群组描述
+     * */
+    private String groupDescription;
+
+    /**
+     * 排序
+     * */
+    private Integer sort;
+
+    /**
+     * 所有成员
+     * */
+    private String allMember;
+
+    /**
+     * 启用状态(0-禁用,1-启用)
+     * */
+    private Integer status;
+
+}

+ 44 - 0
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/domain/dto/GroupDTO.java

@@ -0,0 +1,44 @@
+package com.cloud.sa.management.domain.dto;
+
+import com.cloud.sa.base.common.domain.BaseEntity;
+import lombok.Data;
+
+@Data
+public class GroupDTO extends BaseEntity {
+
+    /**
+     * id
+     */
+    private Long id;
+
+    /**
+     * 群组编码
+     * */
+    private String groupCode;
+
+    /**
+     * 群组名称
+     * */
+    private String groupName;
+
+    /**
+     * 群组描述
+     * */
+    private String groupDescription;
+
+    /**
+     * 排序
+     * */
+    private Integer sort;
+
+    /**
+     * 所有成员
+     * */
+    private String allMember;
+
+    /**
+     * 启用状态(0-禁用,1-启用)
+     * */
+    private Integer status;
+
+}

+ 19 - 0
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/domain/qry/GroupQry.java

@@ -0,0 +1,19 @@
+package com.cloud.sa.management.domain.qry;
+
+import com.cloud.sa.base.common.domain.PageParam;
+import lombok.Data;
+
+@Data
+public class GroupQry extends PageParam {
+
+    /**
+     * id
+     */
+    private Long id;
+
+    /**
+     *  群组编码
+     * */
+    private String groupName;
+
+}

+ 1 - 1
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/domain/qry/PostQry.java

@@ -14,6 +14,6 @@ public class PostQry extends PageParam {
     /**
      *  岗位编码
      * */
-    private String postCode;
+    private String postName;
 
 }

+ 112 - 0
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/manager/GroupServiceImpl.java

@@ -0,0 +1,112 @@
+package com.cloud.sa.management.manager;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.cloud.sa.base.common.domain.PageResult;
+import com.cloud.sa.base.common.domain.ResponseDTO;
+import com.cloud.sa.base.common.util.BlinkEntityUtil;
+import com.cloud.sa.base.common.util.BlinkEnumUtil;
+import com.cloud.sa.base.common.util.BlinkPageUtil;
+import com.cloud.sa.base.module.support.serialnumber.constant.SerialNumberIdEnum;
+import com.cloud.sa.base.module.support.serialnumber.service.SerialNumberService;
+import com.cloud.sa.management.domain.dataobject.GroupDO;
+import com.cloud.sa.management.domain.dto.GroupDTO;
+import com.cloud.sa.management.domain.qry.GroupQry;
+import com.cloud.sa.management.objectmapper.GroupMapper;
+import com.cloud.sa.management.repository.GroupRepository;
+import com.cloud.sa.management.service.IGroupService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+import java.util.Objects;
+
+@Service
+public class GroupServiceImpl extends ServiceImpl<GroupRepository, GroupDO> implements IGroupService {
+
+    @Resource
+    private GroupRepository repository;
+    @Resource
+    private GroupMapper groupMapper;
+    @Resource
+    private SerialNumberService serialNumberService;
+
+    /**
+     * 新增岗位
+     *
+     * @param dto
+     * @return
+     */
+    @Override
+    public ResponseDTO<String> supportsGroupCreate(GroupDTO dto) {
+        // 验证群组编码是否重复
+        GroupDO groupDO = repository.queryByGroupName(dto.getGroupName(), null, Boolean.FALSE);
+        if (Objects.nonNull(groupDO)) {
+            return ResponseDTO.userErrorParam("群组已存在!请检查");
+        }
+        //生成群组编码
+        SerialNumberIdEnum serialNumberIdEnum = BlinkEnumUtil.getEnumByValue(4, SerialNumberIdEnum.class);
+        dto.setGroupCode(serialNumberService.generate(serialNumberIdEnum));
+        //生成DO
+        GroupDO group = new GroupDO();
+        groupMapper.toGroupDO(dto, group);
+        //创建人赋值
+        BlinkEntityUtil.setCreateInfo(group);
+        //执行新增
+        this.save(group);
+        return ResponseDTO.ok();
+    }
+
+    /**
+     * 查询岗位列表
+     *
+     * @param qry
+     * @return
+     */
+    @Override
+    public ResponseDTO<PageResult<GroupDTO>> supportsGroupQueryPage(GroupQry qry) {
+        Page<?> page = BlinkPageUtil.convert2PageQuery(qry);
+        List<GroupDTO> list = repository.supportsGroupQueryPage(page, qry);
+        PageResult<GroupDTO> pageResult = BlinkPageUtil.convert2PageResult(page, list);
+        return ResponseDTO.ok(pageResult);
+    }
+
+    /**
+     * 获取群组信息
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public ResponseDTO<GroupDTO> supportsGroupSingleQuery(Long id) {
+        GroupDO groupDO = repository.queryByGroupName(null, id, Boolean.FALSE);
+        if (!Objects.nonNull(groupDO)) {
+            return ResponseDTO.userErrorParam("群组不存在!请检查");
+        }
+        GroupDTO dto = new GroupDTO();
+        groupMapper.toGroupDTO(groupDO, dto);
+        return ResponseDTO.ok(dto);
+    }
+
+    /**
+     * 编辑群组信息
+     *
+     * @param dto
+     * @return
+     */
+    @Override
+    public ResponseDTO<String> supportsGroupUpdate(GroupDTO dto) {
+        // 验证群组编码是否重复
+        GroupDO groupDO = repository.queryByGroupName(dto.getGroupName(), dto.getId(), Boolean.FALSE);
+        if (Objects.nonNull(groupDO)) {
+            return ResponseDTO.userErrorParam("群组已存在!请检查");
+        }
+        GroupDO group = new GroupDO();
+        groupMapper.toGroupDO(dto, group);
+        //修改人赋值
+        BlinkEntityUtil.setUpdatedInfo(group);
+        //执行修改
+        this.updateById(group);
+        return ResponseDTO.ok();
+    }
+}

+ 16 - 8
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/manager/PostServiceImpl.java

@@ -5,7 +5,10 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.cloud.sa.base.common.domain.PageResult;
 import com.cloud.sa.base.common.domain.ResponseDTO;
 import com.cloud.sa.base.common.util.BlinkEntityUtil;
+import com.cloud.sa.base.common.util.BlinkEnumUtil;
 import com.cloud.sa.base.common.util.BlinkPageUtil;
+import com.cloud.sa.base.module.support.serialnumber.constant.SerialNumberIdEnum;
+import com.cloud.sa.base.module.support.serialnumber.service.SerialNumberService;
 import com.cloud.sa.management.domain.dataobject.PostDO;
 import com.cloud.sa.management.domain.dto.PostDTO;
 import com.cloud.sa.management.domain.qry.PostQry;
@@ -23,9 +26,10 @@ public class PostServiceImpl extends ServiceImpl<PostRepository, PostDO> impleme
 
     @Resource
     private PostRepository repository;
-
     @Resource
     private PostMapper postMapper;
+    @Resource
+    private SerialNumberService serialNumberService;
 
     /**
      * 新增岗位
@@ -36,10 +40,14 @@ public class PostServiceImpl extends ServiceImpl<PostRepository, PostDO> impleme
     @Override
     public ResponseDTO<String> supportsPostCreate(PostDTO dto) {
         // 验证岗位编码是否重复
-        PostDO postDO = repository.queryByPostCode(dto.getPostCode(), null, Boolean.FALSE);
+        PostDO postDO = repository.queryByPostName(dto.getPostName(), null, Boolean.FALSE);
         if (Objects.nonNull(postDO)) {
             return ResponseDTO.userErrorParam("岗位已存在!请检查");
         }
+        //生成岗位编码
+        SerialNumberIdEnum serialNumberIdEnum = BlinkEnumUtil.getEnumByValue(4, SerialNumberIdEnum.class);
+        dto.setPostCode(serialNumberService.generate(serialNumberIdEnum));
+        //生成DO
         PostDO post = new PostDO();
         postMapper.toPostDO(dto, post);
         //创建人赋值
@@ -64,14 +72,14 @@ public class PostServiceImpl extends ServiceImpl<PostRepository, PostDO> impleme
     }
 
     /**
-     * 岗位信息回显(去修改)
+     * 获取岗位信息
      *
      * @param id
      * @return
      */
     @Override
-    public ResponseDTO<PostDTO> supportsToUpdatePost(Long id) {
-        PostDO postDO = repository.queryByPostCode(null, id, Boolean.FALSE);
+    public ResponseDTO<PostDTO> supportsPostSingleQuery(Long id) {
+        PostDO postDO = repository.queryByPostName(null, id, Boolean.FALSE);
         if (!Objects.nonNull(postDO)) {
             return ResponseDTO.userErrorParam("岗位不存在!请检查");
         }
@@ -81,15 +89,15 @@ public class PostServiceImpl extends ServiceImpl<PostRepository, PostDO> impleme
     }
 
     /**
-     * 岗位信息去修改
+     * 编辑岗位信息
      *
      * @param dto
      * @return
      */
     @Override
-    public ResponseDTO<String> supportsUpdateFinishPost(PostDTO dto) {
+    public ResponseDTO<String> supportsPostUpdate(PostDTO dto) {
         // 验证岗位编码是否重复
-        PostDO postDO = repository.queryByPostCode(dto.getPostCode(), dto.getId(), Boolean.FALSE);
+        PostDO postDO = repository.queryByPostName(dto.getPostName(), dto.getId(), Boolean.FALSE);
         if (Objects.nonNull(postDO)) {
             return ResponseDTO.userErrorParam("岗位已存在!请检查");
         }

+ 27 - 0
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/objectmapper/GroupMapper.java

@@ -0,0 +1,27 @@
+package com.cloud.sa.management.objectmapper;
+
+import com.cloud.sa.base.common.util.BlinkStringUtil;
+import com.cloud.sa.management.domain.dataobject.GroupDO;
+import com.cloud.sa.management.domain.dto.GroupDTO;
+import org.mapstruct.Mapper;
+import org.mapstruct.MappingTarget;
+
+@Mapper(componentModel = "spring", imports = {BlinkStringUtil.class})
+public interface GroupMapper {
+
+    /**
+     * 群组主数据dto转do
+     *
+     * @param dto
+     */
+    void toGroupDO(GroupDTO dto, @MappingTarget GroupDO groupDO);
+
+
+    /**
+     * 群组主数据do转dto
+     *
+     * @param dto
+     */
+    void toGroupDTO(GroupDO groupDO, @MappingTarget GroupDTO dto);
+
+}

+ 33 - 0
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/repository/GroupRepository.java

@@ -0,0 +1,33 @@
+package com.cloud.sa.management.repository;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.cloud.sa.management.domain.dataobject.GroupDO;
+import com.cloud.sa.management.domain.dto.GroupDTO;
+import com.cloud.sa.management.domain.qry.GroupQry;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface GroupRepository extends BaseMapper<GroupDO> {
+
+    /**
+     * 验证服务商是否重复
+     *
+     * @param groupName
+     * @param deletedFlag
+     * @param id
+     * @return
+     */
+    GroupDO queryByGroupName(@Param("groupName") String groupName, @Param("id") Long id, @Param("deletedFlag") Boolean deletedFlag);
+
+    /**
+     * 查询岗位列表
+     *
+     * @param qry
+     * @return
+     */
+    List<GroupDTO> supportsGroupQueryPage(Page<?> page, @Param("query") GroupQry qry);
+}

+ 2 - 2
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/repository/PostRepository.java

@@ -16,12 +16,12 @@ public interface PostRepository extends BaseMapper<PostDO> {
     /**
      * 验证服务商是否重复
      *
-     * @param postCode
+     * @param postName
      * @param deletedFlag
      * @param id
      * @return
      */
-    PostDO queryByPostCode(@Param("postCode") String postCode, @Param("id") Long id, @Param("deletedFlag") Boolean deletedFlag);
+    PostDO queryByPostName(@Param("postName") String postName, @Param("id") Long id, @Param("deletedFlag") Boolean deletedFlag);
 
     /**
      * 查询岗位列表

+ 41 - 0
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/service/IGroupService.java

@@ -0,0 +1,41 @@
+package com.cloud.sa.management.service;
+
+import com.cloud.sa.base.common.domain.PageResult;
+import com.cloud.sa.base.common.domain.ResponseDTO;
+import com.cloud.sa.management.domain.dto.GroupDTO;
+import com.cloud.sa.management.domain.qry.GroupQry;
+
+public interface IGroupService {
+
+    /**
+     * 新增群组
+     *
+     * @param dto
+     * @return
+     */
+    ResponseDTO<String> supportsGroupCreate(GroupDTO dto);
+
+    /**
+     * 查询群组列表
+     *
+     * @param qry
+     * @return
+     */
+    ResponseDTO<PageResult<GroupDTO>> supportsGroupQueryPage(GroupQry qry);
+
+    /**
+     * 获取群组信息
+     *
+     * @param id
+     * @return
+     */
+    ResponseDTO<GroupDTO> supportsGroupSingleQuery(Long id);
+
+    /**
+     * 编辑群组信息
+     *
+     * @param dto
+     * @return
+     */
+    ResponseDTO<String> supportsGroupUpdate(GroupDTO dto);
+}

+ 4 - 4
bound-link-api/blink-management/src/main/java/com/cloud/sa/management/service/IPostService.java

@@ -24,18 +24,18 @@ public interface IPostService {
     ResponseDTO<PageResult<PostDTO>> supportsPostQueryPage(PostQry qry);
 
     /**
-     * 岗位信息回显(去修改)
+     * 获取岗位信息
      *
      * @param id
      * @return
      */
-    ResponseDTO<PostDTO> supportsToUpdatePost(Long id);
+    ResponseDTO<PostDTO> supportsPostSingleQuery(Long id);
 
     /**
-     * 岗位信息去修改
+     * 编辑岗位信息
      *
      * @param dto
      * @return
      */
-    ResponseDTO<String> supportsUpdateFinishPost(PostDTO dto);
+    ResponseDTO<String> supportsPostUpdate(PostDTO dto);
 }

+ 30 - 0
bound-link-api/blink-management/src/main/resources/mapper/GroupRepositoryMapper.xml

@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.cloud.sa.management.repository.GroupRepository">
+    <select id="queryByGroupNamec" resultType="com.cloud.sa.management.domain.dataobject.GroupDO">
+        SELECT *
+        FROM mate_group
+        WHERE deleted_flag = #{deletedFlag}
+        <if test="groupName != null and groupName != ''">
+            AND group_name = #{groupName}
+        </if>
+        <if test="id != null">
+            AND id = #{id}
+        </if>
+    </select>
+
+    <!--    查询群组列表-->
+    <select id="supportsGroupQueryPage" resultType="com.cloud.sa.management.domain.dto.GroupDTO">
+        select *
+        from mate_group
+        where deleted_flag = '0'
+        <if test="query.groupName != null and query.groupName != ''">
+            AND group_name = #{query.groupName}
+        </if>
+        <if test="query.id != null">
+            AND id = #{query.id}
+        </if>
+        order by create_time desc
+    </select>
+
+</mapper>

+ 5 - 5
bound-link-api/blink-management/src/main/resources/mapper/PostRepositoryMapper.xml

@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.cloud.sa.management.repository.PostRepository">
-    <select id="queryByPostCode" resultType="com.cloud.sa.management.domain.dataobject.PostDO">
+    <select id="queryByPostName" resultType="com.cloud.sa.management.domain.dataobject.PostDO">
         SELECT *
         FROM mate_post
         WHERE deleted_flag = #{deletedFlag}
-        <if test="postCode != null and postCode != ''">
-            AND post_code = #{postCode}
+        <if test="postName != null and postName != ''">
+            AND post_name = #{postName}
         </if>
         <if test="id != null">
             AND id = #{id}
@@ -18,8 +18,8 @@
         select *
         from mate_post
         where deleted_flag = '0'
-        <if test="query.postCode != null and query.postCode != ''">
-            AND post_code = #{query.poatCode}
+        <if test="query.postName != null and query.postName != ''">
+            AND post_name = #{query.poatName}
         </if>
         <if test="query.id != null">
             AND id = #{query.id}