From 31d62c576c2a0a04bfdd84b2d10321998a060a8f Mon Sep 17 00:00:00 2001 From: huangqizhen <15552608129@163.com> Date: Sat, 28 Jun 2025 11:44:08 +0800 Subject: [PATCH] =?UTF-8?q?6.26=20=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../demo/controller/GoldDetailController.java | 1 + .../demo/controller/PermissionController.java | 66 ++++++++++++ .../java/com/example/demo/domain/entity/Admin.java | 1 + .../com/example/demo/domain/entity/Export.java | 18 ++-- .../java/com/example/demo/domain/entity/User.java | 2 +- src/main/java/com/example/demo/domain/vo/Page.java | 2 +- .../com/example/demo/domain/vo/Permission.java | 27 +++++ .../java/com/example/demo/mapper/AdminMapper.java | 17 +++ .../com/example/demo/mapper/PermissionMapper.java | 31 ++++++ .../example/demo/service/PermissionService.java | 29 ++++++ .../demo/serviceImpl/GoldDetailServiceImpl.java | 1 + .../demo/serviceImpl/PermissionServiceImpl.java | 115 +++++++++++++++++++++ src/main/resources/mapper/AdminMapper.xml | 9 ++ src/main/resources/mapper/PermissionMapper.xml | 73 +++++++++++++ 14 files changed, 381 insertions(+), 11 deletions(-) create mode 100644 src/main/java/com/example/demo/controller/PermissionController.java create mode 100644 src/main/java/com/example/demo/domain/vo/Permission.java create mode 100644 src/main/java/com/example/demo/mapper/AdminMapper.java create mode 100644 src/main/java/com/example/demo/mapper/PermissionMapper.java create mode 100644 src/main/java/com/example/demo/service/PermissionService.java create mode 100644 src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java create mode 100644 src/main/resources/mapper/AdminMapper.xml create mode 100644 src/main/resources/mapper/PermissionMapper.xml diff --git a/src/main/java/com/example/demo/controller/GoldDetailController.java b/src/main/java/com/example/demo/controller/GoldDetailController.java index 6f7efce..71e86a3 100644 --- a/src/main/java/com/example/demo/controller/GoldDetailController.java +++ b/src/main/java/com/example/demo/controller/GoldDetailController.java @@ -49,6 +49,7 @@ public class GoldDetailController { } @PostMapping("/getGold") public Result getGold(@RequestBody Page page) { + System.out.println( page); if(ObjectUtils.isEmpty(page.getPageNum())){ return Result.error("页码数为空!"); } diff --git a/src/main/java/com/example/demo/controller/PermissionController.java b/src/main/java/com/example/demo/controller/PermissionController.java new file mode 100644 index 0000000..964c986 --- /dev/null +++ b/src/main/java/com/example/demo/controller/PermissionController.java @@ -0,0 +1,66 @@ +package com.example.demo.controller; + +import com.example.demo.domain.entity.Admin; +import com.example.demo.domain.entity.AdminRole; +import com.example.demo.domain.vo.Page; +import com.example.demo.domain.vo.Permission; +import com.example.demo.domain.vo.Result; +import com.example.demo.service.PermissionService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import java.util.Arrays; + +/** + * @program: GOLD + * @ClassName PermissionController + * @description: + * @author: huangqizhen + * @create: 2025−06-26 13:22 + * @Version 1.0 + **/ +@RestController +@RequestMapping("/permission") +@RequiredArgsConstructor +@Slf4j +@CrossOrigin +public class PermissionController { + private final PermissionService permissionService; + @PostMapping("/getposition") + public Result getposition(@RequestBody String token){ + return Result.success(permissionService.getposition(token)); + } + @PostMapping("/getmarket") + public Result getmarket(@RequestBody String token){ + return Result.success(permissionService.getmarket(token)); + } + @PostMapping("/getPermission") + public Result getPermission(@RequestBody Page page){ + return Result.success(permissionService.getpermission(page.getPageNum(), page.getPageSize(), page.getPermission())); + } + @PostMapping("/addPermission") + public Result addPermission(@RequestBody Admin admin) throws Exception { + System.out.println( admin); + try { + return Result.success(permissionService.addpermission(admin)); + } + catch (Exception e) { + log.error(Arrays.toString(e.getStackTrace())); + return Result.error(e.getMessage()); + } + } + @PostMapping("/getRole") + public Result getRole(@RequestBody String token){ + return Result.success(permissionService.getRole(token)); + } + @PostMapping("/deleteAdmin") + public Result deleteAdmin(@RequestBody Admin admin){ + return Result.success(permissionService.deleteAdmin(admin.getId())); + } + @PostMapping("/updateAdminRole") + public Result updateAdminRole(@RequestBody AdminRole adminrole){ + return Result.success(permissionService.updateAdminRole(adminrole)); + } + +} diff --git a/src/main/java/com/example/demo/domain/entity/Admin.java b/src/main/java/com/example/demo/domain/entity/Admin.java index 477b3e7..666c30a 100644 --- a/src/main/java/com/example/demo/domain/entity/Admin.java +++ b/src/main/java/com/example/demo/domain/entity/Admin.java @@ -29,4 +29,5 @@ public class Admin implements Serializable { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") private Date updateTime; // 更新时间 + private Integer roleId; } \ No newline at end of file diff --git a/src/main/java/com/example/demo/domain/entity/Export.java b/src/main/java/com/example/demo/domain/entity/Export.java index ebc1832..98c88a0 100644 --- a/src/main/java/com/example/demo/domain/entity/Export.java +++ b/src/main/java/com/example/demo/domain/entity/Export.java @@ -19,15 +19,15 @@ import java.util.Date; @NoArgsConstructor public class Export { private String token; - private Integer account; - private String url; - private String fileName; - private Byte type; - private Byte state; - private Integer dataNum; - private String reason; + private Integer account; // 账号 + private String url; // 文件路径 + private String fileName; // 文件名 + private Byte type; // 类型 + private Byte state; // 状态 + private Integer dataNum; // 数据量 + private String reason; // 失败原因 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") - private Date createTime; + private Date createTime; // 创建时间 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai") - private Date updateTime; + private Date updateTime; // 更新时间 } diff --git a/src/main/java/com/example/demo/domain/entity/User.java b/src/main/java/com/example/demo/domain/entity/User.java index 3014336..c0533af 100644 --- a/src/main/java/com/example/demo/domain/entity/User.java +++ b/src/main/java/com/example/demo/domain/entity/User.java @@ -27,7 +27,7 @@ public class User implements Serializable { private Integer currentFreeDecember; // 当前十二月免费金币 private Integer currentTaskGold; // 当前任务金币 private Integer rechargeNum; // 充值次数 - private Integer sumConsume; // 消费总额 + private Integer sumConsume; // 历史消费 private Integer consumeNum; // 消费次数 @JsonFormat(pattern = "yyyy-MM-dd", timezone = "Asia/Shanghai") 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 d95c1e0..978d398 100644 --- a/src/main/java/com/example/demo/domain/vo/Page.java +++ b/src/main/java/com/example/demo/domain/vo/Page.java @@ -23,5 +23,5 @@ public class Page { private ConsumeUser consumeUser; private User user; private RefundUser refundUser; - + private Permission permission; } diff --git a/src/main/java/com/example/demo/domain/vo/Permission.java b/src/main/java/com/example/demo/domain/vo/Permission.java new file mode 100644 index 0000000..5c7ccdb --- /dev/null +++ b/src/main/java/com/example/demo/domain/vo/Permission.java @@ -0,0 +1,27 @@ +package com.example.demo.domain.vo; + +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @program: GOLD + * @ClassName Permission + * @description: + * @author: huangqizhen + * @create: 2025−06-26 10:54 + * @Version 1.0 + **/ +@Data +@NoArgsConstructor +public class Permission { + private String token; + private String id; + private String name; //姓名 + private String account; //账号 + private String market; //地区 + private String postiton; //职位 + private String roleName; //角色 + private String remark; //备注 + private Integer adminStatus; //状态 + private Integer roleId; //角色id +} diff --git a/src/main/java/com/example/demo/mapper/AdminMapper.java b/src/main/java/com/example/demo/mapper/AdminMapper.java new file mode 100644 index 0000000..4ae3ec7 --- /dev/null +++ b/src/main/java/com/example/demo/mapper/AdminMapper.java @@ -0,0 +1,17 @@ +package com.example.demo.mapper; + +import com.example.demo.domain.entity.Admin; +import org.apache.ibatis.annotations.Mapper; + +/** + * @program: GOLD + * @ClassName AdminMapper + * @description: + * @author: huangqizhen + * @create: 2025−06-27 17:21 + * @Version 1.0 + **/ +@Mapper +public interface AdminMapper { + Admin getAdmin(String account); +} diff --git a/src/main/java/com/example/demo/mapper/PermissionMapper.java b/src/main/java/com/example/demo/mapper/PermissionMapper.java new file mode 100644 index 0000000..792be01 --- /dev/null +++ b/src/main/java/com/example/demo/mapper/PermissionMapper.java @@ -0,0 +1,31 @@ +package com.example.demo.mapper; + +import com.example.demo.domain.entity.Admin; +import com.example.demo.domain.entity.AdminRole; +import com.example.demo.domain.entity.Role; +import com.example.demo.domain.vo.Permission; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * @program: GOLD + * @ClassName PermissionMapper + * @description: + * @author: huangqizhen + * @create: 2025−06-26 11:25 + * @Version 1.0 + **/ +@Mapper +public interface PermissionMapper { + List getposition(String token); + List getmarket(String token); + List getPermission(Permission permission); + Integer updatePermission(Admin admin); + Integer addPermission(Admin admin); + List getRole(String token); + Integer addadminRole(AdminRole adminRole); + Integer deleteAdmin(Integer id); + Integer deleteAdminRole(Integer id); + Integer updateAdminRole(AdminRole adminRole); +} diff --git a/src/main/java/com/example/demo/service/PermissionService.java b/src/main/java/com/example/demo/service/PermissionService.java new file mode 100644 index 0000000..3cc4fe7 --- /dev/null +++ b/src/main/java/com/example/demo/service/PermissionService.java @@ -0,0 +1,29 @@ +package com.example.demo.service; + +import com.example.demo.domain.entity.Admin; +import com.example.demo.domain.entity.AdminRole; +import com.example.demo.domain.entity.Role; +import com.example.demo.domain.vo.Page; +import com.example.demo.domain.vo.Permission; +import com.github.pagehelper.PageInfo; + +import javax.swing.*; +import java.util.List; + +/** + * @program: GOLD + * @ClassName PermissionService + * @description: + * @author: huangqizhen + * @create: 2025−06-26 13:18 + * @Version 1.0 + **/ +public interface PermissionService { + List getposition(String token); + List getmarket(String token); + PageInfo getpermission(Integer pageNum, Integer pageSize, Permission permission); + Integer addpermission(Admin admin) throws Exception; + List getRole(String token); + Integer deleteAdmin(Integer id); + Integer updateAdminRole(AdminRole adminRole); +} diff --git a/src/main/java/com/example/demo/serviceImpl/GoldDetailServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/GoldDetailServiceImpl.java index d00420f..adcc1c2 100644 --- a/src/main/java/com/example/demo/serviceImpl/GoldDetailServiceImpl.java +++ b/src/main/java/com/example/demo/serviceImpl/GoldDetailServiceImpl.java @@ -41,6 +41,7 @@ public class GoldDetailServiceImpl implements GoldDetailService { @Override public PageInfo getGold(Integer pageNum, Integer pageSize, User user) { PageHelper.startPage(pageNum, pageSize); + List list= goldDetailMapper.getGold(user); return new PageInfo<>(list); } diff --git a/src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java b/src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java new file mode 100644 index 0000000..83cdc06 --- /dev/null +++ b/src/main/java/com/example/demo/serviceImpl/PermissionServiceImpl.java @@ -0,0 +1,115 @@ +package com.example.demo.serviceImpl; + +import com.example.demo.domain.entity.Admin; +import com.example.demo.domain.entity.AdminRole; +import com.example.demo.domain.entity.Role; +import com.example.demo.domain.entity.User; +import com.example.demo.domain.vo.Permission; +import com.example.demo.domain.vo.Result; +import com.example.demo.mapper.AdminMapper; +import com.example.demo.mapper.PermissionMapper; +import com.example.demo.service.PermissionService; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.ObjectUtils; + +import java.util.List; + +/** + * @program: GOLD + * @ClassName PermissionServiceImpl + * @description: + * @author: huangqizhen + * @create: 2025−06-26 13:20 + * @Version 1.0 + **/ +@Service +public class PermissionServiceImpl implements PermissionService { + + @Autowired + private PermissionMapper permissionMapper; + @Autowired + private AdminMapper adminMapper; + @Override + public List getposition(String token) { + return permissionMapper.getposition(token); + } + + @Override + public List getmarket(String token) { + return permissionMapper.getmarket(token); + } + + @Override + public PageInfo getpermission(Integer pageNum, Integer pageSize, Permission permission) { + PageHelper.startPage(pageNum, pageSize); + List list= permissionMapper.getPermission(permission); + return new PageInfo<>(list); + } + + @Override + @Transactional + public Integer addpermission(Admin admin) throws Exception { + + if(!ObjectUtils.isEmpty(adminMapper.getAdmin(admin.getAccount()))){ + throw new Exception("账号已存在"); + } + if(ObjectUtils.isEmpty(admin.getAccount())){ + throw new Exception("账号为空!"); + } + if(ObjectUtils.isEmpty( admin.getMarket())){ + throw new Exception("地区为空!"); + } + if(ObjectUtils.isEmpty( admin.getPostiton())){ + throw new Exception("职位为空!"); + } + if (ObjectUtils.isEmpty( admin.getRoleId())){ + throw new Exception("权限类别为空!"); + } + if(ObjectUtils.isEmpty( admin.getAdminName())){ + throw new Exception("用户名为空!"); + } + if(ObjectUtils.isEmpty( admin.getMachineId())){ + throw new Exception("机器编号为空!"); + } + if (admin.getMachineId().contains(",")) { + throw new Exception("机器编号格式错误"); + } + else { + BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder(); + admin.setPassword(passwordEncoder.encode(("123456"))); + permissionMapper.addPermission(admin); + AdminRole adminRole = new AdminRole(); + adminRole.setAdminId(admin.getId()); + adminRole.setRoleId(admin.getRoleId()); + return permissionMapper.addadminRole(adminRole); + } + } + + @Override + public List getRole(String token) { + return permissionMapper.getRole(token); + } + + @Override + @Transactional + public Integer deleteAdmin(Integer id) { + if (id == null){ + return -1; + } + + permissionMapper.deleteAdminRole(id); + return permissionMapper.deleteAdmin(id); + } + + @Override + public Integer updateAdminRole(AdminRole adminRole) { + return permissionMapper.updateAdminRole(adminRole); + } + + +} diff --git a/src/main/resources/mapper/AdminMapper.xml b/src/main/resources/mapper/AdminMapper.xml new file mode 100644 index 0000000..19fee93 --- /dev/null +++ b/src/main/resources/mapper/AdminMapper.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/src/main/resources/mapper/PermissionMapper.xml b/src/main/resources/mapper/PermissionMapper.xml new file mode 100644 index 0000000..e16d781 --- /dev/null +++ b/src/main/resources/mapper/PermissionMapper.xml @@ -0,0 +1,73 @@ + + + + + insert into admin(admin_name,machine_id,account,password,market,postiton,remark,admin_status) + values(#{adminName},#{machineId},#{account},#{password},#{market},#{postiton},#{remark},1) + + + insert into admin_role(admin_id,role_id) + values(#{adminId},#{roleId}) + + + update admin + + + admin_name=#{name}, + + + market=#{market}, + + + postiton=#{postiton}, + + + roleId=#{role}, + + + where id= #{id} + + + update admin_role + + + role_id= #{roleId}, + + + where admin_id= #{adminId} + + + delete from admin where id=#{id} + + + delete from admin_role where admin_id= #{id} + + + + + + +