schema.py 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. from datetime import datetime
  2. from typing import Optional
  3. from pydantic import BaseModel, ConfigDict, Field
  4. class FacetofaceApplySchema(BaseModel):
  5. """当面付开通申请请求"""
  6. enterprise_id: str = Field(description="关联企业ID")
  7. merchant_name: str = Field(description="商户名称")
  8. shop_name: str = Field(description="店铺名称")
  9. shop_address: Optional[str] = Field(default=None, description="店铺地址")
  10. mcc_code: Optional[str] = Field(default=None, description="商户类别码")
  11. rate: Optional[str] = Field(default=None, description="费率,如 0.006")
  12. business_license_no: Optional[str] = Field(default=None, description="营业执照号")
  13. business_license_mobile: Optional[str] = Field(default=None, description="联系手机号")
  14. sign_and_auth: bool = Field(default=False, description="是否同时获取商家授权")
  15. remark: Optional[str] = Field(default=None, description="备注")
  16. class FacetofaceOrderOutSchema(BaseModel):
  17. """当面付申请单详情响应"""
  18. model_config = ConfigDict(from_attributes=True)
  19. id: int = Field(description="主键ID")
  20. enterprise_id: Optional[str] = Field(default=None, description="关联企业ID")
  21. batch_no: Optional[str] = Field(default=None, description="事务编号")
  22. order_no: Optional[str] = Field(default=None, description="申请单号")
  23. order_status: str = Field(description="申请单状态")
  24. merchant_name: Optional[str] = Field(default=None, description="商户名称")
  25. shop_name: Optional[str] = Field(default=None, description="店铺名称")
  26. shop_address: Optional[str] = Field(default=None, description="店铺地址")
  27. mcc_code: Optional[str] = Field(default=None, description="商户类别码")
  28. rate: Optional[str] = Field(default=None, description="费率")
  29. business_license_no: Optional[str] = Field(default=None, description="营业执照号")
  30. business_license_mobile: Optional[str] = Field(default=None, description="联系手机号")
  31. sign_and_auth: bool = Field(default=False, description="是否同时获取授权")
  32. confirm_url: Optional[str] = Field(default=None, description="商家确认链接")
  33. app_auth_token: Optional[str] = Field(default=None, description="商家授权token")
  34. reject_reason: Optional[str] = Field(default=None, description="驳回原因")
  35. remark: Optional[str] = Field(default=None, description="备注")
  36. last_query_time: Optional[datetime] = Field(default=None, description="最后查询时间")
  37. next_query_time: Optional[datetime] = Field(default=None, description="下次查询时间")
  38. query_count: int = Field(default=0, description="已查询次数")
  39. created_time: datetime = Field(description="创建时间")
  40. updated_time: datetime = Field(description="更新时间")
  41. class FacetofaceOrderListOutSchema(BaseModel):
  42. """当面付申请单列表响应"""
  43. model_config = ConfigDict(from_attributes=True)
  44. id: int = Field(description="主键ID")
  45. enterprise_id: Optional[str] = Field(default=None, description="关联企业ID")
  46. batch_no: Optional[str] = Field(default=None, description="事务编号")
  47. order_status: str = Field(description="申请单状态")
  48. merchant_name: Optional[str] = Field(default=None, description="商户名称")
  49. shop_name: Optional[str] = Field(default=None, description="店铺名称")
  50. rate: Optional[str] = Field(default=None, description="费率")
  51. confirm_url: Optional[str] = Field(default=None, description="商家确认链接")
  52. reject_reason: Optional[str] = Field(default=None, description="驳回原因")
  53. created_time: datetime = Field(description="创建时间")
  54. updated_time: datetime = Field(description="更新时间")