From cd82e959bc407cc2a62a11b3ef9156cfd21d7e16 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期二, 10 十二月 2024 10:04:14 +0800
Subject: [PATCH] 新增加管理后台接口和优化购物接口

---
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java |   50 ++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 38 insertions(+), 12 deletions(-)

diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java
index cf387cb..b841724 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java
@@ -11,6 +11,7 @@
 import com.ruoyi.common.core.web.page.TableDataInfo;
 import com.ruoyi.common.log.annotation.Log;
 import com.ruoyi.common.log.enums.BusinessType;
+import com.ruoyi.common.security.service.TokenService;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.system.api.domain.SysDept;
 import com.ruoyi.system.api.domain.SysRole;
@@ -68,25 +69,41 @@
 	@Resource
 	private SysMenuMapper menuMapper;
 	
+	@Resource
+	private TokenService tokenService;
 	
-	@ApiOperation(value = "获取角色列表", tags = {"管理后台-系统用户管理"})
+	@Resource
+	private ISysUserService sysUserService;
+	
+	
+	@ApiOperation(value = "获取角色列表", tags = {"管理后台-账号管理", "门店后台-账号管理"})
 	@GetMapping("/list")
 	public AjaxResult list() {
-		List<SysRole> list = roleService.list(new LambdaQueryWrapper<SysRole>().eq(SysRole::getDelFlag, 0).eq(SysRole::getStatus, 0));
+		Long userid = tokenService.getLoginUser().getUserid();
+		SysUser sysUser = sysUserService.getById(userid);
+		LambdaQueryWrapper<SysRole> wrapper = new LambdaQueryWrapper<SysRole>().eq(SysRole::getDelFlag, 0).eq(SysRole::getStatus, 0);
+		if(sysUser.getRoleType() == 2){
+			wrapper.eq(SysRole::getShopId, sysUser.getObjectId());
+		}
+		List<SysRole> list = roleService.list(wrapper);
 		return AjaxResult.success(list);
 	}
 	
 	
 	@ResponseBody
 	@GetMapping("/listPage")
-	@ApiOperation(value = "获取角色列表", tags = {"管理后台-角色管理"})
+	@ApiOperation(value = "获取角色列表", tags = {"管理后台-权限管理", "门店后台-权限管理"})
 	public AjaxResult listPage(String name, BasePage basePage) {
 		PageInfo<SysRole> pageInfo = new PageInfo<>(basePage.getPageCurr(), basePage.getPageSize());
 		LambdaQueryWrapper<SysRole> wrapper = new LambdaQueryWrapper<SysRole>().eq(SysRole::getStatus, 0).eq(SysRole::getDelFlag, 0);
 		if (StringUtils.isNotEmpty(name)) {
 			wrapper.like(SysRole::getRoleName, name);
 		}
-		
+		Long userid = tokenService.getLoginUser().getUserid();
+		SysUser sysUser = sysUserService.getById(userid);
+		if(sysUser.getRoleType() == 2){
+			wrapper.eq(SysRole::getShopId, sysUser.getObjectId());
+		}
 		PageInfo<SysRole> page = roleService.page(pageInfo, wrapper.orderByDesc(SysRole::getCreateTime));
 		for (SysRole record : page.getRecords()) {
 			long count = sysUserRoleService.count(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getRoleId, record.getRoleId()));
@@ -98,13 +115,19 @@
 	
 	@ResponseBody
 	@PostMapping("/roleAdd")
-	@ApiOperation(value = "添加角色", tags = {"管理后台-角色管理"})
-	@GlobalTransactional(rollbackFor = Exception.class)//分布式事务
+	@ApiOperation(value = "添加角色", tags = {"管理后台-权限管理", "门店后台-权限管理"})
 	public AjaxResult roleAdd(@Validated @RequestBody RoleAddDto dto) {
 		SysRole role = new SysRole();
 		role.setRoleName(dto.getRoleName());
-		long count = roleService.count(Wrappers.lambdaQuery(SysRole.class)
-				.eq(SysRole::getRoleName, dto.getRoleName()));
+		LambdaQueryWrapper<SysRole> wrapper = Wrappers.lambdaQuery(SysRole.class)
+				.eq(SysRole::getRoleName, dto.getRoleName());
+		Long userid = tokenService.getLoginUser().getUserid();
+		SysUser sysUser = sysUserService.getById(userid);
+		if(sysUser.getRoleType() == 2){
+			wrapper.eq(SysRole::getShopId, sysUser.getObjectId());
+		}
+		
+		long count = roleService.count(wrapper);
 		if (count > 0) {
 			return AjaxResult.error("角色已存在,请重新输入");
 		}
@@ -117,13 +140,17 @@
 		role.setRemark(dto.getRemark());
 		role.setCreateBy(SecurityUtils.getUsername());
 		role.setCreateTime(new Date());
+		
+		if(sysUser.getRoleType() == 2){
+			role.setShopId(sysUser.getObjectId());
+		}
 		roleService.insertRole(role);
 		return AjaxResult.success();
 	}
 	
 	
 	@GetMapping("/roleInfo")
-	@ApiOperation(value = "角色详情", tags = {"管理后台-角色管理"})
+	@ApiOperation(value = "角色详情", tags = {"管理后台-权限管理"})
 	public AjaxResult roleInfo(@RequestParam Long id) {
 		SysRole role = roleService.selectRoleById(id);
 		RoleInfoVo roleInfoVo = new RoleInfoVo();
@@ -159,8 +186,7 @@
 	
 	
 	@PostMapping("/roleUpdate")
-	@ApiOperation(value = "编辑角色", tags = {"管理后台-角色管理"})
-	@GlobalTransactional(rollbackFor = Exception.class)//分布式事务
+	@ApiOperation(value = "编辑角色", tags = {"管理后台-权限管理"})
 	public AjaxResult roleUpdate(@Validated @RequestBody RoleUpdateDto dto) {
 		SysRole role = new SysRole();
 		role.setRoleName(dto.getRoleName());
@@ -206,7 +232,7 @@
 	 */
 	@Log(title = "角色管理", businessType = BusinessType.DELETE)
 	@DeleteMapping("/{roleIds}")
-	@ApiOperation(value = "删除角色", tags = {"管理后台-角色管理"})
+	@ApiOperation(value = "删除角色", tags = {"管理后台-权限管理"})
 	public AjaxResult remove(@PathVariable Long[] roleIds) {
 		return toAjax(roleService.deleteRoleByIds(roleIds));
 	}

--
Gitblit v1.7.1