65 lines
2.4 KiB
Java
65 lines
2.4 KiB
Java
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<JenisKontrak> 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<JenisKontrak> 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<JenisKontrak> 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<Map<String, Boolean>> deleteJeniskontrak(@PathVariable Long id){
|
|
JenisKontrak jeniskontrak = jeniskontrakRepository.findById(id)
|
|
.orElseThrow(() -> new ResourceNotFoundException("Jeniskontrak not exist with id :" + id));
|
|
|
|
jeniskontrakRepository.delete(jeniskontrak);
|
|
Map<String, Boolean> response = new HashMap<>();
|
|
response.put("deleted", Boolean.TRUE);
|
|
return ResponseEntity.ok(response);
|
|
}
|
|
} |