add master data api
This commit is contained in:
@@ -1,74 +1,82 @@
|
||||
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 org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.CrossOrigin;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
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.helper.model.EmptyResponse;
|
||||
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 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")
|
||||
@RestController
|
||||
@RequestMapping("/api/supplypositioningmatrix")
|
||||
public class SupplyPositioningMatrixController {
|
||||
@Autowired
|
||||
private SupplyPositioningMatrixRepository supplypositioningmatrixRepository;
|
||||
|
||||
//get all data
|
||||
@GetMapping
|
||||
public List<SupplyPositioningMatrix> getAllSupplypositioningmatrix(){
|
||||
return supplypositioningmatrixRepository.findAll();
|
||||
}
|
||||
@Autowired
|
||||
private SupplyPositioningMatrixRepository supplypositioningmatrixRepository;
|
||||
|
||||
// create
|
||||
@PostMapping
|
||||
public SupplyPositioningMatrix createSupplypositioningmatrix(@RequestBody SupplyPositioningMatrix supplypositioningmatrix) {
|
||||
return supplypositioningmatrixRepository.save(supplypositioningmatrix);
|
||||
}
|
||||
private final GetListSupplyPositioningMatrixService getListSupplyPositioningMatrixService;
|
||||
private final GetSupplyPositioningMatrixByIdService getSupplyPositioningMatrixByIdService;
|
||||
private final PostCreateSupplyPositioningMatrixService postCreateSupplyPositioningMatrixService;
|
||||
private final PutUpdateSupplyPositioningMatrixService putUpdateSupplyPositioningMatrixService;
|
||||
private final DeleteSupplyPositioningMatrixService deleteSupplyPositioningMatrixService;
|
||||
|
||||
// get supplypositioningmatrix by id rest api
|
||||
@GetMapping("/{id}")
|
||||
public ResponseEntity<SupplyPositioningMatrix> getSupplypositioningmatrixById(@PathVariable Long id) {
|
||||
SupplyPositioningMatrix supplypositioningmatrix = supplypositioningmatrixRepository.findById(id)
|
||||
.orElseThrow(() -> new ResourceNotFoundException("Supplypositioningmatrix not exist with id :" + id));
|
||||
return ResponseEntity.ok(supplypositioningmatrix);
|
||||
}
|
||||
public SupplyPositioningMatrixController(GetListSupplyPositioningMatrixService getListSupplyPositioningMatrixService,
|
||||
GetSupplyPositioningMatrixByIdService getSupplyPositioningMatrixByIdService,
|
||||
PostCreateSupplyPositioningMatrixService postCreateSupplyPositioningMatrixService,
|
||||
PutUpdateSupplyPositioningMatrixService putUpdateSupplyPositioningMatrixService,
|
||||
DeleteSupplyPositioningMatrixService deleteSupplyPositioningMatrixService) {
|
||||
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());
|
||||
supplypositioningmatrix.setKeterangan(supplyPositioningMatrixDetails.getKeterangan());
|
||||
@GetMapping
|
||||
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);
|
||||
return ResponseEntity.ok(updatedSupplyPositioningMatrix);
|
||||
}
|
||||
Pageable pageable = PageRequest.of((page - 1), size);
|
||||
SupplyPositioningMatrixRequest supplyPositioningMatrixRequest = SupplyPositioningMatrixRequest.builder()
|
||||
.search(search)
|
||||
.pageable(pageable)
|
||||
.build();
|
||||
|
||||
// delete jenispengadaan rest api
|
||||
@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));
|
||||
return getListSupplyPositioningMatrixService.execute(supplyPositioningMatrixRequest);
|
||||
}
|
||||
|
||||
supplypositioningmatrixRepository.delete(supplypositioningmatrix);
|
||||
Map<String, Boolean> response = new HashMap<>();
|
||||
response.put("deleted", Boolean.TRUE);
|
||||
return ResponseEntity.ok(response);
|
||||
}
|
||||
@PostMapping
|
||||
public SupplyPositioningMatrixResponse createSupplyPositioningMatrix(@RequestBody SupplyPositioningMatrixRequest supplyPositioningMatrixRequest) {
|
||||
return postCreateSupplyPositioningMatrixService.execute(supplyPositioningMatrixRequest);
|
||||
}
|
||||
|
||||
@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());
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user