From 66b08a8defd022cd4bb708d63752c0dd1eeaae08 Mon Sep 17 00:00:00 2001 From: sunjiabei Date: Thu, 17 Jul 2025 10:43:14 +0800 Subject: [PATCH 1/9] =?UTF-8?q?=E9=80=80=E6=AC=BE=E7=B1=BB=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/mapper/RefundMapper.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/resources/mapper/RefundMapper.xml b/src/main/resources/mapper/RefundMapper.xml index db25452..a6405de 100644 --- a/src/main/resources/mapper/RefundMapper.xml +++ b/src/main/resources/mapper/RefundMapper.xml @@ -97,6 +97,9 @@ AND ugr.refund_model = #{refundModel} + + AND ugr.refund_type = #{refundType} + AND ugr.create_time BETWEEN #{startTime} AND #{endTime} From 53bf85aa4ab75f60efc1f0ec78297ccc66a272f6 Mon Sep 17 00:00:00 2001 From: sunjiabei Date: Thu, 17 Jul 2025 11:52:05 +0800 Subject: [PATCH 2/9] =?UTF-8?q?=E8=A7=92=E8=89=B2=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E9=83=A8=E5=88=86=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/example/demo/controller/RoleController.java | 20 +++++++++++++++++++- src/main/java/com/example/demo/domain/vo/Page.java | 1 + .../java/com/example/demo/domain/vo/RoleVo.java | 1 + .../java/com/example/demo/mapper/RoleMapper.java | 3 +++ .../java/com/example/demo/service/RoleService.java | 6 ++++++ .../example/demo/serviceImpl/RoleServiceImpl.java | 11 +++++++++++ src/main/resources/mapper/RoleMapper.xml | 21 +++++++++++++++++++++ 7 files changed, 62 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/example/demo/controller/RoleController.java b/src/main/java/com/example/demo/controller/RoleController.java index 4265642..31531ad 100644 --- a/src/main/java/com/example/demo/controller/RoleController.java +++ b/src/main/java/com/example/demo/controller/RoleController.java @@ -48,10 +48,28 @@ public class RoleController { } //获取上级角色的下属角色列表 @PostMapping("/selectSub") - public List selectSub(Integer fatherId) { + public List selectSub(Integer fatherId) { return roleService.selectSubRole(fatherId); } + //角色明细筛选 + @PostMapping("/selectBy") + public Result selectBy(@RequestBody Page page) { + try { + //页码校验 + if (ObjectUtils.isEmpty(page.getPageNum())) { + return Result.error("页码数为空!"); + } + //页面大小校验 + if (ObjectUtils.isEmpty(page.getPageSize())) { + return Result.error("页大小为空!"); + } else { + return Result.success(roleService.selectBy(page.getPageNum(), page.getPageSize(), page.getRoleVo())); + } + } catch (Exception e) { + return Result.error("请检查筛选数据的格式"); + } + } } diff --git a/src/main/java/com/example/demo/domain/vo/Page.java b/src/main/java/com/example/demo/domain/vo/Page.java index 72b26bf..b9f4919 100644 --- a/src/main/java/com/example/demo/domain/vo/Page.java +++ b/src/main/java/com/example/demo/domain/vo/Page.java @@ -27,4 +27,5 @@ public class Page { private RechargeAudit rechargeAudit; private RefundAudit refundAudit; private RechargeUser rechargeUser; + private RoleVo roleVo; } diff --git a/src/main/java/com/example/demo/domain/vo/RoleVo.java b/src/main/java/com/example/demo/domain/vo/RoleVo.java index 17c9616..fdcf846 100644 --- a/src/main/java/com/example/demo/domain/vo/RoleVo.java +++ b/src/main/java/com/example/demo/domain/vo/RoleVo.java @@ -28,6 +28,7 @@ public class RoleVo implements Serializable { private String roleKey; // 角色标识符 private Integer priority;//优先级 private Integer fatherId;//上级角色id + private Integer fatherName;//上级角色名称 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") private Date createTime; // 创建时间 diff --git a/src/main/java/com/example/demo/mapper/RoleMapper.java b/src/main/java/com/example/demo/mapper/RoleMapper.java index 1e9d624..282bbd6 100644 --- a/src/main/java/com/example/demo/mapper/RoleMapper.java +++ b/src/main/java/com/example/demo/mapper/RoleMapper.java @@ -33,4 +33,7 @@ public interface RoleMapper { void addRole(RoleVo roleVo); //根据父级id查下属角色 List selectByFatherId(Integer fatherId); + + //分页查找角色 + List selectBy(RoleVo roleVo); } diff --git a/src/main/java/com/example/demo/service/RoleService.java b/src/main/java/com/example/demo/service/RoleService.java index decce7e..1512e5b 100644 --- a/src/main/java/com/example/demo/service/RoleService.java +++ b/src/main/java/com/example/demo/service/RoleService.java @@ -1,8 +1,10 @@ package com.example.demo.service; +import com.example.demo.domain.vo.ConsumeUser; import com.example.demo.domain.vo.Result; import com.example.demo.domain.vo.RoleVo; +import com.github.pagehelper.PageInfo; import java.util.List; @@ -24,4 +26,8 @@ public interface RoleService { List selectAllRole(); //根据父级id查找下属角色 List selectSubRole(Integer fatherId); + + //分页查找角色 + PageInfo selectBy(Integer pageNum, Integer pageSize, RoleVo roleVo); + } diff --git a/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java index 2c18c4c..8651353 100644 --- a/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java @@ -1,12 +1,15 @@ package com.example.demo.serviceImpl; import com.example.demo.domain.entity.Role; +import com.example.demo.domain.vo.ConsumeUser; import com.example.demo.domain.vo.Result; import com.example.demo.domain.vo.RoleVo; import com.example.demo.mapper.RefundMapper; import com.example.demo.mapper.RoleMapper; import com.example.demo.service.MenuService; import com.example.demo.service.RoleService; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -74,6 +77,14 @@ public class RoleServiceImpl implements RoleService { public List selectSubRole(Integer fatherId) { return roleMapper.selectByFatherId(fatherId); } + + //分页查找角色 + @Override + public PageInfo selectBy(Integer pageNum, Integer pageSize, RoleVo roleVo) { + PageHelper.startPage(pageNum, pageSize); + List roleVos = roleMapper.selectBy(roleVo); + return new PageInfo<>(roleVos); + } } diff --git a/src/main/resources/mapper/RoleMapper.xml b/src/main/resources/mapper/RoleMapper.xml index a5abfe4..51e0cad 100644 --- a/src/main/resources/mapper/RoleMapper.xml +++ b/src/main/resources/mapper/RoleMapper.xml @@ -35,4 +35,25 @@ VALUES (#{roleName}, #{priority}, #{fatherId}) + + + + + \ No newline at end of file From 009571b7d0a7221334769cdf4d809f1fed49414e Mon Sep 17 00:00:00 2001 From: sunjiabei Date: Thu, 17 Jul 2025 13:27:24 +0800 Subject: [PATCH 3/9] =?UTF-8?q?=E8=A7=92=E8=89=B2=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../example/demo/controller/RoleController.java | 1 + .../java/com/example/demo/domain/vo/RoleVo.java | 6 +++++- .../example/demo/serviceImpl/RoleServiceImpl.java | 23 ++++++++++++++-------- src/main/resources/mapper/RoleMapper.xml | 4 ++-- 4 files changed, 23 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/example/demo/controller/RoleController.java b/src/main/java/com/example/demo/controller/RoleController.java index 31531ad..a8c54c1 100644 --- a/src/main/java/com/example/demo/controller/RoleController.java +++ b/src/main/java/com/example/demo/controller/RoleController.java @@ -68,6 +68,7 @@ public class RoleController { return Result.success(roleService.selectBy(page.getPageNum(), page.getPageSize(), page.getRoleVo())); } } catch (Exception e) { + e.printStackTrace(); return Result.error("请检查筛选数据的格式"); } diff --git a/src/main/java/com/example/demo/domain/vo/RoleVo.java b/src/main/java/com/example/demo/domain/vo/RoleVo.java index fdcf846..bbcaca4 100644 --- a/src/main/java/com/example/demo/domain/vo/RoleVo.java +++ b/src/main/java/com/example/demo/domain/vo/RoleVo.java @@ -2,6 +2,7 @@ package com.example.demo.domain.vo; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -20,6 +21,7 @@ import java.util.List; @Data @NoArgsConstructor +@AllArgsConstructor public class RoleVo implements Serializable { private static final long serialVersionUID = 1L; @@ -28,7 +30,7 @@ public class RoleVo implements Serializable { private String roleKey; // 角色标识符 private Integer priority;//优先级 private Integer fatherId;//上级角色id - private Integer fatherName;//上级角色名称 + private String fatherName;//上级角色名称 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") private Date createTime; // 创建时间 @@ -36,4 +38,6 @@ public class RoleVo implements Serializable { private Date updateTime; // 更新时间 List menuIds;//拥有的菜单id + + List tree;//菜单树 } diff --git a/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java index 8651353..d70aff4 100644 --- a/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java @@ -2,6 +2,7 @@ package com.example.demo.serviceImpl; import com.example.demo.domain.entity.Role; import com.example.demo.domain.vo.ConsumeUser; +import com.example.demo.domain.vo.MenuVo; import com.example.demo.domain.vo.Result; import com.example.demo.domain.vo.RoleVo; import com.example.demo.mapper.RefundMapper; @@ -38,29 +39,28 @@ public class RoleServiceImpl implements RoleService { @Transactional public Result addRole(RoleVo roleVo) { //校验角色 - if(roleVo.getRoleName()==null|| roleVo.getRoleName().isEmpty()){ + if (roleVo.getRoleName() == null || roleVo.getRoleName().isEmpty()) { return Result.error("角色名为空"); } - if(roleMapper.selectByRoleName(roleVo.getRoleName())!=null){ + if (roleMapper.selectByRoleName(roleVo.getRoleName()) != null) { return Result.error("角色名重复"); } - if(roleVo.getPriority()==null){ + if (roleVo.getPriority() == null) { return Result.error("优先级为空"); } - if(roleVo.getMenuIds()==null||roleVo.getMenuIds().isEmpty()){ + if (roleVo.getMenuIds() == null || roleVo.getMenuIds().isEmpty()) { return Result.error("权限为空"); } try { roleMapper.addRole(roleVo); Role role = roleMapper.selectByRoleName(roleVo.getRoleName()); - if(role==null){ + if (role == null) { return Result.error("角色添加失败"); - }else{ + } else { roleVo.setId(role.getId()); } menuService.addPermission(roleVo); - }catch (Exception e) - { + } catch (Exception e) { return Result.error("添加失败"); } @@ -83,6 +83,13 @@ public class RoleServiceImpl implements RoleService { public PageInfo selectBy(Integer pageNum, Integer pageSize, RoleVo roleVo) { PageHelper.startPage(pageNum, pageSize); List roleVos = roleMapper.selectBy(roleVo); + // 遍历 roleVos 列表 + for (RoleVo role : roleVos) { + // 获取每个角色的权限树 + List permissionTree = menuService.getPermissionTree(role.getId()); + // 将权限树设置到角色对象中 + role.setTree(permissionTree); + } return new PageInfo<>(roleVos); } } diff --git a/src/main/resources/mapper/RoleMapper.xml b/src/main/resources/mapper/RoleMapper.xml index 51e0cad..8411b09 100644 --- a/src/main/resources/mapper/RoleMapper.xml +++ b/src/main/resources/mapper/RoleMapper.xml @@ -49,8 +49,8 @@ -- 自连接,通过 father_id 关联父角色 LEFT JOIN role father ON r.father_id = father.id - - r.role_name LIKE CONCAT('%', #{roleVo.roleName}, '%') + + r.role_name LIKE CONCAT('%', #{roleName}, '%') ORDER BY r.priority DESC From a177b9e471661bf24d177848be9aa81a38ee4c1a Mon Sep 17 00:00:00 2001 From: sunjiabei Date: Thu, 17 Jul 2025 13:50:26 +0800 Subject: [PATCH 4/9] =?UTF-8?q?=E8=A7=92=E8=89=B2=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/example/demo/controller/RoleController.java | 6 ++++++ src/main/java/com/example/demo/mapper/RoleMapper.java | 5 +++++ src/main/java/com/example/demo/service/RoleService.java | 2 ++ .../com/example/demo/serviceImpl/RoleServiceImpl.java | 17 +++++++++++++++++ src/main/resources/mapper/RoleMapper.xml | 8 ++++++++ 5 files changed, 38 insertions(+) diff --git a/src/main/java/com/example/demo/controller/RoleController.java b/src/main/java/com/example/demo/controller/RoleController.java index a8c54c1..591204f 100644 --- a/src/main/java/com/example/demo/controller/RoleController.java +++ b/src/main/java/com/example/demo/controller/RoleController.java @@ -39,6 +39,12 @@ public class RoleController { return roleService.addRole(roleVo); } + //删除角色 + @PostMapping("/delete") + public Result deleteRole(@RequestBody RoleVo roleVo) { + + return roleService.deleteRole(roleVo); + } //查找全部角色 @PostMapping("/selectAll") diff --git a/src/main/java/com/example/demo/mapper/RoleMapper.java b/src/main/java/com/example/demo/mapper/RoleMapper.java index 282bbd6..8fdb56c 100644 --- a/src/main/java/com/example/demo/mapper/RoleMapper.java +++ b/src/main/java/com/example/demo/mapper/RoleMapper.java @@ -36,4 +36,9 @@ public interface RoleMapper { //分页查找角色 List selectBy(RoleVo roleVo); + + //删除角色 + void deleteRole(RoleVo roleVo); + + void deleteRoleMenu(RoleVo roleVo); } diff --git a/src/main/java/com/example/demo/service/RoleService.java b/src/main/java/com/example/demo/service/RoleService.java index 1512e5b..0bd0a2c 100644 --- a/src/main/java/com/example/demo/service/RoleService.java +++ b/src/main/java/com/example/demo/service/RoleService.java @@ -30,4 +30,6 @@ public interface RoleService { //分页查找角色 PageInfo selectBy(Integer pageNum, Integer pageSize, RoleVo roleVo); + //删除角色 + Result deleteRole(RoleVo roleVo); } diff --git a/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java index d70aff4..cf24e9e 100644 --- a/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java @@ -67,6 +67,23 @@ public class RoleServiceImpl implements RoleService { return Result.success("创建成功"); } + //删除角色 + @Override + @Transactional + public Result deleteRole(RoleVo roleVo) { + if (roleVo.getId() == null) { + return Result.error("角色id为空"); + } + try { + roleMapper.deleteRoleMenu(roleVo); + roleMapper.deleteRole(roleVo); + } catch (Exception e) { + e.printStackTrace(); + return Result.error("删除失败"); + } + return Result.success("删除成功"); + } + //查找全部角色 @Override public List selectAllRole() { diff --git a/src/main/resources/mapper/RoleMapper.xml b/src/main/resources/mapper/RoleMapper.xml index 8411b09..4b480cf 100644 --- a/src/main/resources/mapper/RoleMapper.xml +++ b/src/main/resources/mapper/RoleMapper.xml @@ -36,6 +36,14 @@ (#{roleName}, #{priority}, #{fatherId}) + + + DELETE FROM role_menu WHERE role_id = #{id}; + + + + DELETE FROM role WHERE id = #{id}; + select DISTINCT activity from user_gold_record + + \ No newline at end of file diff --git a/src/main/resources/mapper/RoleMapper.xml b/src/main/resources/mapper/RoleMapper.xml index a5abfe4..d1fba53 100644 --- a/src/main/resources/mapper/RoleMapper.xml +++ b/src/main/resources/mapper/RoleMapper.xml @@ -21,11 +21,11 @@ SELECT id,role_name FROM role From 279153015dc62c7f413ba12eb3c0b91a6a11fe43 Mon Sep 17 00:00:00 2001 From: sunjiabei Date: Thu, 17 Jul 2025 15:46:05 +0800 Subject: [PATCH 8/9] =?UTF-8?q?=E5=9C=B0=E5=8C=BA=E5=B1=9E=E6=80=A7?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../example/demo/controller/ConsumeController.java | 1 + .../com/example/demo/domain/vo/ConsumeUser.java | 3 ++ .../com/example/demo/domain/vo/RechargeUser.java | 3 ++ .../com/example/demo/domain/vo/RefundUser.java | 3 ++ .../com/example/demo/service/AdminService.java | 3 ++ .../example/demo/serviceImpl/AdminServiceImpl.java | 32 +++++++++++++++++++++- .../demo/serviceImpl/ConsumeServiceImpl.java | 23 ++++++++++++---- .../demo/serviceImpl/RechargeServiceImpl.java | 15 ++++++++++ .../demo/serviceImpl/RefundServiceImpl.java | 14 ++++++++++ src/main/resources/mapper/ConsumeMapper.xml | 12 +++++++- 10 files changed, 102 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/example/demo/controller/ConsumeController.java b/src/main/java/com/example/demo/controller/ConsumeController.java index d02758a..6b8a633 100644 --- a/src/main/java/com/example/demo/controller/ConsumeController.java +++ b/src/main/java/com/example/demo/controller/ConsumeController.java @@ -47,6 +47,7 @@ public class ConsumeController { return Result.success(consumeService.selectAll(page.getPageNum(), page.getPageSize(),page.getConsumeUser())); } } catch (Exception e) { + e.printStackTrace(); return Result.error("请检查筛选数据的格式"); } diff --git a/src/main/java/com/example/demo/domain/vo/ConsumeUser.java b/src/main/java/com/example/demo/domain/vo/ConsumeUser.java index 9b6f364..b502e5e 100644 --- a/src/main/java/com/example/demo/domain/vo/ConsumeUser.java +++ b/src/main/java/com/example/demo/domain/vo/ConsumeUser.java @@ -8,6 +8,7 @@ import lombok.NoArgsConstructor; import java.io.Serializable; import java.util.Date; +import java.util.List; /** * @program: gold-java @@ -48,4 +49,6 @@ public class ConsumeUser implements Serializable { private String sortField; //排序字段 private String sortOrder; //排序顺序 + + private List markets; // 地区列表 } diff --git a/src/main/java/com/example/demo/domain/vo/RechargeUser.java b/src/main/java/com/example/demo/domain/vo/RechargeUser.java index 3310d7c..fddeae2 100644 --- a/src/main/java/com/example/demo/domain/vo/RechargeUser.java +++ b/src/main/java/com/example/demo/domain/vo/RechargeUser.java @@ -6,6 +6,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.util.Date; +import java.util.List; /** * @program: gold-java @@ -47,4 +48,6 @@ public class RechargeUser { private String sortField; //排序字段 private String sortOrder; //排序顺序 + + private List markets; // 地区列表 } diff --git a/src/main/java/com/example/demo/domain/vo/RefundUser.java b/src/main/java/com/example/demo/domain/vo/RefundUser.java index e0e42f6..8916826 100644 --- a/src/main/java/com/example/demo/domain/vo/RefundUser.java +++ b/src/main/java/com/example/demo/domain/vo/RefundUser.java @@ -6,6 +6,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.util.Date; +import java.util.List; /** * @program: gold-java @@ -47,4 +48,6 @@ public class RefundUser { private String sortField; //排序字段 private String sortOrder; //排序顺序 + + private List markets; // 地区列表 } diff --git a/src/main/java/com/example/demo/service/AdminService.java b/src/main/java/com/example/demo/service/AdminService.java index 7b90e1d..6d6f95a 100644 --- a/src/main/java/com/example/demo/service/AdminService.java +++ b/src/main/java/com/example/demo/service/AdminService.java @@ -24,5 +24,8 @@ public interface AdminService { //重置密码 Result resetPassword(Password password); + + //获取当前登录的管理员账号 + String getCurrentAdminAccount(); } diff --git a/src/main/java/com/example/demo/serviceImpl/AdminServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/AdminServiceImpl.java index f0d141d..a1e382a 100644 --- a/src/main/java/com/example/demo/serviceImpl/AdminServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/AdminServiceImpl.java @@ -181,4 +181,34 @@ public class AdminServiceImpl implements AdminService { return Result.error("其他错误"); } } -} \ No newline at end of file + + + public String getCurrentAdminAccount() { + // 1. 从 Security 上下文获取认证信息 + Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); + + // 2. 校验认证状态(未登录则抛出异常) + if (authentication == null) { + throw new RuntimeException("当前用户未登录"); + } + + // 3. 获取登录用户的主体信息(principal) + Object principal = authentication.getPrincipal(); + + // 4. 校验主体类型是否为 Admin(确保类型匹配) + if (!(principal instanceof Admin)) { + throw new RuntimeException("登录用户类型错误,不是 Admin"); + } + + // 5. 转换为 Admin 对象并获取 account 属性 + Admin currentAdmin = (Admin) principal; + String account = currentAdmin.getAccount(); + + // 6. 校验 account 不为空(根据业务需求可选) + if (account == null || account.trim().isEmpty()) { + throw new RuntimeException("当前 Admin 的 account 属性为空"); + } + + return account; + } +} diff --git a/src/main/java/com/example/demo/serviceImpl/ConsumeServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/ConsumeServiceImpl.java index 1a7ef1a..f4de962 100644 --- a/src/main/java/com/example/demo/serviceImpl/ConsumeServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/ConsumeServiceImpl.java @@ -9,7 +9,9 @@ import com.example.demo.domain.vo.GoldUser; import com.example.demo.domain.vo.Result; import com.example.demo.mapper.ConsumeMapper; import com.example.demo.mapper.UserMapper; +import com.example.demo.service.AdminService; import com.example.demo.service.ConsumeService; +import com.example.demo.service.GeneralService; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import org.springframework.beans.factory.annotation.Autowired; @@ -42,9 +44,17 @@ public class ConsumeServiceImpl implements ConsumeService { @Autowired private UserMapper userMapper; + @Autowired + private AdminService adminService; + @Autowired + private GeneralService generalService; + //消耗明细 @Override public PageInfo selectAll(Integer pageNum, Integer pageSize, ConsumeUser consumeUser) { + String account = adminService.getCurrentAdminAccount(); + List markets = generalService.getRoleMarket(account); + consumeUser.setMarkets(markets); PageHelper.startPage(pageNum, pageSize); List consumeUsers = consumeMapper.selectAll(consumeUser); return new PageInfo<>(consumeUsers); @@ -88,6 +98,9 @@ public class ConsumeServiceImpl implements ConsumeService { //消耗明细筛选 @Override public PageInfo selectBy(Integer pageNum, Integer pageSize, ConsumeUser consumeUser) { + String account = adminService.getCurrentAdminAccount(); + List markets = generalService.getRoleMarket(account); + consumeUser.setMarkets(markets); PageHelper.startPage(pageNum, pageSize); List consumeUsers = consumeMapper.selectBy(consumeUser); return new PageInfo<>(consumeUsers); @@ -96,14 +109,14 @@ public class ConsumeServiceImpl implements ConsumeService { //新增消耗 @Override public Result add(ConsumeUser consumeUser) { - if(consumeUser.getTaskGold()==null||consumeUser.getFreeGold()==null||consumeUser.getPermanentGold()==null){ + if (consumeUser.getTaskGold() == null || consumeUser.getFreeGold() == null || consumeUser.getPermanentGold() == null) { return Result.error("金币数量不能为空"); } - if(consumeUser.getTaskGold()<0||consumeUser.getFreeGold()<0||consumeUser.getPermanentGold()<0){ + if (consumeUser.getTaskGold() < 0 || consumeUser.getFreeGold() < 0 || consumeUser.getPermanentGold() < 0) { return Result.error("金币不能为负数"); } GoldUser goldUser = userMapper.selectUser(consumeUser.getJwcode().toString()); - if(goldUser==null){ + if (goldUser == null) { return Result.error("用户不存在"); } UserGoldRecord userGoldRecord = new UserGoldRecord(); @@ -168,8 +181,8 @@ public class ConsumeServiceImpl implements ConsumeService { userMapper.updateGold(user); // if(consumeUser.getJwcode().equals(94226013)){ GoldTistV2.addCoinNew(userGoldRecord.getJwcode().toString(), 65, - (double) (userGoldRecord.getPermanentGold() + userGoldRecord.getFreeDecember() + userGoldRecord.getFreeJune() + userGoldRecord.getTaskGold()) /100, - userGoldRecord.getRemark(),((double) userGoldRecord.getPermanentGold() /100), userGoldRecord.getPayPlatform(), userGoldRecord.getGoodsName()); + (double) (userGoldRecord.getPermanentGold() + userGoldRecord.getFreeDecember() + userGoldRecord.getFreeJune() + userGoldRecord.getTaskGold()) / 100, + userGoldRecord.getRemark(), ((double) userGoldRecord.getPermanentGold() / 100), userGoldRecord.getPayPlatform(), userGoldRecord.getGoodsName()); // } return Result.success(); } diff --git a/src/main/java/com/example/demo/serviceImpl/RechargeServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/RechargeServiceImpl.java index 48a4fe6..d5629ce 100644 --- a/src/main/java/com/example/demo/serviceImpl/RechargeServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/RechargeServiceImpl.java @@ -6,6 +6,8 @@ import com.example.demo.domain.vo.*; import com.example.demo.mapper.ConsumeMapper; import com.example.demo.mapper.RechargeMapper; import com.example.demo.mapper.UserMapper; +import com.example.demo.service.AdminService; +import com.example.demo.service.GeneralService; import com.example.demo.service.RechargeService; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; @@ -38,9 +40,19 @@ public class RechargeServiceImpl implements RechargeService { @Autowired private UserMapper userMapper; + + @Autowired + private AdminService adminService; + + @Autowired + private GeneralService generalService; + //查询所有充值 @Override public PageInfo selectAll(Integer pageNum, Integer pageSize, RechargeUser rechargeUser) { + String account = adminService.getCurrentAdminAccount(); + List markets = generalService.getRoleMarket(account); + rechargeUser.setMarkets(markets); PageHelper.startPage(pageNum, pageSize); List rechargeUsers = rechargeMapper.selectAll(rechargeUser); return new PageInfo<>(rechargeUsers); @@ -49,6 +61,9 @@ public class RechargeServiceImpl implements RechargeService { //查询筛选充值 @Override public PageInfo selectBy(Integer pageNum, Integer pageSize, RechargeUser rechargeUser) { + String account = adminService.getCurrentAdminAccount(); + List markets = generalService.getRoleMarket(account); + rechargeUser.setMarkets(markets); PageHelper.startPage(pageNum, pageSize); List rechargeUsers = rechargeMapper.selectBy(rechargeUser); return new PageInfo<>(rechargeUsers); diff --git a/src/main/java/com/example/demo/serviceImpl/RefundServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/RefundServiceImpl.java index 4e47d8f..84905db 100644 --- a/src/main/java/com/example/demo/serviceImpl/RefundServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/RefundServiceImpl.java @@ -5,6 +5,8 @@ import com.example.demo.domain.vo.*; import com.example.demo.mapper.ConsumeMapper; import com.example.demo.mapper.RefundMapper; import com.example.demo.mapper.UserMapper; +import com.example.demo.service.AdminService; +import com.example.demo.service.GeneralService; import com.example.demo.service.RefundService; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; @@ -44,9 +46,18 @@ public class RefundServiceImpl implements RefundService { @Autowired private UserMapper userMapper; + @Autowired + private AdminService adminService; + + @Autowired + private GeneralService generalService; + //查找全部退款 @Override public PageInfo selectAll(Integer pageNum, Integer pageSize, RefundUser refundUser) { + String account = adminService.getCurrentAdminAccount(); + List markets = generalService.getRoleMarket(account); + refundUser.setMarkets(markets); PageHelper.startPage(pageNum, pageSize); List refundUsers = refundMapper.selectAll(refundUser); return new PageInfo<>(refundUsers); @@ -90,6 +101,9 @@ public class RefundServiceImpl implements RefundService { //查找筛选退款 @Override public PageInfo selectBy(Integer pageNum, Integer pageSize, RefundUser refundUser) { + String account = adminService.getCurrentAdminAccount(); + List markets = generalService.getRoleMarket(account); + refundUser.setMarkets(markets); PageHelper.startPage(pageNum, pageSize); List refundUsers = refundMapper.selectBy(refundUser); return new PageInfo<>(refundUsers); diff --git a/src/main/resources/mapper/ConsumeMapper.xml b/src/main/resources/mapper/ConsumeMapper.xml index f8e06a5..24ebae1 100644 --- a/src/main/resources/mapper/ConsumeMapper.xml +++ b/src/main/resources/mapper/ConsumeMapper.xml @@ -21,7 +21,17 @@ user u ON u.jwcode = ugr.jwcode left JOIN admin a ON ugr.admin_id = a.id - WHERE ugr.type = 1 AND ugr.flag = 1 + + ugr.type = 1 AND ugr.flag = 1 + + + AND u.market IN + + #{market} + + + + From 3c122611cb1ce80eaa295cf54cb332e8d4ead0d1 Mon Sep 17 00:00:00 2001 From: lijianlin Date: Thu, 17 Jul 2025 18:11:33 +0800 Subject: [PATCH 9/9] =?UTF-8?q?=E4=B8=8A=E4=B8=8B=E7=BA=A7=E8=A7=92?= =?UTF-8?q?=E8=89=B2=E8=81=94=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/example/demo/controller/GeneralController.java | 2 +- src/main/java/com/example/demo/controller/RoleController.java | 7 +++++++ src/main/java/com/example/demo/controller/WorkbenchController.java | 6 +++--- src/main/java/com/example/demo/mapper/RoleMapper.java | 2 ++ src/main/java/com/example/demo/service/GeneralService.java | 2 +- src/main/java/com/example/demo/service/RoleService.java | 2 ++ src/main/java/com/example/demo/serviceImpl/GeneralServiceImpl.java | 4 +++- src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java | 6 ++++++ .../java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java | 2 +- src/main/resources/mapper/RoleMapper.xml | 5 +++++ 10 files changed, 31 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/example/demo/controller/GeneralController.java b/src/main/java/com/example/demo/controller/GeneralController.java index ffd168a..d082660 100644 --- a/src/main/java/com/example/demo/controller/GeneralController.java +++ b/src/main/java/com/example/demo/controller/GeneralController.java @@ -35,7 +35,7 @@ public class GeneralController { } //获取角色地区权限列表 @PostMapping("/roleMarkets") - public Result getRoleMarkets(@RequestBody AdminVo adminVo){ + public Result getRoleMarkets(@RequestBody AdminVo adminVo) throws Exception { String account = adminVo.getAccount(); List list = generalService.getRoleMarket(account); return Result.success(list); diff --git a/src/main/java/com/example/demo/controller/RoleController.java b/src/main/java/com/example/demo/controller/RoleController.java index dfb0431..6bfd729 100644 --- a/src/main/java/com/example/demo/controller/RoleController.java +++ b/src/main/java/com/example/demo/controller/RoleController.java @@ -59,6 +59,13 @@ public class RoleController { List list=roleService.selectSubRole(id); return Result.success(list); } + //获取当前角色的上级角色 + @PostMapping("/selectFather") + public Result selectFather(@RequestBody RoleVo roleVo) { + Integer id = roleVo.getId(); + RoleVo role = roleService.selectFather(id); + return Result.success(role); + } //角色明细筛选 @PostMapping("/selectBy") diff --git a/src/main/java/com/example/demo/controller/WorkbenchController.java b/src/main/java/com/example/demo/controller/WorkbenchController.java index 74e7412..5b2b11e 100644 --- a/src/main/java/com/example/demo/controller/WorkbenchController.java +++ b/src/main/java/com/example/demo/controller/WorkbenchController.java @@ -52,7 +52,7 @@ public class WorkbenchController { */ @PostMapping("getCard") public ResponseEntity card1(@RequestBody WorkbenchCard workbench, - @AuthenticationPrincipal Admin admin) { + @AuthenticationPrincipal Admin admin) throws Exception{ if (admin != null) { String account = admin.getAccount(); List markets = generalService.getRoleMarket(account); @@ -73,12 +73,12 @@ public class WorkbenchController { /* 更新统计表并获取卡片数据 */ - @PostMapping("updateCard") + /*@PostMapping("updateCard") public ResponseEntity updateCard(@RequestBody WorkbenchCard workbench){ statisticsService.runHourlyTaskPart1(); //更新余量数据 statisticsService.runHourlyTaskPart2(); //更新余量外数据 WorkbenchCard result =workbenchService.getCard(workbench.getMarkets()); //获取卡片数据 return ResponseEntity.ok(result); - } + }*/ } diff --git a/src/main/java/com/example/demo/mapper/RoleMapper.java b/src/main/java/com/example/demo/mapper/RoleMapper.java index 07f73c7..51a5afa 100644 --- a/src/main/java/com/example/demo/mapper/RoleMapper.java +++ b/src/main/java/com/example/demo/mapper/RoleMapper.java @@ -44,4 +44,6 @@ public interface RoleMapper { //删除角色菜单 void deleteRoleMenu(RoleVo roleVo); + //获取当前角色的上级角色 + RoleVo selectFather(Integer id); } diff --git a/src/main/java/com/example/demo/service/GeneralService.java b/src/main/java/com/example/demo/service/GeneralService.java index 9b88343..4348afc 100644 --- a/src/main/java/com/example/demo/service/GeneralService.java +++ b/src/main/java/com/example/demo/service/GeneralService.java @@ -33,5 +33,5 @@ public interface GeneralService { //获取时间段内的所有日期(包含起始和结束日) List getAllDatesBetween(Date start, Date end); //获取角色的地区权限列表 - List getRoleMarket(String account); + List getRoleMarket(String account) throws Exception; } diff --git a/src/main/java/com/example/demo/service/RoleService.java b/src/main/java/com/example/demo/service/RoleService.java index adca080..331737d 100644 --- a/src/main/java/com/example/demo/service/RoleService.java +++ b/src/main/java/com/example/demo/service/RoleService.java @@ -32,4 +32,6 @@ public interface RoleService { //删除角色 Result deleteRole(RoleVo roleVo); + //获取当前角色的上级角色 + RoleVo selectFather(Integer id); } diff --git a/src/main/java/com/example/demo/serviceImpl/GeneralServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/GeneralServiceImpl.java index 5b46288..5ed5e68 100644 --- a/src/main/java/com/example/demo/serviceImpl/GeneralServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/GeneralServiceImpl.java @@ -112,8 +112,10 @@ public class GeneralServiceImpl implements GeneralService { 获取角色的地区权限列表 */ @Override - public List getRoleMarket(String account) { + public List getRoleMarket(String account) throws Exception { String market = generalMapper.getRoleMarket(account); + if (market == null) + throw new Exception("没有地区权限"); List list = Arrays.asList(market.split(",")); return list; } diff --git a/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java index ee1edc4..3238626 100644 --- a/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/RoleServiceImpl.java @@ -97,6 +97,12 @@ public class RoleServiceImpl implements RoleService { return Result.success("删除成功"); } + @Override + public RoleVo selectFather(Integer id) { + + return roleMapper.selectFather(id); + } + //查找全部角色 @Override public List selectAllRole() { diff --git a/src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java index 0e99cf8..e5c9a31 100644 --- a/src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/WorkbenchServiceImpl.java @@ -99,7 +99,7 @@ public class WorkbenchServiceImpl implements WorkbenchService { @Override public WorkbenchCard getCardCache(List markets) { - //markets = generalService.getMarket(); + markets = generalService.getMarket(); //从缓存中获取工作台数据 WorkbenchCard cached = redisTemplate.opsForValue().get(CACHE_KEY); if (cached != null) { diff --git a/src/main/resources/mapper/RoleMapper.xml b/src/main/resources/mapper/RoleMapper.xml index d4be3bf..94f74e0 100644 --- a/src/main/resources/mapper/RoleMapper.xml +++ b/src/main/resources/mapper/RoleMapper.xml @@ -63,5 +63,10 @@ ORDER BY r.priority DESC + + \ No newline at end of file