Update dao slip gaji

Penambahan dao untuk optimize performance slip gaji
This commit is contained in:
Salman Manoe 2023-06-21 14:08:49 +07:00
parent 85399e7ee6
commit 6141f392f1
3 changed files with 16 additions and 6 deletions

View File

@ -352,6 +352,9 @@ public interface MapPegawaiJabatanToUnitKerjaDao extends CrudRepository<MapPegaw
+ "and model.pegawaiId = :pegawaiId")
List<MapPegawaiJabatanToUnitKerja> findByPegawaiId(@Param("pegawaiId") Integer pegawaiId);
@Query("select model from MapPegawaiJabatanToUnitKerja model " + "where model.statusEnabled is true")
List<MapPegawaiJabatanToUnitKerja> findAllEnabled();
@Query("select model from MapPegawaiJabatanToUnitKerja model " + "inner join model.pegawai pg "
+ "where model.statusEnabled is true " + "and pg.statusEnabled is true " + "and pg.namaLengkap <> '-' "
+ "and lower(pg.namaLengkap) not like '%administrator%'")

View File

@ -1,21 +1,23 @@
package com.jasamedika.medifirst2000.dao;
import com.jasamedika.medifirst2000.entities.SlipGaji;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import com.jasamedika.medifirst2000.entities.SlipGaji;
public interface SlipGajiDao extends JpaRepository<SlipGaji, String> {
@Query("select sg from SlipGaji sg where sg.pegawai.id = :pegawaiId and sg.bulan between :start and :end")
Optional<SlipGaji> findByPegawaiAndBulan(@Param("pegawaiId") Integer pegawaiId, @Param("start") Date start,
@Param("end") Date end);
@Query("select sg from SlipGaji sg where sg.bulan between :start and :end")
List<SlipGaji> findByBulan(@Param("start") Date start, @Param("end") Date end);
@Query("select pg.id from SlipGaji sg inner join sg.pegawai pg where sg.bulan between :start and :end")
List<Integer> findPegawaiByBulan(@Param("start") Date start, @Param("end") Date end);

View File

@ -34,4 +34,9 @@ public interface SlipGajiKomponenDao extends JpaRepository<SlipGajiKomponen, Str
+ "and sgk.komponen.id = :idKomponen")
SlipGajiKomponen findBySlipGajiAndKomponen(@Param("idSlipGaji") String idSlipGaji,
@Param("idKomponen") Integer idKomponen);
@Query("select sgk from SlipGajiKomponen sgk " + "where sgk.slipGaji.id in (:listIdSlipGaji) "
+ "and sgk.komponen.id = :idKomponen")
List<SlipGajiKomponen> findAllByKomponen(@Param("listIdSlipGaji") List<String> listIdSlipGaji,
@Param("idKomponen") Integer idKomponen);
}