pipeline-app/deploy/dsync_domains.json

81 lines
7.5 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"_comment": "dsync 域定义——配置数据同步的唯一事实源。加新域=加一段配置。order=导入拓扑序被依赖的域在前。org_cols=机构过滤列:导入时该行 org 值不在 {'0','*',''} 目标环境机构表 则跳过测试临时机构数据不落地。gate=导入后悬空引用门禁SQL 返回行=失败。事务数据(usage/balance/detail/bill/subscription/ledger)一律不进域——dsync 只同步配置。",
"order": ["accounting_config", "pricing", "llm_gateway", "product", "discount", "supplier"],
"domains": {
"accounting_config": {
"title": "记账配置",
"tables": ["subject", "account_config", "accounting_config", "currency", "exchange_rate"],
"org_cols": {}
},
"pricing": {
"title": "定价",
"tables": ["pricing_program", "pricing_program_timing", "pipeline_pricing_map",
"acctres_spec", "acctres_pricing_map", "storres_spec", "storres_pricing_map"],
"org_cols": {
"pipeline_pricing_map": "org_id",
"acctres_spec": "org_id", "acctres_pricing_map": "org_id",
"storres_spec": "org_id", "storres_pricing_map": "org_id"
}
},
"llm_gateway": {
"title": "模型网关",
"tables": ["llm_vendor", "llm_account", "llm_api_profile", "llm_model",
"llm_org_policy", "llm_org_quota", "llm_user_quota"],
"org_cols": {
"llm_vendor": "org_id", "llm_account": "org_id", "llm_model": "org_id",
"llm_org_policy": "org_id", "llm_org_quota": "org_id", "llm_user_quota": "org_id"
},
"sensitive_note": "llm_account.api_key 为密文直迁(两环境 password_key sha256 一致2026-08-31 核对);数据包含密钥密文,只走 ssh 管道传输,禁入 git"
},
"product": {
"title": "产品",
"tables": ["product_category", "product", "product_resource", "product_org_auth"],
"org_cols": {
"product_category": "org_id", "product": "org_id", "product_org_auth": "org_id"
}
},
"discount": {
"title": "折扣",
"tables": ["discount", "discount_detail", "reseller_discount_tier",
"discount_marketing", "discount_promo_code", "discount_qr",
"discount_customer_bind"],
"org_cols": {}
},
"supplier": {
"title": "供应商",
"tables": ["suppliers", "supplier_resource_price", "product_supplier_mapping"],
"org_cols": {
"suppliers": "orgid",
"supplier_resource_price": "supplier_org_id",
"product_supplier_mapping": "buyer_org_id"
}
}
},
"gate": [
{"name": "模型→供应商", "sql": "SELECT m.id,m.name FROM llm_model m LEFT JOIN llm_vendor v ON v.id=m.vendor_id WHERE m.vendor_id IS NOT NULL AND m.vendor_id<>'' AND v.id IS NULL"},
{"name": "模型→账号", "sql": "SELECT m.id,m.name FROM llm_model m LEFT JOIN llm_account a ON a.id=m.account_id WHERE m.account_id IS NOT NULL AND m.account_id<>'' AND a.id IS NULL"},
{"name": "模型→请求模板", "sql": "SELECT m.id,m.name FROM llm_model m LEFT JOIN llm_api_profile p ON p.id=m.profile_id WHERE m.profile_id IS NOT NULL AND m.profile_id<>'' AND p.id IS NULL"},
{"name": "模型→定价方案(ppid)", "sql": "SELECT m.id,m.name,m.ppid FROM llm_model m LEFT JOIN pricing_program pp ON pp.id=m.ppid WHERE m.ppid IS NOT NULL AND m.ppid<>'' AND pp.id IS NULL"},
{"name": "机构策略→主模型", "sql": "SELECT p.id,p.org_id FROM llm_org_policy p LEFT JOIN llm_model m ON m.id=p.primary_model_id WHERE p.primary_model_id IS NOT NULL AND p.primary_model_id<>'' AND m.id IS NULL"},
{"name": "模型/供应商/策略→机构(rbac注册)", "sql": "SELECT 'llm_vendor' src, v.id, v.org_id FROM llm_vendor v LEFT JOIN organization o ON o.id=v.org_id WHERE o.id IS NULL UNION ALL SELECT 'llm_model', m.id, m.org_id FROM llm_model m LEFT JOIN organization o ON o.id=m.org_id WHERE o.id IS NULL UNION ALL SELECT 'llm_org_policy', p.id, p.org_id FROM llm_org_policy p LEFT JOIN organization o ON o.id=p.org_id WHERE o.id IS NULL"},
{"name": "定价时段→定价方案", "sql": "SELECT t.id,t.name FROM pricing_program_timing t LEFT JOIN pricing_program p ON p.id=t.ppid WHERE p.id IS NULL"},
{"name": "产线定价映射→产线", "sql": "SELECT m.id,m.pipeline_id FROM pipeline_pricing_map m LEFT JOIN pipelines pl ON pl.id=m.pipeline_id WHERE pl.id IS NULL"},
{"name": "产线定价映射→定价方案", "sql": "SELECT m.id,m.ppid FROM pipeline_pricing_map m LEFT JOIN pricing_program p ON p.id=m.ppid WHERE m.ppid IS NOT NULL AND m.ppid<>'' AND p.id IS NULL"},
{"name": "账号规格定价映射→规格", "sql": "SELECT m.id,m.spec_id FROM acctres_pricing_map m LEFT JOIN acctres_spec s ON s.id=m.spec_id WHERE s.id IS NULL"},
{"name": "账号规格定价映射→定价方案(ppid可空走charge_mode兜底)", "sql": "SELECT m.id,m.ppid FROM acctres_pricing_map m LEFT JOIN pricing_program p ON p.id=m.ppid WHERE m.ppid IS NOT NULL AND m.ppid<>'' AND p.id IS NULL"},
{"name": "存储规格定价映射→规格", "sql": "SELECT m.id,m.spec_id FROM storres_pricing_map m LEFT JOIN storres_spec s ON s.id=m.spec_id WHERE s.id IS NULL"},
{"name": "存储规格定价映射→定价方案", "sql": "SELECT m.id,m.ppid FROM storres_pricing_map m LEFT JOIN pricing_program p ON p.id=m.ppid WHERE m.ppid IS NOT NULL AND m.ppid<>'' AND p.id IS NULL"},
{"name": "产品→分类", "sql": "SELECT p.id,p.product_code FROM product p LEFT JOIN product_category c ON c.id=p.category_id WHERE c.id IS NULL"},
{"name": "产线产品→pipelines实体", "sql": "SELECT p.id,p.product_code FROM product p LEFT JOIN pipelines pl ON pl.id=p.resource_ref_id WHERE p.product_type='pipeline' AND p.resource_ref_id IS NOT NULL AND p.resource_ref_id<>'' AND pl.id IS NULL"},
{"name": "模型产品→llm_model实体", "sql": "SELECT p.id,p.product_code FROM product p LEFT JOIN llm_model m ON m.id=p.resource_ref_id WHERE p.product_type='pipeline_llm_model' AND p.resource_ref_id IS NOT NULL AND p.resource_ref_id<>'' AND m.id IS NULL"},
{"name": "存储产品→storres_spec实体", "sql": "SELECT p.id,p.product_code FROM product p LEFT JOIN storres_spec s ON s.id=p.resource_ref_id WHERE p.product_type='workspace_storage' AND p.resource_ref_id IS NOT NULL AND p.resource_ref_id<>'' AND s.id IS NULL"},
{"name": "折扣明细→折扣", "sql": "SELECT d.id,d.discountid FROM discount_detail d LEFT JOIN discount m ON m.id=d.discountid WHERE m.id IS NULL"},
{"name": "折扣明细→产品", "sql": "SELECT d.id,d.productid FROM discount_detail d LEFT JOIN product p ON p.id=d.productid WHERE d.productid IS NOT NULL AND d.productid<>'' AND d.productid<>'*' AND p.id IS NULL"},
{"name": "供应商→机构(rbac注册)", "sql": "SELECT s.id,s.supplier_name,s.orgid FROM suppliers s LEFT JOIN organization o ON o.id=s.orgid WHERE o.id IS NULL"},
{"name": "供应商→记账开户(accounting)", "sql": "SELECT s.id,s.supplier_name,s.orgid FROM suppliers s WHERE s.orgid IS NOT NULL AND s.orgid NOT IN ('0','*') AND NOT EXISTS (SELECT 1 FROM account a WHERE a.orgid=s.orgid)"},
{"name": "供价→机构", "sql": "SELECT r.id,r.supplier_org_id FROM supplier_resource_price r LEFT JOIN organization o ON o.id=r.supplier_org_id WHERE o.id IS NULL"},
{"name": "产品供应映射→产品", "sql": "SELECT m.id,m.product_id FROM product_supplier_mapping m LEFT JOIN product p ON p.id=m.product_id WHERE p.id IS NULL"},
{"name": "产品供应映射→外部供应商", "sql": "SELECT m.id,m.external_supplier_id FROM product_supplier_mapping m LEFT JOIN suppliers s ON s.id=m.external_supplier_id WHERE m.supplier_type='external' AND m.external_supplier_id IS NOT NULL AND m.external_supplier_id<>'' AND s.id IS NULL"}
]
}