From f0d4c371959e8c799a174bec90f2343b7f9ae0a3 Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Thu, 4 May 2023 14:32:08 +0700 Subject: [PATCH] Create service json slip gaji --- .../medifirst2000/service/ReportService.java | 2 ++ .../service/impl/ReportServiceImpl.java | 17 ++++++++++++++ .../controller/ReportingController.java | 22 +++++++++++++++++-- 3 files changed, 39 insertions(+), 2 deletions(-) diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/ReportService.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/ReportService.java index 7be2bf23..49016421 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/ReportService.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/ReportService.java @@ -132,4 +132,6 @@ public interface ReportService extends BaseVoService Integer idRincianKegiatan); Map defineSlipGajiDataSource(Integer pegawaiId, Long bulan); + + List> allSlipGajiDataSource(Long bulan); } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java index 5bcb9cfb..2da2856d 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/ReportServiceImpl.java @@ -49,6 +49,7 @@ import com.jasamedika.medifirst2000.dao.PencatatanSuhuMesinDao; import com.jasamedika.medifirst2000.dao.PlanningPegawaiStatusDao; import com.jasamedika.medifirst2000.dao.ReportingDao; import com.jasamedika.medifirst2000.dao.SettingDataFixedDao; +import com.jasamedika.medifirst2000.dao.SlipGajiDao; import com.jasamedika.medifirst2000.dao.StatusPegawaiDao; import com.jasamedika.medifirst2000.dao.UnitKerjaDao; import com.jasamedika.medifirst2000.dao.custom.LimbahB3MasukDaoCustom; @@ -164,6 +165,9 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic @Autowired private HistoriUsulanRincianKegiatanDao historiUsulanRincianKegiatanDao; + @Autowired + private SlipGajiDao slipGajiDao; + private static final String[] INDONESIAN_WEEK = new String[] { "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu", "Minggu" }; @@ -3521,4 +3525,17 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic return result; } + @Override + public List> allSlipGajiDataSource(Long bulan) { + List> result = new ArrayList<>(); + Date month = new Date(bulan); + Date start = DateUtil.startMonth(month); + Date end = DateUtil.endMonth(month); + List listIdPegawai = slipGajiDao.findPegawaiByBulan(start, end); + for (Integer idPegawai : listIdPegawai) { + result.add(this.defineSlipGajiDataSource(idPegawai, bulan)); + } + return result; + } + } diff --git a/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java b/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java index 89e609ac..1ef515c6 100644 --- a/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java +++ b/jasamedika-reporting/src/main/java/com/jasamedika/medifirst2000/controller/ReportingController.java @@ -7840,8 +7840,7 @@ public class ReportingController extends LocaleController } @RequestMapping("/slipGaji") - public ModelAndView getSlipGaji(ModelAndView m, - @RequestParam(value = "format", required = false) String format, + public ModelAndView getSlipGaji(ModelAndView m, @RequestParam(value = "format", required = false) String format, @RequestParam(value = "bulan", required = true) Long bulan) { List> dataSource = new ArrayList<>(); LoginUser loginUser = loginUserService.getLoginUser(); @@ -7856,4 +7855,23 @@ public class ReportingController extends LocaleController return m; } + @RequestMapping(value = "/slip-gaji/json", method = RequestMethod.GET) + public ResponseEntity>> jsonSlipGaji(HttpServletRequest request, + @RequestParam(value = "bulan", required = true) Long bulan) { + try { + List> result = reportService.allSlipGajiDataSource(bulan); + mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS, + getMessage(MessageResource.LABEL_SUCCESS, request)); + return RestUtil.getJsonResponse(result, HttpStatus.OK, mapHeaderMessage); + } catch (ServiceVOException sve) { + LOGGER.error("Got exception {} when get json slip gaji", sve.getMessage()); + addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, sve.getMessage()); + return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR, mapHeaderMessage); + } catch (JpaSystemException jse) { + LOGGER.error("Got exception {} when get json slip gaji", jse.getMessage()); + addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage()); + return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage); + } + } + }