Update service jadwal kerja pegawai

Pembuatan get data tanggal jam kerja dokter dalam periode
This commit is contained in:
Salman Manoe 2023-03-27 15:55:47 +07:00
parent 73f6f8eeef
commit e21457f1bd
3 changed files with 30 additions and 3 deletions

View File

@ -83,4 +83,12 @@ public interface PegawaiJadwalKerjaDao extends PagingAndSortingRepository<Pegawa
+ "and kl.tanggal between :tglAwal and :tglAkhir " + "order by kl.tanggal")
List<Map<String, Object>> getKuantitasHariKerja(@Param("pegawaiId") Integer idPegawai,
@Param("tglAwal") Date tglAwal, @Param("tglAkhir") Date tglAkhir);
@Query("select new Map(sk.id as id," + "kl.tanggal as tanggal,"
+ "sk.jamMasuk as jamMasuk,sk.jamPulang as jamPulang) " + "from PegawaiJadwalKerja pjk "
+ "inner join pjk.tanggal kl " + "inner join pjk.shift sk "
+ "where sk.jamMasuk is not null and sk.jamMasuk <> '' " + "and pjk.pegawaiId = :pegawaiId "
+ "and kl.tanggal between :tglAwal and :tglAkhir " + "order by kl.tanggal")
List<Map<String, Object>> findJamMasukJamPulang(@Param("pegawaiId") Integer idPegawai,
@Param("tglAwal") Date tglAwal, @Param("tglAkhir") Date tglAkhir);
}

View File

@ -5,6 +5,8 @@ import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.Arrays;
@ -14,6 +16,7 @@ import java.util.List;
import java.util.Map;
import java.util.Queue;
import org.joda.time.format.DateTimeFormat;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -22,6 +25,7 @@ import com.jasamedika.medifirst2000.converter.BaseConverterImpl;
import com.jasamedika.medifirst2000.dao.AntrianPasienDiPeriksaDao;
import com.jasamedika.medifirst2000.dao.LogAccDao;
import com.jasamedika.medifirst2000.dao.PasienDaftarDao;
import com.jasamedika.medifirst2000.dao.PegawaiJadwalKerjaDao;
import com.jasamedika.medifirst2000.dao.PelayananPasienDao;
import com.jasamedika.medifirst2000.dao.StrukPelayananDao;
import com.jasamedika.medifirst2000.entities.JenisObat;
@ -70,6 +74,9 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
@Autowired
private StrukPelayananDao strukPelayananDao;
@Autowired
private PegawaiJadwalKerjaDao pegawaiJadwalKerjaDao;
@Override
public Map<String, Object> savePelayananPasien(PelayananPasienVO vo) {
Map<String, Object> result = new HashMap<String, Object>();
@ -398,6 +405,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
Map<String, Object> remun = new HashMap<>();
Map<String, Object> ffs = new HashMap<>();
DateFormat df = new SimpleDateFormat("yyyy-MM");
DateTimeFormatter jamFormat = DateTimeFormatter.ofPattern("HH.mm");
Date date = new Date();
try {
date = df.parse(bulan);
@ -406,11 +414,22 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
}
Date tglAwal = DateUtil.startMonth(date);
Date tglAkhir = DateUtil.endMonth(date);
List<Map<String, Object>> listJadwalKerja = pegawaiJadwalKerjaDao.findJamMasukJamPulang(idPegawai, tglAwal,
tglAkhir);
Double targetRemun = 5_000_000.00;
List<Map<String, Object>> listPelayanan = pelayananPasienDao.findPelayananPasienByPetugasAndTanggal(idPegawai,
List<Map<String, Object>> listData = pelayananPasienDao.findPelayananPasienByPetugasAndTanggal(idPegawai,
tglAwal, tglAkhir);
listJadwalKerja.forEach(j -> {
LocalTime jamMasuk = LocalTime.from(jamFormat.parse(j.get("jamMasuk").toString()));
LocalTime jamPulang = LocalTime.from(jamFormat.parse(j.get("jamPulang").toString()));
listData.forEach(d -> {
Date tglPelayanan = (Date) d.get("tglPelayanan");
});
});
Queue<Map<String, Object>> queuePelayanan = new ArrayDeque<>();
listPelayanan.forEach(pelayanan -> {
listData.forEach(pelayanan -> {
queuePelayanan.offer(pelayanan);
});
List<Map<String, Object>> listPelayananRemun = new ArrayList<>();

View File

@ -15,7 +15,7 @@
</context-param>
<context-param>
<param-name>spring.profiles.default</param-name>
<param-value>sdm</param-value>
<param-value>development</param-value>
</context-param>
<listener>