Merge remote-tracking branch 'remotes/origin/bridging'

This commit is contained in:
salmanoe 2023-02-12 23:08:50 +07:00
commit 9589d39b44
5 changed files with 78 additions and 37 deletions

View File

@ -729,4 +729,10 @@ public class BridgingDaftarOnlineController {
Boolean exists = pasienDaftarService.checkStatusPasien(idPasien); Boolean exists = pasienDaftarService.checkStatusPasien(idPasien);
return new ResponseEntity<>(exists, HttpStatus.OK); return new ResponseEntity<>(exists, HttpStatus.OK);
} }
@RequestMapping(value = "/bpjs/antrian/panggil/{idRuangan}", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<String> getAntrianDipanggil(@PathVariable Integer idRuangan) {
String noantrean = antrianService.currentAntrian(idRuangan);
return new ResponseEntity<>(noantrean, HttpStatus.OK);
}
} }

View File

@ -190,6 +190,15 @@ public interface AntrianPasienDiPeriksaDao extends PagingAndSortingRepository<An
+ "from AntrianPasienDiPeriksa apd " + "inner join apd.pasienDaftar pd " + "from AntrianPasienDiPeriksa apd " + "inner join apd.pasienDaftar pd "
+ "where apd.statusEnabled is true " + "and pd.statusEnabled is true " + "where apd.statusEnabled is true " + "and pd.statusEnabled is true "
+ "and apd.tglMasuk between :tglAwal and :tglAkhir " + "and apd.ruanganId = :ruanganId") + "and apd.tglMasuk between :tglAwal and :tglAkhir " + "and apd.ruanganId = :ruanganId")
List<Map<String, Object>> findAntreanByRuangan(@Param("tglAwal") Date tglAwal, List<Map<String, Object>> findAntreanByRuangan(@Param("tglAwal") Date tglAwal, @Param("tglAkhir") Date tglAkhir,
@Param("tglAkhir") Date tglAkhir, @Param("ruanganId") Integer ruanganId); @Param("ruanganId") Integer ruanganId);
@Query(value = "SELECT CASE WHEN apd.prefixnoantrian IS NULL THEN CAST(apd.noantrian AS VARCHAR) "
+ "WHEN apd.prefixnoantrian IS NOT NULL THEN apd.prefixnoantrian || apd.noantrian ELSE '-' END "
+ "FROM antrianpasiendiperiksa_t apd " + "WHERE apd.objectruanganfk = :ruanganId "
+ "AND (apd.tglmasuk BETWEEN :start AND :end " + "OR apd.tglkeluar BETWEEN :start AND :end) "
+ "AND tgldipanggildokter <= :tanggal "
+ "ORDER BY apd.tgldipanggildokter DESC LIMIT 1", nativeQuery = true)
String currentAntrian(@Param("ruanganId") Integer ruanganId, @Param("start") Date start, @Param("end") Date end,
@Param("tanggal") Date tanggal);
} }

View File

@ -34,4 +34,6 @@ public interface AntrianPasienDiPeriksaService
Integer getFormatNumberByMonthYearBilik(Integer idRuangan); Integer getFormatNumberByMonthYearBilik(Integer idRuangan);
Map<String, Object> getAntreanByRuangan(LocalDate tglMasuk, Integer ruanganId); Map<String, Object> getAntreanByRuangan(LocalDate tglMasuk, Integer ruanganId);
String currentAntrian(Integer idRuangan);
} }

View File

@ -50,7 +50,7 @@ import com.jasamedika.medifirst2000.vo.PegawaiVO;
public class AntrianPasienDiPeriksaServiceImpl extends BaseVoServiceImpl implements AntrianPasienDiPeriksaService { public class AntrianPasienDiPeriksaServiceImpl extends BaseVoServiceImpl implements AntrianPasienDiPeriksaService {
@Autowired @Autowired
private AntrianPasienDiPeriksaConverter antrianPasienDiPeriksaConverter; private AntrianPasienDiPeriksaConverter antrianPasienDiPeriksaConverter;
@Autowired @Autowired
private AntrianPasienDiPeriksaDao antrianPasienDiPeriksaDao; private AntrianPasienDiPeriksaDao antrianPasienDiPeriksaDao;
@ -302,4 +302,17 @@ public class AntrianPasienDiPeriksaServiceImpl extends BaseVoServiceImpl impleme
return result; return result;
} }
} }
@Override
public String currentAntrian(Integer idRuangan) {
LocalTime timeNow = LocalTime.now();
LocalDate dateNow = LocalDate.now();
LocalDateTime now = LocalDateTime.of(dateNow, timeNow);
Date tgl = Date.from(now.atZone(ZoneId.systemDefault()).toInstant());
LocalDateTime start = LocalDateTime.of(dateNow, LocalTime.MIN);
Date tglAwal = Date.from(start.atZone(ZoneId.systemDefault()).toInstant());
LocalDateTime end = LocalDateTime.of(dateNow, LocalTime.MAX);
Date tglAkhir = Date.from(end.atZone(ZoneId.systemDefault()).toInstant());
return antrianPasienDiPeriksaDao.currentAntrian(idRuangan, tglAwal, tglAkhir, tgl);
}
} }

View File

@ -9,68 +9,71 @@ import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO;
import com.jasamedika.medifirst2000.helper.Caption; import com.jasamedika.medifirst2000.helper.Caption;
public class AntrianPasienDiPeriksaVO extends BaseTransactionVO { public class AntrianPasienDiPeriksaVO extends BaseTransactionVO {
@Caption(value="Object Kelas") @Caption(value = "Object Kelas")
private KelasVO kelas; private KelasVO kelas;
@Caption(value="Object Struk OrderFk") @Caption(value = "Object Struk OrderFk")
private StrukOrderVO strukOrder; private StrukOrderVO strukOrder;
@Caption(value="Object Asal Rujukan") @Caption(value = "Object Asal Rujukan")
private AsalRujukanVO asalRujukan; private AsalRujukanVO asalRujukan;
private String statusKunjungan; private String statusKunjungan;
private String statusPenyakit; private String statusPenyakit;
@Caption(value="Object Pegawai") @Caption(value = "Object Pegawai")
private PegawaiVO pegawai; private PegawaiVO pegawai;
@Caption(value="Object Struk Retur") @Caption(value = "Object Struk Retur")
private StrukReturVO strukRetur; private StrukReturVO strukRetur;
@Caption(value="Object Kamar") @Caption(value = "Object Kamar")
private KamarVO kamar; private KamarVO kamar;
@Caption(value="Object Kasus Penyakit") @Caption(value = "Object Kasus Penyakit")
private KasusPenyakitVO kasusPenyakit; private KasusPenyakitVO kasusPenyakit;
@Caption(value="Object Ruangan") @Caption(value = "Object Ruangan")
private RuanganVO ruangan; private RuanganVO ruangan;
@Caption(value="Object Ruangan Asal") @Caption(value = "Object Ruangan Asal")
private RuanganVO ruanganAsal; private RuanganVO ruanganAsal;
@Caption(value="No Antrian") @Caption(value = "No Antrian")
private Integer noAntrian; private Integer noAntrian;
@Caption(value="No Bed") @Caption(value = "No Bed")
private Integer noBed; private Integer noBed;
@NotNull(message="No Registrasi Harus Diisi") @NotNull(message = "No Registrasi Harus Diisi")
@Caption(value="No Registrasi") @Caption(value = "No Registrasi")
private PasienDaftarVO pasienDaftar; private PasienDaftarVO pasienDaftar;
@Caption(value="Prefix No Antrian") @Caption(value = "Prefix No Antrian")
private String prefixNoAntrian; private String prefixNoAntrian;
@Caption(value="Status Pasien") @Caption(value = "Status Pasien")
private Byte statusPasien; private Byte statusPasien;
@Caption(value="Tanggal Registrasi") @Caption(value = "Tanggal Registrasi")
private Date tglRegistrasi; private Date tglRegistrasi;
@Caption(value="Tanggal Dipanggil Suster") @Caption(value = "Tanggal Masuk")
private Date tglMasuk;
@Caption(value = "Tanggal Dipanggil Suster")
private Date tglDipanggilSuster; private Date tglDipanggilSuster;
@Caption(value="Tanggal Dipanggil Dokter") @Caption(value = "Tanggal Dipanggil Dokter")
private Date tglDipanggilDokter; private Date tglDipanggilDokter;
@Column(name = "noMasuk", nullable = true , length = 200) @Column(name = "noMasuk", nullable = true, length = 200)
private String noMasuk; private String noMasuk;
@Column(name = "statusAntrian", nullable = true , length = 200) @Column(name = "statusAntrian", nullable = true, length = 200)
private String statusAntrian; private String statusAntrian;
public KelasVO getKelas() { public KelasVO getKelas() {
return kelas; return kelas;
} }
@ -199,6 +202,14 @@ public class AntrianPasienDiPeriksaVO extends BaseTransactionVO {
this.tglRegistrasi = tglRegistrasi; this.tglRegistrasi = tglRegistrasi;
} }
public Date getTglMasuk() {
return tglMasuk;
}
public void setTglMasuk(Date tglMasuk) {
this.tglMasuk = tglMasuk;
}
public Date getTglDipanggilSuster() { public Date getTglDipanggilSuster() {
return tglDipanggilSuster; return tglDipanggilSuster;
} }