Jelajahi Sumber

企业库增加针对用户查询,企业用户解绑

MOKASZ\wzk12044 5 tahun lalu
induk
melakukan
b40a71bd68

+ 18 - 0
src/main/java/com/mokamrp/privates/controller/CorpController.java

@@ -1,12 +1,15 @@
 package com.mokamrp.privates.controller;
 
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.mokamrp.privates.constant.Constants;
 import com.mokamrp.privates.constant.HttpStatus;
+import com.mokamrp.privates.entity.CorpIndexHandle;
 import com.mokamrp.privates.entity.GetWorkRoomHandle;
 import com.mokamrp.privates.entity.PostCorpWxLoginHandle;
 import com.mokamrp.privates.interceptor.AuthUser;
 import com.mokamrp.privates.mapper.pojo.User;
+import com.mokamrp.privates.mapper.vo.WorkEmployeeVo;
 import com.mokamrp.privates.service.GroupCorpService;
 import com.mokamrp.privates.service.UserCorpService;
 import com.mokamrp.privates.utils.RedisUtil;
@@ -44,6 +47,21 @@ public class CorpController extends BaseController<Corp>{
     @Autowired
     public CorpService corpService;
 
+    /**
+     * 查询企业列表
+     * @param corpIndexHandle
+     * @param bindingResult
+     * @return
+     */
+    @PostMapping("/indexMake")
+    public Object indexMake(@Valid @RequestBody CorpIndexHandle corpIndexHandle, BindingResult bindingResult){
+        if (bindingResult.hasErrors()) {
+            return AjaxResult.error(HttpStatus.ERROR, bindingResult.getFieldError().getDefaultMessage());
+        }
+        Object res = corpService.selectCorpList(corpIndexHandle);
+        return AjaxResult.success(res);
+    }
+
     /*
     *偷个懒,在控制器写这个
      */

+ 31 - 10
src/main/java/com/mokamrp/privates/controller/UserCorpController.java

@@ -2,7 +2,10 @@ package com.mokamrp.privates.controller;
 
 
 import com.mokamrp.privates.constant.Constants;
+import com.mokamrp.privates.constant.HttpStatus;
 import com.mokamrp.privates.entity.SetUserCorpsHandle;
+import com.mokamrp.privates.entity.UnSetGroupCorpHandle;
+import com.mokamrp.privates.entity.UnSetUserCorpHandle;
 import com.mokamrp.privates.help.AjaxResult;
 import com.mokamrp.privates.interceptor.AuthUser;
 import com.mokamrp.privates.mapper.pojo.Corp;
@@ -10,6 +13,7 @@ import com.mokamrp.privates.mapper.pojo.User;
 import com.mokamrp.privates.mapper.pojo.UserCorp;
 import com.mokamrp.privates.service.UserCorpService;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
@@ -32,54 +36,71 @@ public class UserCorpController {
 
     /**
      * 获取当前登录用户管辖的企业列表
+     *
      * @param authUser
      * @return
      */
     @GetMapping("/getAuthUserCorps")
-    public Object getAuthUserCorps(@AuthUser User authUser){
+    public Object getAuthUserCorps(@AuthUser User authUser) {
 
         List<Corp> res = userCorpService.getCorpsByUserId(authUser.getId());
-        return AjaxResult.success(Constants.SUCCESS,res);
+        return AjaxResult.success(Constants.SUCCESS, res);
     }
 
     /**
      * 通过用户ID查询管辖的企业列表
+     *
      * @param authUser
      * @param userId
      * @return
      */
     @GetMapping("/getCorpsByUserId")
-    public Object getCorpsByUserId(@AuthUser User authUser,@RequestParam(name = "userId") Integer userId){
-        if(authUser.getIsSuperAdmin() == 1){
+    public Object getCorpsByUserId(@AuthUser User authUser, @RequestParam(name = "userId") Integer userId) {
+        if (authUser.getIsSuperAdmin() == 1) {
             List<Corp> res = userCorpService.getCorpsByUserId(userId);
             return AjaxResult.success(res);
-        }else{
+        } else {
             return AjaxResult.error("Permission denied");
         }
     }
 
     /**
      * 绑定用户企业信息
+     *
      * @param setUserCorpsHandle
      * @param authUser
      * @return
      */
     @PostMapping("/setUserCorpsByUserId")
-    public Object setUserCorpsByUserId(@Valid @RequestBody SetUserCorpsHandle setUserCorpsHandle, @AuthUser User authUser){
-        if (authUser.getIsSuperAdmin() == 1){
+    public Object setUserCorpsByUserId(@Valid @RequestBody SetUserCorpsHandle setUserCorpsHandle, @AuthUser User authUser) {
+        if (authUser.getIsSuperAdmin() == 1) {
             userCorpService.setUserCorpsByUserId(setUserCorpsHandle.getUserIds(), setUserCorpsHandle.getCorpIds());
-        }else{
+        } else {
+            return AjaxResult.error("Permission denied");
+        }
+        return AjaxResult.success(Constants.SUCCESS);
+    }
+
+    @PostMapping("/unSetUserCorp")
+    public Object unSetUserCorp(@Valid @RequestBody UnSetUserCorpHandle unSetUserCorpHandle, @AuthUser User authUser, BindingResult bindingResult) {
+        if (bindingResult.hasErrors()) {
+            return AjaxResult.error(HttpStatus.ERROR, bindingResult.getFieldError().getDefaultMessage());
+        }
+        if (authUser.getIsSuperAdmin() == 1) {
+            Boolean res = userCorpService.unSetUserCorp(unSetUserCorpHandle.getUserId(),unSetUserCorpHandle.getCorpId());
+        } else {
             return AjaxResult.error("Permission denied");
         }
         return AjaxResult.success(Constants.SUCCESS);
     }
 
     @GetMapping("/getUserCorpsByUserId")
-    public Object getUserCorpsByUserId(@RequestParam(name = "userId") String UserId){
-        if (UserId == null || UserId.isEmpty()){
+    public Object getUserCorpsByUserId(@RequestParam(name = "userId") String UserId) {
+        if (UserId == null || UserId.isEmpty()) {
             return AjaxResult.error("userId null");
         }
         return null;
     }
+
 }
 

+ 17 - 0
src/main/java/com/mokamrp/privates/entity/CorpIndexHandle.java

@@ -0,0 +1,17 @@
+package com.mokamrp.privates.entity;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+
+@Data
+public class CorpIndexHandle {
+
+    private String corpName;
+
+    private Integer userId;
+
+    private Integer page;
+
+    private Integer pageSize;
+}

+ 13 - 0
src/main/java/com/mokamrp/privates/entity/UnSetUserCorpHandle.java

@@ -0,0 +1,13 @@
+package com.mokamrp.privates.entity;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+@Data
+public class UnSetUserCorpHandle {
+    @NotNull(message = "企业ID不可为空")
+    private Integer corpId;
+    @NotNull(message = "用户ID不可为空")
+    private Integer userId;
+}

+ 10 - 1
src/main/java/com/mokamrp/privates/mapper/CorpMapper.java

@@ -1,7 +1,15 @@
 package com.mokamrp.privates.mapper;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.mokamrp.privates.entity.CorpIndexHandle;
 import com.mokamrp.privates.mapper.pojo.Corp;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.mokamrp.privates.mapper.vo.WorkEmployeeVo;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  * <p>
@@ -11,6 +19,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @author leon
  * @since 2021-04-19
  */
+@Component
 public interface CorpMapper extends BaseMapper<Corp> {
-
+    public List<Corp> selectCorpList(IPage<Corp> page, @Param("userId") Integer userId, @Param("corpName") String corpName);
 }

+ 13 - 1
src/main/java/com/mokamrp/privates/mapper/CorpMapper.xml

@@ -3,7 +3,7 @@
 <mapper namespace="com.mokamrp.privates.mapper.CorpMapper">
 
     <!-- 开启二级缓存 -->
-    <cache type="org.mybatis.caches.ehcache.LoggingEhcache"/>
+
 
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.mokamrp.privates.mapper.pojo.Corp">
@@ -31,4 +31,16 @@
         , name, wx_corpid, social_code, employee_secret, event_callback, contact_secret, token, encoding_aes_key, power, tenant_id, created_at, updated_at, deleted_at,mobile,uuid
     </sql>
 
+    <select id="selectCorpList" resultType="com.mokamrp.privates.mapper.pojo.Corp">
+        SELECT A.* FROM mc_corp AS A
+        <if test="userId != null">
+            RIGHT JOIN private_user_corp AS B ON B.corp_id = A.id
+        </if>
+        <where>
+            <if test="userId != null">and B.user_id = #{userId} </if>
+            <if test="corpName != null">and A.name like CONCAT('%',#{corpName},'%')</if>
+        </where>
+
+    </select>
+
 </mapper>

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

@@ -1,5 +1,6 @@
 package com.mokamrp.privates.service;
 
+import com.mokamrp.privates.entity.CorpIndexHandle;
 import com.mokamrp.privates.mapper.pojo.Corp;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.mokamrp.privates.entity.IndexHandle;
@@ -21,5 +22,8 @@ public interface CorpService extends IService<Corp> {
      * @param corps
      * @return
      */
-    public List<Corp> GetCorpInfoByCorpIds(List<Integer> corps);
+    public List<Corp> getCorpInfoByCorpIds(List<Integer> corps);
+
+
+    public Object selectCorpList(CorpIndexHandle corpIndexHandle);
 }

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

@@ -44,5 +44,7 @@ public interface UserCorpService extends IService<UserCorp> {
      */
     public boolean setUserCorpsByUserId(List<Integer> userIds, List<Integer> corpIds);
 
+    public boolean unSetUserCorp(Integer userId,Integer corpId);
+
 
 }

+ 20 - 1
src/main/java/com/mokamrp/privates/service/impl/CorpServiceImpl.java

@@ -2,14 +2,18 @@ package com.mokamrp.privates.service.impl;
 
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.mokamrp.privates.entity.CorpIndexHandle;
 import com.mokamrp.privates.mapper.pojo.Corp;
 import com.mokamrp.privates.mapper.CorpMapper;
 import com.mokamrp.privates.service.CorpService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.mokamrp.privates.entity.IndexHandle;
 import com.mokamrp.privates.mapper.pojo.IndexBaseRes;
 
+import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
@@ -24,13 +28,28 @@ import java.util.Map;
  */
 @Service
 public class CorpServiceImpl extends ServiceImpl<CorpMapper, Corp> implements CorpService {
+
+    @Autowired
+    private CorpMapper corpMapper;
+
     /**
      * 通过企业Id获取企业信息
      * @param corps
      * @return
      */
-    public List<Corp> GetCorpInfoByCorpIds(List<Integer> corps){
+    public List<Corp> getCorpInfoByCorpIds(List<Integer> corps){
         List<Corp> res = this.list(new QueryWrapper<Corp>().in("id",corps));
         return res;
     }
+
+    public Object selectCorpList(CorpIndexHandle corpIndexHandle){
+        Integer page = corpIndexHandle.getPage();
+        Integer pagesize = corpIndexHandle.getPageSize();
+        Page<Corp> pageObj = new Page<>(page, pagesize);
+        List<Corp> res = corpMapper.selectCorpList(pageObj,corpIndexHandle.getUserId(),corpIndexHandle.getCorpName());
+        Map<String, Object> resMap = new HashMap<String, Object>();
+        resMap.put("list", res);
+        resMap.put("total", pageObj.getTotal());
+        return resMap;
+    }
 }

+ 7 - 1
src/main/java/com/mokamrp/privates/service/impl/UserCorpServiceImpl.java

@@ -3,6 +3,7 @@ package com.mokamrp.privates.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.mokamrp.privates.mapper.DownfileMapper;
 import com.mokamrp.privates.mapper.pojo.Corp;
+import com.mokamrp.privates.mapper.pojo.GroupCorp;
 import com.mokamrp.privates.mapper.pojo.User;
 import com.mokamrp.privates.mapper.pojo.UserCorp;
 import com.mokamrp.privates.mapper.UserCorpMapper;
@@ -44,7 +45,7 @@ public class UserCorpServiceImpl extends ServiceImpl<UserCorpMapper, UserCorp> i
         for (UserCorp userCorp : corps) {
             corpIds.add(userCorp.getCorpId());
         }
-        List<Corp> res = corpService.GetCorpInfoByCorpIds(corpIds);
+        List<Corp> res = corpService.getCorpInfoByCorpIds(corpIds);
         return res;
     }
 
@@ -63,6 +64,11 @@ public class UserCorpServiceImpl extends ServiceImpl<UserCorpMapper, UserCorp> i
         return corpIds;
     }
 
+    public boolean unSetUserCorp(Integer userId,Integer corpId){
+        Boolean res = this.remove(new QueryWrapper<UserCorp>().eq("corp_id",corpId).eq("user_id",userId));
+        return res;
+    }
+
     /**
      * 绑定账户和企业ID
      *