from pydantic import BaseModel, Field from typing import List class Order_Detail(BaseModel): index: int = Field(description="STT, ví dụ như: 1, 2") code: str = Field(description="Mã hàng, ví dụ như: TL_SAMSUNG_200") product_name: str = Field(description="Tên hàng hóa, dịch vụ, ví dụ như: Tủ lạnh Samsung 200 lít") unit: str = Field(description="Đơn vị tính, ví dụ như: Chiếc, Hộp, Thùng") quantity: int = Field(description="Số lượng, ví dụ như: 1, 2, 3") price: float = Field(description="Đơn giá, ví dụ như: 1.000.000") total: float = Field(description="Thành tiền, ví dụ như: 1.000.000") class Invoice(BaseModel): template_number: str = Field(description="Mẫu số, ví dụ như: 01TGKT0/001") invoice_date: str = Field(description="Ngày hóa đơn, ví dụ như: Ngày 11 tháng 1 năm 2011") serial: str = Field(description="Ký hiệu, ví dụ như: HM/17E") number: str = Field(description="Số, ví dụ như: 0000001") seller_company: str = Field(description="Đợn vị bán hàng, ví dụ như: Công ty cổ phần XYZ") seller_tax_number: str = Field(description="Mã số thuế, ví dụ như: 02424202421") seller_address: str = Field(description="Địa chỉ, ví dụ như: 11 Duy Tân Cầu Giấy, Hà Nội") seller_account: str = Field(description="Số tài khoản, ví dụ như: 11993439302") buyer_name: str = Field(description="Họ tên người mua hàng, ví dụ như: Nguyễn Văn A") buyer_company: str = Field(description="Tên Đợn vị, ví dụ như: Công ty cổ phần NPM") seller_tax_number: str = Field(description="Mã số thuế, ví dụ như: 8923823990") buyer_address: str = Field(description="Địa chỉ, ví dụ như: 135 Phạm Văn Đồng, Cầu Giấy, Hà Nội") payment_type: str = Field(description="Hình thức thanh toán, ví dụ như: TM/TK") buyer_account: str = Field(description="Số tài khoản, ví dụ như: 020200284242") converter_name: str = Field(description="Người chuyển đổi, ví dụ như: Lê Thị Na") converter_date: str = Field(description="Ngày chuyển đổi, ví dụ như: 12/11/2012") signed_by: str = Field(description="Ký bởi, ví dụ như: Công ty cổ phần XYZ, Nguyễn Thị Xinh") signed_date: str = Field(description="Ký ngày, ví dụ như: Ngày 24 tháng 8 năm 2018") order_details: List[Order_Detail] = Field(description="Danh sách mua hàng")