From a74b72404529271b42ea6c0565912038df8837ba Mon Sep 17 00:00:00 2001 From: tortoise <2891138827@qq.com> Date: Sat, 17 Aug 2024 01:13:36 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=89=80=E6=9C=89=E5=A5=96?= =?UTF-8?q?=E6=83=A9=E8=AE=B0=E5=BD=95,=E6=94=B9=E4=BA=86userMapper?= =?UTF-8?q?=E9=87=8C=E9=9D=A2=E4=B8=80=E4=B8=AA=E9=94=99=E7=9A=84=E5=91=BD?= =?UTF-8?q?=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sims/controller/RecordController.java | 62 ++++++++++++++++++- .../java/top/suyiiyii/sims/dto/RecordDto.java | 21 +++++-- .../java/top/suyiiyii/sims/entity/Record.java | 7 +-- .../suyiiyii/sims/mapper/CategoryMapper.java | 22 +++++++ .../suyiiyii/sims/mapper/RecordMapper.java | 24 +++++++ .../top/suyiiyii/sims/mapper/RoleMapper.java | 2 +- .../top/suyiiyii/sims/mapper/UserMapper.java | 2 +- .../sims/service/CategoryService.java | 28 +++++++++ .../suyiiyii/sims/service/RecordService.java | 30 +++++++++ .../suyiiyii/sims/service/RoleService.java | 2 +- .../suyiiyii/sims/service/UserService.java | 18 +++--- 11 files changed, 193 insertions(+), 25 deletions(-) create mode 100644 src/main/java/top/suyiiyii/sims/mapper/CategoryMapper.java create mode 100644 src/main/java/top/suyiiyii/sims/mapper/RecordMapper.java create mode 100644 src/main/java/top/suyiiyii/sims/service/CategoryService.java create mode 100644 src/main/java/top/suyiiyii/sims/service/RecordService.java diff --git a/src/main/java/top/suyiiyii/sims/controller/RecordController.java b/src/main/java/top/suyiiyii/sims/controller/RecordController.java index 1e31111..44fe19f 100644 --- a/src/main/java/top/suyiiyii/sims/controller/RecordController.java +++ b/src/main/java/top/suyiiyii/sims/controller/RecordController.java @@ -1,22 +1,78 @@ package top.suyiiyii.sims.controller; import io.swagger.v3.oas.annotations.Operation; + +import org.springframework.beans.factory.annotation.Autowired; + import org.springframework.web.bind.annotation.*; import top.suyiiyii.sims.common.Result; import top.suyiiyii.sims.dto.CommonResponse; import top.suyiiyii.sims.dto.RecordDto; +import top.suyiiyii.sims.entity.Record; +import top.suyiiyii.sims.entity.Role; +import top.suyiiyii.sims.entity.User; +import top.suyiiyii.sims.entity.UserRole; +import top.suyiiyii.sims.mapper.CategoryMapper; +import top.suyiiyii.sims.mapper.UserMapper; +import top.suyiiyii.sims.service.CategoryService; +import top.suyiiyii.sims.service.RecordService; +import top.suyiiyii.sims.service.RoleService; +import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; @RestController -public class RecordController { - +public class +RecordController { + @Autowired + RecordService recordService; + @Autowired + UserMapper userMapper; + @Autowired + RoleService roleService; + @Autowired + CategoryService categoryService; @Operation(summary = "获取所有奖惩记录") @GetMapping("/admin/record") public Result> adminRecord(Integer page, Integer size) { - return Result.success(new ArrayList<>()); + List recordDtos=new ArrayList<>(); + List records = recordService.getAllRecords(page, size); + for (Record record : records) { + RecordDto recordDto = new RecordDto(); + Integer studentId=record.getStudentId(); + recordDto.setStudentId(studentId); + User user = userMapper.selectByUserId(studentId); + recordDto.setName(user.getUsername()); + recordDto.setGrade(user.getGrade()); + recordDto.setGroup(user.getUserGroup()); + List roles = roleService.selectRolesById(studentId); + ArrayList roleName = new ArrayList<>(); + for (Role role : roles) { + roleName.add(role.getRoleName()); + } + recordDto.setRoles(roleName); + categoryService.getCategoryName(record.getCategoryId()); + categoryService.getsubCategoryName(record.getCategoryId()); + recordDto.setDate(record.getDate()); + recordDto.setContent(record.getContent()); + recordDto.setReason(record.getReason()); + recordDto.setContent(record.getContent()); + recordDto.setAmount(record.getAmount()); + recordDto.setRemark(record.getRemark()); + recordDto.setIsRevoked(record.getIsRevoked()); + // 撤销日期 + recordDto.setRevokeDate(record.getRevokeDate()); + recordDto.setRevokeReason(record.getRevokeReason()); + recordDto.setRevokeRemark(record.getRevokeRemark()); + recordDto.setOperatorUserId(record.getOperatorUserId()); + recordDto.setLastUpdateTime(record.getLastUpdateTime()); + recordDtos.add(recordDto); + } + + + return Result.success(recordDtos); } @Operation(summary = "获取自己的奖惩记录") diff --git a/src/main/java/top/suyiiyii/sims/dto/RecordDto.java b/src/main/java/top/suyiiyii/sims/dto/RecordDto.java index d0e4104..1f7a4b3 100644 --- a/src/main/java/top/suyiiyii/sims/dto/RecordDto.java +++ b/src/main/java/top/suyiiyii/sims/dto/RecordDto.java @@ -5,18 +5,27 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.time.LocalDateTime; +import java.util.List; @Data @AllArgsConstructor @NoArgsConstructor public class RecordDto { - private Integer id; + // 用户ID - private Integer userId; - // 奖惩类型 - private String type; - // 奖惩类别ID - private Integer categoryId; + private Integer studentId; + + private String name; + + private String grade; + + private String group; + + private List roles; + + private String categoryName; + + private String subCategoryName; // 奖惩日期 private LocalDateTime date; // 奖惩内容 diff --git a/src/main/java/top/suyiiyii/sims/entity/Record.java b/src/main/java/top/suyiiyii/sims/entity/Record.java index c6e8d9d..41e1268 100644 --- a/src/main/java/top/suyiiyii/sims/entity/Record.java +++ b/src/main/java/top/suyiiyii/sims/entity/Record.java @@ -12,7 +12,7 @@ import java.time.LocalDateTime; * @Author tortoise * @Date 2024/8/9 14:04 * @PackageName:top.suyiiyii.sims.entity - * @ClassName: Record + * @ClassName: RecordMapper * @Description: TODO * @Version 1.0 */ @@ -24,9 +24,8 @@ public class Record { @TableId("id") private Integer id; // 用户ID - private Integer userId; - // 奖惩类型 - private String type; + private Integer StudentId; + // 奖惩类别ID private Integer categoryId; // 奖惩日期 diff --git a/src/main/java/top/suyiiyii/sims/mapper/CategoryMapper.java b/src/main/java/top/suyiiyii/sims/mapper/CategoryMapper.java new file mode 100644 index 0000000..4da7165 --- /dev/null +++ b/src/main/java/top/suyiiyii/sims/mapper/CategoryMapper.java @@ -0,0 +1,22 @@ +package top.suyiiyii.sims.mapper; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +/** + * @Author tortoise + * @Date 2024/8/16 23:31 + * @PackageName:top.suyiiyii.sims.mapper + * @ClassName: CategoryMapper + * @Description: TODO + * @Version 1.0 + */ +@Mapper +public interface CategoryMapper { + @Select("SELECT * FROM category WHERE categoryId=#{id}") + String getCategoryName(Integer categoryId); + + @Select("SELECT categoryName FROM category WHERE categoryId=#{categoryId}") + + String getSubCategoryName(Integer categoryId); +} diff --git a/src/main/java/top/suyiiyii/sims/mapper/RecordMapper.java b/src/main/java/top/suyiiyii/sims/mapper/RecordMapper.java new file mode 100644 index 0000000..a3d12a4 --- /dev/null +++ b/src/main/java/top/suyiiyii/sims/mapper/RecordMapper.java @@ -0,0 +1,24 @@ +package top.suyiiyii.sims.mapper; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; +import top.suyiiyii.sims.dto.RecordDto; +import top.suyiiyii.sims.entity.Record; + +import java.util.List; + +/** + * @Author tortoise + * @Date 2024/8/16 21:39 + * @PackageName:top.suyiiyii.sims.mapper + * @ClassName: RecordMapper + * @Description: TODO + * @Version 1.0 + */ +@Mapper +public interface RecordMapper { + //分页查询 +@Select("select * from record limit #{page},#{size}") + List getAllRecords(Integer page, Integer size); +} diff --git a/src/main/java/top/suyiiyii/sims/mapper/RoleMapper.java b/src/main/java/top/suyiiyii/sims/mapper/RoleMapper.java index d22fbfe..fd38bfa 100644 --- a/src/main/java/top/suyiiyii/sims/mapper/RoleMapper.java +++ b/src/main/java/top/suyiiyii/sims/mapper/RoleMapper.java @@ -51,7 +51,7 @@ public interface RoleMapper { "FROM role " + "WHERE role_id IN " + "(SELECT role_id FROM user_role WHERE user_id = #{user_id})") - List selectRolesById(@Param("user_id") int id); + List selectRolesById(@Param("user_id") int id); @Select("SELECT role_name FROM role WHERE role_id=#{roleId}") List selectRoleNamesByRoleId(Integer roleId); diff --git a/src/main/java/top/suyiiyii/sims/mapper/UserMapper.java b/src/main/java/top/suyiiyii/sims/mapper/UserMapper.java index 8d7746a..d6e956c 100644 --- a/src/main/java/top/suyiiyii/sims/mapper/UserMapper.java +++ b/src/main/java/top/suyiiyii/sims/mapper/UserMapper.java @@ -49,7 +49,7 @@ public interface UserMapper extends BaseMapper { /** * 根据ID查询用户信息 - * @param id 用户ID + * @param * @return 用户对象 */ @Select("SELECT id, user_id, username, password, name, email, `group` from user WHERE id = #{Id}") diff --git a/src/main/java/top/suyiiyii/sims/service/CategoryService.java b/src/main/java/top/suyiiyii/sims/service/CategoryService.java new file mode 100644 index 0000000..47eee90 --- /dev/null +++ b/src/main/java/top/suyiiyii/sims/service/CategoryService.java @@ -0,0 +1,28 @@ +package top.suyiiyii.sims.service; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import top.suyiiyii.sims.mapper.CategoryMapper; + +/** + * @Author tortoise + * @Date 2024/8/16 23:32 + * @PackageName:top.suyiiyii.sims.service + * @ClassName: CategoryService + * @Description: TODO + * @Version 1.0 + */ +@Service +public class CategoryService { + @Autowired + CategoryMapper categoryMapper; + + + public String getCategoryName(Integer id) { + return categoryMapper.getCategoryName(id); + } + + public String getsubCategoryName(Integer categoryId) { + return categoryMapper.getSubCategoryName(categoryId); + } +} diff --git a/src/main/java/top/suyiiyii/sims/service/RecordService.java b/src/main/java/top/suyiiyii/sims/service/RecordService.java new file mode 100644 index 0000000..2dee1e4 --- /dev/null +++ b/src/main/java/top/suyiiyii/sims/service/RecordService.java @@ -0,0 +1,30 @@ +package top.suyiiyii.sims.service; + + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import top.suyiiyii.sims.dto.RecordDto; +import top.suyiiyii.sims.entity.Record; +import top.suyiiyii.sims.mapper.RecordMapper; + +import java.util.List; + +/** + * @Author tortoise + * @Date 2024/8/16 21:47 + * @PackageName:top.suyiiyii.sims.service + * @ClassName: RecordService + * @Description: TODO + * @Version 1.0 + */ +@Service +public class RecordService { + @Autowired + RecordMapper recordMapper; + + + public List getAllRecords(Integer page, Integer size) { + + return recordMapper.getAllRecords(page, size); + } +} diff --git a/src/main/java/top/suyiiyii/sims/service/RoleService.java b/src/main/java/top/suyiiyii/sims/service/RoleService.java index b8cdd70..6312a04 100644 --- a/src/main/java/top/suyiiyii/sims/service/RoleService.java +++ b/src/main/java/top/suyiiyii/sims/service/RoleService.java @@ -41,7 +41,7 @@ public class RoleService { * @param Id * @return: java.util.List */ - List selectRolesById(int id){ + public List selectRolesById(int id){ return roleMapper.selectRolesById(id); } diff --git a/src/main/java/top/suyiiyii/sims/service/UserService.java b/src/main/java/top/suyiiyii/sims/service/UserService.java index fcaabc3..26c84f0 100644 --- a/src/main/java/top/suyiiyii/sims/service/UserService.java +++ b/src/main/java/top/suyiiyii/sims/service/UserService.java @@ -62,10 +62,10 @@ public class UserService { } HashSet permissionsSet = new HashSet<>(); Integer id = dbUser.getId(); - List UserRoles = roleMapper.selectRolesById(id); - for (UserRole userRole : UserRoles) { + List roles = roleMapper.selectRolesById(id); + for (Role role : roles) { //根据roleid找所有permissionId - List rolePerminsion = permissionsMapper.getRolePerminsionByRoleId(userRole.getRoleId()); + List rolePerminsion = permissionsMapper.getRolePerminsionByRoleId(role.getRoleId()); for (RolePermission rolePermission : rolePerminsion) { Integer permissionId = rolePermission.getPermissionId(); //根据permissionId找permission @@ -126,9 +126,9 @@ public class UserService { UserDto.setGroup(user.getUserGroup()); UserDto.setRoles(new ArrayList<>()); Integer id = user.getId(); - List userRoles = roleMapper.selectRolesById(id); - for (UserRole userRole : userRoles) { - Integer roleId = userRole.getRoleId(); + List roles = roleMapper.selectRolesById(id); + for (Role role : roles) { + Integer roleId = role.getRoleId(); // 获取一个角色的名称列表 List roleNameList = roleMapper.selectRoleNamesByRoleId(roleId); // 累加角色名称到用户的角色列表中 @@ -147,9 +147,9 @@ public class UserService { UserDto.setGrade(user.getGrade()); UserDto.setGroup(user.getUserGroup()); UserDto.setRoles(new ArrayList<>()); - List userRoles = roleMapper.selectRolesById(id); - for (UserRole userRole : userRoles) { - Integer roleId = userRole.getRoleId(); + List roles = roleMapper.selectRolesById(id); + for (Role role : roles) { + Integer roleId = role.getRoleId(); // 获取一个角色的名称列表 List roleNameList = roleMapper.selectRoleNamesByRoleId(roleId); // 累加角色名称到用户的角色列表中