package com.iconplus.smartproc.controller; import com.iconplus.smartproc.model.entity.JenisKontrak; import com.iconplus.smartproc.exception.ResourceNotFoundException; import com.iconplus.smartproc.repository.JenisKontrakRepository; 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/jeniskontrak") public class JenisKontrakController { @Autowired private JenisKontrakRepository jeniskontrakRepository; //get all data @GetMapping public List getAllJeniskontraks(){ return jeniskontrakRepository.findAll(); } // create @PostMapping public JenisKontrak createJeniskontrak(@RequestBody JenisKontrak jeniskontrak) { return jeniskontrakRepository.save(jeniskontrak); } // get jeniskontrak by id rest api @GetMapping("/{id}") public ResponseEntity getJeniskontrakById(@PathVariable Long id) { JenisKontrak jeniskontrak = jeniskontrakRepository.findById(id) .orElseThrow(() -> new ResourceNotFoundException("Jeniskontrak not exist with id :" + id)); return ResponseEntity.ok(jeniskontrak); } // update jeniskontrak rest api @PutMapping("/{id}") public ResponseEntity updateJeniskontrak(@PathVariable Long id, @RequestBody JenisKontrak jenisKontrakDetails){ JenisKontrak jeniskontrak = jeniskontrakRepository.findById(id) .orElseThrow(() -> new ResourceNotFoundException("Jeniskontrak not exist with id :" + id)); jeniskontrak.setJenisKontrak(jenisKontrakDetails.getJenisKontrak()); jeniskontrak.setKeterangan(jenisKontrakDetails.getKeterangan()); JenisKontrak updatedJenisKontrak = jeniskontrakRepository.save(jeniskontrak); return ResponseEntity.ok(updatedJenisKontrak); } // delete jeniskontrak rest api @DeleteMapping("/{id}") public ResponseEntity> deleteJeniskontrak(@PathVariable Long id){ JenisKontrak jeniskontrak = jeniskontrakRepository.findById(id) .orElseThrow(() -> new ResourceNotFoundException("Jeniskontrak not exist with id :" + id)); jeniskontrakRepository.delete(jeniskontrak); Map response = new HashMap<>(); response.put("deleted", Boolean.TRUE); return ResponseEntity.ok(response); } }