5.27

package com.example.baoli.controller;

import com.example.baoli.entity.MaintenanceRecord;
import com.example.baoli.service.MaintenanceService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import java.util.List;
import java.util.Optional;

@RestController
@RequestMapping("/api/maintenance")
public class MaintenanceController {

@Autowired
private MaintenanceService maintenanceService;

@GetMapping
public ResponseEntity<List<MaintenanceRecord>> getAllRecords() {
return ResponseEntity.ok(maintenanceService.getAllRecords());
}

@GetMapping("/{id}")
public ResponseEntity<MaintenanceRecord> getRecordById(@PathVariable Long id) {
Optional<MaintenanceRecord> record = maintenanceService.getRecordById(id);
return record.map(ResponseEntity::ok).orElse(ResponseEntity.notFound().build());
}

@PostMapping
public ResponseEntity<MaintenanceRecord> createRecord(@RequestBody MaintenanceRecord record) {
try {
MaintenanceRecord created = maintenanceService.createRecord(record);
return ResponseEntity.ok(created);
} catch (Exception e) {
return ResponseEntity.badRequest().build();
}
}

@PutMapping("/{id}")
public ResponseEntity<MaintenanceRecord> updateRecord(@PathVariable Long id, @RequestBody MaintenanceRecord record) {
MaintenanceRecord updated = maintenanceService.updateRecord(id, record);
return updated != null ? ResponseEntity.ok(updated) : ResponseEntity.notFound().build();
}

@DeleteMapping("/{id}")
public ResponseEntity<Void> deleteRecord(@PathVariable Long id) {
return maintenanceService.deleteRecord(id) ? ResponseEntity.ok().build() : ResponseEntity.notFound().build();
}
}

posted @ 2025-05-27 22:53  混沌武士丞  阅读(6)  评论(0)    收藏  举报