package constants import "time" const ( // ApprovalStatusSubmitting 表示审批申请等待渠道提交。 ApprovalStatusSubmitting = 0 // ApprovalStatusPending 表示审批申请已进入渠道审批。 ApprovalStatusPending = 1 // ApprovalStatusApproved 表示审批已通过。 ApprovalStatusApproved = 2 // ApprovalStatusRejected 表示审批已拒绝。 ApprovalStatusRejected = 3 // ApprovalStatusCancelled 表示审批已撤销。 ApprovalStatusCancelled = 4 // ApprovalStatusRevokedAfterApproved 表示审批通过后被撤销。 ApprovalStatusRevokedAfterApproved = 5 // ApprovalStatusDeleted 表示审批已删除。 ApprovalStatusDeleted = 6 // ApprovalStatusSubmissionFailed 表示渠道明确确认审批提交失败。 ApprovalStatusSubmissionFailed = 7 // ApprovalStatusSubmissionUnknown 表示审批提交请求已发出但结果未知。 ApprovalStatusSubmissionUnknown = 8 ) const ( // ApprovalDecisionApproved 表示标准审批通过决策。 ApprovalDecisionApproved = "approved" // ApprovalDecisionRejected 表示标准审批拒绝决策。 ApprovalDecisionRejected = "rejected" // ApprovalDecisionCancelled 表示标准审批撤销决策。 ApprovalDecisionCancelled = "cancelled" // ApprovalDecisionDeleted 表示标准审批删除决策。 ApprovalDecisionDeleted = "deleted" // ApprovalDecisionRevokedAfterApproved 表示标准审批通过后撤销决策。 ApprovalDecisionRevokedAfterApproved = "revoked_after_approved" ) const ( // ApprovalInitialVersion 表示通用审批实例的初始乐观锁版本。 ApprovalInitialVersion = 1 // ApprovalQueryMaxBatchSize 表示通用审批摘要单次批量投影上限。 ApprovalQueryMaxBatchSize = 100 // ApprovalUnknownSubmitterName 表示提交人名称快照无法解析。 ApprovalUnknownSubmitterName = "未知账号" // ApprovalDecisionDeliveryLeaseDuration 表示标准决策消费者的单次处理租约时长。 ApprovalDecisionDeliveryLeaseDuration = 5 * time.Minute // ApprovalPreparationTTL 表示事务前审批可用性结果允许复用的最长期限。 ApprovalPreparationTTL = 30 * time.Second ) const ( // ApprovalDecisionDeliveryPending 表示标准决策等待业务消费。 ApprovalDecisionDeliveryPending = 0 // ApprovalDecisionDeliveryProcessing 表示标准决策已被消费者租约领取。 ApprovalDecisionDeliveryProcessing = 1 // ApprovalDecisionDeliverySucceeded 表示标准决策已被业务幂等处理。 ApprovalDecisionDeliverySucceeded = 2 // ApprovalDecisionDeliveryFailed 表示标准决策消费失败并等待重试。 ApprovalDecisionDeliveryFailed = 3 ) const ( // OutboxEventTypeApprovalTerminalDecision 表示通用审批标准终态已记录。 OutboxEventTypeApprovalTerminalDecision = "approval.terminal_decision.recorded" // OutboxEventTypeApprovalSubmissionRequested 表示通用审批实例等待渠道提交。 OutboxEventTypeApprovalSubmissionRequested = "approval.submission.requested" // ApprovalTerminalDecisionPayloadVersionV1 表示标准终态事件载荷第一版。 ApprovalTerminalDecisionPayloadVersionV1 = 1 // ApprovalSubmissionPayloadVersionV1 表示审批申请提交事件载荷第一版。 ApprovalSubmissionPayloadVersionV1 = 1 ) const ( // ApprovalSyncSourceCallback 表示由第三方审批回调触发权威同步。 ApprovalSyncSourceCallback = "callback" // ApprovalSyncSourcePolling 表示由定时兜底轮询触发权威同步。 ApprovalSyncSourcePolling = "polling" // ApprovalSyncSourceManual 表示由受控人工动作触发权威同步。 ApprovalSyncSourceManual = "manual" ) // GetApprovalStatusName 返回通用审批状态的中文名称。 func GetApprovalStatusName(status int) string { switch status { case ApprovalStatusSubmitting: return "提交中" case ApprovalStatusPending: return "审批中" case ApprovalStatusApproved: return "已通过" case ApprovalStatusRejected: return "已拒绝" case ApprovalStatusCancelled: return "已撤销" case ApprovalStatusRevokedAfterApproved: return "通过后撤销" case ApprovalStatusDeleted: return "已删除" case ApprovalStatusSubmissionFailed: return "提交失败" case ApprovalStatusSubmissionUnknown: return "提交结果未知" default: return "未知" } }