mirror of
https://github.com/suyiiyii/SIMS.git
synced 2025-06-02 00:16:11 +08:00
需求3
This commit is contained in:
parent
2d66f086b9
commit
266f87f7c6
@ -2,6 +2,7 @@ package top.suyiiyii.sims.controller;
|
|||||||
|
|
||||||
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 jakarta.servlet.http.HttpServletResponse;
|
||||||
import jakarta.servlet.http.HttpSession;
|
import jakarta.servlet.http.HttpSession;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import org.modelmapper.ModelMapper;
|
import org.modelmapper.ModelMapper;
|
||||||
@ -100,6 +101,7 @@ RecordController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@AuthAccess(allowRoles = {"admin"})
|
@AuthAccess(allowRoles = {"admin"})
|
||||||
@Operation(summary = "添加奖惩记录")
|
@Operation(summary = "添加奖惩记录")
|
||||||
@PostMapping("/admin/record")
|
@PostMapping("/admin/record")
|
||||||
|
@ -3,12 +3,14 @@ package top.suyiiyii.sims.controller;
|
|||||||
import io.swagger.v3.oas.annotations.Operation;
|
import io.swagger.v3.oas.annotations.Operation;
|
||||||
import io.swagger.v3.oas.annotations.responses.ApiResponse;
|
import io.swagger.v3.oas.annotations.responses.ApiResponse;
|
||||||
import io.swagger.v3.oas.annotations.responses.ApiResponses;
|
import io.swagger.v3.oas.annotations.responses.ApiResponses;
|
||||||
|
import jakarta.servlet.http.HttpServletRequest;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
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.JwtInterceptor;
|
||||||
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;
|
||||||
@ -43,8 +45,9 @@ public class RevokedController {
|
|||||||
NotificationService notificationService;
|
NotificationService notificationService;
|
||||||
@Autowired
|
@Autowired
|
||||||
CategoryService categoryService;
|
CategoryService categoryService;
|
||||||
@Autowired
|
@Autowired
|
||||||
RecordService recordService;
|
RecordService recordService;
|
||||||
|
|
||||||
//TODO 普通成员向管理员申请撤销
|
//TODO 普通成员向管理员申请撤销
|
||||||
@AuthAccess(allowRoles = {"user"})
|
@AuthAccess(allowRoles = {"user"})
|
||||||
@Operation(summary = "成员申请撤销")
|
@Operation(summary = "成员申请撤销")
|
||||||
@ -83,21 +86,41 @@ public class RevokedController {
|
|||||||
@AuthAccess(allowRoles = {"admin"})
|
@AuthAccess(allowRoles = {"admin"})
|
||||||
@Operation(summary = "管理员处理撤销申请")
|
@Operation(summary = "管理员处理撤销申请")
|
||||||
@PutMapping("/{id}")
|
@PutMapping("/{id}")
|
||||||
public Result<CommonResponse> revoked( @PathVariable Integer id,RevokedRequest revokedRequest) {
|
public Result<CommonResponse> revoked(@PathVariable Integer id, RevokedRequest revokedRequest, HttpServletRequest request) {
|
||||||
|
String userId = String.valueOf(JwtInterceptor.getUserIdFromReq(request));
|
||||||
if(revokedRequest.getAdminRemark().isBlank()) {
|
if(revokedRequest.getAdminRemark().isBlank()) {
|
||||||
throw new ServiceException("撤销备注不能为空");
|
throw new ServiceException("撤销备注不能为空");
|
||||||
}
|
}
|
||||||
if(!"批准".equals(revokedRequest.getStatus()) && !"拒绝".equals(revokedRequest.getStatus()) ) {
|
if(!"批准".equals(revokedRequest.getStatus()) && !"拒绝".equals(revokedRequest.getStatus()) ) {
|
||||||
throw new ServiceException("状态不合法");
|
throw new ServiceException("状态不合法");
|
||||||
}
|
}
|
||||||
|
/* if("批准".equals(revokedRequest.getStatus())){
|
||||||
|
recordService.update(id,userId,revokedRequest.getStatus(),revokedRequest.getAdminRemark(),
|
||||||
|
revokedRequest.getReason(),revokedRequest.getHandleTime());
|
||||||
|
}*/
|
||||||
|
|
||||||
revokedService.updateRevokeRequest(id,
|
revokedService.updateRevokeRequest(id,
|
||||||
revokedRequest.getStatus(),revokedRequest.getAdminRemark(),
|
revokedRequest.getStatus(),revokedRequest.getAdminRemark(),
|
||||||
revokedRequest.getReason(),revokedRequest.getHandleTime());
|
revokedRequest.getReason(),revokedRequest.getHandleTime());
|
||||||
//TODO 要加到记录里面去
|
//TODO 要加到记录里面去
|
||||||
return Result.success(CommonResponse.factory("申请成功"));
|
revokedService.addRevokedRecord(id,userId,revokedRequest.getReason(),revokedRequest.getHandleTime());
|
||||||
|
|
||||||
|
return Result.success(CommonResponse.factory("申请成功"));
|
||||||
}
|
}
|
||||||
|
@AuthAccess(allowRoles = {"admin"})
|
||||||
|
@Operation(summary = "撤销单个奖惩记录")
|
||||||
|
@DeleteMapping("/admin/records/{id}")
|
||||||
|
public Result<CommonResponse> adminDeleteRecord(@PathVariable Integer id, String reason, HttpServletRequest request) {
|
||||||
|
Integer i = recordService.IsRecord(id);
|
||||||
|
String userId = String.valueOf(JwtInterceptor.getUserIdFromReq(request));
|
||||||
|
if(i==null) {
|
||||||
|
throw new RuntimeException("该记录不存在");
|
||||||
|
}
|
||||||
|
recordService.revokeUpdate(id,reason,userId);
|
||||||
|
return Result.msg("撤销成功");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public static class Request {
|
public static class Request {
|
||||||
private Integer userId;
|
private Integer userId;
|
||||||
|
17
src/main/java/top/suyiiyii/sims/mapper/MpRevRecord.java
Normal file
17
src/main/java/top/suyiiyii/sims/mapper/MpRevRecord.java
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
package top.suyiiyii.sims.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import top.suyiiyii.sims.entity.RevokeRequest;
|
||||||
|
import top.suyiiyii.sims.entity.RevokedRecord;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author tortoise
|
||||||
|
* @Date 2024/9/9 10:08
|
||||||
|
* @PackageName:top.suyiiyii.sims.mapper
|
||||||
|
* @ClassName: MpRevRecord
|
||||||
|
* @Description: TODO
|
||||||
|
* @Version 1.0
|
||||||
|
*/
|
||||||
|
public interface MpRevRecord extends BaseMapper<RevokedRecord> {
|
||||||
|
void addRevokedRecord(Integer id, String userId, String reason, Long handleTime);
|
||||||
|
}
|
@ -83,4 +83,8 @@ public interface RecordMapper {
|
|||||||
Integer IsRecord(Integer id);
|
Integer IsRecord(Integer id);
|
||||||
@Select("SELECT category_id FROM record WHERE id = #{id}")
|
@Select("SELECT category_id FROM record WHERE id = #{id}")
|
||||||
Integer getCategoryIdById(Integer id);
|
Integer getCategoryIdById(Integer id);
|
||||||
|
@Update("UPDATE record SET is_revoked=#{isRevoked},operator_user_id=#{userId},revoke_remark = #{adminRemark}, revoke_reason = #{reason}, lsat_update_time = #{handleTime} WHERE id = #{id}")
|
||||||
|
void update(Integer id ,Boolean isRevoked,String userId, String adminRemark, String reason, Long handleTime);
|
||||||
|
@Update("UPDATE record SET is_revoked=#{isRevoked},operator_user_id=#{userId},revoke_remark = #{reason}, revoke_reason = #{revokeReason} WHERE id = #{id}")
|
||||||
|
void Rupdate(Integer id, String reason, Boolean isRevoked,String revokeReason, String userId);
|
||||||
}
|
}
|
||||||
|
@ -89,4 +89,15 @@ public class RecordService {
|
|||||||
public Integer getCategoryIdById(Integer id) {
|
public Integer getCategoryIdById(Integer id) {
|
||||||
return recordMapper.getCategoryIdById(id);
|
return recordMapper.getCategoryIdById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void update(Integer id, String userId, String adminRemark, String reason, Long handleTime) {
|
||||||
|
Boolean isRevoked=true;
|
||||||
|
recordMapper.update(id, isRevoked,userId, adminRemark, reason, handleTime);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void revokeUpdate(Integer id, String reason,String userId) {
|
||||||
|
String revokeReason="申请撤销";
|
||||||
|
Boolean isRevoked=true;
|
||||||
|
recordMapper.Rupdate(id, reason,isRevoked,revokeReason,userId);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -4,6 +4,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import top.suyiiyii.sims.controller.RevokedController;
|
import top.suyiiyii.sims.controller.RevokedController;
|
||||||
import top.suyiiyii.sims.entity.RevokeRequest;
|
import top.suyiiyii.sims.entity.RevokeRequest;
|
||||||
|
import top.suyiiyii.sims.mapper.MpRevRecord;
|
||||||
import top.suyiiyii.sims.mapper.MpRevRequestMapper;
|
import top.suyiiyii.sims.mapper.MpRevRequestMapper;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -21,7 +22,8 @@ public class RevokedService {
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
MpRevRequestMapper mpRevRequestMapper;
|
MpRevRequestMapper mpRevRequestMapper;
|
||||||
|
@Autowired
|
||||||
|
MpRevRecord mpRevRecord;
|
||||||
public void addRevokeRequest(RevokeRequest revokeRequest) {
|
public void addRevokeRequest(RevokeRequest revokeRequest) {
|
||||||
revokeRequest.setStatus("待审核");
|
revokeRequest.setStatus("待审核");
|
||||||
mpRevRequestMapper.insert(revokeRequest);
|
mpRevRequestMapper.insert(revokeRequest);
|
||||||
@ -36,4 +38,8 @@ public class RevokedService {
|
|||||||
|
|
||||||
mpRevRequestMapper.update(id, status, adminRemark, reason, handleTime);
|
mpRevRequestMapper.update(id, status, adminRemark, reason, handleTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void addRevokedRecord(Integer id, String userId, String reason, Long handleTime) {
|
||||||
|
mpRevRecord.addRevokedRecord(id, userId, reason, handleTime);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user