package com.iconplus.smartproc.controller; import com.iconplus.smartproc.model.entity.MetodePengadaan; import com.iconplus.smartproc.exception.ResourceNotFoundException; import com.iconplus.smartproc.repository.MetodePengadaanRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.util.HashMap; import java.util.List; import java.util.Map; @CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true") @RestController @RequestMapping("/api/metodepengadaan") public class MetodePengadaanController { @Autowired private MetodePengadaanRepository metodepengadaanRepository; //get all data @GetMapping public List getAllMetodepengadaans(){ return metodepengadaanRepository.findAll(); } // create @PostMapping public MetodePengadaan createMetodepengadaan(@RequestBody MetodePengadaan metodepengadaan) { return metodepengadaanRepository.save(metodepengadaan); } // get metodepengadaan by id rest api @GetMapping("/{id}") public ResponseEntity getMetodepengadaanById(@PathVariable Long id) { MetodePengadaan metodepengadaan = metodepengadaanRepository.findById(id) .orElseThrow(() -> new ResourceNotFoundException("Metodepengadaan not exist with id :" + id)); return ResponseEntity.ok(metodepengadaan); } // update metodepengadaan rest api @PutMapping("/{id}") public ResponseEntity updateMetodepengadaan(@PathVariable Long id, @RequestBody MetodePengadaan metodePengadaanDetails){ MetodePengadaan metodepengadaan = metodepengadaanRepository.findById(id) .orElseThrow(() -> new ResourceNotFoundException("Metodepengadaan not exist with id :" + id)); metodepengadaan.setMetodePengadaan(metodePengadaanDetails.getMetodePengadaan()); metodepengadaan.setKeterangan(metodePengadaanDetails.getKeterangan()); MetodePengadaan updatedMetodePengadaan = metodepengadaanRepository.save(metodepengadaan); return ResponseEntity.ok(updatedMetodePengadaan); } // delete metodepengadaan rest api @DeleteMapping("/{id}") public ResponseEntity> deleteMetodepengadaan(@PathVariable Long id){ MetodePengadaan metodepengadaan = metodepengadaanRepository.findById(id) .orElseThrow(() -> new ResourceNotFoundException("Metodepengadaan not exist with id :" + id)); metodepengadaanRepository.delete(metodepengadaan); Map response = new HashMap<>(); response.put("deleted", Boolean.TRUE); return ResponseEntity.ok(response); } }