Update domain pengaturan hari libur

Penambahan atribut pengecekan cuti bersama dapat ditangguhkan
This commit is contained in:
Salman Manoe 2025-01-09 13:23:31 +07:00
parent 55e6b2c054
commit f4d24491b1
4 changed files with 55 additions and 110 deletions

View File

@ -1,43 +1,39 @@
package com.jasamedika.medifirst2000.dao; package com.jasamedika.medifirst2000.dao;
import java.util.List; import com.jasamedika.medifirst2000.entities.Kalender;
import java.util.Map; import com.jasamedika.medifirst2000.entities.MapKalenderToHariLibur;
import org.springframework.data.jpa.repository.Query; import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository; import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.data.repository.query.Param; import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import com.jasamedika.medifirst2000.entities.Kalender; import java.util.List;
import com.jasamedika.medifirst2000.entities.MapKalenderToHariLibur; import java.util.Map;
@Repository @Repository
public interface MapKalenderToHariLiburDao extends PagingAndSortingRepository<MapKalenderToHariLibur, Integer> { public interface MapKalenderToHariLiburDao extends PagingAndSortingRepository<MapKalenderToHariLibur, Integer> {
@Query("select new map (model.id as id, model.namaExternal as name, model.tanggal.tanggal as tanggal) from MapKalenderToHariLibur model where model.statusEnabled is true") @Query("select new map (model.id as id, model.namaExternal as name, model.tanggal.tanggal as tanggal) "
public List<Map<String, Object>> getAllByStatusEnabled(); + "from MapKalenderToHariLibur model where model.statusEnabled is true")
List<Map<String, Object>> getAllByStatusEnabled();
@Query("select model from Kalender model where model.statusEnabled is true and to_char(tanggal,'yyyy-MM-dd') = :tanggal")
public Kalender getKalender(@Param("tanggal") String tgl); @Query("select model from Kalender model "
+ "where model.statusEnabled is true and to_char(tanggal,'yyyy-MM-dd') = :tanggal")
@Query("select to_char(kalender.tanggal,'yyyy-MM-dd') "+ Kalender getKalender(@Param("tanggal") String tgl);
"from MapKalenderToHariLibur mapLibur "+
"inner join mapLibur.tanggal kalender "+ @Query("select to_char(kalender.tanggal,'yyyy-MM-dd') " + "from MapKalenderToHariLibur mapLibur "
"inner join mapLibur.hariLibur hariLibur "+ + "inner join mapLibur.tanggal kalender " + "inner join mapLibur.hariLibur hariLibur "
"where hariLibur.id in (8,17) "+ + "where hariLibur.id in (8,17) " + "and to_char(kalender.tanggal,'yyyy')=:tahun "
"and to_char(kalender.tanggal,'yyyy')=:tahun "+ + "and mapLibur.statusEnabled is true")
"and mapLibur.statusEnabled is true") List<String> getTglCutiBersama(@Param("tahun") String tahun);
public List<String> getTglCutiBersama(@Param("tahun") String tahun);
@Query("select new Map(model.statusEnabled as statusEnabled,model.namaExternal as namaExternal," @Query("select new Map(model.statusEnabled as statusEnabled,model.namaExternal as namaExternal,"
+ "to_char(kalender.tanggal,'dd-MM-yyyy') as tanggal,to_char(kalender.tanggal,'yyyy-MM-dd') as tanggalId," + "to_char(kalender.tanggal,'dd-MM-yyyy') as tanggal,to_char(kalender.tanggal,'yyyy-MM-dd') as tanggalId,"
+ "model.reportDisplay as reportDisplay,model.id as id,model.kodeExternal as kodeExternal," + "model.reportDisplay as reportDisplay,model.id as id,model.kodeExternal as kodeExternal,"
+ "hariLibur.id as hariLiburId,hariLibur.namaHariLibur as hariLiburName," + "hariLibur.id as hariLiburId,hariLibur.namaHariLibur as hariLiburName," + "model.noRec as noRec) "
+ "model.noRec as noRec) " + "from MapKalenderToHariLibur model " + "inner join model.tanggal kalender "
+ "from MapKalenderToHariLibur model " + "inner join model.hariLibur hariLibur " + "where model.statusEnabled is true "
+ "inner join model.tanggal kalender "
+ "inner join model.hariLibur hariLibur "
+ "where model.statusEnabled is true "
+ "and to_char(kalender.tanggal,'yyyy')>=:tahun") + "and to_char(kalender.tanggal,'yyyy')>=:tahun")
public List<Map<String, Object>> getMappingHariLibur(@Param("tahun") String tahun); List<Map<String, Object>> getMappingHariLibur(@Param("tahun") String tahun);
} }

View File

@ -1564,7 +1564,7 @@ public class IndekKinerjaServiceImpl extends BaseVoServiceImpl implements IndekK
if (CommonUtil.isNotNullOrEmpty(vo.getTanggal())) { if (CommonUtil.isNotNullOrEmpty(vo.getTanggal())) {
Kalender kalender = mapKalenderToHariLiburDao Kalender kalender = mapKalenderToHariLiburDao
.getKalender(new SimpleDateFormat("yyyy-MM-dd").format(vo.getTanggal().getTanggal())); .getKalender(new SimpleDateFormat("yyyy-MM-dd").format(vo.getTanggal().getTanggal()));
mapKalenderToHariLibur.setTgl(kalender); mapKalenderToHariLibur.setTanggal(kalender);
} }
if (CommonUtil.isNotNullOrEmpty(mapKalenderToHariLibur)) { if (CommonUtil.isNotNullOrEmpty(mapKalenderToHariLibur)) {
MapKalenderToHariLibur model = mapKalenderToHariLiburDao.save(mapKalenderToHariLibur); MapKalenderToHariLibur model = mapKalenderToHariLiburDao.save(mapKalenderToHariLibur);

View File

@ -1,73 +1,52 @@
package com.jasamedika.medifirst2000.entities; package com.jasamedika.medifirst2000.entities;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;
import com.jasamedika.medifirst2000.base.BaseMaster; import com.jasamedika.medifirst2000.base.BaseMaster;
import com.jasamedika.medifirst2000.helper.Caption; import com.jasamedika.medifirst2000.helper.Caption;
import lombok.Getter;
import lombok.Setter;
import javax.persistence.*;
import javax.validation.constraints.NotNull;
import static javax.persistence.GenerationType.SEQUENCE;
/** /**
* class MapKalenderToHariLibur * class MapKalenderToHariLibur
* *
* @author Generator * @author Generator
*/ */
@Entity // @Audited @Getter
@Setter
@Entity
@Table(name = "MapKalenderToHariLibur_M") @Table(name = "MapKalenderToHariLibur_M")
public class MapKalenderToHariLibur extends BaseMaster { public class MapKalenderToHariLibur extends BaseMaster {
private static final long serialVersionUID = -1571116407894714011L;
@Id
@GeneratedValue(strategy = SEQUENCE, generator = "public.mapkalendertoharilibur_m_id_seq")
@SequenceGenerator(name = "public.mapkalendertoharilibur_m_id_seq", sequenceName = "public.mapkalendertoharilibur_m_id_seq", allocationSize = 1)
@Column(name = "id")
protected Integer id;
@ManyToOne @ManyToOne
@JoinColumn(name = "ObjectHariLiburFk") @JoinColumn(name = "ObjectHariLiburFk")
@NotNull(message = "Kd Hari Libur tidak boleh kosong") @NotNull(message = "Kd Hari Libur tidak boleh kosong")
@Caption(value = "Object Hari Libur") @Caption(value = "Object Hari Libur")
private HariLibur hariLibur; private HariLibur hariLibur;
public void setHariLibur(HariLibur hariLibur) {
this.hariLibur = hariLibur;
}
public HariLibur getHariLibur() {
return this.hariLibur;
}
@Column(name = "ObjectHariLiburFk", insertable = false, updatable = false) @Column(name = "ObjectHariLiburFk", insertable = false, updatable = false)
private Integer hariLiburId; private Integer hariLiburId;
@ManyToOne @ManyToOne
@JoinColumn(name = "ObjectTanggalFk") @JoinColumn(name = "ObjectTanggalFk")
@Caption(value = "Object Tanggal") @Caption(value = "Object Tanggal")
private Kalender tanggal; private Kalender tanggal;
public void setTgl(Kalender tanggal) {
this.tanggal = tanggal;
}
public Kalender getTgl() {
return this.tanggal;
}
@Column(name = "ObjectTanggalFk", insertable = false, updatable = false, nullable = false) @Column(name = "ObjectTanggalFk", insertable = false, updatable = false, nullable = false)
private Integer tanggalId; private Integer tanggalId;
@Id @Column(name = "is_cuti_bersama_ditangguhkan")
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "public.mapkalendertoharilibur_m_id_seq") private Boolean isCutiBersamaDitangguhkan;
@javax.persistence.SequenceGenerator(name = "public.mapkalendertoharilibur_m_id_seq", sequenceName = "public.mapkalendertoharilibur_m_id_seq", allocationSize = 1)
@Column(name = "id")
protected Integer id;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
} }

View File

@ -1,56 +1,26 @@
package com.jasamedika.medifirst2000.vo; package com.jasamedika.medifirst2000.vo;
import java.io.Serializable;
import javax.persistence.*;
import java.util.Date;
import org.hibernate.validator.constraints.NotEmpty;
import com.jasamedika.medifirst2000.base.vo.BaseMasterVO; import com.jasamedika.medifirst2000.base.vo.BaseMasterVO;
import javax.validation.constraints.NotNull; import lombok.Getter;
import org.hibernate.validator.constraints.Length; import lombok.Setter;
import org.hibernate.validator.internal.util.logging.Messages;
import com.fasterxml.jackson.annotation.JsonManagedReference;
import com.jasamedika.medifirst2000.base.vo.BaseMasterVO;
import com.jasamedika.medifirst2000.helper.Caption;
/** /**
* class MapKalenderToHariLibur * class MapKalenderToHariLibur
* *
* @author Generator * @author Generator
*/ */
//@Entity @Getter
//@Table(name = "MapKalenderToHariLibur_M") @Setter
public class MapKalenderToHariLiburVO extends BaseMasterVO { public class MapKalenderToHariLiburVO extends BaseMasterVO {
private HariVO hariLibur;
public void setHariLibur(HariVO hariLibur) { private HariLiburVO hariLibur;
this.hariLibur = hariLibur;
}
@Column(name = "KdHariLibur", nullable = false )
public HariVO getHariLibur(){
return this.hariLibur;
}
@Column(name = "ObjectHariLiburFk", insertable=false,updatable=false)
private Integer hariLiburId; private Integer hariLiburId;
private KalenderVO tanggal;
private KalenderVO tanggal;
public KalenderVO getTanggal() {
return tanggal;
}
public void setTanggal(KalenderVO tanggal) {
this.tanggal = tanggal;
}
@Column(name = "ObjectTanggalFk", insertable=false,updatable=false)
private Integer tanggalId; private Integer tanggalId;
private Boolean isCutiBersamaDitangguhkan;
} }