本文引用的文件
本文件为财务结算系统的业务文档,围绕收入统计、成本核算、利润分析、税务处理机制展开,详细说明结算周期设置、对账流程、银行转账、发票开具、财务报表生成等关键环节。同时涵盖多渠道收入管理、汇率转换、跨境结算、合规要求,并提供完整的财务API接口定义、财务数据模型、会计科目设置、凭证生成与审计跟踪,以及风险控制措施、反洗钱合规、数据安全保护与备份恢复策略。
财务结算系统主要由以下模块组成:
数据模型层:基于Prisma的数据库模型,支撑财务数据存储与查询
graph TB
subgraph "前端"
UI[用户界面]
Orders[订单历史页面]
Member[会员中心]
end
subgraph "后端服务"
PC[支付控制器]
PS[支付服务]
SC[订阅控制器]
SS[订阅服务]
LC[日志控制器]
LS[日志服务]
end
subgraph "数据层"
PRISMA[Prisma模型]
DB[(数据库)]
end
UI --> PC
UI --> SC
Orders --> PC
Member --> SC
PC --> PS
SC --> SS
PS --> PRISMA
SS --> PRISMA
LC --> LS
LS --> DB
PRISMA --> DB
图表来源
章节来源
章节来源
系统采用分层架构,前端通过HTTP接口与后端交互,后端控制器调用服务层,服务层通过Prisma访问数据库。支付模块与订阅模块相互协作,共同完成收入统计与成本核算。
sequenceDiagram
participant Client as "客户端"
participant PC as "支付控制器"
participant PS as "支付服务"
participant SS as "订阅服务"
participant DB as "数据库"
Client->>PC : POST /api/payment/create
PC->>PS : createPaymentOrder(userId, planId, paymentMethod)
PS->>DB : 创建订单记录
PS-->>PC : 返回支付链接/二维码
PC-->>Client : 订单创建成功
Note over Client,DB : 支付完成后回调
Client->>PC : 支付宝/微信回调
PC->>PS : handlePaymentCallback(orderNo, paymentId, status)
PS->>DB : 更新订单状态
PS->>SS : activateSubscription(userId, planId)
SS->>DB : 激活订阅并更新Token余额
SS-->>PS : 订阅激活完成
PS-->>PC : 支付回调处理完成
PC-->>Client : 支付结果
图表来源
订单查询:提供订单列表与详情查询接口
flowchart TD
Start([开始]) --> CreateOrder["创建订单"]
CreateOrder --> ChooseMethod{"选择支付方式"}
ChooseMethod --> |支付宝| Alipay["生成支付宝支付链接/二维码"]
ChooseMethod --> |微信| Wechat["生成微信支付二维码"]
ChooseMethod --> |模拟| Mock["模拟支付"]
Alipay --> Pay["用户支付"]
Wechat --> Pay
Mock --> Pay
Pay --> Callback{"收到回调"}
Callback --> |验证签名| UpdateOrder["更新订单状态"]
UpdateOrder --> ActivateSub["激活订阅并初始化Token余额"]
ActivateSub --> End([结束])
Callback --> |验证失败| Fail["处理失败"]
Fail --> End
图表来源
章节来源
书籍生成配额:提供书籍规模预估与生成配额检查
classDiagram
class SubscriptionService {
+getPlans()
+getPlanById(id)
+getUserSubscription(userId)
+getUserTokenBalance(userId)
+getTokenUsageList(userId, page, pageSize)
+checkQuota(userId, requiredTokens)
+calculateAudioCost(textLength, memberLevel, usedMinutes)
+getUserAudioBalance(userId)
+checkAudioQuota(userId, textLength)
+consumeAudioMinutes(userId, textLength, description)
+getAudioEstimate(userId, textLength)
}
class PaymentService {
+createPaymentOrder(userId, planId, paymentMethod, returnUrl)
+handlePaymentCallback(orderNo, paymentId, status)
+activateSubscription(userId, planId)
+getOrderList(userId, page, pageSize)
+getOrderDetail(orderNo, userId)
}
SubscriptionService --> PaymentService : "订阅激活依赖"
图表来源
章节来源
统计数据:提供日志统计信息,帮助监控系统健康状况
sequenceDiagram
participant Service as "服务层"
participant LogCtrl as "日志控制器"
participant LogSvc as "日志服务"
participant FS as "文件系统"
Service->>LogCtrl : 记录请求日志
LogCtrl->>LogSvc : logRequest(log)
LogSvc->>FS : 异步保存日志文件
LogSvc-->>Service : 日志记录完成
Service->>LogCtrl : 获取错误分析
LogCtrl->>LogSvc : analyzeErrors()
LogSvc-->>LogCtrl : 返回错误分析结果
LogCtrl-->>Service : 错误分析完成
图表来源
章节来源
支付相关接口
订阅与配额相关接口
章节来源
订单(Order):包含用户ID、订单号、套餐ID、金额、状态、支付方式等
erDiagram
SUBSCRIPTION_PLAN {
int id PK
string name
int level
decimal priceMonthly
decimal priceYearly
int monthlyTokens
int yearlyTokens
int dailyGenerations
int perGenerationLimit
int voiceOptions
string audioQuality
boolean apiAccess
boolean batchProcessing
boolean teamManagement
}
SUBSCRIPTION {
int id PK
int userId
int planId FK
datetime startDate
datetime endDate
string status
boolean autoRenew
}
TOKEN_USAGE {
int id PK
int userId
string type
int amount
int contentLength
int orderId
text description
datetime createdAt
}
ORDER {
int id PK
int userId
string orderNo
int planId
decimal amount
string status
string paymentMethod
datetime paidAt
datetime createdAt
datetime updatedAt
}
USER {
int id PK
int memberLevel
datetime memberExpireAt
int usedAudioMinutes
datetime subscriptionResetDate
}
SUBSCRIPTION_PLAN ||--o{ SUBSCRIPTION : "拥有"
USER ||--o{ SUBSCRIPTION : "订阅"
USER ||--o{ TOKEN_USAGE : "使用"
ORDER }o--|| SUBSCRIPTION_PLAN : "对应"
图表来源
章节来源
章节来源
章节来源
章节来源
章节来源
章节来源
日志模块独立运行,为其他模块提供审计支持
graph TB
PC["支付控制器"] --> PS["支付服务"]
SC["订阅控制器"] --> SS["订阅服务"]
PS --> SS
LC["日志控制器"] --> LS["日志服务"]
PS --> DB["数据库"]
SS --> DB
LS --> DB
图表来源
章节来源
章节来源
财务结算系统通过清晰的模块划分与完善的API设计,实现了从收入统计、成本核算到利润分析的全流程管理。系统具备良好的扩展性与可维护性,能够满足多渠道收入管理、汇率转换、跨境结算与合规要求。通过日志与审计模块,系统提供了完整的审计跟踪能力,确保财务数据的准确性与可追溯性。
章节来源