55

所学时间:420分钟
博客量:1
代码量:几百
所学知识:毛概,团队项目第3个目标后端的编写
@RestController
@RequestMapping("/hiddendangerhistory")
@CrossOrigin
public class HiddenDangerHistoryController {

private final HiddenDangerHistoryService service;
private final HiddenDangerService hiddenDangerService;

public HiddenDangerHistoryController(HiddenDangerHistoryService service,
                                     HiddenDangerService hiddenDangerService) {
    this.service = service;
    this.hiddenDangerService = hiddenDangerService;
}

@GetMapping
public ResponseEntity<Page<HiddenDangerHistory>> getAllHiddenDangerHistories(
        @PageableDefault(size = 10) Pageable pageable
) {
    Page<HiddenDangerHistory> histories = service.getAllHiddenDangerHistories(pageable);
    return new ResponseEntity<>(histories, HttpStatus.OK);
}

@GetMapping("/{id}")
public ResponseEntity<HiddenDangerHistory> getHiddenDangerHistoryById(@PathVariable Integer id) {
    return service.getHiddenDangerHistoryById(id)
           .map(history -> new ResponseEntity<>(history, HttpStatus.OK))
           .orElse(new ResponseEntity<>(HttpStatus.NOT_FOUND));
}

@PostMapping("/revert")
public ResponseEntity<Result2> revertHiddenDanger(@RequestBody HiddenDangerHistory history) {
    try {
        hiddenDangerService.deleteByDangerCode(history.getDanger_code(), history.getPerson());
        HiddenDanger newDanger = new HiddenDanger();
        BeanUtils.copyProperties(history, newDanger);
        newDanger.setId(null);
        newDanger.setReview_status("待审核");
        newDanger.setEntry_date(new Date());
        hiddenDangerService.saveHiddenDanger(newDanger, history.getPerson());
        return ResponseEntity.ok(Result2.success("回溯成功"));
    } catch (Exception e) {
        return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR)
               .body(Result2.error("回溯失败: " + e.getMessage()));
    }
}

}

posted @ 2025-05-23 22:04  龚恒。  阅读(7)  评论(0)    收藏  举报