523096025 2 年之前
父节点
当前提交
792588f79d

+ 87 - 0
huimv-admin/src/main/java/com/huimv/admin/common/utils/ConstUtil.java

@@ -0,0 +1,87 @@
+package com.huimv.admin.common.utils;
+
+/**
+ * @Project : huimv-breed
+ * @Package : IntelliJ IDEA
+ * @Description : TODO
+ * @Version : 1.0
+ * @Author : ZhuoNing
+ * @Create : 2022/9/27
+ **/
+public class ConstUtil {
+   public static final String SECRET_KEY = "huimvkeji";
+   public final static Integer ERR_NOFOUND_CODE = 10004;
+   public final static String ERR_NOFOUND_INFO = "暂无数据.";
+
+   public final static Integer ERR_CHILDMENU_CODE = 10005;
+   public final static String ERR_CHILDMENU_INFO = "存在下级菜单,请先删除下级菜单.";
+
+   public final static Integer ERR_NO_EXIST_CODE = 10006;
+   public final static String ERR_NO_EXIST_INFO = "账号或密码错误.";
+
+   public final static Integer ERR_FARM_TIMEOUT_CODE = 10007;
+   public final static String ERR_FARM_TIMEOUT_INFO = "牧场已经中止服务.";
+
+   public final static Integer ERR_FARM_CANCEL_CODE = 10008;
+   public final static String ERR_FARM_CANCEL_INFO = "牧场已经注销.";
+
+   public final static Integer ERR_MYMENU_EMPTY_CODE = 10009;
+   public final static String ERR_MYMENU_EMPTY_INFO = "该用户无任何授权菜单.";
+
+   public final static Integer ERR_MYGROUP_EMPTY_CODE = 10010;
+   public final static String ERR_MYGROUP_EMPTY_INFO = "该用户无任何授权权限组.";
+
+   public final static Integer ERR_NO_DELETE_ADMIN_CODE = 10011;
+   public final static String ERR_NO_DELETE_ADMIN_INFO = "平台管理员账户不能删除.";
+
+   public final static Integer ERR_FARM_OVERDUE_CODE = 10012;
+   public final static String ERR_FARM_OVERDUE_INFO = "该牧场未在服务有效期";
+
+   public final static Integer ERR_SERVICE_SAME_CODE = 10013;
+   public final static String ERR_SERVICE_SAME_INFO = "当前服务周期时间不能和已经存在的服务时间重合.";
+
+   public final static Integer ERR_ACCOUNT_SAME_CODE = 10014;
+   public final static String ERR_ACCOUNT_SAME_INFO = "当前填写的账号名称已经存在,请重命名.";
+
+   public final static Integer ERR_RECORD_EMPTY_CODE = 10015;
+   public final static String ERR_RECORD_EMPTY_INFO = "暂无数据.";
+
+   public final static Integer ERR_SALE_LESS_CODE = 10016;
+   public final static String ERR_SALE_LESS_INFO = "本批次剩余数量不足,不满足销售数量.";
+
+   public final static Integer ERR_ELIMINATE_LESS_CODE = 10017;
+   public final static String ERR_ELIMINATE_LESS_INFO = "本批次剩余数量不足,不满足淘汰数量.";
+
+   public static final Integer ERR_EARTAG_NOT_EXIST_CODE = 10018;
+   public static final String ERR_EARTAG_NOT_EXIST_INFO = "耳标号不存在.";
+
+   public static final Integer ERR_NOT_BOAR_CODE = 10019;
+   public static final String ERR_NOT_BOAR_INFO = "你当前输入的是母猪耳标号,不能采精。只有公猪才能采精.";
+
+   public static final Integer ERR_SAME_GENDER_CODE = 10020;
+   public static final String ERR_SAME_GENDE_INFO = "配种对象为同一性别类型.";
+
+   public static final Integer ERR_GESTATION_CHECK_OBJECT_CODE = 10021;
+   public static final String ERR_GESTATION_CHECK_OBJECT_INFO = "妊检对象只能是雌性(母).";
+
+   public static final Integer ERR_BIRTH_OBJECT_CODE = 10022;
+   public static final String ERR_BIRTH_OBJECT_INFO = "分娩对象只能是雌性(母).";
+
+   public static final Integer ERR_ABLACTATION_CODE = 10023;
+   public static final String ERR_ABLACTATION_INFO = "断奶对象只能是雌性(母).";
+
+   public static final Integer ERR_INVALID_EARMARK_CODE = 10024;
+   public static final String ERR_INVALID_EARMARK_INFO = "该耳标所属对象已经销售或淘汰.";
+
+   public static final Integer ERR_SAME_EARMARK_CODE = 10025;
+   public static final String ERR_SAME_EARMARK_INFO = "该耳标号与其他记录存在耳标重名.";
+
+   public static final Integer ERR_SAME_BATCH_CODE = 10026;
+   public static final String ERR_SAME_BATCH_INFO = "该批次号与其他记录存在批次号重名.";
+
+   public static final Integer ERR_UPDATE_PASSWORD_CODE = 10027;
+   public static final String ERR_UPDATE_PASSWORD_INFO = "更新密码出错.";
+
+   public static final Integer ERR_PASSWORD_ERROR_CODE = 10028;
+   public static final String ERR_PASSWORD_ERROR_INFO = "密码输入错误.";
+}

+ 23 - 0
huimv-admin/src/main/java/com/huimv/admin/common/utils/ResultUtil.java

@@ -0,0 +1,23 @@
+package com.huimv.admin.common.utils;
+
+import org.springframework.stereotype.Component;
+
+/**
+ * @Project : huimv-breed
+ * @Package : IntelliJ IDEA
+ * @Description : TODO
+ * @Version : 1.0
+ * @Author : ZhuoNing
+ * @Create : 2022/9/27
+ **/
+@Component
+public class ResultUtil {
+
+    public static Result getResult(Integer rows){
+        if(rows > 0){
+            return new Result(ResultCode.SUCCESS);
+        }else{
+            return new Result(ResultCode.FAIL);
+        }
+    }
+}

+ 13 - 4
huimv-admin/src/main/java/com/huimv/admin/controller/AuthorizeController.java

@@ -38,7 +38,8 @@ public class AuthorizeController {
          */
         String groupId = map.get("groupId");
         String menuIds = map.get("menuIds");
-        return iAuthorizeService.saveGroupMenu(groupId,menuIds);
+        String isAll = map.get("isAll");
+        return iAuthorizeService.saveGroupMenu(groupId,menuIds,isAll);
     }
 
     @RequestMapping("/getGroupByAccount")
@@ -49,12 +50,20 @@ public class AuthorizeController {
         return iAuthorizeService.getGroupByAccount (accountId);
     }
 
-    @GetMapping("/getMenuByGroup")
-    public Result getMenuByGroup(String groupId){
+    @PostMapping("/getMenuByGroup")
+    public Result getMenuByGroup(@RequestBody Map<String, String> map){
         /*
          * 根据权限组获取菜单
          */
-        return iAuthorizeService.getMenuByGroup(groupId);
+        return iAuthorizeService.getMenuByGroup(map);
+    }
+
+    @PostMapping("/getMenuByGroupAndFarm")
+    public Result getMenuByGroupAndFarm(@RequestBody Map<String, String> map){
+        /*
+         * 根据权限组获取菜单
+         */
+        return iAuthorizeService.getMenuByGroupAndFarm(map);
     }
 
     @RequestMapping("/getMyMenu")

+ 1 - 0
huimv-admin/src/main/java/com/huimv/admin/controller/SysAccountMultilevelController.java

@@ -24,6 +24,7 @@ import java.util.Map;
  * @author astupidcoder
  * @since 2021-10-14
  */
+@CrossOrigin
 @RestController
 @RequestMapping("/admin/accountMultilevel")
 public class SysAccountMultilevelController {

+ 1 - 0
huimv-admin/src/main/java/com/huimv/admin/entity/GroupMenu.java

@@ -30,6 +30,7 @@ public class GroupMenu extends Model {
     private Integer groupId;
 
     private Integer menuId;
+    private Integer isAll;
 
 
 }

+ 0 - 3
huimv-admin/src/main/java/com/huimv/admin/entity/Menu.java

@@ -43,10 +43,7 @@ public class Menu extends Model {
 
     private Boolean ifShow;
 
-
-
 //    private List<Menu> children;
 
 
-
 }

+ 4 - 1
huimv-admin/src/main/java/com/huimv/admin/service/IAuthorizeService.java

@@ -4,6 +4,7 @@ package com.huimv.admin.service;
 import com.huimv.admin.common.utils.Result;
 
 import java.util.List;
+import java.util.Map;
 
 public interface IAuthorizeService {
 
@@ -12,7 +13,7 @@ public interface IAuthorizeService {
     Result saveGroupMenu(String groupId, String menuIds,String isAll);
 
 
-    Result getMenuByGroup(String groupId);
+    Result getMenuByGroup(Map map);
 
     Result getGroupByAccount(String accountId);
 
@@ -24,4 +25,6 @@ public interface IAuthorizeService {
     List getMyButton(Integer userId);
 
     List getMyMenuMultilevel(String userId);
+
+    Result getMenuByGroupAndFarm(Map<String, String> map);
 }

+ 83 - 62
huimv-admin/src/main/java/com/huimv/admin/service/impl/AuthorizeServiceImpl.java

@@ -2,10 +2,14 @@ package com.huimv.admin.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.huimv.admin.common.utils.ConstUtil;
+import com.huimv.admin.common.utils.ResultUtil;
 import com.huimv.admin.entity.AccountGroup;
+import com.huimv.admin.entity.Farm;
 import com.huimv.admin.entity.GroupMenu;
 import com.huimv.admin.entity.Menu;
 import com.huimv.admin.mapper.AccountGroupMapper;
+import com.huimv.admin.mapper.FarmMapper;
 import com.huimv.admin.mapper.GroupMenuMapper;
 import com.huimv.admin.mapper.MenuMapper;
 import com.huimv.admin.service.IAuthorizeService;
@@ -16,7 +20,9 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
+import java.util.Map;
 
 @Service
 public class AuthorizeServiceImpl implements IAuthorizeService {
@@ -27,6 +33,8 @@ public class AuthorizeServiceImpl implements IAuthorizeService {
     GroupMenuMapper groupMenuMapper;
     @Autowired
     private MenuMapper menuMapper;
+    @Autowired
+    private FarmMapper farmMapper;
     
     @Override
     @Transactional
@@ -65,80 +73,92 @@ public class AuthorizeServiceImpl implements IAuthorizeService {
          * Step1:先删除原先的权限组关联菜单数据;
          * Step2:再添加新的账号权限组关联菜单数据;
          */
-        groupMenuMapper.removeGroupMenu(groupId);
-        if (StringUtils.isNotBlank(menuIds)) {
+        QueryWrapper<GroupMenu> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq(StringUtils.isNotBlank(groupId),"group_id",groupId);
+        groupMenuMapper.delete(queryWrapper);
+        if (com.baomidou.mybatisplus.core.toolkit.StringUtils.isNotBlank(menuIds)) {
             String[] menuIdsArray = menuIds.split(",");
+            String[] split = isAll.split(",");
+            boolean isAlla = StringUtils.isNotBlank(isAll);
             for (int a = 0; a < menuIdsArray.length; a++) {
-                GroupMenu GroupMenu = new GroupMenu();
-                GroupMenu.setGroupId(Integer.parseInt(groupId));
-                GroupMenu.setMenuId(Integer.parseInt(menuIdsArray[a]));
-                groupMenuMapper.insert(GroupMenu);
+                GroupMenu groupMenu = new GroupMenu();
+                groupMenu.setGroupId(Integer.parseInt(groupId));
+                groupMenu.setMenuId(Integer.parseInt(menuIdsArray[a]));
+                if (isAlla){
+                    for (String s : split) {
+                        if (groupMenu.getMenuId() == Integer.parseInt(s)) {
+                            groupMenu.setIsAll(1);
+                        }
+                    }
+                }
+                groupMenuMapper.insert(groupMenu);
             }
-
         }
-        return new Result(10000, "保存权限组关联菜单成功", true);
+        return ResultUtil.getResult(1);
     }
 
 
-
-
+    @Override
+    public Result getMenuByGroup(Map paramsMap) {
+        String groupId = (String) paramsMap.get("groupId");
+        String isAll =  (String)paramsMap.get("isAll");
+        String[] isAllArray = isAll.split(",");
+        String menuIds =  (String)paramsMap.get("menuIds");
+        String[] menuArray = menuIds.split(",");
+        // 过滤上级菜单id
+        List<String> menuList = new ArrayList();
+        for(int a=0;a<menuArray.length;a++){
+            boolean isExist = false;
+            for(int b=0;b<isAllArray.length;b++){
+                if(menuArray[a].trim().equalsIgnoreCase(isAllArray[b])){
+                    isExist = true;
+                    break;
+                }
+            }
+            if(!isExist){
+                menuList.add(menuArray[a]);
+            }
+        }
+        //-- 删除权限组绑定才菜单 --//
+        QueryWrapper<GroupMenu> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq(StringUtils.isNotBlank(groupId),"group_id",groupId);
+        groupMenuMapper.delete(queryWrapper);
+        //-- 新增权限组绑定菜单 --//
+        int rows = 0;
+        for(int a=0;a<menuList.size();a++){
+            GroupMenu newGroupMenu = new GroupMenu();
+            newGroupMenu.setGroupId(Integer.parseInt(groupId));
+            newGroupMenu.setMenuId(Integer.parseInt(menuList.get(a)));
+            rows += groupMenuMapper.insert(newGroupMenu);
+        }
+        return ResultUtil.getResult(rows);
+    }
 
     @Override
-    public Result getMenuByGroup(String groupId) {
-        /* 根据权限组读取已关联菜单 */
-        QueryWrapper<GroupMenu> groupMenuQueryWrapper = new QueryWrapper<>();
-        groupMenuQueryWrapper.eq("group_id",groupId);
-        List<GroupMenu> groupMenuEntityList = groupMenuMapper.selectList(groupMenuQueryWrapper);
-        if (groupMenuEntityList.size() == 0) {
-            return new Result(10005, "当前权限组暂未关联任何菜单.", false);
+    public Result getMenuByGroupAndFarm(Map<String, String> map) {
+        String groupId = (String) map.get("groupId");
+        String farmId = (String) map.get("farmId");
+        Farm farm = farmMapper.selectById(farmId);
+        String farmMenu = farm.getFarmMenu();
+        if (StringUtils.isNotBlank(farmMenu)){
+            return new Result(ConstUtil.ERR_MYMENU_EMPTY_CODE,"该牧场无任何授权菜单",false);
         }
-        /* 读取所有菜单 */
-        List<Menu> allMenuList = menuMapper.selectList(null);
-        if (allMenuList.size() == 0) {
-            return new Result(10007, "当前无任何菜单.", false);
+        List<String> list = Arrays.asList(farmMenu);
+        QueryWrapper<GroupMenu> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq(StringUtils.isNotBlank(groupId),"group_id",groupId);
+        queryWrapper.in("group_id",list);
+        List<GroupMenu> sysGroupMenuList = groupMenuMapper.selectList(queryWrapper);
+        if(sysGroupMenuList.size() == 0){
+            return new Result(ConstUtil.ERR_MYMENU_EMPTY_CODE,ConstUtil.ERR_MYMENU_EMPTY_INFO,false);
         }
-        List<GroupMenu> newList = new ArrayList();
-        StringBuilder idSb2 = new StringBuilder();
-
-        for (int a = 0; a < groupMenuEntityList.size(); a++) {
-            GroupMenu groupMenuEntity = groupMenuEntityList.get(a);
-            for (Menu menuEntity : allMenuList) {
-                if (menuEntity.getId().equals(groupMenuEntity.getMenuId())) {
-                    if (menuEntity.getParentId() == 0) {
-                        if (idSb2.length() > 0) {
-                            idSb2.append(",");
-                        }
-                        idSb2.append(groupMenuEntity.getMenuId());
-                        break;
-                    } else {
-                        boolean isChild = false;
-                        for (Menu menuEntity2 : allMenuList) {
-                            if (menuEntity2.getParentId().equals(groupMenuEntity.getMenuId())) {
-                                isChild = true;
-                                break;
-                            }
-                        }
-                        if (!isChild) {
-                            if (idSb2.length() > 0) {
-                                idSb2.append(",");
-                            }
-                            idSb2.append(groupMenuEntity.getMenuId());
-                        }
-                        break;
-                    }
-                }
+        StringBuilder menuIdSb = new StringBuilder();
+        for(GroupMenu groupMenu:sysGroupMenuList){
+            menuIdSb.append(groupMenu.getMenuId());
+            if(menuIdSb.length()>0){
+                menuIdSb.append(",");
             }
-
         }
-
-//        StringBuilder idSb = new StringBuilder();
-//        for (GroupMenu groupMenuEntity : groupMenuEntityList) {
-//            if (idSb.length() > 0) {
-//                idSb.append(",");
-//            }
-//            idSb.append(groupMenuEntity.getMenuId());
-//        }
-        return new Result(ResultCode.SUCCESS, idSb2.toString());
+        return new Result(ResultCode.SUCCESS,menuIdSb.toString());
     }
 
     /**
@@ -164,10 +184,10 @@ public class AuthorizeServiceImpl implements IAuthorizeService {
         return new Result(ResultCode.SUCCESS, idSb.toString());
     }
 
+
     @Override
     public Result getAccountByGroup(String groupId) {
         /* 根据账号id读取已关联权限组 */
-
         QueryWrapper<AccountGroup> accountGroupQueryWrapper = new QueryWrapper<>();
         accountGroupQueryWrapper.eq("group_id",groupId);
         List<AccountGroup> accountGroupEntityList = accountGroupMapper.selectList(accountGroupQueryWrapper);
@@ -211,4 +231,5 @@ public class AuthorizeServiceImpl implements IAuthorizeService {
         return null;
     }
 
+
 }

+ 0 - 2
huimv-admin/src/main/java/com/huimv/admin/service/impl/SysAccountMultilevelServiceImpl.java

@@ -92,13 +92,11 @@ public class SysAccountMultilevelServiceImpl extends ServiceImpl<SysAccountMulti
 
     @Override
     public Result listSubordinate(String searchStr, int pageNum, int pageSize, Integer userId) {
-
         QueryWrapper<SysAccountMultilevel> wrapper = new QueryWrapper<>();
         wrapper.like("pids",userId);
         if (StringUtils.isNotBlank(searchStr)){
             wrapper.like("user_name",searchStr);
         }
-
         IPage<SysAccountMultilevel> page = this.page(new Page<>(pageNum, pageSize), wrapper);
         return new Result(ResultCode.SUCCESS,page);
     }