| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- from datetime import datetime
- from sqlalchemy import DateTime, String, Text, JSON
- from sqlalchemy.orm import Mapped, mapped_column
- from app.core.base_model import PaymentModelMixin, TenantMixin
- from app.common.enums import PermissionFilterStrategy
- from .enums import EnterpriseStatusEnum
- class EnterpriseModel(PaymentModelMixin, TenantMixin):
- """企业模型"""
- __tablename__ = "pay_enterprise"
- __table_args__ = {"comment": "企业表"}
- __permission_strategy__ = PermissionFilterStrategy.ENTERPRISE_BASED
- enterprise_id: Mapped[str | None] = mapped_column(
- String(64), unique=True, comment="企业ID(业务主键)"
- )
- out_biz_no: Mapped[str | None] = mapped_column(
- String(64), unique=True, index=True, comment="外部业务号"
- )
- account_id: Mapped[str | None] = mapped_column(
- String(64), index=True, comment="支付宝账号ID(签约后获取)"
- )
- name: Mapped[str | None] = mapped_column(String(128), comment="企业名称")
- short_name: Mapped[str | None] = mapped_column(String(64), comment="企业简称")
- status: Mapped[str] = mapped_column(
- String(32),
- default=EnterpriseStatusEnum.ENTERPRISE_APPLICATION.value,
- comment="状态: ENTERPRISE_APPLICATION/ENTERPRISE_CREATE/ENTERPRISE_ACTIVATED/ENTERPRISE_UNSIGN/ENTERPRISE_WITHDRAW/ENTERPRISE_AUTH/ENTERPRISE_AUTH_REJECTED",
- )
- sign_url: Mapped[str | None] = mapped_column(Text, comment="签约链接")
- pc_invite_url: Mapped[str | None] = mapped_column(Text, comment="邀请URL")
- invite_time: Mapped[datetime | None] = mapped_column(
- DateTime, comment="邀请码创建时间"
- )
- expire_time: Mapped[datetime | None] = mapped_column(
- DateTime, comment="链接过期时间"
- )
- identity_type: Mapped[str | None] = mapped_column(
- String(64), comment="企业管理员身份类型: ALIPAY_USER_ID/ALIPAY_LOGON_ID/ISV_USER_ID"
- )
- identity: Mapped[str | None] = mapped_column(
- String(64), comment="企业管理员身份标识"
- )
- identity_open_id: Mapped[str | None] = mapped_column(
- String(128), comment="企业管理员openId"
- )
- register_mode: Mapped[str | None] = mapped_column(
- String(32), comment="注册模式: NORMAL/ISV_AGENT/ISV_VIRTUAL"
- )
- sign_fund_way: Mapped[str | None] = mapped_column(
- String(32), comment="签约出资方式: BALANCE/CREDIT/CORPORATE_CARD/ENT_FA_EXPRESS/GEN_PER_ADV_PAY/CARD_PAY_LEDGER/PER_ALI_CREDIT"
- )
- base_info: Mapped[dict | None] = mapped_column(
- JSON, comment="企业基本信息: industry/enterprise_code/enterprise_name"
- )
- profiles: Mapped[dict | None] = mapped_column(
- JSON, comment="扩展参数: group_app_id/access_channel等"
- )
- remark: Mapped[str | None] = mapped_column(Text, comment="备注")
|