reformat 格式化代码

This commit is contained in:
suyiiyii 2024-08-25 20:15:53 +08:00
parent 8d10add577
commit 3af5ba9293
28 changed files with 100 additions and 115 deletions

View File

@ -31,7 +31,7 @@ public class InterceptorConfig extends WebMvcConfigurationSupport {
.addPathPatterns("/**") .addPathPatterns("/**")
.excludePathPatterns("/v3/api-docs/**"); .excludePathPatterns("/v3/api-docs/**");
registry.addInterceptor(rbacInterceptor) registry.addInterceptor(rbacInterceptor)
.excludePathPatterns("/v3/api-docs/**");; .excludePathPatterns("/v3/api-docs/**");
super.addInterceptors(registry); super.addInterceptors(registry);
} }

View File

@ -4,8 +4,6 @@ import org.modelmapper.ModelMapper;
import org.modelmapper.convention.MatchingStrategies; import org.modelmapper.convention.MatchingStrategies;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import top.suyiiyii.sims.dto.RecordDto;
import top.suyiiyii.sims.entity.User;
/** /**
* @Author tortoise * @Author tortoise
@ -25,19 +23,20 @@ public class ModelMapperConfig {
// 设置匹配策略为严格模式 // 设置匹配策略为严格模式
modelMapper.getConfiguration().setMatchingStrategy(MatchingStrategies.STRICT); modelMapper.getConfiguration().setMatchingStrategy(MatchingStrategies.STRICT);
// configureUser(modelMapper); // configureUser(modelMapper);
return modelMapper; return modelMapper;
} }
// 配置 User 类的映射规则 // 配置 User 类的映射规则
private void configureUser(ModelMapper modelMapper) { private void configureUser(ModelMapper modelMapper) {
// 定义 UserModel -> User 的映射规则 // 定义 UserModel -> User 的映射规则
// modelMapper.typeMap(RecordDto.class, Record.class) // modelMapper.typeMap(RecordDto.class, Record.class)
// 跳过设置密码字段 // 跳过设置密码字段
// 定义 User -> UserModel 的映射规则 // 定义 User -> UserModel 的映射规则
// modelMapper.typeMap(User.class, RecordDto.class) // modelMapper.typeMap(User.class, RecordDto.class)
// .addMappings(mapper -> mapper.skip(RecordDto::setPassword)) // 跳过设置密码字段 // .addMappings(mapper -> mapper.skip(RecordDto::setPassword)) // 跳过设置密码字段
// .addMappings(mapper -> mapper.map(User::getRealName, UserModel::setName)); // User realName 映射为 UserModel name // .addMappings(mapper -> mapper.map(User::getRealName, UserModel::setName)); // User realName 映射为 UserModel name
// .addMappings(mapper -> mapper.using(dateToStringConverter).map(User::getCreateTime, UserModel::setCreateTime)) // .addMappings(mapper -> mapper.using(dateToStringConverter).map(User::getCreateTime, UserModel::setCreateTime))
// .addMappings(mapper -> mapper.using(dateToStringConverter).map(User::getUpdateTime, UserModel::setUpdateTime)); // .addMappings(mapper -> mapper.using(dateToStringConverter).map(User::getUpdateTime, UserModel::setUpdateTime));
} }

View File

@ -43,8 +43,8 @@ public class AdminController {
} }
} }
/** /**
request.setAttribute();lUsers(); * request.setAttribute();lUsers();
return Result.success(userList); * return Result.success(userList);
} * }
} * }
**/ **/

View File

@ -1,35 +1,23 @@
package top.suyiiyii.sims.controller; package top.suyiiyii.sims.controller;
import com.auth0.jwt.JWT;
import com.auth0.jwt.exceptions.JWTDecodeException;
import com.auth0.jwt.interfaces.DecodedJWT;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletRequest;
import org.modelmapper.ModelMapper; import org.modelmapper.ModelMapper;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import top.suyiiyii.sims.common.AuthAccess; import top.suyiiyii.sims.common.AuthAccess;
import top.suyiiyii.sims.common.Result; import top.suyiiyii.sims.common.Result;
import top.suyiiyii.sims.dto.CommonResponse; import top.suyiiyii.sims.dto.CommonResponse;
import top.suyiiyii.sims.dto.RecordDto; import top.suyiiyii.sims.dto.RecordDto;
import top.suyiiyii.sims.entity.Record; 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.CategoryService;
import top.suyiiyii.sims.service.RecordService; import top.suyiiyii.sims.service.RecordService;
import top.suyiiyii.sims.service.RoleService; import top.suyiiyii.sims.service.RoleService;
import top.suyiiyii.sims.service.UserService; import top.suyiiyii.sims.service.UserService;
import top.suyiiyii.sims.utils.JwtUtils; import top.suyiiyii.sims.utils.JwtUtils;
import java.time.LocalDateTime;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
@RestController @RestController
public class public class
@ -57,7 +45,7 @@ RecordController {
RecordDto recordDto = modelMapper.map(record, RecordDto.class); RecordDto recordDto = modelMapper.map(record, RecordDto.class);
recordDto.setCategoryName(categoryService.getCategoryName(record.getCategoryId())); recordDto.setCategoryName(categoryService.getCategoryName(record.getCategoryId()));
recordDto.setSubCategoryName(categoryService.getsubCategoryName( record.getCategoryId())); recordDto.setSubCategoryName(categoryService.getsubCategoryName(record.getCategoryId()));
recordDtos.add(recordDto); recordDtos.add(recordDto);
} }
return Result.success(recordDtos); return Result.success(recordDtos);
@ -70,16 +58,16 @@ RecordController {
@RequestParam(defaultValue = "10") int size, @RequestParam(defaultValue = "10") int size,
HttpServletRequest request) { HttpServletRequest request) {
String token = (String) request.getAttribute("token"); String token = (String) request.getAttribute("token");
String userId= JwtUtils.extractUserId(token); String userId = JwtUtils.extractUserId(token);
List<RecordDto> recordDtos=new ArrayList<>(); List<RecordDto> recordDtos = new ArrayList<>();
List<Record> records = recordService.getMyAllRecords(page, size,userId); List<Record> records = recordService.getMyAllRecords(page, size, userId);
for (Record record : records) { for (Record record : records) {
RecordDto recordDto = modelMapper.map(record, RecordDto.class); RecordDto recordDto = modelMapper.map(record, RecordDto.class);
recordDto.setCategoryName(categoryService.getCategoryName(record.getCategoryId())); recordDto.setCategoryName(categoryService.getCategoryName(record.getCategoryId()));
recordDto.setSubCategoryName(categoryService.getsubCategoryName( record.getCategoryId())); recordDto.setSubCategoryName(categoryService.getsubCategoryName(record.getCategoryId()));
recordDtos.add(recordDto); recordDtos.add(recordDto);
} }
@ -92,7 +80,7 @@ RecordController {
@PutMapping("/admin/record/{id}") @PutMapping("/admin/record/{id}")
public Result<CommonResponse> adminUpdateRecord(@PathVariable Integer id, @RequestBody RecordDto recordDto) { public Result<CommonResponse> adminUpdateRecord(@PathVariable Integer id, @RequestBody RecordDto recordDto) {
Record record = modelMapper.map(recordDto, Record.class); Record record = modelMapper.map(recordDto, Record.class);
recordService.updateRecord(record,id); recordService.updateRecord(record, id);
return Result.msg("修改成功"); return Result.msg("修改成功");
} }

View File

@ -11,7 +11,6 @@ import top.suyiiyii.sims.common.AuthAccess;
import top.suyiiyii.sims.common.Result; import top.suyiiyii.sims.common.Result;
import top.suyiiyii.sims.dto.CommonResponse; import top.suyiiyii.sims.dto.CommonResponse;
import top.suyiiyii.sims.dto.UserDto; import top.suyiiyii.sims.dto.UserDto;
import top.suyiiyii.sims.entity.User;
import top.suyiiyii.sims.exception.ServiceException; import top.suyiiyii.sims.exception.ServiceException;
import top.suyiiyii.sims.service.RoleService; import top.suyiiyii.sims.service.RoleService;
import top.suyiiyii.sims.service.UserService; import top.suyiiyii.sims.service.UserService;

View File

@ -4,9 +4,6 @@ import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.time.LocalDateTime;
import java.util.List;
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor

View File

@ -1,7 +1,5 @@
package top.suyiiyii.sims.entity; package top.suyiiyii.sims.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.tangzc.mpe.autotable.annotation.Table; import com.tangzc.mpe.autotable.annotation.Table;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

View File

@ -1,7 +1,5 @@
package top.suyiiyii.sims.entity; package top.suyiiyii.sims.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.tangzc.mpe.autotable.annotation.Table; import com.tangzc.mpe.autotable.annotation.Table;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

View File

@ -1,6 +1,5 @@
package top.suyiiyii.sims.entity; package top.suyiiyii.sims.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.tangzc.mpe.autotable.annotation.Table; import com.tangzc.mpe.autotable.annotation.Table;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

View File

@ -7,8 +7,6 @@ import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.time.LocalDateTime;
/** /**
* @Author tortoise * @Author tortoise
* @Date 2024/8/9 14:04 * @Date 2024/8/9 14:04

View File

@ -13,7 +13,7 @@ import java.time.LocalDateTime;
* @Date 2024/8/10 0:31 * @Date 2024/8/10 0:31
* @PackageName:top.suyiiyii.sims.entity * @PackageName:top.suyiiyii.sims.entity
* @ClassName: RevokeRequest * @ClassName: RevokeRequest
* @Description: 存储普通成员提出的奖惩撤销申请并跟踪申请状态 * @Description: 存储普通成员提出的奖惩撤销申请并跟踪申请状态
* @Version 1.0 * @Version 1.0
*/ */
@Data @Data

View File

@ -13,7 +13,7 @@ import java.time.LocalDateTime;
* @Date 2024/8/10 0:34 * @Date 2024/8/10 0:34
* @PackageName:top.suyiiyii.sims.entity * @PackageName:top.suyiiyii.sims.entity
* @ClassName: RevokedRecord * @ClassName: RevokedRecord
* @Description: 存储管理员对奖惩记录的撤销信息包括撤销原因 * @Description: 存储管理员对奖惩记录的撤销信息包括撤销原因
* @Version 1.0 * @Version 1.0
*/ */
@Data @Data

View File

@ -1,6 +1,5 @@
package top.suyiiyii.sims.entity; package top.suyiiyii.sims.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.tangzc.mpe.autotable.annotation.Table; import com.tangzc.mpe.autotable.annotation.Table;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;

View File

@ -21,7 +21,7 @@ import lombok.NoArgsConstructor;
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class Role { public class Role {
@ColumnId(mode = IdType.AUTO,comment = "id主键") @ColumnId(mode = IdType.AUTO, comment = "id主键")
private Integer id; private Integer id;
//管理员普通用户组员组长队长 //管理员普通用户组员组长队长
@ColumnNotNull @ColumnNotNull
@ -29,6 +29,6 @@ public class Role {
private String tag; private String tag;
public static Role guest() { public static Role guest() {
return new Role(-1, "guest",""); return new Role(-1, "guest", "");
} }
} }

View File

@ -1,8 +1,6 @@
package top.suyiiyii.sims.entity; package top.suyiiyii.sims.entity;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.tangzc.autotable.annotation.ColumnNotNull; import com.tangzc.autotable.annotation.ColumnNotNull;
import com.tangzc.mpe.autotable.annotation.ColumnId; import com.tangzc.mpe.autotable.annotation.ColumnId;
import com.tangzc.mpe.autotable.annotation.Table; import com.tangzc.mpe.autotable.annotation.Table;
@ -10,8 +8,6 @@ import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import java.security.Permission;
/** /**
* @Author tortoise * @Author tortoise
* @Date 2024/8/9 14:03 * @Date 2024/8/9 14:03
@ -25,7 +21,7 @@ import java.security.Permission;
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class RolePermission { public class RolePermission {
@ColumnId(mode = IdType.AUTO,comment = "id主键") @ColumnId(mode = IdType.AUTO, comment = "id主键")
private Integer id; private Integer id;
@ColumnNotNull @ColumnNotNull
private Integer roleId; private Integer roleId;

View File

@ -21,18 +21,18 @@ import lombok.NoArgsConstructor;
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class User { public class User {
@ColumnId(mode = IdType.AUTO,comment = "id主键") @ColumnId(mode = IdType.AUTO, comment = "id主键")
private Integer id; private Integer id;
@Column(comment = "学生id",notNull = true) @Column(comment = "学生id", notNull = true)
private Integer studentId; private Integer studentId;
@Column(comment = "用户名",notNull = true) @Column(comment = "用户名", notNull = true)
private String username; private String username;
@Column(comment = "密码",notNull = true) @Column(comment = "密码", notNull = true)
private String password; private String password;
@Column(comment = "邮箱",notNull = true) @Column(comment = "邮箱", notNull = true)
private String email; private String email;
@Column(comment = "年级",notNull = true) @Column(comment = "年级", notNull = true)
private String grade; private String grade;
@Column(comment = "用户所属团队",notNull = true) @Column(comment = "用户所属团队", notNull = true)
private String userGroup; private String userGroup;
} }

View File

@ -1,7 +1,6 @@
package top.suyiiyii.sims.entity; package top.suyiiyii.sims.entity;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.tangzc.autotable.annotation.ColumnNotNull; import com.tangzc.autotable.annotation.ColumnNotNull;
import com.tangzc.mpe.autotable.annotation.ColumnId; import com.tangzc.mpe.autotable.annotation.ColumnId;
import com.tangzc.mpe.autotable.annotation.Table; import com.tangzc.mpe.autotable.annotation.Table;
@ -22,7 +21,7 @@ import lombok.NoArgsConstructor;
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class UserRole { public class UserRole {
@ColumnId(mode = IdType.AUTO,comment = "id主键") @ColumnId(mode = IdType.AUTO, comment = "id主键")
private Integer id; private Integer id;
@ColumnNotNull @ColumnNotNull
private Integer userId; private Integer userId;

View File

@ -11,14 +11,15 @@ import lombok.Getter;
* @Version 1.0 * @Version 1.0
*/ */
@Getter @Getter
public class ServiceException extends RuntimeException{ public class ServiceException extends RuntimeException {
public final String code; public final String code;
public ServiceException(String msg){ public ServiceException(String msg) {
super(msg); super(msg);
this.code = "500"; this.code = "500";
} }
public ServiceException(String code ,String msg){
public ServiceException(String code, String msg) {
super(msg); super(msg);
this.code = code; this.code = code;
} }

View File

@ -17,7 +17,8 @@ public interface CategoryMapper {
String getCategoryName(Integer categoryId); String getCategoryName(Integer categoryId);
@Select("SELECT category_name FROM reward_punishment_category WHERE category_id=#{categoryId}") @Select("SELECT category_name FROM reward_punishment_category WHERE category_id=#{categoryId}")
String getSubCategoryName(Integer categoryId); String getSubCategoryName(Integer categoryId);
@Select("SELECT category_id FROM reward_punishment_category WHERE sub_category_name=#{subCategoryName}")
@Select("SELECT category_id FROM reward_punishment_category WHERE sub_category_name=#{subCategoryName}")
Integer getIdBySubCategoryName(String subCategoryName); Integer getIdBySubCategoryName(String subCategoryName);
} }

View File

@ -1,6 +1,5 @@
package top.suyiiyii.sims.mapper; package top.suyiiyii.sims.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import top.suyiiyii.sims.entity.Permissions; import top.suyiiyii.sims.entity.Permissions;
@ -17,9 +16,10 @@ import java.util.List;
* @Version 1.0 * @Version 1.0
*/ */
@Mapper @Mapper
public interface PermissionsMapper { public interface PermissionsMapper {
@Select("SELECT * FROM role_permission WHERE role_id = #{id}") @Select("SELECT * FROM role_permission WHERE role_id = #{id}")
List<RolePermission> getRolePerminsionByRoleId(Integer id); List<RolePermission> getRolePerminsionByRoleId(Integer id);
@Select("SELECT * FROM permissions WHERE permission_id = #{permissionId}")
@Select("SELECT * FROM permissions WHERE permission_id = #{permissionId}")
Permissions selectById(Integer permissionId); Permissions selectById(Integer permissionId);
} }

View File

@ -1,7 +1,6 @@
package top.suyiiyii.sims.mapper; package top.suyiiyii.sims.mapper;
import org.apache.ibatis.annotations.*; import org.apache.ibatis.annotations.*;
import top.suyiiyii.sims.dto.RecordDto;
import top.suyiiyii.sims.entity.Record; import top.suyiiyii.sims.entity.Record;
import java.util.List; import java.util.List;
@ -17,9 +16,10 @@ import java.util.List;
@Mapper @Mapper
public interface RecordMapper { public interface RecordMapper {
//分页查询 //分页查询
@Select("select * from record limit #{page},#{size}") @Select("select * from record limit #{page},#{size}")
List<Record> getAllRecords(Integer page, Integer size); List<Record> getAllRecords(Integer page, Integer size);
//根据学号分页查询所以信息
//根据学号分页查询所以信息
@Select("select * from record where student_id = #{id} limit #{page},#{size}") @Select("select * from record where student_id = #{id} limit #{page},#{size}")
List<Record> getMyAllRecords(Integer page, Integer size, String id); List<Record> getMyAllRecords(Integer page, Integer size, String id);
@ -42,6 +42,7 @@ public interface RecordMapper {
@Delete("delete from record where id = #{id}") @Delete("delete from record where id = #{id}")
void deleteRecord(Integer id); void deleteRecord(Integer id);
@Insert({ @Insert({
"insert into record (student_id, category_id, `date`, content, reason, amount, remark, is_revoked,", "insert into record (student_id, category_id, `date`, content, reason, amount, remark, is_revoked,",
"revoke_date, revoke_reason, revoke_remark, operator_user_id, last_update_time)", "revoke_date, revoke_reason, revoke_remark, operator_user_id, last_update_time)",

View File

@ -1,12 +1,8 @@
package top.suyiiyii.sims.mapper; package top.suyiiyii.sims.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import lombok.Data;
import org.apache.ibatis.annotations.*; import org.apache.ibatis.annotations.*;
import top.suyiiyii.sims.entity.Permissions;
import top.suyiiyii.sims.entity.Role; import top.suyiiyii.sims.entity.Role;
import top.suyiiyii.sims.entity.User; import top.suyiiyii.sims.entity.User;
import top.suyiiyii.sims.entity.UserRole;
import java.util.List; import java.util.List;
@ -22,15 +18,18 @@ import java.util.List;
public interface RoleMapper { public interface RoleMapper {
@Insert("INSERT INTO role(name) VALUES(#{name}") @Insert("INSERT INTO role(name) VALUES(#{name}")
void addRole(String name); void addRole(String name);
@Delete("DELETE FROM role WHERE name=#{name}")
@Delete("DELETE FROM role WHERE name=#{name}")
void deleteRole(String name); void deleteRole(String name);
@Update("UPDATE role SET name=#{newName} WHERE name=#{name}")
@Update("UPDATE role SET name=#{newName} WHERE name=#{name}")
void updateRole(String name, String newName); void updateRole(String name, String newName);
/** /**
* @param
* @author: tortoise * @author: tortoise
* @date: 2024/8/14 14:23 * @date: 2024/8/14 14:23
* @Description: TODO 查询用户信息 * @Description: TODO 查询用户信息
* @param
* @return: java.util.List<top.suyiiyii.sims.entity.User> * @return: java.util.List<top.suyiiyii.sims.entity.User>
*/ */
@Select("SELECT u.username, u.name, u.userId, r.role_name " + @Select("SELECT u.username, u.name, u.userId, r.role_name " +
@ -53,7 +52,7 @@ public interface RoleMapper {
"(SELECT role_id FROM user_role WHERE user_id = #{user_id})") "(SELECT role_id FROM user_role WHERE user_id = #{user_id})")
List<Role> selectRolesById(@Param("user_id") int id); List<Role> selectRolesById(@Param("user_id") int id);
@Select("SELECT role_name FROM role WHERE role_id=#{roleId}") @Select("SELECT role_name FROM role WHERE role_id=#{roleId}")
List<String> selectRoleNamesByRoleId(Integer roleId); List<String> selectRoleNamesByRoleId(Integer roleId);

View File

@ -2,7 +2,6 @@ package top.suyiiyii.sims.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.*; import org.apache.ibatis.annotations.*;
import top.suyiiyii.sims.entity.Role;
import top.suyiiyii.sims.entity.User; import top.suyiiyii.sims.entity.User;
import java.util.List; import java.util.List;
@ -19,6 +18,7 @@ import java.util.List;
public interface UserMapper extends BaseMapper<User> { public interface UserMapper extends BaseMapper<User> {
/** /**
* 添加新用户 * 添加新用户
*
* @param user 新用户对象 * @param user 新用户对象
* @return 影响的行数 * @return 影响的行数
*/ */
@ -27,6 +27,7 @@ public interface UserMapper extends BaseMapper<User> {
/** /**
* 根据ID删除用户 * 根据ID删除用户
*
* @param id 用户ID * @param id 用户ID
* @return 影响的行数 * @return 影响的行数
*/ */
@ -35,6 +36,7 @@ public interface UserMapper extends BaseMapper<User> {
/** /**
* 更新用户信息 * 更新用户信息
*
* @param user 更新后的用户对象 * @param user 更新后的用户对象
* @return 影响的行数 * @return 影响的行数
*/ */
@ -50,6 +52,7 @@ public interface UserMapper extends BaseMapper<User> {
/** /**
* 根据ID查询用户信息 * 根据ID查询用户信息
*
* @param * @param
* @return 用户对象 * @return 用户对象
*/ */
@ -58,22 +61,27 @@ public interface UserMapper extends BaseMapper<User> {
/** /**
* 根据iD查询用户信息 * 根据iD查询用户信息
*
* @param * @param
* @return 用户对象 * @return 用户对象
*/ */
@Select("SELECT id, student_id, username, password, username, email,grade, user_group from user WHERE id = #{id}") @Select("SELECT id, student_id, username, password, username, email,grade, user_group from user WHERE id = #{id}")
User selectById(Integer id); User selectById(Integer id);
/** /**
* 查询所有用户信息 * 查询所有用户信息
*
* @return 用户列表 * @return 用户列表
*/ */
@Select("SELECT id, student_id, username, password, username, email, grade, user_group FROM user") @Select("SELECT id, student_id, username, password, username, email, grade, user_group FROM user")
List<User> selectAll(); List<User> selectAll();
@Select("select * from user where username = #{username}") @Select("select * from user where username = #{username}")
User selectByUserName(@Param("username") String username); User selectByUserName(@Param("username") String username);
@Update("update user set password = #{password} where username = #{username}")
@Update("update user set password = #{password} where username = #{username}")
void updatePassword(User user); void updatePassword(User user);
@Select("select student_id from user where id = #{userId}")
@Select("select student_id from user where id = #{userId}")
String getStudentIdById(String userId); String getStudentIdById(String userId);
} }

View File

@ -19,7 +19,7 @@ public class CategoryService {
public String getCategoryName(Integer id) { public String getCategoryName(Integer id) {
return categoryMapper.getCategoryName(id); return categoryMapper.getCategoryName(id);
} }
public String getsubCategoryName(Integer categoryId) { public String getsubCategoryName(Integer categoryId) {

View File

@ -1,10 +1,8 @@
package top.suyiiyii.sims.service; package top.suyiiyii.sims.service;
import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import top.suyiiyii.sims.dto.RecordDto;
import top.suyiiyii.sims.entity.Record; import top.suyiiyii.sims.entity.Record;
import top.suyiiyii.sims.mapper.RecordMapper; import top.suyiiyii.sims.mapper.RecordMapper;
import top.suyiiyii.sims.mapper.UserMapper; import top.suyiiyii.sims.mapper.UserMapper;

View File

@ -1,11 +1,9 @@
package top.suyiiyii.sims.service; package top.suyiiyii.sims.service;
import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import top.suyiiyii.sims.entity.Role; import top.suyiiyii.sims.entity.Role;
import top.suyiiyii.sims.entity.User; import top.suyiiyii.sims.entity.User;
import top.suyiiyii.sims.entity.UserRole;
import top.suyiiyii.sims.mapper.RoleMapper; import top.suyiiyii.sims.mapper.RoleMapper;
import java.util.List; import java.util.List;
@ -23,23 +21,22 @@ public class RoleService {
@Autowired @Autowired
RoleMapper roleMapper; RoleMapper roleMapper;
public List<User> findAllUsersWithRoles(){ public List<User> findAllUsersWithRoles() {
return roleMapper.selectAllUsersWithRoles(); return roleMapper.selectAllUsersWithRoles();
} }
/** /**
* @param Id
* @author: tortoise * @author: tortoise
* @date: 2024/8/14 14:39 * @date: 2024/8/14 14:39
* @Description: TODO 查看自己身份 * @Description: TODO 查看自己身份
* @param Id
* @return: java.util.List<top.suyiiyii.sims.entity.Role> * @return: java.util.List<top.suyiiyii.sims.entity.Role>
*/ */
public List<Role> selectRolesById(int id){ public List<Role> selectRolesById(int id) {
return roleMapper.selectRolesById(id); return roleMapper.selectRolesById(id);
} }
public boolean isRoleNameAdmin(Integer id) { public boolean isRoleNameAdmin(Integer id) {
List<Role> roles = roleMapper.selectRolesById(id); List<Role> roles = roleMapper.selectRolesById(id);
for (Role role : roles) { for (Role role : roles) {

View File

@ -1,23 +1,24 @@
package top.suyiiyii.sims.service; package top.suyiiyii.sims.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.modelmapper.ModelMapper; import org.modelmapper.ModelMapper;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import top.suyiiyii.sims.controller.UserController; import top.suyiiyii.sims.controller.UserController;
import top.suyiiyii.sims.dto.UserDto; import top.suyiiyii.sims.dto.UserDto;
import top.suyiiyii.sims.entity.*; import top.suyiiyii.sims.entity.Role;
import top.suyiiyii.sims.entity.User;
import top.suyiiyii.sims.exception.ServiceException; import top.suyiiyii.sims.exception.ServiceException;
import top.suyiiyii.sims.mapper.*; import top.suyiiyii.sims.mapper.MpUserMapper;
import top.suyiiyii.sims.mapper.PermissionsMapper;
import top.suyiiyii.sims.mapper.RoleMapper;
import top.suyiiyii.sims.mapper.UserMapper;
import top.suyiiyii.sims.utils.JwtUtils; import top.suyiiyii.sims.utils.JwtUtils;
import java.util.*; import java.util.ArrayList;
import java.util.List;
/** /**
* @Author tortoise * @Author tortoise
@ -59,8 +60,9 @@ public class UserService {
public List<User> selectAll() { public List<User> selectAll() {
return userMapper.selectAll(); return userMapper.selectAll();
} }
//TODO:返回一个DTO,用户基本信息
public String login(String username, String password) { //TODO:返回一个DTO,用户基本信息
public String login(String username, String password) {
User dbUser = userMapper.selectByUserName(username); User dbUser = userMapper.selectByUserName(username);
if (dbUser == null) { if (dbUser == null) {
@ -95,19 +97,22 @@ public class UserService {
if (req.getUserGroup() == null || req.getUserGroup().equals("")) { if (req.getUserGroup() == null || req.getUserGroup().equals("")) {
throw new ServiceException("组别不能为空"); throw new ServiceException("组别不能为空");
} }
User user =modelMapper.map(req, User.class); User user = modelMapper.map(req, User.class);
mpUserMapper.insert(user); mpUserMapper.insert(user);
user = mpUserMapper.selectOne(new LambdaQueryWrapper<User>().eq(User::getUsername, req.getUsername())); user = mpUserMapper.selectOne(new LambdaQueryWrapper<User>().eq(User::getUsername, req.getUsername()));
rbacService.addRoleWithUserId(user.getId(), "user"); rbacService.addRoleWithUserId(user.getId(), "user");
} }
public User selectByUsername(String username) { public User selectByUsername(String username) {
return userMapper.selectByUserName(username); return userMapper.selectByUserName(username);
} }
public void updatePassword(User user) { public void updatePassword(User user) {
userMapper.updatePassword(user); userMapper.updatePassword(user);
} }
public List<UserDto> findAllUsers(){
public List<UserDto> findAllUsers() {
List<User> users = userMapper.selectAll(); List<User> users = userMapper.selectAll();
List<UserDto> UserDtos = new ArrayList<>(); List<UserDto> UserDtos = new ArrayList<>();
@ -131,6 +136,7 @@ public class UserService {
} }
return UserDtos; return UserDtos;
} }
public UserDto findUser(Integer id) { public UserDto findUser(Integer id) {
UserDto UserDto = new UserDto(); UserDto UserDto = new UserDto();

View File

@ -30,17 +30,13 @@ public class JwtUtils {
private static UserMapper staticUserMapper; private static UserMapper staticUserMapper;
@Resource @Resource
UserMapper userMapper; UserMapper userMapper;
@PostConstruct
public void setUserService() {
staticUserMapper=userMapper;
}
/** /**
* @param userId
* @param sign
* @author: tortoise * @author: tortoise
* @date: 2024/8/1 15:12 * @date: 2024/8/1 15:12
* @Description: 生成token * @Description: 生成token
* @param userId
* @param sign
* @return: java.lang.String * @return: java.lang.String
*/ */
public static String createToken(String userId, String sign) { public static String createToken(String userId, String sign) {
@ -48,8 +44,9 @@ public class JwtUtils {
.withAudience(userId) .withAudience(userId)
.withExpiresAt(DateUtil.offsetHour(new Date(), 2)) .withExpiresAt(DateUtil.offsetHour(new Date(), 2))
.sign(Algorithm.HMAC256(sign)); .sign(Algorithm.HMAC256(sign));
// 设置令牌过期时间为2小时 // 设置令牌过期时间为2小时
} }
public static User getCurrentUser() { public static User getCurrentUser() {
try { try {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
@ -63,6 +60,7 @@ public class JwtUtils {
} }
return null; return null;
} }
// 验证 JWT 令牌 // 验证 JWT 令牌
public static boolean verifyToken(String token, String secret) { public static boolean verifyToken(String token, String secret) {
try { try {
@ -74,6 +72,7 @@ public class JwtUtils {
return false; return false;
} }
} }
public static String extractUserId(String token) { public static String extractUserId(String token) {
try { try {
return JWT.decode(token).getAudience().get(0); // token 中提取用户ID return JWT.decode(token).getAudience().get(0); // token 中提取用户ID
@ -82,4 +81,9 @@ public class JwtUtils {
return null; return null;
} }
} }
@PostConstruct
public void setUserService() {
staticUserMapper = userMapper;
}
} }