Merge branch 'dev/logbook/diskon' into dev/no-cron

This commit is contained in:
Salman Manoe 2024-10-02 20:54:55 +07:00
commit cf9a9123fd
7 changed files with 3116 additions and 63 deletions

View File

@ -200,7 +200,7 @@ public interface PelayananPasienDao extends JpaRepository<PelayananPasien, Strin
+ "ppp.ObjectPegawaiId as idPegawai," + "pp.noRec as idPelayananPasien,coalesce(pp.jumlah,0) as jumlah,"
+ "coalesce(pp.hargaJual,0) as hargaJual,coalesce(pp.hargaDiscount,0) as hargaDiskon,"
+ "pp.voucherPaketId as idVoucherLayanan,coalesce(pp.isPaket,false) as isPaket,coalesce(pp.isSelisihPaket,false) as isSelisihPaket,"
+ "coalesce(pp.persenDiskonPegawai,0) as persenDiskonPegawai,"
+ "coalesce(pp.persenDiskonPegawai,0.0) as persenDiskonPegawai,"
+ "pp.tglPelayanan as tglPelayanan,to_char(pp.tglPelayanan,'yyyy-MM-dd') as tanggal,"
+ "pp.sayatanId as idSayatan,sy.urutan as urutanSayatan,"
+ "coalesce(sy.persen,0) as persenSayatan,coalesce(sy.nama,'') as keterangan,"
@ -256,11 +256,11 @@ public interface PelayananPasienDao extends JpaRepository<PelayananPasien, Strin
+ "when pp.kelasId = 21 then 7 " + "else 8 end," + "kls.namaKelas," + "ppp.noRec,"
+ "ppp.ObjectJenisPetugasPeId,ppp.ObjectPegawaiId,"
+ "pp.noRec,coalesce(pp.hargaJual,0),coalesce(pp.jumlah,0)," + "coalesce(pp.isPaket,false),"
+ "coalesce(pp.isSelisihPaket,false)," + "coalesce(pp.persenDiskonPegawai,0),"
+ "coalesce(pp.isSelisihPaket,false)," + "coalesce(pp.persenDiskonPegawai,0.0),"
+ "pp.tglPelayanan,to_char(pp.tglPelayanan,'yyyy-MM-dd')," + "pp.sayatanId,sy.urutan,"
+ "coalesce(sy.persen,0),coalesce(sy.nama,'')," + "apd.noRec,apd.pegawaiId," + "apd.ruanganId,"
+ "case when ru.kelompokRuangan = 'EKSEKUTIF' then 'Eksekutif' else 'Reguler' end," + "ru.departemenId,"
+ "pd.noRec ";
+ "case when ru.kelompokRuangan = 'EKSEKUTIF' then 'Eksekutif' else 'Reguler' end,"
+ "ru.departemenId," + "pd.noRec ";
String ORDER_LOGBOOK_DOKTER = "order by case when pd.kelompokPasienId = 2 then 1 "
+ "when pd.kelompokPasienId = 4 then 2 " + "when pd.kelompokPasienId = 8 then 3 "

View File

@ -20,4 +20,18 @@ public interface RemunerasiService {
Map<String, Object> getKuantitasCapaianHariKerja(Integer idPegawai, String bulan);
Map<String, Object> splitRemunFfs(Integer idPegawai, String bulan);
Map<String, Object> logbookRemunTarifDokter(Integer idPegawai, String bulan, Map<String, Object> data);
List<Map<String, Object>> logbookFfsTarifDokter(Integer idPegawai, String bulan, Map<String, Object> data);
List<Map<String, Object>> logbookFfsLuarTarifDokter(Integer idPegawai, String bulan, Map<String, Object> data);
List<Map<String, Object>> logbookKlaimMppDokter(Integer idPegawai, String bulan);
List<Map<String, Object>> logbookFixedPayDokter(Integer idPegawai, String bulan, Map<String, Object> data);
List<Map<String, Object>> detailLogbookTarifDokter(Integer idPegawai, List<String> norecs);
}

View File

@ -292,5 +292,6 @@ public class PelayananPasien extends MedicalRecordTransaction {
private String aturanPakaiSignaId;
@Column(name = "persendiskonpegawai")
@Caption(value = "Persentase Diskon Pegawai")
private Double persenDiskonPegawai;
}

View File

@ -163,5 +163,6 @@ public class PelayananPasienVO extends MedicalRecordTransactionVO {
private String aturanPakaiSignaId;
@Caption(value = "Persentase Diskon Pegawai")
private Double persenDiskonPegawai;
}

View File

@ -24,6 +24,8 @@ import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.validation.Valid;
import java.text.ParseException;
import java.time.YearMonth;
import java.time.format.DateTimeFormatter;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -118,6 +120,9 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
@Autowired
private PenilaianKinerjaService penilaianKinerjaService;
@Autowired
private RemunerasiService remunerasiService;
@RequestMapping(value = "/get-load-data", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Map<String, Object>> getLoadData(HttpServletRequest request) {
try {
@ -197,11 +202,11 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
return RestUtil.getJsonResponse(null, HttpStatus.NOT_FOUND, mapHeaderMessage);
}
} catch (ServiceVOException e) {
LOGGER.error("Got ServiceVOException {} when getKalkulasiDataRemunerasi", e.getMessage());
LOGGER.error("Got ServiceVOException {} when getKalkulasiDataRemunerasiPegawai", e.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, e.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR, mapHeaderMessage);
} catch (JpaSystemException jse) {
LOGGER.error("Got JpaSystemException {} when getKalkulasiDataRemunerasi", jse.getMessage());
LOGGER.error("Got JpaSystemException {} when getKalkulasiDataRemunerasiPegawai", jse.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
}
@ -766,11 +771,11 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(true, HttpStatus.CREATED, mapHeaderMessage);
} catch (ServiceVOException sve) {
LOGGER.error("Got ServiceVOException {} when add/update working record", sve.getMessage());
LOGGER.error("Got ServiceVOException {} when add/update set kontrak kinerja", sve.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, sve.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR, mapHeaderMessage);
} catch (JpaSystemException jse) {
LOGGER.error("Got JpaSystemException {} when add/update working record", jse.getMessage());
LOGGER.error("Got JpaSystemException {} when add/update set kontrak kinerja", jse.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
}
@ -1441,11 +1446,11 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
return RestUtil.getJsonResponse(result, HttpStatus.INTERNAL_SERVER_ERROR, mapHeaderMessage);
}
} catch (ServiceVOException sve) {
LOGGER.error("Got ServiceVOException {} when verifikasi logbook dokter", sve.getMessage());
LOGGER.error("Got ServiceVOException {} when verifikasi logbook skor", sve.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, sve.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR, mapHeaderMessage);
} catch (JpaSystemException jse) {
LOGGER.error("Got JpaSystemException {} when verifikasi logbook dokter", jse.getMessage());
LOGGER.error("Got JpaSystemException {} when verifikasi logbook skor", jse.getMessage());
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
}
@ -2666,7 +2671,15 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
public ResponseEntity<Map<String, Object>> getLogbookRemunTarifDokter(HttpServletRequest request,
@PathVariable("idPegawai") Integer idPegawai, @PathVariable("bulan") String bulan) {
try {
Map<String, Object> result = pelayananPasienService.logbookRemunTarifDokter(idPegawai, bulan, null);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
YearMonth oct24 = YearMonth.parse("2024-09", formatter);
YearMonth month = YearMonth.parse(bulan, formatter);
Map<String, Object> result;
if (month.isBefore(oct24)) {
result = pelayananPasienService.logbookRemunTarifDokter(idPegawai, bulan, null);
} else {
result = remunerasiService.logbookRemunTarifDokter(idPegawai, bulan, null);
}
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
@ -2685,7 +2698,15 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
public ResponseEntity<List<Map<String, Object>>> getLogbookFfsTarifDokter(HttpServletRequest request,
@PathVariable("idPegawai") Integer idPegawai, @PathVariable("bulan") String bulan) {
try {
List<Map<String, Object>> result = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan, null);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
YearMonth oct24 = YearMonth.parse("2024-09", formatter);
YearMonth month = YearMonth.parse(bulan, formatter);
List<Map<String, Object>> result;
if (month.isBefore(oct24)) {
result = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan, null);
} else {
result = remunerasiService.logbookFfsTarifDokter(idPegawai, bulan, null);
}
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
@ -2704,7 +2725,15 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
public ResponseEntity<List<Map<String, Object>>> getLogbookFfsLuarTarifDokter(HttpServletRequest request,
@PathVariable("idPegawai") Integer idPegawai, @PathVariable("bulan") String bulan) {
try {
List<Map<String, Object>> result = pelayananPasienService.logbookFfsLuarTarifDokter(idPegawai, bulan, null);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
YearMonth oct24 = YearMonth.parse("2024-09", formatter);
YearMonth month = YearMonth.parse(bulan, formatter);
List<Map<String, Object>> result;
if (month.isBefore(oct24)) {
result = pelayananPasienService.logbookFfsLuarTarifDokter(idPegawai, bulan, null);
} else {
result = remunerasiService.logbookFfsLuarTarifDokter(idPegawai, bulan, null);
}
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
@ -2725,7 +2754,15 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
public ResponseEntity<List<Map<String, Object>>> getLogbookKlaimMpp(HttpServletRequest request,
@PathVariable("idPegawai") Integer idPegawai, @PathVariable("bulan") String bulan) {
try {
List<Map<String, Object>> result = pelayananPasienService.logbookKlaimMppDokter(idPegawai, bulan);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
YearMonth oct24 = YearMonth.parse("2024-09", formatter);
YearMonth month = YearMonth.parse(bulan, formatter);
List<Map<String, Object>> result;
if (month.isBefore(oct24)) {
result = pelayananPasienService.logbookKlaimMppDokter(idPegawai, bulan);
} else {
result = remunerasiService.logbookKlaimMppDokter(idPegawai, bulan);
}
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);
@ -2744,7 +2781,15 @@ public class IkiDanRemunerasiController extends LocaleController<IkiDanRemuneras
public ResponseEntity<List<Map<String, Object>>> getLogbookFixedPay(HttpServletRequest request,
@PathVariable("idPegawai") Integer idPegawai, @PathVariable("bulan") String bulan) {
try {
List<Map<String, Object>> result = pelayananPasienService.logbookFixedPayDokter(idPegawai, bulan, null);
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
YearMonth oct24 = YearMonth.parse("2024-09", formatter);
YearMonth month = YearMonth.parse(bulan, formatter);
List<Map<String, Object>> result;
if (month.isBefore(oct24)) {
result = pelayananPasienService.logbookFixedPayDokter(idPegawai, bulan, null);
} else {
result = remunerasiService.logbookFixedPayDokter(idPegawai, bulan, null);
}
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,
getMessage(MessageResource.LABEL_SUCCESS, request));
return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage);

View File

@ -65,4 +65,5 @@ public class RemunerasiController extends LocaleController<LogbookKinerjaVO> {
return new ResponseEntity<>(null, INTERNAL_SERVER_ERROR);
}
}
}