From 3f435627e45ffd6944d96318d8579e19aa950f26 Mon Sep 17 00:00:00 2001 From: salmanoe Date: Wed, 7 Apr 2021 16:25:22 +0700 Subject: [PATCH] - pembuatan dan pemasangan service update data pegawai saat simpan evaluasi jabatan - pembuatan service cek duplikat data mapping indikator jabatan - persiapan awal master jabatan spesifik untuk unit kerja tertentu - perbaikan data grid penempatan evaluasi jabatan di master anggaran remunerasi - perbaikan fungsi delete mapping indikator kinerja jabatan sekaligus banyak jabatan --- .../medifirst2000/constants/Master.java | 1 + .../medifirst2000/dao/EvaluasiJabatanDao.java | 10 +- .../dao/IndikatorKinerjaJabatanDao.java | 13 +- .../dao/NilaiKelompokJabatanDao.java | 6 +- .../IndikatorKinerjaJabatanService.java | 3 + .../impl/EvaluasiJabatanServiceImpl.java | 28 ++- .../IndikatorKinerjaJabatanServiceImpl.java | 24 +- .../service/impl/JabatanServiceImpl.java | 13 +- .../impl/NilaiKelompokJabatanServiceImpl.java | 5 +- .../medifirst2000/entities/Jabatan.java | 45 +++- .../medifirst2000/vo/JabatanVO.java | 224 ++++++++++-------- .../IkiDanRemunerasiController.java | 22 ++ .../controller/JabatanController.java | 2 +- 13 files changed, 268 insertions(+), 128 deletions(-) diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java index 4061951a..2668a423 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/constants/Master.java @@ -118,6 +118,7 @@ public class Master { public static final Integer[] NONSDM = { 13, 16, 17 }; // peserta_didik,_mitra public static final Integer[] PARUH_WAKTU = { 12 }; public static final Integer[] PURNA_WAKTU = { 1, 2, 10, 14 }; + public static final Integer[] REMUN = { 1, 10, 14 }; public static final Integer DOKTER_TAMU = 19; public static final Integer PNS = 1; diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/EvaluasiJabatanDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/EvaluasiJabatanDao.java index d4fc1232..1a3c6b17 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/EvaluasiJabatanDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/EvaluasiJabatanDao.java @@ -41,8 +41,8 @@ public interface EvaluasiJabatanDao extends PagingAndSortingRepository> findDistinctEvaluasiJabatan(); @@ -67,4 +67,10 @@ public interface EvaluasiJabatanDao extends PagingAndSortingRepository> findAllEvaluasiJabatan(); + @Query("select distinct pg.id " + "from MapPegawaiJabatanToUnitKerja mj " + "inner join mj.pegawai pg " + + "where mj.statusEnabled is true " + "and pg.statusEnabled is true " + "and mj.jabatanId = :jabatanId " + + "and pg.kategoryPegawaiId in (:listKategoriId)") + List findAllPegawaiRemunByJabatan(@Param("jabatanId") Integer idJabatan, + @Param("listKategoriId") List idListKategori); + } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IndikatorKinerjaJabatanDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IndikatorKinerjaJabatanDao.java index 58e21750..6512de45 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IndikatorKinerjaJabatanDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/IndikatorKinerjaJabatanDao.java @@ -1,5 +1,6 @@ package com.jasamedika.medifirst2000.dao; +import java.util.Date; import java.util.List; import java.util.Map; @@ -44,8 +45,16 @@ public interface IndikatorKinerjaJabatanDao extends PagingAndSortingRepository> findAllByIndikator(@Param("listIndikatorId") List listIdIndikator); + List> findAllByIndikator(@Param("listIndikatorId") List listIdIndikator, + @Param("listJabatanId") List listIdJabatan); + + @Query("select new Map(ikt.indikatorKinerjaId as idIndikator," + "ikt.jabatanId as idJabatan," + + "ikt.tanggalMulaiBerlaku as tglBerlaku) " + "from IndikatorKinerjaJabatan ikt " + + "where ikt.statusEnabled is true " + "and ikt.indikatorKinerjaId = :indikatorId " + + "and ikt.jabatanId = :jabatanId " + "and ikt.tanggalMulaiBerlaku < :tglBerlaku") + List> findDupMap(@Param("indikatorId") Integer idIndikator, + @Param("jabatanId") Integer idJabatan, @Param("tglBerlaku") Date tglBerlaku); } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/NilaiKelompokJabatanDao.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/NilaiKelompokJabatanDao.java index 1d3de6ae..a05478fb 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/NilaiKelompokJabatanDao.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/dao/NilaiKelompokJabatanDao.java @@ -54,8 +54,8 @@ public interface NilaiKelompokJabatanDao extends PagingAndSortingRepository> findPenempatanEvaluasiJabatan(); + + "and j.statusEnabled is true " + "and pg.kategoryPegawaiId in (:listKategoriId) " + + "and j.kdJabatan = 'ANJAB' " + "order by pg.id asc, " + "pg.nilaiJabatan desc") + public List> findPenempatanEvaluasiJabatan(@Param("listKategoriId") List idListKategori); } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/IndikatorKinerjaJabatanService.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/IndikatorKinerjaJabatanService.java index 01fcd0fd..3a745251 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/IndikatorKinerjaJabatanService.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/IndikatorKinerjaJabatanService.java @@ -19,4 +19,7 @@ public interface IndikatorKinerjaJabatanService public Map findAllByJabatan(Integer idJabatan) throws JpaSystemException; + public List> findDupMap(Integer idIndikator, Integer idJabatan, Long tglBerlaku) + throws JpaSystemException; + } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/EvaluasiJabatanServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/EvaluasiJabatanServiceImpl.java index a13970f3..7393fdd6 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/EvaluasiJabatanServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/EvaluasiJabatanServiceImpl.java @@ -1,6 +1,7 @@ package com.jasamedika.medifirst2000.service.impl; import java.util.ArrayList; +import java.util.Arrays; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -10,10 +11,12 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import com.jasamedika.medifirst2000.constants.Master; import com.jasamedika.medifirst2000.converter.BaseConverterImpl; import com.jasamedika.medifirst2000.dao.EvaluasiJabatanDao; import com.jasamedika.medifirst2000.dao.MapFaktorEvaluasiDao; import com.jasamedika.medifirst2000.dao.MasterEvaluasiJabatanDao; +import com.jasamedika.medifirst2000.dao.PegawaiDao; import com.jasamedika.medifirst2000.entities.EvaluasiJabatan; import com.jasamedika.medifirst2000.entities.FaktorEvaluasi; import com.jasamedika.medifirst2000.entities.Jabatan; @@ -62,6 +65,9 @@ public class EvaluasiJabatanServiceImpl extends BaseVoServiceImpl implements Eva @Autowired private MasterEvaluasiJabatanDao masterEvaluasiJabatanDao; + @Autowired + private PegawaiDao pegawaiDao; + @Override public Map saveEvaluasiJabatan(EvaluasiJabatanVO vo) { Map result = new HashMap(); @@ -159,6 +165,25 @@ public class EvaluasiJabatanServiceImpl extends BaseVoServiceImpl implements Eva EvaluasiJabatan resultDomain = evaluasiJabatanDao.save(model); if (CommonUtil.isNotNullOrEmpty(resultDomain)) { result.put("noRec", resultDomain.getNoRec()); + + /** + * Update data pegawai + */ + if (CommonUtil.isNotNullOrEmpty(result)) { + List listIdPegawai = evaluasiJabatanDao.findAllPegawaiRemunByJabatan( + model.getJabatan().getId(), Arrays.asList(Master.KategoryPegawai.REMUN)); + List listPegawai = new ArrayList<>(); + for (Integer idPegawai : listIdPegawai) { + Pegawai pegawai = pegawaiDao.findOne(idPegawai); + pegawai.setNilaiJabatan(model.getTotalNilai()); + pegawai.setGrade(Double.valueOf(nilaiKelompokJabatan.getGradeDesc())); + pegawai.setDetailKelompokJabatan(nilaiKelompokJabatan); + listPegawai.add(pegawai); + } + if (CommonUtil.isNotNullOrEmpty(listPegawai)) { + pegawaiDao.save(listPegawai); + } + } } return result; @@ -196,7 +221,8 @@ public class EvaluasiJabatanServiceImpl extends BaseVoServiceImpl implements Eva EvaluasiJabatan evaluasiJabatan = new EvaluasiJabatan(); evaluasiJabatan = evaluasiJabatanConverter.transferVOToModel(vo, new EvaluasiJabatan()); if (CommonUtil.isNotNullOrEmpty(vo.getPegawaiEntri())) { - evaluasiJabatan.setPegawaiEntri(pegawaiConverter.transferVOToModel(vo.getPegawaiEntri(), new Pegawai())); + evaluasiJabatan + .setPegawaiEntri(pegawaiConverter.transferVOToModel(vo.getPegawaiEntri(), new Pegawai())); } if (CommonUtil.isNotNullOrEmpty(vo.getFaktor1())) { evaluasiJabatan diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/IndikatorKinerjaJabatanServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/IndikatorKinerjaJabatanServiceImpl.java index e7c87c47..a6c286bf 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/IndikatorKinerjaJabatanServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/IndikatorKinerjaJabatanServiceImpl.java @@ -150,19 +150,26 @@ public class IndikatorKinerjaJabatanServiceImpl extends BaseVoServiceImpl implem throws JpaSystemException, ServiceVOException { List resultListVO = new ArrayList<>(); List listIdIndikator = new ArrayList<>(); + List listIdJabatan = new ArrayList<>(); List listAdd = new ArrayList<>(); List listUpdate = new ArrayList<>(); for (IndikatorKinerjaJabatanVO vo : listVO) { if (CommonUtil.isNullOrEmpty(vo.getNoRec())) { listAdd.add(vo); - } else if (!listIdIndikator.contains(vo.getIndikatorKinerja().getId())) { - listIdIndikator.add(vo.getIndikatorKinerja().getId()); + } else { + if (!listIdIndikator.contains(vo.getIndikatorKinerja().getId())) { + listIdIndikator.add(vo.getIndikatorKinerja().getId()); + } + if (!listIdJabatan.contains(vo.getJabatan().getId())) { + listIdJabatan.add(vo.getJabatan().getId()); + } } } - if (CommonUtil.isNotNullOrEmpty(listIdIndikator)) { - List> allMap = indikatorKinerjaJabatanDao.findAllByIndikator(listIdIndikator); + if (CommonUtil.isNotNullOrEmpty(listIdIndikator) && CommonUtil.isNotNullOrEmpty(listIdJabatan)) { + List> allMap = indikatorKinerjaJabatanDao.findAllByIndikator(listIdIndikator, + listIdJabatan); for (Map map : allMap) { IndikatorKinerjaJabatanVO vo = new IndikatorKinerjaJabatanVO(); IndikatorKinerjaVO indikator = new IndikatorKinerjaVO(); @@ -373,4 +380,13 @@ public class IndikatorKinerjaJabatanServiceImpl extends BaseVoServiceImpl implem return result; } + @Override + public List> findDupMap(Integer idIndikator, Integer idJabatan, Long tglBerlaku) + throws JpaSystemException { + List> result = indikatorKinerjaJabatanDao.findDupMap(idIndikator, idJabatan, + new Date(tglBerlaku)); + + return result; + } + } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/JabatanServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/JabatanServiceImpl.java index 34256709..937e1b3b 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/JabatanServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/JabatanServiceImpl.java @@ -18,6 +18,7 @@ import com.jasamedika.medifirst2000.entities.Eselon; import com.jasamedika.medifirst2000.entities.Jabatan; import com.jasamedika.medifirst2000.entities.JenisJabatan; import com.jasamedika.medifirst2000.entities.KelompokJabatan; +import com.jasamedika.medifirst2000.entities.UnitKerjaPegawai; import com.jasamedika.medifirst2000.exception.ServiceVOException; import com.jasamedika.medifirst2000.service.JabatanService; import com.jasamedika.medifirst2000.util.CommonUtil; @@ -129,8 +130,10 @@ public class JabatanServiceImpl extends BaseVoServiceImpl implements JabatanServ // organization business validation if ((vo.getLevelJabatan() == 1 || vo.getLevelJabatan() == 5) && CommonUtil.isNotNullOrEmpty(vo.getSubLevelJabatan())) { - vo.setSubLevelJabatan(null); // direktur utama dan staf/ ketua tim - // tidak memiliki level direksi + /** + * direktur utama dan staf/ ketua tim tidak memiliki level direksi + */ + vo.setSubLevelJabatan(null); } if (CommonUtil.isNullOrEmpty(vo.getId())) { @@ -145,6 +148,12 @@ public class JabatanServiceImpl extends BaseVoServiceImpl implements JabatanServ eselon.setId(vo.getEselon().getId()); model.setEselon(eselon); + if (CommonUtil.isNotNullOrEmpty(vo.getUnitKerja())) { + UnitKerjaPegawai unitKerja = new UnitKerjaPegawai(); + unitKerja.setId(vo.getUnitKerja().getId()); + model.setUnitKerja(unitKerja); + } + if (CommonUtil.isNotNullOrEmpty(vo.getLevelJabatan())) { model.setLevelJabatan(vo.getLevelJabatan()); } diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/NilaiKelompokJabatanServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/NilaiKelompokJabatanServiceImpl.java index 788a9e7c..b41ec95f 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/NilaiKelompokJabatanServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/NilaiKelompokJabatanServiceImpl.java @@ -1,6 +1,7 @@ package com.jasamedika.medifirst2000.service.impl; import java.util.ArrayList; +import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -8,6 +9,7 @@ import java.util.Map; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import com.jasamedika.medifirst2000.constants.Master; import com.jasamedika.medifirst2000.converter.BaseConverterImpl; import com.jasamedika.medifirst2000.dao.NilaiKelompokJabatanDao; import com.jasamedika.medifirst2000.entities.KelompokJabatan; @@ -121,7 +123,8 @@ public class NilaiKelompokJabatanServiceImpl extends BaseVoServiceImpl implement List> result = new ArrayList<>(); List listIdPegawai = new ArrayList<>(); - List> data = nilaiKelompokJabatanDao.findPenempatanEvaluasiJabatan(); + List> data = nilaiKelompokJabatanDao + .findPenempatanEvaluasiJabatan(Arrays.asList(Master.KategoryPegawai.REMUN)); if (CommonUtil.isNotNullOrEmpty(data)) { for (Map map : data) { diff --git a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/Jabatan.java b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/Jabatan.java index 96574720..edc26d4a 100644 --- a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/Jabatan.java +++ b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/entities/Jabatan.java @@ -7,10 +7,10 @@ import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; +import javax.persistence.SequenceGenerator; import javax.persistence.Table; import javax.validation.constraints.NotNull; -import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.jasamedika.medifirst2000.base.BaseMaster; import com.jasamedika.medifirst2000.helper.Caption; @@ -21,17 +21,15 @@ import com.jasamedika.medifirst2000.helper.Caption; */ @Entity @Table(name = "Jabatan_M") -@JsonIgnoreProperties({ "hibernateLazyInitializer", "handler" }) public class Jabatan extends BaseMaster { - private static final long serialVersionUID = 8249194011456398069L; public Jabatan() { - + } @Id @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "public.jabatan_m_id_seq") - @javax.persistence.SequenceGenerator(name = "public.jabatan_m_id_seq", sequenceName = "public.jabatan_m_id_seq", allocationSize = 1) + @SequenceGenerator(name = "public.jabatan_m_id_seq", sequenceName = "public.jabatan_m_id_seq", allocationSize = 1) @Column(name = "id") protected Integer id; @@ -40,16 +38,15 @@ public class Jabatan extends BaseMaster { @Caption(value = "Nama Jabatan") private String namaJabatan; - @NotNull(message = "No Urut tidak boleh kosong") @Column(name = "NoUrut", nullable = true) @Caption(value = "No Urut") private Integer noUrut; - @Column(name = "LevelJabatan", nullable = true) + @Column(name = "LevelJabatan", nullable = false) @Caption(value = "Level Jabatan") private Integer levelJabatan; - @Column(name = "SubLevelJabatan", nullable = true) + @Column(name = "SubLevelJabatan", nullable = false) @Caption(value = "Sub Level Jabatan") private Integer subLevelJabatan; @@ -70,7 +67,7 @@ public class Jabatan extends BaseMaster { private Integer usiaPensiun; @ManyToOne - @JoinColumn(name = "ObjectJenisJabatanFk") + @JoinColumn(name = "ObjectJenisJabatanFk", nullable = false) @NotNull(message = "Kd Jenis Jabatan tidak boleh kosong") @Caption(value = "Object Jenis Jabatan") private JenisJabatan jenisJabatan; @@ -80,23 +77,29 @@ public class Jabatan extends BaseMaster { @ManyToOne @JoinColumn(name = "ObjectKelompokJabatanFk") - @NotNull(message = "Kd KelompokJabatan tidak boleh kosong") @Caption(value = "Object KelompokJabatan") private KelompokJabatan kelompokJabatan; @Column(name = "ObjectKelompokJabatanFk", insertable = false, updatable = false) private Integer kelompokJabatanId; - @NotNull(message = "Kd Jabatan tidak boleh kosong") - @Column(name = "KdJabatan", nullable = false) + @Column(name = "KdJabatan", nullable = true) @Caption(value = "Kode Jabatan") private String kdJabatan; - @NotNull(message = "QJabatan tidak boleh kosong") @Column(name = "QJabatan", nullable = true) @Caption(value = "QJabatan") private Integer qJabatan; + @ManyToOne + @JoinColumn(name = "objectunitkerjafk", nullable = false) + @NotNull(message = "Unit kerja tidak boleh kosong") + @Caption(value = "Unit Kerja") + private UnitKerjaPegawai unitKerja; + + @Column(name = "objectunitkerjafk", insertable = false, updatable = false) + private Integer unitKerjaId; + public Jabatan(Integer id, String namaJabatan) { super(); this.namaJabatan = namaJabatan; @@ -223,4 +226,20 @@ public class Jabatan extends BaseMaster { public void setEselonId(Integer eselonId) { this.eselonId = eselonId; } + + public UnitKerjaPegawai getUnitKerja() { + return unitKerja; + } + + public void setUnitKerja(UnitKerjaPegawai unitKerja) { + this.unitKerja = unitKerja; + } + + public Integer getUnitKerjaId() { + return unitKerjaId; + } + + public void setUnitKerjaId(Integer unitKerjaId) { + this.unitKerjaId = unitKerjaId; + } } \ No newline at end of file diff --git a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/JabatanVO.java b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/JabatanVO.java index d301f941..e02b7b04 100644 --- a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/JabatanVO.java +++ b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/JabatanVO.java @@ -1,142 +1,98 @@ package com.jasamedika.medifirst2000.vo; -import javax.persistence.Column; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; -import javax.validation.constraints.NotNull; - import com.jasamedika.medifirst2000.base.vo.BaseMasterVO; import com.jasamedika.medifirst2000.helper.Caption; /** - * class Jabatan + * class Jabatan * * @author Generator */ public class JabatanVO extends BaseMasterVO { private static final long serialVersionUID = 7457507733797816895L; - @Caption(value="Kode Jabatan") - private String kdJabatan; + @Caption(value = "Nama Jabatan") + private String namaJabatan; - public void setKdJabatan(String kdJabatan) { - this.kdJabatan = kdJabatan; - } + @Caption(value = "No Urut") + private Integer noUrut; - @Column(name = "KdJabatan", nullable = false , length = 2) - public String getKdJabatan(){ - return this.kdJabatan; - } - - @ManyToOne - @JoinColumn(name = "ObjectJenisJabatanFk") - @NotNull(message="Object Jenis JabatanVO Harus Diisi") - @Caption(value="Object Jenis Jabatan") - private JenisJabatanVO jenisJabatan; - - @Column(name = "ObjectJenisJabatanFk", insertable=false,updatable=false) - private Integer jenisJabatanId; - - @Caption(value="Object Eselon") - private EselonVO eselon; - - private Integer eselonId; - - private KelompokJabatanVO kelompokJabatan; - - public void setJenisJabatan(JenisJabatanVO jenisJabatan) { - this.jenisJabatan = jenisJabatan; - } - - @Column(name = "KdJenisJabatan", nullable = false , length = 1) - public JenisJabatanVO getJenisJabatan(){ - return this.jenisJabatan; - } - - @Caption(value="Level Jabatan") + @Caption(value = "Level Jabatan") private Integer levelJabatan; - public void setLevelJabatan(Integer levelJabatan) { - this.levelJabatan = levelJabatan; - } - - @Column(name = "LevelJabatan", nullable = true ) - public Integer getLevelJabatan(){ - return this.levelJabatan; - } - - @Caption(value="Sublevel Jabatan") + @Caption(value = "Sub Level Jabatan") private Integer subLevelJabatan; - public void setSubLevelJabatan(Integer subLevelJabatan) { - this.subLevelJabatan = subLevelJabatan; - } + @Caption(value = "MasaJabatan") + private Integer masaJabatan; - @Column(name = "SubLevelJabatan", nullable = true ) - public Integer getSubLevelJabatan(){ - return this.subLevelJabatan; - } + @Caption(value = "Object Eselon") + private EselonVO eselon; - @Caption(value="Nama Jabatan") - private String namaJabatan; + private Integer eselonId; + + @Caption(value = "usiaPensiun") + private Integer usiaPensiun; + + @Caption(value = "Object Jenis Jabatan") + private JenisJabatanVO jenisJabatan; + + private Integer jenisJabatanId; + + @Caption(value = "Object KelompokJabatan") + private KelompokJabatanVO kelompokJabatan; + + private Integer kelompokJabatanId; + + @Caption(value = "Kode Jabatan") + private String kdJabatan; + + @Caption(value = "QJabatan") + private Integer qJabatan; + + @Caption(value = "Unit Kerja") + private UnitKerjaPegawaiVO unitKerja; + + private Integer unitKerjaId; + + public String getNamaJabatan() { + return namaJabatan; + } public void setNamaJabatan(String namaJabatan) { this.namaJabatan = namaJabatan; } - @Column(name = "NamaJabatan", nullable = false , length = 50) - public String getNamaJabatan(){ - return this.namaJabatan; + public Integer getNoUrut() { + return noUrut; } - @Caption(value="No Urut") - private Integer noUrut; - public void setNoUrut(Integer noUrut) { this.noUrut = noUrut; } - @Column(name = "NoUrut", nullable = false ) - public Integer getNoUrut(){ - return this.noUrut; + public Integer getLevelJabatan() { + return levelJabatan; } - @Caption(value="QJabatan") - private Integer qJabatan; - - private Integer usiaPensiun; - - public void setqJabatan(Integer qJabatan) { - this.qJabatan = qJabatan; + public void setLevelJabatan(Integer levelJabatan) { + this.levelJabatan = levelJabatan; } - @Column(name = "QJabatan", nullable = false ) - public Integer getqJabatan(){ - return this.qJabatan; + public Integer getSubLevelJabatan() { + return subLevelJabatan; } - public KelompokJabatanVO getKelompokJabatan() { - return kelompokJabatan; + public void setSubLevelJabatan(Integer subLevelJabatan) { + this.subLevelJabatan = subLevelJabatan; } - public void setKelompokJabatan(KelompokJabatanVO kelompokJabatan) { - this.kelompokJabatan = kelompokJabatan; + public Integer getMasaJabatan() { + return masaJabatan; } - public Integer getJenisJabatanId() { - return jenisJabatanId; - } - - public void setJenisJabatanId(Integer jenisJabatanId) { - this.jenisJabatanId = jenisJabatanId; - } - - public Integer getUsiaPensiun() { - return usiaPensiun; - } - - public void setUsiaPensiun(Integer usiaPensiun) { - this.usiaPensiun = usiaPensiun; + public void setMasaJabatan(Integer masaJabatan) { + this.masaJabatan = masaJabatan; } public EselonVO getEselon() { @@ -155,6 +111,76 @@ public class JabatanVO extends BaseMasterVO { this.eselonId = eselonId; } + public Integer getUsiaPensiun() { + return usiaPensiun; + } + + public void setUsiaPensiun(Integer usiaPensiun) { + this.usiaPensiun = usiaPensiun; + } + + public JenisJabatanVO getJenisJabatan() { + return jenisJabatan; + } + + public void setJenisJabatan(JenisJabatanVO jenisJabatan) { + this.jenisJabatan = jenisJabatan; + } + + public Integer getJenisJabatanId() { + return jenisJabatanId; + } + + public void setJenisJabatanId(Integer jenisJabatanId) { + this.jenisJabatanId = jenisJabatanId; + } + + public KelompokJabatanVO getKelompokJabatan() { + return kelompokJabatan; + } + + public void setKelompokJabatan(KelompokJabatanVO kelompokJabatan) { + this.kelompokJabatan = kelompokJabatan; + } + + public Integer getKelompokJabatanId() { + return kelompokJabatanId; + } + + public void setKelompokJabatanId(Integer kelompokJabatanId) { + this.kelompokJabatanId = kelompokJabatanId; + } + + public String getKdJabatan() { + return kdJabatan; + } + + public void setKdJabatan(String kdJabatan) { + this.kdJabatan = kdJabatan; + } + + public Integer getqJabatan() { + return qJabatan; + } + + public void setqJabatan(Integer qJabatan) { + this.qJabatan = qJabatan; + } + + public UnitKerjaPegawaiVO getUnitKerja() { + return unitKerja; + } + + public void setUnitKerja(UnitKerjaPegawaiVO unitKerja) { + this.unitKerja = unitKerja; + } + + public Integer getUnitKerjaId() { + return unitKerjaId; + } + + public void setUnitKerjaId(Integer unitKerjaId) { + this.unitKerjaId = unitKerjaId; + } } - 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 c552fe3c..df48eb61 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 @@ -516,6 +516,28 @@ public class IkiDanRemunerasiController extends LocaleController>> getDupIndikatorJabatan(HttpServletRequest request, + @RequestParam(value = "indikatorId", required = true) Integer idIndikator, + @RequestParam(value = "jabatanId", required = true) Integer idJabatan, + @RequestParam(value = "tglBerlaku", required = true) Long tglBerlaku) throws ParseException { + try { + List> result = indikatorKinerjaJabatanService.findDupMap(idIndikator, idJabatan, + tglBerlaku); + 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 duplikat indikator jabatan", 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 duplikat indikator jabatan", jse.getMessage()); + addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage()); + return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage); + } + } + @RequestMapping(value = "/save-skoring-tindakan-medis", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE) public ResponseEntity saveSkoringTindakanMedis(HttpServletRequest request, @Valid @RequestBody SkoringTindakanMedisVO vo) { diff --git a/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/JabatanController.java b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/JabatanController.java index 118ccf3c..6a67f6f7 100644 --- a/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/JabatanController.java +++ b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/JabatanController.java @@ -57,7 +57,7 @@ public class JabatanController extends LocaleController implements IB public ResponseEntity addVO(@Valid @RequestBody JabatanVO vo, HttpServletRequest request) { try { - Map result = jabatanService.saveJabatan(vo);// saveJabatanInternal(vo); + Map result = jabatanService.saveJabatan(vo); if (null != result) mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,