xiaof 4 ani în urmă
părinte
comite
7138437904
15 a modificat fișierele cu 288 adăugiri și 74 ștergeri
  1. 59 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/ExamTaskTempDto.java
  2. 35 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/MenuDto.java
  3. 5 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/SysUserRoleMapper.java
  4. 4 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/SysRolePrivilegeService.java
  5. 7 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/SysUserRoleService.java
  6. 16 16
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskServiceImpl.java
  7. 8 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/SysRolePrivilegeServiceImpl.java
  8. 11 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/SysRoleServiceImpl.java
  9. 66 0
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/SysUserRoleServiceImpl.java
  10. 31 8
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/SysUserServiceImpl.java
  11. 5 5
      distributed-print-business/src/main/java/com/qmth/distributed/print/business/util/AuthUtil.java
  12. 10 41
      distributed-print-business/src/main/resources/db/init-table.sql
  13. 19 3
      distributed-print-business/src/main/resources/mapper/SysUserRoleMapper.xml
  14. 1 1
      distributed-print/src/main/java/com/qmth/distributed/print/api/ExamTaskController.java
  15. 11 0
      distributed-print/src/main/java/com/qmth/distributed/print/api/SysController.java

+ 59 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/ExamTaskTempDto.java

@@ -0,0 +1,59 @@
+package com.qmth.distributed.print.business.bean.dto;
+
+public class ExamTaskTempDto {
+
+    private String courseCode;
+    private String courseName;
+    private String paperNumber;
+    private String specialty;
+    private String userAccount;
+    private String userName;
+
+    public String getCourseCode() {
+        return courseCode;
+    }
+
+    public void setCourseCode(String courseCode) {
+        this.courseCode = courseCode;
+    }
+
+    public String getCourseName() {
+        return courseName;
+    }
+
+    public void setCourseName(String courseName) {
+        this.courseName = courseName;
+    }
+
+    public String getPaperNumber() {
+        return paperNumber;
+    }
+
+    public void setPaperNumber(String paperNumber) {
+        this.paperNumber = paperNumber;
+    }
+
+    public String getSpecialty() {
+        return specialty;
+    }
+
+    public void setSpecialty(String specialty) {
+        this.specialty = specialty;
+    }
+
+    public String getUserAccount() {
+        return userAccount;
+    }
+
+    public void setUserAccount(String userAccount) {
+        this.userAccount = userAccount;
+    }
+
+    public String getUserName() {
+        return userName;
+    }
+
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+}

+ 35 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/dto/MenuDto.java

@@ -0,0 +1,35 @@
+package com.qmth.distributed.print.business.bean.dto;
+
+/**
+ * @Date: 2021/4/13.
+ */
+public class MenuDto {
+
+    private String id;
+    private String name;
+    private String url;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getUrl() {
+        return url;
+    }
+
+    public void setUrl(String url) {
+        this.url = url;
+    }
+}

+ 5 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/SysUserRoleMapper.java

@@ -1,6 +1,7 @@
 package com.qmth.distributed.print.business.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.qmth.distributed.print.business.bean.dto.MenuDto;
 import com.qmth.distributed.print.business.entity.SysRole;
 import com.qmth.distributed.print.business.entity.SysUserRole;
 
@@ -17,4 +18,8 @@ import java.util.List;
 public interface SysUserRoleMapper extends BaseMapper<SysUserRole> {
 
     List<SysRole> listRoleByUserId(Long userId);
+
+    List<MenuDto> listByUserId(Long userId);
+
+    List<MenuDto> listAll();
 }

+ 4 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/SysRolePrivilegeService.java

@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.qmth.distributed.print.business.entity.SysRole;
 import com.qmth.distributed.print.business.entity.SysRolePrivilege;
 
+import java.util.List;
+
 /**
  * <p>
  * 角色和菜单关联表 服务类
@@ -17,4 +19,6 @@ public interface SysRolePrivilegeService extends IService<SysRolePrivilege> {
     void removeByRoleId(Long id);
 
     void saveBatch(SysRole role);
+
+    List<SysRolePrivilege> listByRoleId(Long roleId);
 }

+ 7 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/SysUserRoleService.java

@@ -1,6 +1,7 @@
 package com.qmth.distributed.print.business.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.qmth.distributed.print.business.bean.dto.MenuDto;
 import com.qmth.distributed.print.business.entity.SysRole;
 import com.qmth.distributed.print.business.entity.SysUserRole;
 
@@ -19,4 +20,10 @@ public interface SysUserRoleService extends IService<SysUserRole> {
     List<SysUserRole> listByRoleId(Long id);
 
     List<SysRole> listRoleByUserId(Long id);
+
+    void removeByUserId(Long id);
+
+    List<MenuDto> listByUserId();
+
+    void rebindPrivileges(Long id);
 }

+ 16 - 16
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskServiceImpl.java

@@ -194,12 +194,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
 
     @Override
     public ExamTaskImportDto importFile(MultipartFile file) throws IOException, NoSuchFieldException {
-        // 学校ID
-        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
-        // 用户
-        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
-
-        List<LinkedMultiValueMap<Integer, Object>> finalList = ExcelUtil.excelReader(file.getInputStream(), Lists.newArrayList(ExamTaskTemp.class), (finalExcelList, finalColumnNameList, finalExcelErrorList) -> {
+        List<LinkedMultiValueMap<Integer, Object>> finalList = ExcelUtil.excelReader(file.getInputStream(), Lists.newArrayList(ExamTaskTempDto.class), (finalExcelList, finalColumnNameList, finalExcelErrorList) -> {
             List<ExcelError> excelErrorTemp = new ArrayList<>();
             // 只允许导入一个sheet
             if(finalExcelList.size() > 1){
@@ -209,7 +204,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                 LinkedMultiValueMap<Integer, Object> excelMap = finalExcelList.get(i);
                 List<Object> examTaskTempList = excelMap.get(i);
                 for (int y = 0; y < examTaskTempList.size(); y++) {
-                    ExamTaskTemp userImportDto = (ExamTaskTemp) examTaskTempList.get(y);
+                    ExamTaskTempDto userImportDto = (ExamTaskTempDto) examTaskTempList.get(y);
                     if (StringUtils.isBlank(userImportDto.getCourseCode())) {
                         excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[课程代码]必填"));
                     }
@@ -230,11 +225,6 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                     if (StringUtils.isBlank(userImportDto.getPaperNumber())) {
                         excelErrorTemp.add(new ExcelError(y + 1, "excel第" + (i + 1) + "个sheet第" + (y + 1) + "行[试卷编号]必填"));
                     }
-
-                    userImportDto.setId(SystemConstant.getDbUuid());
-                    userImportDto.setSchoolId(schoolId);
-                    userImportDto.setCreateId(sysUser.getId());
-                    userImportDto.setCreateTime(System.currentTimeMillis());
                 }
             }
             if (excelErrorTemp.size() > 0) {
@@ -247,7 +237,12 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
 
     @Transactional
     ExamTaskImportDto executeImportExamTaskBatch(List<LinkedMultiValueMap<Integer, Object>> finalList) {
+        // 学校ID
+        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        // 用户
+        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         // 批次号
+        Gson gson = new Gson();
         String batchNo = String.valueOf(System.nanoTime());
         ExamTaskImportDto examTaskImportDto = new ExamTaskImportDto();
         examTaskImportDto.setBatchNo(batchNo);
@@ -256,8 +251,13 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
             LinkedMultiValueMap<Integer, Object> excelMap = finalList.get(i);
             List<Object> examTaskTempList = excelMap.get(i);
             for (int y = 0; y < examTaskTempList.size(); y++) {
-                ExamTaskTemp examTaskTemp = (ExamTaskTemp) examTaskTempList.get(y);
+                ExamTaskTempDto examTaskTempDto = (ExamTaskTempDto) examTaskTempList.get(y);
+                ExamTaskTemp examTaskTemp = gson.fromJson(gson.toJson(examTaskTempDto), ExamTaskTemp.class);
+                examTaskTemp.setId(SystemConstant.getDbUuid());
                 examTaskTemp.setBatchNo(batchNo);
+                examTaskTemp.setSchoolId(schoolId);
+                examTaskTemp.setCreateId(sysUser.getId());
+                examTaskTemp.setCreateTime(System.currentTimeMillis());
                 //保存
                 examTaskTempService.save(examTaskTemp);
 
@@ -272,11 +272,11 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
                 } else {
                     QueryWrapper<SysUser> queryWrapper = new QueryWrapper<>();
                     queryWrapper.lambda().eq(SysUser::getLoginName, examTaskTemp.getUserAccount());
-                    SysUser sysUser = sysUserService.getOne(queryWrapper);
-                    if(sysUser == null){
+                    SysUser sysUser1 = sysUserService.getOne(queryWrapper);
+                    if(sysUser1 == null){
                         examTaskDto.setUsers( listUsers(examTaskTemp.getCourseCode(), null));
                     } else {
-                        examTaskDto.setUsers(listUsers(examTaskTemp.getCourseCode(), String.valueOf(sysUser.getId())));
+                        examTaskDto.setUsers(listUsers(examTaskTemp.getCourseCode(), String.valueOf(sysUser1.getId())));
                     }
                 }
                 tasks.add(examTaskDto);

+ 8 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/SysRolePrivilegeServiceImpl.java

@@ -1,5 +1,6 @@
 package com.qmth.distributed.print.business.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.qmth.distributed.print.business.entity.SysRole;
@@ -40,4 +41,11 @@ public class SysRolePrivilegeServiceImpl extends ServiceImpl<SysRolePrivilegeMap
         }
         this.saveBatch(list);
     }
+
+    @Override
+    public List<SysRolePrivilege> listByRoleId(Long roleId) {
+        QueryWrapper<SysRolePrivilege> queryWrapper = new QueryWrapper<>();
+        queryWrapper.lambda().eq(SysRolePrivilege::getRoleId, roleId);
+        return this.list(queryWrapper);
+    }
 }

+ 11 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/SysRoleServiceImpl.java

@@ -10,6 +10,7 @@ import com.qmth.distributed.print.business.entity.SysUser;
 import com.qmth.distributed.print.business.entity.SysUserRole;
 import com.qmth.distributed.print.business.enums.RoleTypeEnum;
 import com.qmth.distributed.print.business.mapper.SysRoleMapper;
+import com.qmth.distributed.print.business.service.CacheService;
 import com.qmth.distributed.print.business.service.SysRolePrivilegeService;
 import com.qmth.distributed.print.business.service.SysRoleService;
 import com.qmth.distributed.print.business.service.SysUserRoleService;
@@ -41,6 +42,9 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
     @Autowired
     private SysRolePrivilegeService sysRolePrivilegeService;
 
+    @Autowired
+    private CacheService cacheService;
+
     @Override
     public IPage<SysRole> list(String name, Boolean enable, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
@@ -92,6 +96,13 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
             sysRolePrivilegeService.saveBatch(role);
 //        }
 
+        // 更新sys_user_role
+        sysUserRoleService.rebindPrivileges(role.getId());
+
+        // 清除缓存
+        cacheService.removeUserAuthCache(sysUser.getId());
+        cacheService.removeRolePrivilegeCache(role.getId());
+
         return isSuccess;
     }
 

+ 66 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/SysUserRoleServiceImpl.java

@@ -1,14 +1,27 @@
 package com.qmth.distributed.print.business.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.qmth.distributed.print.business.bean.dto.MenuDto;
 import com.qmth.distributed.print.business.entity.SysRole;
+import com.qmth.distributed.print.business.entity.SysRolePrivilege;
+import com.qmth.distributed.print.business.entity.SysUser;
 import com.qmth.distributed.print.business.entity.SysUserRole;
+import com.qmth.distributed.print.business.enums.RoleTypeEnum;
 import com.qmth.distributed.print.business.mapper.SysUserRoleMapper;
+import com.qmth.distributed.print.business.service.SysRolePrivilegeService;
+import com.qmth.distributed.print.business.service.SysRoleService;
 import com.qmth.distributed.print.business.service.SysUserRoleService;
+import com.qmth.distributed.print.business.util.ServletUtil;
+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;
+import java.util.Set;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -21,6 +34,12 @@ import java.util.List;
 @Service
 public class SysUserRoleServiceImpl extends ServiceImpl<SysUserRoleMapper, SysUserRole> implements SysUserRoleService {
 
+    @Autowired
+    private SysRoleService sysRoleService;
+
+    @Autowired
+    private SysRolePrivilegeService sysRolePrivilegeService;
+
     @Override
     public List<SysUserRole> listByRoleId(Long id) {
         QueryWrapper<SysUserRole> queryWrapper = new QueryWrapper<>();
@@ -32,4 +51,51 @@ public class SysUserRoleServiceImpl extends ServiceImpl<SysUserRoleMapper, SysUs
     public List<SysRole> listRoleByUserId(Long userId) {
         return this.baseMapper.listRoleByUserId(userId);
     }
+
+    @Override
+    public void removeByUserId(Long id) {
+        UpdateWrapper<SysUserRole> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.lambda().eq(SysUserRole::getUserId, id);
+        this.remove(updateWrapper);
+    }
+
+    @Override
+    public List<MenuDto> listByUserId() {
+        SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
+        List<SysRole> sysRole = sysRoleService.listRolesByUserId(sysUser.getId());
+        for (SysRole role : sysRole) {
+            if(RoleTypeEnum.ADMIN.name().equals(role.getType().name())){
+                return this.baseMapper.listAll();
+            }
+        }
+        return this.baseMapper.listByUserId(sysUser.getId());
+    }
+
+    @Override
+    public void rebindPrivileges(Long roleId) {
+        // 查询绑定该角色的所有用户
+        List<SysUserRole> sysUserRoles = this.listByRoleId(roleId);
+        Set<Long> userIds = sysUserRoles.stream().map(m->m.getUserId()).collect(Collectors.toSet());
+        //删除
+        UpdateWrapper<SysUserRole> userRoleUpdateWrapper = new UpdateWrapper<>();
+        userRoleUpdateWrapper.lambda().in(SysUserRole::getUserId, userIds);
+        List<SysUserRole> list = new ArrayList<>();
+
+        for (Long userId : userIds) {
+            List<SysRole> sysRoles = this.listRoleByUserId(userId);
+            for (SysRole role : sysRoles) {
+                List<SysRolePrivilege> rolePrivileges = sysRolePrivilegeService.listByRoleId(role.getId());
+                for (SysRolePrivilege rolePrivilege : rolePrivileges) {
+                    SysUserRole userRole = new SysUserRole();
+                    userRole.setUserId(userId);
+                    userRole.setRoleId(role.getId());
+                    userRole.setPrivilegeId(rolePrivilege.getPrivilegeId());
+                    list.add(userRole);
+                }
+            }
+
+        }
+
+        this.saveBatch(list);
+    }
 }

+ 31 - 8
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/SysUserServiceImpl.java

@@ -1,6 +1,7 @@
 package com.qmth.distributed.print.business.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.Update;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -56,9 +57,15 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
     @Autowired
     private SysUserRoleService sysUserRoleService;
 
+    @Autowired
+    private SysRolePrivilegeService sysRolePrivilegeService;
+
     @Resource
     SysUserMapper sysUserMapper;
 
+    @Autowired
+    CacheService cacheService;
+
     @Override
     public IPage<UserDto> list(String realName, String roleId, Boolean enable, Integer pageNumber, Integer pageSize) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
@@ -127,10 +134,15 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
         //新增用户-角色
         for (Long roleId : user.getRoleIds()) {
-            SysUserRole sysUserRole = new SysUserRole();
-            sysUserRole.setUserId(user.getId());
-            sysUserRole.setRoleId(roleId);
-            sysUserRoleService.save(sysUserRole);
+            List<SysRolePrivilege> rolePrivileges = sysRolePrivilegeService.listByRoleId(roleId);
+            for (SysRolePrivilege rolePrivilege : rolePrivileges) {
+                SysUserRole userRole = new SysUserRole();
+                userRole.setUserId(sysUser.getId());
+                userRole.setRoleId(roleId);
+                userRole.setPrivilegeId(rolePrivilege.getPrivilegeId());
+                sysUserRoleService.save(userRole);
+            }
+            cacheService.removeRolePrivilegeCache(roleId);
         }
 
         // 角色里是否有考务老师角色
@@ -145,6 +157,9 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
 
         }
 
+        // 清除缓存
+        cacheService.removeUserAuthCache(user.getId());
+
         return isSuccess;
     }
 
@@ -189,12 +204,20 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         if(roleIds.length == 0){
             throw ExceptionResultEnum.ERROR.exception("请选择角色");
         }
+
+        // 删除
+        sysUserRoleService.removeByUserId(sysUser.getId());
+
         List<SysUserRole> list = new ArrayList<>();
         for (Long roleId : roleIds) {
-            SysUserRole userRole = new SysUserRole();
-            userRole.setUserId(sysUser.getId());
-            userRole.setRoleId(roleId);
-            list.add(userRole);
+            List<SysRolePrivilege> rolePrivileges = sysRolePrivilegeService.listByRoleId(roleId);
+            for (SysRolePrivilege rolePrivilege : rolePrivileges) {
+                SysUserRole userRole = new SysUserRole();
+                userRole.setUserId(sysUser.getId());
+                userRole.setRoleId(roleId);
+                userRole.setPrivilegeId(rolePrivilege.getPrivilegeId());
+                list.add(userRole);
+            }
         }
 
         // 角色里是否有考务老师角色

+ 5 - 5
distributed-print-business/src/main/java/com/qmth/distributed/print/business/util/AuthUtil.java

@@ -153,11 +153,11 @@ public class AuthUtil {
             return true;
         }
         //系统公用接口不拦截
-        List<String> sysUrls = cacheService.privilegeUrlCache(PrivilegePropertyEnum.SYS);
-        int sysCount = (int) sysUrls.stream().filter(s -> s.equalsIgnoreCase(url)).count();
-        if (sysCount > 0) {
-            return true;
-        }
+//        List<String> sysUrls = cacheService.privilegeUrlCache(PrivilegePropertyEnum.SYS);
+//        int sysCount = (int) sysUrls.stream().filter(s -> s.equalsIgnoreCase(url)).count();
+//        if (sysCount > 0) {
+//            return true;
+//        }
         Set<String> urls = authBean.getUrls();
         int privilegeCount = (int) urls.stream().filter(s -> s.equalsIgnoreCase(url)).count();
         if (privilegeCount == 0) {

Fișier diff suprimat deoarece este prea mare
+ 10 - 41
distributed-print-business/src/main/resources/db/init-table.sql


+ 19 - 3
distributed-print-business/src/main/resources/mapper/SysUserRoleMapper.xml

@@ -16,12 +16,28 @@
     <select id="listRoleByUserId" resultMap="com.qmth.distributed.print.business.mapper.SysRoleMapper.BaseResultMap">
         SELECT
             *
+        FROM
+            sys_role a
+        WHERE
+            EXISTS( SELECT
+                    1
+                FROM
+                    sys_user_role b
+                WHERE
+                    a.id = b.role_id AND b.user_id = #{userId})
+    </select>
+    <select id="listByUserId" resultType="com.qmth.distributed.print.business.bean.dto.MenuDto">
+        SELECT
+            b.id,b.name, b.url
         FROM
             sys_user_role a
-                LEFT JOIN
-            sys_role b ON a.role_id = b.id
+                JOIN
+            sys_privilege b ON a.privilege_id = b.id
         WHERE
-            a.user_id = #{userId}
+            a.user_id = #{userId} AND b.type = 'MENU'
+    </select>
+    <select id="listAll" resultType="com.qmth.distributed.print.business.bean.dto.MenuDto">
+        select id, name, url from sys_privilege where type = 'MENU'
     </select>
 
 </mapper>

+ 1 - 1
distributed-print/src/main/java/com/qmth/distributed/print/api/ExamTaskController.java

@@ -193,7 +193,7 @@ public class ExamTaskController {
      */
     @ApiOperation(value = "批量保存")
     @RequestMapping(value = "/save_batch", method = RequestMethod.POST)
-    public Result saveBatch(ExamTask task) {
+    public Result saveBatch(@RequestBody ExamTask task) {
         boolean isSuccess = examTaskService.saveBatch(task);
         return ResultUtil.ok(isSuccess);
     }

+ 11 - 0
distributed-print/src/main/java/com/qmth/distributed/print/api/SysController.java

@@ -9,6 +9,7 @@ import com.qmth.boot.core.enums.Platform;
 import com.qmth.boot.tools.signature.SignatureType;
 import com.qmth.distributed.print.business.bean.auth.AuthBean;
 import com.qmth.distributed.print.business.bean.auth.ExpireTimeBean;
+import com.qmth.distributed.print.business.bean.dto.MenuDto;
 import com.qmth.distributed.print.business.bean.params.LoginParam;
 import com.qmth.distributed.print.business.bean.result.EditResult;
 import com.qmth.distributed.print.business.bean.result.LoginResult;
@@ -83,6 +84,9 @@ public class SysController {
     @Autowired
     private SysConfigService sysConfigService;
 
+    @Autowired
+    private SysUserRoleService sysUserRoleService;
+
     /**
      * 登录
      *
@@ -322,4 +326,11 @@ public class SysController {
         BasicAttachment basicAttachment = basicAttachmentService.getById(Long.parseLong(id));
         return ResultUtil.ok(new EditResult(commonService.filePreview(basicAttachment.getPath())));
     }
+
+    @ApiOperation(value = "查询用户权限")
+    @RequestMapping(value = "/get_menu", method = RequestMethod.POST)
+    public Result getMenu() {
+        List<MenuDto> list = sysUserRoleService.listByUserId();
+        return ResultUtil.ok(list);
+    }
 }

Unele fișiere nu au fost afișate deoarece prea multe fișiere au fost modificate în acest diff