Merge branch 'dev/base' into dev/integrasi/minio

This commit is contained in:
Salman Manoe 2025-03-19 11:01:09 +07:00
commit 4b9f6ad740
4 changed files with 71 additions and 4 deletions

View File

@ -1,5 +1,6 @@
package com.jasamedika.medifirst2000.dao;
import com.jasamedika.medifirst2000.dto.PegawaiStatusDto;
import com.jasamedika.medifirst2000.entities.Jabatan;
import com.jasamedika.medifirst2000.entities.Pegawai;
import com.jasamedika.medifirst2000.vo.PegawaiVO;
@ -1051,4 +1052,18 @@ public interface PegawaiDao extends JpaRepository<Pegawai, Integer>, JpaSpecific
+ "and pg.objectjenispegawaifk = 1 " + "and pg.idfinger is not null " + "and pg.idfinger <> '9999999' "
+ "and pg.idfinger <> '' " + "order by cast(pg.idfinger as int)", nativeQuery = true)
List<String> findLabelFaceByJenisPegawaiDokter();
@Query("select new com.jasamedika.medifirst2000.dto.PegawaiStatusDto(" +
"pg.idFinger as idFinger," +
"kp.kategoryPegawai as kategori," +
"pk.namaPangkat as pangkat," +
"gp.golonganPegawai as golongan," +
"pg.tglMasuk as tmtMasuk," +
"pg.tglPensiun as tmtPensiun) " +
"from Pegawai pg " +
"left join pg.kategoryPegawai kp " +
"left join pg.pangkat pk " +
"left join pk.kdGolonganPegawai gp " +
"where pg.id = :pegawaiId")
PegawaiStatusDto findStatusById(@Param("pegawaiId") Integer idPegawai);
}

View File

@ -4,6 +4,7 @@ import com.jasamedika.medifirst2000.constants.Master;
import com.jasamedika.medifirst2000.converter.BaseConverterImpl;
import com.jasamedika.medifirst2000.dao.*;
import com.jasamedika.medifirst2000.dao.custom.PegawaiDaoCustom;
import com.jasamedika.medifirst2000.dto.PegawaiStatusDto;
import com.jasamedika.medifirst2000.entities.*;
import com.jasamedika.medifirst2000.service.MonitoringAbsenService;
import com.jasamedika.medifirst2000.util.CommonUtil;
@ -1390,7 +1391,8 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
}
for (Integer id : listIdPegawaiFilter) {
String idFinger = pegawaiDao.getidFinger(id);
PegawaiStatusDto pegawaiStatus = pegawaiDao.findStatusById(id);
String idFinger = pegawaiStatus.getIdFinger();
Map<String, Object> rsMap = new HashMap<>();
List<Map<String, Object>> listkehadiran = new ArrayList<>();
Integer harikerja = 0;
@ -1487,6 +1489,11 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
data.put("jadwalMasuk", jamMasuk);
data.put("jadwalPulang", jamPulang);
data.put("idFinger", idFinger);
data.put("kategori", pegawaiStatus.getKategori());
data.put("pangkat", pegawaiStatus.getPangkat());
data.put("golongan", pegawaiStatus.getGolongan());
data.put("tmtMasuk", pegawaiStatus.getTmtMasuk());
data.put("tmtPensiun", pegawaiStatus.getTmtPensiun());
List<Map<String, Object>> listAbsensi;
if (tanggal.equals(tglRilisFiturPresensi) || tanggal.after(tglRilisFiturPresensi)) {

View File

@ -1822,6 +1822,7 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
}
private List<Map<String, Object>> transformPelayananPaket(Integer idPegawai, List<Map<String, Object>> listData) {
Date tmtPersalinanTotalTarif = new Date(1738342800000L);
List<Integer> drKsmObgyn = pegawaiDao.getDokterByKsm(KSM_OBGYN);
List<Integer> terapisRehabMedik = mapJabatanProfesiDao.findIdPegawaiByProfesiIn(Arrays.asList(TERAPI));
SimpleDateFormat month = new SimpleDateFormat("MMM-yyyy", new Locale("in", "ID"));
@ -1939,7 +1940,11 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
? byDetailTarifNonKelas.get().getHargaNetto1()
: byDetailTarifNonKelas.get().getHargaSatuan()));
}
} else if (DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))) {
} else if ((!drKsmObgyn.contains(idPegawai) && DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))
&& ((Date) d.get("tglPelayanan")).before(tmtPersalinanTotalTarif))
|| (DOKTER_PEMERIKSA.equals(d.get("idJenisPelaksana"))
&& (d.get("tglPelayanan").equals(tmtPersalinanTotalTarif)
|| ((Date) d.get("tglPelayanan")).after(tmtPersalinanTotalTarif)))) {
Optional<HargaNettoProdukByKelasD> byDetailTarif = tarifDetailReguler.stream()
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))
.filter(dt -> dt.getKelasId().equals(d.get("idKelas")))
@ -1957,7 +1962,11 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
? byDetailTarifNonKelas.get().getHargaNetto1()
: byDetailTarifNonKelas.get().getHargaSatuan()));
}
} else if (ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))) {
} else if ((!drKsmObgyn.contains(idPegawai) && ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))
&& ((Date) d.get("tglPelayanan")).before(tmtPersalinanTotalTarif))
|| (ASISTEN_SPESIALIS.equals(d.get("idJenisPelaksana"))
&& (d.get("tglPelayanan").equals(tmtPersalinanTotalTarif)
|| ((Date) d.get("tglPelayanan")).after(tmtPersalinanTotalTarif)))) {
Optional<HargaNettoProdukByKelasD> byDetailTarif = tarifDetailReguler.stream()
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))
.filter(dt -> dt.getKelasId().equals(d.get("idKelas")))
@ -1975,7 +1984,11 @@ public class RemunerasiServiceImpl extends BaseVoServiceImpl implements Remunera
? byDetailTarifNonKelas.get().getHargaNetto1()
: byDetailTarifNonKelas.get().getHargaSatuan()));
}
} else if (DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))) {
} else if ((!drKsmObgyn.contains(idPegawai) && DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))
&& ((Date) d.get("tglPelayanan")).before(tmtPersalinanTotalTarif))
|| (DOKTER_ANASTESI.equals(d.get("idJenisPelaksana"))
&& (d.get("tglPelayanan").equals(tmtPersalinanTotalTarif)
|| ((Date) d.get("tglPelayanan")).after(tmtPersalinanTotalTarif)))) {
Optional<HargaNettoProdukByKelasD> byDetailTarif = tarifDetailReguler.stream()
.filter(dt -> dt.getProdukId().equals(d.get("idProduk")))
.filter(dt -> dt.getKelasId().equals(d.get("idKelas")))

View File

@ -0,0 +1,32 @@
package com.jasamedika.medifirst2000.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* @author Salman
* @version 1.0.0
* @since 3/19/2025
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class PegawaiStatusDto {
private String idFinger;
private String kategori;
private String pangkat;
private String golongan;
private Date tmtMasuk;
private Date tmtPensiun;
}