Update service monitoring absensi
Penambahan hak akses view ketua komite nakes lain untuk monitoring presensi pegawai
This commit is contained in:
parent
54a5900b54
commit
1897e9f18f
@ -18,9 +18,13 @@ import org.springframework.stereotype.Service;
|
|||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
import static com.jasamedika.medifirst2000.constants.Master.KelompokJabatan.PENUNJANG_MEDIK;
|
||||||
|
|
||||||
@Service("MapPegawaiJabatanToUnitKerjaService")
|
@Service("MapPegawaiJabatanToUnitKerjaService")
|
||||||
public class MapPegawaiJabatanToUnitKerjaServiceImpl implements MapPegawaiJabatanToUnitKerjaService {
|
public class MapPegawaiJabatanToUnitKerjaServiceImpl extends BaseVoServiceImpl
|
||||||
|
implements MapPegawaiJabatanToUnitKerjaService {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private MappingPegawaiToAtasanService mappingPegawaiToAtasanService;
|
private MappingPegawaiToAtasanService mappingPegawaiToAtasanService;
|
||||||
@ -1412,29 +1416,34 @@ public class MapPegawaiJabatanToUnitKerjaServiceImpl implements MapPegawaiJabata
|
|||||||
@Override
|
@Override
|
||||||
public List<Map<String, Object>> getMapUnitKerjaByPegawai(Integer idPegawai) {
|
public List<Map<String, Object>> getMapUnitKerjaByPegawai(Integer idPegawai) {
|
||||||
boolean isDirektur = false;
|
boolean isDirektur = false;
|
||||||
|
|
||||||
int levelJabatan = 0;
|
int levelJabatan = 0;
|
||||||
int sublevelJabatan = 0;
|
int sublevelJabatan = 0;
|
||||||
|
List<Integer> listIdJabatanKetuaKomiteNakesLain = splitDataSettingDatafixed("idJabatanKetuaKomiteNakesLain");
|
||||||
List<Map<String, Object>> mapLevel = mapPegawaiJabatanToUnitKerjaDao.getMappLevelByPegawai(idPegawai);
|
List<Map<String, Object>> mapLevel = mapPegawaiJabatanToUnitKerjaDao.getMappLevelByPegawai(idPegawai);
|
||||||
for (Map<String, Object> map : mapLevel) {
|
for (Map<String, Object> map : mapLevel)
|
||||||
if (map.get("levelJabatan").equals(Master.Jabatan.LEVEL_DIREKTUR)) {
|
if (map.get("levelJabatan").equals(Master.Jabatan.LEVEL_DIREKTUR)) {
|
||||||
isDirektur = true;
|
isDirektur = true;
|
||||||
levelJabatan = Integer.parseInt(map.get("levelJabatan").toString());
|
levelJabatan = Integer.parseInt(map.get("levelJabatan").toString());
|
||||||
sublevelJabatan = Integer.parseInt(map.get("subLevelJabatan").toString());
|
sublevelJabatan = Integer.parseInt(map.get("subLevelJabatan").toString());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
List<Map<String, Object>> result = mapPegawaiJabatanToUnitKerjaDao.getMapUnitKerjaByPegawai(idPegawai);
|
List<Map<String, Object>> result = mapPegawaiJabatanToUnitKerjaDao.getMapUnitKerjaByPegawai(idPegawai);
|
||||||
if (isDirektur) {
|
if (isDirektur)
|
||||||
result.addAll(mapPegawaiJabatanToUnitKerjaDao.getMapUnitKerjaByLevelJabatan(levelJabatan, sublevelJabatan));
|
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());
|
||||||
|
result.addAll(unitKerjaNakesLain);
|
||||||
}
|
}
|
||||||
|
if (CommonUtil.isNotNullOrEmpty(result))
|
||||||
if (CommonUtil.isNotNullOrEmpty(result)) {
|
|
||||||
return result;
|
return result;
|
||||||
} else {
|
return new ArrayList<>();
|
||||||
return new ArrayList<>();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user