first commit
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
package antrean
|
||||
|
||||
type PermissionGetResponse struct {
|
||||
Message string `json:"message"`
|
||||
Data []*PermisssionAntrean `json:"data"`
|
||||
Meta map[string]interface{} `json:"meta"`
|
||||
}
|
||||
type PermisssionAntrean struct {
|
||||
IDpermission int `json:"id" db:"perid"`
|
||||
CreatePermission bool `json:"create" db:"pecreate"`
|
||||
ReadPermission bool `json:"read" db:"peread"`
|
||||
UpdatePermission bool `json:"update" db:"peupdate"`
|
||||
DisablePermission bool `json:"disable" db:"pedisable"`
|
||||
DeletePermission bool `json:"delete" db:"pedelete"`
|
||||
Active bool `json:"active" db:"active"`
|
||||
PageName string `json:"pagename" db:"pagename"`
|
||||
PagesID int `json:"pagesID" db:"pgid"`
|
||||
Level *int `json:"level,omitempty" db:"level"` // tambahan
|
||||
Sort *int `json:"sort,omitempty" db:"sort"` // tambahan
|
||||
Parent *int `json:"parent,omitempty" db:"parent"` // tambahan
|
||||
}
|
||||
|
||||
type CreatePermissionRequest struct {
|
||||
CreatePermission bool `json:"create" binding:"required"`
|
||||
ReadPermission bool `json:"read" binding:"required"`
|
||||
UpdatePermission bool `json:"update" binding:"required"`
|
||||
DisablePermission bool `json:"disable" binding:"required"`
|
||||
DeletePermission bool `json:"delete" binding:"required"`
|
||||
Active bool `json:"active" binding:"required"`
|
||||
PagesID int `json:"pagesID" binding:"required,min=1"`
|
||||
Roles []string `json:"roles" binding:"required,dive,min=1"`
|
||||
Groups []string `json:"groups" binding:"required,dive,min=1"`
|
||||
}
|
||||
|
||||
type UpdatePermission struct {
|
||||
IDpermission int `json:"id" db:"id"`
|
||||
CreatePermission *bool `json:"create" db:"pecreate"`
|
||||
ReadPermission *bool `json:"read" db:"peread"`
|
||||
UpdatePermission *bool `json:"update" db:"peupdate"`
|
||||
DisablePermission *bool `json:"disable" db:"pedisable"`
|
||||
DeletePermission *bool `json:"delete" db:"pedelete"`
|
||||
Active *bool `json:"active" db:"active"`
|
||||
PagesID *int `json:"pagesID" db:"pgid"`
|
||||
PageName string `json:"page_name" db:"name"`
|
||||
Roles []string `json:"roles" db:"role_keycloak"`
|
||||
Groups []string `json:"groups" db:"group_keycloak"`
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package master
|
||||
|
||||
type ListDokter struct {
|
||||
GelarDepan string `json:"gelardepan" db:"gelardepan"`
|
||||
NamaLengkap string `json:"namalengkap" db:"namalengkap"`
|
||||
GelarBelakang string `json:"gelarbelakang" db:"gelarbelakang"`
|
||||
Spesialis string `json:"Spesialis" db:"Spesialis"`
|
||||
Subspesialis string `json:"Subspesialis" db:"Subspesialis"`
|
||||
}
|
||||
|
||||
// DokterFormatted - Data dokter yang sudah diformat
|
||||
type DokterFormatted struct {
|
||||
NamaLengkapFormatted string `json:"nama_lengkap"`
|
||||
Spesialis string `json:"Spesialis"`
|
||||
Subspesialis string `json:"Subspesialis"`
|
||||
}
|
||||
|
||||
// DokterResponse - Response API
|
||||
type DokterResponse struct {
|
||||
Message string `json:"message"`
|
||||
Data []*DokterFormatted `json:"data"`
|
||||
Meta map[string]interface{} `json:"meta"`
|
||||
}
|
||||
@@ -0,0 +1,125 @@
|
||||
package master
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"encoding/json"
|
||||
"time"
|
||||
)
|
||||
|
||||
type TicketQueue struct {
|
||||
ID int64 `json:"id" db:"id"`
|
||||
HealthcareServiceCode sql.NullString `json:"healthcare_service_code" db:"healtcare_service_code"`
|
||||
Ticket string `json:"ticket" db:"ticket"`
|
||||
DatetimeStart time.Time `json:"datetime_start" db:"datetime_start"`
|
||||
VisitCode string `json:"visit_code" db:"visit_code"`
|
||||
HealthcareServiceName sql.NullString `json:"healthcare_service_name" db:"name"`
|
||||
HealthcareServiceCodeMS sql.NullString `json:"healthcare_service_code_ms" db:"code"`
|
||||
ShiftNumber sql.NullInt64 `json:"shift_number" db:"shift_number"`
|
||||
PaymentTypeName sql.NullString `json:"payment_type_name" db:"payment"`
|
||||
Posisi sql.NullString `json:"-" db:"posisi"`
|
||||
Deskripsi sql.NullString `json:"-" db:"deskripsi"`
|
||||
WaktuPosisi sql.NullTime `json:"-" db:"waktuposisi"`
|
||||
}
|
||||
|
||||
type TicketQueueResponse struct {
|
||||
Message string `json:"message"`
|
||||
KuotaLoket int `json:"kuotaloket"`
|
||||
Data []*LoketTiketResponse `json:"data"`
|
||||
Meta map[string]interface{} `json:"meta"`
|
||||
}
|
||||
|
||||
func (t TicketQueue) MarshalJSON() ([]byte, error) {
|
||||
type Alias TicketQueue
|
||||
aux := &struct {
|
||||
HealthcareServiceCode *string `json:"healthcare_service_code,omitempty"`
|
||||
DateStart *string `json:"date_start,omitempty"`
|
||||
TimeStart *string `json:"time_start,omitempty"`
|
||||
DatetimeStartFormatted *string `json:"datetime_start_formatted,omitempty"`
|
||||
HealthcareServiceName *string `json:"healthcare_service_name,omitempty"`
|
||||
HealthcareServiceCodeMS *string `json:"healthcare_service_code_ms,omitempty"`
|
||||
ShiftNumber *int `json:"shift_number,omitempty"`
|
||||
PaymentTypeName *string `json:"payment_type_name,omitempty"`
|
||||
WaktuPosisi1 *string `json:"waktu_posisi,omitempty"`
|
||||
TanggalPosisi *string `json:"tanggal_posisi,omitempty"`
|
||||
*Alias
|
||||
}{
|
||||
Alias: (*Alias)(&t),
|
||||
}
|
||||
|
||||
if t.HealthcareServiceCode.Valid {
|
||||
aux.HealthcareServiceCode = &t.HealthcareServiceCode.String
|
||||
}
|
||||
|
||||
if !t.DatetimeStart.IsZero() {
|
||||
|
||||
dateStr := t.DatetimeStart.Format("02 Jan 2006")
|
||||
aux.DateStart = &dateStr
|
||||
|
||||
timeStr := t.DatetimeStart.Format("15:04:05")
|
||||
aux.TimeStart = &timeStr
|
||||
|
||||
formattedStr := t.DatetimeStart.Format("02 Jan 2006, 15:04")
|
||||
aux.DatetimeStartFormatted = &formattedStr
|
||||
}
|
||||
|
||||
if t.HealthcareServiceName.Valid {
|
||||
aux.HealthcareServiceName = &t.HealthcareServiceName.String
|
||||
}
|
||||
|
||||
if t.HealthcareServiceCodeMS.Valid {
|
||||
aux.HealthcareServiceCodeMS = &t.HealthcareServiceCodeMS.String
|
||||
}
|
||||
|
||||
if t.ShiftNumber.Valid {
|
||||
shift := int(t.ShiftNumber.Int64)
|
||||
aux.ShiftNumber = &shift
|
||||
}
|
||||
|
||||
if t.PaymentTypeName.Valid {
|
||||
aux.PaymentTypeName = &t.PaymentTypeName.String
|
||||
}
|
||||
|
||||
return json.Marshal(aux)
|
||||
}
|
||||
|
||||
type LoketTiketResponse struct {
|
||||
IdLoketTiket string `json:"idtiket"`
|
||||
TiketLoket string `json:"ticket"`
|
||||
KlinikTiketLoket string `json:"klinik"`
|
||||
BarcodeTiketLoket string `json:"barcode"`
|
||||
TanggalTiketLoket string `json:"tanggal"`
|
||||
WaktuTiketLoket string `json:"waktu"`
|
||||
ShiftTiketLoket int `json:"shift"`
|
||||
Pembayaran string `json:"pembayaran"`
|
||||
Posisi []Posisi `json:"posisi"`
|
||||
}
|
||||
type Posisi struct {
|
||||
Posisi string `json:"posisi,omitempty"`
|
||||
Deskripsi string `json:"deskripsi,omitempty"`
|
||||
WaktuPosisi string `json:"waktuposisi,omitempty"`
|
||||
TanggalPosisi string `json:"tanggalposisi,omitempty"`
|
||||
}
|
||||
|
||||
type KlinikRuangan struct {
|
||||
IDKlinik sql.NullString `json:"idklinik" db:"idklinik"`
|
||||
NamaKlinik sql.NullString `json:"namaklinik" db:"namaklinik"`
|
||||
IDRuangan sql.NullString `json:"idruangan" db:"idruangan"`
|
||||
NamaRuangan sql.NullString `json:"namaruangan" db:"namaruangan"`
|
||||
}
|
||||
|
||||
type RuanganDetail struct {
|
||||
IDRuangan string `json:"idruangan"`
|
||||
NamaRuangan string `json:"namaruangan"`
|
||||
}
|
||||
|
||||
type KlinikRuanganGrouped struct {
|
||||
IDKlinik string `json:"idklinik"`
|
||||
NamaKlinik string `json:"namaklinik"`
|
||||
Ruangan []RuanganDetail `json:"ruangan"`
|
||||
}
|
||||
|
||||
type KlinikRuanganResponse struct {
|
||||
Message string `json:"message"`
|
||||
Data []*KlinikRuanganGrouped `json:"data"`
|
||||
Meta map[string]interface{} `json:"meta"`
|
||||
}
|
||||
@@ -0,0 +1,141 @@
|
||||
package master
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"encoding/json"
|
||||
)
|
||||
|
||||
type ListPoli struct {
|
||||
TipeAnjungan string `json:"Tipe_Anjungan" db:"tipeanjungan"`
|
||||
Active bool `json:"active" db:"active"`
|
||||
IDKlinik sql.NullString `json:"idklinik" db:"idklinik"`
|
||||
NamaKlinik sql.NullString `json:"namaklinik" db:"namaklinik"`
|
||||
Code string `json:"code" db:"code"`
|
||||
IDSpesialis sql.NullInt64 `json:"idspesialis" db:"idspesialis"`
|
||||
Spesialis sql.NullString `json:"Spesialis" db:"spesialis"`
|
||||
Hari string `json:"hari" db:"hari"`
|
||||
JamMulai string `json:"jammulai" db:"mulai"`
|
||||
JamSelesai string `json:"jamselesai" db:"selesai"`
|
||||
JamAnjungan string `json:"mulaianjungan" db:"mulaianjungan"`
|
||||
Selesaianjungan string `json:"selesaianjungan" db:"selesaianjungan"`
|
||||
Shift sql.NullInt64 `json:"shift" db:"shift"`
|
||||
Kuota sql.NullInt64 `json:"kuota" db:"kuota"`
|
||||
IDloket sql.NullString `json:"idloket" db:"idloket"`
|
||||
Namaloket sql.NullString `json:"namaloket" db:"namaloket"`
|
||||
KodeLoket sql.NullString `json:"kodeloket" db:"kodeloket"`
|
||||
QuotaLoket sql.NullInt64 `json:"quota_loket" db:"quota_loket"`
|
||||
AvailableQuota sql.NullInt64 `json:"available_quota" db:"available_quota"`
|
||||
IdPayment sql.NullInt64 `json:"idpayment" db:"idpayment"`
|
||||
PaymentType sql.NullString `json:"paymenttype" db:"paymenttype"`
|
||||
}
|
||||
|
||||
type LoketDetail struct {
|
||||
IDLoket string `json:"idloket"`
|
||||
NamaLoket string `json:"namaloket"`
|
||||
KodeLoket string `json:"kodeloket"`
|
||||
AvailableQuota int `json:"available_quota"`
|
||||
}
|
||||
|
||||
type PoliklinikGrouped struct {
|
||||
TipeAnjungan string `json:"Tipe_Anjungan"`
|
||||
Active bool `json:"active"`
|
||||
IDKlinik string `json:"idklinik"`
|
||||
NamaKlinik string `json:"namaklinik"`
|
||||
Code string `json:"code"`
|
||||
Shift sql.NullInt64 `json:"shift"`
|
||||
Kuota sql.NullInt64 `json:"kuota"`
|
||||
Jadwal []ScheduleDetail `json:"jadwal"`
|
||||
Spesialis []SpesialisDetail `json:"spesialis"`
|
||||
Loket []LoketDetail `json:"loket"`
|
||||
Payment []PaymentDetail `json:"payment"`
|
||||
}
|
||||
|
||||
type SpesialisDetail struct {
|
||||
IDSpesialis int `json:"idspesialis"`
|
||||
Spesialis string `json:"Spesialis"`
|
||||
}
|
||||
|
||||
type PoliklinikResponse struct {
|
||||
Message string `json:"message"`
|
||||
Data []*PoliklinikGrouped `json:"data"`
|
||||
Meta map[string]interface{} `json:"meta"`
|
||||
}
|
||||
type ScheduleDetail struct {
|
||||
Hari string `json:"hari"`
|
||||
JamOperasional string `json:"jam_operasional"`
|
||||
}
|
||||
|
||||
type PaymentDetail struct {
|
||||
IDPayment int `json:"idpayment"`
|
||||
PaymentType string `json:"payment_type"`
|
||||
}
|
||||
type ListLoket struct {
|
||||
IdLoket string `json:"idloket" db:"idloket"`
|
||||
NamaLoket string `json:"namaloket" db:"namaloket"`
|
||||
KodeLoket string `json:"kodeloket" db:"kodeloket"`
|
||||
KuotaLoket string `json:"kuotaloket" db:"kuotaloket"`
|
||||
LoketAktif bool `json:"loketatif" db:"loketaktif"`
|
||||
JenisLoket string `json:"jenisoket" db:"jenisloket"`
|
||||
TipeLoket string `json:"tipeloket" db:"tipeloket"`
|
||||
TipeVisit string `json:"tipevisit" db:"tipevisit"`
|
||||
Pembayaran string `json:"pembayaran" db:"pembayaran"`
|
||||
IDKlinik string `json:"idklinik" db:"idklinik"`
|
||||
NamaKlinik string `json:"namaklinik" db:"namaklinik"`
|
||||
}
|
||||
|
||||
type LoketResponse struct {
|
||||
Message string `json:"message"`
|
||||
Data []*LoketGrouped `json:"data"`
|
||||
Meta map[string]interface{} `json:"meta"`
|
||||
}
|
||||
|
||||
type LoketGrouped struct {
|
||||
IdLoket string `json:"idloket"`
|
||||
TipeAnjungan string `json:"namaloket"`
|
||||
KodeLoket string `json:"kodeloket"`
|
||||
KuotaLoket string `json:"kuotaloket"`
|
||||
LoketAktif bool `json:"loketaktif"`
|
||||
JenisLoket string `json:"jenisloket"`
|
||||
TipeLoket string `json:"tipeloket"`
|
||||
TipeVisit []ListVisit `json:"tipevisit"`
|
||||
NamaKlinik []ListKlinik `json:"spesialis"`
|
||||
NamaPembayaran []ListPembayaran `json:"pembayaran"`
|
||||
}
|
||||
|
||||
type ListVisit struct {
|
||||
TipeVisit string `json:"tipevisit"`
|
||||
}
|
||||
|
||||
type ListKlinik struct {
|
||||
IDKlinik string `json:"idklinik"`
|
||||
NamaKlinik string `json:"namaklinik"`
|
||||
}
|
||||
|
||||
type ListPembayaran struct {
|
||||
IDPayment int `json:"idpayment"`
|
||||
NamaPembayaran string `json:"pembayaran"`
|
||||
}
|
||||
|
||||
func (p PoliklinikGrouped) MarshalJSON() ([]byte, error) {
|
||||
type Alias PoliklinikGrouped
|
||||
aux := &struct {
|
||||
Shift *int `json:"shift,omitempty"`
|
||||
Kuota *int `json:"kuota,omitempty"`
|
||||
*Alias
|
||||
}{
|
||||
Alias: (*Alias)(&p),
|
||||
}
|
||||
|
||||
// Convert sql.NullInt64 to pointer
|
||||
if p.Shift.Valid {
|
||||
shift := int(p.Shift.Int64)
|
||||
aux.Shift = &shift
|
||||
}
|
||||
|
||||
if p.Kuota.Valid {
|
||||
kuota := int(p.Kuota.Int64)
|
||||
aux.Kuota = &kuota
|
||||
}
|
||||
|
||||
return json.Marshal(aux)
|
||||
}
|
||||
@@ -395,3 +395,61 @@ type PasienFilter struct {
|
||||
DateTo *time.Time `json:"date_to,omitempty" form:"date_to"`
|
||||
Status *string `json:"status,omitempty" form:"status"`
|
||||
}
|
||||
|
||||
type PasienData struct {
|
||||
Nomr string `json:"nomr" db:"nomr"`
|
||||
NamaLengkap string `json:"nama" db:"nama"`
|
||||
NoTelp string `json:"notelp" db:"notelp"`
|
||||
JenisKelamin string `json:"jeniskelamin" db:"jeniskelamin"`
|
||||
TTL time.Time `json:"tgllahir" db:"tgllahir"`
|
||||
Alamat string `json:"alamat" db:"alamat"`
|
||||
IdProvinsi int `json:"idprovinsi" db:"idprovinsi"`
|
||||
IdKota int `json:"idkota" db:"idkota"`
|
||||
IdKecamatan int `json:"idkecamatan" db:"idkecamatan"`
|
||||
IdKelurahan int `json:"idkelurahan" db:"idkelurahan"`
|
||||
NamaProvinsi string `json:"namaprovinsi" db:"namaprovinsi"`
|
||||
NamaKota string `json:"namakota" db:"namakota"`
|
||||
NamaKecamatan string `json:"namakecamatan" db:"namakecamatan"`
|
||||
NamaKelurahan string `json:"namakelurahan" db:"namakelurahan"`
|
||||
}
|
||||
|
||||
func (p PasienData) MarshalJSON() ([]byte, error) {
|
||||
// Struct untuk output JSON
|
||||
output := struct {
|
||||
Nomr string `json:"nomr"`
|
||||
NamaLengkap string `json:"nama"`
|
||||
NoTelp string `json:"notelp"`
|
||||
JenisKelamin string `json:"jeniskelamin"`
|
||||
TglLahir string `json:"tgllahir"`
|
||||
Alamat string `json:"alamat"`
|
||||
IdProvinsi int `json:"idprovinsi"`
|
||||
IdKota int `json:"idkota"`
|
||||
IdKecamatan int `json:"idkecamatan"`
|
||||
IdKelurahan int `json:"idkelurahan"`
|
||||
NamaProvinsi string `json:"namaprovinsi"`
|
||||
NamaKota string `json:"namakota"`
|
||||
NamaKecamatan string `json:"namakecamatan"`
|
||||
NamaKelurahan string `json:"namakelurahan"`
|
||||
}{
|
||||
Nomr: p.Nomr,
|
||||
NamaLengkap: p.NamaLengkap,
|
||||
NoTelp: p.NoTelp,
|
||||
JenisKelamin: p.JenisKelamin,
|
||||
Alamat: p.Alamat,
|
||||
IdProvinsi: p.IdProvinsi,
|
||||
IdKota: p.IdKota,
|
||||
IdKecamatan: p.IdKecamatan,
|
||||
IdKelurahan: p.IdKelurahan,
|
||||
NamaProvinsi: p.NamaProvinsi,
|
||||
NamaKota: p.NamaKota,
|
||||
NamaKecamatan: p.NamaKecamatan,
|
||||
NamaKelurahan: p.NamaKelurahan,
|
||||
}
|
||||
|
||||
// ✅ Format tanggal lahir
|
||||
if !p.TTL.IsZero() {
|
||||
output.TglLahir = p.TTL.Format("2006-01-02")
|
||||
}
|
||||
|
||||
return json.Marshal(output)
|
||||
}
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
package reference
|
||||
|
||||
type VisitStatus struct {
|
||||
IDVisit int `json:"idvisit" db:"idvisit"`
|
||||
NamaStatus string `json:"namastatus" db:"namastatus"`
|
||||
DeskripsiStatus string `json:"deskripsistatus" db:"deskripsistatus"`
|
||||
IDKlinikStatus int `json:"idklinikstatus" db:"idklinikstatus"`
|
||||
NamaStatusKlinik string `json:"namastatusklinik" db:"namastatusklinik"`
|
||||
}
|
||||
|
||||
type VisitStatusResponse struct {
|
||||
Message string `json:"message"`
|
||||
Data []*VisitStatus `json:"data"`
|
||||
Meta map[string]interface{} `json:"meta"`
|
||||
}
|
||||
@@ -0,0 +1,132 @@
|
||||
package transaction
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"time"
|
||||
)
|
||||
|
||||
type TicketRequest struct {
|
||||
KodeLayanan string `json:"kode_layanan" binding:"required"`
|
||||
}
|
||||
|
||||
type TicketResponse struct {
|
||||
Message string `json:"message"`
|
||||
Data *TicketData `json:"data"`
|
||||
}
|
||||
type TicketData struct {
|
||||
Ticket string `json:"ticket" db:"ticket"`
|
||||
CheckIn bool `json:"check_in" db:"check_in"`
|
||||
CheckInDate string `json:"check_in_datetime" db:"check_in_datetime"`
|
||||
DateStart string `json:"datetime_start" db:"datetime_start"`
|
||||
DateEnd string `json:"datetime_end" db:"datetime_end"`
|
||||
}
|
||||
|
||||
type CreateTicketRequest struct {
|
||||
IDLoket string `json:"idloket" db:"id" binding:"required"`
|
||||
NamaDokter string `json:"dokter"`
|
||||
IdKlinik string `json:"idklinik"`
|
||||
NamaKlinik string `json:"namaklinik"`
|
||||
IDpembayaran string `json:"idpembayaran"`
|
||||
Statuspasien string `json:"statuspasien"`
|
||||
Statuspasien2 string `json:"statuspasien2"`
|
||||
Idklinikstatus string `json:"idklinikstatus"`
|
||||
}
|
||||
|
||||
type CreateTicketResponse struct {
|
||||
KodeLoket string `json:"code" db:"code"`
|
||||
}
|
||||
|
||||
type BarcodeResponse struct {
|
||||
Message string `json:"message"`
|
||||
Data *BarcodeData `json:"data"`
|
||||
}
|
||||
type BarcodeData struct {
|
||||
IdBarcode string `json:"id" db:"id"`
|
||||
Barcode string `json:"barcode" db:"visit_code"`
|
||||
NamaKlinik string `json:"namaklinik"`
|
||||
CreatedAt time.Time `json:"-" db:"registration_time"`
|
||||
Active bool `json:"active" db:"active"`
|
||||
|
||||
Ticket string `json:"ticket"`
|
||||
Dokter string `json:"dokter"`
|
||||
Shift string `json:"shift"`
|
||||
DatetimeStart time.Time `json:"-"`
|
||||
RemainingQuota string `json:"remaining_quota" db:"remaining_quota"`
|
||||
}
|
||||
|
||||
type Checkin struct {
|
||||
Visitcode string `json:"barcode"`
|
||||
Statuspasien string `json:"statuspasien"`
|
||||
Statuspasien2 string `json:"statuspasien2"`
|
||||
Idklinikstatus string `json:"idklinikstatus"`
|
||||
Idklinikstatus2 string `json:"idklinikstatus2"`
|
||||
}
|
||||
|
||||
type UpdateTiket struct {
|
||||
Visitcode string `json:"barcode"`
|
||||
Statuspasien string `json:"statuspasien"`
|
||||
Statuspasien2 string `json:"statuspasien2"`
|
||||
Idklinikstatus string `json:"idklinikstatus"`
|
||||
Idklinikstatus2 string `json:"idklinikstatus2"`
|
||||
}
|
||||
|
||||
type TiketSelesai struct {
|
||||
IDLoket string `json:"idloket"`
|
||||
Visitcode string `json:"barcode"`
|
||||
Statuspasien string `json:"statuspasien"`
|
||||
Idklinikstatus string `json:"idklinikstatus"`
|
||||
}
|
||||
|
||||
func (b BarcodeData) MarshalJSON() ([]byte, error) {
|
||||
type Alias BarcodeData
|
||||
|
||||
// Struct untuk output JSON
|
||||
output := struct {
|
||||
Id string `json:"id"`
|
||||
Barcode string `json:"barcode"`
|
||||
NamaKlinik string `json:"namaklinik"`
|
||||
TanggalBarcode string `json:"tanggalbarcode"`
|
||||
WaktuBarcode string `json:"waktubarcode"`
|
||||
Active bool `json:"active"`
|
||||
Ticket string `json:"ticket"`
|
||||
Dokter string `json:"dokter"`
|
||||
Shift string `json:"shift"`
|
||||
TanggalTiket string `json:"tanggaltiket"`
|
||||
WaktuTiket string `json:"waktutiket"`
|
||||
}{
|
||||
Id: b.IdBarcode,
|
||||
Barcode: b.Barcode,
|
||||
NamaKlinik: b.NamaKlinik,
|
||||
Active: b.Active,
|
||||
Ticket: b.Ticket,
|
||||
Dokter: b.Dokter,
|
||||
Shift: b.Shift,
|
||||
}
|
||||
|
||||
// Format CreatedAt
|
||||
if !b.CreatedAt.IsZero() {
|
||||
output.TanggalBarcode = b.CreatedAt.Format("2006-01-02")
|
||||
output.WaktuBarcode = b.CreatedAt.Format("15:04:05")
|
||||
}
|
||||
|
||||
// Format DatetimeStart
|
||||
if !b.DatetimeStart.IsZero() {
|
||||
output.TanggalTiket = b.DatetimeStart.Format("2006-01-02")
|
||||
output.WaktuTiket = b.DatetimeStart.Format("15:04:05")
|
||||
}
|
||||
|
||||
return json.Marshal(output)
|
||||
}
|
||||
|
||||
type TicketID struct {
|
||||
ID int `json:"id" db:"id"`
|
||||
}
|
||||
|
||||
//type Loket struct {
|
||||
// Barcode
|
||||
// NoAntrean
|
||||
// Klinik
|
||||
// Pembayaran
|
||||
// Dokter
|
||||
// Fast
|
||||
//}
|
||||
Reference in New Issue
Block a user