From 9ba848b72c9c1f3541f45446a1237a46c45f8316 Mon Sep 17 00:00:00 2001 From: yuan <3558860895@qq.com> Date: Tue, 19 Nov 2024 00:57:18 +0800 Subject: [PATCH] =?UTF-8?q?=E5=89=8D=E7=AB=AF=E7=99=BB=E5=BD=95=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E6=9D=83=E9=99=90=E8=AE=A4=E8=AF=86=EF=BC=8C=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E5=AD=A6=E7=94=9F=E7=AB=AF=E8=AF=95=E5=8D=B7=E4=B8=AD?= =?UTF-8?q?=E5=BF=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/system/SysLoginController.java | 13 +- .../controller/system/SysRoleController.java | 3 + .../web/service/SysLoginService.java | 10 +- .../ruoyi/system/mapper/SysRoleMapper.java | 3 + .../system/mapper/SysUserRoleMapper.java | 5 + .../ruoyi/system/service/ISysRoleService.java | 5 + .../service/impl/SysRoleServiceImpl.java | 5 + .../resources/mapper/system/SysRoleMapper.xml | 2 +- .../mapper/system/SysUserRoleMapper.xml | 4 + vue2/vue/src/components/Aside.vue | 45 ++++ vue2/vue/src/components/Header.vue | 32 +++ vue2/vue/src/components/Login.vue | 91 +++++-- vue2/vue/src/router/index.js | 5 + vue2/vue/src/views/HomeView.vue | 83 +----- vue2/vue/src/views/Student/Exam.vue | 253 ++++++++++++++++++ vue2/vue/src/views/Teacher/Class.vue | 212 +++++++++++++++ 16 files changed, 662 insertions(+), 109 deletions(-) create mode 100644 vue2/vue/src/components/Aside.vue create mode 100644 vue2/vue/src/components/Header.vue create mode 100644 vue2/vue/src/views/Student/Exam.vue create mode 100644 vue2/vue/src/views/Teacher/Class.vue diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java index d0f4336..6f73f26 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java @@ -2,6 +2,8 @@ package com.ruoyi.web.controller.system; import java.util.List; import java.util.Set; + +import com.ruoyi.system.service.ISysRoleService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -27,6 +29,9 @@ import com.ruoyi.system.service.ISysMenuService; @RestController public class SysLoginController { + @Autowired + private ISysRoleService roleService; + @Autowired private SysLoginService loginService; @@ -48,13 +53,12 @@ public class SysLoginController @PostMapping("/login") public AjaxResult login(@RequestBody LoginBody loginBody) { - System.out.println("==============="+loginBody.getUuid()); - AjaxResult ajax = AjaxResult.success(); // 生成令牌 String token = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid()); ajax.put(Constants.TOKEN, token); + System.out.println("======="+ajax); return ajax; } @@ -81,6 +85,11 @@ public class SysLoginController ajax.put("user", user); ajax.put("roles", roles); ajax.put("permissions", permissions); + Long roleId = roleService.getRoleByUserId(user.getUserId()); + roleService.checkRoleDataScope(roleId); + ajax.put("role", roleService.selectRoleById(roleId).getRoleName()); + + System.out.println("------------------"+ajax); return ajax; } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java index 42d9e8f..566fa92 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRoleController.java @@ -2,6 +2,8 @@ package com.ruoyi.web.controller.system; import java.util.List; import javax.servlet.http.HttpServletResponse; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.validation.annotation.Validated; @@ -259,4 +261,5 @@ public class SysRoleController extends BaseController ajax.put("depts", deptService.selectDeptTreeList(new SysDept())); return ajax; } + } diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java index 24d5a90..d916dc3 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java @@ -63,7 +63,6 @@ public class SysLoginService */ public String login(String username, String password, String code, String uuid) { - System.out.println("======"+uuid); // 验证码校验 validateCaptcha(username, code, uuid); // 登录前置校验 @@ -179,4 +178,13 @@ public class SysLoginService sysUser.setLoginDate(DateUtils.getNowDate()); userService.updateUserProfile(sysUser); } + + /** + * 校验角色身份 + * + * @ + */ + public boolean checkrole(){ + return true; + } } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java index cf2bd8c..7146183 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRoleMapper.java @@ -1,6 +1,8 @@ package com.ruoyi.system.mapper; import java.util.List; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.common.core.domain.entity.SysRole; /** @@ -104,4 +106,5 @@ public interface SysRoleMapper * @return 结果 */ public int deleteRoleByIds(Long[] roleIds); + } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserRoleMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserRoleMapper.java index 3143ec8..4711690 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserRoleMapper.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserRoleMapper.java @@ -59,4 +59,9 @@ public interface SysUserRoleMapper * @return 结果 */ public int deleteUserRoleInfos(@Param("roleId") Long roleId, @Param("userIds") Long[] userIds); + + /** + * 获取user对应的角色id + */ + public Long getRoleByUserId(Long userId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java index 9185cce..674f0c7 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRoleService.java @@ -170,4 +170,9 @@ public interface ISysRoleService * @return 结果 */ public int insertAuthUsers(Long roleId, Long[] userIds); + + /** + * 获取对应user的角色id + */ + public Long getRoleByUserId(Long userId); } diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java index e432bb1..deca952 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java @@ -424,4 +424,9 @@ public class SysRoleServiceImpl implements ISysRoleService } return userRoleMapper.batchUserRole(list); } + + @Override + public Long getRoleByUserId(Long userId){ + return userRoleMapper.getRoleByUserId(userId); + } } diff --git a/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml index 955d4ee..d86ea1e 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml @@ -148,5 +148,5 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{roleId} - + \ No newline at end of file diff --git a/ruoyi-system/src/main/resources/mapper/system/SysUserRoleMapper.xml b/ruoyi-system/src/main/resources/mapper/system/SysUserRoleMapper.xml index dd72689..b467434 100644 --- a/ruoyi-system/src/main/resources/mapper/system/SysUserRoleMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/system/SysUserRoleMapper.xml @@ -41,4 +41,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{userId} + + \ No newline at end of file diff --git a/vue2/vue/src/components/Aside.vue b/vue2/vue/src/components/Aside.vue new file mode 100644 index 0000000..2d22c62 --- /dev/null +++ b/vue2/vue/src/components/Aside.vue @@ -0,0 +1,45 @@ + + + + + + \ No newline at end of file diff --git a/vue2/vue/src/components/Header.vue b/vue2/vue/src/components/Header.vue new file mode 100644 index 0000000..212745e --- /dev/null +++ b/vue2/vue/src/components/Header.vue @@ -0,0 +1,32 @@ + + + + + + \ No newline at end of file diff --git a/vue2/vue/src/components/Login.vue b/vue2/vue/src/components/Login.vue index e23fcb0..2ca84b5 100644 --- a/vue2/vue/src/components/Login.vue +++ b/vue2/vue/src/components/Login.vue @@ -3,20 +3,35 @@

登录

+ +
+ + +
+ +
+ +
+ +
- 验证码
+ +

没有账户?注册

@@ -24,18 +39,18 @@
- @@ -139,13 +170,14 @@ export default { color: #aaa; } -.input-group input { +.input-group input, +.input-group select { width: 100%; padding: 10px 10px 10px 30px; border: none; border-radius: 4px; - background-color: #465675; - color: #fff; + background-color: #e8f0fe; /* Set background color to #e8f0fe */ + color: #333; /* Set text color to dark for readability */ } .captcha-image { @@ -170,3 +202,4 @@ export default { background-color: #0056b3; } + diff --git a/vue2/vue/src/router/index.js b/vue2/vue/src/router/index.js index 35cc7b7..a783ae6 100644 --- a/vue2/vue/src/router/index.js +++ b/vue2/vue/src/router/index.js @@ -8,6 +8,11 @@ import store from '../store'; // 引入 Vuex store Vue.use(VueRouter); const routes = [ + { + path:'/student/exam', + component: () => import(/* webpackChunkName: "about" */ '../views/Student/Exam.vue'), + meta: {requiresAuth: true} + }, { path: '/', name: 'home', diff --git a/vue2/vue/src/views/HomeView.vue b/vue2/vue/src/views/HomeView.vue index 59d8ecc..e8cfb48 100644 --- a/vue2/vue/src/views/HomeView.vue +++ b/vue2/vue/src/views/HomeView.vue @@ -1,85 +1,12 @@