Просмотр исходного кода

增加客服列表相关数据

MOKASZ\wzk12044 5 лет назад
Родитель
Сommit
afaf592706

+ 7 - 6
src/main/java/com/mokamrp/privates/constant/Constants.java

@@ -26,20 +26,21 @@ public class Constants {
      */
     public static final String HTTPS = "https://";
 
+
     /**
-     * 通用成功标识
+     * 登录成功
      */
-    public static final String SUCCESS = "0";
+    public static final String LOGIN_SUCCESS = "Success";
 
     /**
-     * 通用失败标识
+     * 通用成功
      */
-    public static final String FAIL = "1";
+    public static final String SUCCESS = "success";
 
     /**
-     * 登录成功
+     * 通用失败
      */
-    public static final String LOGIN_SUCCESS = "Success";
+    public static final String ERROR = "error";
 
     /**
      * 注销

+ 14 - 7
src/main/java/com/mokamrp/privates/controller/BaseController.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.baomidou.mybatisplus.plugins.Page;
 import com.baomidou.mybatisplus.service.IService;
+import com.mokamrp.privates.constant.Constants;
 import com.mokamrp.privates.constant.HttpStatus;
 import com.mokamrp.privates.entity.AddHandle;
 import com.mokamrp.privates.entity.DelHandle;
@@ -18,10 +19,7 @@ import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.Map;
+import java.util.*;
 
 /**
  * 一个粗糙的鸡肋
@@ -44,7 +42,7 @@ public class BaseController<T> {
         if (!res) {
             return AjaxResult.error("删除失败");
         }
-        return AjaxResult.success("success", res);
+        return AjaxResult.success(Constants.SUCCESS, res);
     }
 
     @PostMapping("/add")
@@ -55,7 +53,7 @@ public class BaseController<T> {
         Date date = new Date();
         Boolean res = service.insert(addHandle.getRaw());
         if (res) {
-            return AjaxResult.success("success", res);
+            return AjaxResult.success(Constants.SUCCESS, res);
         } else {
             return AjaxResult.error("新增失败", res);
         }
@@ -67,7 +65,16 @@ public class BaseController<T> {
             return AjaxResult.error(HttpStatus.ERROR, bindingResult.getFieldError().getDefaultMessage());
         }
         service.update(editHandle.getRaw(), new EntityWrapper<T>().in("id", editHandle.getIds()));
-        return AjaxResult.success("success", true);
+        return AjaxResult.success(Constants.SUCCESS, true);
+    }
+
+    @GetMapping("/edit")
+    public Object info(@RequestParam(name = "ids") String ids) {
+        if (ids == null || ids.isEmpty()){
+            return AjaxResult.error("ids null");
+        }
+        T res = service.selectOne(new EntityWrapper<T>().eq("id",ids));
+        return AjaxResult.success(Constants.SUCCESS, res);
     }
 
     @PostMapping("/index")

+ 5 - 19
src/main/java/com/mokamrp/privates/controller/CorpController.java

@@ -1,18 +1,17 @@
 package com.mokamrp.privates.controller;
 
 
+import com.mokamrp.privates.constant.Constants;
+import com.mokamrp.privates.interceptor.AuthUser;
+import com.mokamrp.privates.mapper.pojo.User;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.*;
 import com.mokamrp.privates.service.CorpService;
 import com.mokamrp.privates.mapper.pojo.Corp;
 import com.mokamrp.privates.help.AjaxResult;
 import com.mokamrp.privates.entity.IndexHandle;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
 import com.mokamrp.privates.mapper.pojo.IndexBaseRes;
 
-import org.springframework.web.bind.annotation.RestController;
-
 import javax.validation.Valid;
 import java.util.List;
 
@@ -26,21 +25,8 @@ import java.util.List;
  */
 @RestController
 @RequestMapping("/corp")
-public class CorpController {
+public class CorpController extends BaseController<Corp>{
 
-    @Autowired
-    public CorpService corpService;
 
-    /**
-     * 基础查询方法
-     *
-     * @author leon 支持分页offset,limit;简单条件like,=,<>;排序order,sort
-     * @since 1949-10-01
-     */
-    @PostMapping("/index")
-    public Object index(@Valid @RequestBody IndexHandle indexHandle) {
-        IndexBaseRes<Corp> res = corpService.base(indexHandle);
-        return AjaxResult.success("success", res);
-    }
 }
 

+ 2 - 1
src/main/java/com/mokamrp/privates/controller/TagController.java

@@ -1,6 +1,7 @@
 package com.mokamrp.privates.controller;
 
 import com.mokamrp.privates.entity.GetEmployeeTagHandle;
+import com.mokamrp.privates.help.AjaxResult;
 import com.mokamrp.privates.service.TagService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.BindingResult;
@@ -29,7 +30,7 @@ public class TagController extends BaseController<Tag> {
     @PostMapping("/getEmployeeTag")
     public Object getEmployeeTag(@Valid @RequestBody GetEmployeeTagHandle getEmployeeTagHandle, BindingResult bindingResult) {
         Object res = tagService.selectEmployeeTag(getEmployeeTagHandle);
-        return res;
+        return AjaxResult.success(res);
     }
 }
 

+ 20 - 9
src/main/java/com/mokamrp/privates/controller/UserCorpController.java

@@ -2,8 +2,10 @@ package com.mokamrp.privates.controller;
 
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.mokamrp.privates.constant.Constants;
 import com.mokamrp.privates.help.AjaxResult;
 import com.mokamrp.privates.interceptor.AuthUser;
+import com.mokamrp.privates.mapper.pojo.Corp;
 import com.mokamrp.privates.mapper.pojo.User;
 import com.mokamrp.privates.mapper.pojo.UserCorp;
 import com.mokamrp.privates.service.UserCorpService;
@@ -27,19 +29,28 @@ import java.util.Map;
  * @since 2021-04-17
  */
 @RestController
-@RequestMapping("/usercorp")
+@RequestMapping("/userCorp")
 public class UserCorpController {
     @Autowired
     public UserCorpService userCorpService;
 
-    @GetMapping("/getusercorps")
-    public Object getUserCorps(@AuthUser User authUser) {
-        System.out.println(authUser.getId());
-        List<Map<String, Object>> userCorps = userCorpService.selectMaps(new EntityWrapper<UserCorp>()
-                .eq("user_id", authUser.getId())
-                .orderBy("seq", true)
-                .setSqlSelect("corp_id"));
-        return AjaxResult.success(userCorps);
+    /**
+     * 获取当前登录用户管辖的企业列表
+     * @param authUser
+     * @return
+     */
+    @GetMapping("/getAuthUserCorps")
+    public Object getAuthUserCorps(@AuthUser User authUser){
+        List<Corp> res = userCorpService.getAuthUserCorps(authUser.getId());
+        return AjaxResult.success(Constants.SUCCESS,res);
+    }
+
+    @PostMapping("/setUserCorpsByUserId")
+    public Object setUserCorpsByUserId(@AuthUser User authUser){
+        if (authUser.getIsSuperAdmin() == 1){
+
+        }
+        return null;
     }
 }
 

+ 2 - 2
src/main/java/com/mokamrp/privates/mapper/GroupCorpMapper.xml

@@ -20,8 +20,8 @@
     <select id="selectGroupCorp" resultType="map">
         SELECT A.group_name, A.id, IFNULL(B.corp_id, 0) AS corp_cnt
         FROM private_group AS A
-                 LEFT JOIN (SELECT COUNT(corp_id) AS corp_id, group_id FROM private_group_corp GROUP BY group_id) AS B
-                           ON A.id = B.group_id
+        LEFT JOIN (SELECT COUNT(corp_id) AS corp_id, group_id FROM private_group_corp GROUP BY group_id) AS B
+        ON A.id = B.group_id
         WHERE A.group_type = 1
     </select>
 </mapper>

+ 20 - 2
src/main/java/com/mokamrp/privates/mapper/GroupMapper.xml

@@ -21,9 +21,27 @@
     </sql>
 
     <select id="selectCorpAndWorkEmployeeList" resultType="map">
-        SELECT *
+        SELECT
+            C.`name`,
+            A.group_id,
+            B.group_name,
+            D.`name`,
+            D.gender,
+            D.avatar,
+            D.qr_code,
+            D.mobile,
+            D.private_switch_status,
+            D.private_tag_id,
+            D.private_phone_code,
+            D.private_forbidden_status,
+            D.private_user_id,
+            D.cust_cnt,
+            D.group_cnt,
+            D.in_group_cnt
         FROM private_group_corp AS A
-                 LEFT JOIN mc_corp AS B on A.corp_id = B.id
+        LEFT JOIN private_group AS B on A.group_id = B.id AND B.group_type = 1
+        LEFT JOIN mc_corp AS C on A.corp_id = C.id
+        LEFT JOIN mc_work_employee AS D ON C.id = D.corp_id
         WHERE A.corp_id IN (#{corpIds})
     </select>
 

+ 2 - 2
src/main/java/com/mokamrp/privates/mapper/UserMapper.xml

@@ -20,13 +20,13 @@
         <result column="created_at" property="createdAt"/>
         <result column="updated_at" property="updatedAt"/>
         <result column="deleted_at" property="deletedAt"/>
-        <result column="isSuperAdmin" property="isSuperAdmin"/>
+        <result column="is_super_admin" property="isSuperAdmin"/>
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
         id
-        , phone, password, name, gender, department, position, login_time, status, tenant_id, created_at, updated_at, deleted_at, isSuperAdmin
+        , phone, password, name, gender, department, position, login_time, status, tenant_id, created_at, updated_at, deleted_at, is_super_admin
     </sql>
 
 </mapper>

+ 4 - 5
src/main/java/com/mokamrp/privates/service/CorpService.java

@@ -17,10 +17,9 @@ import java.util.List;
  */
 public interface CorpService extends IService<Corp> {
     /**
-     * 基础sql操作方法
-     *
-     * @author leon 支持分页offset,limit;简单条件like,=,<>;排序order,sort
-     * @since 1949-10-01
+     * 通过企业Id获取企业信息
+     * @param corps
+     * @return
      */
-    public IndexBaseRes<Corp> base(IndexHandle indexhandle);
+    public List<Corp> GetCorpInfoByCorpIds(List<Integer> corps);
 }

+ 12 - 0
src/main/java/com/mokamrp/privates/service/UserCorpService.java

@@ -1,8 +1,13 @@
 package com.mokamrp.privates.service;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.mokamrp.privates.mapper.pojo.Corp;
 import com.mokamrp.privates.mapper.pojo.UserCorp;
 import com.baomidou.mybatisplus.service.IService;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * <p>
  * 系统账户和企微企业绑定表 服务类
@@ -12,5 +17,12 @@ import com.baomidou.mybatisplus.service.IService;
  * @since 2021-04-17
  */
 public interface UserCorpService extends IService<UserCorp> {
+    /**
+     * 获取指定管理账户管辖的企业信息
+     * @param userId
+     * @return
+     */
+    public List<Corp> getAuthUserCorps (Integer userId);
 
+    public List<Integer> getAuthUserCorpIds(Integer userId);
 }

+ 7 - 42
src/main/java/com/mokamrp/privates/service/impl/CorpServiceImpl.java

@@ -12,6 +12,7 @@ import com.mokamrp.privates.entity.IndexHandle;
 import com.mokamrp.privates.mapper.pojo.IndexBaseRes;
 
 import java.util.Iterator;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -25,48 +26,12 @@ import java.util.Map;
 @Service
 public class CorpServiceImpl extends ServiceImpl<CorpMapper, Corp> implements CorpService {
     /**
-     * 基础sql操作方法
-     *
-     * @author leon 支持分页offset,limit;简单条件like,=,<>;排序order,sort
-     * @since 1949-10-01
+     * 通过企业Id获取企业信息
+     * @param corps
+     * @return
      */
-    public IndexBaseRes<Corp> base(IndexHandle indexhandle) {
-        Integer total = this.selectCount(new EntityWrapper<Corp>());
-        Iterator fileterIt = indexhandle.getFilter().entrySet().iterator();
-        Wrapper<Corp> warpper = new EntityWrapper<Corp>();
-        //.@leon where like,=,<>
-        while (fileterIt.hasNext()) {
-            Map.Entry entray = (Map.Entry) fileterIt.next();
-            Object key = entray.getKey();
-            Object value = entray.getValue();
-            Map<String, String> op = indexhandle.getOp();
-            if (op.get(key) == null || op.get(key).isEmpty() || op.get(key).toString().equals("=")) {
-                warpper = warpper.eq(key.toString(), value.toString());
-            } else if (op.get(key).toString().equals("like")) {
-                warpper = warpper.like(key.toString(), "%" + value.toString() + "%");
-            } else if (op.get(key).toString().equals("<>")) {
-                warpper = warpper.ne(key.toString(), value.toString());
-            }
-        }
-        //.@leon order
-        if (indexhandle.getOrder() != null && indexhandle.getSort() != null) {
-            String order = indexhandle.getOrder();
-            String sort = indexhandle.getSort();
-            if (!order.isEmpty() && !sort.isEmpty()) {
-                if (order.equals("asc")) {
-                    warpper = warpper.orderBy(sort, true);
-                } else if (order.equals("desc")) {
-                    warpper = warpper.orderBy(sort, false);
-                }
-            }
-        }
-        //.@leon offset limit
-        Page<Corp> page = this.selectPage(
-                new Page<Corp>(indexhandle.getOffset(), indexhandle.getLimit()), warpper
-        );
-        IndexBaseRes<Corp> result = new IndexBaseRes<Corp>();
-        result.setList(page.getRecords());
-        result.setTotal(total);
-        return result;
+    public List<Corp> GetCorpInfoByCorpIds(List<Integer> corps){
+        List<Corp> res = this.selectList(new EntityWrapper<Corp>().in("id",corps));
+        return res;
     }
 }

+ 42 - 0
src/main/java/com/mokamrp/privates/service/impl/UserCorpServiceImpl.java

@@ -1,11 +1,18 @@
 package com.mokamrp.privates.service.impl;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.mokamrp.privates.mapper.pojo.Corp;
 import com.mokamrp.privates.mapper.pojo.UserCorp;
 import com.mokamrp.privates.mapper.UserCorpMapper;
+import com.mokamrp.privates.service.CorpService;
 import com.mokamrp.privates.service.UserCorpService;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * <p>
  * 系统账户和企微企业绑定表 服务实现类
@@ -16,4 +23,39 @@ import org.springframework.stereotype.Service;
  */
 @Service
 public class UserCorpServiceImpl extends ServiceImpl<UserCorpMapper, UserCorp> implements UserCorpService {
+
+    @Autowired
+    public CorpService corpService;
+
+    /**
+     * 获取指定管理账户管辖的企业信息
+     *
+     * @param userId
+     * @return
+     */
+    public List<Corp> getAuthUserCorps(Integer userId) {
+        List<Integer> corpIds = new ArrayList<Integer>();
+        List<UserCorp> corps = this.selectList(new EntityWrapper<UserCorp>().eq("user_id", userId));
+        for (UserCorp userCorp : corps) {
+            corpIds.add(userCorp.getCorpId());
+        }
+        List<Corp> res = corpService.GetCorpInfoByCorpIds(corpIds);
+        return res;
+    }
+
+    /**
+     * 获取指定管理账户管辖的企业ID
+     *
+     * @param userId
+     * @return
+     */
+    public List<Integer> getAuthUserCorpIds(Integer userId) {
+        List<Integer> corpIds = new ArrayList<Integer>();
+        List<UserCorp> corps = this.selectList(new EntityWrapper<UserCorp>().eq("user_id", userId));
+        for (UserCorp userCorp : corps) {
+            corpIds.add(userCorp.getCorpId());
+        }
+        return corpIds;
+    }
+
 }

+ 2 - 5
src/main/java/com/mokamrp/privates/service/impl/WorkEmployeeServiceImpl.java

@@ -35,13 +35,10 @@ public class WorkEmployeeServiceImpl extends ServiceImpl<WorkEmployeeMapper, Wor
     private GroupMapper groupMapper;
 
     public Object selectWorkEmployeeList(Integer authUserId, WorkEmployeeHandle workEmployee) {
-        List<UserCorp> userCorps = userCorpService.selectList(new EntityWrapper<UserCorp>().eq("user_id", authUserId));
-        //.先用户当前的企业查询企业
+        List<Integer> userCorpIds = userCorpService.getAuthUserCorpIds(authUserId);
         List<Integer> corpIds = new ArrayList<Integer>();
         if (workEmployee.getCorpId() == null) {
-            for (UserCorp userCorp : userCorps) {
-                corpIds.add(userCorp.getCorpId());
-            }
+            corpIds = userCorpIds;
         } else {
             corpIds.add(workEmployee.getCorpId());
         }