Test all Java
This commit is contained in:
@@ -1,65 +1,82 @@
|
|||||||
package com.iconplus.smartproc.controller;
|
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 com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
import java.util.List;
|
import com.iconplus.smartproc.model.request.JenisKontrakRequest;
|
||||||
import java.util.Map;
|
import com.iconplus.smartproc.model.response.GetListJenisKontrakResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisKontrakResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisKontrakRepository;
|
||||||
|
import com.iconplus.smartproc.service.jeniskontrak.*;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.data.domain.PageRequest;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/jeniskontrak")
|
@RequestMapping("/api/jeniskontrak")
|
||||||
public class JenisKontrakController {
|
public class JenisKontrakController {
|
||||||
@Autowired
|
|
||||||
private JenisKontrakRepository jeniskontrakRepository;
|
|
||||||
|
|
||||||
//get all data
|
@Autowired
|
||||||
@GetMapping
|
private JenisKontrakRepository jeniskontrakRepository;
|
||||||
public List<JenisKontrak> getAllJeniskontraks(){
|
|
||||||
return jeniskontrakRepository.findAll();
|
|
||||||
}
|
|
||||||
|
|
||||||
// create
|
private final GetListJenisKontrakService getListJenisKontrakService;
|
||||||
@PostMapping
|
private final GetJenisKontrakByIdService getJenisKontrakByIdService;
|
||||||
public JenisKontrak createJeniskontrak(@RequestBody JenisKontrak jeniskontrak) {
|
private final PostCreateJenisKontrakService postCreateJenisKontrakService;
|
||||||
return jeniskontrakRepository.save(jeniskontrak);
|
private final PutUpdateJenisKontrakService putUpdateJenisKontrakService;
|
||||||
}
|
private final DeleteJenisKontrakService deleteJenisKontrakService;
|
||||||
|
|
||||||
// get jeniskontrak by id rest api
|
public JenisKontrakController(GetListJenisKontrakService getListJenisKontrakService,
|
||||||
@GetMapping("/{id}")
|
GetJenisKontrakByIdService getJenisKontrakByIdService,
|
||||||
public ResponseEntity<JenisKontrak> getJeniskontrakById(@PathVariable Long id) {
|
PostCreateJenisKontrakService postCreateJenisKontrakService,
|
||||||
JenisKontrak jeniskontrak = jeniskontrakRepository.findById(id)
|
PutUpdateJenisKontrakService putUpdateJenisKontrakService,
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Jeniskontrak not exist with id :" + id));
|
DeleteJenisKontrakService deleteJenisKontrakService) {
|
||||||
return ResponseEntity.ok(jeniskontrak);
|
this.getListJenisKontrakService = getListJenisKontrakService;
|
||||||
}
|
this.getJenisKontrakByIdService = getJenisKontrakByIdService;
|
||||||
|
this.postCreateJenisKontrakService = postCreateJenisKontrakService;
|
||||||
|
this.putUpdateJenisKontrakService = putUpdateJenisKontrakService;
|
||||||
|
this.deleteJenisKontrakService = deleteJenisKontrakService;
|
||||||
|
}
|
||||||
|
|
||||||
// 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());
|
@GetMapping
|
||||||
jeniskontrak.setKeterangan(jenisKontrakDetails.getKeterangan());
|
public GetListJenisKontrakResponse getListJenisKontrak(@RequestParam(name = "search", required = false) String search,
|
||||||
|
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
||||||
|
|
||||||
JenisKontrak updatedJenisKontrak = jeniskontrakRepository.save(jeniskontrak);
|
Pageable pageable = PageRequest.of((page - 1), size);
|
||||||
return ResponseEntity.ok(updatedJenisKontrak);
|
JenisKontrakRequest jenisKontrakRequest = JenisKontrakRequest.builder()
|
||||||
}
|
.search(search)
|
||||||
|
.pageable(pageable)
|
||||||
|
.build();
|
||||||
|
|
||||||
// delete jeniskontrak rest api
|
return getListJenisKontrakService.execute(jenisKontrakRequest);
|
||||||
@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);
|
@PostMapping
|
||||||
Map<String, Boolean> response = new HashMap<>();
|
public JenisKontrakResponse createJenisKontrak(@RequestBody JenisKontrakRequest jenisKontrakRequest) {
|
||||||
response.put("deleted", Boolean.TRUE);
|
return postCreateJenisKontrakService.execute(jenisKontrakRequest);
|
||||||
return ResponseEntity.ok(response);
|
}
|
||||||
}
|
|
||||||
}
|
@GetMapping("/{id}")
|
||||||
|
public JenisKontrakResponse getJenisKontrakById(@PathVariable Long id) {
|
||||||
|
return getJenisKontrakByIdService.execute(JenisKontrakRequest.builder()
|
||||||
|
.id(id)
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@PutMapping("/{id}")
|
||||||
|
public JenisKontrakResponse updateJeniskontrak(@PathVariable Long id,
|
||||||
|
@RequestBody JenisKontrakRequest jenisKontrakRequest){
|
||||||
|
jenisKontrakRequest.setId(id);
|
||||||
|
return putUpdateJenisKontrakService.execute(jenisKontrakRequest);
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/{id}")
|
||||||
|
public EmptyResponse deleteJenisKontrak(@PathVariable Long id) {
|
||||||
|
return deleteJenisKontrakService.execute(JenisKontrakRequest.builder()
|
||||||
|
.id(id)
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@@ -1,65 +1,82 @@
|
|||||||
package com.iconplus.smartproc.controller;
|
package com.iconplus.smartproc.controller;
|
||||||
|
|
||||||
import com.iconplus.smartproc.model.entity.JenisPengadaan;
|
|
||||||
import com.iconplus.smartproc.exception.ResourceNotFoundException;
|
|
||||||
import com.iconplus.smartproc.repository.JenisPengadaanRepository;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.http.ResponseEntity;
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
|
||||||
|
|
||||||
import java.util.HashMap;
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
import java.util.List;
|
import com.iconplus.smartproc.model.request.JenisPengadaanRequest;
|
||||||
import java.util.Map;
|
import com.iconplus.smartproc.model.response.GetListJenisPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisPengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.service.jenispengadaan.*;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.data.domain.PageRequest;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/jenispengadaan")
|
@RequestMapping("/api/jenispengadaan")
|
||||||
public class JenisPengadaanController {
|
public class JenisPengadaanController {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private JenisPengadaanRepository jenispengadaanRepository;
|
private JenisPengadaanRepository jenispengadaanRepository;
|
||||||
|
|
||||||
//get all data
|
private final GetListJenisPengadaanService getListJenisPengadaanService;
|
||||||
|
private final GetJenisPengadaanByIdService getJenisPengadaanByIdService;
|
||||||
|
private final PostCreateJenisPengadaanService postCreateJenisPengadaanService;
|
||||||
|
private final PutUpdateJenisPengadaanService putUpdateJenisPengadaanService;
|
||||||
|
private final DeleteJenisPengadaanService deleteJenisPengadaanService;
|
||||||
|
|
||||||
|
public JenisPengadaanController(GetListJenisPengadaanService getListJenisPengadaanService,
|
||||||
|
GetJenisPengadaanByIdService getJenisPengadaanByIdService,
|
||||||
|
PostCreateJenisPengadaanService postCreateJenisPengadaanService,
|
||||||
|
PutUpdateJenisPengadaanService putUpdateJenisPengadaanService,
|
||||||
|
DeleteJenisPengadaanService deleteJenisPengadaanService) {
|
||||||
|
this.getListJenisPengadaanService = getListJenisPengadaanService;
|
||||||
|
this.getJenisPengadaanByIdService = getJenisPengadaanByIdService;
|
||||||
|
this.postCreateJenisPengadaanService = postCreateJenisPengadaanService;
|
||||||
|
this.putUpdateJenisPengadaanService = putUpdateJenisPengadaanService;
|
||||||
|
this.deleteJenisPengadaanService = deleteJenisPengadaanService;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@GetMapping
|
@GetMapping
|
||||||
public List<JenisPengadaan> getAllJenispengadaans(){
|
public GetListJenisPengadaanResponse getListJenisPengadaan(@RequestParam(name = "search", required = false) String search,
|
||||||
return jenispengadaanRepository.findAll();
|
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
||||||
|
|
||||||
|
Pageable pageable = PageRequest.of((page - 1), size);
|
||||||
|
JenisPengadaanRequest jenisPengadaanRequest = JenisPengadaanRequest.builder()
|
||||||
|
.search(search)
|
||||||
|
.pageable(pageable)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
return getListJenisPengadaanService.execute(jenisPengadaanRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
// create
|
|
||||||
@PostMapping
|
@PostMapping
|
||||||
public JenisPengadaan createJenispengadaan(@RequestBody JenisPengadaan jenispengadaan) {
|
public JenisPengadaanResponse createJenisPengadaan(@RequestBody JenisPengadaanRequest jenisPengadaanRequest) {
|
||||||
return jenispengadaanRepository.save(jenispengadaan);
|
return postCreateJenisPengadaanService.execute(jenisPengadaanRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
// get jenispengadaan by id rest api
|
|
||||||
@GetMapping("/{id}")
|
@GetMapping("/{id}")
|
||||||
public ResponseEntity<JenisPengadaan> getJenispengadaanById(@PathVariable Long id) {
|
public JenisPengadaanResponse getJenisPengadaanById(@PathVariable Long id) {
|
||||||
JenisPengadaan jenispengadaan = jenispengadaanRepository.findById(id)
|
return getJenisPengadaanByIdService.execute(JenisPengadaanRequest.builder()
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Jenispengadaan not exist with id :" + id));
|
.id(id)
|
||||||
return ResponseEntity.ok(jenispengadaan);
|
.build());
|
||||||
}
|
}
|
||||||
|
|
||||||
// update jenispengadaan rest api
|
|
||||||
@PutMapping("/{id}")
|
@PutMapping("/{id}")
|
||||||
public ResponseEntity<JenisPengadaan> updateJenispengadaan(@PathVariable Long id, @RequestBody JenisPengadaan jenisPengadaanDetails){
|
public JenisPengadaanResponse updateJenisPengadaan(@PathVariable Long id,
|
||||||
JenisPengadaan jenispengadaan = jenispengadaanRepository.findById(id)
|
@RequestBody JenisPengadaanRequest jenisPengadaanRequest){
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Jenispengadaan not exist with id :" + id));
|
jenisPengadaanRequest.setId(id);
|
||||||
|
return putUpdateJenisPengadaanService.execute(jenisPengadaanRequest);
|
||||||
jenispengadaan.setJenisPengadaan(jenisPengadaanDetails.getJenisPengadaan());
|
|
||||||
jenispengadaan.setKeterangan(jenisPengadaanDetails.getKeterangan());
|
|
||||||
|
|
||||||
JenisPengadaan updatedJenisPengadaan = jenispengadaanRepository.save(jenispengadaan);
|
|
||||||
return ResponseEntity.ok(updatedJenisPengadaan);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// delete jenispengadaan rest api
|
|
||||||
@DeleteMapping("/{id}")
|
@DeleteMapping("/{id}")
|
||||||
public ResponseEntity<Map<String, Boolean>> deleteJenispengadaan(@PathVariable Long id){
|
public EmptyResponse deleteJenisPengadaan(@PathVariable Long id) {
|
||||||
JenisPengadaan jenispengadaan = jenispengadaanRepository.findById(id)
|
return deleteJenisPengadaanService.execute(JenisPengadaanRequest.builder()
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Supposmatrix not exist with id :" + id));
|
.id(id)
|
||||||
|
.build());
|
||||||
jenispengadaanRepository.delete(jenispengadaan);
|
|
||||||
Map<String, Boolean> response = new HashMap<>();
|
|
||||||
response.put("deleted", Boolean.TRUE);
|
|
||||||
return ResponseEntity.ok(response);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1,69 +1,82 @@
|
|||||||
package com.iconplus.smartproc.controller;
|
package com.iconplus.smartproc.controller;
|
||||||
|
|
||||||
import com.iconplus.smartproc.model.entity.Lokasi;
|
|
||||||
import com.iconplus.smartproc.exception.ResourceNotFoundException;
|
|
||||||
import com.iconplus.smartproc.repository.LokasiRepository;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.http.ResponseEntity;
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
|
||||||
|
|
||||||
import java.util.HashMap;
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
import java.util.List;
|
import com.iconplus.smartproc.model.request.LokasiRequest;
|
||||||
import java.util.Map;
|
import com.iconplus.smartproc.model.response.GetListLokasiResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.LokasiResponse;
|
||||||
|
import com.iconplus.smartproc.repository.LokasiRepository;
|
||||||
|
import com.iconplus.smartproc.service.lokasi.*;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.data.domain.PageRequest;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/lokasi")
|
@RequestMapping("/api/lokasi")
|
||||||
public class LokasiController {
|
public class LokasiController {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private LokasiRepository lokasiRepository;
|
private LokasiRepository lokasiRepository;
|
||||||
|
|
||||||
//get all data
|
private final GetListLokasiService getListLokasiService;
|
||||||
|
private final GetLokasiByIdService getLokasiByIdService;
|
||||||
|
private final PostCreateLokasiService postCreateLokasiService;
|
||||||
|
private final PutUpdateLokasiService putUpdateLokasiService;
|
||||||
|
private final DeleteLokasiService deleteLokasiService;
|
||||||
|
|
||||||
|
public LokasiController(GetListLokasiService getListLokasiService,
|
||||||
|
GetLokasiByIdService getLokasiByIdService,
|
||||||
|
PostCreateLokasiService postCreateLokasiService,
|
||||||
|
PutUpdateLokasiService putUpdateLokasiService,
|
||||||
|
DeleteLokasiService deleteLokasiService) {
|
||||||
|
this.getListLokasiService = getListLokasiService;
|
||||||
|
this.getLokasiByIdService = getLokasiByIdService;
|
||||||
|
this.postCreateLokasiService = postCreateLokasiService;
|
||||||
|
this.putUpdateLokasiService = putUpdateLokasiService;
|
||||||
|
this.deleteLokasiService = deleteLokasiService;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@GetMapping
|
@GetMapping
|
||||||
public List<Lokasi> getAllLokasis(){
|
public GetListLokasiResponse getListLokasi(@RequestParam(name = "search", required = false) String search,
|
||||||
return lokasiRepository.findAll();
|
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
||||||
|
|
||||||
|
Pageable pageable = PageRequest.of((page - 1), size);
|
||||||
|
LokasiRequest lokasiRequest = LokasiRequest.builder()
|
||||||
|
.search(search)
|
||||||
|
.pageable(pageable)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
return getListLokasiService.execute(lokasiRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
// create
|
|
||||||
@PostMapping
|
@PostMapping
|
||||||
public Lokasi createLokasi(@RequestBody Lokasi lokasi) {
|
public LokasiResponse createLokasi(@RequestBody LokasiRequest lokasiRequest) {
|
||||||
return lokasiRepository.save(lokasi);
|
return postCreateLokasiService.execute(lokasiRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
// get lokasi by id rest api
|
|
||||||
@GetMapping("/{id}")
|
@GetMapping("/{id}")
|
||||||
public ResponseEntity<Lokasi> getLokasiById(@PathVariable Long id) {
|
public LokasiResponse getLokasiById(@PathVariable Long id) {
|
||||||
Lokasi lokasi = lokasiRepository.findById(id)
|
return getLokasiByIdService.execute(LokasiRequest.builder()
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Lokasi not exist with id :" + id));
|
.id(id)
|
||||||
return ResponseEntity.ok(lokasi);
|
.build());
|
||||||
}
|
}
|
||||||
|
|
||||||
// update lokasi rest api
|
|
||||||
@PutMapping("/{id}")
|
@PutMapping("/{id}")
|
||||||
public ResponseEntity<Lokasi> updateSumberdana(@PathVariable Long id, @RequestBody Lokasi lokasiDetails){
|
public LokasiResponse updateLokasi(@PathVariable Long id,
|
||||||
Lokasi lokasi = lokasiRepository.findById(id)
|
@RequestBody LokasiRequest LokasiRequest){
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Lokasi not exist with id :" + id));
|
LokasiRequest.setId(id);
|
||||||
|
return putUpdateLokasiService.execute(LokasiRequest);
|
||||||
lokasi.setLokasi(lokasiDetails.getLokasi());
|
|
||||||
lokasi.setKeterangan(lokasiDetails.getKeterangan());
|
|
||||||
|
|
||||||
Lokasi updatedLokasi = lokasiRepository.save(lokasi);
|
|
||||||
return ResponseEntity.ok(updatedLokasi);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// delete lokasi rest api
|
|
||||||
@DeleteMapping("/{id}")
|
@DeleteMapping("/{id}")
|
||||||
public ResponseEntity<Map<String, Boolean>> deleteLokasi(@PathVariable Long id){
|
public EmptyResponse deleteLokasi(@PathVariable Long id) {
|
||||||
Lokasi lokasi = lokasiRepository.findById(id)
|
return deleteLokasiService.execute(LokasiRequest.builder()
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Lokasi not exist with id :" + id));
|
.id(id)
|
||||||
|
.build());
|
||||||
lokasiRepository.delete(lokasi);
|
|
||||||
Map<String, Boolean> response = new HashMap<>();
|
|
||||||
response.put("deleted", Boolean.TRUE);
|
|
||||||
return ResponseEntity.ok(response);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -1,68 +1,82 @@
|
|||||||
package com.iconplus.smartproc.controller;
|
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 com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
import java.util.List;
|
import com.iconplus.smartproc.model.request.MetodePengadaanRequest;
|
||||||
import java.util.Map;
|
import com.iconplus.smartproc.model.response.GetListMetodePengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.MetodePengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.MetodePengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.service.metodepengadaan.*;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.data.domain.PageRequest;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/metodepengadaan")
|
@RequestMapping("/api/metodepengadaan")
|
||||||
public class MetodePengadaanController {
|
public class MetodePengadaanController {
|
||||||
@Autowired
|
|
||||||
private MetodePengadaanRepository metodepengadaanRepository;
|
|
||||||
|
|
||||||
//get all data
|
@Autowired
|
||||||
@GetMapping
|
private MetodePengadaanRepository metodepengadaanRepository;
|
||||||
public List<MetodePengadaan> getAllMetodepengadaans(){
|
|
||||||
return metodepengadaanRepository.findAll();
|
|
||||||
}
|
|
||||||
|
|
||||||
// create
|
private final GetListMetodePengadaanService getListMetodePengadaanService;
|
||||||
@PostMapping
|
private final GetMetodePengadaanByIdService getMetodePengadaanByIdService;
|
||||||
public MetodePengadaan createMetodepengadaan(@RequestBody MetodePengadaan metodepengadaan) {
|
private final PostCreateMetodePengadaanService postCreateMetodePengadaanService;
|
||||||
return metodepengadaanRepository.save(metodepengadaan);
|
private final PutUpdateMetodePengadaanService putUpdateMetodePengadaanService;
|
||||||
}
|
private final DeleteMetodePengadaanService deleteMetodePengadaanService;
|
||||||
|
|
||||||
// get metodepengadaan by id rest api
|
public MetodePengadaanController(GetListMetodePengadaanService getListMetodePengadaanService,
|
||||||
@GetMapping("/{id}")
|
GetMetodePengadaanByIdService getMetodePengadaanByIdService,
|
||||||
public ResponseEntity<MetodePengadaan> getMetodepengadaanById(@PathVariable Long id) {
|
PostCreateMetodePengadaanService postCreateMetodePengadaanService,
|
||||||
MetodePengadaan metodepengadaan = metodepengadaanRepository.findById(id)
|
PutUpdateMetodePengadaanService putUpdateMetodePengadaanService,
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Metodepengadaan not exist with id :" + id));
|
DeleteMetodePengadaanService deleteMetodePengadaanService) {
|
||||||
return ResponseEntity.ok(metodepengadaan);
|
this.getListMetodePengadaanService = getListMetodePengadaanService;
|
||||||
}
|
this.getMetodePengadaanByIdService = getMetodePengadaanByIdService;
|
||||||
|
this.postCreateMetodePengadaanService = postCreateMetodePengadaanService;
|
||||||
|
this.putUpdateMetodePengadaanService = putUpdateMetodePengadaanService;
|
||||||
|
this.deleteMetodePengadaanService = deleteMetodePengadaanService;
|
||||||
|
}
|
||||||
|
|
||||||
// update metodepengadaan rest api
|
|
||||||
@PutMapping("/{id}")
|
|
||||||
public ResponseEntity<MetodePengadaan> 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());
|
@GetMapping
|
||||||
metodepengadaan.setKeterangan(metodePengadaanDetails.getKeterangan());
|
public GetListMetodePengadaanResponse getListMetodePengadaan(@RequestParam(name = "search", required = false) String search,
|
||||||
|
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
||||||
|
|
||||||
MetodePengadaan updatedMetodePengadaan = metodepengadaanRepository.save(metodepengadaan);
|
Pageable pageable = PageRequest.of((page - 1), size);
|
||||||
return ResponseEntity.ok(updatedMetodePengadaan);
|
MetodePengadaanRequest metodePengadaanRequest = MetodePengadaanRequest.builder()
|
||||||
}
|
.search(search)
|
||||||
|
.pageable(pageable)
|
||||||
|
.build();
|
||||||
|
|
||||||
// delete metodepengadaan rest api
|
return getListMetodePengadaanService.execute(metodePengadaanRequest);
|
||||||
@DeleteMapping("/{id}")
|
}
|
||||||
public ResponseEntity<Map<String, Boolean>> deleteMetodepengadaan(@PathVariable Long id){
|
|
||||||
MetodePengadaan metodepengadaan = metodepengadaanRepository.findById(id)
|
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Metodepengadaan not exist with id :" + id));
|
|
||||||
|
|
||||||
metodepengadaanRepository.delete(metodepengadaan);
|
@PostMapping
|
||||||
Map<String, Boolean> response = new HashMap<>();
|
public MetodePengadaanResponse createMetodePengadaan(@RequestBody MetodePengadaanRequest metodePengadaanRequest) {
|
||||||
response.put("deleted", Boolean.TRUE);
|
return postCreateMetodePengadaanService.execute(metodePengadaanRequest);
|
||||||
return ResponseEntity.ok(response);
|
}
|
||||||
}
|
|
||||||
|
@GetMapping("/{id}")
|
||||||
|
public MetodePengadaanResponse getMetodePengadaanById(@PathVariable Long id) {
|
||||||
|
return getMetodePengadaanByIdService.execute(MetodePengadaanRequest.builder()
|
||||||
|
.id(id)
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@PutMapping("/{id}")
|
||||||
|
public MetodePengadaanResponse updateMetodepengadaan(@PathVariable Long id,
|
||||||
|
@RequestBody MetodePengadaanRequest metodePengadaanRequest){
|
||||||
|
metodePengadaanRequest.setId(id);
|
||||||
|
return putUpdateMetodePengadaanService.execute(metodePengadaanRequest);
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/{id}")
|
||||||
|
public EmptyResponse deleteMetodePengadaan(@PathVariable Long id) {
|
||||||
|
return deleteMetodePengadaanService.execute(MetodePengadaanRequest.builder()
|
||||||
|
.id(id)
|
||||||
|
.build());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -1,68 +1,82 @@
|
|||||||
package com.iconplus.smartproc.controller;
|
package com.iconplus.smartproc.controller;
|
||||||
|
|
||||||
import com.iconplus.smartproc.model.entity.MetodePenyampaian;
|
|
||||||
import com.iconplus.smartproc.exception.ResourceNotFoundException;
|
|
||||||
import com.iconplus.smartproc.repository.MetodePenyampaianRepository;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.http.ResponseEntity;
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
|
||||||
|
|
||||||
import java.util.HashMap;
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
import java.util.List;
|
import com.iconplus.smartproc.model.request.MetodePenyampaianRequest;
|
||||||
import java.util.Map;
|
import com.iconplus.smartproc.model.response.GetListMetodePenyampaianResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.MetodePenyampaianResponse;
|
||||||
|
import com.iconplus.smartproc.repository.MetodePenyampaianRepository;
|
||||||
|
import com.iconplus.smartproc.service.metodepenyampaian.*;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.data.domain.PageRequest;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/metodepenyampaian")
|
@RequestMapping("/api/metodepenyampaian")
|
||||||
public class MetodePenyampaianController {
|
public class MetodePenyampaianController {
|
||||||
@Autowired
|
|
||||||
private MetodePenyampaianRepository metodepenyampaianRepository;
|
|
||||||
|
|
||||||
//get all data
|
@Autowired
|
||||||
@GetMapping
|
private MetodePenyampaianRepository metodepenyampaianRepository;
|
||||||
public List<MetodePenyampaian> getAllMetodepenyampaians(){
|
|
||||||
return metodepenyampaianRepository.findAll();
|
|
||||||
}
|
|
||||||
|
|
||||||
// create
|
private final GetListMetodePenyampaianService getListMetodePenyampaianService;
|
||||||
@PostMapping
|
private final GetMetodePenyampaianByIdService getMetodePenyampaianByIdService;
|
||||||
public MetodePenyampaian createMetodepenyampaian(@RequestBody MetodePenyampaian metodepenyampaian) {
|
private final PostCreateMetodePenyampaianService postCreateMetodePenyampaianService;
|
||||||
return metodepenyampaianRepository.save(metodepenyampaian);
|
private final PutUpdateMetodePenyampaianService putUpdateMetodePenyampaianService;
|
||||||
}
|
private final DeleteMetodePenyampaianService deleteMetodePenyampaianService;
|
||||||
|
|
||||||
// get metodepenyampaian by id rest api
|
public MetodePenyampaianController(GetListMetodePenyampaianService getListMetodePenyampaianService,
|
||||||
@GetMapping("/{id}")
|
GetMetodePenyampaianByIdService getMetodePenyampaianByIdService,
|
||||||
public ResponseEntity<MetodePenyampaian> getMetodepenyampaianById(@PathVariable Long id) {
|
PostCreateMetodePenyampaianService postCreateMetodePenyampaianService,
|
||||||
MetodePenyampaian metodepenyampaian = metodepenyampaianRepository.findById(id)
|
PutUpdateMetodePenyampaianService putUpdateMetodePenyampaianService,
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Metodepenyampaian not exist with id :" + id));
|
DeleteMetodePenyampaianService deleteMetodePenyampaianService) {
|
||||||
return ResponseEntity.ok(metodepenyampaian);
|
this.getListMetodePenyampaianService = getListMetodePenyampaianService;
|
||||||
}
|
this.getMetodePenyampaianByIdService = getMetodePenyampaianByIdService;
|
||||||
|
this.postCreateMetodePenyampaianService = postCreateMetodePenyampaianService;
|
||||||
|
this.putUpdateMetodePenyampaianService = putUpdateMetodePenyampaianService;
|
||||||
|
this.deleteMetodePenyampaianService = deleteMetodePenyampaianService;
|
||||||
|
}
|
||||||
|
|
||||||
// update metodepenyampaian rest api
|
|
||||||
@PutMapping("/{id}")
|
|
||||||
public ResponseEntity<MetodePenyampaian> updateMetodepenyampaian(@PathVariable Long id, @RequestBody MetodePenyampaian metodePenyampaianDetails){
|
|
||||||
MetodePenyampaian metodepenyampaian = metodepenyampaianRepository.findById(id)
|
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Metodepenyampaian not exist with id :" + id));
|
|
||||||
|
|
||||||
metodepenyampaian.setMetodePenyampaian(metodePenyampaianDetails.getMetodePenyampaian());
|
@GetMapping
|
||||||
metodepenyampaian.setKeterangan(metodePenyampaianDetails.getKeterangan());
|
public GetListMetodePenyampaianResponse getListMetodePenyampaian(@RequestParam(name = "search", required = false) String search,
|
||||||
|
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
||||||
|
|
||||||
MetodePenyampaian updatedMetodePenyampaian = metodepenyampaianRepository.save(metodepenyampaian);
|
Pageable pageable = PageRequest.of((page - 1), size);
|
||||||
return ResponseEntity.ok(updatedMetodePenyampaian);
|
MetodePenyampaianRequest metodePenyampaianRequest = MetodePenyampaianRequest.builder()
|
||||||
}
|
.search(search)
|
||||||
|
.pageable(pageable)
|
||||||
|
.build();
|
||||||
|
|
||||||
// delete metodepenyampaian rest api
|
return getListMetodePenyampaianService.execute(metodePenyampaianRequest);
|
||||||
@DeleteMapping("/{id}")
|
}
|
||||||
public ResponseEntity<Map<String, Boolean>> deleteMetodepenyampaian(@PathVariable Long id){
|
|
||||||
MetodePenyampaian metodepenyampaian = metodepenyampaianRepository.findById(id)
|
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Metodepenyampaian not exist with id :" + id));
|
|
||||||
|
|
||||||
metodepenyampaianRepository.delete(metodepenyampaian);
|
@PostMapping
|
||||||
Map<String, Boolean> response = new HashMap<>();
|
public MetodePenyampaianResponse createMetodePenyampaian(@RequestBody MetodePenyampaianRequest metodePenyampaianRequest) {
|
||||||
response.put("deleted", Boolean.TRUE);
|
return postCreateMetodePenyampaianService.execute(metodePenyampaianRequest);
|
||||||
return ResponseEntity.ok(response);
|
}
|
||||||
}
|
|
||||||
|
@GetMapping("/{id}")
|
||||||
|
public MetodePenyampaianResponse getMetodePenyampaianById(@PathVariable Long id) {
|
||||||
|
return getMetodePenyampaianByIdService.execute(MetodePenyampaianRequest.builder()
|
||||||
|
.id(id)
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@PutMapping("/{id}")
|
||||||
|
public MetodePenyampaianResponse updateMetodepenyampaian(@PathVariable Long id,
|
||||||
|
@RequestBody MetodePenyampaianRequest metodePenyampaianRequest){
|
||||||
|
metodePenyampaianRequest.setId(id);
|
||||||
|
return putUpdateMetodePenyampaianService.execute(metodePenyampaianRequest);
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/{id}")
|
||||||
|
public EmptyResponse deleteMetodePenyampaian(@PathVariable Long id) {
|
||||||
|
return deleteMetodePenyampaianService.execute(MetodePenyampaianRequest.builder()
|
||||||
|
.id(id)
|
||||||
|
.build());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -1,10 +1,13 @@
|
|||||||
package com.iconplus.smartproc.controller;
|
package com.iconplus.smartproc.controller;
|
||||||
|
|
||||||
|
|
||||||
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
import com.iconplus.smartproc.model.request.RolesRequest;
|
import com.iconplus.smartproc.model.request.RolesRequest;
|
||||||
import com.iconplus.smartproc.model.response.GetRolesResponse;
|
import com.iconplus.smartproc.model.response.GetListRolesResponse;
|
||||||
import com.iconplus.smartproc.model.response.RolesResponse;
|
import com.iconplus.smartproc.model.response.RolesResponse;
|
||||||
|
import com.iconplus.smartproc.repository.RolesRepository;
|
||||||
import com.iconplus.smartproc.service.roles.*;
|
import com.iconplus.smartproc.service.roles.*;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.data.domain.PageRequest;
|
import org.springframework.data.domain.PageRequest;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
@@ -14,28 +17,32 @@ import org.springframework.web.bind.annotation.*;
|
|||||||
@RequestMapping("/api/roles")
|
@RequestMapping("/api/roles")
|
||||||
public class RolesController {
|
public class RolesController {
|
||||||
|
|
||||||
private final GetRolesService getRolesService;
|
@Autowired
|
||||||
private final PostCreateRoleService postCreateRoleService;
|
private RolesRepository rolesRepository;
|
||||||
private final GetRoleByIdService getRoleByIdService;
|
|
||||||
private final PutUpdateRoleService putUpdateRoleService;
|
|
||||||
private final DeleteRoleService deleteRoleService;
|
|
||||||
|
|
||||||
public RolesController(GetRolesService getRolesService,
|
private final GetListRolesService getListRolesService;
|
||||||
PostCreateRoleService postCreateRoleService,
|
private final GetRolesByIdService getRolesByIdService;
|
||||||
GetRoleByIdService getRoleByIdService,
|
private final PostCreateRolesService postCreateRolesService;
|
||||||
PutUpdateRoleService putUpdateRoleService,
|
private final PutUpdateRolesService putUpdateRolesService;
|
||||||
DeleteRoleService deleteRoleService) {
|
private final DeleteRolesService deleteRolesService;
|
||||||
this.getRolesService = getRolesService;
|
|
||||||
this.postCreateRoleService = postCreateRoleService;
|
public RolesController(GetListRolesService getListRolesService,
|
||||||
this.getRoleByIdService = getRoleByIdService;
|
GetRolesByIdService getRolesByIdService,
|
||||||
this.putUpdateRoleService = putUpdateRoleService;
|
PostCreateRolesService postCreateRolesService,
|
||||||
this.deleteRoleService = deleteRoleService;
|
PutUpdateRolesService putUpdateRolesService,
|
||||||
|
DeleteRolesService deleteRolesService) {
|
||||||
|
this.getListRolesService = getListRolesService;
|
||||||
|
this.getRolesByIdService = getRolesByIdService;
|
||||||
|
this.postCreateRolesService = postCreateRolesService;
|
||||||
|
this.putUpdateRolesService = putUpdateRolesService;
|
||||||
|
this.deleteRolesService = deleteRolesService;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@GetMapping
|
@GetMapping
|
||||||
public GetRolesResponse getRoles(@RequestParam(name = "search", required = false) String search,
|
public GetListRolesResponse getListRoles(@RequestParam(name = "search", required = false) String search,
|
||||||
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
||||||
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
||||||
|
|
||||||
Pageable pageable = PageRequest.of((page - 1), size);
|
Pageable pageable = PageRequest.of((page - 1), size);
|
||||||
RolesRequest rolesRequest = RolesRequest.builder()
|
RolesRequest rolesRequest = RolesRequest.builder()
|
||||||
@@ -43,30 +50,32 @@ public class RolesController {
|
|||||||
.pageable(pageable)
|
.pageable(pageable)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
return getRolesService.execute(rolesRequest);
|
return getListRolesService.execute(rolesRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
@PostMapping
|
@PostMapping
|
||||||
public RolesResponse createRoles(@RequestBody RolesRequest rolesRequest) {
|
public RolesResponse createRoles(@RequestBody RolesRequest rolesRequest) {
|
||||||
return postCreateRoleService.execute(rolesRequest);
|
return postCreateRolesService.execute(rolesRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("/{id}")
|
@GetMapping("/{id}")
|
||||||
public RolesResponse getRolesById(@PathVariable Long id) {
|
public RolesResponse getRolesById(@PathVariable Long id) {
|
||||||
return getRoleByIdService.execute(RolesRequest.builder()
|
return getRolesByIdService.execute(RolesRequest.builder()
|
||||||
.id(id)
|
.id(id)
|
||||||
.build());
|
.build());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@PutMapping("/{id}")
|
@PutMapping("/{id}")
|
||||||
public RolesResponse updateRoles(@PathVariable Long id, @RequestBody RolesRequest rolesRequest){
|
public RolesResponse updateRoles(@PathVariable Long id,
|
||||||
|
@RequestBody RolesRequest rolesRequest){
|
||||||
rolesRequest.setId(id);
|
rolesRequest.setId(id);
|
||||||
return putUpdateRoleService.execute(rolesRequest);
|
return putUpdateRolesService.execute(rolesRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
@DeleteMapping("/{id}")
|
@DeleteMapping("/{id}")
|
||||||
public EmptyResponse deleteRoles(@PathVariable Long id){
|
public EmptyResponse deleteRoles(@PathVariable Long id) {
|
||||||
return deleteRoleService.execute(RolesRequest.builder()
|
return deleteRolesService.execute(RolesRequest.builder()
|
||||||
.id(id)
|
.id(id)
|
||||||
.build());
|
.build());
|
||||||
}
|
}
|
||||||
|
@@ -1,78 +1,82 @@
|
|||||||
package com.iconplus.smartproc.controller;
|
package com.iconplus.smartproc.controller;
|
||||||
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
import org.springframework.http.ResponseEntity;
|
import com.iconplus.smartproc.model.request.SumberDanaRequest;
|
||||||
import org.springframework.web.bind.annotation.CrossOrigin;
|
import com.iconplus.smartproc.model.response.GetListSumberDanaResponse;
|
||||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
import com.iconplus.smartproc.model.response.SumberDanaResponse;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
|
||||||
import org.springframework.web.bind.annotation.PathVariable;
|
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
|
||||||
import org.springframework.web.bind.annotation.PutMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
|
|
||||||
import com.iconplus.smartproc.exception.ResourceNotFoundException;
|
|
||||||
import com.iconplus.smartproc.model.entity.SumberDana;
|
|
||||||
import com.iconplus.smartproc.repository.SumberDanaRepository;
|
import com.iconplus.smartproc.repository.SumberDanaRepository;
|
||||||
|
import com.iconplus.smartproc.service.sumberdana.*;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.data.domain.PageRequest;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/sumberdana")
|
@RequestMapping("/api/sumberdana")
|
||||||
public class SumberDanaController {
|
public class SumberDanaController {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private SumberDanaRepository sumberdanaRepository;
|
private SumberDanaRepository sumberdanaRepository;
|
||||||
|
|
||||||
//get all data
|
private final GetListSumberDanaService getListSumberDanaService;
|
||||||
|
private final GetSumberDanaByIdService getSumberDanaByIdService;
|
||||||
|
private final PostCreateSumberDanaService postCreateSumberDanaService;
|
||||||
|
private final PutUpdateSumberDanaService putUpdateSumberDanaService;
|
||||||
|
private final DeleteSumberDanaService deleteSumberDanaService;
|
||||||
|
|
||||||
|
public SumberDanaController(GetListSumberDanaService getListSumberDanaService,
|
||||||
|
GetSumberDanaByIdService getSumberDanaByIdService,
|
||||||
|
PostCreateSumberDanaService postCreateSumberDanaService,
|
||||||
|
PutUpdateSumberDanaService putUpdateSumberDanaService,
|
||||||
|
DeleteSumberDanaService deleteSumberDanaService) {
|
||||||
|
this.getListSumberDanaService = getListSumberDanaService;
|
||||||
|
this.getSumberDanaByIdService = getSumberDanaByIdService;
|
||||||
|
this.postCreateSumberDanaService = postCreateSumberDanaService;
|
||||||
|
this.putUpdateSumberDanaService = putUpdateSumberDanaService;
|
||||||
|
this.deleteSumberDanaService = deleteSumberDanaService;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@GetMapping
|
@GetMapping
|
||||||
public List<SumberDana> getAllSumberdanas(){
|
public GetListSumberDanaResponse getListSumberDana(@RequestParam(name = "search", required = false) String search,
|
||||||
return sumberdanaRepository.findAll();
|
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
||||||
|
|
||||||
|
Pageable pageable = PageRequest.of((page - 1), size);
|
||||||
|
SumberDanaRequest sumberDanaRequest = SumberDanaRequest.builder()
|
||||||
|
.search(search)
|
||||||
|
.pageable(pageable)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
return getListSumberDanaService.execute(sumberDanaRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
// create
|
|
||||||
@PostMapping
|
@PostMapping
|
||||||
public SumberDana createSumberdana(@RequestBody SumberDana sumberdana) {
|
public SumberDanaResponse createSumberDana(@RequestBody SumberDanaRequest sumberDanaRequest) {
|
||||||
return sumberdanaRepository.save(sumberdana);
|
return postCreateSumberDanaService.execute(sumberDanaRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
// get sumberdana by id rest api
|
|
||||||
@GetMapping("/{id}")
|
@GetMapping("/{id}")
|
||||||
public ResponseEntity<SumberDana> getSumberdanaById(@PathVariable Long id) {
|
public SumberDanaResponse getSumberDanaById(@PathVariable Long id) {
|
||||||
SumberDana sumberdana = sumberdanaRepository.findById(id)
|
return getSumberDanaByIdService.execute(SumberDanaRequest.builder()
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Sumberdana not exist with id :" + id));
|
.id(id)
|
||||||
return ResponseEntity.ok(sumberdana);
|
.build());
|
||||||
}
|
}
|
||||||
|
|
||||||
// update sumberdana rest api
|
|
||||||
@PutMapping("/{id}")
|
@PutMapping("/{id}")
|
||||||
public ResponseEntity<SumberDana> updateSumberdana(@PathVariable Long id, @RequestBody SumberDana sumberDanaDetails){
|
public SumberDanaResponse updateSumberdana(@PathVariable Long id,
|
||||||
SumberDana sumberdana = sumberdanaRepository.findById(id)
|
@RequestBody SumberDanaRequest sumberDanaRequest){
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Sumberdana not exist with id :" + id));
|
sumberDanaRequest.setId(id);
|
||||||
|
return putUpdateSumberDanaService.execute(sumberDanaRequest);
|
||||||
sumberdana.setSumberDana(sumberDanaDetails.getSumberDana());
|
|
||||||
sumberdana.setKeterangan(sumberDanaDetails.getKeterangan());
|
|
||||||
|
|
||||||
SumberDana updatedSumberDana = sumberdanaRepository.save(sumberdana);
|
|
||||||
return ResponseEntity.ok(updatedSumberDana);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// delete sumberdana rest api
|
|
||||||
@DeleteMapping("/{id}")
|
@DeleteMapping("/{id}")
|
||||||
public ResponseEntity<Map<String, Boolean>> deleteSumberdana(@PathVariable Long id){
|
public EmptyResponse deleteSumberDana(@PathVariable Long id) {
|
||||||
SumberDana sumberdana = sumberdanaRepository.findById(id)
|
return deleteSumberDanaService.execute(SumberDanaRequest.builder()
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Sumberdana not exist with id :" + id));
|
.id(id)
|
||||||
|
.build());
|
||||||
sumberdanaRepository.delete(sumberdana);
|
|
||||||
Map<String, Boolean> response = new HashMap<>();
|
|
||||||
response.put("deleted", Boolean.TRUE);
|
|
||||||
return ResponseEntity.ok(response);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -1,74 +1,82 @@
|
|||||||
package com.iconplus.smartproc.controller;
|
package com.iconplus.smartproc.controller;
|
||||||
|
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
import org.springframework.http.ResponseEntity;
|
import com.iconplus.smartproc.model.request.SupplyPositioningMatrixRequest;
|
||||||
import org.springframework.web.bind.annotation.CrossOrigin;
|
import com.iconplus.smartproc.model.response.GetListSupplyPositioningMatrixResponse;
|
||||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
import com.iconplus.smartproc.model.response.SupplyPositioningMatrixResponse;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
|
||||||
import org.springframework.web.bind.annotation.PathVariable;
|
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
|
||||||
import org.springframework.web.bind.annotation.PutMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
|
|
||||||
import com.iconplus.smartproc.exception.ResourceNotFoundException;
|
|
||||||
import com.iconplus.smartproc.model.entity.SupplyPositioningMatrix;
|
|
||||||
import com.iconplus.smartproc.repository.SupplyPositioningMatrixRepository;
|
import com.iconplus.smartproc.repository.SupplyPositioningMatrixRepository;
|
||||||
|
import com.iconplus.smartproc.service.supplypositioningmatrix.*;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.data.domain.PageRequest;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
@CrossOrigin(origins = "http://localhost:8080", allowCredentials = "true")
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/api/supplypositioningmatrix")
|
@RequestMapping("/api/supplypositioningmatrix")
|
||||||
public class SupplyPositioningMatrixController {
|
public class SupplyPositioningMatrixController {
|
||||||
@Autowired
|
|
||||||
private SupplyPositioningMatrixRepository supplypositioningmatrixRepository;
|
|
||||||
|
|
||||||
//get all data
|
@Autowired
|
||||||
@GetMapping
|
private SupplyPositioningMatrixRepository supplypositioningmatrixRepository;
|
||||||
public List<SupplyPositioningMatrix> getAllSupplypositioningmatrix(){
|
|
||||||
return supplypositioningmatrixRepository.findAll();
|
|
||||||
}
|
|
||||||
|
|
||||||
// create
|
private final GetListSupplyPositioningMatrixService getListSupplyPositioningMatrixService;
|
||||||
@PostMapping
|
private final GetSupplyPositioningMatrixByIdService getSupplyPositioningMatrixByIdService;
|
||||||
public SupplyPositioningMatrix createSupplypositioningmatrix(@RequestBody SupplyPositioningMatrix supplypositioningmatrix) {
|
private final PostCreateSupplyPositioningMatrixService postCreateSupplyPositioningMatrixService;
|
||||||
return supplypositioningmatrixRepository.save(supplypositioningmatrix);
|
private final PutUpdateSupplyPositioningMatrixService putUpdateSupplyPositioningMatrixService;
|
||||||
}
|
private final DeleteSupplyPositioningMatrixService deleteSupplyPositioningMatrixService;
|
||||||
|
|
||||||
// get supplypositioningmatrix by id rest api
|
public SupplyPositioningMatrixController(GetListSupplyPositioningMatrixService getListSupplyPositioningMatrixService,
|
||||||
@GetMapping("/{id}")
|
GetSupplyPositioningMatrixByIdService getSupplyPositioningMatrixByIdService,
|
||||||
public ResponseEntity<SupplyPositioningMatrix> getSupplypositioningmatrixById(@PathVariable Long id) {
|
PostCreateSupplyPositioningMatrixService postCreateSupplyPositioningMatrixService,
|
||||||
SupplyPositioningMatrix supplypositioningmatrix = supplypositioningmatrixRepository.findById(id)
|
PutUpdateSupplyPositioningMatrixService putUpdateSupplyPositioningMatrixService,
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Supplypositioningmatrix not exist with id :" + id));
|
DeleteSupplyPositioningMatrixService deleteSupplyPositioningMatrixService) {
|
||||||
return ResponseEntity.ok(supplypositioningmatrix);
|
this.getListSupplyPositioningMatrixService = getListSupplyPositioningMatrixService;
|
||||||
}
|
this.getSupplyPositioningMatrixByIdService = getSupplyPositioningMatrixByIdService;
|
||||||
|
this.postCreateSupplyPositioningMatrixService = postCreateSupplyPositioningMatrixService;
|
||||||
|
this.putUpdateSupplyPositioningMatrixService = putUpdateSupplyPositioningMatrixService;
|
||||||
|
this.deleteSupplyPositioningMatrixService = deleteSupplyPositioningMatrixService;
|
||||||
|
}
|
||||||
|
|
||||||
// update jenispengadaan rest api
|
|
||||||
@PutMapping("/{id}")
|
|
||||||
public ResponseEntity<SupplyPositioningMatrix> updateSupplypositioningmatrix(@PathVariable Long id, @RequestBody SupplyPositioningMatrix supplyPositioningMatrixDetails){
|
|
||||||
SupplyPositioningMatrix supplypositioningmatrix = supplypositioningmatrixRepository.findById(id)
|
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Supplypositioningmatrix not exist with id :" + id));
|
|
||||||
|
|
||||||
supplypositioningmatrix.setSupplyPositioningMatrix(supplyPositioningMatrixDetails.getSupplyPositioningMatrix());
|
@GetMapping
|
||||||
supplypositioningmatrix.setKeterangan(supplyPositioningMatrixDetails.getKeterangan());
|
public GetListSupplyPositioningMatrixResponse getListSupplyPositioningMatrix(@RequestParam(name = "search", required = false) String search,
|
||||||
|
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
||||||
|
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
||||||
|
|
||||||
SupplyPositioningMatrix updatedSupplyPositioningMatrix = supplypositioningmatrixRepository.save(supplypositioningmatrix);
|
Pageable pageable = PageRequest.of((page - 1), size);
|
||||||
return ResponseEntity.ok(updatedSupplyPositioningMatrix);
|
SupplyPositioningMatrixRequest supplyPositioningMatrixRequest = SupplyPositioningMatrixRequest.builder()
|
||||||
}
|
.search(search)
|
||||||
|
.pageable(pageable)
|
||||||
|
.build();
|
||||||
|
|
||||||
// delete jenispengadaan rest api
|
return getListSupplyPositioningMatrixService.execute(supplyPositioningMatrixRequest);
|
||||||
@DeleteMapping("/{id}")
|
}
|
||||||
public ResponseEntity<Map<String, Boolean>> deleteSupplypositioningmatrix(@PathVariable Long id){
|
|
||||||
SupplyPositioningMatrix supplypositioningmatrix = supplypositioningmatrixRepository.findById(id)
|
|
||||||
.orElseThrow(() -> new ResourceNotFoundException("Unit inisiator not exist with id :" + id));
|
|
||||||
|
|
||||||
supplypositioningmatrixRepository.delete(supplypositioningmatrix);
|
@PostMapping
|
||||||
Map<String, Boolean> response = new HashMap<>();
|
public SupplyPositioningMatrixResponse createSupplyPositioningMatrix(@RequestBody SupplyPositioningMatrixRequest supplyPositioningMatrixRequest) {
|
||||||
response.put("deleted", Boolean.TRUE);
|
return postCreateSupplyPositioningMatrixService.execute(supplyPositioningMatrixRequest);
|
||||||
return ResponseEntity.ok(response);
|
}
|
||||||
}
|
|
||||||
|
@GetMapping("/{id}")
|
||||||
|
public SupplyPositioningMatrixResponse getSupplyPositioningMatrixById(@PathVariable Long id) {
|
||||||
|
return getSupplyPositioningMatrixByIdService.execute(SupplyPositioningMatrixRequest.builder()
|
||||||
|
.id(id)
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@PutMapping("/{id}")
|
||||||
|
public SupplyPositioningMatrixResponse updateSupplyPositioningmatrix(@PathVariable Long id,
|
||||||
|
@RequestBody SupplyPositioningMatrixRequest supplyPositioningMatrixRequest){
|
||||||
|
supplyPositioningMatrixRequest.setId(id);
|
||||||
|
return putUpdateSupplyPositioningMatrixService.execute(supplyPositioningMatrixRequest);
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping("/{id}")
|
||||||
|
public EmptyResponse deleteSupplyPositioningMatrix(@PathVariable Long id) {
|
||||||
|
return deleteSupplyPositioningMatrixService.execute(SupplyPositioningMatrixRequest.builder()
|
||||||
|
.id(id)
|
||||||
|
.build());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -0,0 +1,14 @@
|
|||||||
|
package com.iconplus.smartproc.model.projection;
|
||||||
|
|
||||||
|
public interface JenisKontrakView {
|
||||||
|
|
||||||
|
Long getId();
|
||||||
|
String getJenisKontrak();
|
||||||
|
String getKeterangan();
|
||||||
|
Boolean getDeleted();
|
||||||
|
|
||||||
|
void setId(Long id);
|
||||||
|
void setJenisKontrak(String jenisKontrak);
|
||||||
|
void setKeterangan(String keterangan);
|
||||||
|
void setDeleted(Boolean deleted);
|
||||||
|
}
|
@@ -0,0 +1,14 @@
|
|||||||
|
package com.iconplus.smartproc.model.projection;
|
||||||
|
|
||||||
|
public interface JenisPengadaanView {
|
||||||
|
|
||||||
|
Long getId();
|
||||||
|
String getJenisPengadaan();
|
||||||
|
String getKeterangan();
|
||||||
|
Boolean getDeleted();
|
||||||
|
|
||||||
|
void setId(Long id);
|
||||||
|
void setJenisPengadaan(String jenisPengadaan);
|
||||||
|
void setKeterangan(String keterangan);
|
||||||
|
void setDeleted(Boolean deleted);
|
||||||
|
}
|
@@ -0,0 +1,15 @@
|
|||||||
|
package com.iconplus.smartproc.model.projection;
|
||||||
|
|
||||||
|
public interface LokasiView {
|
||||||
|
|
||||||
|
Long getId();
|
||||||
|
String getLokasi();
|
||||||
|
String getKeterangan();
|
||||||
|
String getIsActive();
|
||||||
|
Boolean getIsDelete();
|
||||||
|
|
||||||
|
void setId(Long id);
|
||||||
|
void setLokasi(String Lokasi);
|
||||||
|
void setKeterangan(String keterangan);
|
||||||
|
void setIsDelete(Boolean isDelete);
|
||||||
|
}
|
@@ -0,0 +1,16 @@
|
|||||||
|
package com.iconplus.smartproc.model.projection;
|
||||||
|
|
||||||
|
public interface MetodePengadaanView {
|
||||||
|
|
||||||
|
Long getId();
|
||||||
|
String getMetodePengadaan();
|
||||||
|
String getKeterangan();
|
||||||
|
String getIsActive();
|
||||||
|
Boolean getIsDelete();
|
||||||
|
|
||||||
|
void setId(Long id);
|
||||||
|
void setMetodePengadaan(String metodePengadaan);
|
||||||
|
void setKeterangan(String keterangan);
|
||||||
|
void setIsActive(Boolean isActive);
|
||||||
|
void setIsDelete(Boolean isDelete);
|
||||||
|
}
|
@@ -0,0 +1,16 @@
|
|||||||
|
package com.iconplus.smartproc.model.projection;
|
||||||
|
|
||||||
|
public interface MetodePenyampaianView {
|
||||||
|
|
||||||
|
Long getId();
|
||||||
|
String getMetodePenyampaian();
|
||||||
|
String getKeterangan();
|
||||||
|
String getIsActive();
|
||||||
|
Boolean getIsDelete();
|
||||||
|
|
||||||
|
void setId(Long id);
|
||||||
|
void setMetodePenyampaian(String metodePenyampaian);
|
||||||
|
void setKeterangan(String keterangan);
|
||||||
|
void setIsActive(Boolean isActive);
|
||||||
|
void setIsDelete(Boolean isDelete);
|
||||||
|
}
|
@@ -3,13 +3,13 @@ package com.iconplus.smartproc.model.projection;
|
|||||||
public interface RolesView {
|
public interface RolesView {
|
||||||
|
|
||||||
Long getId();
|
Long getId();
|
||||||
String getRole();
|
String getRoles();
|
||||||
String getKeterangan();
|
String getKeterangan();
|
||||||
Boolean getIsActive();
|
String getIsActive();
|
||||||
Boolean getIsDelete();
|
Boolean getIsDelete();
|
||||||
|
|
||||||
void setId(Long id);
|
void setId(Long id);
|
||||||
void setRole(String role);
|
void setRoles(String roles);
|
||||||
void setKeterangan(String keterangan);
|
void setKeterangan(String keterangan);
|
||||||
void setIsActive(Boolean isActive);
|
void setIsActive(Boolean isActive);
|
||||||
void setIsDelete(Boolean isDelete);
|
void setIsDelete(Boolean isDelete);
|
||||||
|
@@ -0,0 +1,16 @@
|
|||||||
|
package com.iconplus.smartproc.model.projection;
|
||||||
|
|
||||||
|
public interface StrategiPengadaanView {
|
||||||
|
|
||||||
|
Long getId();
|
||||||
|
String getStrategiPengadaan();
|
||||||
|
String getKeterangan();
|
||||||
|
String getIsActive();
|
||||||
|
Boolean getIsDelete();
|
||||||
|
|
||||||
|
void setId(Long id);
|
||||||
|
void setStrategiPengadaan(String strategiPengadaan);
|
||||||
|
void setKeterangan(String keterangan);
|
||||||
|
void setIsActive(Boolean isActive);
|
||||||
|
void setIsDelete(Boolean isDelete);
|
||||||
|
}
|
@@ -0,0 +1,16 @@
|
|||||||
|
package com.iconplus.smartproc.model.projection;
|
||||||
|
|
||||||
|
public interface SumberDanaView {
|
||||||
|
|
||||||
|
Long getId();
|
||||||
|
String getSumberDana();
|
||||||
|
String getKeterangan();
|
||||||
|
String getIsActive();
|
||||||
|
Boolean getIsDelete();
|
||||||
|
|
||||||
|
void setId(Long id);
|
||||||
|
void setSumberDana(String sumberDana);
|
||||||
|
void setKeterangan(String keterangan);
|
||||||
|
void setIsActive(Boolean isActive);
|
||||||
|
void setIsDelete(Boolean isDelete);
|
||||||
|
}
|
@@ -0,0 +1,16 @@
|
|||||||
|
package com.iconplus.smartproc.model.projection;
|
||||||
|
|
||||||
|
public interface SupplyPositioningMatrixView {
|
||||||
|
|
||||||
|
Long getId();
|
||||||
|
String getSupplyPositioningMatrix();
|
||||||
|
String getKeterangan();
|
||||||
|
String getIsActive();
|
||||||
|
Boolean getIsDelete();
|
||||||
|
|
||||||
|
void setId(Long id);
|
||||||
|
void setSupplyPositioningMatrix(String supplyPositioningMatrix);
|
||||||
|
void setKeterangan(String keterangan);
|
||||||
|
void setIsActive(Boolean isActive);
|
||||||
|
void setIsDelete(Boolean isDelete);
|
||||||
|
}
|
@@ -0,0 +1,19 @@
|
|||||||
|
package com.iconplus.smartproc.model.request;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseRequest;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
public class JenisKontrakRequest extends BaseRequest {
|
||||||
|
|
||||||
|
private Long id;
|
||||||
|
private String jenisKontrak;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean deleted;
|
||||||
|
private String search;
|
||||||
|
private transient Pageable pageable;
|
||||||
|
}
|
@@ -0,0 +1,19 @@
|
|||||||
|
package com.iconplus.smartproc.model.request;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseRequest;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
public class JenisPengadaanRequest extends BaseRequest {
|
||||||
|
|
||||||
|
private Long id;
|
||||||
|
private String jenisPengadaan;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean deleted;
|
||||||
|
private String search;
|
||||||
|
private transient Pageable pageable;
|
||||||
|
}
|
@@ -0,0 +1,19 @@
|
|||||||
|
package com.iconplus.smartproc.model.request;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseRequest;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
public class JenisAnggaranRequest extends BaseRequest {
|
||||||
|
|
||||||
|
private Long id;
|
||||||
|
private String jenisAnggaran;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
private String search;
|
||||||
|
private transient Pageable pageable;
|
||||||
|
}
|
@@ -0,0 +1,19 @@
|
|||||||
|
package com.iconplus.smartproc.model.request;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseRequest;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
public class MetodePengadaanRequest extends BaseRequest {
|
||||||
|
|
||||||
|
private Long id;
|
||||||
|
private String metodePengadaan;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
private String search;
|
||||||
|
private transient Pageable pageable;
|
||||||
|
}
|
@@ -0,0 +1,19 @@
|
|||||||
|
package com.iconplus.smartproc.model.request;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseRequest;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
public class MetodePenyampaianRequest extends BaseRequest {
|
||||||
|
|
||||||
|
private Long id;
|
||||||
|
private String metodePenyampaian;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
private String search;
|
||||||
|
private transient Pageable pageable;
|
||||||
|
}
|
@@ -0,0 +1,19 @@
|
|||||||
|
package com.iconplus.smartproc.model.request;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseRequest;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
public class StrategiPengadaanRequest extends BaseRequest {
|
||||||
|
|
||||||
|
private Long id;
|
||||||
|
private String strategiPengadaan;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
private String search;
|
||||||
|
private transient Pageable pageable;
|
||||||
|
}
|
@@ -0,0 +1,19 @@
|
|||||||
|
package com.iconplus.smartproc.model.request;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseRequest;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
public class SumberDanaRequest extends BaseRequest {
|
||||||
|
|
||||||
|
private Long id;
|
||||||
|
private String sumberDana;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
private String search;
|
||||||
|
private transient Pageable pageable;
|
||||||
|
}
|
@@ -0,0 +1,19 @@
|
|||||||
|
package com.iconplus.smartproc.model.request;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseRequest;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
public class SupplyPositioningMatrixRequest extends BaseRequest {
|
||||||
|
|
||||||
|
private Long id;
|
||||||
|
private String supplyPositioningMatrix;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
private String search;
|
||||||
|
private transient Pageable pageable;
|
||||||
|
}
|
@@ -0,0 +1,20 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class GetListJenisKontrakResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private List<JenisKontrakResponse> data;
|
||||||
|
private Pagination pagination;
|
||||||
|
}
|
@@ -0,0 +1,20 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class GetListJenisPengadaanResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private List<JenisPengadaanResponse> data;
|
||||||
|
private Pagination pagination;
|
||||||
|
}
|
@@ -0,0 +1,20 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class GetListLokasiResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private List<LokasiResponse> data;
|
||||||
|
private Pagination pagination;
|
||||||
|
}
|
@@ -0,0 +1,20 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class GetListMetodePengadaanResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private List<MetodePengadaanResponse> data;
|
||||||
|
private Pagination pagination;
|
||||||
|
}
|
@@ -0,0 +1,20 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class GetListJenisAnggaranResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private List<JenisAnggaranResponse> data;
|
||||||
|
private Pagination pagination;
|
||||||
|
}
|
@@ -0,0 +1,20 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@AllArgsConstructor
|
||||||
|
@NoArgsConstructor
|
||||||
|
public class GetListRolesResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private List<RolesResponse> data;
|
||||||
|
private Pagination pagination;
|
||||||
|
}
|
@@ -0,0 +1,20 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class GetListStrategiPengadaanResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private List<StrategiPengadaanResponse> data;
|
||||||
|
private Pagination pagination;
|
||||||
|
}
|
@@ -0,0 +1,20 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class GetListSumberDanaResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private List<SumberDanaResponse> data;
|
||||||
|
private Pagination pagination;
|
||||||
|
}
|
@@ -0,0 +1,20 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class GetListSupplyPositioningMatrixResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private List<SupplyPositioningMatrixResponse> data;
|
||||||
|
private Pagination pagination;
|
||||||
|
}
|
@@ -0,0 +1,22 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class JenisKontrakResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private long id;
|
||||||
|
private String jenisKontrak;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean deleted;
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,21 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class JenisPengadaanResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private long id;
|
||||||
|
private String jenisPengadaan;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,21 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class LokasiResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private long id;
|
||||||
|
private String lokasi;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,21 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class MetodePengadaanResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private long id;
|
||||||
|
private String metodePengadaan;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,21 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class MetodePenyampaianResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private long id;
|
||||||
|
private String metodePenyampaian;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,21 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class StrategiPengadaanResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private long id;
|
||||||
|
private String strategiPengadaan;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,21 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class SumberDanaResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private long id;
|
||||||
|
private String sumberDana;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,21 @@
|
|||||||
|
package com.iconplus.smartproc.model.response;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.base.BaseResponse;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class SupplyPositioningMatrixResponse extends BaseResponse {
|
||||||
|
|
||||||
|
private long id;
|
||||||
|
private String supplyPositioningMatrix;
|
||||||
|
private String keterangan;
|
||||||
|
private Boolean isActive;
|
||||||
|
private Boolean isDelete;
|
||||||
|
|
||||||
|
}
|
@@ -1,10 +1,31 @@
|
|||||||
package com.iconplus.smartproc.repository;
|
package com.iconplus.smartproc.repository;
|
||||||
|
|
||||||
import com.iconplus.smartproc.model.entity.JenisKontrak;
|
import com.iconplus.smartproc.model.entity.JenisKontrak;
|
||||||
|
import com.iconplus.smartproc.model.projection.JenisKontrakView;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
import org.springframework.data.jpa.repository.Query;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface JenisKontrakRepository extends JpaRepository<JenisKontrak, Long> {
|
public interface JenisKontrakRepository extends JpaRepository<JenisKontrak, Long> {
|
||||||
|
|
||||||
|
@Query(value = "SELECT ja.id as id, " +
|
||||||
|
"ja.jenisKontrak as jenisKontrak, " +
|
||||||
|
"ja.keterangan as keterangan, " +
|
||||||
|
"ja.deleted as deleted " +
|
||||||
|
"FROM JenisKontrak ja " +
|
||||||
|
"WHERE ja.deleted = false " +
|
||||||
|
"AND (:search is null " +
|
||||||
|
"or (UPPER(ja.jenisKontrak) like :search OR UPPER(ja.keterangan) like :search)) " +
|
||||||
|
"ORDER BY ja.id")
|
||||||
|
Page<JenisKontrakView> getAllJenisKontrak(String search, Pageable pageable);
|
||||||
|
|
||||||
|
Optional<JenisKontrak> findByIdAndDeletedFalse(Long id);
|
||||||
|
|
||||||
|
Optional<JenisKontrak> findByJenisKontrakAndDeletedFalse(String jenisKontrak);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -1,10 +1,31 @@
|
|||||||
package com.iconplus.smartproc.repository;
|
package com.iconplus.smartproc.repository;
|
||||||
|
|
||||||
import com.iconplus.smartproc.model.entity.JenisPengadaan;
|
import com.iconplus.smartproc.model.entity.JenisPengadaan;
|
||||||
|
import com.iconplus.smartproc.model.projection.JenisPengadaanView;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
import org.springframework.data.jpa.repository.Query;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface JenisPengadaanRepository extends JpaRepository<JenisPengadaan, Long> {
|
public interface JenisPengadaanRepository extends JpaRepository<JenisPengadaan, Long> {
|
||||||
|
|
||||||
|
@Query(value = "SELECT ja.id as id, " +
|
||||||
|
"ja.jenisPengadaan as jenisPengadaan, " +
|
||||||
|
"ja.keterangan as keterangan, " +
|
||||||
|
"ja.deleted as deleted " +
|
||||||
|
"FROM JenisPengadaan ja " +
|
||||||
|
"WHERE ja.deleted = false " +
|
||||||
|
"AND (:search is null " +
|
||||||
|
"or (UPPER(ja.jenisPengadaan) like :search OR UPPER(ja.keterangan) like :search)) " +
|
||||||
|
"ORDER BY ja.id")
|
||||||
|
Page<JenisPengadaanView> getAllJenisPengadaan(String search, Pageable pageable);
|
||||||
|
|
||||||
|
Optional<JenisPengadaan> findByIdAndDeletedFalse(Long id);
|
||||||
|
|
||||||
|
Optional<JenisPengadaan> findByJenisPengadaanAndDeletedFalse(String jenisPengadaan);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -1,10 +1,31 @@
|
|||||||
package com.iconplus.smartproc.repository;
|
package com.iconplus.smartproc.repository;
|
||||||
|
|
||||||
import com.iconplus.smartproc.model.entity.MetodePengadaan;
|
import com.iconplus.smartproc.model.entity.MetodePengadaan;
|
||||||
|
import com.iconplus.smartproc.model.projection.MetodePengadaanView;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
import org.springframework.data.jpa.repository.Query;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface MetodePengadaanRepository extends JpaRepository<MetodePengadaan, Long> {
|
public interface MetodePengadaanRepository extends JpaRepository<MetodePengadaan, Long> {
|
||||||
|
|
||||||
|
@Query(value = "SELECT ja.id as id, " +
|
||||||
|
"ja.metodePengadaan as metodePengadaan, " +
|
||||||
|
"ja.keterangan as keterangan, " +
|
||||||
|
"ja.isDelete as isDelete " +
|
||||||
|
"FROM MetodePengadaan ja " +
|
||||||
|
"WHERE ja.isDelete = false " +
|
||||||
|
"AND (:search = '' " +
|
||||||
|
"or (UPPER(ja.metodePengadaan) like :search OR UPPER(ja.keterangan) like :search)) " +
|
||||||
|
"ORDER BY ja.id")
|
||||||
|
Page<MetodePengadaanView> getAllMetodePengadaan(String search, Pageable pageable);
|
||||||
|
|
||||||
|
Optional<MetodePengadaan> findByIdAndIsDeleteFalse(Long id);
|
||||||
|
|
||||||
|
Optional<MetodePengadaan> findByMetodePengadaanAndIsDeleteFalse(String metodePengadaan);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -1,10 +1,31 @@
|
|||||||
package com.iconplus.smartproc.repository;
|
package com.iconplus.smartproc.repository;
|
||||||
|
|
||||||
import com.iconplus.smartproc.model.entity.MetodePenyampaian;
|
import com.iconplus.smartproc.model.entity.MetodePenyampaian;
|
||||||
|
import com.iconplus.smartproc.model.projection.MetodePenyampaianView;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
import org.springframework.data.jpa.repository.Query;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface MetodePenyampaianRepository extends JpaRepository<MetodePenyampaian, Long> {
|
public interface MetodePenyampaianRepository extends JpaRepository<MetodePenyampaian, Long> {
|
||||||
|
|
||||||
|
@Query(value = "SELECT ja.id as id, " +
|
||||||
|
"ja.metodePenyampaian as metodePenyampaian, " +
|
||||||
|
"ja.keterangan as keterangan, " +
|
||||||
|
"ja.isDelete as isDelete " +
|
||||||
|
"FROM MetodePenyampaian ja " +
|
||||||
|
"WHERE ja.isDelete = false " +
|
||||||
|
"AND (:search = '' " +
|
||||||
|
"or (UPPER(ja.metodePenyampaian) like :search OR UPPER(ja.keterangan) like :search)) " +
|
||||||
|
"ORDER BY ja.id")
|
||||||
|
Page<MetodePenyampaianView> getAllMetodePenyampaian(String search, Pageable pageable);
|
||||||
|
|
||||||
|
Optional<MetodePenyampaian> findByIdAndIsDeleteFalse(Long id);
|
||||||
|
|
||||||
|
Optional<MetodePenyampaian> findByMetodePenyampaianAndIsDeleteFalse(String metodePenyampaian);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -1,10 +1,31 @@
|
|||||||
package com.iconplus.smartproc.repository;
|
package com.iconplus.smartproc.repository;
|
||||||
|
|
||||||
import com.iconplus.smartproc.model.entity.StrategiPengadaan;
|
import com.iconplus.smartproc.model.entity.StrategiPengadaan;
|
||||||
|
import com.iconplus.smartproc.model.projection.StrategiPengadaanView;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
import org.springframework.data.jpa.repository.Query;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface StrategiPengadaanRepository extends JpaRepository<StrategiPengadaan, Long> {
|
public interface StrategiPengadaanRepository extends JpaRepository<StrategiPengadaan, Long> {
|
||||||
|
|
||||||
|
@Query(value = "SELECT ja.id as id, " +
|
||||||
|
"ja.strategiPengadaan as strategiPengadaan, " +
|
||||||
|
"ja.keterangan as keterangan, " +
|
||||||
|
"ja.isDelete as isDelete " +
|
||||||
|
"FROM StrategiPengadaan ja " +
|
||||||
|
"WHERE ja.isDelete = false " +
|
||||||
|
"AND (:search = '' " +
|
||||||
|
"or (UPPER(ja.strategiPengadaan) like :search OR UPPER(ja.keterangan) like :search)) " +
|
||||||
|
"ORDER BY ja.id")
|
||||||
|
Page<StrategiPengadaanView> getAllStrategiPengadaan(String search, Pageable pageable);
|
||||||
|
|
||||||
|
Optional<StrategiPengadaan> findByIdAndIsDeleteFalse(Long id);
|
||||||
|
|
||||||
|
Optional<StrategiPengadaan> findByStrategiPengadaanAndIsDeleteFalse(String strategiPengadaan);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -1,10 +1,31 @@
|
|||||||
package com.iconplus.smartproc.repository;
|
package com.iconplus.smartproc.repository;
|
||||||
|
|
||||||
import org.springframework.data.jpa.repository.JpaRepository;
|
|
||||||
import org.springframework.stereotype.Repository;
|
|
||||||
import com.iconplus.smartproc.model.entity.SupplyPositioningMatrix;
|
import com.iconplus.smartproc.model.entity.SupplyPositioningMatrix;
|
||||||
|
import com.iconplus.smartproc.model.projection.SupplyPositioningMatrixView;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
import org.springframework.data.jpa.repository.Query;
|
||||||
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
|
import java.util.Optional;
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface SupplyPositioningMatrixRepository extends JpaRepository<SupplyPositioningMatrix, Long> {
|
public interface SupplyPositioningMatrixRepository extends JpaRepository<SupplyPositioningMatrix, Long> {
|
||||||
|
|
||||||
|
@Query(value = "SELECT ja.id as id, " +
|
||||||
|
"ja.supplyPositioningMatrix as supplyPositioningMatrix, " +
|
||||||
|
"ja.keterangan as keterangan, " +
|
||||||
|
"ja.isDelete as isDelete " +
|
||||||
|
"FROM SupplyPositioningMatrix ja " +
|
||||||
|
"WHERE ja.isDelete = false " +
|
||||||
|
"AND (:search = '' " +
|
||||||
|
"or (UPPER(ja.supplyPositioningMatrix) like :search OR UPPER(ja.keterangan) like :search)) " +
|
||||||
|
"ORDER BY ja.id")
|
||||||
|
Page<SupplyPositioningMatrixView> getAllSupplyPositioningMatrix(String search, Pageable pageable);
|
||||||
|
|
||||||
|
Optional<SupplyPositioningMatrix> findByIdAndIsDeleteFalse(Long id);
|
||||||
|
|
||||||
|
Optional<SupplyPositioningMatrix> findBySupplyPositioningMatrixAndIsDeleteFalse(String supplyPositioningMatrix);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -0,0 +1,39 @@
|
|||||||
|
package com.iconplus.smartproc.service.jeniskontrak;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.entity.JenisKontrak;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisKontrakRequest;
|
||||||
|
import com.iconplus.smartproc.repository.JenisKontrakRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class DeleteJenisKontrakService implements BaseService<JenisKontrakRequest, EmptyResponse> {
|
||||||
|
|
||||||
|
private JenisKontrakRepository jenisKontrakRepository;
|
||||||
|
|
||||||
|
public DeleteJenisKontrakService(JenisKontrakRepository jenisKontrakRepository) {
|
||||||
|
this.jenisKontrakRepository = jenisKontrakRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EmptyResponse execute(JenisKontrakRequest input) {
|
||||||
|
|
||||||
|
var jenisKontrak = jenisKontrakRepository.findByIdAndDeletedFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
jenisKontrak.setIsDelete(true);
|
||||||
|
jenisKontrakRepository.save(jenisKontrak);
|
||||||
|
log.info("success delete jenis kontrak id {}", jenisKontrak.getIsDelete());
|
||||||
|
return new EmptyResponse();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,44 @@
|
|||||||
|
package com.iconplus.smartproc.service.jeniskontrak;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisKontrakRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisKontrakResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisKontrakRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetJenisKontrakByIdService implements BaseService<JenisKontrakRequest, JenisKontrakResponse> {
|
||||||
|
|
||||||
|
private final JenisKontrakRepository jenisKontrakRepository;
|
||||||
|
|
||||||
|
public GetJenisKontrakByIdService(JenisKontrakRepository jenisKontrakRepository) {
|
||||||
|
this.jenisKontrakRepository = jenisKontrakRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JenisKontrakResponse execute(JenisKontrakRequest input) {
|
||||||
|
JenisKontrakResponse jenisKontrakResponse = new JenisKontrakResponse();
|
||||||
|
var jenisKontrakView = jenisKontrakRepository.findByIdAndDeletedFalse(input.getId());
|
||||||
|
if (jenisKontrakView.isEmpty()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
jenisKontrakResponse.setJenisKontrak(jenisKontrakView.get().getJenisKontrak());
|
||||||
|
jenisKontrakResponse.setKeterangan(jenisKontrakView.get().getKeterangan());
|
||||||
|
jenisKontrakResponse.setDeleted(jenisKontrakView.get().getIsDelete());
|
||||||
|
|
||||||
|
return JenisKontrakResponse.builder()
|
||||||
|
.id(jenisKontrakView.get().getId())
|
||||||
|
.jenisKontrak(jenisKontrakView.get().getJenisKontrak())
|
||||||
|
.keterangan(jenisKontrakView.get().getKeterangan())
|
||||||
|
.deleted(jenisKontrakView.get().getIsDelete())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,60 @@
|
|||||||
|
package com.iconplus.smartproc.service.jeniskontrak;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.projection.JenisKontrakView;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisKontrakRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.GetListJenisKontrakResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisKontrakResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisKontrakRepository;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetListJenisKontrakService implements BaseService<JenisKontrakRequest, GetListJenisKontrakResponse> {
|
||||||
|
|
||||||
|
private JenisKontrakRepository jenisKontrakRepository;
|
||||||
|
|
||||||
|
public GetListJenisKontrakService(JenisKontrakRepository jenisKontrakRepository) {
|
||||||
|
this.jenisKontrakRepository = jenisKontrakRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GetListJenisKontrakResponse execute(JenisKontrakRequest input) {
|
||||||
|
validateRequest(input);
|
||||||
|
List<JenisKontrakResponse> jenisKontrakResponseList = new ArrayList<>();
|
||||||
|
var jenisKontrakViews = jenisKontrakRepository.getAllJenisKontrak(input.getSearch(), input.getPageable());
|
||||||
|
|
||||||
|
for (JenisKontrakView jenisKontrakView : jenisKontrakViews) {
|
||||||
|
JenisKontrakResponse jenisKontrakResponse = JenisKontrakResponse.builder()
|
||||||
|
.id(jenisKontrakView.getId())
|
||||||
|
.jenisKontrak(jenisKontrakView.getJenisKontrak())
|
||||||
|
.keterangan(jenisKontrakView.getKeterangan())
|
||||||
|
.deleted(jenisKontrakView.getIsDelete())
|
||||||
|
.build();
|
||||||
|
jenisKontrakResponseList.add(jenisKontrakResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
return GetListJenisKontrakResponse.builder()
|
||||||
|
.data(jenisKontrakResponseList)
|
||||||
|
.pagination(Pagination.builder()
|
||||||
|
.pageSize(input.getPageable().getPageSize())
|
||||||
|
.currentPage(input.getPageable().getPageNumber())
|
||||||
|
.totalPages(jenisKontrakViews.getTotalPages())
|
||||||
|
.totalRecords(jenisKontrakViews.getTotalElements())
|
||||||
|
.isFirstPage(jenisKontrakViews.isFirst())
|
||||||
|
.isLastPage(jenisKontrakViews.isLast())
|
||||||
|
.build())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateRequest(JenisKontrakRequest input) {
|
||||||
|
if (StringUtils.isNotBlank(input.getSearch())) {
|
||||||
|
input.setSearch('%'+ input.getSearch().toUpperCase()+'%');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,52 @@
|
|||||||
|
package com.iconplus.smartproc.service.jeniskontrak;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.entity.JenisKontrak;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisKontrakRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisKontrakResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisKontrakRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.ObjectUtils;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PostCreateJenisKontrakService implements BaseService<JenisKontrakRequest, JenisKontrakResponse> {
|
||||||
|
|
||||||
|
private final JenisKontrakRepository jenisKontrakRepository;
|
||||||
|
|
||||||
|
public PostCreateJenisKontrakService(JenisKontrakRepository jenisKontrakRepository) {
|
||||||
|
this.jenisKontrakRepository = jenisKontrakRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JenisKontrakResponse execute(JenisKontrakRequest input) {
|
||||||
|
|
||||||
|
var existJenisKontrak = jenisKontrakRepository.findByJenisKontrakAndDeletedFalse(input.getJenisKontrak());
|
||||||
|
if (existJenisKontrak.isPresent()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10002,
|
||||||
|
Constants.ERR_TTL_10002,
|
||||||
|
String.format(Constants.ERR_MSG_10002, existJenisKontrak.get().getId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
JenisKontrak jenisKontrak = JenisKontrak.builder()
|
||||||
|
.jenisKontrak(input.getJenisKontrak())
|
||||||
|
.keterangan(input.getKeterangan())
|
||||||
|
.isDelete(false)
|
||||||
|
.build();
|
||||||
|
// jenisKontrak.setCreatedTime(new Timestamp(System.currentTimeMillis()));
|
||||||
|
|
||||||
|
var result = jenisKontrakRepository.save(jenisKontrak);
|
||||||
|
log.info("success insert jenis kontrak id : {}", result.getId());
|
||||||
|
return JenisKontrakResponse.builder()
|
||||||
|
.id(result.getId())
|
||||||
|
.build();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,46 @@
|
|||||||
|
package com.iconplus.smartproc.service.jeniskontrak;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisKontrakRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisKontrakResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisKontrakRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PutUpdateJenisKontrakService implements BaseService<JenisKontrakRequest, JenisKontrakResponse> {
|
||||||
|
|
||||||
|
private JenisKontrakRepository jenisKontrakRepository;
|
||||||
|
|
||||||
|
public PutUpdateJenisKontrakService(JenisKontrakRepository jenisKontrakRepository) {
|
||||||
|
this.jenisKontrakRepository = jenisKontrakRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JenisKontrakResponse execute(JenisKontrakRequest input) {
|
||||||
|
|
||||||
|
var jenisKontrak = jenisKontrakRepository.findByIdAndDeletedFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
jenisKontrak.setJenisKontrak(input.getJenisKontrak());
|
||||||
|
jenisKontrak.setKeterangan(input.getKeterangan());
|
||||||
|
jenisKontrak.setIsDelete(BooleanUtils.isTrue(input.getDeleted()));
|
||||||
|
jenisKontrak.setLastUpdate(new Timestamp(System.currentTimeMillis()));
|
||||||
|
jenisKontrakRepository.save(jenisKontrak);
|
||||||
|
log.info("Success edit jenis kontrak id {}", jenisKontrak.getId());
|
||||||
|
return JenisKontrakResponse.builder()
|
||||||
|
.id(jenisKontrak.getId())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,39 @@
|
|||||||
|
package com.iconplus.smartproc.service.jenispengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.entity.JenisPengadaan;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisPengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.repository.JenisPengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class DeleteJenisPengadaanService implements BaseService<JenisPengadaanRequest, EmptyResponse> {
|
||||||
|
|
||||||
|
private JenisPengadaanRepository jenisPengadaanRepository;
|
||||||
|
|
||||||
|
public DeleteJenisPengadaanService(JenisPengadaanRepository jenisPengadaanRepository) {
|
||||||
|
this.jenisPengadaanRepository = jenisPengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EmptyResponse execute(JenisPengadaanRequest input) {
|
||||||
|
|
||||||
|
var jenisPengadaan = jenisPengadaanRepository.findByIdAndDeletedFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
jenisPengadaan.setIsDelete(true);
|
||||||
|
jenisPengadaanRepository.save(jenisPengadaan);
|
||||||
|
log.info("success delete jenis pengadaan id {}", jenisPengadaan.getIsDelete());
|
||||||
|
return new EmptyResponse();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,44 @@
|
|||||||
|
package com.iconplus.smartproc.service.jenispengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisPengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisPengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetJenisPengadaanByIdService implements BaseService<JenisPengadaanRequest, JenisPengadaanResponse> {
|
||||||
|
|
||||||
|
private final JenisPengadaanRepository jenisPengadaanRepository;
|
||||||
|
|
||||||
|
public GetJenisPengadaanByIdService(JenisPengadaanRepository jenisPengadaanRepository) {
|
||||||
|
this.jenisPengadaanRepository = jenisPengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JenisPengadaanResponse execute(JenisPengadaanRequest input) {
|
||||||
|
JenisPengadaanResponse jenisPengadaanResponse = new JenisPengadaanResponse();
|
||||||
|
var jenisPengadaanView = jenisPengadaanRepository.findByIdAndDeletedFalse(input.getId());
|
||||||
|
if (jenisPengadaanView.isEmpty()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
jenisPengadaanResponse.setJenisPengadaan(jenisPengadaanView.get().getJenisPengadaan());
|
||||||
|
jenisPengadaanResponse.setKeterangan(jenisPengadaanView.get().getKeterangan());
|
||||||
|
jenisPengadaanResponse.setIsDelete(jenisPengadaanView.get().getIsDelete());
|
||||||
|
|
||||||
|
return JenisPengadaanResponse.builder()
|
||||||
|
.id(jenisPengadaanView.get().getId())
|
||||||
|
.jenisPengadaan(jenisPengadaanView.get().getJenisPengadaan())
|
||||||
|
.keterangan(jenisPengadaanView.get().getKeterangan())
|
||||||
|
.isDelete(jenisPengadaanView.get().getIsDelete())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,60 @@
|
|||||||
|
package com.iconplus.smartproc.service.jenispengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.projection.JenisPengadaanView;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisPengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.GetListJenisPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisPengadaanRepository;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
// kontrak
|
||||||
|
@Service
|
||||||
|
public class GetListJenisPengadaanService implements BaseService<JenisPengadaanRequest, GetListJenisPengadaanResponse> {
|
||||||
|
|
||||||
|
private JenisPengadaanRepository jenisPengadaanRepository;
|
||||||
|
|
||||||
|
public GetListJenisPengadaanService(JenisPengadaanRepository jenisPengadaanRepository) {
|
||||||
|
this.jenisPengadaanRepository = jenisPengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GetListJenisPengadaanResponse execute(JenisPengadaanRequest input) {
|
||||||
|
validateRequest(input);
|
||||||
|
List<JenisPengadaanResponse> jenisPengadaanResponseList = new ArrayList<>();
|
||||||
|
var jenisPengadaanViews = jenisPengadaanRepository.getAllJenisPengadaan(input.getSearch(), input.getPageable());
|
||||||
|
|
||||||
|
for (JenisPengadaanView jenisPengadaanView : jenisPengadaanViews) {
|
||||||
|
JenisPengadaanResponse jenisPengadaanResponse = JenisPengadaanResponse.builder()
|
||||||
|
.id(jenisPengadaanView.getId())
|
||||||
|
.jenisPengadaan(jenisPengadaanView.getJenisPengadaan())
|
||||||
|
.keterangan(jenisPengadaanView.getKeterangan())
|
||||||
|
.isDelete(jenisPengadaanView.getIsDelete())
|
||||||
|
.build();
|
||||||
|
jenisPengadaanResponseList.add(jenisPengadaanResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
return GetListJenisPengadaanResponse.builder()
|
||||||
|
.data(jenisPengadaanResponseList)
|
||||||
|
.pagination(Pagination.builder()
|
||||||
|
.pageSize(input.getPageable().getPageSize())
|
||||||
|
.currentPage(input.getPageable().getPageNumber())
|
||||||
|
.totalPages(jenisPengadaanViews.getTotalPages())
|
||||||
|
.totalRecords(jenisPengadaanViews.getTotalElements())
|
||||||
|
.isFirstPage(jenisPengadaanViews.isFirst())
|
||||||
|
.isLastPage(jenisPengadaanViews.isLast())
|
||||||
|
.build())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateRequest(JenisPengadaanRequest input) {
|
||||||
|
if (StringUtils.isNotBlank(input.getSearch())) {
|
||||||
|
input.setSearch('%'+ input.getSearch().toUpperCase()+'%');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,52 @@
|
|||||||
|
package com.iconplus.smartproc.service.jenispengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.entity.JenisPengadaan;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisPengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisPengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.ObjectUtils;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PostCreateJenisPengadaanService implements BaseService<JenisPengadaanRequest, JenisPengadaanResponse> {
|
||||||
|
|
||||||
|
private final JenisPengadaanRepository jenisPengadaanRepository;
|
||||||
|
|
||||||
|
public PostCreateJenisPengadaanService(JenisPengadaanRepository jenisPengadaanRepository) {
|
||||||
|
this.jenisPengadaanRepository = jenisPengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JenisPengadaanResponse execute(JenisPengadaanRequest input) {
|
||||||
|
|
||||||
|
var existJenisPengadaan = jenisPengadaanRepository.findByJenisPengadaanAndDeletedFalse(input.getJenisPengadaan());
|
||||||
|
if (existJenisPengadaan.isPresent()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10002,
|
||||||
|
Constants.ERR_TTL_10002,
|
||||||
|
String.format(Constants.ERR_MSG_10002, existJenisPengadaan.get().getId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
JenisPengadaan jenisPengadaan = JenisPengadaan.builder()
|
||||||
|
.jenisPengadaan(input.getJenisPengadaan())
|
||||||
|
.keterangan(input.getKeterangan())
|
||||||
|
.isDelete(false)
|
||||||
|
.build();
|
||||||
|
// jenisKontrak.setCreatedTime(new Timestamp(System.currentTimeMillis()));
|
||||||
|
|
||||||
|
var result = jenisPengadaanRepository.save(jenisPengadaan);
|
||||||
|
log.info("success insert jenis kontrak id : {}", result.getId());
|
||||||
|
return JenisPengadaanResponse.builder()
|
||||||
|
.id(result.getId())
|
||||||
|
.build();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,46 @@
|
|||||||
|
package com.iconplus.smartproc.service.jenispengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisPengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisPengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PutUpdateJenisPengadaanService implements BaseService<JenisPengadaanRequest, JenisPengadaanResponse> {
|
||||||
|
|
||||||
|
private JenisPengadaanRepository jenisPengadaanRepository;
|
||||||
|
|
||||||
|
public PutUpdateJenisPengadaanService(JenisPengadaanRepository jenisPengadaanRepository) {
|
||||||
|
this.jenisPengadaanRepository = jenisPengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JenisPengadaanResponse execute(JenisPengadaanRequest input) {
|
||||||
|
|
||||||
|
var jenisPengadaan = jenisPengadaanRepository.findByIdAndDeletedFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
jenisPengadaan.setJenisPengadaan(input.getJenisPengadaan());
|
||||||
|
jenisPengadaan.setKeterangan(input.getKeterangan());
|
||||||
|
jenisPengadaan.setIsDelete(BooleanUtils.isTrue(input.getDeleted()));
|
||||||
|
jenisPengadaan.setLastUpdate(new Timestamp(System.currentTimeMillis()));
|
||||||
|
jenisPengadaanRepository.save(jenisPengadaan);
|
||||||
|
log.info("Success edit jenis pengadaan id {}", jenisPengadaan.getId());
|
||||||
|
return JenisPengadaanResponse.builder()
|
||||||
|
.id(jenisPengadaan.getId())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,38 @@
|
|||||||
|
package com.iconplus.smartproc.service.jenisanggaran;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisAnggaranRequest;
|
||||||
|
import com.iconplus.smartproc.repository.JenisAnggaranRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class DeleteJenisAnggaranService implements BaseService<JenisAnggaranRequest, EmptyResponse> {
|
||||||
|
|
||||||
|
private JenisAnggaranRepository jenisAnggaranRepository;
|
||||||
|
|
||||||
|
public DeleteJenisAnggaranService(JenisAnggaranRepository jenisAnggaranRepository) {
|
||||||
|
this.jenisAnggaranRepository = jenisAnggaranRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EmptyResponse execute(JenisAnggaranRequest input) {
|
||||||
|
|
||||||
|
var jenisAnggaran = jenisAnggaranRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
jenisAnggaran.setIsDelete(true);
|
||||||
|
jenisAnggaranRepository.save(jenisAnggaran);
|
||||||
|
log.info("success delete jenis anggaran id {}", jenisAnggaran.getIsDelete());
|
||||||
|
return new EmptyResponse();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,60 @@
|
|||||||
|
package com.iconplus.smartproc.service.lokasi;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.projection.LokasiView;
|
||||||
|
import com.iconplus.smartproc.model.request.LokasiRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.GetListLokasiResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.LokasiResponse;
|
||||||
|
import com.iconplus.smartproc.repository.LokasiRepository;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetListLokasiService implements BaseService<LokasiRequest, GetListLokasiResponse> {
|
||||||
|
|
||||||
|
private LokasiRepository lokasiRepository;
|
||||||
|
|
||||||
|
public GetListLokasiService(LokasiRepository lokasiRepository) {
|
||||||
|
this.lokasiRepository = lokasiRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GetListLokasiResponse execute(LokasiRequest input) {
|
||||||
|
validateRequest(input);
|
||||||
|
List<LokasiResponse> lokasiResponseList = new ArrayList<>();
|
||||||
|
Page<LokasiView> lokasiViews = lokasiRepository.getAllLokasi(input.getSearch(), input.getPageable());
|
||||||
|
|
||||||
|
for (LokasiView lokasiView : lokasiViews) {
|
||||||
|
LokasiResponse lokasiResponse = LokasiResponse.builder()
|
||||||
|
.id(lokasiView.getId())
|
||||||
|
.lokasi(lokasiView.getLokasi())
|
||||||
|
.keterangan(lokasiView.getKeterangan())
|
||||||
|
.isDelete(lokasiView.getIsDelete())
|
||||||
|
.build();
|
||||||
|
lokasiResponseList.add(lokasiResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
return GetListLokasiResponse.builder()
|
||||||
|
.data(lokasiResponseList)
|
||||||
|
.pagination(Pagination.builder()
|
||||||
|
.pageSize(input.getPageable().getPageSize())
|
||||||
|
.currentPage(input.getPageable().getPageNumber())
|
||||||
|
.totalPages(lokasiViews.getTotalPages())
|
||||||
|
.totalRecords(lokasiViews.getTotalElements())
|
||||||
|
.isFirstPage(lokasiViews.isFirst())
|
||||||
|
.isLastPage(lokasiViews.isLast())
|
||||||
|
.build())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateRequest(LokasiRequest input) {
|
||||||
|
if (StringUtils.isNotBlank(input.getSearch())) {
|
||||||
|
input.setSearch('%'+ input.getSearch().toUpperCase()+'%');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,43 @@
|
|||||||
|
package com.iconplus.smartproc.service.jenisanggaran;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisAnggaranRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisAnggaranResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisAnggaranRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetJenisAnggaranByIdService implements BaseService<JenisAnggaranRequest, JenisAnggaranResponse> {
|
||||||
|
|
||||||
|
private final JenisAnggaranRepository jenisAnggaranRepository;
|
||||||
|
|
||||||
|
public GetJenisAnggaranByIdService(JenisAnggaranRepository jenisAnggaranRepository) {
|
||||||
|
this.jenisAnggaranRepository = jenisAnggaranRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JenisAnggaranResponse execute(JenisAnggaranRequest input) {
|
||||||
|
JenisAnggaranResponse jenisAnggaranResponse = new JenisAnggaranResponse();
|
||||||
|
var jenisAnggaranView = jenisAnggaranRepository.findByIdAndIsDeleteFalse(input.getId());
|
||||||
|
if (jenisAnggaranView.isEmpty()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
jenisAnggaranResponse.setJenisAnggaran(jenisAnggaranView.get().getJenisAnggaran());
|
||||||
|
jenisAnggaranResponse.setKeterangan(jenisAnggaranView.get().getKeterangan());
|
||||||
|
jenisAnggaranResponse.setIsDelete(jenisAnggaranView.get().getIsDelete());
|
||||||
|
|
||||||
|
return JenisAnggaranResponse.builder()
|
||||||
|
.id(jenisAnggaranView.get().getId())
|
||||||
|
.jenisAnggaran(jenisAnggaranView.get().getJenisAnggaran())
|
||||||
|
.keterangan(jenisAnggaranView.get().getKeterangan())
|
||||||
|
.isDelete(jenisAnggaranView.get().getIsDelete())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,50 @@
|
|||||||
|
package com.iconplus.smartproc.service.lokasi;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.entity.Lokasi;
|
||||||
|
import com.iconplus.smartproc.model.request.LokasiRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.LokasiResponse;
|
||||||
|
import com.iconplus.smartproc.repository.LokasiRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PostCreateLokasiService implements BaseService<LokasiRequest, LokasiResponse> {
|
||||||
|
|
||||||
|
private final LokasiRepository lokasiRepository;
|
||||||
|
|
||||||
|
public PostCreateLokasiService(LokasiRepository lokasiRepository) {
|
||||||
|
this.lokasiRepository = lokasiRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public LokasiResponse execute(LokasiRequest input) {
|
||||||
|
|
||||||
|
var existLokasi = lokasiRepository.findByLokasiAndIsDeleteFalse(input.getLokasi());
|
||||||
|
if (existLokasi.isPresent()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10002,
|
||||||
|
Constants.ERR_TTL_10002,
|
||||||
|
String.format(Constants.ERR_MSG_10002, input.getLokasi()));
|
||||||
|
}
|
||||||
|
|
||||||
|
Lokasi lokasi = Lokasi.builder()
|
||||||
|
.lokasi(input.getLokasi())
|
||||||
|
.keterangan(input.getKeterangan())
|
||||||
|
.isDelete(false)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
var result = lokasiRepository.save(lokasi);
|
||||||
|
log.info("success insert lokasi id : {}", result.getId());
|
||||||
|
return LokasiResponse.builder()
|
||||||
|
.id(result.getId())
|
||||||
|
.build();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,45 @@
|
|||||||
|
package com.iconplus.smartproc.service.lokasi;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.LokasiRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.LokasiResponse;
|
||||||
|
import com.iconplus.smartproc.repository.LokasiRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PutUpdateLokasiService implements BaseService<LokasiRequest, LokasiResponse> {
|
||||||
|
|
||||||
|
private LokasiRepository lokasiRepository;
|
||||||
|
|
||||||
|
public PutUpdateLokasiService(LokasiRepository lokasiRepository) {
|
||||||
|
this.lokasiRepository = lokasiRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public LokasiResponse execute(LokasiRequest input) {
|
||||||
|
|
||||||
|
var lokasi = lokasiRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
lokasi.setLokasi(input.getLokasi());
|
||||||
|
lokasi.setKeterangan(input.getKeterangan());
|
||||||
|
lokasi.setIsDelete(BooleanUtils.isTrue(input.getIsDelete()));
|
||||||
|
lokasi.setLastUpdate(new Timestamp(System.currentTimeMillis()));
|
||||||
|
lokasiRepository.save(lokasi);
|
||||||
|
log.info("Success edit lokasi id {}", lokasi.getId());
|
||||||
|
return LokasiResponse.builder()
|
||||||
|
.id(lokasi.getId())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,38 @@
|
|||||||
|
package com.iconplus.smartproc.service.metodepengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.MetodePengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.repository.MetodePengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class DeleteMetodePengadaanService implements BaseService<MetodePengadaanRequest, EmptyResponse> {
|
||||||
|
|
||||||
|
private MetodePengadaanRepository metodePengadaanRepository;
|
||||||
|
|
||||||
|
public DeleteMetodePengadaanService(MetodePengadaanRepository metodePengadaanRepository) {
|
||||||
|
this.metodePengadaanRepository = metodePengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EmptyResponse execute(MetodePengadaanRequest input) {
|
||||||
|
|
||||||
|
var metodePengadaan = metodePengadaanRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
metodePengadaan.setIsDelete(true);
|
||||||
|
metodePengadaanRepository.save(metodePengadaan);
|
||||||
|
log.info("success delete metode pengadaan id {}", metodePengadaan.getIsDelete());
|
||||||
|
return new EmptyResponse();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,60 @@
|
|||||||
|
package com.iconplus.smartproc.service.metodepengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.projection.MetodePengadaanView;
|
||||||
|
import com.iconplus.smartproc.model.request.MetodePengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.GetListMetodePengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.MetodePengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.MetodePengadaanRepository;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetListMetodePengadaanService implements BaseService<MetodePengadaanRequest, GetListMetodePengadaanResponse> {
|
||||||
|
|
||||||
|
private MetodePengadaanRepository metodePengadaanRepository;
|
||||||
|
|
||||||
|
public GetListMetodePengadaanService(MetodePengadaanRepository metodePengadaanRepository) {
|
||||||
|
this.metodePengadaanRepository = metodePengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GetListMetodePengadaanResponse execute(MetodePengadaanRequest input) {
|
||||||
|
validateRequest(input);
|
||||||
|
List<MetodePengadaanResponse> metodePengadaanResponseList = new ArrayList<>();
|
||||||
|
Page<MetodePengadaanView> metodePengadaanViews = metodePengadaanRepository.getAllMetodePengadaan(input.getSearch(), input.getPageable());
|
||||||
|
|
||||||
|
for (MetodePengadaanView metodePengadaanView : metodePengadaanViews) {
|
||||||
|
MetodePengadaanResponse metodePengadaanResponse = MetodePengadaanResponse.builder()
|
||||||
|
.id(metodePengadaanView.getId())
|
||||||
|
.metodePengadaan(metodePengadaanView.getMetodePengadaan())
|
||||||
|
.keterangan(metodePengadaanView.getKeterangan())
|
||||||
|
.isDelete(metodePengadaanView.getIsDelete())
|
||||||
|
.build();
|
||||||
|
metodePengadaanResponseList.add(metodePengadaanResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
return GetListMetodePengadaanResponse.builder()
|
||||||
|
.data(metodePengadaanResponseList)
|
||||||
|
.pagination(Pagination.builder()
|
||||||
|
.pageSize(input.getPageable().getPageSize())
|
||||||
|
.currentPage(input.getPageable().getPageNumber())
|
||||||
|
.totalPages(metodePengadaanViews.getTotalPages())
|
||||||
|
.totalRecords(metodePengadaanViews.getTotalElements())
|
||||||
|
.isFirstPage(metodePengadaanViews.isFirst())
|
||||||
|
.isLastPage(metodePengadaanViews.isLast())
|
||||||
|
.build())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateRequest(MetodePengadaanRequest input) {
|
||||||
|
if (StringUtils.isNotBlank(input.getSearch())) {
|
||||||
|
input.setSearch('%'+ input.getSearch().toUpperCase()+'%');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,43 @@
|
|||||||
|
package com.iconplus.smartproc.service.jenisanggaran;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisAnggaranRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisAnggaranResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisAnggaranRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetJenisAnggaranByIdService implements BaseService<JenisAnggaranRequest, JenisAnggaranResponse> {
|
||||||
|
|
||||||
|
private final JenisAnggaranRepository jenisAnggaranRepository;
|
||||||
|
|
||||||
|
public GetJenisAnggaranByIdService(JenisAnggaranRepository jenisAnggaranRepository) {
|
||||||
|
this.jenisAnggaranRepository = jenisAnggaranRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JenisAnggaranResponse execute(JenisAnggaranRequest input) {
|
||||||
|
JenisAnggaranResponse jenisAnggaranResponse = new JenisAnggaranResponse();
|
||||||
|
var jenisAnggaranView = jenisAnggaranRepository.findByIdAndIsDeleteFalse(input.getId());
|
||||||
|
if (jenisAnggaranView.isEmpty()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
jenisAnggaranResponse.setJenisAnggaran(jenisAnggaranView.get().getJenisAnggaran());
|
||||||
|
jenisAnggaranResponse.setKeterangan(jenisAnggaranView.get().getKeterangan());
|
||||||
|
jenisAnggaranResponse.setIsDelete(jenisAnggaranView.get().getIsDelete());
|
||||||
|
|
||||||
|
return JenisAnggaranResponse.builder()
|
||||||
|
.id(jenisAnggaranView.get().getId())
|
||||||
|
.jenisAnggaran(jenisAnggaranView.get().getJenisAnggaran())
|
||||||
|
.keterangan(jenisAnggaranView.get().getKeterangan())
|
||||||
|
.isDelete(jenisAnggaranView.get().getIsDelete())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,50 @@
|
|||||||
|
package com.iconplus.smartproc.service.jenisanggaran;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.entity.JenisAnggaran;
|
||||||
|
import com.iconplus.smartproc.model.request.JenisAnggaranRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.JenisAnggaranResponse;
|
||||||
|
import com.iconplus.smartproc.repository.JenisAnggaranRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PostCreateJenisAnggaranService implements BaseService<JenisAnggaranRequest, JenisAnggaranResponse> {
|
||||||
|
|
||||||
|
private final JenisAnggaranRepository jenisAnggaranRepository;
|
||||||
|
|
||||||
|
public PostCreateJenisAnggaranService(JenisAnggaranRepository jenisAnggaranRepository) {
|
||||||
|
this.jenisAnggaranRepository = jenisAnggaranRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JenisAnggaranResponse execute(JenisAnggaranRequest input) {
|
||||||
|
|
||||||
|
var existJenisAnggaran = jenisAnggaranRepository.findByJenisAnggaranAndIsDeleteFalse(input.getJenisAnggaran());
|
||||||
|
if (existJenisAnggaran.isPresent()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10002,
|
||||||
|
Constants.ERR_TTL_10002,
|
||||||
|
String.format(Constants.ERR_MSG_10002, input.getJenisAnggaran()));
|
||||||
|
}
|
||||||
|
|
||||||
|
JenisAnggaran jenisAnggaran = JenisAnggaran.builder()
|
||||||
|
.jenisAnggaran(input.getJenisAnggaran())
|
||||||
|
.keterangan(input.getKeterangan())
|
||||||
|
.isDelete(false)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
var result = jenisAnggaranRepository.save(jenisAnggaran);
|
||||||
|
log.info("success insert jenis anggaran id : {}", result.getId());
|
||||||
|
return JenisAnggaranResponse.builder()
|
||||||
|
.id(result.getId())
|
||||||
|
.build();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,45 @@
|
|||||||
|
package com.iconplus.smartproc.service.metodepengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.MetodePengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.MetodePengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.MetodePengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PutUpdateMetodePengadaanService implements BaseService<MetodePengadaanRequest, MetodePengadaanResponse> {
|
||||||
|
|
||||||
|
private MetodePengadaanRepository metodePengadaanRepository;
|
||||||
|
|
||||||
|
public PutUpdateMetodePengadaanService(MetodePengadaanRepository metodePengadaanRepository) {
|
||||||
|
this.metodePengadaanRepository = metodePengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public MetodePengadaanResponse execute(MetodePengadaanRequest input) {
|
||||||
|
|
||||||
|
var metodePengadaan = metodePengadaanRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
metodePengadaan.setMetodePengadaan(input.getMetodePengadaan());
|
||||||
|
metodePengadaan.setKeterangan(input.getKeterangan());
|
||||||
|
metodePengadaan.setIsDelete(BooleanUtils.isTrue(input.getIsDelete()));
|
||||||
|
metodePengadaan.setLastUpdate(new Timestamp(System.currentTimeMillis()));
|
||||||
|
metodePengadaanRepository.save(metodePengadaan);
|
||||||
|
log.info("Success edit metode pengadaan id {}", metodePengadaan.getId());
|
||||||
|
return MetodePengadaanResponse.builder()
|
||||||
|
.id(metodePengadaan.getId())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,38 @@
|
|||||||
|
package com.iconplus.smartproc.service.metodepenyampaian;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.MetodePenyampaianRequest;
|
||||||
|
import com.iconplus.smartproc.repository.MetodePenyampaianRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class DeleteMetodePenyampaianService implements BaseService<MetodePenyampaianRequest, EmptyResponse> {
|
||||||
|
|
||||||
|
private MetodePenyampaianRepository metodePenyampaianRepository;
|
||||||
|
|
||||||
|
public DeleteMetodePenyampaianService(MetodePenyampaianRepository metodePenyampaianRepository) {
|
||||||
|
this.metodePenyampaianRepository = metodePenyampaianRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EmptyResponse execute(MetodePenyampaianRequest input) {
|
||||||
|
|
||||||
|
var metodePenyampaian = metodePenyampaianRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
metodePenyampaian.setIsDelete(true);
|
||||||
|
metodePenyampaianRepository.save(metodePenyampaian);
|
||||||
|
log.info("success delete metode penyampaian id {}", metodePenyampaian.getIsDelete());
|
||||||
|
return new EmptyResponse();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,60 @@
|
|||||||
|
package com.iconplus.smartproc.service.metodepenyampaian;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.projection.MetodePenyampaianView;
|
||||||
|
import com.iconplus.smartproc.model.request.MetodePenyampaianRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.GetListMetodePenyampaianResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.MetodePenyampaianResponse;
|
||||||
|
import com.iconplus.smartproc.repository.MetodePenyampaianRepository;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetListMetodePenyampaianService implements BaseService<MetodePenyampaianRequest, GetListMetodePenyampaianResponse> {
|
||||||
|
|
||||||
|
private MetodePenyampaianRepository metodePenyampaianRepository;
|
||||||
|
|
||||||
|
public GetListMetodePenyampaianService(MetodePenyampaianRepository metodePenyampaianRepository) {
|
||||||
|
this.metodePenyampaianRepository = metodePenyampaianRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GetListMetodePenyampaianResponse execute(MetodePenyampaianRequest input) {
|
||||||
|
validateRequest(input);
|
||||||
|
List<MetodePenyampaianResponse> metodePenyampaianResponseList = new ArrayList<>();
|
||||||
|
Page<MetodePenyampaianView> metodePenyampaianViews = metodePenyampaianRepository.getAllMetodePenyampaian(input.getSearch(), input.getPageable());
|
||||||
|
|
||||||
|
for (MetodePenyampaianView metodePenyampaianView : metodePenyampaianViews) {
|
||||||
|
MetodePenyampaianResponse metodePenyampaianResponse = MetodePenyampaianResponse.builder()
|
||||||
|
.id(metodePenyampaianView.getId())
|
||||||
|
.metodePenyampaian(metodePenyampaianView.getMetodePenyampaian())
|
||||||
|
.keterangan(metodePenyampaianView.getKeterangan())
|
||||||
|
.isDelete(metodePenyampaianView.getIsDelete())
|
||||||
|
.build();
|
||||||
|
metodePenyampaianResponseList.add(metodePenyampaianResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
return GetListMetodePenyampaianResponse.builder()
|
||||||
|
.data(metodePenyampaianResponseList)
|
||||||
|
.pagination(Pagination.builder()
|
||||||
|
.pageSize(input.getPageable().getPageSize())
|
||||||
|
.currentPage(input.getPageable().getPageNumber())
|
||||||
|
.totalPages(metodePenyampaianViews.getTotalPages())
|
||||||
|
.totalRecords(metodePenyampaianViews.getTotalElements())
|
||||||
|
.isFirstPage(metodePenyampaianViews.isFirst())
|
||||||
|
.isLastPage(metodePenyampaianViews.isLast())
|
||||||
|
.build())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateRequest(MetodePenyampaianRequest input) {
|
||||||
|
if (StringUtils.isNotBlank(input.getSearch())) {
|
||||||
|
input.setSearch('%'+ input.getSearch().toUpperCase()+'%');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,43 @@
|
|||||||
|
package com.iconplus.smartproc.service.metodepenyampaian;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.MetodePenyampaianRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.MetodePenyampaianResponse;
|
||||||
|
import com.iconplus.smartproc.repository.MetodePenyampaianRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetMetodePenyampaianByIdService implements BaseService<MetodePenyampaianRequest, MetodePenyampaianResponse> {
|
||||||
|
|
||||||
|
private final MetodePenyampaianRepository metodePenyampaianRepository;
|
||||||
|
|
||||||
|
public GetMetodePenyampaianByIdService(MetodePenyampaianRepository metodePenyampaianRepository) {
|
||||||
|
this.metodePenyampaianRepository = metodePenyampaianRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public MetodePenyampaianResponse execute(MetodePenyampaianRequest input) {
|
||||||
|
MetodePenyampaianResponse metodePenyampaianResponse = new MetodePenyampaianResponse();
|
||||||
|
var metodePenyampaianView = metodePenyampaianRepository.findByIdAndIsDeleteFalse(input.getId());
|
||||||
|
if (metodePenyampaianView.isEmpty()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
metodePenyampaianResponse.setMetodePenyampaian(metodePenyampaianView.get().getMetodePenyampaian());
|
||||||
|
metodePenyampaianResponse.setKeterangan(metodePenyampaianView.get().getKeterangan());
|
||||||
|
metodePenyampaianResponse.setIsDelete(metodePenyampaianView.get().getIsDelete());
|
||||||
|
|
||||||
|
return MetodePenyampaianResponse.builder()
|
||||||
|
.id(metodePenyampaianView.get().getId())
|
||||||
|
.metodePenyampaian(metodePenyampaianView.get().getMetodePenyampaian())
|
||||||
|
.keterangan(metodePenyampaianView.get().getKeterangan())
|
||||||
|
.isDelete(metodePenyampaianView.get().getIsDelete())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,50 @@
|
|||||||
|
package com.iconplus.smartproc.service.metodepenyampaian;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.entity.MetodePenyampaian;
|
||||||
|
import com.iconplus.smartproc.model.request.MetodePenyampaianRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.MetodePenyampaianResponse;
|
||||||
|
import com.iconplus.smartproc.repository.MetodePenyampaianRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PostCreateMetodePenyampaianService implements BaseService<MetodePenyampaianRequest, MetodePenyampaianResponse> {
|
||||||
|
|
||||||
|
private final MetodePenyampaianRepository metodePenyampaianRepository;
|
||||||
|
|
||||||
|
public PostCreateMetodePenyampaianService(MetodePenyampaianRepository metodePenyampaianRepository) {
|
||||||
|
this.metodePenyampaianRepository = metodePenyampaianRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public MetodePenyampaianResponse execute(MetodePenyampaianRequest input) {
|
||||||
|
|
||||||
|
var existMetodePenyampaian = metodePenyampaianRepository.findByMetodePenyampaianAndIsDeleteFalse(input.getMetodePenyampaian());
|
||||||
|
if (existMetodePenyampaian.isPresent()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10002,
|
||||||
|
Constants.ERR_TTL_10002,
|
||||||
|
String.format(Constants.ERR_MSG_10002, input.getMetodePenyampaian()));
|
||||||
|
}
|
||||||
|
|
||||||
|
MetodePenyampaian metodePenyampaian = MetodePenyampaian.builder()
|
||||||
|
.metodePenyampaian(input.getMetodePenyampaian())
|
||||||
|
.keterangan(input.getKeterangan())
|
||||||
|
.isDelete(false)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
var result = metodePenyampaianRepository.save(metodePenyampaian);
|
||||||
|
log.info("success insert metode penyampaian id : {}", result.getId());
|
||||||
|
return MetodePenyampaianResponse.builder()
|
||||||
|
.id(result.getId())
|
||||||
|
.build();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,45 @@
|
|||||||
|
package com.iconplus.smartproc.service.metodepenyampaian;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.MetodePenyampaianRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.MetodePenyampaianResponse;
|
||||||
|
import com.iconplus.smartproc.repository.MetodePenyampaianRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PutUpdateMetodePenyampaianService implements BaseService<MetodePenyampaianRequest, MetodePenyampaianResponse> {
|
||||||
|
|
||||||
|
private MetodePenyampaianRepository metodePenyampaianRepository;
|
||||||
|
|
||||||
|
public PutUpdateMetodePenyampaianService(MetodePenyampaianRepository metodePenyampaianRepository) {
|
||||||
|
this.metodePenyampaianRepository = metodePenyampaianRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public MetodePenyampaianResponse execute(MetodePenyampaianRequest input) {
|
||||||
|
|
||||||
|
var metodePenyampaian = metodePenyampaianRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
metodePenyampaian.setMetodePenyampaian(input.getMetodePenyampaian());
|
||||||
|
metodePenyampaian.setKeterangan(input.getKeterangan());
|
||||||
|
metodePenyampaian.setIsDelete(BooleanUtils.isTrue(input.getIsDelete()));
|
||||||
|
metodePenyampaian.setLastUpdate(new Timestamp(System.currentTimeMillis()));
|
||||||
|
metodePenyampaianRepository.save(metodePenyampaian);
|
||||||
|
log.info("Success edit metode penyampaian id {}", metodePenyampaian.getId());
|
||||||
|
return MetodePenyampaianResponse.builder()
|
||||||
|
.id(metodePenyampaian.getId())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,38 @@
|
|||||||
|
package com.iconplus.smartproc.service.strategipengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.StrategiPengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.repository.StrategiPengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class DeleteStrategiPengadaanService implements BaseService<StrategiPengadaanRequest, EmptyResponse> {
|
||||||
|
|
||||||
|
private StrategiPengadaanRepository strategiPengadaanRepository;
|
||||||
|
|
||||||
|
public DeleteStrategiPengadaanService(StrategiPengadaanRepository strategiPengadaanRepository) {
|
||||||
|
this.strategiPengadaanRepository = strategiPengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EmptyResponse execute(StrategiPengadaanRequest input) {
|
||||||
|
|
||||||
|
var strategiPengadaan = strategiPengadaanRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
strategiPengadaan.setIsDelete(true);
|
||||||
|
strategiPengadaanRepository.save(strategiPengadaan);
|
||||||
|
log.info("success delete strategi pengadaan id {}", strategiPengadaan.getIsDelete());
|
||||||
|
return new EmptyResponse();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,60 @@
|
|||||||
|
package com.iconplus.smartproc.service.strategipengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.projection.StrategiPengadaanView;
|
||||||
|
import com.iconplus.smartproc.model.request.StrategiPengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.GetListStrategiPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.StrategiPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.StrategiPengadaanRepository;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetListStrategiPengadaanService implements BaseService<StrategiPengadaanRequest, GetListStrategiPengadaanResponse> {
|
||||||
|
|
||||||
|
private StrategiPengadaanRepository strategiPengadaanRepository;
|
||||||
|
|
||||||
|
public GetListStrategiPengadaanService(StrategiPengadaanRepository strategiPengadaanRepository) {
|
||||||
|
this.strategiPengadaanRepository = strategiPengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GetListStrategiPengadaanResponse execute(StrategiPengadaanRequest input) {
|
||||||
|
validateRequest(input);
|
||||||
|
List<StrategiPengadaanResponse> strategiPengadaanResponseList = new ArrayList<>();
|
||||||
|
Page<StrategiPengadaanView> strategiPengadaanViews = strategiPengadaanRepository.getAllStrategiPengadaan(input.getSearch(), input.getPageable());
|
||||||
|
|
||||||
|
for (StrategiPengadaanView strategiPengadaanView : strategiPengadaanViews) {
|
||||||
|
StrategiPengadaanResponse strategiPengadaanResponse = StrategiPengadaanResponse.builder()
|
||||||
|
.id(strategiPengadaanView.getId())
|
||||||
|
.strategiPengadaan(strategiPengadaanView.getStrategiPengadaan())
|
||||||
|
.keterangan(strategiPengadaanView.getKeterangan())
|
||||||
|
.isDelete(strategiPengadaanView.getIsDelete())
|
||||||
|
.build();
|
||||||
|
strategiPengadaanResponseList.add(strategiPengadaanResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
return GetListStrategiPengadaanResponse.builder()
|
||||||
|
.data(strategiPengadaanResponseList)
|
||||||
|
.pagination(Pagination.builder()
|
||||||
|
.pageSize(input.getPageable().getPageSize())
|
||||||
|
.currentPage(input.getPageable().getPageNumber())
|
||||||
|
.totalPages(strategiPengadaanViews.getTotalPages())
|
||||||
|
.totalRecords(strategiPengadaanViews.getTotalElements())
|
||||||
|
.isFirstPage(strategiPengadaanViews.isFirst())
|
||||||
|
.isLastPage(strategiPengadaanViews.isLast())
|
||||||
|
.build())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateRequest(StrategiPengadaanRequest input) {
|
||||||
|
if (StringUtils.isNotBlank(input.getSearch())) {
|
||||||
|
input.setSearch('%'+ input.getSearch().toUpperCase()+'%');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,43 @@
|
|||||||
|
package com.iconplus.smartproc.service.strategipengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.StrategiPengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.StrategiPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.StrategiPengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetStrategiPengadaanByIdService implements BaseService<StrategiPengadaanRequest, StrategiPengadaanResponse> {
|
||||||
|
|
||||||
|
private final StrategiPengadaanRepository strategiPengadaanRepository;
|
||||||
|
|
||||||
|
public GetStrategiPengadaanByIdService(StrategiPengadaanRepository strategiPengadaanRepository) {
|
||||||
|
this.strategiPengadaanRepository = strategiPengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StrategiPengadaanResponse execute(StrategiPengadaanRequest input) {
|
||||||
|
StrategiPengadaanResponse strategiPengadaanResponse = new StrategiPengadaanResponse();
|
||||||
|
var strategiPengadaanView = strategiPengadaanRepository.findByIdAndIsDeleteFalse(input.getId());
|
||||||
|
if (strategiPengadaanView.isEmpty()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
strategiPengadaanResponse.setStrategiPengadaan(strategiPengadaanView.get().getStrategiPengadaan());
|
||||||
|
strategiPengadaanResponse.setKeterangan(strategiPengadaanView.get().getKeterangan());
|
||||||
|
strategiPengadaanResponse.setIsDelete(strategiPengadaanView.get().getIsDelete());
|
||||||
|
|
||||||
|
return StrategiPengadaanResponse.builder()
|
||||||
|
.id(strategiPengadaanView.get().getId())
|
||||||
|
.strategiPengadaan(strategiPengadaanView.get().getStrategiPengadaan())
|
||||||
|
.keterangan(strategiPengadaanView.get().getKeterangan())
|
||||||
|
.isDelete(strategiPengadaanView.get().getIsDelete())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,50 @@
|
|||||||
|
package com.iconplus.smartproc.service.strategipengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.entity.StrategiPengadaan;
|
||||||
|
import com.iconplus.smartproc.model.request.StrategiPengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.StrategiPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.StrategiPengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PostCreateStrategiPengadaanService implements BaseService<StrategiPengadaanRequest, StrategiPengadaanResponse> {
|
||||||
|
|
||||||
|
private final StrategiPengadaanRepository strategiPengadaanRepository;
|
||||||
|
|
||||||
|
public PostCreateStrategiPengadaanService(StrategiPengadaanRepository strategiPengadaanRepository) {
|
||||||
|
this.strategiPengadaanRepository = strategiPengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StrategiPengadaanResponse execute(StrategiPengadaanRequest input) {
|
||||||
|
|
||||||
|
var existStrategiPengadaan = strategiPengadaanRepository.findByStrategiPengadaanAndIsDeleteFalse(input.getStrategiPengadaan());
|
||||||
|
if (existStrategiPengadaan.isPresent()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10002,
|
||||||
|
Constants.ERR_TTL_10002,
|
||||||
|
String.format(Constants.ERR_MSG_10002, input.getStrategiPengadaan()));
|
||||||
|
}
|
||||||
|
|
||||||
|
StrategiPengadaan strategiPengadaan = StrategiPengadaan.builder()
|
||||||
|
.strategiPengadaan(input.getStrategiPengadaan())
|
||||||
|
.keterangan(input.getKeterangan())
|
||||||
|
.isDelete(false)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
var result = strategiPengadaanRepository.save(strategiPengadaan);
|
||||||
|
log.info("success insert strategi pengadaan id : {}", result.getId());
|
||||||
|
return StrategiPengadaanResponse.builder()
|
||||||
|
.id(result.getId())
|
||||||
|
.build();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,45 @@
|
|||||||
|
package com.iconplus.smartproc.service.strategipengadaan;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.StrategiPengadaanRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.StrategiPengadaanResponse;
|
||||||
|
import com.iconplus.smartproc.repository.StrategiPengadaanRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PutUpdateStrategiPengadaanService implements BaseService<StrategiPengadaanRequest, StrategiPengadaanResponse> {
|
||||||
|
|
||||||
|
private StrategiPengadaanRepository strategiPengadaanRepository;
|
||||||
|
|
||||||
|
public PutUpdateStrategiPengadaanService(StrategiPengadaanRepository strategiPengadaanRepository) {
|
||||||
|
this.strategiPengadaanRepository = strategiPengadaanRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StrategiPengadaanResponse execute(StrategiPengadaanRequest input) {
|
||||||
|
|
||||||
|
var strategiPengadaan = strategiPengadaanRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
strategiPengadaan.setStrategiPengadaan(input.getStrategiPengadaan());
|
||||||
|
strategiPengadaan.setKeterangan(input.getKeterangan());
|
||||||
|
strategiPengadaan.setIsDelete(BooleanUtils.isTrue(input.getIsDelete()));
|
||||||
|
strategiPengadaan.setLastUpdate(new Timestamp(System.currentTimeMillis()));
|
||||||
|
strategiPengadaanRepository.save(strategiPengadaan);
|
||||||
|
log.info("Success edit strategi pengadaan id {}", strategiPengadaan.getId());
|
||||||
|
return StrategiPengadaanResponse.builder()
|
||||||
|
.id(strategiPengadaan.getId())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,39 @@
|
|||||||
|
package com.iconplus.smartproc.service.sumberdana;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.entity.SumberDana;
|
||||||
|
import com.iconplus.smartproc.model.request.SumberDanaRequest;
|
||||||
|
import com.iconplus.smartproc.repository.SumberDanaRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class DeleteSumberDanaService implements BaseService<SumberDanaRequest, EmptyResponse> {
|
||||||
|
|
||||||
|
private SumberDanaRepository sumberDanaRepository;
|
||||||
|
|
||||||
|
public DeleteSumberDanaService(SumberDanaRepository sumberDanaRepository) {
|
||||||
|
this.sumberDanaRepository = sumberDanaRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EmptyResponse execute(SumberDanaRequest input) {
|
||||||
|
|
||||||
|
var sumberDana = sumberDanaRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
sumberDana.setIsDelete(true);
|
||||||
|
sumberDanaRepository.save(sumberDana);
|
||||||
|
log.info("success delete sumber dana id {}", sumberDana.getIsDelete());
|
||||||
|
return new EmptyResponse();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,60 @@
|
|||||||
|
package com.iconplus.smartproc.service.sumberdana;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.projection.SumberDanaView;
|
||||||
|
import com.iconplus.smartproc.model.request.SumberDanaRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.GetListSumberDanaResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.SumberDanaResponse;
|
||||||
|
import com.iconplus.smartproc.repository.SumberDanaRepository;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
// kontrak
|
||||||
|
@Service
|
||||||
|
public class GetListSumberDanaService implements BaseService<SumberDanaRequest, GetListSumberDanaResponse> {
|
||||||
|
|
||||||
|
private SumberDanaRepository sumberDanaRepository;
|
||||||
|
|
||||||
|
public GetListSumberDanaService(SumberDanaRepository sumberDanaRepository) {
|
||||||
|
this.sumberDanaRepository = sumberDanaRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GetListSumberDanaResponse execute(SumberDanaRequest input) {
|
||||||
|
validateRequest(input);
|
||||||
|
List<SumberDanaResponse> sumberDanaResponseList = new ArrayList<>();
|
||||||
|
var sumberDanaViews = sumberDanaRepository.getAllSumberDana(input.getSearch(), input.getPageable());
|
||||||
|
|
||||||
|
for (SumberDanaView sumberDanaView : sumberDanaViews) {
|
||||||
|
SumberDanaResponse sumberDanaResponse = SumberDanaResponse.builder()
|
||||||
|
.id(sumberDanaView.getId())
|
||||||
|
.sumberDana(sumberDanaView.getSumberDana())
|
||||||
|
.keterangan(sumberDanaView.getKeterangan())
|
||||||
|
.isDelete(sumberDanaView.getIsDelete())
|
||||||
|
.build();
|
||||||
|
sumberDanaResponseList.add(sumberDanaResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
return GetListSumberDanaResponse.builder()
|
||||||
|
.data(sumberDanaResponseList)
|
||||||
|
.pagination(Pagination.builder()
|
||||||
|
.pageSize(input.getPageable().getPageSize())
|
||||||
|
.currentPage(input.getPageable().getPageNumber())
|
||||||
|
.totalPages(sumberDanaViews.getTotalPages())
|
||||||
|
.totalRecords(sumberDanaViews.getTotalElements())
|
||||||
|
.isFirstPage(sumberDanaViews.isFirst())
|
||||||
|
.isLastPage(sumberDanaViews.isLast())
|
||||||
|
.build())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateRequest(SumberDanaRequest input) {
|
||||||
|
if (StringUtils.isNotBlank(input.getSearch())) {
|
||||||
|
input.setSearch('%'+ input.getSearch().toUpperCase()+'%');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,44 @@
|
|||||||
|
package com.iconplus.smartproc.service.sumberdana;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.SumberDanaRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.SumberDanaResponse;
|
||||||
|
import com.iconplus.smartproc.repository.SumberDanaRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetSumberDanaByIdService implements BaseService<SumberDanaRequest, SumberDanaResponse> {
|
||||||
|
|
||||||
|
private final SumberDanaRepository sumberDanaRepository;
|
||||||
|
|
||||||
|
public GetSumberDanaByIdService(SumberDanaRepository sumberDanaRepository) {
|
||||||
|
this.sumberDanaRepository = sumberDanaRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SumberDanaResponse execute(SumberDanaRequest input) {
|
||||||
|
SumberDanaResponse sumberDanaResponse = new SumberDanaResponse();
|
||||||
|
var sumberDanaView = sumberDanaRepository.findByIdAndIsDeleteFalse(input.getId());
|
||||||
|
if (sumberDanaView.isEmpty()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
sumberDanaResponse.setSumberDana(sumberDanaView.get().getSumberDana());
|
||||||
|
sumberDanaResponse.setKeterangan(sumberDanaView.get().getKeterangan());
|
||||||
|
sumberDanaResponse.setIsDelete(sumberDanaView.get().getIsDelete());
|
||||||
|
|
||||||
|
return SumberDanaResponse.builder()
|
||||||
|
.id(sumberDanaView.get().getId())
|
||||||
|
.sumberDana(sumberDanaView.get().getSumberDana())
|
||||||
|
.keterangan(sumberDanaView.get().getKeterangan())
|
||||||
|
.isDelete(sumberDanaView.get().getIsDelete())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,52 @@
|
|||||||
|
package com.iconplus.smartproc.service.sumberdana;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.entity.SumberDana;
|
||||||
|
import com.iconplus.smartproc.model.request.SumberDanaRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.SumberDanaResponse;
|
||||||
|
import com.iconplus.smartproc.repository.SumberDanaRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.ObjectUtils;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PostCreateSumberDanaService implements BaseService<SumberDanaRequest, SumberDanaResponse> {
|
||||||
|
|
||||||
|
private final SumberDanaRepository sumberDanaRepository;
|
||||||
|
|
||||||
|
public PostCreateSumberDanaService(SumberDanaRepository sumberDanaRepository) {
|
||||||
|
this.sumberDanaRepository = sumberDanaRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SumberDanaResponse execute(SumberDanaRequest input) {
|
||||||
|
|
||||||
|
var existSumberDana = sumberDanaRepository.findBySumberDanaAndIsDeleteFalse(input.getSumberDana());
|
||||||
|
if (existSumberDana.isPresent()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10002,
|
||||||
|
Constants.ERR_TTL_10002,
|
||||||
|
String.format(Constants.ERR_MSG_10002, existSumberDana.get().getId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
SumberDana sumberDana = SumberDana.builder()
|
||||||
|
.sumberDana(input.getSumberDana())
|
||||||
|
.keterangan(input.getKeterangan())
|
||||||
|
.isDelete(false)
|
||||||
|
.build();
|
||||||
|
// jenisKontrak.setCreatedTime(new Timestamp(System.currentTimeMillis()));
|
||||||
|
|
||||||
|
var result = sumberDanaRepository.save(sumberDana);
|
||||||
|
log.info("success insert sumber dana id : {}", result.getId());
|
||||||
|
return SumberDanaResponse.builder()
|
||||||
|
.id(result.getId())
|
||||||
|
.build();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,46 @@
|
|||||||
|
package com.iconplus.smartproc.service.sumberdana;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.SumberDanaRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.SumberDanaResponse;
|
||||||
|
import com.iconplus.smartproc.repository.SumberDanaRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PutUpdateSumberDanaService implements BaseService<SumberDanaRequest, SumberDanaResponse> {
|
||||||
|
|
||||||
|
private SumberDanaRepository sumberDanaRepository;
|
||||||
|
|
||||||
|
public PutUpdateSumberDanaService(SumberDanaRepository sumberDanaRepository) {
|
||||||
|
this.sumberDanaRepository = sumberDanaRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SumberDanaResponse execute(SumberDanaRequest input) {
|
||||||
|
|
||||||
|
var sumberDana = sumberDanaRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
sumberDana.setSumberDana(input.getSumberDana());
|
||||||
|
sumberDana.setKeterangan(input.getKeterangan());
|
||||||
|
sumberDana.setIsDelete(BooleanUtils.isTrue(input.getIsDelete()));
|
||||||
|
sumberDana.setLastUpdate(new Timestamp(System.currentTimeMillis()));
|
||||||
|
sumberDanaRepository.save(sumberDana);
|
||||||
|
log.info("Success edit sumber dana id {}", sumberDana.getId());
|
||||||
|
return SumberDanaResponse.builder()
|
||||||
|
.id(sumberDana.getId())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,38 @@
|
|||||||
|
package com.iconplus.smartproc.service.supplypositioningmatrix;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.SupplyPositioningMatrixRequest;
|
||||||
|
import com.iconplus.smartproc.repository.SupplyPositioningMatrixRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class DeleteSupplyPositioningMatrixService implements BaseService<SupplyPositioningMatrixRequest, EmptyResponse> {
|
||||||
|
|
||||||
|
private SupplyPositioningMatrixRepository supplyPositioningMatrixRepository;
|
||||||
|
|
||||||
|
public DeleteSupplyPositioningMatrixService(SupplyPositioningMatrixRepository supplyPositioningMatrixRepository) {
|
||||||
|
this.supplyPositioningMatrixRepository = supplyPositioningMatrixRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public EmptyResponse execute(SupplyPositioningMatrixRequest input) {
|
||||||
|
|
||||||
|
var supplyPositioningMatrix = supplyPositioningMatrixRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
supplyPositioningMatrix.setIsDelete(true);
|
||||||
|
supplyPositioningMatrixRepository.save(supplyPositioningMatrix);
|
||||||
|
log.info("success delete supply positioning matrix id {}", supplyPositioningMatrix.getIsDelete());
|
||||||
|
return new EmptyResponse();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,60 @@
|
|||||||
|
package com.iconplus.smartproc.service.supplypositioningmatrix;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.helper.model.Pagination;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.projection.SupplyPositioningMatrixView;
|
||||||
|
import com.iconplus.smartproc.model.request.SupplyPositioningMatrixRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.GetListSupplyPositioningMatrixResponse;
|
||||||
|
import com.iconplus.smartproc.model.response.SupplyPositioningMatrixResponse;
|
||||||
|
import com.iconplus.smartproc.repository.SupplyPositioningMatrixRepository;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.data.domain.Page;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetListSupplyPositioningMatrixService implements BaseService<SupplyPositioningMatrixRequest, GetListSupplyPositioningMatrixResponse> {
|
||||||
|
|
||||||
|
private SupplyPositioningMatrixRepository supplyPositioningMatrixRepository;
|
||||||
|
|
||||||
|
public GetListSupplyPositioningMatrixService(SupplyPositioningMatrixRepository supplyPositioningMatrixRepository) {
|
||||||
|
this.supplyPositioningMatrixRepository = supplyPositioningMatrixRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public GetListSupplyPositioningMatrixResponse execute(SupplyPositioningMatrixRequest input) {
|
||||||
|
validateRequest(input);
|
||||||
|
List<SupplyPositioningMatrixResponse> supplyPositioningMatrixResponseList = new ArrayList<>();
|
||||||
|
Page<SupplyPositioningMatrixView> supplyPositioningMatrixViews = supplyPositioningMatrixRepository.getAllSupplyPositioningMatrix(input.getSearch(), input.getPageable());
|
||||||
|
|
||||||
|
for (SupplyPositioningMatrixView supplyPositioningMatrixView : supplyPositioningMatrixViews) {
|
||||||
|
SupplyPositioningMatrixResponse supplyPositioningMatrixResponse = SupplyPositioningMatrixResponse.builder()
|
||||||
|
.id(supplyPositioningMatrixView.getId())
|
||||||
|
.supplyPositioningMatrix(supplyPositioningMatrixView.getSupplyPositioningMatrix())
|
||||||
|
.keterangan(supplyPositioningMatrixView.getKeterangan())
|
||||||
|
.isDelete(supplyPositioningMatrixView.getIsDelete())
|
||||||
|
.build();
|
||||||
|
supplyPositioningMatrixResponseList.add(supplyPositioningMatrixResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
return GetListSupplyPositioningMatrixResponse.builder()
|
||||||
|
.data(supplyPositioningMatrixResponseList)
|
||||||
|
.pagination(Pagination.builder()
|
||||||
|
.pageSize(input.getPageable().getPageSize())
|
||||||
|
.currentPage(input.getPageable().getPageNumber())
|
||||||
|
.totalPages(supplyPositioningMatrixViews.getTotalPages())
|
||||||
|
.totalRecords(supplyPositioningMatrixViews.getTotalElements())
|
||||||
|
.isFirstPage(supplyPositioningMatrixViews.isFirst())
|
||||||
|
.isLastPage(supplyPositioningMatrixViews.isLast())
|
||||||
|
.build())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateRequest(SupplyPositioningMatrixRequest input) {
|
||||||
|
if (StringUtils.isNotBlank(input.getSearch())) {
|
||||||
|
input.setSearch('%'+ input.getSearch().toUpperCase()+'%');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,43 @@
|
|||||||
|
package com.iconplus.smartproc.service.supplypositioningmatrix;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.SupplyPositioningMatrixRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.SupplyPositioningMatrixResponse;
|
||||||
|
import com.iconplus.smartproc.repository.SupplyPositioningMatrixRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class GetSupplyPositioningMatrixByIdService implements BaseService<SupplyPositioningMatrixRequest, SupplyPositioningMatrixResponse> {
|
||||||
|
|
||||||
|
private final SupplyPositioningMatrixRepository supplyPositioningMatrixRepository;
|
||||||
|
|
||||||
|
public GetSupplyPositioningMatrixByIdService(SupplyPositioningMatrixRepository supplyPositioningMatrixRepository) {
|
||||||
|
this.supplyPositioningMatrixRepository = supplyPositioningMatrixRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SupplyPositioningMatrixResponse execute(SupplyPositioningMatrixRequest input) {
|
||||||
|
SupplyPositioningMatrixResponse supplyPositioningMatrixResponse = new SupplyPositioningMatrixResponse();
|
||||||
|
var supplyPositioningMatrixView = supplyPositioningMatrixRepository.findByIdAndIsDeleteFalse(input.getId());
|
||||||
|
if (supplyPositioningMatrixView.isEmpty()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId()));
|
||||||
|
}
|
||||||
|
|
||||||
|
supplyPositioningMatrixResponse.setSupplyPositioningMatrix(supplyPositioningMatrixView.get().getSupplyPositioningMatrix());
|
||||||
|
supplyPositioningMatrixResponse.setKeterangan(supplyPositioningMatrixView.get().getKeterangan());
|
||||||
|
supplyPositioningMatrixResponse.setIsDelete(supplyPositioningMatrixView.get().getIsDelete());
|
||||||
|
|
||||||
|
return SupplyPositioningMatrixResponse.builder()
|
||||||
|
.id(supplyPositioningMatrixView.get().getId())
|
||||||
|
.supplyPositioningMatrix(supplyPositioningMatrixView.get().getSupplyPositioningMatrix())
|
||||||
|
.keterangan(supplyPositioningMatrixView.get().getKeterangan())
|
||||||
|
.isDelete(supplyPositioningMatrixView.get().getIsDelete())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,50 @@
|
|||||||
|
package com.iconplus.smartproc.service.supplypositioningmatrix;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.entity.SupplyPositioningMatrix;
|
||||||
|
import com.iconplus.smartproc.model.request.SupplyPositioningMatrixRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.SupplyPositioningMatrixResponse;
|
||||||
|
import com.iconplus.smartproc.repository.SupplyPositioningMatrixRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PostCreateSupplyPositioningMatrixService implements BaseService<SupplyPositioningMatrixRequest, SupplyPositioningMatrixResponse> {
|
||||||
|
|
||||||
|
private final SupplyPositioningMatrixRepository supplyPositioningMatrixRepository;
|
||||||
|
|
||||||
|
public PostCreateSupplyPositioningMatrixService(SupplyPositioningMatrixRepository supplyPositioningMatrixRepository) {
|
||||||
|
this.supplyPositioningMatrixRepository = supplyPositioningMatrixRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SupplyPositioningMatrixResponse execute(SupplyPositioningMatrixRequest input) {
|
||||||
|
|
||||||
|
var existSupplyPositioningMatrix = supplyPositioningMatrixRepository.findBySupplyPositioningMatrixAndIsDeleteFalse(input.getSupplyPositioningMatrix());
|
||||||
|
if (existSupplyPositioningMatrix.isPresent()) {
|
||||||
|
throw new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10002,
|
||||||
|
Constants.ERR_TTL_10002,
|
||||||
|
String.format(Constants.ERR_MSG_10002, input.getSupplyPositioningMatrix()));
|
||||||
|
}
|
||||||
|
|
||||||
|
SupplyPositioningMatrix supplyPositioningMatrix = SupplyPositioningMatrix.builder()
|
||||||
|
.supplyPositioningMatrix(input.getSupplyPositioningMatrix())
|
||||||
|
.keterangan(input.getKeterangan())
|
||||||
|
.isDelete(false)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
var result = supplyPositioningMatrixRepository.save(supplyPositioningMatrix);
|
||||||
|
log.info("success insert supply positioning matrix id : {}", result.getId());
|
||||||
|
return SupplyPositioningMatrixResponse.builder()
|
||||||
|
.id(result.getId())
|
||||||
|
.build();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@@ -0,0 +1,45 @@
|
|||||||
|
package com.iconplus.smartproc.service.supplypositioningmatrix;
|
||||||
|
|
||||||
|
import com.iconplus.smartproc.exception.BusinessException;
|
||||||
|
import com.iconplus.smartproc.helper.service.BaseService;
|
||||||
|
import com.iconplus.smartproc.model.request.SupplyPositioningMatrixRequest;
|
||||||
|
import com.iconplus.smartproc.model.response.SupplyPositioningMatrixResponse;
|
||||||
|
import com.iconplus.smartproc.repository.SupplyPositioningMatrixRepository;
|
||||||
|
import com.iconplus.smartproc.util.Constants;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.BooleanUtils;
|
||||||
|
import org.springframework.http.HttpStatus;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class PutUpdateSupplyPositioningMatrixService implements BaseService<SupplyPositioningMatrixRequest, SupplyPositioningMatrixResponse> {
|
||||||
|
|
||||||
|
private SupplyPositioningMatrixRepository supplyPositioningMatrixRepository;
|
||||||
|
|
||||||
|
public PutUpdateSupplyPositioningMatrixService(SupplyPositioningMatrixRepository supplyPositioningMatrixRepository) {
|
||||||
|
this.supplyPositioningMatrixRepository = supplyPositioningMatrixRepository;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SupplyPositioningMatrixResponse execute(SupplyPositioningMatrixRequest input) {
|
||||||
|
|
||||||
|
var supplyPositioningMatrix = supplyPositioningMatrixRepository.findByIdAndIsDeleteFalse(input.getId())
|
||||||
|
.orElseThrow(() -> new BusinessException(HttpStatus.CONFLICT,
|
||||||
|
Constants.ERR_CODE_10001,
|
||||||
|
Constants.ERR_TTL_10001,
|
||||||
|
String.format(Constants.ERR_MSG_10001, input.getId())));
|
||||||
|
|
||||||
|
supplyPositioningMatrix.setSupplyPositioningMatrix(input.getSupplyPositioningMatrix());
|
||||||
|
supplyPositioningMatrix.setKeterangan(input.getKeterangan());
|
||||||
|
supplyPositioningMatrix.setIsDelete(BooleanUtils.isTrue(input.getIsDelete()));
|
||||||
|
supplyPositioningMatrix.setLastUpdate(new Timestamp(System.currentTimeMillis()));
|
||||||
|
supplyPositioningMatrixRepository.save(supplyPositioningMatrix);
|
||||||
|
log.info("Success edit supply positioning matrix id {}", supplyPositioningMatrix.getId());
|
||||||
|
return SupplyPositioningMatrixResponse.builder()
|
||||||
|
.id(supplyPositioningMatrix.getId())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
@@ -11,7 +11,7 @@ spring:
|
|||||||
driver-class-name: org.postgresql.Driver
|
driver-class-name: org.postgresql.Driver
|
||||||
url: jdbc:postgresql://localhost:5432/smartproc
|
url: jdbc:postgresql://localhost:5432/smartproc
|
||||||
username: postgres
|
username: postgres
|
||||||
password: postgre
|
password: postgres
|
||||||
jackson:
|
jackson:
|
||||||
default-property-inclusion: NON_NULL
|
default-property-inclusion: NON_NULL
|
||||||
jpa:
|
jpa:
|
||||||
|
Reference in New Issue
Block a user