Files
simrsx-be/internal/domain/references/finance/finance.go
2025-08-13 14:26:41 +07:00

68 lines
1.5 KiB
Go

package finance
type (
PaymentMethodCode string
TaxCode string
PaymentStatusCode string
ServiceType string
)
const (
PMCCash PaymentMethodCode = "cash"
PMCBPJS PaymentMethodCode = "bpjs"
PMCInsurance PaymentMethodCode = "insurance"
PMCMembership PaymentMethodCode = "membership"
PMCDebit PaymentMethodCode = "debit"
PMCCredit PaymentMethodCode = "credit"
PMCOther PaymentMethodCode = "other"
)
const (
TCCountry TaxCode = "country"
)
const (
PaymentStatusNew PaymentStatusCode = "new"
PaymentStatusUnpaid PaymentStatusCode = "unpaid"
PaymentStatusPaid PaymentStatusCode = "paid"
PaymentStatusCancel PaymentStatusCode = "cancel"
PaymentStatusFailed PaymentStatusCode = "failed"
)
func GetTaxeCodes() map[TaxCode]float32 {
return map[TaxCode]float32{
TCCountry: 0.11,
}
}
var NonInsurancePaymentMethods = map[PaymentMethodCode]bool{
PMCCash: true,
PMCDebit: true,
PMCCredit: true,
}
func (p PaymentMethodCode) IsInsurance() bool {
switch p {
case PMCCash, PMCDebit, PMCCredit, PMCBPJS:
return true
default:
return false
}
}
const (
STInpatient = "Rawat Inap"
STAmbulatory = "Rawat Jalan"
STEmergency = "IGD"
STPonek = "PONEK"
STLab = "Laboratorium"
STRadiology = "Radiologi"
)
const (
AdminEmergencyFee = "Biaya Administrasi IGD"
DoctorEmergencyFee = "Biaya Dokter IGD"
AdminPediatricInternalFee = "Biaya Administrasi Poli Anak/Penyakit Dalam"
AdminGeneralPolyFee = "Biaya Administrasi Poli"
)