Pārlūkot izejas kodu

团队、渠道、电销组管理

xuqiang 1 gadu atpakaļ
vecāks
revīzija
13e71cfcd0

+ 2 - 2
commons/src/main/java/com/jzg/commons/core/base/BaseModel.java

@@ -7,11 +7,11 @@ import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 import lombok.Data;
 
 
+import java.io.Serializable;
 import java.time.LocalDateTime;
 import java.time.LocalDateTime;
-import java.util.Date;
 
 
 @Data
 @Data
-public class BaseModel {
+public class BaseModel implements Serializable {
 
 
     @Schema(description = "是否删除")
     @Schema(description = "是否删除")
     @TableLogic
     @TableLogic

+ 13 - 1
commons/src/main/java/com/jzg/commons/entity/vo/LeftSysOrganizationVo.java

@@ -20,12 +20,24 @@ public class LeftSysOrganizationVo implements Serializable {
 
 
     @Schema(description = "名称")
     @Schema(description = "名称")
     private String name;
     private String name;
-    @JsonSerialize(using = ToStringSerializer.class)
+
+    @Schema(description = "负责人id")
+    private String managerId;
+
+    @Schema(description = "负责人名称")
+    private String managerName;
+
     @Schema(description = "机构id")
     @Schema(description = "机构id")
     private String deptId;
     private String deptId;
 
 
     @Schema(description = "机构id")
     @Schema(description = "机构id")
     private String deptName;
     private String deptName;
 
 
+    @Schema(description = "成员数量")
+    private Integer memberNumber;
+
+    @Schema(description = "描述")
+    private String describeInformation;
+
 
 
 }
 }

+ 3 - 0
commons/src/main/java/com/jzg/commons/entity/vo/SysUserInfoListVo.java

@@ -43,4 +43,7 @@ public class SysUserInfoListVo extends PageRequest {
     @Schema(description = "搜索关键字")
     @Schema(description = "搜索关键字")
     private String name;
     private String name;
 
 
+    @Schema(description = "团队ID")
+    private String sysOrganizationId;
+
 }
 }

+ 5 - 7
tenant/organization/src/main/java/com/jzg/organization/controller/SysOrganizationController.java

@@ -1,13 +1,11 @@
 package com.jzg.organization.controller;
 package com.jzg.organization.controller;
 
 
 
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.jzg.commons.core.page.HttpResult;
 import com.jzg.commons.core.page.HttpResult;
 import com.jzg.commons.entity.dto.*;
 import com.jzg.commons.entity.dto.*;
 import com.jzg.commons.entity.po.SysOrganization;
 import com.jzg.commons.entity.po.SysOrganization;
 import com.jzg.organization.service.SysOrganizationService;
 import com.jzg.organization.service.SysOrganizationService;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Operation;
-import io.swagger.v3.oas.annotations.media.Schema;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.validation.annotation.Validated;
@@ -33,9 +31,9 @@ public class SysOrganizationController {
     }
     }
 
 
 
 
-    @Operation(summary = "团队、渠道、电销组", description = "详情页面")
+    @Operation(summary = "团队、渠道、电销组详情页面", description = "详情页面")
     @PostMapping("getDetails")
     @PostMapping("getDetails")
-    public HttpResult getDetails(@RequestParam("userId") Long userId){
+    public HttpResult getDetails(@RequestParam("userId") Long userId, @RequestParam("id") String id){
         return sysOrganizationService.getDetails(userId);
         return sysOrganizationService.getDetails(userId);
     }
     }
 
 
@@ -45,7 +43,7 @@ public class SysOrganizationController {
      * @param sysOrganizationParam
      * @param sysOrganizationParam
      * @return
      * @return
      */
      */
-    @Operation(summary = "团队、渠道、电销组", description = "左侧列表页面")
+    @Operation(summary = "团队、渠道、电销组左侧列表页面", description = "左侧列表页面")
     @PostMapping("leftList")
     @PostMapping("leftList")
     public HttpResult leftList(@Validated @RequestBody SysOrganizationParam sysOrganizationParam){
     public HttpResult leftList(@Validated @RequestBody SysOrganizationParam sysOrganizationParam){
         return sysOrganizationService.leftList(sysOrganizationParam);
         return sysOrganizationService.leftList(sysOrganizationParam);
@@ -116,7 +114,7 @@ public class SysOrganizationController {
      * @param
      * @param
      * @return
      * @return
      */
      */
-    @Schema(description = "新增团队、渠道、电销组用户")
+    @Operation(summary = "新增团队、渠道、电销组用户")
     @PostMapping("addTeamUsers")
     @PostMapping("addTeamUsers")
     public HttpResult addTeamUsers(@Validated @RequestBody SysOrganizationUserLinkAdd organizationUserLinkAdd){
     public HttpResult addTeamUsers(@Validated @RequestBody SysOrganizationUserLinkAdd organizationUserLinkAdd){
         return sysOrganizationService.addTeamUsers(organizationUserLinkAdd);
         return sysOrganizationService.addTeamUsers(organizationUserLinkAdd);
@@ -128,7 +126,7 @@ public class SysOrganizationController {
      * @param
      * @param
      * @return
      * @return
      */
      */
-    @Schema(description = "设置团队、渠道、电销组负责人")
+    @Operation(summary = "设置团队、渠道、电销组负责人")
     @PostMapping("setResponsiblePerson")
     @PostMapping("setResponsiblePerson")
     public HttpResult setResponsiblePerson(@Validated @RequestBody SysOrganizationSetPerson setPerson){
     public HttpResult setResponsiblePerson(@Validated @RequestBody SysOrganizationSetPerson setPerson){
         return sysOrganizationService.setResponsiblePerson(setPerson);
         return sysOrganizationService.setResponsiblePerson(setPerson);

+ 18 - 0
tenant/organization/src/main/java/com/jzg/organization/mapper/SysOrganizationMapper.java

@@ -3,8 +3,10 @@ package com.jzg.organization.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.jzg.commons.entity.dto.SysOrganizationParam;
 import com.jzg.commons.entity.dto.SysOrganizationParam;
 import com.jzg.commons.entity.po.SysOrganization;
 import com.jzg.commons.entity.po.SysOrganization;
+import com.jzg.commons.entity.vo.LeftSysOrganizationVo;
 import com.jzg.commons.entity.vo.SysOrganizationUserDetailsVo;
 import com.jzg.commons.entity.vo.SysOrganizationUserDetailsVo;
 import com.jzg.commons.entity.vo.SysOrganizationVo;
 import com.jzg.commons.entity.vo.SysOrganizationVo;
+import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
 import org.apache.ibatis.annotations.Select;
 
 
 import java.util.List;
 import java.util.List;
@@ -20,4 +22,20 @@ public interface SysOrganizationMapper extends BaseMapper<SysOrganization> {
 
 
     @Select("")
     @Select("")
     SysOrganizationUserDetailsVo getDetails(Long userId);
     SysOrganizationUserDetailsVo getDetails(Long userId);
+
+
+    @Select({
+            "<script>",
+            "select id, system_code, name, dept_id, manager_id, describe_information, attribute," +
+                    "(SELECT COUNT(1) FROM sys_organization_user_link WHERE sys_organization_user_link.organization_id = sys_organization.id) memberNumber," +
+                    "(SELECT sys_dept.`name` FROM sys_dept WHERE sys_dept.id = sys_organization.dept_id) deptName," +
+                    "(SELECT u.username FROM sys_user u WHERE u.id = sys_organization.manager_id) managerName from sys_organization",
+            "<where> 1=1 ",
+            "<if test='params.param != null and params.param != \"\"'>",
+            " and sys_organization.name like concat('%',#{params.param},'%')",
+            "</if>",
+            "</where>",
+            "</script>"
+    })
+    List<LeftSysOrganizationVo> selectLeftList(@Param("params") SysOrganizationParam sysOrganizationParam);
 }
 }

+ 3 - 9
tenant/organization/src/main/java/com/jzg/organization/service/impl/SysOrganizationServiceImpl.java

@@ -74,19 +74,13 @@ public class SysOrganizationServiceImpl extends ServiceImpl<SysOrganizationMappe
         if (StringUtils.isNotEmpty(organizationAdd.getId())){
         if (StringUtils.isNotEmpty(organizationAdd.getId())){
             last.ne(SysOrganization::getId, organizationAdd.getId());
             last.ne(SysOrganization::getId, organizationAdd.getId());
         }
         }
-        boolean exists = sysOrganizationMapper.exists(last);
-        return exists;
+        return sysOrganizationMapper.exists(last);
     }
     }
 
 
     @Override
     @Override
     public HttpResult leftList(SysOrganizationParam sysOrganizationParam) {
     public HttpResult leftList(SysOrganizationParam sysOrganizationParam) {
-        QueryWrapper<SysOrganization> queryWrapper = new QueryWrapper<>();
-        queryWrapper.select("id, system_code, name, dept_id, manager_id, describe_information, attribute," +
-                "(SELECT COUNT(1) FROM sys_organization_user_link WHERE sys_organization_user_link.organization_id = sys_organization.id) memberNumber," +
-                "(SELECT sys_dept.`name` FROM sys_dept WHERE sys_dept.id = sys_organization.dept_id) deptName");
-        List<SysOrganization> sysOrganizations = sysOrganizationMapper.selectList(queryWrapper);
-        List<LeftSysOrganizationVo> list = JSONObject.parseObject(JSONObject.toJSONString(sysOrganizations), List.class);
-        return HttpResult.ok(list);
+        List<LeftSysOrganizationVo> sysOrganizations = sysOrganizationMapper.selectLeftList(sysOrganizationParam);
+        return HttpResult.ok(sysOrganizations);
     }
     }
 
 
     @Override
     @Override

+ 3 - 0
tenant/organization/src/main/resources/mapper/SysUserJzgInfoMapper.xml

@@ -83,6 +83,9 @@
         <if test="sysUserInfoListVo.isEnable != null and sysUserInfoListVo.isEnable != ''">
         <if test="sysUserInfoListVo.isEnable != null and sysUserInfoListVo.isEnable != ''">
             and suji.is_enable = #{sysUserInfoListVo.isEnable}
             and suji.is_enable = #{sysUserInfoListVo.isEnable}
         </if>
         </if>
+        <if test="sysUserInfoListVo.sysOrganizationId != null and sysUserInfoListVo.sysOrganizationId != ''">
+            and so.id = #{sysUserInfoListVo.sysOrganizationId}
+        </if>
         <if test="sysUserInfoListVo.leaderId != null and sysUserInfoListVo.leaderId != ''">
         <if test="sysUserInfoListVo.leaderId != null and sysUserInfoListVo.leaderId != ''">
             and (suji.leader_id = #{sysUserInfoListVo.leaderId}
             and (suji.leader_id = #{sysUserInfoListVo.leaderId}
             or  su.username = #{sysUserInfoListVo.leaderId)
             or  su.username = #{sysUserInfoListVo.leaderId)