package diagnosticreport

import "time"

type DiagnosticReportRequest struct {
	PatientID        string    `json:"patient_id" binding:"required"`
	PatientName      string    `json:"patient_name" binding:"required"`
	EncounterID      string    `json:"encounter_id" binding:"required"`
	PractitionerID   string    `json:"practitioner_id" binding:"required"`
	PractitionerName string    `json:"practitioner_name" binding:"required"`
	Status           string    `json:"status" binding:"required,oneof=registered partial preliminary final amended corrected appended cancelled entered-in-error unknown"`
	CategoryCode     string    `json:"category_code" binding:"required"` // e.g. LAB
	CategoryDisplay  string    `json:"category_display" binding:"required"`
	Code             string    `json:"code" binding:"required"` // LOINC code
	Display          string    `json:"display" binding:"required"`
	Issued           time.Time `json:"issued" binding:"required"`
	Conclusion       string    `json:"conclusion" binding:"required"`
}

type DiagnosticReportPatchRequest []map[string]interface{}
