Merge remote-tracking branch 'origin/dev/base' into dev/remun/diskon-dokter

This commit is contained in:
Salman Manoe 2024-02-23 10:41:25 +07:00
commit 382dc1b064
18 changed files with 567 additions and 1408 deletions

2
.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
jasamedika-web/src/main/webapp/WEB-INF/web.xml

View File

@ -204,6 +204,8 @@ public final class Master {
public static final Integer KELEBIHAN_JAM_KERJA = 43; public static final Integer KELEBIHAN_JAM_KERJA = 43;
public static final Integer KELEBIHAN_TUNJANGAN = 40; public static final Integer KELEBIHAN_TUNJANGAN = 40;
public static final Integer PEMBULATAN = 42; public static final Integer PEMBULATAN = 42;
public static final Integer PINJAMAM_BRI_GAJI = 45;
public static final Integer PINJAMAN_BRI_REMUNERASI = 46;
public static final Integer PINJAMAN_KOPERASI_GAJI = 15; public static final Integer PINJAMAN_KOPERASI_GAJI = 15;
public static final Integer PINJAMAN_KOPERASI_REMUNERASI = 35; public static final Integer PINJAMAN_KOPERASI_REMUNERASI = 35;
public static final Integer POTONGAN_BPJSK = 20; public static final Integer POTONGAN_BPJSK = 20;

View File

@ -354,8 +354,9 @@ public interface PegawaiDao extends JpaRepository<Pegawai, Integer>, JpaSpecific
+ "pegawai.nilaiJabatan as nilaiJabatan," + "levelTingkat.id as idLevelTingkat," + "pegawai.nilaiJabatan as nilaiJabatan," + "levelTingkat.id as idLevelTingkat,"
+ "levelTingkat.levelTingkat as levelTingkat," + "pegawai.grade as grade," + "pegawai.noSip as noSip," + "levelTingkat.levelTingkat as levelTingkat," + "pegawai.grade as grade," + "pegawai.noSip as noSip,"
+ "pegawai.tglTerbitSip as tglTerbitSip," + "pegawai.tglBerakhirSip as tglBerakhirSip," + "pegawai.tglTerbitSip as tglTerbitSip," + "pegawai.tglBerakhirSip as tglBerakhirSip,"
+ "pegawai.noStr as noStr," + "pegawai.tglTerbitStr as tglTerbitStr," + "pegawai.isSipSeumurHidup as isSipSeumurHidup," + "pegawai.noStr as noStr,"
+ "pegawai.tglBerakhirStr as tglBerakhirStr," + "pegawai.gelarDepan as gelarDepan," + "pegawai.tglTerbitStr as tglTerbitStr," + "pegawai.tglBerakhirStr as tglBerakhirStr,"
+ "pegawai.isStrSeumurHidup as isStrSeumurHidup," + "pegawai.gelarDepan as gelarDepan,"
+ "pegawai.gelarBelakang as gelarBelakang," + "pegawai.tempatLahir as tempatLahir," + "pegawai.gelarBelakang as gelarBelakang," + "pegawai.tempatLahir as tempatLahir,"
+ "golongan.golonganPegawai as namaGolongan," + "agama.agama as agama," + "golongan.golonganPegawai as namaGolongan," + "agama.agama as agama,"
+ "detailKategoryPegawai.detailKategoryPegawai as detailKategoryPegawai," + "detailKategoryPegawai.detailKategoryPegawai as detailKategoryPegawai,"
@ -667,7 +668,8 @@ public interface PegawaiDao extends JpaRepository<Pegawai, Integer>, JpaSpecific
+ "left join mapPegawai.pegawai p " + "left join mapPegawai.subUnitKerjaPegawai subUnitKerja " + "left join mapPegawai.pegawai p " + "left join mapPegawai.subUnitKerjaPegawai subUnitKerja "
+ "left join mapPegawai.unitKerjaPegawai unitKerja " + "where mapPegawai.isPrimary is true " + "left join mapPegawai.unitKerjaPegawai unitKerja " + "where mapPegawai.isPrimary is true "
+ "and mapPegawai.statusEnabled is true " + "and p.statusEnabled is true " + "and p.id = :id " + "and mapPegawai.statusEnabled is true " + "and p.statusEnabled is true " + "and p.id = :id "
+ "and tglBerakhirSip <= :date " + "order by tglBerakhirSip, namaLengkap") + "and tglBerakhirSip <= :date " + "and p.isSipSeumurHidup is false "
+ "order by tglBerakhirSip, namaLengkap")
Map<String, Object> findSipExpiredByPegawai(@Param("date") Date date, @Param("id") Integer id); Map<String, Object> findSipExpiredByPegawai(@Param("date") Date date, @Param("id") Integer id);
@Query("select new map (p.id as id, " + "p.tglBerakhirStr as tglBerakhirStr, " @Query("select new map (p.id as id, " + "p.tglBerakhirStr as tglBerakhirStr, "
@ -677,7 +679,8 @@ public interface PegawaiDao extends JpaRepository<Pegawai, Integer>, JpaSpecific
+ "left join mapPegawai.pegawai p " + "left join mapPegawai.subUnitKerjaPegawai subUnitKerja " + "left join mapPegawai.pegawai p " + "left join mapPegawai.subUnitKerjaPegawai subUnitKerja "
+ "left join mapPegawai.unitKerjaPegawai unitKerja " + "where mapPegawai.isPrimary is true " + "left join mapPegawai.unitKerjaPegawai unitKerja " + "where mapPegawai.isPrimary is true "
+ "and mapPegawai.statusEnabled is true " + "and p.statusEnabled is true " + "and p.id = :id " + "and mapPegawai.statusEnabled is true " + "and p.statusEnabled is true " + "and p.id = :id "
+ "and tglBerakhirStr <= :date " + "order by tglBerakhirStr, namaLengkap") + "and tglBerakhirStr <= :date " + "and p.isStrSeumurHidup is false "
+ "order by tglBerakhirStr, namaLengkap")
Map<String, Object> findStrExpiredByPegawai(@Param("date") Date date, @Param("id") Integer id); Map<String, Object> findStrExpiredByPegawai(@Param("date") Date date, @Param("id") Integer id);
@Query("select new map (unitKerja.name as unitKerja, count(pegawai.id) as value )" @Query("select new map (unitKerja.name as unitKerja, count(pegawai.id) as value )"
@ -872,7 +875,8 @@ public interface PegawaiDao extends JpaRepository<Pegawai, Integer>, JpaSpecific
+ "pegawai.rekananId as rekananId," + "pegawai.statusRhesus as statusRhesus, " + "pegawai.rekananId as rekananId," + "pegawai.statusRhesus as statusRhesus, "
+ "pegawai.shiftKerjaId as shiftKerjaId, " + "pegawai.statusKawinId as statusKawinId, " + "pegawai.shiftKerjaId as shiftKerjaId, " + "pegawai.statusKawinId as statusKawinId, "
+ "pegawai.sukuId as sukuId, " + "pegawai.tempatLahir as tempatLahir, " + "pegawai.sukuId as sukuId, " + "pegawai.tempatLahir as tempatLahir, "
+ "pegawai.tglBerakhirSip as tglBerakhirSip, " + "pegawai.tglBerakhirStr as tglBerakhirStr, " + "pegawai.tglBerakhirSip as tglBerakhirSip, " + "pegawai.isSipSeumurHidup as isSipSeumurHidup, "
+ "pegawai.tglBerakhirStr as tglBerakhirStr, " + "pegawai.isStrSeumurHidup as isStrSeumurHidup, "
+ "pegawai.tglLahir as tglLahir, " + "pegawai.tglMasuk as tglMasuk, " + "pegawai.tglkeluar as tglkeluar, " + "pegawai.tglLahir as tglLahir, " + "pegawai.tglMasuk as tglMasuk, " + "pegawai.tglkeluar as tglkeluar, "
+ "pegawai.tglPensiun as tglPensiun, " + "pegawai.tglTerbitSip as tglTerbitSip, " + "pegawai.tglPensiun as tglPensiun, " + "pegawai.tglTerbitSip as tglTerbitSip, "
+ "pegawai.tglTerbitStr as tglTerbitStr, " + "pegawai.typePegawaiId as typePegawaiId) " + "pegawai.tglTerbitStr as tglTerbitStr, " + "pegawai.typePegawaiId as typePegawaiId) "

View File

@ -1,15 +1,5 @@
package com.jasamedika.medifirst2000.dao.custom.impl; package com.jasamedika.medifirst2000.dao.custom.impl;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import javax.persistence.Query;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import com.jasamedika.medifirst2000.constants.Master; import com.jasamedika.medifirst2000.constants.Master;
import com.jasamedika.medifirst2000.dao.PegawaiDao; import com.jasamedika.medifirst2000.dao.PegawaiDao;
import com.jasamedika.medifirst2000.dao.custom.PegawaiDaoCustom; import com.jasamedika.medifirst2000.dao.custom.PegawaiDaoCustom;
@ -17,6 +7,14 @@ import com.jasamedika.medifirst2000.dao.custom.base.impl.CoreDaoImpl;
import com.jasamedika.medifirst2000.entities.Pegawai; import com.jasamedika.medifirst2000.entities.Pegawai;
import com.jasamedika.medifirst2000.entities.PegawaiJadwalKerja; import com.jasamedika.medifirst2000.entities.PegawaiJadwalKerja;
import com.jasamedika.medifirst2000.util.CommonUtil; import com.jasamedika.medifirst2000.util.CommonUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import javax.persistence.Query;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/** /**
* Repository PegawaiDaoCustomImpl class * Repository PegawaiDaoCustomImpl class
@ -329,8 +327,9 @@ public class PegawaiDaoCustomImpl extends CoreDaoImpl<Pegawai> implements Pegawa
+ "pegawai.nilaiJabatan as nilaiJabatan," + "levelTingkat.id as idLevelTingkat," + "pegawai.nilaiJabatan as nilaiJabatan," + "levelTingkat.id as idLevelTingkat,"
+ "levelTingkat.levelTingkat as levelTingkat," + "pegawai.grade as grade," + "pegawai.noSip as noSip," + "levelTingkat.levelTingkat as levelTingkat," + "pegawai.grade as grade," + "pegawai.noSip as noSip,"
+ "pegawai.tglTerbitSip as tglTerbitSip," + "pegawai.tglBerakhirSip as tglBerakhirSip," + "pegawai.tglTerbitSip as tglTerbitSip," + "pegawai.tglBerakhirSip as tglBerakhirSip,"
+ "pegawai.noStr as noStr," + "pegawai.tglTerbitStr as tglTerbitStr," + "pegawai.isSipSeumurHidup as isSipSeumurHidup," + "pegawai.noStr as noStr,"
+ "pegawai.tglBerakhirStr as tglBerakhirStr," + "pegawai.gelarDepan as gelarDepan," + "pegawai.tglTerbitStr as tglTerbitStr," + "pegawai.tglBerakhirStr as tglBerakhirStr,"
+ "pegawai.isStrSeumurHidup as isStrSeumurHidup," + "pegawai.gelarDepan as gelarDepan,"
+ "pegawai.gelarBelakang as gelarBelakang," + "pegawai.tempatLahir as tempatLahir," + "pegawai.gelarBelakang as gelarBelakang," + "pegawai.tempatLahir as tempatLahir,"
+ "golongan.golonganPegawai as namaGolongan," + "agama.agama as agama," + "golongan.golonganPegawai as namaGolongan," + "agama.agama as agama,"
+ "detailKategoryPegawai.detailKategoryPegawai as detailKategoryPegawai," + "detailKategoryPegawai.detailKategoryPegawai as detailKategoryPegawai,"

View File

@ -1,67 +1,11 @@
package com.jasamedika.medifirst2000.service.impl; package com.jasamedika.medifirst2000.service.impl;
import java.io.UnsupportedEncodingException;
import java.security.NoSuchAlgorithmException;
import java.sql.Timestamp;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.jasamedika.medifirst2000.constants.Master; import com.jasamedika.medifirst2000.constants.Master;
import com.jasamedika.medifirst2000.converter.BaseConverterImpl; import com.jasamedika.medifirst2000.converter.BaseConverterImpl;
import com.jasamedika.medifirst2000.dao.EvaluasiJabatanDao; import com.jasamedika.medifirst2000.dao.*;
import com.jasamedika.medifirst2000.dao.HistoryDataPegawaiDao; import com.jasamedika.medifirst2000.entities.*;
import com.jasamedika.medifirst2000.dao.LoginUserDao; import com.jasamedika.medifirst2000.exception.ServiceVOException;
import com.jasamedika.medifirst2000.dao.MapPegawaiJabatanToUnitKerjaDao;
import com.jasamedika.medifirst2000.dao.PangkatDao;
import com.jasamedika.medifirst2000.dao.PegawaiDao;
import com.jasamedika.medifirst2000.dao.PegawaiJadwalKerjaDao;
import com.jasamedika.medifirst2000.entities.Agama;
import com.jasamedika.medifirst2000.entities.DetailKategoryPegawai;
import com.jasamedika.medifirst2000.entities.Dokumen;
import com.jasamedika.medifirst2000.entities.Eselon;
import com.jasamedika.medifirst2000.entities.Golongan;
import com.jasamedika.medifirst2000.entities.GolonganDarah;
import com.jasamedika.medifirst2000.entities.GolonganPegawai;
import com.jasamedika.medifirst2000.entities.HistoryDataPegawai;
import com.jasamedika.medifirst2000.entities.Jabatan;
import com.jasamedika.medifirst2000.entities.JenisKelamin;
import com.jasamedika.medifirst2000.entities.JenisPegawai;
import com.jasamedika.medifirst2000.entities.KategoryPegawai;
import com.jasamedika.medifirst2000.entities.Kedudukan;
import com.jasamedika.medifirst2000.entities.KelompokShift;
import com.jasamedika.medifirst2000.entities.KelompokUser;
import com.jasamedika.medifirst2000.entities.KualifikasiJurusan;
import com.jasamedika.medifirst2000.entities.LevelTingkat;
import com.jasamedika.medifirst2000.entities.LoginUser;
import com.jasamedika.medifirst2000.entities.MapPegawaiJabatanToUnitKerja;
import com.jasamedika.medifirst2000.entities.Negara;
import com.jasamedika.medifirst2000.entities.NilaiKelompokJabatan;
import com.jasamedika.medifirst2000.entities.Pangkat;
import com.jasamedika.medifirst2000.entities.Pegawai;
import com.jasamedika.medifirst2000.entities.Pendidikan;
import com.jasamedika.medifirst2000.entities.PenghasilanTidakKenaPajak;
import com.jasamedika.medifirst2000.entities.Rekanan;
import com.jasamedika.medifirst2000.entities.Ruangan;
import com.jasamedika.medifirst2000.entities.SatuanKerja;
import com.jasamedika.medifirst2000.entities.StatusPegawai;
import com.jasamedika.medifirst2000.entities.StatusPerkawinan;
import com.jasamedika.medifirst2000.entities.StatusPerkawinanPegawai;
import com.jasamedika.medifirst2000.entities.SubUnitKerjaPegawai;
import com.jasamedika.medifirst2000.entities.Suku;
import com.jasamedika.medifirst2000.entities.TypePegawai;
import com.jasamedika.medifirst2000.entities.UnitKerjaPegawai;
import com.jasamedika.medifirst2000.service.LoginUserService; import com.jasamedika.medifirst2000.service.LoginUserService;
import com.jasamedika.medifirst2000.service.PegawaiService; import com.jasamedika.medifirst2000.service.PegawaiService;
import com.jasamedika.medifirst2000.service.RekamDataPegawaiService; import com.jasamedika.medifirst2000.service.RekamDataPegawaiService;
@ -69,46 +13,22 @@ import com.jasamedika.medifirst2000.service.RiwayatJabatanService;
import com.jasamedika.medifirst2000.util.CommonUtil; import com.jasamedika.medifirst2000.util.CommonUtil;
import com.jasamedika.medifirst2000.util.DateUtil; import com.jasamedika.medifirst2000.util.DateUtil;
import com.jasamedika.medifirst2000.util.PasswordUtil; import com.jasamedika.medifirst2000.util.PasswordUtil;
import com.jasamedika.medifirst2000.vo.AgamaVO; import com.jasamedika.medifirst2000.vo.*;
import com.jasamedika.medifirst2000.vo.DetailKategoryPegawaiVO; import org.springframework.beans.factory.annotation.Autowired;
import com.jasamedika.medifirst2000.vo.DokumenVO; import org.springframework.stereotype.Service;
import com.jasamedika.medifirst2000.vo.EselonVO; import org.springframework.transaction.annotation.Transactional;
import com.jasamedika.medifirst2000.vo.GolonganDarahVO;
import com.jasamedika.medifirst2000.vo.GolonganPegawaiVO; import java.io.UnsupportedEncodingException;
import com.jasamedika.medifirst2000.vo.JabatanVO; import java.security.NoSuchAlgorithmException;
import com.jasamedika.medifirst2000.vo.JenisKelaminVO; import java.sql.Timestamp;
import com.jasamedika.medifirst2000.vo.JenisPegawaiVO; import java.text.DateFormat;
import com.jasamedika.medifirst2000.vo.KategoryPegawaiVO; import java.text.SimpleDateFormat;
import com.jasamedika.medifirst2000.vo.KedudukanVO; import java.util.*;
import com.jasamedika.medifirst2000.vo.KelompokShiftVO;
import com.jasamedika.medifirst2000.vo.KualifikasiJurusanVO;
import com.jasamedika.medifirst2000.vo.LevelTingkatVO;
import com.jasamedika.medifirst2000.vo.MapPegawaiJabatanToUnitKerjaVO;
import com.jasamedika.medifirst2000.vo.NegaraVO;
import com.jasamedika.medifirst2000.vo.NilaiKelompokJabatanVO;
import com.jasamedika.medifirst2000.vo.PangkatVO;
import com.jasamedika.medifirst2000.vo.PegawaiVO;
import com.jasamedika.medifirst2000.vo.PendidikanVO;
import com.jasamedika.medifirst2000.vo.PenghasilanTidakKenaPajakVO;
import com.jasamedika.medifirst2000.vo.RekamDataPegawaiCustomVO;
import com.jasamedika.medifirst2000.vo.RekamDataPegawaiVO;
import com.jasamedika.medifirst2000.vo.RekananVO;
import com.jasamedika.medifirst2000.vo.RiwayatJabatanVO;
import com.jasamedika.medifirst2000.vo.RuanganVO;
import com.jasamedika.medifirst2000.vo.SatuanKerjaVO;
import com.jasamedika.medifirst2000.vo.StatusPegawaiVO;
import com.jasamedika.medifirst2000.vo.StatusPerkawinanPegawaiVO;
import com.jasamedika.medifirst2000.vo.StatusPerkawinanVO;
import com.jasamedika.medifirst2000.vo.SubUnitKerjaPegawaiVO;
import com.jasamedika.medifirst2000.vo.SukuVO;
import com.jasamedika.medifirst2000.vo.TypePegawaiVO;
import com.jasamedika.medifirst2000.vo.UnitKerjaPegawaiVO;
/** /**
* Implement class for RekamDataPegawaiService * Implement class for RekamDataPegawaiService
* *
* @author Generator * @author Generator
* @param <T>
*/ */
@Service("rekamDataPegawaiService") @Service("rekamDataPegawaiService")
public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements RekamDataPegawaiService { public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements RekamDataPegawaiService {
@ -251,7 +171,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
@Override @Override
@Transactional @Transactional
public Map<String, Object> saveRekamDataPegawaiRev(RekamDataPegawaiVO vo) { public Map<String, Object> saveRekamDataPegawaiRev(RekamDataPegawaiVO vo) {
Map<String, Object> result = new HashMap<String, Object>(); Map<String, Object> result = new HashMap<>();
Pegawai pegawai = new Pegawai(); Pegawai pegawai = new Pegawai();
String perubahan = ""; String perubahan = "";
@ -820,7 +740,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
pegawai.setPangkat(pangkatConverter.transferVOToModel(vo.getPangkat(), new Pangkat())); pegawai.setPangkat(pangkatConverter.transferVOToModel(vo.getPangkat(), new Pangkat()));
perubahan += "ubah pangkat, "; perubahan += "ubah pangkat, ";
} }
/** /*
* field golongan dan golonganPegawai sudah deprecated karena * field golongan dan golonganPegawai sudah deprecated karena
* field pangkat sudah terasosiasi langsung dengan * field pangkat sudah terasosiasi langsung dengan
* golonganPegawai * golonganPegawai
@ -834,7 +754,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
} else if (CommonUtil.isNullOrEmpty(pegawai.getPangkat()) && CommonUtil.isNotNullOrEmpty(vo.getPangkat())) { } else if (CommonUtil.isNullOrEmpty(pegawai.getPangkat()) && CommonUtil.isNotNullOrEmpty(vo.getPangkat())) {
pegawai.setPangkat(pangkatConverter.transferVOToModel(vo.getPangkat(), new Pangkat())); pegawai.setPangkat(pangkatConverter.transferVOToModel(vo.getPangkat(), new Pangkat()));
perubahan += "pangkat, "; perubahan += "pangkat, ";
/** /*
* field golongan dan golonganPegawai sudah deprecated karena * field golongan dan golonganPegawai sudah deprecated karena
* field pangkat sudah terasosiasi langsung dengan * field pangkat sudah terasosiasi langsung dengan
* golonganPegawai * golonganPegawai
@ -848,7 +768,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
} else if (CommonUtil.isNotNullOrEmpty(pegawai.getPangkat()) && CommonUtil.isNullOrEmpty(vo.getPangkat())) { } else if (CommonUtil.isNotNullOrEmpty(pegawai.getPangkat()) && CommonUtil.isNullOrEmpty(vo.getPangkat())) {
pegawai.setPangkat(null); pegawai.setPangkat(null);
perubahan += "hapus pangkat, "; perubahan += "hapus pangkat, ";
/** /*
* field golongan dan golonganPegawai sudah deprecated karena * field golongan dan golonganPegawai sudah deprecated karena
* field pangkat sudah terasosiasi langsung dengan * field pangkat sudah terasosiasi langsung dengan
* golonganPegawai * golonganPegawai
@ -1063,7 +983,6 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
if (CommonUtil.isNotNullOrEmpty(pegawai.getPensiun()) && CommonUtil.isNotNullOrEmpty(usiaPensiun)) { if (CommonUtil.isNotNullOrEmpty(pegawai.getPensiun()) && CommonUtil.isNotNullOrEmpty(usiaPensiun)) {
if (!pegawai.getPensiun().equals(usiaPensiun)) { if (!pegawai.getPensiun().equals(usiaPensiun)) {
pegawai.setPensiun(usiaPensiun); pegawai.setPensiun(usiaPensiun);
;
perubahan += "hitung ulang usia pensiun, "; perubahan += "hitung ulang usia pensiun, ";
} }
} else if (CommonUtil.isNullOrEmpty(pegawai.getPensiun()) } else if (CommonUtil.isNullOrEmpty(pegawai.getPensiun())
@ -1123,6 +1042,22 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
perubahan += "hapus tanggal berakhir sip, "; perubahan += "hapus tanggal berakhir sip, ";
} }
if (CommonUtil.isNotNullOrEmpty(pegawai.getIsSipSeumurHidup())
&& CommonUtil.isNotNullOrEmpty(vo.getIsSipSeumurHidup())) {
if (!pegawai.getIsSipSeumurHidup().equals(vo.getIsSipSeumurHidup())) {
pegawai.setIsSipSeumurHidup(vo.getIsSipSeumurHidup());
perubahan += "ubah status SIP berlaku seumur hidup, ";
}
} else if (CommonUtil.isNullOrEmpty(pegawai.getIsSipSeumurHidup())
&& CommonUtil.isNotNullOrEmpty(vo.getIsSipSeumurHidup())) {
pegawai.setIsSipSeumurHidup(vo.getIsSipSeumurHidup());
perubahan += "status SIP berlaku seumur hidup, ";
} else if (CommonUtil.isNotNullOrEmpty(pegawai.getIsSipSeumurHidup())
&& CommonUtil.isNullOrEmpty(vo.getIsSipSeumurHidup())) {
pegawai.setIsSipSeumurHidup(vo.getIsSipSeumurHidup());
perubahan += "hapus status SIP berlaku seumur hidup, ";
}
if (CommonUtil.isNotNullOrEmpty(pegawai.getNoStr()) && CommonUtil.isNotNullOrEmpty(vo.getNoStr())) { if (CommonUtil.isNotNullOrEmpty(pegawai.getNoStr()) && CommonUtil.isNotNullOrEmpty(vo.getNoStr())) {
if (!pegawai.getNoStr().equals(vo.getNoStr())) { if (!pegawai.getNoStr().equals(vo.getNoStr())) {
pegawai.setNoStr(vo.getNoStr()); pegawai.setNoStr(vo.getNoStr());
@ -1168,6 +1103,22 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
perubahan += "hapus tanggal berakhir str, "; perubahan += "hapus tanggal berakhir str, ";
} }
if (CommonUtil.isNotNullOrEmpty(pegawai.getIsStrSeumurHidup())
&& CommonUtil.isNotNullOrEmpty(vo.getIsStrSeumurHidup())) {
if (!pegawai.getIsStrSeumurHidup().equals(vo.getIsStrSeumurHidup())) {
pegawai.setIsStrSeumurHidup(vo.getIsStrSeumurHidup());
perubahan += "ubah status STR berlaku seumur hidup, ";
}
} else if (CommonUtil.isNullOrEmpty(pegawai.getIsStrSeumurHidup())
&& CommonUtil.isNotNullOrEmpty(vo.getIsStrSeumurHidup())) {
pegawai.setIsStrSeumurHidup(vo.getIsStrSeumurHidup());
perubahan += "status STR berlaku seumur hidup, ";
} else if (CommonUtil.isNotNullOrEmpty(pegawai.getIsStrSeumurHidup())
&& CommonUtil.isNullOrEmpty(vo.getIsStrSeumurHidup())) {
pegawai.setIsStrSeumurHidup(vo.getIsStrSeumurHidup());
perubahan += "hapus status STR berlaku seumur hidup, ";
}
if (CommonUtil.isNotNullOrEmpty(pegawai.getTypePegawaiId()) if (CommonUtil.isNotNullOrEmpty(pegawai.getTypePegawaiId())
&& CommonUtil.isNotNullOrEmpty(vo.getTypePegawai())) { && CommonUtil.isNotNullOrEmpty(vo.getTypePegawai())) {
if (!pegawai.getTypePegawaiId().equals(vo.getTypePegawai().getId())) { if (!pegawai.getTypePegawaiId().equals(vo.getTypePegawai().getId())) {
@ -1455,7 +1406,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
if (CommonUtil.isNotNullOrEmpty(vo.getPangkat())) { if (CommonUtil.isNotNullOrEmpty(vo.getPangkat())) {
pegawai.setPangkat(pangkatConverter.transferVOToModel(vo.getPangkat(), new Pangkat())); pegawai.setPangkat(pangkatConverter.transferVOToModel(vo.getPangkat(), new Pangkat()));
perubahan += "pangkat, "; perubahan += "pangkat, ";
/** /*
* field golongan dan golonganPegawai sudah deprecated karena * field golongan dan golonganPegawai sudah deprecated karena
* field pangkat sudah terasosiasi langsung dengan * field pangkat sudah terasosiasi langsung dengan
* golonganPegawai * golonganPegawai
@ -1600,7 +1551,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
} }
// Simpan mapping jabatan untuk pegawai baru saja // Simpan mapping jabatan untuk pegawai baru saja
List<Map<String, Object>> listMappingId = new ArrayList<Map<String, Object>>(); List<Map<String, Object>> listMappingId = new ArrayList<>();
if (CommonUtil.isNotNullOrEmpty(vo.getMappingJabatan()) && CommonUtil.isNullOrEmpty(vo.getId())) { if (CommonUtil.isNotNullOrEmpty(vo.getMappingJabatan()) && CommonUtil.isNullOrEmpty(vo.getId())) {
for (MapPegawaiJabatanToUnitKerjaVO mapVo : vo.getMappingJabatan()) { for (MapPegawaiJabatanToUnitKerjaVO mapVo : vo.getMappingJabatan()) {
MapPegawaiJabatanToUnitKerja map = new MapPegawaiJabatanToUnitKerja(); MapPegawaiJabatanToUnitKerja map = new MapPegawaiJabatanToUnitKerja();
@ -1623,7 +1574,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
} }
} }
if (CommonUtil.isNotNullOrEmpty(mapVo.getNilaiJabatan())) { if (CommonUtil.isNotNullOrEmpty(mapVo.getNilaiJabatan())) {
if (mapVo.getNilaiJabatan().equals(0)) { if (mapVo.getNilaiJabatan() == 0.0) {
mapVo.setSumberData(null); mapVo.setSumberData(null);
} }
} }
@ -2057,7 +2008,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
List<Map<String, Object>> lnj = mapPegawaiJabatanToUnitKerjaDao List<Map<String, Object>> lnj = mapPegawaiJabatanToUnitKerjaDao
.findNilaiJabatanByPegawai(resultDomain.getId()); .findNilaiJabatanByPegawai(resultDomain.getId());
if (lnj.size() > 1) { if (lnj.size() > 1) {
if (!Boolean.valueOf(lnj.get(0).get("isPrimary").toString())) { if (!Boolean.parseBoolean(lnj.get(0).get("isPrimary").toString())) {
mapPegawaiJabatanToUnitKerjaDao.changeIsNotPrimary(resultDomain.getId(), mapPegawaiJabatanToUnitKerjaDao.changeIsNotPrimary(resultDomain.getId(),
Integer.valueOf(lnj.get(0).get("id").toString())); Integer.valueOf(lnj.get(0).get("id").toString()));
mapPegawaiJabatanToUnitKerjaDao.changeIsPrimary(resultDomain.getId(), mapPegawaiJabatanToUnitKerjaDao.changeIsPrimary(resultDomain.getId(),
@ -2087,9 +2038,8 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
@Override @Override
@Transactional @Transactional
public Map<String, Object> saveRekamDataPegawai(RekamDataPegawaiVO vo) { public Map<String, Object> saveRekamDataPegawai(RekamDataPegawaiVO vo) {
Map<String, Object> result = new HashMap<String, Object>(); Map<String, Object> result = new HashMap<>();
Map<String, Object> dataPegawai = new HashMap<String, Object>(); Map<String, Object> dataPegawai = new HashMap<>();
// BeanUtils.copyProperties(dest, orig);
Date currDate = new Date(); Date currDate = new Date();
Date start = DateUtil.startMonth(currDate); Date start = DateUtil.startMonth(currDate);
@ -2098,10 +2048,8 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
if (CommonUtil.isNotNullOrEmpty(vo)) { if (CommonUtil.isNotNullOrEmpty(vo)) {
try { try {
dataPegawai = vo.ToMap(); dataPegawai = vo.ToMap();
} catch (IllegalArgumentException e) { } catch (IllegalArgumentException | IllegalAccessException e) {
e.printStackTrace(); throw new ServiceVOException(e.getMessage());
} catch (IllegalAccessException e) {
e.printStackTrace();
} }
} }
Pegawai model = new Pegawai(); Pegawai model = new Pegawai();
@ -2110,13 +2058,6 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
} }
String perubahan = ""; String perubahan = "";
// model = rekamDataPegawaiConverter.transferVOToModel(vo, model);
// SET DATA NEGARA
// Negara negara = new Negara();
// negara.setId(0);
// model.setNegara(negara);
// model.setNoIdentitas(vo.getNoIdentitas());
model.setKdProfile((short) 0); model.setKdProfile((short) 0);
if (dataPegawai.containsKey("noIdentitas")) { if (dataPegawai.containsKey("noIdentitas")) {
@ -2314,7 +2255,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
} }
// Shift Kerja // Shift Kerja
if (CommonUtil.isNotNullOrEmpty(vo.getShiftKerja())) { if (CommonUtil.isNotNullOrEmpty(vo.getShiftKerja())) {
Integer currKelShift = 0; Integer currKelShift;
if (CommonUtil.isNotNullOrEmpty(vo.getId())) { if (CommonUtil.isNotNullOrEmpty(vo.getId())) {
currKelShift = pegawaiDao.getKelompokShiftByIdPegawai(vo.getId()); currKelShift = pegawaiDao.getKelompokShiftByIdPegawai(vo.getId());
if (CommonUtil.isNullOrEmpty(currKelShift)) { if (CommonUtil.isNullOrEmpty(currKelShift)) {
@ -2422,22 +2363,6 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
model.setDokumen(dokumenLamarConverter.transferVOToModel(vo.getDokumen(), new Dokumen())); model.setDokumen(dokumenLamarConverter.transferVOToModel(vo.getDokumen(), new Dokumen()));
perubahan += "dokumen lamar, "; perubahan += "dokumen lamar, ";
} }
// Atasan Langsung
// if (CommonUtil.isNotNullOrEmpty(vo.getAtasanLangsung())) {
// model.setAtasanLangsung(
// pegawaiConverter.transferVOToModel(vo.getAtasanLangsung(), new
// Pegawai()));
// perubahan += "atasan langsung, ";
// }
// Pejabat Penilai
// if (CommonUtil.isNotNullOrEmpty(vo.getPejabatPenilai())) {
// model.setPejabatPenilai(
// pegawaiConverter.transferVOToModel(vo.getPejabatPenilai(), new
// Pegawai()));
// perubahan += "pejabat penilai, ";
// }
if (dataPegawai.containsKey("nilaiJabatan")) { if (dataPegawai.containsKey("nilaiJabatan")) {
model.setNilaiJabatan(vo.getNilaiJabatan()); model.setNilaiJabatan(vo.getNilaiJabatan());
perubahan += "nilai jabatan, "; perubahan += "nilai jabatan, ";
@ -2545,24 +2470,6 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
resultDomain.setQPegawai(resultDomain.getId().shortValue()); resultDomain.setQPegawai(resultDomain.getId().shortValue());
rekamDataPegawaiDao.save(resultDomain); rekamDataPegawaiDao.save(resultDomain);
this.saveHistoryPegawai(model, perubahan); this.saveHistoryPegawai(model, perubahan);
// Proses pembentukan username dan password pegawai baru
// List<LoginUser> pegId =
// loginUserDao.findAllLoginUserByIdPegawai(resultDomain.getId());
// if (CommonUtil.isNullOrEmpty(pegId)) {
// LoginUser pegNama = loginUserDao
// .findLoginUserByNamaUser(resultDomain.getNama().toLowerCase().replace("
// ", "."));
// if (CommonUtil.isNullOrEmpty(pegNama)) {
// this.saveLoginUser(resultDomain,
// Master.LoginUser.GENERATED_NEW_LOGIN);
// } else {
// this.saveLoginUser(resultDomain,
// Master.LoginUser.GENERATED_USED_LOGIN);
// }
// } else {
// this.resetLoginUser(model.getId());
// }
} }
result.put("noRec", resultDomain.getId()); result.put("noRec", resultDomain.getId());
result.put("namaUser", username); result.put("namaUser", username);
@ -2573,16 +2480,16 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
private String username; private String username;
@Transactional @Transactional
public String saveLoginUser(Pegawai pegawai, Integer isNew) { public void saveLoginUser(Pegawai pegawai, Integer isNew) {
LoginUser loginUser = new LoginUser(); LoginUser loginUser = new LoginUser();
PasswordUtil passwordUtil = new PasswordUtil(); PasswordUtil passwordUtil = new PasswordUtil();
try { try {
/** /*
* password default pegawai baru * password default pegawai baru
*/ */
loginUser.setKataSandi(passwordUtil.encryptPassword("rsabhk79")); loginUser.setKataSandi(passwordUtil.encryptPassword("rsabhk79"));
} catch (NoSuchAlgorithmException | UnsupportedEncodingException e) { } catch (NoSuchAlgorithmException | UnsupportedEncodingException e) {
e.printStackTrace(); throw new ServiceVOException(e.getMessage());
} }
KelompokUser kelompokUser = new KelompokUser(); KelompokUser kelompokUser = new KelompokUser();
kelompokUser.setId(0); kelompokUser.setId(0);
@ -2595,24 +2502,21 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
loginUser.setNamaUser(pegawai.getNama().toLowerCase().replace(" ", ".")); loginUser.setNamaUser(pegawai.getNama().toLowerCase().replace(" ", "."));
loginUser.setNamaExternal(pegawai.getNama().toLowerCase().replace(" ", ".")); loginUser.setNamaExternal(pegawai.getNama().toLowerCase().replace(" ", "."));
} else if (isNew == 0) { } else if (isNew == 0) {
LoginUser cekIterasiLoginUser = new LoginUser(); LoginUser cekIterasiLoginUser;
Integer str = 0; int str = 0;
// check username yang sudah terpakai // check username yang sudah terpakai
do { do {
str = str + 1; str = str + 1;
cekIterasiLoginUser = loginUserDao.findLoginUserByNamaUser( cekIterasiLoginUser = loginUserDao.findLoginUserByNamaUser(
pegawai.getNama().toLowerCase().replace(" ", ".").concat(str.toString())); pegawai.getNama().toLowerCase().replace(" ", ".").concat(Integer.toString(str)));
} while (CommonUtil.isNotNullOrEmpty(cekIterasiLoginUser)); } while (CommonUtil.isNotNullOrEmpty(cekIterasiLoginUser));
username = pegawai.getNama().toLowerCase().replace(" ", ".").concat(str.toString()); username = pegawai.getNama().toLowerCase().replace(" ", ".").concat(Integer.toString(str));
loginUser.setNamaUser(username); loginUser.setNamaUser(username);
loginUser.setNamaExternal(username); loginUser.setNamaExternal(username);
} }
loginUserDao.save(loginUser); loginUserDao.save(loginUser);
return username;
} }
public void saveHistoryPegawai(Pegawai model, String perubahan) { public void saveHistoryPegawai(Pegawai model, String perubahan) {
@ -2845,7 +2749,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
@Override @Override
public void resetLoginUser(Integer idPegawai) { public void resetLoginUser(Integer idPegawai) {
List<LoginUser> allLoginUserDetail = new ArrayList<LoginUser>(); List<LoginUser> allLoginUserDetail = new ArrayList<>();
List<LoginUser> allLoginUser = loginUserDao.findAllLoginUserByIdPegawai(idPegawai); List<LoginUser> allLoginUser = loginUserDao.findAllLoginUserByIdPegawai(idPegawai);
for (LoginUser loginUser : allLoginUser) { for (LoginUser loginUser : allLoginUser) {
allLoginUserDetail.add(loginUserDao.findOne(loginUser.getId())); allLoginUserDetail.add(loginUserDao.findOne(loginUser.getId()));
@ -2862,9 +2766,7 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
@Override @Override
public Map<String, Object> getpegawaiStrExpiredByPegawai() { public Map<String, Object> getpegawaiStrExpiredByPegawai() {
LoginUser loginUser = loginUserService.getLoginUser(); LoginUser loginUser = loginUserService.getLoginUser();
Map<String, Object> result = pegawaiDao.findStrExpiredByPegawai(getNextSixMonth(), return pegawaiDao.findStrExpiredByPegawai(getNextSixMonth(), loginUser.getPegawai().getId());
loginUser.getPegawai().getId());
return result;
} }
@Override @Override
@ -2897,12 +2799,12 @@ public class RekamDataPegawaiServiceImpl extends BaseVoServiceImpl implements Re
return cal.getTime(); return cal.getTime();
} }
@Transactional(readOnly = false) @Transactional
public void disableIsprimary(Integer idPegawai, Integer id) { public void disableIsprimary(Integer idPegawai, Integer id) {
mapPegawaiJabatanToUnitKerjaDao.changeIsNotPrimary(idPegawai, id); mapPegawaiJabatanToUnitKerjaDao.changeIsNotPrimary(idPegawai, id);
} }
@Transactional(readOnly = false) @Transactional
public void disableIsprimary(Integer idPegawai) { public void disableIsprimary(Integer idPegawai) {
mapPegawaiJabatanToUnitKerjaDao.changeIsPrimary(idPegawai); mapPegawaiJabatanToUnitKerjaDao.changeIsPrimary(idPegawai);
} }

View File

@ -3237,6 +3237,7 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
result.put("simpananWajibKoperasiGaji", "-"); result.put("simpananWajibKoperasiGaji", "-");
result.put("pinjamanKoperasiGaji", "-"); result.put("pinjamanKoperasiGaji", "-");
result.put("potonganPphRemunerasi", "-"); result.put("potonganPphRemunerasi", "-");
result.put("pinjamanBriGaji","-");
result.put("potonganObat", "-"); result.put("potonganObat", "-");
result.put("potonganRawatInap", "-"); result.put("potonganRawatInap", "-");
result.put("potonganRawatJalan", "-"); result.put("potonganRawatJalan", "-");
@ -3244,6 +3245,7 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
result.put("pinjamanKoperasiRemunerasi", "-"); result.put("pinjamanKoperasiRemunerasi", "-");
result.put("tokoKoperasi", "-"); result.put("tokoKoperasi", "-");
result.put("wakafDanLainLain", "-"); result.put("wakafDanLainLain", "-");
result.put("pinjamanBriRemunerasi", "-");
result.put("potonganUangMakan", "-"); result.put("potonganUangMakan", "-");
BigDecimal jumlahGaji = ZERO; BigDecimal jumlahGaji = ZERO;
BigDecimal jumlahRemunerasi = ZERO; BigDecimal jumlahRemunerasi = ZERO;
@ -3331,6 +3333,8 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
result.put("pinjamanKoperasiGaji", nf.format(k.getNominal())); result.put("pinjamanKoperasiGaji", nf.format(k.getNominal()));
} else if (Master.KomponenGaji.POTONGAN_PPH_REMUNERASI.equals(k.getIdKomponen())) { } else if (Master.KomponenGaji.POTONGAN_PPH_REMUNERASI.equals(k.getIdKomponen())) {
result.put("potonganPphRemunerasi", nf.format(k.getNominal())); result.put("potonganPphRemunerasi", nf.format(k.getNominal()));
} else if (Master.KomponenGaji.PINJAMAM_BRI_GAJI.equals(k.getIdKomponen())) {
result.put("pinjamanBriGaji", nf.format(k.getNominal()));
} else if (Master.KomponenGaji.POTONGAN_OBAT.equals(k.getIdKomponen())) { } else if (Master.KomponenGaji.POTONGAN_OBAT.equals(k.getIdKomponen())) {
result.put("potonganObat", nf.format(k.getNominal())); result.put("potonganObat", nf.format(k.getNominal()));
} else if (Master.KomponenGaji.POTONGAN_RAWAT_INAP.equals(k.getIdKomponen())) { } else if (Master.KomponenGaji.POTONGAN_RAWAT_INAP.equals(k.getIdKomponen())) {
@ -3345,6 +3349,8 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
result.put("tokoKoperasi", nf.format(k.getNominal())); result.put("tokoKoperasi", nf.format(k.getNominal()));
} else if (Master.KomponenGaji.WAKAF_DLL.equals(k.getIdKomponen())) { } else if (Master.KomponenGaji.WAKAF_DLL.equals(k.getIdKomponen())) {
result.put("wakafDanLainLain", nf.format(k.getNominal())); result.put("wakafDanLainLain", nf.format(k.getNominal()));
} else if (Master.KomponenGaji.PINJAMAN_BRI_REMUNERASI.equals(k.getIdKomponen())) {
result.put("pinjamanBriRemunerasi", nf.format(k.getNominal()));
} else if (Master.KomponenGaji.POTONGAN_UANG_MAKAN.equals(k.getIdKomponen())) { } else if (Master.KomponenGaji.POTONGAN_UANG_MAKAN.equals(k.getIdKomponen())) {
result.put("potonganUangMakan", nf.format(k.getNominal())); result.put("potonganUangMakan", nf.format(k.getNominal()));
} }
@ -3500,6 +3506,8 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
potonganDtoBuilder.simpananWajibKoperasiGaji(nf.format(k.getNominal())); potonganDtoBuilder.simpananWajibKoperasiGaji(nf.format(k.getNominal()));
} else if (Master.KomponenGaji.PINJAMAN_KOPERASI_GAJI.equals(k.getIdKomponen())) { } else if (Master.KomponenGaji.PINJAMAN_KOPERASI_GAJI.equals(k.getIdKomponen())) {
potonganDtoBuilder.pinjamanKoperasiGaji(nf.format(k.getNominal())); potonganDtoBuilder.pinjamanKoperasiGaji(nf.format(k.getNominal()));
} else if (Master.KomponenGaji.PINJAMAM_BRI_GAJI.equals(k.getIdKomponen())) {
potonganDtoBuilder.pinjamanBriGaji(nf.format(k.getNominal()));
} else if (Master.KomponenGaji.POTONGAN_PPH_REMUNERASI.equals(k.getIdKomponen())) { } else if (Master.KomponenGaji.POTONGAN_PPH_REMUNERASI.equals(k.getIdKomponen())) {
potonganDtoBuilder.potonganPphRemunerasi(nf.format(k.getNominal())); potonganDtoBuilder.potonganPphRemunerasi(nf.format(k.getNominal()));
} else if (Master.KomponenGaji.POTONGAN_OBAT.equals(k.getIdKomponen())) { } else if (Master.KomponenGaji.POTONGAN_OBAT.equals(k.getIdKomponen())) {
@ -3516,6 +3524,8 @@ public class ReportServiceImpl extends BaseVoServiceImpl implements ReportServic
potonganDtoBuilder.tokoKoperasi(nf.format(k.getNominal())); potonganDtoBuilder.tokoKoperasi(nf.format(k.getNominal()));
} else if (Master.KomponenGaji.WAKAF_DLL.equals(k.getIdKomponen())) { } else if (Master.KomponenGaji.WAKAF_DLL.equals(k.getIdKomponen())) {
potonganDtoBuilder.wakafDanLainLain(nf.format(k.getNominal())); potonganDtoBuilder.wakafDanLainLain(nf.format(k.getNominal()));
} else if (Master.KomponenGaji.PINJAMAN_BRI_REMUNERASI.equals(k.getIdKomponen())) {
potonganDtoBuilder.pinjamanBriRemunerasi(nf.format(k.getNominal()));
} else if (Master.KomponenGaji.POTONGAN_UANG_MAKAN.equals(k.getIdKomponen())) { } else if (Master.KomponenGaji.POTONGAN_UANG_MAKAN.equals(k.getIdKomponen())) {
potonganDtoBuilder.potonganUangMakan(nf.format(k.getNominal())); potonganDtoBuilder.potonganUangMakan(nf.format(k.getNominal()));
} }

View File

@ -495,10 +495,10 @@ public class SlipGajiServiceImpl implements SlipGajiService {
new Object[] { d.get("id"), d.get("idPegawai"), d.get("namaPegawai"), d.get("nip"), new Object[] { d.get("id"), d.get("idPegawai"), d.get("namaPegawai"), d.get("nip"),
d.get("statusKepegawaian"), d.get("1"), d.get("24"), d.get("25"), d.get("26"), d.get("27"), d.get("statusKepegawaian"), d.get("1"), d.get("24"), d.get("25"), d.get("26"), d.get("27"),
d.get("28"), d.get("29"), d.get("30"), d.get("41"), d.get("42"), d.get("2"), d.get("4"), d.get("28"), d.get("29"), d.get("30"), d.get("41"), d.get("42"), d.get("2"), d.get("4"),
d.get("3"), d.get("43"), d.get("44"), d.get("22"), d.get("23"), d.get("6"), d.get("31"), d.get("43"), d.get("44"), d.get("22"), d.get("23"), d.get("6"), d.get("31"), d.get("8"),
d.get("8"), d.get("21"), d.get("20"), d.get("32"), d.get("40"), d.get("33"), d.get("34"), d.get("21"), d.get("20"), d.get("32"), d.get("40"), d.get("33"), d.get("34"), d.get("14"),
d.get("14"), d.get("15"), d.get("36"), d.get("37"), d.get("16"), d.get("17"), d.get("18"), d.get("15"), d.get("45"), d.get("36"), d.get("16"), d.get("17"), d.get("18"), d.get("38"),
d.get("38"), d.get("35"), d.get("19"), d.get("39"), d.get("12") }); d.get("35"), d.get("19"), d.get("39"), d.get("46"), d.get("12") });
} }
TreeMap<Integer, Object[]> sorted = new TreeMap<>(data); TreeMap<Integer, Object[]> sorted = new TreeMap<>(data);
Set<Integer> keyset = sorted.keySet(); Set<Integer> keyset = sorted.keySet();

View File

@ -1,16 +1,11 @@
package com.jasamedika.medifirst2000.base; package com.jasamedika.medifirst2000.base;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
import org.hibernate.annotations.GenericGenerator; import org.hibernate.annotations.GenericGenerator;
import org.hibernate.validator.constraints.Length; import org.hibernate.validator.constraints.Length;
import javax.persistence.*;
import java.io.Serializable;
/** /**
* Base class for all entities, but using String idString as 'id' * Base class for all entities, but using String idString as 'id'
* *
@ -19,20 +14,9 @@ import org.hibernate.validator.constraints.Length;
@MappedSuperclass @MappedSuperclass
public class BaseMasterProduk extends BaseActive implements Serializable { public class BaseMasterProduk extends BaseActive implements Serializable {
/**
*
*/
// private static final long serialVersionUID = -7522287859244078391L;
@Id @Id
@GeneratedValue( @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "public.produk_m_id_seq")
strategy=GenerationType.SEQUENCE, @SequenceGenerator(name = "public.produk_m_id_seq", sequenceName = "public.produk_m_id_seq", allocationSize = 1)
generator="public.produk_m_id_seq")
@javax.persistence.SequenceGenerator(
name="public.produk_m_id_seq",
sequenceName="public.produk_m_id_seq",
allocationSize=1
)
@Column(name = "id") @Column(name = "id")
protected Integer id; protected Integer id;
@ -57,10 +41,6 @@ public class BaseMasterProduk extends BaseActive implements Serializable {
this.noRec = noRec; this.noRec = noRec;
} }
// public static long getSerialversionuid() {
// return serialVersionUID;
// }
@Length(min = 1, max = 50, message = "") @Length(min = 1, max = 50, message = "")
@Column(name = "reportDisplay") @Column(name = "reportDisplay")
protected String reportDisplay; protected String reportDisplay;

View File

@ -53,6 +53,10 @@ public class SlipPotonganDto {
@Builder.Default @Builder.Default
private String pinjamanKoperasiGaji = "-"; private String pinjamanKoperasiGaji = "-";
@Caption(value = "Pinjaman BRI (Gaji)")
@Builder.Default
private String pinjamanBriGaji = "-";
@Caption(value = "Potongan PPH Remunerasi") @Caption(value = "Potongan PPH Remunerasi")
@Builder.Default @Builder.Default
private String potonganPphRemunerasi = "-"; private String potonganPphRemunerasi = "-";
@ -85,6 +89,10 @@ public class SlipPotonganDto {
@Builder.Default @Builder.Default
private String wakafDanLainLain = "-"; private String wakafDanLainLain = "-";
@Caption(value = "Pinjaman BRI (Remunerasi)")
@Builder.Default
private String pinjamanBriRemunerasi = "-";
@Caption(value = "Potongan Uang Makan") @Caption(value = "Potongan Uang Makan")
@Builder.Default @Builder.Default
private String potonganUangMakan = "-"; private String potonganUangMakan = "-";

View File

@ -0,0 +1,57 @@
package com.jasamedika.medifirst2000.entities;
import com.jasamedika.medifirst2000.base.BaseTransaction;
import com.jasamedika.medifirst2000.helper.Caption;
import lombok.Getter;
import lombok.Setter;
import javax.persistence.*;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
import static javax.persistence.FetchType.LAZY;
/**
* @author salmanoe
* @version 1.0.0
* @since 15/02/2024
*/
@Getter
@Setter
@Entity
@Table(name = "obattindakan_t")
public class ObatLayananTindakan extends BaseTransaction implements Serializable {
@ManyToOne(fetch = LAZY)
@JoinColumn(name = "tindakanpasienfk", nullable = false)
@NotNull(message = "Tindakan pasien Tidak boleh Kosong")
@Caption(value = "Tindakan Pasien")
private PelayananPasien tindakanPasien;
@ManyToOne(fetch = LAZY)
@JoinColumn(name = "obatfk", nullable = false)
@NotNull(message = "Obat tidak boleh kosong")
@Caption(value = "Obat")
private Produk obat;
@Column(nullable = false, columnDefinition = "numeric(6,2)")
@NotNull(message = "Jumlah obat tidak boleh kosong")
private Double jumlahObat;
@Column(updatable = false, columnDefinition = "timestamp default current_date")
private Date tanggalDibuat;
@ManyToOne(fetch = LAZY)
@JoinColumn(name = "dibuat_pegawai_id")
@Caption(value = "Dibuat oleh pegawai")
private Pegawai dibuatOleh;
@Column(insertable = false)
private Date tanggalDiubah;
@ManyToOne(fetch = LAZY)
@JoinColumn(name = "diubah_pengguna_id")
@Caption(value = "Diubah oleh pegawai")
private Pegawai diubahOleh;
}

View File

@ -0,0 +1,46 @@
package com.jasamedika.medifirst2000.entities;
import com.jasamedika.medifirst2000.base.BaseTransaction;
import com.jasamedika.medifirst2000.helper.Caption;
import lombok.Getter;
import lombok.Setter;
import javax.persistence.*;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import static javax.persistence.FetchType.LAZY;
/**
* @author salmanoe
* @version 1.0.0
* @since 15/02/2024
*/
@Getter
@Setter
@Entity
@Table(name = "obattindakan_m")
public class ObatTindakan extends BaseTransaction implements Serializable {
@ManyToOne(fetch = LAZY)
@JoinColumn(name = "tindakanfk", nullable = false)
@NotNull
@Caption(value = "Tindakan")
private Produk tindakan;
@ManyToOne(fetch = LAZY)
@JoinColumn(name = "obatfk", nullable = false)
@NotNull(message = "Obat tidak boleh kosong")
@Caption(value = "Obat")
private Produk obat;
@ManyToOne(fetch = LAZY)
@JoinColumn(name = "satuanfk", nullable = false)
@NotNull(message = "Satuan tidak boleh kosong")
@Caption(value = "Satuan")
private SatuanStandar satuan;
@Column(nullable = false, columnDefinition = "numeric(6,2)")
@NotNull(message = "Jumlah obat tidak boleh kosong")
private Double jumlah;
}

View File

@ -543,6 +543,10 @@ public class Pegawai extends BaseMasterPegawai {
@Column(name = "tglBerakhirSip") @Column(name = "tglBerakhirSip")
private Date tglBerakhirSip; private Date tglBerakhirSip;
@Column(nullable = false, columnDefinition = "boolean default false")
@Caption("Status SIP berlaku seumur hidup")
private Boolean isSipSeumurHidup;
@Column(name = "noStr") @Column(name = "noStr")
private String noStr; private String noStr;
@ -552,6 +556,10 @@ public class Pegawai extends BaseMasterPegawai {
@Column(name = "tglBerakhirStr") @Column(name = "tglBerakhirStr")
private Date tglBerakhirStr; private Date tglBerakhirStr;
@Column(nullable = false, columnDefinition = "boolean default false")
@Caption("Status STR berlaku seumur hidup")
private Boolean isStrSeumurHidup;
@JsonBackReference @JsonBackReference
@OneToMany(cascade = CascadeType.ALL, fetch = LAZY, mappedBy = "pegawai") @OneToMany(cascade = CascadeType.ALL, fetch = LAZY, mappedBy = "pegawai")
private Set<RiwayatPendidikan> riwayatPendidikanSet = new HashSet<>(); private Set<RiwayatPendidikan> riwayatPendidikanSet = new HashSet<>();

View File

@ -6,6 +6,7 @@ import com.jasamedika.medifirst2000.base.BaseMasterProduk;
import com.jasamedika.medifirst2000.helper.Caption; import com.jasamedika.medifirst2000.helper.Caption;
import lombok.Getter; import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter; import lombok.Setter;
import javax.persistence.*; import javax.persistence.*;
@ -23,6 +24,7 @@ import static javax.persistence.FetchType.LAZY;
@Getter @Getter
@Setter @Setter
@Entity @Entity
@NoArgsConstructor
@Table(name = "Produk_M") @Table(name = "Produk_M")
public class Produk extends BaseMasterProduk { public class Produk extends BaseMasterProduk {
public Produk(String kdProduk, String namaProduk, Integer id, SatuanStandar satuanStandar) { public Produk(String kdProduk, String namaProduk, Integer id, SatuanStandar satuanStandar) {
@ -70,10 +72,6 @@ public class Produk extends BaseMasterProduk {
this.keterangan = keterangan; this.keterangan = keterangan;
} }
public Produk() {
}
@JsonBackReference @JsonBackReference
@OneToMany(cascade = CascadeType.ALL, fetch = LAZY, mappedBy = "produk") @OneToMany(cascade = CascadeType.ALL, fetch = LAZY, mappedBy = "produk")
private Set<ProdukDetailLaboratorium> produkDetail = new HashSet<>(); private Set<ProdukDetailLaboratorium> produkDetail = new HashSet<>();

View File

@ -8,6 +8,9 @@ import lombok.Setter;
import javax.persistence.*; import javax.persistence.*;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import static javax.persistence.FetchType.LAZY;
import static javax.persistence.GenerationType.SEQUENCE;
/** /**
* class SatuanStandar * class SatuanStandar
* *
@ -18,7 +21,7 @@ import javax.validation.constraints.NotNull;
@Entity @Entity
@Table(name = "SatuanStandar_M") @Table(name = "SatuanStandar_M")
public class SatuanStandar extends BaseMaster { public class SatuanStandar extends BaseMaster {
@ManyToOne(fetch = FetchType.LAZY) @ManyToOne(fetch = LAZY)
@JoinColumn(name = "ObjectDepartemenFk") @JoinColumn(name = "ObjectDepartemenFk")
@Caption(value = "Object Departemen") @Caption(value = "Object Departemen")
private Departemen departemen; private Departemen departemen;
@ -26,14 +29,14 @@ public class SatuanStandar extends BaseMaster {
@Column(name = "ObjectDepartemenFk", insertable = false, updatable = false) @Column(name = "ObjectDepartemenFk", insertable = false, updatable = false)
private Integer departemenId; private Integer departemenId;
@ManyToOne(fetch = FetchType.LAZY) @ManyToOne(fetch = LAZY)
@JoinColumn(name = "ObjectKelompokProdukFk") @JoinColumn(name = "ObjectKelompokProdukFk")
@Caption(value = "Object Kelompok Produk") @Caption(value = "Object Kelompok Produk")
private KelompokProduk kelompokProduk; private KelompokProduk kelompokProduk;
@Column(name = "ObjectKelompokProdukFk", insertable = false, updatable = false, nullable = false) @Column(name = "ObjectKelompokProdukFk", insertable = false, updatable = false, nullable = false)
private Integer kelompokProdukId; private Integer kelompokProdukId;
@ManyToOne(fetch = FetchType.LAZY) @ManyToOne(fetch = LAZY)
@JoinColumn(name = "KdHeadSatuanStandard") @JoinColumn(name = "KdHeadSatuanStandard")
@Caption(value = "Satuan Standar") @Caption(value = "Satuan Standar")
private SatuanStandar satuanStandarHead; private SatuanStandar satuanStandarHead;
@ -51,7 +54,7 @@ public class SatuanStandar extends BaseMaster {
private String satuanStandar; private String satuanStandar;
@Id @Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "public.satuanstandar_m_id_seq") @GeneratedValue(strategy = SEQUENCE, generator = "public.satuanstandar_m_id_seq")
@SequenceGenerator(name = "public.satuanstandar_m_id_seq", sequenceName = "public.satuanstandar_m_id_seq", allocationSize = 1) @SequenceGenerator(name = "public.satuanstandar_m_id_seq", sequenceName = "public.satuanstandar_m_id_seq", allocationSize = 1)
@Column(name = "id") @Column(name = "id")
protected Integer id; protected Integer id;

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB