From b62e8023fb3c7114deeb08635644c77ed10e7d79 Mon Sep 17 00:00:00 2001 From: salmanoe Date: Mon, 25 Jan 2021 11:41:51 +0700 Subject: [PATCH] - desain ulang menu evaluasi jabatan menjadi per jabatan - cabut mandatori ruangan dan pegawai - fleksibelitas tgl batas penangguhan sisa cuti --- .../impl/EvaluasiJabatanServiceImpl.java | 4 +- .../impl/PermohonanStatusPegawaiImpl.java | 13 +- .../medifirst2000/vo/EvaluasiJabatanVO.java | 224 ++++++++++-------- .../controller/SdmController.java | 2 +- 4 files changed, 134 insertions(+), 109 deletions(-) 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 7b917967..b631f072 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 @@ -64,12 +64,12 @@ public class EvaluasiJabatanServiceImpl extends BaseVoServiceImpl implements Eva model.setBulan(vo.getBulan()); model.setTahun(vo.getTahun()); model.setTotalNilai(vo.getTotalNilai()); + //SET DATA JABATAN + model.setJabatan(jabatanConverter.transferVOToModel(vo.getJabatan() ,new Jabatan())); //SET DATA PEGAWAI if (CommonUtil.isNotNullOrEmpty(vo.getPegawai())) { model.setPegawai(pegawaiConverter.transferVOToModel(vo.getPegawai(), new Pegawai())); - //SET DATA JABATAN - model.setJabatan(jabatanConverter.transferVOToModel(vo.getJabatan() ,new Jabatan())); //Ambil Cek nilai dari grade yang didapat NilaiKelompokJabatan nilaiKelompokJabatan = getGrade(model.getJabatan().getId(), vo.getTotalNilai()); diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PermohonanStatusPegawaiImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PermohonanStatusPegawaiImpl.java index e1f41f6e..0f614248 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PermohonanStatusPegawaiImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/PermohonanStatusPegawaiImpl.java @@ -4,6 +4,7 @@ import java.text.DateFormat; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.Arrays; import java.util.Calendar; @@ -2666,12 +2667,10 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi Integer tahunLalu = tahunIni - 1; Integer duaTahunLalu = tahunIni - 2; - LocalDateTime thisJanuary = now.withMonth(1); - LocalDateTime january15th = thisJanuary.withDayOfMonth(15); - LocalDateTime january15th23h = january15th.withHour(23); - LocalDateTime january15th23h59m = january15th23h.withMinute(59); - LocalDateTime january15th23h59m59s = january15th23h59m.withSecond(59); - LocalDateTime january15thBeforeMidnight = january15th23h59m59s.withNano(999999999); + String batasPenangguhan = settingDataFixedDao.getSettingDataFixed("tglBatasPenangguhanCuti"); + String tglBatasPenangguhan = String.valueOf(now.getYear()) + "-" + batasPenangguhan; + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + LocalDateTime penangguhanCutOff = LocalDateTime.parse(tglBatasPenangguhan, formatter); String komponenCutiTahunan = settingDataFixedDao.getSettingDataFixed("komponenIndeksCuti"); String komponenCutiBersama = settingDataFixedDao.getSettingDataFixed("komponenIndeksCutiBersama"); @@ -2686,7 +2685,7 @@ public class PermohonanStatusPegawaiImpl implements PermohonanStatusPegawaiServi map.put("statusPenangguhan", "Tidak Ditangguhkan"); } else if (duaTahunLalu < Integer.parseInt(map.get("tahun").toString()) && Integer.parseInt(map.get("tahun").toString()) <= tahunLalu - && now.isAfter(january15thBeforeMidnight)) { + && now.isAfter(penangguhanCutOff)) { map.put("statusPenangguhan", "Tidak Ditangguhkan"); } else { map.put("statusPenangguhan", "Belum Ditangguhkan"); diff --git a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/EvaluasiJabatanVO.java b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/EvaluasiJabatanVO.java index 9aef5a64..a5216db7 100644 --- a/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/EvaluasiJabatanVO.java +++ b/jasamedika-domain/src/main/java/com/jasamedika/medifirst2000/vo/EvaluasiJabatanVO.java @@ -10,15 +10,14 @@ import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO; import com.jasamedika.medifirst2000.helper.Caption; /** - * class EvaluasiJabatanVOVO + * class EvaluasiJabatanVOVO * * @author Generator */ -public class EvaluasiJabatanVO extends BaseTransactionVO{ - +public class EvaluasiJabatanVO extends BaseTransactionVO { + @ManyToOne @JoinColumn(name = "RuanganFk") - @NotNull(message = "RuanganFk") @Caption(value = "RuanganFk") private RuanganVO ruangan; @@ -29,260 +28,287 @@ public class EvaluasiJabatanVO extends BaseTransactionVO{ public void setRuangan(RuanganVO ruangan) { this.ruangan = ruangan; } - - -@ManyToOne - @JoinColumn(name = "PegawaiFk") - @NotNull(message = "Pegawai Harus Diisi") - @Caption(value = "Pegawai") + + @ManyToOne + @JoinColumn(name = "PegawaiFk") + @Caption(value = "Pegawai") private PegawaiVO pegawai; + public PegawaiVO getPegawai() { return pegawai; } + public void setPegawai(PegawaiVO pegawai) { this.pegawai = pegawai; } - @Column(name = "PegawaiFk", insertable=false,updatable=false) + + @Column(name = "PegawaiFk", insertable = false, updatable = false) private Integer pegawaiId; - @Column(name = "Tahun", nullable = false , length = 100) - @Caption(value = "Tahun") - private Integer tahun ; + @Column(name = "Tahun", nullable = false, length = 100) + @Caption(value = "Tahun") + private Integer tahun; + public Integer getTahun() { - return tahun ; - } - public void setTahun(Integer tahun ) { - this.tahun = tahun ; + return tahun; } -@ManyToOne - @JoinColumn(name = "Faktor1Fk") - @NotNull(message = "Faktor1 Harus Diisi") - @Caption(value = "Faktor1") + public void setTahun(Integer tahun) { + this.tahun = tahun; + } + + @ManyToOne + @JoinColumn(name = "Faktor1Fk") + @NotNull(message = "Faktor1 Harus Diisi") + @Caption(value = "Faktor1") private FaktorEvaluasiVO faktor1; + public FaktorEvaluasiVO getFaktor1() { return faktor1; } + public void setFaktor1(FaktorEvaluasiVO faktor1) { this.faktor1 = faktor1; } - @Column(name = "Faktor1Fk", insertable=false,updatable=false) + + @Column(name = "Faktor1Fk", insertable = false, updatable = false) private Integer faktor1Id; -@ManyToOne - @JoinColumn(name = "Faktor2Fk") - @NotNull(message = "Faktor2 Harus Diisi") - @Caption(value = "Faktor2") + @ManyToOne + @JoinColumn(name = "Faktor2Fk") + @NotNull(message = "Faktor2 Harus Diisi") + @Caption(value = "Faktor2") private FaktorEvaluasiVO faktor2; + public FaktorEvaluasiVO getFaktor2() { return faktor2; } + public void setFaktor2(FaktorEvaluasiVO faktor2) { this.faktor2 = faktor2; } - @Column(name = "Faktor2Fk", insertable=false,updatable=false) + + @Column(name = "Faktor2Fk", insertable = false, updatable = false) private Integer faktor2Id; -@ManyToOne - @JoinColumn(name = "Faktor3Fk") - @NotNull(message = "Faktor3 Harus Diisi") - @Caption(value = "Faktor3") + @ManyToOne + @JoinColumn(name = "Faktor3Fk") + @NotNull(message = "Faktor3 Harus Diisi") + @Caption(value = "Faktor3") private FaktorEvaluasiVO faktor3; + public FaktorEvaluasiVO getFaktor3() { return faktor3; } + public void setFaktor3(FaktorEvaluasiVO faktor3) { this.faktor3 = faktor3; } - @Column(name = "Faktor3Fk", insertable=false,updatable=false) + + @Column(name = "Faktor3Fk", insertable = false, updatable = false) private Integer faktor3Id; -@ManyToOne - @JoinColumn(name = "Faktor4Fk") - @NotNull(message = "Faktor4 Harus Diisi") - @Caption(value = "Faktor4") + @ManyToOne + @JoinColumn(name = "Faktor4Fk") + @NotNull(message = "Faktor4 Harus Diisi") + @Caption(value = "Faktor4") private FaktorEvaluasiVO faktor4; + public FaktorEvaluasiVO getFaktor4() { return faktor4; } + public void setFaktor4(FaktorEvaluasiVO faktor4) { this.faktor4 = faktor4; } - @Column(name = "Faktor4Fk", insertable=false,updatable=false) + + @Column(name = "Faktor4Fk", insertable = false, updatable = false) private Integer faktor4Id; -@ManyToOne - @JoinColumn(name = "Faktor5Fk") - @NotNull(message = "Faktor5 Harus Diisi") - @Caption(value = "Faktor5") + @ManyToOne + @JoinColumn(name = "Faktor5Fk") + @NotNull(message = "Faktor5 Harus Diisi") + @Caption(value = "Faktor5") private FaktorEvaluasiVO faktor5; + public FaktorEvaluasiVO getFaktor5() { return faktor5; } + public void setFaktor5(FaktorEvaluasiVO faktor5) { this.faktor5 = faktor5; } - @Column(name = "Faktor5Fk", insertable=false,updatable=false) + + @Column(name = "Faktor5Fk", insertable = false, updatable = false) private Integer faktor5Id; -@ManyToOne - @JoinColumn(name = "Faktor7Fk") - @NotNull(message = "Faktor7 Harus Diisi") - @Caption(value = "Faktor7") + @ManyToOne + @JoinColumn(name = "Faktor7Fk") + @NotNull(message = "Faktor7 Harus Diisi") + @Caption(value = "Faktor7") private FaktorEvaluasiVO faktor7; + public FaktorEvaluasiVO getFaktor7() { return faktor7; } + public void setFaktor7(FaktorEvaluasiVO faktor7) { this.faktor7 = faktor7; } - @Column(name = "Faktor7Fk", insertable=false,updatable=false) + + @Column(name = "Faktor7Fk", insertable = false, updatable = false) private Integer faktor7Id; -@ManyToOne - @JoinColumn(name = "Faktor8Fk") - @NotNull(message = "Faktor8 Harus Diisi") - @Caption(value = "Faktor8") + @ManyToOne + @JoinColumn(name = "Faktor8Fk") + @NotNull(message = "Faktor8 Harus Diisi") + @Caption(value = "Faktor8") private FaktorEvaluasiVO faktor8; + public FaktorEvaluasiVO getFaktor8() { return faktor8; } + public void setFaktor8(FaktorEvaluasiVO faktor8) { this.faktor8 = faktor8; } - @Column(name = "Faktor8Fk", insertable=false,updatable=false) + + @Column(name = "Faktor8Fk", insertable = false, updatable = false) private Integer faktor8Id; -@ManyToOne - @JoinColumn(name = "Faktor9Fk") - @NotNull(message = "Faktor9 Harus Diisi") - @Caption(value = "Faktor9") + @ManyToOne + @JoinColumn(name = "Faktor9Fk") + @NotNull(message = "Faktor9 Harus Diisi") + @Caption(value = "Faktor9") private FaktorEvaluasiVO faktor9; + public FaktorEvaluasiVO getFaktor9() { return faktor9; } + public void setFaktor9(FaktorEvaluasiVO faktor9) { this.faktor9 = faktor9; } - @Column(name = "Faktor9Fk", insertable=false,updatable=false) + + @Column(name = "Faktor9Fk", insertable = false, updatable = false) private Integer faktor9Id; -@ManyToOne - @JoinColumn(name = "Faktor10Fk") - @NotNull(message = "Faktor10 Harus Diisi") - @Caption(value = "Faktor10") + @ManyToOne + @JoinColumn(name = "Faktor10Fk") + @NotNull(message = "Faktor10 Harus Diisi") + @Caption(value = "Faktor10") private FaktorEvaluasiVO faktor10; + public FaktorEvaluasiVO getFaktor10() { return faktor10; } + public void setFaktor10(FaktorEvaluasiVO faktor10) { this.faktor10 = faktor10; } - @Column(name = "Faktor10Fk", insertable=false,updatable=false) + + @Column(name = "Faktor10Fk", insertable = false, updatable = false) private Integer faktor10Id; - - - @ManyToOne - @JoinColumn(name = "FaktorAFk") + @JoinColumn(name = "FaktorAFk") @Caption(value = "FaktorA") private FaktorEvaluasiVO faktorA; @Column(name = "FaktorAFk", insertable = false, updatable = false) private Integer faktorAId; @ManyToOne - @JoinColumn(name = "FaktorBFk") + @JoinColumn(name = "FaktorBFk") @Caption(value = "FaktorB") private FaktorEvaluasiVO faktorB; @Column(name = "FaktorBFk", insertable = false, updatable = false) private Integer faktorBId; - + @ManyToOne - @JoinColumn(name = "FaktorCFk") + @JoinColumn(name = "FaktorCFk") @Caption(value = "FaktorC") private FaktorEvaluasiVO faktorC; @Column(name = "FaktorCFk", insertable = false, updatable = false) private Integer faktorCId; - + @ManyToOne - @JoinColumn(name = "FaktorDFk") + @JoinColumn(name = "FaktorDFk") @Caption(value = "FaktorD") private FaktorEvaluasiVO faktorD; @Column(name = "FaktorDFk", insertable = false, updatable = false) private Integer faktorDId; - + @ManyToOne - @JoinColumn(name = "FaktorEFk") + @JoinColumn(name = "FaktorEFk") @Caption(value = "FaktorE") private FaktorEvaluasiVO faktorE; @Column(name = "FaktorEFk", insertable = false, updatable = false) private Integer faktorEId; - + @ManyToOne - @JoinColumn(name = "FaktorFFk") + @JoinColumn(name = "FaktorFFk") @Caption(value = "FaktorF") private FaktorEvaluasiVO faktorF; @Column(name = "FaktorFFk", insertable = false, updatable = false) private Integer faktorFId; - + @ManyToOne - @JoinColumn(name = "FaktorGFk") + @JoinColumn(name = "FaktorGFk") @Caption(value = "FaktorG") private FaktorEvaluasiVO faktorG; @Column(name = "FaktorGFk", insertable = false, updatable = false) private Integer faktorGId; - + @ManyToOne - @JoinColumn(name = "FaktorHFk") + @JoinColumn(name = "FaktorHFk") @Caption(value = "FaktorH") private FaktorEvaluasiVO faktorH; @Column(name = "FaktorHFk", insertable = false, updatable = false) private Integer faktorHId; - + @ManyToOne - @JoinColumn(name = "FaktorIFk") + @JoinColumn(name = "FaktorIFk") @Caption(value = "FaktorI") private FaktorEvaluasiVO faktorI; @Column(name = "FaktorIFk", insertable = false, updatable = false) private Integer faktorIId; - + @ManyToOne - @JoinColumn(name = "FaktorJFk") + @JoinColumn(name = "FaktorJFk") @Caption(value = "FaktorJ") private FaktorEvaluasiVO faktorJ; @Column(name = "FaktorJFk", insertable = false, updatable = false) private Integer faktorJId; - + @ManyToOne - @JoinColumn(name = "FaktorKFk") + @JoinColumn(name = "FaktorKFk") @Caption(value = "FaktorK") private FaktorEvaluasiVO faktorK; @Column(name = "FaktorKFk", insertable = false, updatable = false) private Integer faktorKId; - + @ManyToOne - @JoinColumn(name = "FaktorLFk") + @JoinColumn(name = "FaktorLFk") @Caption(value = "FaktorL") private FaktorEvaluasiVO faktorL; @Column(name = "FaktorLFk", insertable = false, updatable = false) private Integer faktorLId; - + @Caption(value = "Bulan") - @Column(name = "Bulan", nullable=true) + @Column(name = "Bulan", nullable = true) private String bulan; - + @Caption(value = "TotalNilai") - @Column(name = "TotalNilai", nullable=true) + @Column(name = "TotalNilai", nullable = true) private Double totalNilai; - - @ManyToOne(fetch=FetchType.LAZY) - @Caption(value="Object Nilai Kelompok Jabatan") + + @ManyToOne(fetch = FetchType.LAZY) + @Caption(value = "Object Nilai Kelompok Jabatan") private NilaiKelompokJabatanVO grade; - - @ManyToOne(fetch=FetchType.LAZY) - @Caption(value="Object Jabatan") + + @ManyToOne(fetch = FetchType.LAZY) + @Caption(value = "Object Jabatan") private JabatanVO jabatan; - + public FaktorEvaluasiVO getFaktorA() { return faktorA; } diff --git a/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/SdmController.java b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/SdmController.java index c02b70b6..55562aeb 100644 --- a/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/SdmController.java +++ b/jasamedika-sdm/src/main/java/com/jasamedika/medifirst2000/controller/SdmController.java @@ -2147,7 +2147,7 @@ public class SdmController extends LocaleController { } @RequestMapping(value = "/save-evaluasi-jabatan", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE) - public ResponseEntity> saveEvaluasiJabatan(@Valid @RequestBody List vo, + public ResponseEntity> saveEvaluasiJabatan(@Valid @RequestBody EvaluasiJabatanVO vo, HttpServletRequest request) { try { Map result = EvaluasiJabatanService.saveEvaluasiJabatan(vo);