瀏覽代碼

后台权限

523096025 2 年之前
父節點
當前提交
55e271eacc
共有 43 個文件被更改,包括 1599 次插入136 次删除
  1. 31 0
      admin/pom.xml
  2. 4 3
      admin/src/main/java/com/huimv/farm/damsubsidy/common/token/TokenSign.java
  3. 24 0
      admin/src/main/java/com/huimv/farm/damsubsidy/common/utils/DictTranslate.java
  4. 23 0
      admin/src/main/java/com/huimv/farm/damsubsidy/common/utils/PovertyUtils.java
  5. 26 26
      admin/src/main/java/com/huimv/farm/damsubsidy/config/InterceptorConfig.java
  6. 82 82
      admin/src/main/java/com/huimv/farm/damsubsidy/config/JWTInterceptor.java
  7. 9 3
      admin/src/main/java/com/huimv/farm/damsubsidy/config/MsmTest.java
  8. 92 0
      admin/src/main/java/com/huimv/farm/damsubsidy/controller/AuthorizeController.java
  9. 23 8
      admin/src/main/java/com/huimv/farm/damsubsidy/controller/ImagesTest.java
  10. 46 0
      admin/src/main/java/com/huimv/farm/damsubsidy/controller/MenuController.java
  11. 58 0
      admin/src/main/java/com/huimv/farm/damsubsidy/controller/SysGroupController.java
  12. 70 4
      admin/src/main/java/com/huimv/farm/damsubsidy/controller/SysUserController.java
  13. 35 0
      admin/src/main/java/com/huimv/farm/damsubsidy/entity/AccountGroup.java
  14. 1 1
      admin/src/main/java/com/huimv/farm/damsubsidy/entity/BillLandingInspection.java
  15. 37 0
      admin/src/main/java/com/huimv/farm/damsubsidy/entity/Group.java
  16. 35 0
      admin/src/main/java/com/huimv/farm/damsubsidy/entity/GroupMenu.java
  17. 52 0
      admin/src/main/java/com/huimv/farm/damsubsidy/entity/Menu.java
  18. 0 1
      admin/src/main/java/com/huimv/farm/damsubsidy/entity/PovertyUserRegist.java
  19. 9 0
      admin/src/main/java/com/huimv/farm/damsubsidy/entity/SysUser.java
  20. 20 0
      admin/src/main/java/com/huimv/farm/damsubsidy/mapper/AccountGroupMapper.java
  21. 18 0
      admin/src/main/java/com/huimv/farm/damsubsidy/mapper/GroupMapper.java
  22. 21 0
      admin/src/main/java/com/huimv/farm/damsubsidy/mapper/GroupMenuMapper.java
  23. 24 0
      admin/src/main/java/com/huimv/farm/damsubsidy/mapper/MenuMapper.java
  24. 16 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/IAccountGroupService.java
  25. 27 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/IAuthorizeService.java
  26. 16 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/IGroupMenuService.java
  27. 28 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/IGroupService.java
  28. 12 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/ILoginService.java
  29. 35 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/IMenuService.java
  30. 3 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/IPovertyUserRegistService.java
  31. 15 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/ISysUserService.java
  32. 19 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/AccountGroupServiceImpl.java
  33. 217 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/AuthorizeServiceImpl.java
  34. 20 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/GroupMenuServiceImpl.java
  35. 85 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/GroupServiceImpl.java
  36. 45 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/LoginServiceImpl.java
  37. 157 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/MenuServiceImpl.java
  38. 4 8
      admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/PovertyUserRegistServiceImpl.java
  39. 117 0
      admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/SysUserServiceImpl.java
  40. 9 0
      admin/src/main/resources/com/huimv/farm/damsubsidy/mapper/AccountGroupMapper.xml
  41. 10 0
      admin/src/main/resources/com/huimv/farm/damsubsidy/mapper/GroupMenuMapper.xml
  42. 24 0
      admin/src/main/resources/com/huimv/farm/damsubsidy/mapper/MenuMapper.xml
  43. 0 0
      admin/src/main/resources/com/huimv/farm/damsubsidy/mapper/PovertyUserRegistMapper.xml

+ 31 - 0
admin/pom.xml

@@ -50,6 +50,33 @@
         </dependency>
 
         <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi</artifactId>
+            <version>4.1.2</version>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.poi</groupId>
+            <artifactId>poi-ooxml</artifactId>
+            <version>4.1.2</version>
+        </dependency>
+        <dependency>
+            <groupId>cn.afterturn</groupId>
+            <artifactId>easypoi-spring-boot-starter</artifactId>
+            <version>4.0.0</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.hibernate</groupId>
+            <artifactId>hibernate-validator</artifactId>
+            <version>5.4.0.Final</version>
+        </dependency>
+
+        <dependency>
+            <groupId>cn.afterturn</groupId>
+            <artifactId>easypoi-base</artifactId>
+            <version>4.1.0</version>
+        </dependency>
+        <dependency>
             <groupId>com.alibaba</groupId>
             <artifactId>druid-spring-boot-starter</artifactId>
             <version>1.2.8</version>
@@ -108,6 +135,10 @@
             <artifactId>jsch</artifactId>
             <version>0.1.54</version>
         </dependency>
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+        </dependency>
 
 
     </dependencies>

+ 4 - 3
admin/src/main/java/com/huimv/farm/damsubsidy/common/token/TokenSign.java

@@ -26,7 +26,7 @@ public class TokenSign {
      * 产生token
      * @return
      */
-    public static String sign(String userName,String phone){
+    public static String sign(String userName,String phone,Long id){
 
         String JwtToken = Jwts.builder()
                 //头部信息
@@ -39,6 +39,7 @@ public class TokenSign {
                 //token主体部分,存储用户信息
                 .claim("userName", userName)
                 .claim("phone",phone)
+                .claim("id",id)
                 .signWith(SignatureAlgorithm.HS256, APP_SECRET)
                 .compact();
 
@@ -74,7 +75,7 @@ public class TokenSign {
      * @param request
      * @return
      */
-    public static Integer getMemberIdByJwtToken(HttpServletRequest request) {
+    public static Long getMemberIdByJwtToken(HttpServletRequest request) {
         String jwtToken = request.getHeader("accessToken");
         if (StringUtils.isBlank(jwtToken)) {
             return null;
@@ -83,7 +84,7 @@ public class TokenSign {
         if(ObjectUtil.isEmpty(claims)||ObjectUtil.isEmpty(claims.get("id"))){
 
         }
-        return (Integer) claims.get("id");
+        return (Long) claims.get("id");
     }
 
     public static String getFarmIds(HttpServletRequest request) {

+ 24 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/common/utils/DictTranslate.java

@@ -0,0 +1,24 @@
+package com.huimv.farm.damsubsidy.common.utils;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Target(ElementType.FIELD)
+@Retention(RetentionPolicy.RUNTIME)
+public @interface DictTranslate
+{
+	/**
+	 * 字典表名称
+	 * @return 字典表名称
+	 */
+	String dataSource();
+
+	/**
+	 * 目标字段
+	 * @return 目标字段
+	 */
+	String targetField();
+
+}

+ 23 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/common/utils/PovertyUtils.java

@@ -0,0 +1,23 @@
+package com.huimv.farm.damsubsidy.common.utils;
+
+import com.huimv.farm.damsubsidy.entity.PovertyUserRegist;
+import org.apache.poi.ss.formula.functions.T;
+
+import java.math.BigInteger;
+import java.security.MessageDigest;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+public class PovertyUtils {
+
+    public static List<PovertyUserRegist> getPoverty(List<Map<String, Object>> read) {
+        List<PovertyUserRegist> endList = new ArrayList<>();
+        for (Map<String, Object> stringObjectMap : read) {
+            PovertyUserRegist povertyUserRegist = new PovertyUserRegist();
+            povertyUserRegist.setXh(stringObjectMap.get("序号")+"");
+            endList.add(povertyUserRegist);
+        }
+        return  endList;
+    }
+}

+ 26 - 26
admin/src/main/java/com/huimv/farm/damsubsidy/config/InterceptorConfig.java

@@ -1,26 +1,26 @@
-package com.huimv.farm.damsubsidy.config;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
-import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
-
-/**
- * @Description: 注册验证tocken的拦截器
- * @Author
- * @Date 2021/4/19 20:41
- * @Version V1.0
- */
-@Configuration
-public class InterceptorConfig implements WebMvcConfigurer {
-    @Bean
-    public JWTInterceptor jwtInterceptor(){
-        return new JWTInterceptor();
-    }
-
-    @Override
-    public void addInterceptors(InterceptorRegistry registry) {
-        registry.addInterceptor(jwtInterceptor()).
-                excludePathPatterns("/sys-user/*");
-    }
-}
+//package com.huimv.farm.damsubsidy.config;
+//
+//import org.springframework.context.annotation.Bean;
+//import org.springframework.context.annotation.Configuration;
+//import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
+//import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+//
+///**
+// * @Description: 注册验证tocken的拦截器
+// * @Author
+// * @Date 2021/4/19 20:41
+// * @Version V1.0
+// */
+//@Configuration
+//public class InterceptorConfig implements WebMvcConfigurer {
+//    @Bean
+//    public JWTInterceptor jwtInterceptor(){
+//        return new JWTInterceptor();
+//    }
+//
+//    @Override
+//    public void addInterceptors(InterceptorRegistry registry) {
+//        registry.addInterceptor(jwtInterceptor()).
+//                excludePathPatterns("/sys-user/*");
+//    }
+//}

+ 82 - 82
admin/src/main/java/com/huimv/farm/damsubsidy/config/JWTInterceptor.java

@@ -1,82 +1,82 @@
-package com.huimv.farm.damsubsidy.config;
-
-import com.alibaba.fastjson.JSONObject;
-import com.huimv.farm.damsubsidy.common.token.TokenConstant;
-import com.huimv.farm.damsubsidy.common.token.TokenSign;
-import io.jsonwebtoken.Claims;
-import org.springframework.web.method.HandlerMethod;
-import org.springframework.web.servlet.HandlerInterceptor;
-import org.springframework.web.servlet.ModelAndView;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * <p>
- * jwt拦截器
- * </p>
- *
- * @since 2021/4/19
- */
-public class JWTInterceptor implements HandlerInterceptor {
-
-
-    @Override
-    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
-        // 如果不是映射到方法,则直接通过
-        if (!(handler instanceof HandlerMethod)) {
-            return true;
-        }
-
-        response.setContentType("application/json;charset=utf-8");
-        // 获取token
-        String token = request.getHeader("accessToken");
-
-
-        if (null == token) {
-            Map<String, Object> map = new HashMap<>();
-            map.put("data", "token is null");
-            map.put("code", "401");
-            response.setStatus(401);
-            response.getWriter().write(JSONObject.toJSONString(map));
-            return false;
-        } else {
-            Claims claims = TokenSign.getClaims(token);
-            if (claims == null) {
-                Map<String, Object> map = new HashMap<>();
-                map.put("data", "token is overdue");
-                map.put("code", "403");
-                response.setStatus(403);
-                response.getWriter().write(JSONObject.toJSONString(map));
-                return false;
-            }
-
-            boolean result = TokenSign.verify(token);
-            if (result) {
-                //更新存储的token信息
-                TokenConstant.updateTokenMap(token);
-                return true;
-            }
-            Map<String, Object> map = new HashMap<>();
-            map.put("data", "token is null");
-            map.put("code", "401");
-            response.setStatus(401);
-            response.getWriter().write(JSONObject.toJSONString(map));
-            return false;
-
-        }
-    }
-
-
-    @Override
-    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
-
-    }
-
-    @Override
-    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
-
-    }
-}
+//package com.huimv.farm.damsubsidy.config;
+//
+//import com.alibaba.fastjson.JSONObject;
+//import com.huimv.farm.damsubsidy.common.token.TokenConstant;
+//import com.huimv.farm.damsubsidy.common.token.TokenSign;
+//import io.jsonwebtoken.Claims;
+//import org.springframework.web.method.HandlerMethod;
+//import org.springframework.web.servlet.HandlerInterceptor;
+//import org.springframework.web.servlet.ModelAndView;
+//
+//import javax.servlet.http.HttpServletRequest;
+//import javax.servlet.http.HttpServletResponse;
+//import java.util.HashMap;
+//import java.util.Map;
+//
+///**
+// * <p>
+// * jwt拦截器
+// * </p>
+// *
+// * @since 2021/4/19
+// */
+//public class JWTInterceptor implements HandlerInterceptor {
+//
+//
+//    @Override
+//    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
+//        // 如果不是映射到方法,则直接通过
+//        if (!(handler instanceof HandlerMethod)) {
+//            return true;
+//        }
+//
+//        response.setContentType("application/json;charset=utf-8");
+//        // 获取token
+//        String token = request.getHeader("accessToken");
+//
+//
+//        if (null == token) {
+//            Map<String, Object> map = new HashMap<>();
+//            map.put("data", "token is null");
+//            map.put("code", "401");
+//            response.setStatus(401);
+//            response.getWriter().write(JSONObject.toJSONString(map));
+//            return false;
+//        } else {
+//            Claims claims = TokenSign.getClaims(token);
+//            if (claims == null) {
+//                Map<String, Object> map = new HashMap<>();
+//                map.put("data", "token is overdue");
+//                map.put("code", "403");
+//                response.setStatus(403);
+//                response.getWriter().write(JSONObject.toJSONString(map));
+//                return false;
+//            }
+//
+//            boolean result = TokenSign.verify(token);
+//            if (result) {
+//                //更新存储的token信息
+//                TokenConstant.updateTokenMap(token);
+//                return true;
+//            }
+//            Map<String, Object> map = new HashMap<>();
+//            map.put("data", "token is null");
+//            map.put("code", "401");
+//            response.setStatus(401);
+//            response.getWriter().write(JSONObject.toJSONString(map));
+//            return false;
+//
+//        }
+//    }
+//
+//
+//    @Override
+//    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
+//
+//    }
+//
+//    @Override
+//    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
+//
+//    }
+//}

+ 9 - 3
admin/src/main/java/com/huimv/farm/damsubsidy/config/MsmTest.java

@@ -1,3 +1,4 @@
+/*
 package com.huimv.farm.damsubsidy.config;
 
 import com.cloopen.rest.sdk.BodyType;
@@ -7,16 +8,20 @@ import java.util.HashMap;
 import java.util.Random;
 import java.util.Set;
 
+*/
 /**
  * @author zxb
- */
+ *//*
+
 public class MsmTest {
 
-    /**
+    */
+/**
      * 生成六位验证码
      *
      * @return 验证码
-     */
+     *//*
+
     public static String generateCode() {
         Random random = new Random();
         StringBuilder sb = new StringBuilder();
@@ -70,3 +75,4 @@ public class MsmTest {
     }
 
 }
+*/

+ 92 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/controller/AuthorizeController.java

@@ -0,0 +1,92 @@
+package com.huimv.farm.damsubsidy.controller;
+
+import com.huimv.farm.damsubsidy.common.utils.Result;
+import com.huimv.farm.damsubsidy.common.utils.ResultCode;
+import com.huimv.farm.damsubsidy.entity.Menu;
+import com.huimv.farm.damsubsidy.service.IAuthorizeService;
+import com.huimv.farm.damsubsidy.service.IMenuService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
+
+@RestController
+@RequestMapping(value = "/auth")
+public class AuthorizeController {
+
+    @Autowired
+    IAuthorizeService iAuthorizeService;
+    @Autowired
+    IMenuService iMenuService;
+
+    @PostMapping("/saveAccountGroup")
+    public Result saveAccountGroup(@RequestBody Map<String, String> map){
+        /*
+         * 保存账号关联权限组数据
+         */
+        String accountId = map.get("accountId");
+        String groupIds = map.get("groupIds");
+        return iAuthorizeService.saveAccountGroup(accountId,groupIds);
+    }
+
+    @PostMapping("/saveGroupMenu")
+    public Result saveGroupMenu(@RequestBody Map<String, String> map){
+        /*
+         * 保存权限组关联菜单数据
+         */
+        String groupId = map.get("groupId");
+        String menuIds = map.get("menuIds");
+        return iAuthorizeService.saveGroupMenu(groupId,menuIds);
+    }
+
+    @RequestMapping("/getGroupByAccount")
+    public Result getGroupByAccount(@RequestParam(name = "accountId", required = true) String accountId){
+        /*
+         * 根据账号获取权限组
+         */
+        return iAuthorizeService.getGroupByAccount (accountId);
+    }
+
+    @GetMapping("/getMenuByGroup")
+    public Result getMenuByGroup(String groupId){
+        /*
+         * 根据权限组获取菜单
+         */
+        return iAuthorizeService.getMenuByGroup(groupId);
+    }
+
+    @RequestMapping("/getMyMenu")
+    public Result getMyMenuAndButton(@RequestParam(name = "userId", required = true) String userId){
+        /*
+         * 获取用户的菜单数据
+         */
+        List<Menu> myMenu = iAuthorizeService.getMyMenuAll(userId);
+        List<Map> list = iMenuService.optimizeListUtil(0,myMenu);
+        return new Result(ResultCode.SUCCESS,list);
+    }
+//    //获取菜单-多级
+//    @RequestMapping("/getMyMenuMultilevel")
+//    public Result getMyMenuMultilevel(@RequestParam(name = "userId", required = true) String userId){
+//        return new Result(ResultCode.SUCCESS,iAuthorizeService.getMyMenuMultilevel(userId));
+//    }
+
+
+    @GetMapping("/getMyButton")
+    public Result getMyButton(@RequestParam(name = "userId", required = true) Integer userId){
+        /*
+         * 获取用户的菜单数据
+         */
+      List list = iAuthorizeService.getMyButton(userId);
+        return new Result(ResultCode.SUCCESS,list);
+    }
+
+
+    @GetMapping("/getAcountByGroup")
+    public Result getAccountByGroup(String groupId){
+        /*
+         * 根据权限组获取菜单
+         */
+        return iAuthorizeService.getAccountByGroup(groupId);
+    }
+}

+ 23 - 8
admin/src/main/java/com/huimv/farm/damsubsidy/controller/ImagesTest.java

@@ -2,20 +2,19 @@ package com.huimv.farm.damsubsidy.controller;
 
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.lang.UUID;
-import cn.hutool.core.util.CharsetUtil;
-import cn.hutool.crypto.SecureUtil;
-import cn.hutool.crypto.digest.MD5;
-import cn.hutool.crypto.symmetric.AES;
-import cn.hutool.crypto.symmetric.SymmetricAlgorithm;
-import cn.hutool.crypto.symmetric.SymmetricCrypto;
+import cn.hutool.poi.excel.ExcelReader;
+import cn.hutool.poi.excel.ExcelUtil;
+import com.huimv.farm.damsubsidy.common.utils.PovertyUtils;
 import com.huimv.farm.damsubsidy.common.utils.UploadImage;
-import org.springframework.beans.factory.annotation.Value;
+import com.huimv.farm.damsubsidy.entity.PovertyUserRegist;
 import org.springframework.util.StringUtils;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.*;
 import java.util.Date;
+import java.util.List;
+import java.util.Map;
 
 @CrossOrigin
 @RestController
@@ -23,7 +22,10 @@ import java.util.Date;
 public class ImagesTest {
 
     @PostMapping("/test")
-    public  String test( @RequestParam("image") MultipartFile image ) {
+    public  String test( @RequestParam("image") MultipartFile image,
+            @RequestParam("image1") MultipartFile image1) {
+        System.out.println(image1);
+        System.out.println(image);
         String imgname = "成功";
         String originalFilename = image.getOriginalFilename();
         String filenameExtension = StringUtils.getFilenameExtension(originalFilename);
@@ -50,4 +52,17 @@ public class ImagesTest {
 
         return content;
     }
+
+
+    @RequestMapping("excelTest/import")
+    @ResponseBody
+     public String evaluationUpdate(@RequestParam(value = "file", required = true) MultipartFile file) throws Exception {
+        ExcelReader reader = ExcelUtil.getReader(file.getInputStream());
+//        List<PoverVo> povertyUserRegists =  reader.readAll();
+        List<Map<String, Object>> maps = reader.readAll();
+        List<Map<String, Object>> read = reader.read(2, 3, 2147483647);
+        List<PovertyUserRegist> povertyUserRegist =  PovertyUtils.getPoverty(read);
+        
+        return "成功";
+    }
 }

+ 46 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/controller/MenuController.java

@@ -0,0 +1,46 @@
+package com.huimv.farm.damsubsidy.controller;
+
+import com.huimv.farm.damsubsidy.common.token.TokenSign;
+import com.huimv.farm.damsubsidy.common.utils.Result;
+import com.huimv.farm.damsubsidy.entity.Menu;
+import com.huimv.farm.damsubsidy.service.IMenuService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+
+@RestController
+@RequestMapping("/menu")
+public class MenuController {
+    @Autowired
+    private IMenuService menuService;
+
+    @PostMapping("/add")
+    public Result addMenu(@RequestBody Menu menu , HttpServletRequest request){
+        Integer userId = TokenSign.getMemberIdByJwtToken(request);
+
+        return menuService.addMenu(menu,userId);
+    }
+
+
+    @PostMapping("/edit")
+    public Result editMenu(@RequestBody Menu menu){
+        return menuService.editMenu(menu);
+    }
+
+
+    @RequestMapping("/remove")
+    public Result removeMenu(@RequestParam(name = "menuId") Integer menuId){
+        return menuService.removeMenu(menuId);
+    }
+
+    @PostMapping("/list")
+    public Result optimizeList() {
+        return menuService.optimizeList();
+    }
+
+    @PostMapping("/list1")
+    public Result list1() {
+        return menuService.list1();
+    }
+}

+ 58 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/controller/SysGroupController.java

@@ -0,0 +1,58 @@
+package com.huimv.farm.damsubsidy.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.huimv.farm.damsubsidy.common.token.TokenSign;
+import com.huimv.farm.damsubsidy.common.utils.Result;
+import com.huimv.farm.damsubsidy.entity.AccountGroup;
+import com.huimv.farm.damsubsidy.entity.Group;
+import com.huimv.farm.damsubsidy.entity.SysUser;
+import com.huimv.farm.damsubsidy.service.IAccountGroupService;
+import com.huimv.farm.damsubsidy.service.IGroupService;
+import com.huimv.farm.damsubsidy.service.ISysUserService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.List;
+import java.util.Map;
+
+
+@RestController
+@RequestMapping("/group")
+public class SysGroupController {
+
+    @Autowired
+    private IGroupService groupService;
+
+    @Autowired
+    private IAccountGroupService accountGroupService;
+    @Autowired
+    private ISysUserService sysUserService;
+
+    @PostMapping("/add")
+    public Result addGroup (@RequestBody Group group, HttpServletRequest request){
+        Long userId = TokenSign.getMemberIdByJwtToken(request);
+        return groupService.addGroup(group,userId);
+    }
+
+
+    @PostMapping("/edit")
+    public Result updateGroup(@RequestBody Group group ){
+        return groupService.updateGroup( group);
+    }
+
+    @RequestMapping("/remove")
+    public Result removeGroup(@RequestParam("groupId") Integer groupId) {
+
+        accountGroupService.remove(new QueryWrapper<AccountGroup>().in("group_id",groupId));
+        return groupService.removeGroup(groupId);
+    }
+
+    @PostMapping("/list")
+    public IPage<Group> listGroup(@RequestBody Map map , HttpServletRequest request) {
+        Long userId = TokenSign.getMemberIdByJwtToken(request);
+        List<Long> allChildId = sysUserService.getAllChildId(userId);
+        return groupService.listGroup(map,allChildId);
+    }
+}

+ 70 - 4
admin/src/main/java/com/huimv/farm/damsubsidy/controller/SysUserController.java

@@ -51,8 +51,7 @@ public class SysUserController {
             accessToken.setAccountName(user.getUserName());
             accessToken.setCreated(new Date());
             accessToken.setLoginIp(user.getLastIp());
-            accessToken.setToken(TokenSign.sign(user.getUserName(), user.getPhone()));
-            accessToken.setType(user.getUserType());
+            accessToken.setToken(TokenSign.sign(user.getUserName(), user.getPhone(),user.getId()));
         }
         if (result.getCode() == 10004) {
             accessToken.setAccountName("游客");
@@ -66,6 +65,44 @@ public class SysUserController {
         return new Result(ResultCode.SUCCESS, accessToken);
     }
 
+    //TODO
+    @PostMapping(value = "/loginClient")
+    public Result loginClient(HttpServletRequest req, @RequestBody Map<String, String> map) {
+
+        String accountName = map.get("accountName");
+        String password = map.get("password");
+        String loginType = map.get("loginType");
+
+        String remoteHost = req.getRemoteHost();
+        //手机登录
+        if ("1".equals(loginType)){
+          return   iSysUserService.loginMultilevel(req,map);
+        }
+        if ("2".equals(loginType)){
+            // 未对密码加密
+            Result result = iSysUserService.loginMultilevelClient(accountName, password);
+            if(result.getCode() == 10000){
+
+                SysUser accountEntity = (SysUser) result.getData();
+                Long id = accountEntity.getId();
+
+
+                AccessToken accessToken = new AccessToken();
+                accessToken.setCreated(new Date());
+                accessToken.setAccountName(accountName);
+                accessToken.setCode(result.getCode());
+                accessToken.setMessage(result.getMessage());
+                String token = TokenSign.sign(accountName,accountEntity.getPhone(),accountEntity.getId());
+                accessToken.setToken(token);
+
+                accessToken.setLoginIp(remoteHost);
+                return new Result(ResultCode.SUCCESS,accessToken);
+            }
+            return  result;
+        }
+        return new Result(ResultCode.FAIL, "登录方式有误");
+    }
+
 
     @PostMapping(value = "/add")
     public Result add(HttpServletRequest req,@RequestParam("idCordFrontUrl") MultipartFile idCordFrontUrl,
@@ -174,7 +211,36 @@ public class SysUserController {
     //测试-token
     @PostMapping(value = "/getToken")
     public String getToken(HttpServletRequest req) {
-        String token = TokenSign.sign("superadmin", "123456789");
+        String token = TokenSign.sign("superadmin", "123456789",1L);
         return token;
     }
-}
+
+
+
+    @PostMapping("/listSubordinate")
+    public Result listSubordinate(@RequestBody Map map , HttpServletRequest request) {
+        Long userId = TokenSign.getMemberIdByJwtToken(request);
+        int pageNum = (Integer) map.get("pageNum");
+        int pageSize = (Integer) map.get("pageSize");
+        String searchStr = (String) map.get("searchStr");
+
+//        return iSysUserService.listSubordinate(searchStr,pageNum,pageSize,userId);
+        return null;
+    }
+    }
+
+   /* @PostMapping("/add")
+    public Result add(@RequestBody SysAccountMultilevel sysAccountMultilevel , HttpServletRequest request){
+
+        Integer userId = TokenSign.getMemberIdByJwtToken(request);
+        return accountMultilevelService.add(sysAccountMultilevel,userId);
+
+    }
+
+    @PostMapping("/update")
+    public Result update(@RequestBody SysAccountMultilevel sysAccountMultilevel){
+        accountMultilevelService.updateById(sysAccountMultilevel);
+
+        return new Result(10000,"修改成功",true);
+
+    }

+ 35 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/entity/AccountGroup.java

@@ -0,0 +1,35 @@
+package com.huimv.farm.damsubsidy.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@TableName("sys_account_group")
+public class AccountGroup extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    private Integer accountId;
+
+    private Integer groupId;
+
+
+}

+ 1 - 1
admin/src/main/java/com/huimv/farm/damsubsidy/entity/BillLandingInspection.java

@@ -38,7 +38,7 @@ public class BillLandingInspection extends BaseEntity implements Serializable {
     /**
      * old审核进度; 0待受理,1已拒绝,2审核中,3审核通过,4审核不通过
      *
-     * 0待审核、1待隔离、2隔离中、3已完成(包括已驳回)
+     * 1待审核、2待隔离、3隔离中、4已完成(包括已驳回),5驳回
      */
     private Integer inspectionSch;
 

+ 37 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/entity/Group.java

@@ -0,0 +1,37 @@
+package com.huimv.farm.damsubsidy.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@TableName("sys_group")
+public class Group extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    private String groupName;
+
+    private String remark;
+
+    private Long accountId;
+
+
+}

+ 35 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/entity/GroupMenu.java

@@ -0,0 +1,35 @@
+package com.huimv.farm.damsubsidy.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@TableName("sys_group_menu")
+public class GroupMenu extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    private Integer groupId;
+
+    private Integer menuId;
+
+
+}

+ 52 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/entity/Menu.java

@@ -0,0 +1,52 @@
+package com.huimv.farm.damsubsidy.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@TableName("sys_menu")
+public class Menu extends Model {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    private String title;
+
+    private String url;
+
+    private String remark;
+
+    private Integer parentId;
+
+    private Integer sort;
+
+    private Integer weight;
+
+    private String permission;
+
+    private Boolean ifShow;
+
+
+
+//    private List<Menu> children;
+
+
+
+}

+ 0 - 1
admin/src/main/java/com/huimv/farm/damsubsidy/entity/PovertyUserRegist.java

@@ -3,7 +3,6 @@ package com.huimv.farm.damsubsidy.entity;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
-import java.time.LocalDateTime;
 import java.io.Serializable;
 import java.util.Date;
 

+ 9 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/entity/SysUser.java

@@ -91,4 +91,13 @@ public class SysUser extends BaseEntity implements Serializable {
 
     /*审核进度*/
     private Integer accoutType;
+
+    /*审核进度*/
+    private String accountNum;
+    private String password;
+    private Integer pid;
+    private String pids;
+    private String veterIds;
+    private Integer lastVeter;
+
 }

+ 20 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/mapper/AccountGroupMapper.java

@@ -0,0 +1,20 @@
+package com.huimv.farm.damsubsidy.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.farm.damsubsidy.entity.AccountGroup;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+@Repository
+public interface AccountGroupMapper extends BaseMapper<AccountGroup> {
+
+    void removeAccountGroup(@Param("groupIds") String groupIds);
+}

+ 18 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/mapper/GroupMapper.java

@@ -0,0 +1,18 @@
+package com.huimv.farm.damsubsidy.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.farm.damsubsidy.entity.Group;
+import org.springframework.stereotype.Repository;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+@Repository
+public interface GroupMapper extends BaseMapper<Group> {
+
+}

+ 21 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/mapper/GroupMenuMapper.java

@@ -0,0 +1,21 @@
+package com.huimv.farm.damsubsidy.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.farm.damsubsidy.entity.GroupMenu;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+@Repository
+public interface GroupMenuMapper extends BaseMapper<GroupMenu> {
+
+    void removeGroupMenu(@Param("groupId") String groupId);
+
+}

+ 24 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/mapper/MenuMapper.java

@@ -0,0 +1,24 @@
+package com.huimv.farm.damsubsidy.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.huimv.farm.damsubsidy.entity.Menu;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+@Repository
+public interface MenuMapper extends BaseMapper<Menu> {
+
+    List<Menu> getMyMenu(@Param("accountName") String accountName);
+
+    List<String> getMyButton(@Param("userId") Integer userId);
+}

+ 16 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/IAccountGroupService.java

@@ -0,0 +1,16 @@
+package com.huimv.farm.damsubsidy.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.huimv.farm.damsubsidy.entity.AccountGroup;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+public interface IAccountGroupService extends IService<AccountGroup> {
+
+}

+ 27 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/IAuthorizeService.java

@@ -0,0 +1,27 @@
+package com.huimv.farm.damsubsidy.service;
+
+
+import com.huimv.farm.damsubsidy.common.utils.Result;
+
+import java.util.List;
+
+public interface IAuthorizeService {
+
+    Result saveAccountGroup(String accountId, String groupIds);
+
+    Result saveGroupMenu(String groupId, String menuIds);
+
+
+    Result getMenuByGroup(String groupId);
+
+    Result getGroupByAccount(String accountId);
+
+    Result getAccountByGroup(String groupId);
+
+
+    List getMyMenuAll(String accountName);
+
+    List getMyButton(Integer userId);
+
+    List getMyMenuMultilevel(String userId);
+}

+ 16 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/IGroupMenuService.java

@@ -0,0 +1,16 @@
+package com.huimv.farm.damsubsidy.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.huimv.farm.damsubsidy.entity.GroupMenu;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+public interface IGroupMenuService extends IService<GroupMenu> {
+
+}

+ 28 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/IGroupService.java

@@ -0,0 +1,28 @@
+package com.huimv.farm.damsubsidy.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.huimv.farm.damsubsidy.common.utils.Result;
+import com.huimv.farm.damsubsidy.entity.Group;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+public interface IGroupService extends IService<Group> {
+
+    Result updateGroup(Group group);
+
+    Result removeGroup(Integer groupId);
+
+    IPage<Group> listGroup(Map map, List<Long> allChildId);
+
+    Result addGroup(Group group, Long userId);
+}

+ 12 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/ILoginService.java

@@ -0,0 +1,12 @@
+package com.huimv.farm.damsubsidy.service;
+
+
+import com.huimv.farm.damsubsidy.common.utils.Result;
+
+public interface ILoginService {
+
+
+    Result logout();
+
+    Result loginMultilevel(String accountName, String password);
+}

+ 35 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/IMenuService.java

@@ -0,0 +1,35 @@
+package com.huimv.farm.damsubsidy.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.huimv.farm.damsubsidy.common.utils.Result;
+import com.huimv.farm.damsubsidy.entity.Menu;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+public interface IMenuService extends IService<Menu> {
+    Result addMenu(Menu menu, Integer userId);
+    //修改菜单
+    Result editMenu(Menu menu);
+    //删除菜单(批量)
+    Result removeMenu(Integer menuId);
+   /* //查询所有
+    List<Map> listMenu();
+    //菜单递归
+    List listMenuUtil(List<Menu> list);*/
+
+    //优化查询所有
+    Result optimizeList();
+    //优化菜单递归
+    List<Map> optimizeListUtil(int parentId, List<Menu> menuEntityList);
+
+    Result list1();
+}

+ 3 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/IPovertyUserRegistService.java

@@ -2,6 +2,9 @@ package com.huimv.farm.damsubsidy.service;
 
 import com.huimv.farm.damsubsidy.entity.PovertyUserRegist;
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.InputStream;
 
 /**
  * <p>

+ 15 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/ISysUserService.java

@@ -5,6 +5,7 @@ import com.huimv.farm.damsubsidy.entity.SysUser;
 import com.baomidou.mybatisplus.extension.service.IService;
 
 import javax.servlet.http.HttpServletRequest;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -33,4 +34,18 @@ public interface ISysUserService extends IService<SysUser> {
     Result editState(HttpServletRequest httpServletRequest,SysUser user);
 
     Result listPc2(HttpServletRequest httpServletRequest, Map<String, String> paramsMap);
+
+    Result findUserAccount(String searchStr, int pageNum, int pageSize, Long userId);
+
+    Result add(SysUser sysUser, Integer userId);
+
+    Result setAccountStatus(List<Integer> ids, Integer status);
+
+    List<Long> getAllChildId(Long userId);
+
+    Result listSubordinate(String searchStr, int pageNum, int pageSize, Long userId);
+
+    Result getLastFarmId(Integer userId);
+
+    Result loginMultilevelClient(String accountName, String password);
 }

+ 19 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/AccountGroupServiceImpl.java

@@ -0,0 +1,19 @@
+package com.huimv.farm.damsubsidy.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.huimv.farm.damsubsidy.entity.AccountGroup;
+import com.huimv.farm.damsubsidy.mapper.AccountGroupMapper;
+import com.huimv.farm.damsubsidy.service.IAccountGroupService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09 */
+@Service
+public class AccountGroupServiceImpl extends ServiceImpl<AccountGroupMapper, AccountGroup> implements IAccountGroupService {
+
+}

+ 217 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/AuthorizeServiceImpl.java

@@ -0,0 +1,217 @@
+package com.huimv.farm.damsubsidy.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.huimv.farm.damsubsidy.common.utils.Result;
+import com.huimv.farm.damsubsidy.common.utils.ResultCode;
+import com.huimv.farm.damsubsidy.entity.AccountGroup;
+import com.huimv.farm.damsubsidy.entity.GroupMenu;
+import com.huimv.farm.damsubsidy.entity.Menu;
+import com.huimv.farm.damsubsidy.mapper.AccountGroupMapper;
+import com.huimv.farm.damsubsidy.mapper.GroupMenuMapper;
+import com.huimv.farm.damsubsidy.mapper.MenuMapper;
+import com.huimv.farm.damsubsidy.service.IAuthorizeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Service
+public class AuthorizeServiceImpl implements IAuthorizeService {
+
+    @Autowired
+    AccountGroupMapper accountGroupMapper;
+    @Autowired
+    GroupMenuMapper groupMenuMapper;
+    @Autowired
+    private MenuMapper menuMapper;
+    
+    @Override
+    @Transactional
+    public Result saveAccountGroup(String accountId, String groupIds) {
+        /**
+         * Step1:先删除原先的账号关联权限组数据;
+         * Step2:再添加新的账号关联权限组数据;
+         */
+        if (accountId == null||"".equals(accountId)){
+
+            accountGroupMapper.removeAccountGroup(groupIds);
+            return new Result(10001, "保存账号关联权限组成功", true);
+        }else {
+            String[] groupIdArray = accountId.split(",");
+            accountGroupMapper.removeAccountGroup(groupIds);
+//        for (int a = 0; a < groupIdArray.length; a++) {
+//            accountGroupMapper.removeAccountGroup(accountId,groupIdArray[a]);
+//        }
+            for (int a = 0; a < groupIdArray.length; a++) {
+                AccountGroup accountGroupEntity = new AccountGroup();
+                accountGroupEntity.setAccountId(Integer.parseInt(groupIdArray[a]));
+                accountGroupEntity.setGroupId(Integer.parseInt(groupIds));
+                accountGroupMapper.insert(accountGroupEntity);
+//            accountGroupMapper.insert(Integer.parseInt(accountId),Integer.parseInt(groupIdArray[a]));
+            }
+            return new Result(10001, "保存账号关联权限组成功", true);
+        }
+
+
+    }
+
+    @Override
+    @Transactional
+    public Result saveGroupMenu(String groupId, String menuIds) {
+        /**
+         * Step1:先删除原先的权限组关联菜单数据;
+         * Step2:再添加新的账号权限组关联菜单数据;
+         */
+        groupMenuMapper.removeGroupMenu(groupId);
+        if (StringUtils.isNotBlank(menuIds)){
+            String[] menuIdsArray = menuIds.split(",");
+            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);
+            }
+
+        }
+
+
+        return new Result(10001, "保存权限组关联菜单成功", true);
+    }
+
+
+
+
+
+    @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);
+        }
+        /* 读取所有菜单 */
+        List<Menu> allMenuList = menuMapper.selectList(null);
+        if (allMenuList.size() == 0) {
+            return new Result(10007, "当前无任何菜单.", 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 idSb = new StringBuilder();
+//        for (GroupMenu groupMenuEntity : groupMenuEntityList) {
+//            if (idSb.length() > 0) {
+//                idSb.append(",");
+//            }
+//            idSb.append(groupMenuEntity.getMenuId());
+//        }
+        return new Result(ResultCode.SUCCESS, idSb2.toString());
+    }
+
+    /**
+     * @param accountId
+     * @return
+     */
+    @Override
+    public Result getGroupByAccount(String accountId) {
+        /* 根据账号id读取已关联权限组 */
+        QueryWrapper<AccountGroup> accountGroupQueryWrapper = new QueryWrapper<>();
+        accountGroupQueryWrapper.eq("account_id",accountId);
+        List<AccountGroup> accountGroupEntityList = accountGroupMapper.selectList(accountGroupQueryWrapper);
+        if (accountGroupEntityList.size() == 0) {
+            return new Result(10006, "当前用户账号暂未关联任何权限组.", false);
+        }
+        StringBuilder idSb = new StringBuilder();
+        for (AccountGroup accountGroupEntity : accountGroupEntityList) {
+            if (idSb.length() > 0) {
+                idSb.append(",");
+            }
+            idSb.append(accountGroupEntity.getGroupId());
+        }
+        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);
+        if (accountGroupEntityList.size() == 0) {
+            return new Result(10006, "当前权限组暂未关联任何用户账号.", false);
+        }
+        StringBuilder idSb = new StringBuilder();
+        for (AccountGroup accountGroupEntity : accountGroupEntityList) {
+            if (idSb.length() > 0) {
+                idSb.append(",");
+            }
+            idSb.append(accountGroupEntity.getAccountId());
+        }
+        return new Result(ResultCode.SUCCESS, idSb.toString());
+    }
+
+    @Override
+    public List getMyMenuAll(String accountName) {
+        if ("1".equals(accountName)){
+            List<Menu> menus = menuMapper.selectList(new QueryWrapper<Menu>().orderByAsc("sort"));
+            return menus;
+        }
+        return menuMapper.getMyMenu(accountName);
+    }
+
+    @Override
+    public List<String> getMyButton(Integer userId) {
+        if (userId == 1){
+            List<Menu> menus = menuMapper.selectList(null);
+            List<String> list = new ArrayList<>();
+            for (Menu menu : menus) {
+                list.add(menu.getPermission());
+            }
+            return list;
+        }
+        return menuMapper.getMyButton(userId);
+    }
+
+    @Override
+    public List getMyMenuMultilevel(String userId) {
+        return null;
+    }
+
+}

+ 20 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/GroupMenuServiceImpl.java

@@ -0,0 +1,20 @@
+package com.huimv.farm.damsubsidy.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.huimv.farm.damsubsidy.entity.GroupMenu;
+import com.huimv.farm.damsubsidy.mapper.GroupMenuMapper;
+import com.huimv.farm.damsubsidy.service.IGroupMenuService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+@Service
+public class GroupMenuServiceImpl extends ServiceImpl<GroupMenuMapper, GroupMenu> implements IGroupMenuService {
+
+}

+ 85 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/GroupServiceImpl.java

@@ -0,0 +1,85 @@
+package com.huimv.farm.damsubsidy.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.huimv.farm.damsubsidy.common.utils.Result;
+import com.huimv.farm.damsubsidy.entity.Group;
+import com.huimv.farm.damsubsidy.entity.GroupMenu;
+import com.huimv.farm.damsubsidy.mapper.GroupMapper;
+import com.huimv.farm.damsubsidy.mapper.GroupMenuMapper;
+import com.huimv.farm.damsubsidy.service.IGroupService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.RequestBody;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+@Service
+public class GroupServiceImpl extends ServiceImpl<GroupMapper, Group> implements IGroupService {
+    @Autowired
+    private GroupMapper groupMapper;
+    @Autowired
+    private GroupMenuMapper groupMenuMapper;
+
+
+    @Override
+    public Result updateGroup(@RequestBody Group group) {
+        try {
+            groupMapper.updateById(group);
+            return new Result(10000,"修改成功",true);
+        }catch (Exception e){
+            return new Result(10001,"修改失败",false);
+        }
+    }
+
+    @Override
+    @Transactional
+    public Result removeGroup(Integer groupId) {
+        try {
+            Group group = this.groupMapper.selectById(groupId);
+            if (group == null) {
+                return new Result(10002,"请选择数据",false);
+            }
+            // 删除权限组
+            this.groupMapper.deleteById(groupId);
+            // 删除权限组关联菜单
+            QueryWrapper<GroupMenu> groupMenuQueryWrapper = new QueryWrapper<>();
+            groupMenuQueryWrapper.eq("group_id",groupId);
+            groupMenuMapper.delete(groupMenuQueryWrapper);
+            return new Result(10000,"删除成功",true);
+        }catch (Exception e){
+            return new Result(10001,"删除失败",false);
+        }
+    }
+
+    @Override
+    public  IPage<Group> listGroup(Map map, List<Long> allChildId) {
+        Integer pageNum = (Integer)map.get("pageNum");
+        Integer pageSize = (Integer)map.get("pageSize");
+
+        return this.page(new Page<>(pageNum, pageSize),new QueryWrapper<Group>().in("account_id",allChildId).orderByDesc("id"));
+    }
+
+    @Override
+    public Result addGroup(Group group, Long userId) {
+        try {
+            group.setAccountId(userId);
+            groupMapper.insert(group);
+            return new Result(10000,"添加成功",true);
+        }catch (Exception e){
+            return new Result(10001,"添加失败",false);
+        }
+    }
+}

+ 45 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/LoginServiceImpl.java

@@ -0,0 +1,45 @@
+package com.huimv.farm.damsubsidy.service.impl;
+
+import cn.hutool.core.util.ObjectUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.huimv.farm.damsubsidy.common.utils.Result;
+import com.huimv.farm.damsubsidy.common.utils.ResultCode;
+import com.huimv.farm.damsubsidy.service.ILoginService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class LoginServiceImpl implements ILoginService {
+
+
+    @Override
+    public Result logout() {
+        return null;
+    }
+
+    @Override
+    public Result loginMultilevel(String accountName, String password) {
+        return null;
+    }
+
+    /*@Autowired
+    private SysAccountMultilevelMapper accountMultilevelMapper;
+
+    @Override
+    public Result loginMultilevel(String accountName, String password) {
+
+        QueryWrapper<SysAccountMultilevel> wrapper = new QueryWrapper<>();
+        wrapper.eq("account_num",accountName).eq("password",password);
+        SysAccountMultilevel accountMultilevel = accountMultilevelMapper.selectOne(wrapper);
+
+        if (ObjectUtil.isEmpty(accountMultilevel)){
+            return new Result(10001, "账号不存在或密码错误.", false);
+        }
+
+
+        if (accountMultilevel.getAccountStatus() == 0){
+            return new Result(10002, "账号未启用.", false);
+        }
+        return new Result(ResultCode.SUCCESS,accountMultilevel);
+    }*/
+}

+ 157 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/MenuServiceImpl.java

@@ -0,0 +1,157 @@
+package com.huimv.farm.damsubsidy.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.huimv.farm.damsubsidy.common.utils.Result;
+import com.huimv.farm.damsubsidy.common.utils.ResultCode;
+import com.huimv.farm.damsubsidy.entity.AccountGroup;
+import com.huimv.farm.damsubsidy.entity.GroupMenu;
+import com.huimv.farm.damsubsidy.entity.Menu;
+import com.huimv.farm.damsubsidy.mapper.AccountGroupMapper;
+import com.huimv.farm.damsubsidy.mapper.GroupMenuMapper;
+import com.huimv.farm.damsubsidy.mapper.MenuMapper;
+import com.huimv.farm.damsubsidy.service.IMenuService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author astupidcoder
+ * @since 2021-09-09
+ */
+@Service
+public class MenuServiceImpl extends ServiceImpl<MenuMapper, Menu> implements IMenuService {
+    @Autowired
+    private MenuMapper menuMapper;
+
+    @Autowired
+    private AccountGroupMapper accountGroupMapper;
+
+    @Autowired
+    private GroupMenuMapper groupMenuMapper;
+
+    @Override
+    public Result addMenu(Menu menu, Integer userId) {
+
+        try {
+            if (menu == null){
+                return  new Result(10002,"参数错误",false);
+            }
+
+             menuMapper.insert(menu);
+            Integer id = menu.getId();
+            List<AccountGroup> accounts = accountGroupMapper.selectList(new QueryWrapper<AccountGroup>().eq("account_id", userId));
+            for (AccountGroup account : accounts) {
+                GroupMenu groupMenu = new GroupMenu();
+                groupMenu.setGroupId(account.getGroupId());
+                groupMenu.setMenuId(id);
+                groupMenuMapper.insert(groupMenu);
+            }
+
+            return new Result(10000,"添加成功",true);
+        }catch (Exception e){
+            return new Result(10001,"添加失败",false);
+        }
+    }
+
+    @Override
+    public Result editMenu(Menu menu) {
+        try {
+            if (menu.getId() == null){
+                return new Result(10002,"请选择要修改的菜单",false);
+            }
+            menuMapper.updateById(menu);
+            return new Result(10000,"修改成功",true);
+        }catch (Exception e){
+            return new Result(10001,"修改失败",false);
+        }
+
+    }
+
+    @Override
+    public Result removeMenu(Integer menuId) {
+        try {
+            QueryWrapper<Menu> menuQueryWrapper = new QueryWrapper<>();
+            menuQueryWrapper.eq("parent_id",menuId);
+            List<Menu> lists = menuMapper.selectList(menuQueryWrapper);
+            if (lists != null && lists.size()>0){
+                for (Menu menu : lists) {
+                    removeMenu(menu.getId());
+                    menuMapper.deleteById(menu);
+                }
+            }
+            menuMapper.deleteById(menuId);
+        }catch (Exception e){
+            return new Result(10001,"删除失败",false);
+        }
+        return new Result(10000,"删除成功",true);
+    }
+
+    //查询菜单,只查一次数据库
+    @Override
+    public Result optimizeList() {
+        QueryWrapper<Menu> menuQueryWrapper = new QueryWrapper<>();
+        menuQueryWrapper.orderByAsc("sort");
+
+        List<Menu> all = menuMapper.selectList(menuQueryWrapper);
+        List list = optimizeListUtil(0,all);
+        return new Result(ResultCode.SUCCESS,list);
+    }
+
+    @Override
+    public Result list1() {
+        QueryWrapper<Menu> menuQueryWrapper = new QueryWrapper<>();
+        menuQueryWrapper.orderByAsc("sort");
+        menuQueryWrapper.eq("weight",0);
+        List<Menu> all = menuMapper.selectList(menuQueryWrapper);
+        List list = optimizeListUtil(0,all);
+        return new Result(ResultCode.SUCCESS,list);
+    }
+
+    @Override
+    public List<Map> optimizeListUtil(int parentId, List<Menu> menuEntityList){
+        List<Map> list = new ArrayList<>();
+        for (Menu menuEntity : menuEntityList) {
+            if (menuEntity.getParentId() == parentId){
+                Map map = new HashMap();
+                map.put("id", menuEntity.getId());
+                map.put("title", menuEntity.getTitle());
+                map.put("parentId", menuEntity.getParentId());
+                map.put("url", menuEntity.getUrl());
+                map.put("sort", menuEntity.getSort());
+                map.put("value", menuEntity.getId());
+                map.put("pid", menuEntity.getParentId());
+                map.put("permission", menuEntity.getPermission());
+                map.put("weight", menuEntity.getWeight());
+                map.put("ifShow", menuEntity.getIfShow());
+                if (menuEntityIsChildren(menuEntity,menuEntityList) ){
+                    map.put("children",optimizeListUtil(menuEntity.getId(),menuEntityList));
+                }else {
+                    map.put("children",new ArrayList<>());
+                }
+                list.add(map);
+            }
+        }
+        return list;
+    }
+
+
+
+    //判断是否有children
+    private boolean menuEntityIsChildren(Menu menuEntity, List<Menu> menuEntityList) {
+        for (Menu Menu : menuEntityList) {
+            if (menuEntity.getId().equals(Menu.getParentId()) ){
+                return true;
+            }
+        }
+        return false;
+    }
+}

+ 4 - 8
admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/PovertyUserRegistServiceImpl.java

@@ -1,19 +1,15 @@
 package com.huimv.farm.damsubsidy.service.impl;
 
+import cn.hutool.poi.excel.ExcelUtil;
 import com.huimv.farm.damsubsidy.entity.PovertyUserRegist;
 import com.huimv.farm.damsubsidy.mapper.PovertyUserRegistMapper;
 import com.huimv.farm.damsubsidy.service.IPovertyUserRegistService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 
-/**
- * <p>
- * 隔离日志 服务实现类
- * </p>
- *
- * @author author
- * @since 2023-04-28
- */
+import java.io.InputStream;
+import java.util.ArrayList;
+
 @Service
 public class PovertyUserRegistServiceImpl extends ServiceImpl<PovertyUserRegistMapper, PovertyUserRegist> implements IPovertyUserRegistService {
 

+ 117 - 0
admin/src/main/java/com/huimv/farm/damsubsidy/service/impl/SysUserServiceImpl.java

@@ -2,6 +2,8 @@ package com.huimv.farm.damsubsidy.service.impl;
 
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.huimv.farm.damsubsidy.common.utils.Result;
 import com.huimv.farm.damsubsidy.common.utils.ResultCode;
@@ -13,7 +15,9 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.servlet.http.HttpServletRequest;
+import java.util.ArrayList;
 import java.util.Date;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -45,6 +49,25 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
             return new Result(ResultCode.SUCCESS, sysUser);
         }
     }
+    @Override
+    public Result loginMultilevelClient(String accountName, String password) {
+
+        QueryWrapper<SysUser> wrapper = new QueryWrapper<>();
+        wrapper.eq("account_num",accountName).eq("password",password);
+        SysUser accountMultilevel = userMapper.selectOne(wrapper);
+
+        if (ObjectUtil.isEmpty(accountMultilevel)){
+            return new Result(10001, "账号不存在或密码错误.", false);
+        }
+
+        Integer accoutType = accountMultilevel.getAccoutType();
+
+        if ( accoutType!= 1  ){
+            return new Result(10002, "账号未启用.", false);
+        }
+        return new Result(ResultCode.SUCCESS,accountMultilevel);
+    }
+
 
     @Override
     public Result add(HttpServletRequest httpServletRequest,Map<String,String> paramsMap) {
@@ -173,4 +196,98 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         return new Result(ResultCode.SUCCESS,sysUserPage);
     }
 
+  
+    
+    //
+    @Override
+    public Result findUserAccount(String searchStr, int pageNum, int pageSize, Long userId) {
+
+        QueryWrapper<SysUser> wrapper = new QueryWrapper<>();
+        wrapper.like("pids",userId).or().eq("id",userId);
+        IPage<SysUser> page = this.page(new Page<>(pageNum, pageSize), wrapper);
+        return new Result(ResultCode.SUCCESS,page);
+    }
+
+    @Override
+    public Result add(SysUser sysUser, Integer userId) {
+
+        int account = this.count(new QueryWrapper<SysUser>().eq("account_num", sysUser.getAccountNum()));
+        if (account > 0 ){
+            return new Result(10001,"该账号已经存在,请重新创建",false);
+
+        }
+
+        SysUser byId = this.getById(userId);
+
+
+        sysUser.setPid(userId);
+        sysUser.setPids(byId.getPids()+","+userId);
+        userMapper.insert(sysUser);
+        return  new Result( 10000,"添加成功",true);
+    }
+
+    @Override
+    public Result setAccountStatus(List<Integer> ids, Integer status) {
+        try {
+            for (Integer id : ids) {
+                SysUser account= new SysUser();
+                account.setId(Long.valueOf(id));
+                account.setAccoutType(status);
+                this.updateById(account);
+            }
+        }catch (Exception e){
+            return new Result(10001,"插入失败",false);
+        }
+        String message = "";
+        if(status == 1){
+            message = "你选择的账号已经启用。";
+        }else{
+            message = "你选择的账号已经暂停启用。";
+        }
+        return new Result(10000,message,true);
+    }
+
+    @Override
+    public List<Long> getAllChildId(Long userId) {
+        List<SysUser> pids = this.list(new QueryWrapper<SysUser>().like("pids", userId + ""));
+        List<Long> list = new ArrayList<>();
+        for (SysUser pid : pids) {
+            list.add(pid.getId());
+        }
+        list.add(userId);
+        return list;
+    }
+
+    @Override
+    public Result listSubordinate(String searchStr, int pageNum, int pageSize, Long userId) {
+
+        QueryWrapper<SysUser> wrapper = new QueryWrapper<>();
+        wrapper.like("pids",userId);
+        if (StringUtils.isNotBlank(searchStr)){
+            wrapper.like("user_name",searchStr);
+        }
+
+        IPage<SysUser> page = this.page(new Page<>(pageNum, pageSize), wrapper);
+        return new Result(ResultCode.SUCCESS,page);
+    }
+
+    @Override
+    public Result getLastFarmId(Integer userId) {
+        SysUser sysUser = userMapper.selectById(userId);
+        Integer lastFarmId = sysUser.getLastVeter();
+        String farmIds = sysUser.getVeterIds();
+        if (farmIds == null){
+            return new Result(10001,"该账号没有绑定兽医站",true);
+        }
+        if (lastFarmId == null){
+            String[] split = farmIds.split(",");
+            String s = split[0];
+            sysUser.setLastVeter(Integer.valueOf(s));
+            userMapper.updateById(sysUser);
+            return new Result(ResultCode.SUCCESS,s);
+        }
+        return new Result(ResultCode.SUCCESS,lastFarmId);
+    }
+
+
 }

+ 9 - 0
admin/src/main/resources/com/huimv/farm/damsubsidy/mapper/AccountGroupMapper.xml

@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huimv.farm.damsubsidy.mapper.AccountGroupMapper">
+
+
+    <delete id="removeAccountGroup">
+        DELETE FROM sys_account_group WHERE group_id=#{groupIds}
+    </delete>
+</mapper>

+ 10 - 0
admin/src/main/resources/com/huimv/farm/damsubsidy/mapper/GroupMenuMapper.xml

@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huimv.farm.damsubsidy.mapper.GroupMenuMapper">
+
+
+
+    <delete id="removeGroupMenu">
+        DELETE FROM sys_group_menu WHERE group_id=#{groupId}
+    </delete>
+</mapper>

+ 24 - 0
admin/src/main/resources/com/huimv/farm/damsubsidy/mapper/MenuMapper.xml

@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.huimv.farm.damsubsidy.mapper.MenuMapper">
+
+
+    <select id="getMyMenu" resultType="com.huimv.farm.damsubsidy.entity.Menu">
+        SELECT * FROM sys_menu
+        WHERE id IN
+        (SELECT DISTINCT(menu_id) FROM sys_group_menu WHERE group_id IN
+        (SELECT group_id FROM sys_account_group WHERE
+        account_id=#{accountName} ))
+        ORDER BY sort ASC
+    </select>
+
+
+    <select id="getMyButton" resultType="string">
+        SELECT permission FROM sys_menu
+        WHERE id IN
+        (SELECT DISTINCT(menu_id) FROM sys_group_menu WHERE group_id IN
+        (SELECT group_id FROM sys_account_group WHERE
+        account_id=#{userId})) and weight =1
+        ORDER BY sort ASC
+    </select>
+</mapper>

admin/src/main/resources/mapper/PovertyUserRegistMapper.xml → admin/src/main/resources/com/huimv/farm/damsubsidy/mapper/PovertyUserRegistMapper.xml