Update service pelayanan pasien
Perbaikan bug jumlah pelayanan tidak berkurang dan penerapan mekanisme cloning object persistence
This commit is contained in:
parent
8fb26ced95
commit
de600b1192
@ -18,6 +18,6 @@ import java.util.List;
|
||||
public interface MapPelayananPasienPetugasToPegawaiDao
|
||||
extends JpaRepository<MapPelayananPasienPetugasToPegawai, String> {
|
||||
@Query("select mptp from MapPelayananPasienPetugasToPegawai mptp " + "left join mptp.pelayananPasienPetugas ppp "
|
||||
+ "where ppp.norec in (:norecs)")
|
||||
+ "where ppp.noRec in (:norecs)")
|
||||
List<MapPelayananPasienPetugasToPegawai> findByPelayananPasienPetugas(@Param("norecs") List<String> norecs);
|
||||
}
|
||||
|
||||
@ -12,11 +12,10 @@ import com.jasamedika.medifirst2000.service.LoginUserService;
|
||||
import com.jasamedika.medifirst2000.service.PelayananPasienService;
|
||||
import com.jasamedika.medifirst2000.util.CommonUtil;
|
||||
import com.jasamedika.medifirst2000.util.DateUtil;
|
||||
import com.jasamedika.medifirst2000.vo.JenisObatVO;
|
||||
import com.jasamedika.medifirst2000.vo.PelayananPasienVO;
|
||||
import com.jasamedika.medifirst2000.vo.ProdukVO;
|
||||
import com.jasamedika.medifirst2000.vo.*;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.text.*;
|
||||
import java.time.LocalDate;
|
||||
@ -50,11 +49,27 @@ import static com.jasamedika.medifirst2000.constants.Master.TipePegawai.PURNA_WA
|
||||
* @author Generator
|
||||
*/
|
||||
@Service("pelayananPasienService")
|
||||
@Transactional
|
||||
public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements PelayananPasienService {
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<PelayananPasienVO, PelayananPasien> pelayananPasienConverter;
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<PelayananPasienDetailVO, PelayananPasienDetail> pelayananPasienDetailConverter;
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<PelayananPasienPetugasVO, PelayananPasienPetugas> pelayananPasienPetugasConverter;
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<MapPelayananPasienPetugasToPegawaiVO, MapPelayananPasienPetugasToPegawai> mapPelayananPasienPetugasToPegawaiConverter;
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<PelayananPasienTidakTerklaimVO, PelayananPasienTidakTerklaim> pelayananPasienTidakTerklaimConverter;
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<RacikanDetailVO, RacikanDetail> racikanDetailConverter;
|
||||
|
||||
@Autowired
|
||||
private BaseConverterImpl<JenisObatVO, JenisObat> jenisObatConverter;
|
||||
|
||||
@ -2402,7 +2417,7 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
Optional<PelayananPasien> duplicate = splitPelayanan.stream().filter(cp -> cp.getNoRec() == null)
|
||||
.findFirst();
|
||||
if (duplicate.isPresent()) {
|
||||
duplicate.get().setJumlah(pelayananReducedQty.get().getJumlah() - dto.getJumlah());
|
||||
duplicate.get().setJumlah(duplicate.get().getJumlah() - origin.get().getJumlah());
|
||||
duplicate.get().setIsPaket(false);
|
||||
duplicate.get().setVoucherPaket(voucher);
|
||||
{
|
||||
@ -2527,8 +2542,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
|
||||
private List<PelayananPasien> copyPelayananSplitQty(PelayananPasien originPelayanan) {
|
||||
List<PelayananPasien> result = new ArrayList<>();
|
||||
PelayananPasien duplicatePelayanan;
|
||||
duplicatePelayanan = originPelayanan;
|
||||
PelayananPasien duplicatePelayanan = new PelayananPasien();
|
||||
try {
|
||||
duplicatePelayanan = pelayananPasienConverter.clone(originPelayanan, duplicatePelayanan, new String[] {
|
||||
"serialVersionUID", "noRec", "pelayananPasienPetugasSet", "racikan", "pelayananPasienDetailSet" });
|
||||
} catch (IllegalAccessException e) {
|
||||
throw new ServiceVOException(e.getMessage());
|
||||
}
|
||||
{
|
||||
AntrianPasienDiPeriksa antrian = originPelayanan.getPasien();
|
||||
if (CommonUtil.isNotNullOrEmpty(antrian))
|
||||
@ -2609,7 +2629,6 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
if (CommonUtil.isNotNullOrEmpty(voucherPaket))
|
||||
duplicatePelayanan.setVoucherPaket(voucherPaket);
|
||||
}
|
||||
duplicatePelayanan.setNoRec(null);
|
||||
result.add(duplicatePelayanan);
|
||||
result.add(originPelayanan);
|
||||
return result;
|
||||
@ -2618,8 +2637,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
private List<PelayananPasienDetail> copyPelayananDetailSplitQty(List<PelayananPasienDetail> originDetail) {
|
||||
List<PelayananPasienDetail> duplicateDetail = new ArrayList<>();
|
||||
originDetail.forEach(origin -> {
|
||||
PelayananPasienDetail duplicate;
|
||||
duplicate = origin;
|
||||
PelayananPasienDetail duplicate = new PelayananPasienDetail();
|
||||
try {
|
||||
duplicate = pelayananPasienDetailConverter.clone(origin, duplicate,
|
||||
new String[] { "serialVersionUID", "noRec" });
|
||||
} catch (IllegalAccessException e) {
|
||||
throw new ServiceVOException(e.getMessage());
|
||||
}
|
||||
{
|
||||
AntrianPasienDiPeriksa pasien = origin.getPasien();
|
||||
if (CommonUtil.isNotNullOrEmpty(pasien))
|
||||
@ -2660,7 +2684,6 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
if (CommonUtil.isNotNullOrEmpty(strukOrder))
|
||||
duplicate.setStrukOrder(strukOrder);
|
||||
}
|
||||
duplicate.setNoRec(null);
|
||||
duplicateDetail.add(duplicate);
|
||||
duplicateDetail.add(origin);
|
||||
});
|
||||
@ -2671,8 +2694,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
List<PelayananPasienPetugas> originPetugas) {
|
||||
List<PelayananPasienPetugas> duplicatePetugas = new ArrayList<>();
|
||||
originPetugas.forEach(origin -> {
|
||||
PelayananPasienPetugas duplicate;
|
||||
duplicate = origin;
|
||||
PelayananPasienPetugas duplicate = new PelayananPasienPetugas();
|
||||
try {
|
||||
duplicate = pelayananPasienPetugasConverter.clone(origin, duplicate,
|
||||
new String[] { "serialVersionUID", "noRec" });
|
||||
} catch (IllegalAccessException e) {
|
||||
throw new ServiceVOException(e.getMessage());
|
||||
}
|
||||
{
|
||||
AntrianPasienDiPeriksa nomasuk = origin.getNomasuk();
|
||||
if (CommonUtil.isNotNullOrEmpty(nomasuk))
|
||||
@ -2703,7 +2731,6 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
if (CommonUtil.isNotNullOrEmpty(kdruangan))
|
||||
duplicate.setKdruangan(kdruangan);
|
||||
}
|
||||
duplicate.setNoRec(null);
|
||||
duplicatePetugas.add(duplicate);
|
||||
duplicatePetugas.add(origin);
|
||||
});
|
||||
@ -2714,8 +2741,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
List<PelayananPasienTidakTerklaim> originPelayananTidakTerklaim) {
|
||||
List<PelayananPasienTidakTerklaim> duplicatePelayananTidakTerklaim = new ArrayList<>();
|
||||
originPelayananTidakTerklaim.forEach(origin -> {
|
||||
PelayananPasienTidakTerklaim duplicate;
|
||||
duplicate = origin;
|
||||
PelayananPasienTidakTerklaim duplicate = new PelayananPasienTidakTerklaim();
|
||||
try {
|
||||
duplicate = pelayananPasienTidakTerklaimConverter.clone(origin, duplicate,
|
||||
new String[] { "serialVersionUID", "noRec" });
|
||||
} catch (IllegalAccessException e) {
|
||||
throw new ServiceVOException(e.getMessage());
|
||||
}
|
||||
{
|
||||
AntrianPasienDiPeriksa antrian = origin.getPasien();
|
||||
if (CommonUtil.isNotNullOrEmpty(antrian))
|
||||
@ -2791,7 +2823,6 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
if (CommonUtil.isNotNullOrEmpty(strukResep))
|
||||
duplicate.setStrukResep(strukResep);
|
||||
}
|
||||
duplicate.setNoRec(null);
|
||||
duplicatePelayananTidakTerklaim.add(duplicate);
|
||||
duplicatePelayananTidakTerklaim.add(origin);
|
||||
});
|
||||
@ -2801,8 +2832,13 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
List<RacikanDetail> copyDetailRacikanSplitQty(List<RacikanDetail> originRacikanDetail) {
|
||||
List<RacikanDetail> duplicateRacikanDetail = new ArrayList<>();
|
||||
originRacikanDetail.forEach(origin -> {
|
||||
RacikanDetail duplicate;
|
||||
duplicate = origin;
|
||||
RacikanDetail duplicate = new RacikanDetail();
|
||||
try {
|
||||
duplicate = racikanDetailConverter.clone(origin, duplicate,
|
||||
new String[] { "serialVersionUID", "noRec" });
|
||||
} catch (IllegalAccessException e) {
|
||||
throw new ServiceVOException(e.getMessage());
|
||||
}
|
||||
{
|
||||
Produk produk = origin.getProduk();
|
||||
if (CommonUtil.isNotNullOrEmpty(produk))
|
||||
@ -2818,7 +2854,6 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
if (CommonUtil.isNotNullOrEmpty(strukRacikan))
|
||||
duplicate.setStrukRacikan(strukRacikan);
|
||||
}
|
||||
duplicate.setNoRec(null);
|
||||
duplicateRacikanDetail.add(duplicate);
|
||||
duplicateRacikanDetail.add(origin);
|
||||
});
|
||||
@ -2829,14 +2864,18 @@ public class PelayananPasienServiceImpl extends BaseVoServiceImpl implements Pel
|
||||
List<MapPelayananPasienPetugasToPegawai> originMapPetugasPegawai) {
|
||||
List<MapPelayananPasienPetugasToPegawai> duplicateMapPetugasPegawai = new ArrayList<>();
|
||||
originMapPetugasPegawai.forEach(origin -> {
|
||||
MapPelayananPasienPetugasToPegawai duplicate;
|
||||
duplicate = origin;
|
||||
MapPelayananPasienPetugasToPegawai duplicate = new MapPelayananPasienPetugasToPegawai();
|
||||
try {
|
||||
duplicate = mapPelayananPasienPetugasToPegawaiConverter.clone(origin, duplicate,
|
||||
new String[] { "serialVersionUID", "noRec" });
|
||||
} catch (IllegalAccessException e) {
|
||||
throw new ServiceVOException(e.getMessage());
|
||||
}
|
||||
{
|
||||
Pegawai pegawai = origin.getPegawai();
|
||||
if (CommonUtil.isNotNullOrEmpty(pegawai))
|
||||
duplicate.setPegawai(pegawai);
|
||||
}
|
||||
duplicate.setNoRec(null);
|
||||
duplicateMapPetugasPegawai.add(duplicate);
|
||||
duplicateMapPetugasPegawai.add(origin);
|
||||
});
|
||||
|
||||
@ -261,7 +261,7 @@ public class PelayananPasienTidakTerklaim extends MedicalRecordTransaction {
|
||||
@Column(name = "pelayananpasien", insertable = false, updatable = false)
|
||||
private String pelayananPasienId;
|
||||
|
||||
@Column(name = "No Masuk", length = 32)
|
||||
@Column(name = "nomasukfk", length = 32)
|
||||
@Caption(value = "nomasukfk")
|
||||
private String noMasuk;
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user