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

分组企业绑定和解绑功能

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

+ 25 - 0
src/main/java/com/mokamrp/privates/controller/GroupCorpController.java

@@ -2,6 +2,9 @@ package com.mokamrp.privates.controller;
 
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.mokamrp.privates.constant.Constants;
+import com.mokamrp.privates.entity.SetGroupCorpHandle;
+import com.mokamrp.privates.entity.UnSetGroupCorpHandle;
 import com.mokamrp.privates.mapper.pojo.Corp;
 import com.mokamrp.privates.mapper.pojo.Group;
 import com.mokamrp.privates.service.CorpService;
@@ -65,5 +68,27 @@ public class GroupCorpController extends BaseController<GroupCorp> {
         return AjaxResult.success("success", corpInfos);
     }
 
+    /**
+     * 绑定企业分组
+     * @param setGroupCorpHandle
+     * @return
+     */
+    @PostMapping("/setGroupCorp")
+    public Object setGroupCorp(@RequestBody SetGroupCorpHandle setGroupCorpHandle){
+        Boolean res = groupCorpService.setGroupCorp(setGroupCorpHandle.getGroupId(), setGroupCorpHandle.getCorpIds());
+        return AjaxResult.success(Constants.SUCCESS);
+    }
+
+    /**
+     * 解绑企业分组
+     * @param unSetGroupCorpHandle
+     * @return
+     */
+    @PostMapping("/unSetGroupCorp")
+    public Object unSetGroupCorp(@RequestBody UnSetGroupCorpHandle unSetGroupCorpHandle){
+        Boolean res = groupCorpService.unSetGroupCorp(unSetGroupCorpHandle.getGroupId(), unSetGroupCorpHandle.getCorpId());
+        return AjaxResult.success(Constants.SUCCESS);
+    }
+
 }
 

+ 14 - 0
src/main/java/com/mokamrp/privates/entity/SetGroupCorpHandle.java

@@ -0,0 +1,14 @@
+package com.mokamrp.privates.entity;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
+@Data
+public class SetGroupCorpHandle {
+    @NotBlank(message = "分组ID不可为空")
+    private Integer groupId;
+    private List<Integer> corpIds;
+}

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

@@ -0,0 +1,13 @@
+package com.mokamrp.privates.entity;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.util.List;
+@Data
+public class UnSetGroupCorpHandle {
+    @NotBlank(message = "分组ID不可为空")
+    private Integer groupId;
+    @NotBlank(message = "企业ID不可为空")
+    private Integer corpId;
+}

+ 5 - 8
src/main/java/com/mokamrp/privates/interceptor/AuthIntercepotor.java

@@ -31,11 +31,11 @@ public class AuthIntercepotor extends HandlerInterceptorAdapter {
 
     @Override
     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
-//        //.登录和健康监测 不验证token
-//        String requestUrl = request.getContextPath() + request.getServletPath();
-//        if (requestUrl.equals("/user/login") || requestUrl.equals("/ping")) {
-//            return true;
-//        }
+        //.健康监测不验证用户信息
+        String requestUrl = request.getContextPath() + request.getServletPath();
+        if (requestUrl.equals("/ping")) {
+            return true;
+        }
 //        String token = request.getHeader("Authorization");
 //        //.Authorizetion 不存在token 拦截
 //        if (token == null || token.isEmpty()) {
@@ -57,12 +57,9 @@ public class AuthIntercepotor extends HandlerInterceptorAdapter {
         User user=new User();
         user.setId(Integer.valueOf(plugininfo.get("employeeNo")));
         user.setName(xxlSsoUser.getUsername());
-//        user.setGender(Integer.getInteger(plugininfo.get("employeeNo")));
         user.setIsSuperAdmin(1);
         request.setAttribute("auth-user", user);
 
         return true;
     }
-
-
 }

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

@@ -18,7 +18,9 @@
     </sql>
     <!-- 获取企业绑定分组关系 -->
     <select id="selectGroupCorp" resultType="map">
-        SELECT A.group_name, A.id, IFNULL(B.corp_id, 0) AS corp_cnt
+        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

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

@@ -17,10 +17,10 @@ import java.util.Map;
  * @since 2021-04-20
  */
 public interface GroupCorpService extends IService<GroupCorp> {
-    /**
-     * 查询企业分组绑定关系
-     *
-     * @return
-     */
+
     public List<Map<String, Object>> selectGroupCorp();
+
+    public Boolean setGroupCorp(Integer groupId,List<Integer> corpIds);
+
+    public Boolean unSetGroupCorp(Integer groupId,Integer corpId);
 }

+ 46 - 0
src/main/java/com/mokamrp/privates/service/impl/GroupCorpServiceImpl.java

@@ -1,12 +1,17 @@
 package com.mokamrp.privates.service.impl;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.mokamrp.privates.mapper.pojo.Group;
 import com.mokamrp.privates.mapper.pojo.GroupCorp;
 import com.mokamrp.privates.mapper.GroupCorpMapper;
+import com.mokamrp.privates.mapper.pojo.UserCorp;
 import com.mokamrp.privates.service.GroupCorpService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
 
@@ -34,4 +39,45 @@ public class GroupCorpServiceImpl extends ServiceImpl<GroupCorpMapper, GroupCorp
         List<Map<String, Object>> res = groupCorpMapper.selectGroupCorp();
         return res;
     }
+
+    /**
+     * 企业绑定分组
+     * @return
+     */
+    public Boolean setGroupCorp(Integer groupId,List<Integer> corpIds){
+        //.当前库里当前组的所有企业
+        List<GroupCorp> corps = this.list(new QueryWrapper<GroupCorp>().eq("group_id",groupId));
+        List<GroupCorp> add = new ArrayList<GroupCorp>();
+        //.遍历本次需要绑定的企业ID
+        for (int c = 0; c < corpIds.size(); c++) {
+            //.遍历当前分组里的企业 和本次绑定企业
+            Boolean hasCorp = false;
+            for (GroupCorp groupCorp : corps) {
+                if (groupCorp.getCorpId().equals(corpIds.get(c))) {
+                    hasCorp = true;
+                }
+            }
+            if (hasCorp == false) {
+                GroupCorp groupCorpObj = new GroupCorp();
+                groupCorpObj.setCorpId(corpIds.get(c));
+                groupCorpObj.setGroupId(groupId);
+                add.add(groupCorpObj);
+            }
+        }
+        if (add.size() > 0) {
+            this.saveBatch(add);
+        }
+        return true;
+    }
+
+    /**
+     * 企业解绑分组
+     * @param groupId
+     * @param corpId
+     * @return
+     */
+    public Boolean unSetGroupCorp(Integer groupId,Integer corpId){
+        Boolean res = this.remove(new QueryWrapper<GroupCorp>().eq("group_id",groupId).eq("corp_id",corpId));
+        return res;
+    }
 }

+ 1 - 1
src/main/resources/application.properties

@@ -33,7 +33,7 @@ aliyun.bucketName=mini-short-video-test
 spring.servlet.multipart.max-request-size=10MB
 spring.servlet.multipart.max-file-size=10MB
 
-xxl.sso.server=http://localhost:8888/sso
+xxl.sso.server=http://sso.mokamrp.com:8888/sso
 xxl.sso.logout.path=/logout
 xxl-sso.excluded.paths=
 xxl.sso.redis.address=redis://xxl-sso:Jch9shshl@r-uf633f3f27aa2174pd.redis.rds.aliyuncs.com:6379/0