Skip to main content

1-数据模型

概览

目录:doc/product/financial/datamodel

该模块定义了发票、发票明细、发票文件、费用单、费用明细、员工、部门、供应商等实体的字段结构,是规则引擎、仪表盘与 UI 布局的基础。

核心发票实体 fin_invoices

文件:datamodel/fin_invoices_model.json

{
"entity": "fin_invoices",
"fields": [
{ "name": "invoice_category", "type": "string", "label": "发票大类(vat_special/vat_normal/e_invoice)", "maxLength": 32 },
{ "name": "invoice_code", "type": "string", "label": "发票代码", "maxLength": 50, "nullable": false },
{ "name": "invoice_no", "type": "string", "label": "发票号码", "maxLength": 50, "nullable": false },
{ "name": "check_code", "type": "string", "label": "校验码", "maxLength": 50 },
{ "name": "invoice_date", "type": "date", "label": "开票日期", "nullable": false },
{ "name": "buyer_name", "type": "string", "label": "购方名称", "maxLength": 200, "nullable": false },
{ "name": "buyer_tax_id", "type": "string", "label": "购方税号", "maxLength": 30 },
{ "name": "buyer_address", "type": "string", "label": "购方地址", "maxLength": 500 },
{ "name": "buyer_phone", "type": "string", "label": "购方电话", "maxLength": 50 },
{ "name": "buyer_bank_name", "type": "string", "label": "购方开户行", "maxLength": 200 },
{ "name": "buyer_bank_account", "type": "string", "label": "购方账号", "maxLength": 64 },
{ "name": "seller_name", "type": "string", "label": "销方名称", "maxLength": 200, "nullable": false },
{ "name": "seller_tax_id", "type": "string", "label": "销方税号", "maxLength": 30 },
{ "name": "seller_address", "type": "string", "label": "销方地址", "maxLength": 500 },
{ "name": "seller_phone", "type": "string", "label": "销方电话", "maxLength": 50 },
{ "name": "seller_bank_name", "type": "string", "label": "销方开户行", "maxLength": 200 },
{ "name": "seller_bank_account", "type": "string", "label": "销方账号", "maxLength": 64 },
{ "name": "currency", "type": "string", "label": "币种", "maxLength": 10, "nullable": false },
{ "name": "amount_excl_tax", "type": "number", "label": "不含税金额", "precision": 18, "scale": 2, "nullable": false },
{ "name": "tax_amount", "type": "number", "label": "税额", "precision": 18, "scale": 2, "nullable": false },
{ "name": "amount_incl_tax", "type": "number", "label": "价税合计", "precision": 18, "scale": 2 },
{ "name": "tax_rate", "type": "number", "label": "税率", "precision": 5, "scale": 2 },
{ "name": "invoice_type", "type": "enum", "label": "发票类型", "maxLength": 32 , "choices": [
{ "id":"special","name":"增值税专用发票" },
{ "id":"normal","name":"增值税普通发票" },
{ "id":"e_invoice","name":"电子发票" }
]},
{ "name": "machine_no", "type": "string", "label": "机器编号", "maxLength": 50 },
{ "name": "payee", "type": "string", "label": "收款人", "maxLength": 64 },
{ "name": "reviewer", "type": "string", "label": "复核人", "maxLength": 64 },
{ "name": "issuer", "type": "string", "label": "开票人", "maxLength": 64 },
{ "name": "remark", "type": "string", "label": "备注", "maxLength": 2000 },
{ "name": "invoice_status", "type": "enum", "label": "发票状态(valid/voided/red)", "maxLength": 32 , "choices": [
{ "id":"valid","name":"有效发票" },
{ "id":"voided","name":"作废发票" },
{ "id":"red","name":"红票发票" }
]},
{ "name": "goods_name", "type": "string", "label": "商品名称汇总", "maxLength": 500 },
{ "name": "dedup_key", "type": "string", "label": "去重键", "maxLength": 128 },
{ "name": "risk_level", "type": "string", "label": "风险等级", "maxLength": 32 },
{ "name": "risk_codes", "type": "string", "label": "命中规则编码列表", "maxLength": 500 },
{ "name": "attributes", "type": "json", "label": "扩展字段(JSON)" },
{ "name": "file", "type": "json", "label": "文件" }
]
}

其他关键数据模型

更多数据模型文件可在目录中查看,例如:

  • fin_invoice_details_model.json:发票行项目明细
  • fin_invoice_files_model.json:发票文件与 OCR 结果
  • fin_invoice_upload_batches_model.json:发票导入批次
  • fin_expenses_model.jsonfin_expense_lines_model.json:费用单与费用明细
  • fin_employees_model.jsonfin_departments_model.json:员工与部门
  • fin_counterparties_model.json:交易对手(供应商 / 客户)

这些模型共同构成发票风控场景下的基础数据层,为规则引擎、仪表盘以及工作流提供统一的数据来源。