This commit is contained in:
tortoise 2024-09-09 01:14:33 +08:00
parent 8f83ee268a
commit 31dbdd57e4
3 changed files with 14 additions and 45 deletions

View File

@ -3,27 +3,12 @@ package top.suyiiyii.sims.controller;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.annotations.responses.ApiResponses;
import jakarta.servlet.http.HttpServletRequest;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.modelmapper.ModelMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import top.suyiiyii.sims.common.AuthAccess;
import top.suyiiyii.sims.common.JwtInterceptor;
import top.suyiiyii.sims.common.Result;
import top.suyiiyii.sims.dto.CommonResponse;
import top.suyiiyii.sims.dto.RecordDto;
import top.suyiiyii.sims.dto.RevokeRequestDto;
import top.suyiiyii.sims.entity.RevokeRequest;
import top.suyiiyii.sims.exception.ServiceException;
import top.suyiiyii.sims.service.CategoryService;
import top.suyiiyii.sims.service.NotificationService;
import top.suyiiyii.sims.service.RecordService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import top.suyiiyii.sims.common.AuthAccess;
import top.suyiiyii.sims.common.Result;
import top.suyiiyii.sims.dto.CommonResponse;
import top.suyiiyii.sims.dto.RecordDto;
@ -60,7 +45,6 @@ public class RevokedController {
CategoryService categoryService;
@Autowired
RecordService recordService;
//TODO 普通成员向管理员申请撤销
@AuthAccess(allowRoles = {"user"})
@Operation(summary = "成员申请撤销")
@ -99,41 +83,21 @@ public class RevokedController {
@AuthAccess(allowRoles = {"admin"})
@Operation(summary = "管理员处理撤销申请")
@PutMapping("/{id}")
public Result<CommonResponse> revoked(@PathVariable Integer id, RevokedRequest revokedRequest, HttpServletRequest request) {
String userId = String.valueOf(JwtInterceptor.getUserIdFromReq(request));
public Result<CommonResponse> revoked( @PathVariable Integer id,RevokedRequest revokedRequest) {
if(revokedRequest.getAdminRemark().isBlank()) {
throw new ServiceException("撤销备注不能为空");
}
if(!"批准".equals(revokedRequest.getStatus()) && !"拒绝".equals(revokedRequest.getStatus()) ) {
throw new ServiceException("状态不合法");
}
/* if("批准".equals(revokedRequest.getStatus())){
recordService.update(id,userId,revokedRequest.getStatus(),revokedRequest.getAdminRemark(),
revokedRequest.getReason(),revokedRequest.getHandleTime());
}*/
revokedService.updateRevokeRequest(id,
revokedRequest.getStatus(),revokedRequest.getAdminRemark(),
revokedRequest.getReason(),revokedRequest.getHandleTime());
//TODO 要加到记录里面去
revokedService.addRevokedRecord(id,userId,revokedRequest.getReason(),revokedRequest.getHandleTime());
//TODO 要加到记录里面去
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
public static class Request {
private Integer userId;

View File

@ -2,6 +2,7 @@ package top.suyiiyii.sims.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import top.suyiiyii.sims.entity.RevokeRequest;
import java.util.List;
@ -18,4 +19,8 @@ import java.util.List;
public interface MpRevRequestMapper extends BaseMapper<RevokeRequest> {
@Select("select * from revoke_request limit #{page},#{size}")
List<RevokeRequest> selectList(int page, int size);
@Update("update revoke_request set status=#{status},admin_remark=#{adminRemark} where id=#{id}")
void update(Integer id, String status, String adminRemark);
@Update("update revoke_request set status=#{status},admin_remark=#{adminRemark},reason=#{reason},handle_time=#{handleTime} where id=#{id}")
void update(Integer id, String status, String adminRemark, String reason, Long handleTime);
}

View File

@ -21,10 +21,11 @@ import top.suyiiyii.sims.mapper.RoleMapper;
*/
@Service
public class RevokedService {
@Autowired
MpRevRequestMapper mpRevRequestMapper;
@Autowired
MpRevRecord mpRevRecord;
@Autowired
MpRevRecord mpRevRecord;
public void addRevokeRequest(RevokeRequest revokeRequest) {
revokeRequest.setStatus("待审核");
mpRevRequestMapper.insert(revokeRequest);
@ -35,12 +36,11 @@ MpRevRecord mpRevRecord;
}
public void updateRevokeRequest(Integer id, String status, String adminRemark, String reason, Long 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);
}
}