| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- from datetime import datetime
- from typing import Optional
- from pydantic import BaseModel, Field
- class OutsourceNotifySchema(BaseModel):
- """外部消费额度同步请求 (alipay.ebpp.invoice.expensecomsue.outsource.notify)
- 外部和企业码进行额度共管的场景下,外部以交易形式(支付、退款)将额度变更同步给支付宝
- """
- # 必填字段
- enterprise_id: str = Field(description="企业ID")
- employee_id: str = Field(description="员工ID")
- standard_id: str = Field(description="使用规则ID(标准ID)")
- amount: float = Field(description="消费金额(元),正数为消费/支付,负数为退款")
- out_source_id: str = Field(description="外部业务号(幂等ID)")
- deal_time: str = Field(description="交易时间,格式:yyyy-MM-dd HH:mm:ss")
- # 可选字段
- account_id: Optional[str] = Field(default=None, description="企业余额账户ID")
- agreement_no: Optional[str] = Field(default=None, description="授权签约协议号")
- employee_id_type: Optional[str] = Field(default=None, description="员工ID类型: EMPLOYEE/PHONE/ENTERPRISE_PAY_UID")
- employee_open_id: Optional[str] = Field(default=None, description="员工open_id")
- extend: Optional[str] = Field(default=None, description="扩展参数,JSON格式")
- is_off_set: Optional[str] = Field(default=None, description="是否冲抵: Y/N")
- platform: Optional[str] = Field(default=None, description="平台类型")
- relate_no: Optional[str] = Field(default=None, description="关联单号")
- # 本地补充字段
- institution_id: Optional[str] = Field(default=None, description="制度ID(本地补充,用于写pay_expense_quota)")
- class OutsourceNotifyOutSchema(BaseModel):
- """外部消费额度同步响应"""
- success: bool = Field(description="是否成功")
- out_source_id: str = Field(description="外部业务号")
- message: str = Field(default="", description="响应消息")
|