adj checkout
This commit is contained in:
No files matched your search
@@ -292,7 +292,7 @@ func CheckOut(input e.Encounter) (*d.Data, error) {
|
||||
}, nil
|
||||
}
|
||||
|
||||
func Cancel(input e.Encounter) (*d.Data, error) {
|
||||
func UpdateStatus(input e.Encounter) (*d.Data, error) {
|
||||
event := pl.Event{
|
||||
Feature: "Cancel",
|
||||
Source: source,
|
||||
|
||||
@@ -114,16 +114,30 @@ func setDataTPendaftaran(input *e.Encounter, data *etp.TPendaftaran) {
|
||||
return
|
||||
}
|
||||
|
||||
func setDataUpdateStatus(input e.Encounter, data *etp.TPendaftaran) {
|
||||
switch input.Status_Code {
|
||||
case erc.DSCProcess:
|
||||
data.Masukpoly = &now
|
||||
}
|
||||
|
||||
if input.Status_Code == erc.DSCCancel {
|
||||
data.Status = 11
|
||||
}
|
||||
}
|
||||
|
||||
func setDataCheckIn(input e.Encounter, data *etp.TPendaftaran) {
|
||||
// set kddokter
|
||||
kddokter, _ := strconv.Atoi(*input.Responsible_Doctor_Code)
|
||||
data.Kddokter = uint(kddokter)
|
||||
|
||||
// set petugas_klinik
|
||||
if data.PetugasKlinik != "" {
|
||||
if a := input.Adm_Employee; a != nil {
|
||||
if u := a.User; u != nil {
|
||||
data.PetugasKlinik = u.Name
|
||||
// only update once
|
||||
if data.PetugasKlinik == "" {
|
||||
if n := input.Responsible_Nurse; n != nil {
|
||||
if emp := n.Employee; emp != nil {
|
||||
if u := emp.User; u != nil {
|
||||
data.PetugasKlinik = u.Name
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -132,6 +146,44 @@ func setDataCheckIn(input e.Encounter, data *etp.TPendaftaran) {
|
||||
return
|
||||
}
|
||||
|
||||
func setDataCheckOut(input e.Encounter, data *etp.TPendaftaran) {
|
||||
data.Keluarpoly = input.FinishedAt
|
||||
|
||||
// set status
|
||||
setStatus(input.Discharge_Method_Code, data)
|
||||
if data.Status == 8 || data.Status == 3 {
|
||||
if dc := input.DeathCause; dc != nil {
|
||||
|
||||
var dcSrc []DeathCauseSrc
|
||||
_ = json.Unmarshal([]byte(*dc.Value), &dcSrc)
|
||||
|
||||
for i, v := range dcSrc {
|
||||
switch i {
|
||||
case 0:
|
||||
data.SebabMati1 = &v.Name
|
||||
data.IcdMati1 = &v.Code
|
||||
case 1:
|
||||
data.SebabMati2 = &v.Name
|
||||
data.IcdMati2 = &v.Code
|
||||
case 2:
|
||||
data.SebabMati3 = &v.Name
|
||||
data.IcdMati3 = &v.Code
|
||||
default:
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
death := uint(1)
|
||||
data.StMeninggal = &death
|
||||
data.DtMeninggal = data.Keluarpoly
|
||||
}
|
||||
|
||||
setPelayanan := uint(1)
|
||||
data.StPelayanan = &setPelayanan
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
func setDataRequestSwitchUnit(input e.Encounter, data *etp.TPendaftaran) (hist []etph.TPemeriksaanHist) {
|
||||
if enc := input.InternalReferences; enc != nil {
|
||||
for i, ref := range *enc {
|
||||
@@ -158,30 +210,6 @@ func setDataRequestSwitchUnit(input e.Encounter, data *etp.TPendaftaran) (hist [
|
||||
return
|
||||
}
|
||||
|
||||
func setDataCheckOut(input e.Encounter, data *etp.TPendaftaran) {
|
||||
data.Keluarpoly = input.Discharge_Date
|
||||
|
||||
// set status
|
||||
setStatus(input.Discharge_Method_Code, data)
|
||||
if data.Status == 8 || data.Status == 3 {
|
||||
if dc := input.DeathCause; dc != nil {
|
||||
data.SebabMati1 = dc.Value
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
setPelayanan := uint(1)
|
||||
data.StPelayanan = &setPelayanan
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
func setDataUpdateStatus(input e.Encounter, data *etp.TPendaftaran) {
|
||||
if input.Status_Code == erc.DSCCancel {
|
||||
data.Status = 11
|
||||
}
|
||||
}
|
||||
|
||||
func setKdrujuk(input *ere.RefTypeCode, data *etp.TPendaftaran) {
|
||||
switch *input {
|
||||
case ere.RTCGov:
|
||||
|
||||
@@ -42,3 +42,10 @@ var updatePreMw []readDetailMw
|
||||
var updatePostMw []readDetailMw
|
||||
var deletePreMw []readDetailMw
|
||||
var deletePostMw []readDetailMw
|
||||
|
||||
type DeathCauseSrc struct {
|
||||
Id uint `json:"id"`
|
||||
Code string `json:"code"`
|
||||
Name string `json:"name"`
|
||||
IndName string `json:"indName"`
|
||||
}
|
||||
Reference in New Issue
Block a user