Test all Java
This commit is contained in:
@@ -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();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user