mirror of
https://github.com/suyiiyii/SIMS.git
synced 2025-06-03 12:56:10 +08:00
模糊查询
This commit is contained in:
parent
5b9e835108
commit
4a72ee2e53
@ -5,6 +5,7 @@ import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import top.suyiiyii.sims.common.Result;
|
||||
import top.suyiiyii.sims.dto.RecordDto;
|
||||
import top.suyiiyii.sims.entity.User;
|
||||
import top.suyiiyii.sims.service.RoleService;
|
||||
import top.suyiiyii.sims.service.UserService;
|
||||
@ -38,6 +39,7 @@ public class AdminController {
|
||||
List<User> users = userService.selectAll();
|
||||
return Result.success(users);
|
||||
}
|
||||
|
||||
}
|
||||
/**
|
||||
request.setAttribute();lUsers();
|
||||
|
@ -36,7 +36,7 @@ RecordController {
|
||||
@Autowired
|
||||
RecordService recordService;
|
||||
@Autowired
|
||||
UserService UserService;
|
||||
UserService userService;
|
||||
@Autowired
|
||||
RoleService roleService;
|
||||
@Autowired
|
||||
@ -72,12 +72,9 @@ RecordController {
|
||||
|
||||
List<Record> records = recordService.getMyAllRecords(page, size,userId);
|
||||
for (Record record : records) {
|
||||
|
||||
RecordDto recordDto = modelMapper.map(record, RecordDto.class);
|
||||
|
||||
recordDto.setCategoryName(categoryService.getCategoryName(record.getCategoryId()));
|
||||
recordDto.setSubCategoryName(categoryService.getsubCategoryName( record.getCategoryId()));
|
||||
|
||||
recordDtos.add(recordDto);
|
||||
}
|
||||
return Result.success(recordDtos);
|
||||
@ -113,5 +110,31 @@ RecordController {
|
||||
recordService.addRecord(record);
|
||||
return Result.msg("添加成功");
|
||||
}
|
||||
@Operation(summary = "模糊查询奖惩记录")
|
||||
@GetMapping("/admin/likeRecords")
|
||||
public Result<List<RecordDto>> searchRecords(
|
||||
@RequestParam(defaultValue = "0") int page,
|
||||
@RequestParam(defaultValue = "10") int size,
|
||||
String username,Integer studentId, String userGroup, String grade,String roleName) {
|
||||
Integer s1=studentId;
|
||||
if(roleName!="") {
|
||||
//rolename查用户id
|
||||
Integer userId = roleService.getIdByrolename(roleName);
|
||||
// 用户id查记录
|
||||
s1 = userService.selectStudentIdByUserId(userId);
|
||||
}
|
||||
if(username!="") {
|
||||
//username查用户StudentId
|
||||
s1= roleService.getStudentIdByUsername(username);
|
||||
}
|
||||
List<Record> records=recordService.getRecordsLike(page,size,s1,userGroup,grade);
|
||||
List<RecordDto> RecordDtos = new ArrayList<>();
|
||||
for (Record record : records) {
|
||||
RecordDto RecordDto = modelMapper.map(record, RecordDto.class);
|
||||
RecordDtos.add(RecordDto);
|
||||
}
|
||||
return Result.success(RecordDtos);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1,7 +1,6 @@
|
||||
package top.suyiiyii.sims.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.*;
|
||||
import top.suyiiyii.sims.dto.RecordDto;
|
||||
import top.suyiiyii.sims.entity.Record;
|
||||
|
||||
import java.util.List;
|
||||
@ -22,7 +21,6 @@ public interface RecordMapper {
|
||||
//根据学号分页查询所以信息
|
||||
@Select("select * from record where student_id = #{id} limit #{page},#{size}")
|
||||
List<Record> getMyAllRecords(Integer page, Integer size, String id);
|
||||
|
||||
//根据id,更新对应信息
|
||||
@Update("UPDATE record SET "
|
||||
|
||||
@ -39,7 +37,6 @@ public interface RecordMapper {
|
||||
+ "last_update_time = #{record.lastUpdateTime} "
|
||||
+ "WHERE id = #{id}")
|
||||
void updateRecord(Record record, Integer id);
|
||||
|
||||
@Delete("delete from record where id = #{id}")
|
||||
void deleteRecord(Integer id);
|
||||
@Insert({
|
||||
@ -49,4 +46,28 @@ public interface RecordMapper {
|
||||
"#{revokeDate}, #{revokeReason}, #{revokeRemark}, #{operatorUserId}, #{lastUpdateTime})"
|
||||
})
|
||||
void addRecord(Record record);
|
||||
|
||||
@Select({
|
||||
"<script>",
|
||||
"SELECT * FROM record WHERE 1=1",
|
||||
"<if test='studentId != null '>",
|
||||
"AND student_id = #{studentId}",
|
||||
"</if>",
|
||||
"<if test='userGroup != null and userGroup.trim() != \"\"'>",
|
||||
"AND user_group LIKE CONCAT('%', #{userGroup}, '%')",
|
||||
"</if>",
|
||||
"<if test='grade != null and grade.trim() != \"\"'>",
|
||||
"AND grade LIKE CONCAT('%', #{grade}, '%')",
|
||||
"</if>",
|
||||
"LIMIT #{size}, #{page}",
|
||||
"</script>"
|
||||
})
|
||||
List<Record> getRecordsLike(
|
||||
@Param("size") int size,
|
||||
@Param("page") int page,
|
||||
|
||||
@Param("studentId") Integer studentId,
|
||||
@Param("userGroup") String userGroup,
|
||||
@Param("grade") String grade
|
||||
);
|
||||
}
|
||||
|
@ -56,5 +56,11 @@ public interface RoleMapper {
|
||||
@Select("SELECT role_name FROM role WHERE role_id=#{roleId}")
|
||||
List<String> selectRoleNamesByRoleId(Integer roleId);
|
||||
|
||||
|
||||
@Select("SELECT user_id " +
|
||||
"FROM user_role " +
|
||||
"WHERE role_id IN " +
|
||||
"(SELECT role_id FROM role WHERE role_name=#{roleName})")
|
||||
Integer getIdByrolename(String roleName);
|
||||
@Select("SELECT student_id FROM user WHERE username=#{username}")
|
||||
Integer getStudentIdByUsername(String username);
|
||||
}
|
||||
|
@ -76,4 +76,6 @@ public interface UserMapper extends BaseMapper<User> {
|
||||
void updatePassword(User user);
|
||||
@Select("select student_id from user where id = #{userId}")
|
||||
String getStudentIdById(String userId);
|
||||
@Select("SELECT student_id from user WHERE id = #{id}")
|
||||
Integer selectStudentIdByUserId(Integer id);
|
||||
}
|
||||
|
@ -1,10 +1,9 @@
|
||||
package top.suyiiyii.sims.service;
|
||||
|
||||
|
||||
import org.checkerframework.checker.units.qual.A;
|
||||
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 top.suyiiyii.sims.mapper.UserMapper;
|
||||
@ -48,4 +47,8 @@ public class RecordService {
|
||||
public void addRecord(Record record) {
|
||||
recordMapper.addRecord(record);
|
||||
}
|
||||
|
||||
public List<Record> getRecordsLike(int page, int size, Integer studentId, String userGroup, String grade) {
|
||||
return recordMapper.getRecordsLike(page, size, studentId, userGroup,grade);
|
||||
}
|
||||
}
|
||||
|
@ -49,4 +49,12 @@ public class RoleService {
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public Integer getIdByrolename(String roleName) {
|
||||
return roleMapper.getIdByrolename(roleName);
|
||||
}
|
||||
|
||||
public Integer getStudentIdByUsername(String username) {
|
||||
return roleMapper.getStudentIdByUsername(username);
|
||||
}
|
||||
}
|
||||
|
@ -167,4 +167,9 @@ public class UserService {
|
||||
public List<Role> selectRolesById(Integer studentId) {
|
||||
return roleMapper.selectRolesById(studentId);
|
||||
}
|
||||
|
||||
|
||||
public Integer selectStudentIdByUserId(Integer userId) {
|
||||
return userMapper.selectStudentIdByUserId(userId);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user