package condition

import "time"

type ConditionRequest struct {
	PatientID       string    `json:"patient_id" binding:"required"`
	PatientName     string    `json:"patient_name" binding:"required"`
	EncounterID     string    `json:"encounter_id" binding:"required"`
	ClinicalStatus  string    `json:"clinical_status" binding:"required,oneof=active recurrence relapse inactive remission resolved"` // active, recurrence, relapse, inactive, remission, resolved
	CategoryCode    string    `json:"category_code" binding:"required"`                                                               // problem-list-item, encounter-diagnosis
	CategoryDisplay string    `json:"category_display" binding:"required"`
	Code            string    `json:"code" binding:"required"`    // SNOMED CT / ICD-10 code
	Display         string    `json:"display" binding:"required"` // Diagnosis text
	OnsetDateTime   time.Time `json:"onset_date_time" binding:"required"`
	RecordedDate    time.Time `json:"recorded_date" binding:"required"`
}

type ConditionPatchRequest []map[string]interface{}
