Merge branch 'dev/base' into dev/integrasi/minio
This commit is contained in:
commit
eca2b190e8
@ -371,7 +371,7 @@ public interface MonitoringAbsenDao extends PagingAndSortingRepository<Monitorin
|
||||
+ "left join mp.jabatan jb with jb.statusEnabled is true "
|
||||
+ "where mp.statusEnabled is true and pg.statusEnabled is true "
|
||||
+ "and pg.kedudukanId not in (:listException) " + "and mp.unitKerjaPegawaiId = :idUnitKerja "
|
||||
+ "and jb.levelJabatan = :levelJabatan+1 " // satu_level_dibawah_pegawai_login
|
||||
+ "and (jb.levelJabatan = :levelJabatan+1 or jb.levelJabatan = :levelJabatan+2) " // dua_level_dibawah_pegawai_login
|
||||
+ "and jb.subLevelJabatan = :sublevelJabatan")
|
||||
List<Map<String, Object>> getDataPegawaiDirektur(@Param("idUnitKerja") Integer idUnitKerja,
|
||||
@Param("levelJabatan") Integer levelJabatan, @Param("sublevelJabatan") Integer sublevelJabatan,
|
||||
|
||||
@ -31,7 +31,7 @@ public interface ShiftKerjaDao extends PagingAndSortingRepository<ShiftKerja, In
|
||||
+ "model.waktuIstirahat as waktuIstirahat) " + "from ShiftKerja model "
|
||||
+ "where model.kelompokShift.id=:id " + "and model.statusEnabled is true")
|
||||
List<Map<String, Object>> findByKelompokShiftId(@Param("id") Integer idShift);
|
||||
|
||||
|
||||
@Query("select new Map(model.factorRate as factorRate, " + "model.flagKetidakhadiran as flagKetidakhadiran, "
|
||||
+ "model.id as id, " + "model.jadwalPraktekId as jadwalPraktekId, "
|
||||
+ "model.jamBreakAkhir as jamBreakAkhir, " + "model.jamBreakAwal as jamBreakAwal, "
|
||||
|
||||
@ -1278,29 +1278,25 @@ public class MapPegawaiJabatanToUnitKerjaServiceImpl extends BaseVoServiceImpl
|
||||
int sublevelJabatan = 0;
|
||||
List<Integer> listIdJabatanKetuaKomiteNakesLain = splitDataSettingDatafixed("idJabatanKetuaKomiteNakesLain");
|
||||
List<Map<String, Object>> mapLevel = mapPegawaiJabatanToUnitKerjaDao.getMappLevelByPegawai(idPegawai);
|
||||
for (Map<String, Object> map : mapLevel)
|
||||
List<Map<String, Object>> result = mapPegawaiJabatanToUnitKerjaDao.getMapUnitKerjaByPegawai(idPegawai);
|
||||
for (Map<String, Object> map : mapLevel){
|
||||
if (map.get("levelJabatan").equals(Master.Jabatan.LEVEL_DIREKTUR)) {
|
||||
isDirektur = true;
|
||||
levelJabatan = Integer.parseInt(map.get("levelJabatan").toString());
|
||||
sublevelJabatan = Integer.parseInt(map.get("subLevelJabatan").toString());
|
||||
break;
|
||||
result.addAll(mapPegawaiJabatanToUnitKerjaDao.getMapUnitKerjaByLevelJabatan(levelJabatan, sublevelJabatan));
|
||||
}
|
||||
List<Map<String, Object>> result = mapPegawaiJabatanToUnitKerjaDao.getMapUnitKerjaByPegawai(idPegawai);
|
||||
if (isDirektur)
|
||||
result.addAll(mapPegawaiJabatanToUnitKerjaDao.getMapUnitKerjaByLevelJabatan(levelJabatan, sublevelJabatan));
|
||||
if (mapPegawaiJabatanToUnitKerjaDao.existsByPegawaiIdAndJabatanIdIn(idPegawai,
|
||||
listIdJabatanKetuaKomiteNakesLain)) {
|
||||
List<Map<String, Object>> listUnitKerja = mapPegawaiJabatanToUnitKerjaDao
|
||||
.getMapUnitKerjaByKelompokJabatan(PENUNJANG_MEDIK);
|
||||
List<Integer> alreadyAdded = result.stream().map(rs -> Integer.parseInt(rs.get("id").toString()))
|
||||
.collect(Collectors.toList());
|
||||
List<Map<String, Object>> unitKerjaNakesLain = listUnitKerja.stream()
|
||||
.filter(unitKerja -> !alreadyAdded.contains(Integer.parseInt(unitKerja.get("id").toString())))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
if (mapPegawaiJabatanToUnitKerjaDao.existsByPegawaiIdAndJabatanIdIn(idPegawai, listIdJabatanKetuaKomiteNakesLain)) {
|
||||
List<Map<String, Object>> listUnitKerja = mapPegawaiJabatanToUnitKerjaDao.getMapUnitKerjaByKelompokJabatan(PENUNJANG_MEDIK);
|
||||
List<Integer> alreadyAdded = result.stream().map(rs -> Integer.parseInt(rs.get("id").toString())).collect(Collectors.toList());
|
||||
List<Map<String, Object>> unitKerjaNakesLain = listUnitKerja.stream().filter(unitKerja -> !alreadyAdded.contains(Integer.parseInt(unitKerja.get("id").toString()))).collect(Collectors.toList());
|
||||
result.addAll(unitKerjaNakesLain);
|
||||
}
|
||||
if (CommonUtil.isNotNullOrEmpty(result))
|
||||
if (CommonUtil.isNotNullOrEmpty(result)){
|
||||
return result;
|
||||
}
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
|
||||
@ -4474,16 +4474,12 @@ public class MonitoringAbsenServiceImpl extends BaseVoServiceImpl implements Mon
|
||||
isDirektur = true;
|
||||
levelJabatan = Integer.parseInt(map.get("levelJabatan").toString());
|
||||
sublevelJabatan = Integer.parseInt(map.get("subLevelJabatan").toString());
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (isDirektur) {
|
||||
result = monitoringAbsenDao.getDataPegawaiDirektur(idUnitKerja, levelJabatan, sublevelJabatan,
|
||||
splitDataSettingDatafixed("idMeninggalKeluarPindah"));
|
||||
} else if (listPegawaiSDM.contains(idPegawaiLogin)) {
|
||||
result = monitoringAbsenDao.getDataPegawaiRev(idUnitKerja, idSubUnitKerja,
|
||||
splitDataSettingDatafixed("idMeninggalKeluarPindah"));
|
||||
System.out.println("skenario 3 = " + levelJabatan + " | " + sublevelJabatan);
|
||||
result.addAll(monitoringAbsenDao.getDataPegawaiDirektur(idUnitKerja, levelJabatan, sublevelJabatan, splitDataSettingDatafixed("idMeninggalKeluarPindah")));
|
||||
} else if (listPegawaiSDM.contains(idPegawaiLogin)) {
|
||||
result.addAll(monitoringAbsenDao.getDataPegawaiRev(idUnitKerja, idSubUnitKerja, splitDataSettingDatafixed("idMeninggalKeluarPindah")));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user