77 lines
3.4 KiB
Java
77 lines
3.4 KiB
Java
package com.iconplus.smartproc.controller;
|
|
|
|
import com.iconplus.smartproc.helper.model.EmptyResponse;
|
|
import com.iconplus.smartproc.model.request.UnitInisiatorRequest;
|
|
import com.iconplus.smartproc.model.response.GetListUnitInisiatorResponse;
|
|
import com.iconplus.smartproc.model.response.UnitInisiatorResponse;
|
|
import com.iconplus.smartproc.service.unitinisiator.*;
|
|
import org.springframework.data.domain.PageRequest;
|
|
import org.springframework.data.domain.Pageable;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
@CrossOrigin(origins = "${fe.server}", allowCredentials = "true")
|
|
@RestController
|
|
@RequestMapping("/api/unitinisiator")
|
|
public class UnitInisiatorController {
|
|
|
|
private final GetUnitInisiatorService getUnitInisiatorService;
|
|
private final GetListUnitInisiatorService getListUnitInisiatorService;
|
|
private final PostCreateUnitInisiatorService postCreateUnitInisiatorService;
|
|
private final DeleteUnitInisiatorService deleteUnitInisiatorService;
|
|
private final PutUpdateUnitInisiatorService putUpdateUnitInisiatorService;
|
|
|
|
public UnitInisiatorController(GetUnitInisiatorService getUnitInisiatorService,
|
|
GetListUnitInisiatorService getListUnitInisiatorService,
|
|
PostCreateUnitInisiatorService postCreateUnitInisiatorService,
|
|
DeleteUnitInisiatorService deleteUnitInisiatorService,
|
|
PutUpdateUnitInisiatorService putUpdateUnitInisiatorService) {
|
|
this.getUnitInisiatorService = getUnitInisiatorService;
|
|
this.getListUnitInisiatorService = getListUnitInisiatorService;
|
|
this.postCreateUnitInisiatorService = postCreateUnitInisiatorService;
|
|
this.deleteUnitInisiatorService = deleteUnitInisiatorService;
|
|
this.putUpdateUnitInisiatorService = putUpdateUnitInisiatorService;
|
|
|
|
}
|
|
|
|
|
|
@GetMapping
|
|
public GetListUnitInisiatorResponse getListUnitInisiator(@RequestParam(name = "search", required = false) String search,
|
|
@RequestParam(name = "page", defaultValue = "1") Integer page,
|
|
@RequestParam(name = "size", defaultValue = "5") Integer size){
|
|
|
|
Pageable pageable = PageRequest.of((page - 1), size);
|
|
UnitInisiatorRequest unitInisiatorRequest = UnitInisiatorRequest.builder()
|
|
.search(search)
|
|
.pageable(pageable)
|
|
.build();
|
|
|
|
return getListUnitInisiatorService.execute(unitInisiatorRequest);
|
|
}
|
|
|
|
@PostMapping
|
|
public UnitInisiatorResponse createUnitInisiator(@RequestBody UnitInisiatorRequest request) {
|
|
return postCreateUnitInisiatorService.execute(request);
|
|
}
|
|
|
|
@GetMapping("/{id}")
|
|
public UnitInisiatorResponse getUnitInisiator(@PathVariable Long id) {
|
|
return getUnitInisiatorService.execute(UnitInisiatorRequest.builder()
|
|
.id(id)
|
|
.build());
|
|
}
|
|
|
|
@PutMapping("/{id}")
|
|
public UnitInisiatorResponse updateUnitInisiator(@PathVariable Long id, @RequestBody UnitInisiatorRequest request){
|
|
request.setId(id);
|
|
return putUpdateUnitInisiatorService.execute(request);
|
|
}
|
|
|
|
@DeleteMapping("/{id}")
|
|
public EmptyResponse deleteUnitInisiator(@PathVariable Long id){
|
|
return deleteUnitInisiatorService.execute(UnitInisiatorRequest.builder()
|
|
.id(id)
|
|
.build());
|
|
}
|
|
|
|
}
|