This commit is contained in:
2025-07-28 01:46:39 +08:00
parent b03129667a
commit 357639462a
219 changed files with 21634 additions and 8138 deletions

View File

@@ -9,7 +9,8 @@ const (
StatusInfoSubmitted CertificationStatus = "info_submitted" // 已提交企业信息
StatusEnterpriseVerified CertificationStatus = "enterprise_verified" // 已企业认证
StatusContractApplied CertificationStatus = "contract_applied" // 已申请签署合同
StatusContractSigned CertificationStatus = "contract_signed" // 已签署合同(认证完成)
StatusContractSigned CertificationStatus = "contract_signed" // 已签署合同
StatusCompleted CertificationStatus = "completed" // 认证完成
// === 失败状态 ===
StatusInfoRejected CertificationStatus = "info_rejected" // 企业信息被拒绝
@@ -24,6 +25,7 @@ var AllStatuses = []CertificationStatus{
StatusEnterpriseVerified,
StatusContractApplied,
StatusContractSigned,
StatusCompleted,
StatusInfoRejected,
StatusContractRejected,
StatusContractExpired,
@@ -62,7 +64,8 @@ func GetStatusName(status CertificationStatus) string {
StatusInfoSubmitted: "已提交企业信息",
StatusEnterpriseVerified: "已企业认证",
StatusContractApplied: "已申请签署合同",
StatusContractSigned: "认证完成",
StatusContractSigned: "已签署合同",
StatusCompleted: "认证完成",
StatusInfoRejected: "企业信息被拒绝",
StatusContractRejected: "合同被拒签",
StatusContractExpired: "合同签署超时",
@@ -76,7 +79,7 @@ func GetStatusName(status CertificationStatus) string {
// IsFinalStatus 判断是否为最终状态
func IsFinalStatus(status CertificationStatus) bool {
return status == StatusContractSigned
return status == StatusCompleted
}
// IsFailureStatus 判断是否为失败状态
@@ -107,6 +110,9 @@ func GetStatusCategory(status CertificationStatus) string {
if IsFailureStatus(status) {
return "失败状态"
}
if status == StatusCompleted {
return "完成"
}
return "未知"
}
@@ -118,9 +124,10 @@ func GetStatusPriority(status CertificationStatus) int {
StatusEnterpriseVerified: 3,
StatusContractApplied: 4,
StatusContractSigned: 5,
StatusInfoRejected: 6,
StatusContractRejected: 7,
StatusContractExpired: 8,
StatusCompleted: 6,
StatusInfoRejected: 7,
StatusContractRejected: 8,
StatusContractExpired: 9,
}
if priority, exists := priorities[status]; exists {
@@ -137,6 +144,7 @@ func GetProgressPercentage(status CertificationStatus) int {
StatusEnterpriseVerified: 50,
StatusContractApplied: 75,
StatusContractSigned: 100,
StatusCompleted: 100,
StatusInfoRejected: 25,
StatusContractRejected: 75,
StatusContractExpired: 75,
@@ -155,7 +163,8 @@ func IsUserActionRequired(status CertificationStatus) bool {
StatusInfoSubmitted: false, // 等待系统验证
StatusEnterpriseVerified: true, // 需要申请合同
StatusContractApplied: true, // 需要签署合同
StatusContractSigned: false, // 已完成
StatusContractSigned: false, // 合同已签署,等待系统处理
StatusCompleted: false, // 已完成
StatusInfoRejected: true, // 需要重新提交
StatusContractRejected: true, // 需要重新申请
StatusContractExpired: true, // 需要重新申请
@@ -171,10 +180,11 @@ func IsUserActionRequired(status CertificationStatus) bool {
func GetUserActionHint(status CertificationStatus) string {
hints := map[CertificationStatus]string{
StatusPending: "请提交企业信息",
StatusInfoSubmitted: "系统正在验证企业信息,请稍候",
StatusInfoSubmitted: "请完成企业认证",
StatusEnterpriseVerified: "企业认证完成,请申请签署合同",
StatusContractApplied: "请在规定时间内完成合同签署",
StatusContractSigned: "认证已完成",
StatusContractSigned: "合同已签署,等待系统处理",
StatusCompleted: "认证已完成",
StatusInfoRejected: "企业信息验证失败,请修正后重新提交",
StatusContractRejected: "合同签署被拒绝,可重新申请",
StatusContractExpired: "合同签署已超时,请重新申请",
@@ -205,6 +215,9 @@ func GetNextValidStatuses(currentStatus CertificationStatus) []CertificationStat
StatusContractExpired,
},
StatusContractSigned: {
StatusCompleted, // 可以转换到完成状态
},
StatusCompleted: {
// 最终状态,无后续状态
},
StatusInfoRejected: {
@@ -243,6 +256,7 @@ func GetTransitionReason(from, to CertificationStatus) string {
string(StatusInfoSubmitted) + "->" + string(StatusInfoRejected): "e签宝企业认证失败",
string(StatusEnterpriseVerified) + "->" + string(StatusContractApplied): "用户申请签署合同",
string(StatusContractApplied) + "->" + string(StatusContractSigned): "e签宝合同签署成功",
string(StatusContractSigned) + "->" + string(StatusCompleted): "系统处理完成,认证成功",
string(StatusContractApplied) + "->" + string(StatusContractRejected): "用户拒绝签署合同",
string(StatusContractApplied) + "->" + string(StatusContractExpired): "合同签署超时",
string(StatusInfoRejected) + "->" + string(StatusInfoSubmitted): "用户重新提交企业信息",