From ba86f9f459e111ce090e1c9bd3f6431680dd6e1d Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Fri, 7 Jun 2024 13:56:53 +0700 Subject: [PATCH] Update pelayanan pasien service Pembuatan api untuk aplikasi remunerasi android --- .../medifirst2000/dao/JenisLogbookDao.java | 12 + .../service/PelayananPasienService.java | 10 +- .../impl/PelayananPasienServiceImpl.java | 209 +++++++++++++++++- .../task/schedule/LogbookTask.java | 17 +- .../IkiDanRemunerasiController.java | 104 ++++++--- .../controller/RemunerasiController.java | 55 +++++ 6 files changed, 348 insertions(+), 59 deletions(-) create mode 100644 jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/JenisLogbookDao.java create mode 100644 jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/RemunerasiController.java diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/JenisLogbookDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/JenisLogbookDao.java new file mode 100644 index 00000000..65530373 --- /dev/null +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/JenisLogbookDao.java @@ -0,0 +1,12 @@ +package com.jasamedika.medifirst2000.dao; + +import com.jasamedika.medifirst2000.entities.JenisLogbook; +import org.springframework.data.jpa.repository.JpaRepository; + +/** + * @author salmanoe + * @version 1.0.0 + * @since 05/06/2024 + */ +public interface JenisLogbookDao extends JpaRepository { +} diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/PelayananPasienService.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/PelayananPasienService.java index 10093bbb..85a24198 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/PelayananPasienService.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/PelayananPasienService.java @@ -22,17 +22,19 @@ public interface PelayananPasienService { String resetKlaimDiskon(String noRegistrasi); + List> rekapLogbook(Integer idPegawai, String bulan); + Map splitRemunFfs(Integer idPegawai, String bulan); - Map logbookRemunTarifDokter(Integer idPegawai, String bulan); + Map logbookRemunTarifDokter(Integer idPegawai, String bulan, Map data); - List> logbookFfsTarifDokter(Integer idPegawai, String bulan); + List> logbookFfsTarifDokter(Integer idPegawai, String bulan, Map data); - List> logbookFfsLuarTarifDokter(Integer idPegawai, String bulan); + List> logbookFfsLuarTarifDokter(Integer idPegawai, String bulan, Map data); List> logbookKlaimMppDokter(Integer idPegawai, String bulan); - List> logbookFixedPayDokter(Integer idPegawai, String bulan); + List> logbookFixedPayDokter(Integer idPegawai, String bulan, Map data); List> detailLogbookTarifDokter(Integer idPegawai, List norecs); diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java index d100c33b..5c8ded93 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PelayananPasienServiceImpl.java @@ -20,10 +20,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletRequest; import java.text.*; -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.LocalTime; -import java.time.ZoneId; +import java.time.*; import java.time.format.DateTimeFormatter; import java.util.*; import java.util.stream.Collectors; @@ -473,6 +470,173 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel return result; } + @Override + public List> rekapLogbook(Integer idPegawai, String bulan) { + Locale indonesia = new Locale("in", "ID"); + NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia); + String def = nf.format(0.0); + List> result = new ArrayList<>(); + Map data = this.splitRemunFfs(idPegawai, bulan); + Map jkn = rekapLogbookJkn(idPegawai, bulan, data); + Map nonJknDalamJamKerja = rekapLogbookNonJknDalamJamKerja(idPegawai, bulan, data); + Map nonJknLuarJamKerja = rekapLogbookNonJknLuarJamKerja(idPegawai, bulan, data); + Map fixedPay = rekapLogbookFixedPay(idPegawai, bulan, data); + + result.add(jkn); + result.add(nonJknDalamJamKerja); + result.add(nonJknLuarJamKerja); + result.add(fixedPay); + return result; + } + + private List> detailRekapLogbook(List> data, String bulan) { + Locale indonesia = new Locale("in", "ID"); + NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia); + DateTimeFormatter monthFormatter = DateTimeFormatter.ofPattern("yyyy-MM"); + DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + DateTimeFormatter tanggalFormatter = DateTimeFormatter.ofPattern("dd-MM-yyyy"); + YearMonth localMonth = YearMonth.parse(bulan, monthFormatter); + List> detailTanggal = new ArrayList<>(); + data.forEach(d -> { + List> detail = (List>) d.get("detail"); + detail.forEach(tail -> tail.put("hargaJasa", Double.parseDouble(d.get("hargaJasa").toString()))); + detailTanggal.addAll(detail); + }); + LocalDate startDate = localMonth.atDay(1); + LocalDate endDate = localMonth.atEndOfMonth(); + List> result = new ArrayList<>(); + for (LocalDate date = startDate; date.isBefore(endDate) || date.isEqual(endDate); date = date.plusDays(1)) { + String tanggal = dateFormatter.format(date); + double jumlahHargaJasa = detailTanggal.stream() + .filter(tail -> tail.get("tanggal").toString().equals(tanggal)) + .mapToDouble(tail -> Double.parseDouble(tail.get("hargaJasa").toString()) + * Double.parseDouble(tail.get("jumlah").toString())) + .sum(); + Map capaianTanggal = new HashMap<>(); + capaianTanggal.put("tanggal", tanggalFormatter.format(date)); + capaianTanggal.put("capaian", nf.format(jumlahHargaJasa)); + { + List> deskripsi = new ArrayList<>(); + data.forEach(d -> { + Map detailDeskripsi = new HashMap<>(); + List> detailData = (List>) d.get("detail"); + detailData.stream().filter(tail -> tail.get("tanggal").toString().equals(tanggal)).findFirst() + .ifPresent(tail -> { + detailDeskripsi.put("layanan", d.get("namaProduk").toString()); + if (CommonUtil.isNotNullOrEmpty(d.get("persenJasa"))) { + detailDeskripsi.put("tarifJasa", + nf.format(Double.parseDouble(d.get("hargaJual").toString())) + "/" + + d.get("persenJasa").toString()); + } else { + detailDeskripsi.put("tarifJasa", + nf.format(Double.parseDouble(d.get("hargaJual").toString()))); + } + detailDeskripsi.put("remun", + nf.format(Double.parseDouble(d.get("hargaJasa").toString()))); + detailDeskripsi.put("jumlah", tail.get("jumlah").toString()); + detailDeskripsi.put("keterangan", d.get("keterangan").toString()); + }); + if (CommonUtil.isNotNullOrEmpty(detailDeskripsi)) + deskripsi.add(detailDeskripsi); + }); + capaianTanggal.put("deskripsi", deskripsi); + } + result.add(capaianTanggal); + } + return result; + } + + private Map rekapLogbookJkn(Integer idPegawai, String bulan, Map remun) { + Locale indonesia = new Locale("in", "ID"); + NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia); + String def = nf.format(0.0); + Map result = new HashMap<>(); + result.put("id", "JKN"); + result.put("capaian", def); + Map logbook = logbookRemunTarifDokter(idPegawai, bulan, remun); + if (!logbook.isEmpty() && CommonUtil.isNotNullOrEmpty(logbook.get("data"))) { + List> data = (List>) logbook.get("data"); + { + double jumlahHargaJasa = data.stream() + .mapToDouble(d -> Double.parseDouble(d.get("jumlahHargaJasa").toString())).sum(); + result.put("capaian", nf.format(jumlahHargaJasa)); + } + { + List> detail = detailRekapLogbook(data, bulan); + result.put("detail", detail); + } + } + return result; + } + + private Map rekapLogbookNonJknDalamJamKerja(Integer idPegawai, String bulan, + Map remun) { + Locale indonesia = new Locale("in", "ID"); + NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia); + String def = nf.format(0.0); + Map result = new HashMap<>(); + result.put("id", "NON_JKN_DALAM"); + result.put("capaian", def); + List> data = logbookFfsTarifDokter(idPegawai, bulan, remun); + if (!data.isEmpty()) { + { + double jumlahHargaJasa = data.stream() + .mapToDouble(d -> Double.parseDouble(d.get("jumlahHargaJasa").toString())).sum(); + result.put("capaian", nf.format(jumlahHargaJasa)); + } + { + List> detail = detailRekapLogbook(data, bulan); + result.put("detail", detail); + } + } + return result; + } + + private Map rekapLogbookNonJknLuarJamKerja(Integer idPegawai, String bulan, + Map remun) { + Locale indonesia = new Locale("in", "ID"); + NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia); + String def = nf.format(0.0); + Map result = new HashMap<>(); + result.put("id", "NON_JKN_LUAR"); + result.put("capaian", def); + List> data = logbookFfsLuarTarifDokter(idPegawai, bulan, remun); + if (!data.isEmpty()) { + { + double jumlahHargaJasa = data.stream() + .mapToDouble(d -> Double.parseDouble(d.get("jumlahHargaJasa").toString())).sum(); + result.put("capaian", nf.format(jumlahHargaJasa)); + } + { + List> detail = detailRekapLogbook(data, bulan); + result.put("detail", detail); + } + } + return result; + } + + private Map rekapLogbookFixedPay(Integer idPegawai, String bulan, Map remun) { + Locale indonesia = new Locale("in", "ID"); + NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia); + String def = nf.format(0.0); + Map result = new HashMap<>(); + result.put("id", "FIXED_PAY"); + result.put("capaian", def); + List> data = logbookFixedPayDokter(idPegawai, bulan, remun); + if (!data.isEmpty()) { + { + double jumlahHargaJasa = data.stream() + .mapToDouble(d -> Double.parseDouble(d.get("jumlahHargaJasa").toString())).sum(); + result.put("capaian", nf.format(jumlahHargaJasa)); + } + { + List> detail = detailRekapLogbook(data, bulan); + result.put("detail", detail); + } + } + return result; + } + @Override public Map splitRemunFfs(Integer idPegawai, String bulan) { Map result = new HashMap<>(); @@ -1980,7 +2144,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel } @Override - public Map logbookRemunTarifDokter(Integer idPegawai, String bulan) { + public Map logbookRemunTarifDokter(Integer idPegawai, String bulan, Map data) { Map result = new HashMap<>(); List listIdProduk = new ArrayList<>(); List listPersenJasa = new ArrayList<>(); @@ -1998,7 +2162,12 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel } Locale indonesia = new Locale("in", "ID"); NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia); - Map remunFfs = this.splitRemunFfs(idPegawai, bulan); + Map remunFfs; + if (CommonUtil.isNotNullOrEmpty(data)) { + remunFfs = data; + } else { + remunFfs = this.splitRemunFfs(idPegawai, bulan); + } @SuppressWarnings("unchecked") List> listData = (List>) remunFfs.get("remun"); Double target = Double.parseDouble(remunFfs.get("targetRemun").toString()); @@ -2371,7 +2540,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel } @Override - public List> logbookFfsTarifDokter(Integer idPegawai, String bulan) { + public List> logbookFfsTarifDokter(Integer idPegawai, String bulan, Map data) { List listIdProduk = new ArrayList<>(); List listPersenJasa = new ArrayList<>(); List listHargaJasa = new ArrayList<>(); @@ -2389,7 +2558,12 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel } Locale indonesia = new Locale("in", "ID"); NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia); - Map remunFfs = this.splitRemunFfs(idPegawai, bulan); + Map remunFfs; + if (CommonUtil.isNotNullOrEmpty(data)) { + remunFfs = data; + } else { + remunFfs = this.splitRemunFfs(idPegawai, bulan); + } @SuppressWarnings("unchecked") List> listData = (List>) remunFfs.get("ffs"); /* @@ -2633,7 +2807,8 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel } @Override - public List> logbookFfsLuarTarifDokter(Integer idPegawai, String bulan) { + public List> logbookFfsLuarTarifDokter(Integer idPegawai, String bulan, + Map data) { List listIdProduk = new ArrayList<>(); List listPersenJasa = new ArrayList<>(); List listHargaJasa = new ArrayList<>(); @@ -2651,7 +2826,12 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel } Locale indonesia = new Locale("in", "ID"); NumberFormat nf = NumberFormat.getCurrencyInstance(indonesia); - Map remunFfs = this.splitRemunFfs(idPegawai, bulan); + Map remunFfs; + if (CommonUtil.isNotNullOrEmpty(data)) { + remunFfs = data; + } else { + remunFfs = this.splitRemunFfs(idPegawai, bulan); + } @SuppressWarnings("unchecked") List> listData = (List>) remunFfs.get("ffs-luar"); /* @@ -3266,8 +3446,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel } @Override - public List> logbookFixedPayDokter(Integer idPegawai, String bulan) { - Map remunFixedPay = this.splitRemunFfs(idPegawai, bulan); + public List> logbookFixedPayDokter(Integer idPegawai, String bulan, Map data) { + Map remunFixedPay; + if (CommonUtil.isNotNullOrEmpty(data)) { + remunFixedPay = data; + } else { + remunFixedPay = this.splitRemunFfs(idPegawai, bulan); + } @SuppressWarnings("unchecked") List> listData = (List>) remunFixedPay.get("fixed-pay"); return listData; diff --git a/jasamedika-pelayanan/src/main/java/com/jasamedika/medifirst2000/task/schedule/LogbookTask.java b/jasamedika-pelayanan/src/main/java/com/jasamedika/medifirst2000/task/schedule/LogbookTask.java index 49624365..8520c089 100644 --- a/jasamedika-pelayanan/src/main/java/com/jasamedika/medifirst2000/task/schedule/LogbookTask.java +++ b/jasamedika-pelayanan/src/main/java/com/jasamedika/medifirst2000/task/schedule/LogbookTask.java @@ -84,7 +84,8 @@ public class LogbookTask { List models = new ArrayList<>(); idPegawaiByTglPelayanan.forEach(idPegawai -> { { - Map kinerjaDokter = pelayananPasienService.logbookRemunTarifDokter(idPegawai, bulan); + Map kinerjaDokter = pelayananPasienService.logbookRemunTarifDokter(idPegawai, bulan, + null); List> remun = (List>) kinerjaDokter.get("data"); List listIdKelompokPasien = new ArrayList<>(); remun.forEach(r -> { @@ -113,7 +114,7 @@ public class LogbookTask { }); } { - List> ffs = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan); + List> ffs = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan, null); List listJenisRuangan = new ArrayList<>(); List listIdKelompokPasien = new ArrayList<>(); ffs.forEach(r -> { @@ -149,7 +150,8 @@ public class LogbookTask { })); } { - List> fixedPay = pelayananPasienService.logbookFixedPayDokter(idPegawai, bulan); + List> fixedPay = pelayananPasienService.logbookFixedPayDokter(idPegawai, bulan, + null); List listJenisRuangan = new ArrayList<>(); List listIdKelompokPasien = new ArrayList<>(); List listBulanIbuPulangRanap = new ArrayList<>(); @@ -236,7 +238,7 @@ public class LogbookTask { LogbookRemun savedRemun = logbookRemunDao.save(logbookRemun); { Map kinerjaDokter = pelayananPasienService.logbookRemunTarifDokter(idPegawai, - bulan); + bulan, null); List> remun = (List>) kinerjaDokter.get("data"); for (Map map : remun) { List listNorecPelayananPasienPetugas = new ArrayList<>(); @@ -294,7 +296,8 @@ public class LogbookTask { } } { - List> ffs = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan); + List> ffs = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan, + null); for (Map fee : ffs) { List listNorecPelayananPasienPetugas = new ArrayList<>(); { @@ -353,7 +356,7 @@ public class LogbookTask { } { List> ffs = pelayananPasienService.logbookFfsLuarTarifDokter(idPegawai, - bulan); + bulan, null); for (Map fee : ffs) { List listNorecPelayananPasienPetugas = new ArrayList<>(); { @@ -412,7 +415,7 @@ public class LogbookTask { } { List> fixedPay = pelayananPasienService.logbookFixedPayDokter(idPegawai, - bulan); + bulan, null); for (Map pay : fixedPay) { List listNorecPelayananPasienPetugas = new ArrayList<>(); { diff --git a/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java index 4ebbdcab..b4d48439 100644 --- a/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java +++ b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/IkiDanRemunerasiController.java @@ -283,11 +283,13 @@ public class IkiDanRemunerasiController extends LocaleController> getLogbookRemunTarifDokter(HttpServletRequest request, @PathVariable("idPegawai") Integer idPegawai, @PathVariable("bulan") String bulan) { try { - Map result = pelayananPasienService.logbookRemunTarifDokter(idPegawai, bulan); + Map result = pelayananPasienService.logbookRemunTarifDokter(idPegawai, bulan, null); mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage); @@ -2653,7 +2685,7 @@ public class IkiDanRemunerasiController extends LocaleController>> getLogbookFfsTarifDokter(HttpServletRequest request, @PathVariable("idPegawai") Integer idPegawai, @PathVariable("bulan") String bulan) { try { - List> result = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan); + List> result = pelayananPasienService.logbookFfsTarifDokter(idPegawai, bulan, null); mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage); @@ -2672,7 +2704,7 @@ public class IkiDanRemunerasiController extends LocaleController>> getLogbookFfsLuarTarifDokter(HttpServletRequest request, @PathVariable("idPegawai") Integer idPegawai, @PathVariable("bulan") String bulan) { try { - List> result = pelayananPasienService.logbookFfsLuarTarifDokter(idPegawai, bulan); + List> result = pelayananPasienService.logbookFfsLuarTarifDokter(idPegawai, bulan, null); mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage); @@ -2712,7 +2744,7 @@ public class IkiDanRemunerasiController extends LocaleController>> getLogbookFixedPay(HttpServletRequest request, @PathVariable("idPegawai") Integer idPegawai, @PathVariable("bulan") String bulan) { try { - List> result = pelayananPasienService.logbookFixedPayDokter(idPegawai, bulan); + List> result = pelayananPasienService.logbookFixedPayDokter(idPegawai, bulan, null); mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage); diff --git a/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/RemunerasiController.java b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/RemunerasiController.java new file mode 100644 index 00000000..e0cc7170 --- /dev/null +++ b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/RemunerasiController.java @@ -0,0 +1,55 @@ +package com.jasamedika.medifirst2000.controller; + +import com.jasamedika.medifirst2000.constants.MessageResource; +import com.jasamedika.medifirst2000.controller.base.LocaleController; +import com.jasamedika.medifirst2000.exception.ServiceVOException; +import com.jasamedika.medifirst2000.service.PelayananPasienService; +import com.jasamedika.medifirst2000.util.rest.RestUtil; +import com.jasamedika.medifirst2000.vo.LogbookKinerjaVO; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.ResponseEntity; +import org.springframework.orm.jpa.JpaSystemException; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletRequest; +import java.util.List; +import java.util.Map; + +import static com.jasamedika.medifirst2000.constants.Constants.MessageInfo.ERROR_MESSAGE; +import static com.jasamedika.medifirst2000.core.web.WebConstants.HttpHeaderInfo.LABEL_SUCCESS; +import static org.springframework.http.HttpStatus.INTERNAL_SERVER_ERROR; +import static org.springframework.http.HttpStatus.OK; + +/** + * @author salmanoe + * @version 1.0.0 + * @since 04/06/2024 + */ +@RestController +@RequestMapping("/remun") +public class RemunerasiController extends LocaleController { + + private static final Logger LOGGER = LoggerFactory.getLogger(RemunerasiController.class); + + @Autowired + private PelayananPasienService pelayananPasienService; + + @RequestMapping(value = "/logbook-tarif/{idPegawai}/{bulan}", method = RequestMethod.GET) + public ResponseEntity>> recap(HttpServletRequest request, + @PathVariable("idPegawai") Integer idPegawai, @PathVariable("bulan") String bulan) { + try { + List> result = pelayananPasienService.rekapLogbook(idPegawai, bulan); + mapHeaderMessage.put(LABEL_SUCCESS, getMessage(MessageResource.LABEL_SUCCESS, request)); + return RestUtil.getJsonResponse(result, OK, mapHeaderMessage); + } catch (ServiceVOException | JpaSystemException e) { + LOGGER.error("Got ServiceVOException {} when get recap remun", e.getMessage()); + addHeaderMessage(ERROR_MESSAGE, e.getMessage()); + return RestUtil.getJsonHttptatus(INTERNAL_SERVER_ERROR, mapHeaderMessage); + } + } +}