Test All Java

This commit is contained in:
Kevin
2023-05-25 11:36:23 +07:00
parent c781c36a5d
commit a03f7f9990
19 changed files with 136 additions and 90 deletions

View File

@@ -5,10 +5,12 @@ public interface JenisKontrakView {
Long getId();
String getJenisKontrak();
String getKeterangan();
Boolean getDeleted();
String getIsActive();
Boolean getIsDelete();
void setId(Long id);
void setJenisKontrak(String jenisKontrak);
void setKeterangan(String keterangan);
void setDeleted(Boolean deleted);
void setIsActive(Boolean isActive);
void setIsDelete(Boolean isDelete);
}

View File

@@ -5,10 +5,12 @@ public interface JenisPengadaanView {
Long getId();
String getJenisPengadaan();
String getKeterangan();
Boolean getDeleted();
String getIsActive();
Boolean getIsDelete();
void setId(Long id);
void setJenisPengadaan(String jenisPengadaan);
void setKeterangan(String keterangan);
void setDeleted(Boolean deleted);
void setIsActive(Boolean isActive);
void setIsDelete(Boolean isDelete);
}

View File

@@ -9,7 +9,8 @@ public interface LokasiView {
Boolean getIsDelete();
void setId(Long id);
void setLokasi(String Lokasi);
void setLokasi(String lokasi);
void setKeterangan(String keterangan);
void setIsActive(Boolean isActive);
void setIsDelete(Boolean isDelete);
}

View File

@@ -13,7 +13,7 @@ public class JenisKontrakRequest extends BaseRequest {
private String jenisKontrak;
private String keterangan;
private Boolean isActive;
private Boolean deleted;
private Boolean isDelete;
private String search;
private transient Pageable pageable;
}

View File

@@ -13,7 +13,7 @@ public class JenisPengadaanRequest extends BaseRequest {
private String jenisPengadaan;
private String keterangan;
private Boolean isActive;
private Boolean deleted;
private Boolean isDelete;
private String search;
private transient Pageable pageable;
}

View File

@@ -7,10 +7,10 @@ import org.springframework.data.domain.Pageable;
@Data
@Builder
public class JenisAnggaranRequest extends BaseRequest {
public class LokasiRequest extends BaseRequest {
private Long id;
private String jenisAnggaran;
private String lokasi;
private String keterangan;
private Boolean isActive;
private Boolean isDelete;

View File

@@ -13,8 +13,8 @@ import java.util.List;
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class GetListJenisAnggaranResponse extends BaseResponse {
public class GetListMetodePenyampaianResponse extends BaseResponse {
private List<JenisAnggaranResponse> data;
private List<MetodePenyampaianResponse> data;
private Pagination pagination;
}

View File

@@ -13,8 +13,8 @@ import java.util.List;
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class GetListJenisAnggaranResponse extends BaseResponse {
public class GetListUnitInisiatorResponse extends BaseResponse {
private List<JenisAnggaranResponse> data;
private List<UnitInisiatorResponse> data;
private Pagination pagination;
}

View File

@@ -6,7 +6,6 @@ import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@Builder
@NoArgsConstructor
@@ -17,6 +16,6 @@ public class JenisKontrakResponse extends BaseResponse {
private String jenisKontrak;
private String keterangan;
private Boolean isActive;
private Boolean deleted;
private Boolean isDelete;
}

View File

@@ -1,10 +1,31 @@
package com.iconplus.smartproc.repository;
import com.iconplus.smartproc.model.entity.Lokasi;
import com.iconplus.smartproc.model.projection.LokasiView;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.stereotype.Repository;
import java.util.Optional;
@Repository
public interface LokasiRepository extends JpaRepository<Lokasi, Long> {
@Query(value = "SELECT ja.id as id, " +
"ja.lokasi as lokasi, " +
"ja.keterangan as keterangan, " +
"ja.isDelete as isDelete " +
"FROM Lokasi ja " +
"WHERE ja.isDelete = false " +
"AND (:search = '' " +
"or (UPPER(ja.lokasi) like :search OR UPPER(ja.keterangan) like :search)) " +
"ORDER BY ja.id")
Page<LokasiView> getAllLokasi(String search, Pageable pageable);
Optional<Lokasi> findByIdAndIsDeleteFalse(Long id);
Optional<Lokasi> findByLokasiAndIsDeleteFalse(String lokasi);
}

View File

@@ -1,10 +1,31 @@
package com.iconplus.smartproc.repository;
import com.iconplus.smartproc.model.entity.SumberDana;
import com.iconplus.smartproc.model.projection.SumberDanaView;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.stereotype.Repository;
import java.util.Optional;
@Repository
public interface SumberDanaRepository extends JpaRepository<SumberDana, Long> {
@Query(value = "SELECT ja.id as id, " +
"ja.sumberDana as sumberDana, " +
"ja.keterangan as keterangan, " +
"ja.isDelete as isDelete " +
"FROM SumberDana ja " +
"WHERE ja.isDelete = false " +
"AND (:search = '' " +
"or (UPPER(ja.sumberDana) like :search OR UPPER(ja.keterangan) like :search)) " +
"ORDER BY ja.id")
Page<SumberDanaView> getAllSumberDana(String search, Pageable pageable);
Optional<SumberDana> findByIdAndIsDeleteFalse(Long id);
Optional<SumberDana> findBySumberDanaAndIsDeleteFalse(String sumberDana);
}

View File

@@ -32,13 +32,13 @@ public class GetJenisKontrakByIdService implements BaseService<JenisKontrakReque
jenisKontrakResponse.setJenisKontrak(jenisKontrakView.get().getJenisKontrak());
jenisKontrakResponse.setKeterangan(jenisKontrakView.get().getKeterangan());
jenisKontrakResponse.setDeleted(jenisKontrakView.get().getIsDelete());
jenisKontrakResponse.setIsDelete(jenisKontrakView.get().getIsDelete());
return JenisKontrakResponse.builder()
.id(jenisKontrakView.get().getId())
.jenisKontrak(jenisKontrakView.get().getJenisKontrak())
.keterangan(jenisKontrakView.get().getKeterangan())
.deleted(jenisKontrakView.get().getIsDelete())
.isDelete(jenisKontrakView.get().getIsDelete())
.build();
}
}

View File

@@ -34,7 +34,7 @@ public class GetListJenisKontrakService implements BaseService<JenisKontrakReque
.id(jenisKontrakView.getId())
.jenisKontrak(jenisKontrakView.getJenisKontrak())
.keterangan(jenisKontrakView.getKeterangan())
.deleted(jenisKontrakView.getIsDelete())
.isDelete(jenisKontrakView.getIsDelete())
.build();
jenisKontrakResponseList.add(jenisKontrakResponse);
}

View File

@@ -35,7 +35,7 @@ public class PutUpdateJenisKontrakService implements BaseService<JenisKontrakReq
jenisKontrak.setJenisKontrak(input.getJenisKontrak());
jenisKontrak.setKeterangan(input.getKeterangan());
jenisKontrak.setIsDelete(BooleanUtils.isTrue(input.getDeleted()));
jenisKontrak.setIsDelete(BooleanUtils.isTrue(input.getIsDelete()));
jenisKontrak.setLastUpdate(new Timestamp(System.currentTimeMillis()));
jenisKontrakRepository.save(jenisKontrak);
log.info("Success edit jenis kontrak id {}", jenisKontrak.getId());

View File

@@ -35,7 +35,7 @@ public class PutUpdateJenisPengadaanService implements BaseService<JenisPengadaa
jenisPengadaan.setJenisPengadaan(input.getJenisPengadaan());
jenisPengadaan.setKeterangan(input.getKeterangan());
jenisPengadaan.setIsDelete(BooleanUtils.isTrue(input.getDeleted()));
jenisPengadaan.setIsDelete(BooleanUtils.isTrue(input.getIsDelete()));
jenisPengadaan.setLastUpdate(new Timestamp(System.currentTimeMillis()));
jenisPengadaanRepository.save(jenisPengadaan);
log.info("Success edit jenis pengadaan id {}", jenisPengadaan.getId());

View File

@@ -1,10 +1,10 @@
package com.iconplus.smartproc.service.jenisanggaran;
package com.iconplus.smartproc.service.lokasi;
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.model.request.LokasiRequest;
import com.iconplus.smartproc.repository.LokasiRepository;
import com.iconplus.smartproc.util.Constants;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
@@ -12,27 +12,27 @@ import org.springframework.stereotype.Service;
@Service
@Slf4j
public class DeleteJenisAnggaranService implements BaseService<JenisAnggaranRequest, EmptyResponse> {
public class DeleteLokasiService implements BaseService<LokasiRequest, EmptyResponse> {
private JenisAnggaranRepository jenisAnggaranRepository;
private LokasiRepository lokasiRepository;
public DeleteJenisAnggaranService(JenisAnggaranRepository jenisAnggaranRepository) {
this.jenisAnggaranRepository = jenisAnggaranRepository;
public DeleteLokasiService(LokasiRepository lokasiRepository) {
this.lokasiRepository = lokasiRepository;
}
@Override
public EmptyResponse execute(JenisAnggaranRequest input) {
public EmptyResponse execute(LokasiRequest input) {
var jenisAnggaran = jenisAnggaranRepository.findByIdAndIsDeleteFalse(input.getId())
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())));
jenisAnggaran.setIsDelete(true);
jenisAnggaranRepository.save(jenisAnggaran);
log.info("success delete jenis anggaran id {}", jenisAnggaran.getIsDelete());
lokasi.setIsDelete(true);
lokasiRepository.save(lokasi);
log.info("success delete jenis lokasi id {}", lokasi.getIsDelete());
return new EmptyResponse();
}
}

View File

@@ -1,43 +1,43 @@
package com.iconplus.smartproc.service.jenisanggaran;
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.JenisAnggaranRequest;
import com.iconplus.smartproc.model.response.JenisAnggaranResponse;
import com.iconplus.smartproc.repository.JenisAnggaranRepository;
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 org.springframework.http.HttpStatus;
import org.springframework.stereotype.Service;
@Service
public class GetJenisAnggaranByIdService implements BaseService<JenisAnggaranRequest, JenisAnggaranResponse> {
public class GetLokasiByIdService implements BaseService<LokasiRequest, LokasiResponse> {
private final JenisAnggaranRepository jenisAnggaranRepository;
private final LokasiRepository lokasiRepository;
public GetJenisAnggaranByIdService(JenisAnggaranRepository jenisAnggaranRepository) {
this.jenisAnggaranRepository = jenisAnggaranRepository;
public GetLokasiByIdService(LokasiRepository lokasiRepository) {
this.lokasiRepository = lokasiRepository;
}
@Override
public JenisAnggaranResponse execute(JenisAnggaranRequest input) {
JenisAnggaranResponse jenisAnggaranResponse = new JenisAnggaranResponse();
var jenisAnggaranView = jenisAnggaranRepository.findByIdAndIsDeleteFalse(input.getId());
if (jenisAnggaranView.isEmpty()) {
public LokasiResponse execute(LokasiRequest input) {
LokasiResponse lokasiResponse = new LokasiResponse();
var lokasiView = lokasiRepository.findByIdAndIsDeleteFalse(input.getId());
if (lokasiView.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());
lokasiResponse.setLokasi(lokasiView.get().getLokasi());
lokasiResponse.setKeterangan(lokasiView.get().getKeterangan());
lokasiResponse.setIsDelete(lokasiView.get().getIsDelete());
return JenisAnggaranResponse.builder()
.id(jenisAnggaranView.get().getId())
.jenisAnggaran(jenisAnggaranView.get().getJenisAnggaran())
.keterangan(jenisAnggaranView.get().getKeterangan())
.isDelete(jenisAnggaranView.get().getIsDelete())
return LokasiResponse.builder()
.id(lokasiView.get().getId())
.lokasi(lokasiView.get().getLokasi())
.keterangan(lokasiView.get().getKeterangan())
.isDelete(lokasiView.get().getIsDelete())
.build();
}
}

View File

@@ -1,43 +1,43 @@
package com.iconplus.smartproc.service.jenisanggaran;
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.JenisAnggaranRequest;
import com.iconplus.smartproc.model.response.JenisAnggaranResponse;
import com.iconplus.smartproc.repository.JenisAnggaranRepository;
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 org.springframework.http.HttpStatus;
import org.springframework.stereotype.Service;
@Service
public class GetJenisAnggaranByIdService implements BaseService<JenisAnggaranRequest, JenisAnggaranResponse> {
public class GetMetodePengadaanByIdService implements BaseService<MetodePengadaanRequest, MetodePengadaanResponse> {
private final JenisAnggaranRepository jenisAnggaranRepository;
private final MetodePengadaanRepository metodePengadaanRepository;
public GetJenisAnggaranByIdService(JenisAnggaranRepository jenisAnggaranRepository) {
this.jenisAnggaranRepository = jenisAnggaranRepository;
public GetMetodePengadaanByIdService(MetodePengadaanRepository metodePengadaanRepository) {
this.metodePengadaanRepository = metodePengadaanRepository;
}
@Override
public JenisAnggaranResponse execute(JenisAnggaranRequest input) {
JenisAnggaranResponse jenisAnggaranResponse = new JenisAnggaranResponse();
var jenisAnggaranView = jenisAnggaranRepository.findByIdAndIsDeleteFalse(input.getId());
if (jenisAnggaranView.isEmpty()) {
public MetodePengadaanResponse execute(MetodePengadaanRequest input) {
MetodePengadaanResponse metodePengadaanResponse = new MetodePengadaanResponse();
var metodePengadaanView = metodePengadaanRepository.findByIdAndIsDeleteFalse(input.getId());
if (metodePengadaanView.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());
metodePengadaanResponse.setMetodePengadaan(metodePengadaanView.get().getMetodePengadaan());
metodePengadaanResponse.setKeterangan(metodePengadaanView.get().getKeterangan());
metodePengadaanResponse.setIsDelete(metodePengadaanView.get().getIsDelete());
return JenisAnggaranResponse.builder()
.id(jenisAnggaranView.get().getId())
.jenisAnggaran(jenisAnggaranView.get().getJenisAnggaran())
.keterangan(jenisAnggaranView.get().getKeterangan())
.isDelete(jenisAnggaranView.get().getIsDelete())
return MetodePengadaanResponse.builder()
.id(metodePengadaanView.get().getId())
.metodePengadaan(metodePengadaanView.get().getMetodePengadaan())
.keterangan(metodePengadaanView.get().getKeterangan())
.isDelete(metodePengadaanView.get().getIsDelete())
.build();
}
}

View File

@@ -1,11 +1,11 @@
package com.iconplus.smartproc.service.jenisanggaran;
package com.iconplus.smartproc.service.metodepengadaan;
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.model.entity.MetodePengadaan;
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.springframework.http.HttpStatus;
@@ -15,34 +15,34 @@ import java.sql.Timestamp;
@Service
@Slf4j
public class PostCreateJenisAnggaranService implements BaseService<JenisAnggaranRequest, JenisAnggaranResponse> {
public class PostCreateMetodePengadaanService implements BaseService<MetodePengadaanRequest, MetodePengadaanResponse> {
private final JenisAnggaranRepository jenisAnggaranRepository;
private final MetodePengadaanRepository metodePengadaanRepository;
public PostCreateJenisAnggaranService(JenisAnggaranRepository jenisAnggaranRepository) {
this.jenisAnggaranRepository = jenisAnggaranRepository;
public PostCreateMetodePengadaanService(MetodePengadaanRepository metodePengadaanRepository) {
this.metodePengadaanRepository = metodePengadaanRepository;
}
@Override
public JenisAnggaranResponse execute(JenisAnggaranRequest input) {
public MetodePengadaanResponse execute(MetodePengadaanRequest input) {
var existJenisAnggaran = jenisAnggaranRepository.findByJenisAnggaranAndIsDeleteFalse(input.getJenisAnggaran());
if (existJenisAnggaran.isPresent()) {
var existMetodePengadaan = metodePengadaanRepository.findByMetodePengadaanAndIsDeleteFalse(input.getMetodePengadaan());
if (existMetodePengadaan.isPresent()) {
throw new BusinessException(HttpStatus.CONFLICT,
Constants.ERR_CODE_10002,
Constants.ERR_TTL_10002,
String.format(Constants.ERR_MSG_10002, input.getJenisAnggaran()));
String.format(Constants.ERR_MSG_10002, input.getMetodePengadaan()));
}
JenisAnggaran jenisAnggaran = JenisAnggaran.builder()
.jenisAnggaran(input.getJenisAnggaran())
MetodePengadaan metodePengadaan = MetodePengadaan.builder()
.metodePengadaan(input.getMetodePengadaan())
.keterangan(input.getKeterangan())
.isDelete(false)
.build();
var result = jenisAnggaranRepository.save(jenisAnggaran);
log.info("success insert jenis anggaran id : {}", result.getId());
return JenisAnggaranResponse.builder()
var result = metodePengadaanRepository.save(metodePengadaan);
log.info("success insert metode pengadaan id : {}", result.getId());
return MetodePengadaanResponse.builder()
.id(result.getId())
.build();