- Add VocDataIn schema (date, topic, sub_topic, level, depart_id, dep_name) - Add RawVocData SQLAlchemy model (rawdata.raw_voc_data, BIGSERIAL PK) - Add POST /api/v1/voc-data endpoint with voc.data:write permission - Dual-write to local PostgreSQL + Supabase - Table auto-created on startup via Base.metadata.create_all()
49 lines
1.0 KiB
Python
49 lines
1.0 KiB
Python
from datetime import datetime, time, date
|
|
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class FeedWaitingTimeIn(BaseModel):
|
|
id: int
|
|
vn: int | None = None
|
|
txn: int | None = None
|
|
hn: str | None = None
|
|
name: str | None = None
|
|
doctor_code: str | None = None
|
|
doctor_name: str | None = None
|
|
location_code: str | None = None
|
|
location_name: str | None = None
|
|
step_name: str | None = None
|
|
time: datetime
|
|
|
|
|
|
class FeedCheckpointIn(BaseModel):
|
|
id: int | None = None
|
|
hn: int
|
|
vn: int
|
|
location: str
|
|
type: str
|
|
timestamp_in: datetime
|
|
timestamp_out: datetime | None = None
|
|
waiting_time: int | None = None
|
|
bu: str | None = None
|
|
|
|
|
|
class PatientAppointmentIn(BaseModel):
|
|
hn: str
|
|
txn: int | None = None
|
|
date: date
|
|
time: str
|
|
doctor_code: str | None = None
|
|
period: str | None = None
|
|
appointment_type: str | None = None
|
|
|
|
|
|
class VocDataIn(BaseModel):
|
|
date: date
|
|
topic: str
|
|
sub_topic: str
|
|
level: str
|
|
depart_id: str
|
|
dep_name: str | None = None
|