Merge branch 'dev/auth/ketua-komite' into dev/no-cron
This commit is contained in:
commit
9300f5d5d0
@ -261,6 +261,14 @@ public interface MapPegawaiJabatanToUnitKerjaDao extends JpaRepository<MapPegawa
|
||||
List<Map<String, Object>> getMapSubunitKerjaMonitoringByUnitPegawai(@Param("idPegawai") Integer idPegawai,
|
||||
@Param("idUnitKerja") Integer idUnitKerja);
|
||||
|
||||
@Query("select distinct new Map(subunit.id as id, subunit.name as name) " + "from MapPegawaiJabatanToUnitKerja map "
|
||||
+ "left join map.jabatan jab " + "left join map.subUnitKerjaPegawai subunit " + "where map.statusEnabled is true "
|
||||
+ "and map.pegawaiId = :idPegawai " + "and map.unitKerjaPegawaiId = :idUnitKerja " + "and jb.kelompokJabatanId = :kelompokJabatanId "
|
||||
+ "order by subunit.name")
|
||||
List<Map<String, Object>> getMapSubunitKerjaMonitoringByUnitPegawaiAndKelompokJabatan(@Param("idPegawai") Integer idPegawai,
|
||||
@Param("idUnitKerja") Integer idUnitKerja,
|
||||
@Param("kelompokJabatanId") Integer IdKelompokJabatan);
|
||||
|
||||
@Query("select distinct mapp.pegawaiId from MapPegawaiJabatanToUnitKerja mapp "
|
||||
+ "where mapp.statusEnabled is true and mapp.pegawaiId is not null and mapp.unitKerjaPegawaiId = :idUnitKerja")
|
||||
List<Integer> getPegawaiByUnitKerja(@Param("idUnitKerja") Integer idUnitKerja);
|
||||
|
||||
@ -1447,10 +1447,11 @@ public class MapPegawaiJabatanToUnitKerjaServiceImpl extends BaseVoServiceImpl
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> getMapSubunitKerjaByUnitPegawai(Integer idPegawai, Integer idUnitKerja) {
|
||||
public List<Map<String, Object>> getMapSubunitKerjaByUnitPegawai(Integer idPegawaiLogin, Integer idUnitKerja) {
|
||||
int lvlJabatan = 0;
|
||||
List<Integer> listIdJabatanKetuaKomiteNakesLain = splitDataSettingDatafixed("idJabatanKetuaKomiteNakesLain");
|
||||
List<Map<String, Object>> listLevelJabatanAndMonitoring = mapPegawaiJabatanToUnitKerjaDao
|
||||
.getMappLevelJabatanAndMonitoring(idPegawai, idUnitKerja);
|
||||
.getMappLevelJabatanAndMonitoring(idPegawaiLogin, idUnitKerja);
|
||||
if (CommonUtil.isNotNullOrEmpty(listLevelJabatanAndMonitoring)) {
|
||||
for (Map<String, Object> mapLj : listLevelJabatanAndMonitoring) {
|
||||
lvlJabatan = Integer.parseInt(mapLj.get("levelJabatan").toString());
|
||||
@ -1464,7 +1465,20 @@ public class MapPegawaiJabatanToUnitKerjaServiceImpl extends BaseVoServiceImpl
|
||||
if (lvlJabatan <= 3) {
|
||||
result = subUnitKerjaDao.getSubUnitKerjaCustomByUnitKerja(idUnitKerja);
|
||||
} else {
|
||||
result = mapPegawaiJabatanToUnitKerjaDao.getMapSubunitKerjaMonitoringByUnitPegawai(idPegawai, idUnitKerja);
|
||||
result = mapPegawaiJabatanToUnitKerjaDao.getMapSubunitKerjaMonitoringByUnitPegawai(idPegawaiLogin,
|
||||
idUnitKerja);
|
||||
}
|
||||
|
||||
if (mapPegawaiJabatanToUnitKerjaDao.existsByPegawaiIdAndJabatanIdIn(idPegawaiLogin,
|
||||
listIdJabatanKetuaKomiteNakesLain)) {
|
||||
List<Map<String, Object>> listSubUnitKerjaNakesLain = mapPegawaiJabatanToUnitKerjaDao
|
||||
.getMapSubunitKerjaMonitoringByUnitPegawaiAndKelompokJabatan(idPegawaiLogin, idUnitKerja,
|
||||
PENUNJANG_MEDIK);
|
||||
List<Integer> alreadyAdded = result.stream().map(rs -> Integer.parseInt(rs.get("id").toString()))
|
||||
.collect(Collectors.toList());
|
||||
result.addAll(listSubUnitKerjaNakesLain.stream()
|
||||
.filter(sk -> !alreadyAdded.contains(Integer.parseInt(sk.get("id").toString())))
|
||||
.collect(Collectors.toList()));
|
||||
}
|
||||
|
||||
return result;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user