75 lines
2.2 KiB
Go
75 lines
2.2 KiB
Go
package simrs
|
|
|
|
import (
|
|
"api-lis/pkg/models/simrs/mikrobiologi"
|
|
"api-lis/pkg/models/simrs/pasien"
|
|
"log"
|
|
"time"
|
|
)
|
|
|
|
func (s *DatabaseService) GetMPasien(req *mikrobiologi.RequestPasienMikrobiologi) (*pasien.MPasien, error) {
|
|
var dataPasien *pasien.MPasien
|
|
querySelect := `select * from m_pasien where "nomr" = ?`
|
|
errSelect := s.DB.Debug().Raw(querySelect, req.NOMR).First(&dataPasien).Error
|
|
if errSelect != nil {
|
|
log.Println(errSelect)
|
|
return nil, errSelect
|
|
}
|
|
return dataPasien, nil
|
|
}
|
|
|
|
func (s *DatabaseService) GetPasienAPS(req *mikrobiologi.RequestPasienMikrobiologi) (*pasien.MPasien, error) {
|
|
var dataPasien *pasien.MPasien
|
|
querySelect := `select * from m_pasien_aps where "nomr" = ?`
|
|
errSelect := s.DB.Debug().Raw(querySelect, req.NOMR).First(&dataPasien).Error
|
|
if errSelect != nil {
|
|
log.Println(errSelect)
|
|
return nil, errSelect
|
|
}
|
|
return dataPasien, nil
|
|
}
|
|
|
|
func (s *DatabaseService) GetTglRegPendaftaran(idxDaftar string) (string, error) {
|
|
var tglReg string
|
|
querySelect := `select tglreg from t_pendaftaran where "idxdaftar" = ?`
|
|
errSelect := s.DB.Debug().Raw(querySelect, idxDaftar).Scan(&tglReg).Error
|
|
if errSelect != nil {
|
|
log.Println(errSelect)
|
|
return "", errSelect
|
|
}
|
|
return tglReg, nil
|
|
}
|
|
|
|
func (s *DatabaseService) GetTglMasukRS(idxDaftar string) (string, error) {
|
|
var tglMasuk time.Time
|
|
querySelect := `select masukrs from t_admission where "id_admission" = ?`
|
|
errSelect := s.DB.Debug().Raw(querySelect, idxDaftar).Scan(&tglMasuk).Error
|
|
if errSelect != nil {
|
|
log.Println(errSelect)
|
|
return "", errSelect
|
|
}
|
|
return tglMasuk.Format("2006-01-02"), nil
|
|
}
|
|
|
|
func (s *DatabaseService) GetKetRujukan(noMR string) (string, string, error) {
|
|
var ketRujukan string
|
|
var isPenunjang *int
|
|
querySelect := `select ketrujuk, is_penunjang from t_pendaftaran where "nomr" = ?`
|
|
errSelect := s.DB.Debug().Raw(querySelect, noMR).Row().Scan(&ketRujukan, &isPenunjang)
|
|
if errSelect != nil {
|
|
log.Println(errSelect)
|
|
return "", "", errSelect
|
|
}
|
|
|
|
var jenisKunjungan string
|
|
if isPenunjang == nil {
|
|
jenisKunjungan = "Kunjungan Reguler"
|
|
} else if *isPenunjang == 1 {
|
|
jenisKunjungan = "Kunjungan Parsial"
|
|
} else if *isPenunjang == 0 {
|
|
jenisKunjungan = "Kunjungan Reguler"
|
|
}
|
|
|
|
return ketRujukan, jenisKunjungan, nil
|
|
}
|