plugins/plugins/wx_cpn/internal/vo/query_status.go

45 lines
1.1 KiB
Go

package vo
import "codeup.aliyun.com/6552e56cc3b2728a4557fc18/plugin/proto"
type QueryStatus string
const (
QueryStatusInit = "INIT"
QueryStatusSuccess = "SUCCESS"
QueryStatusFailed = "FAILED"
QueryStatusPending = "PENDING"
)
var queryStatusTextMap = map[QueryStatus]string{
QueryStatusInit: "初始化(表示还没有完成发放)",
QueryStatusSuccess: "成功(表示发放完成)",
QueryStatusFailed: "失败(表示发放失败)",
QueryStatusPending: "挂起(表示活动流水发放出现可重试异常会重试,如果达到最大重试次数后,依然没有成功的状态)",
}
var queryStatusMap = map[QueryStatus]proto.Status{
QueryStatusInit: proto.Status_ING,
QueryStatusSuccess: proto.Status_SUCCESS,
QueryStatusFailed: proto.Status_FAIL,
QueryStatusPending: proto.Status_FAIL,
}
func (o QueryStatus) GetText() string {
msg, ok := queryStatusTextMap[o]
if !ok {
return ""
}
return msg
}
func (o QueryStatus) GetOrderStatus() proto.Status {
if o == "" {
return proto.Status_INVALID
}
if resultStatus, ok := queryStatusMap[o]; ok {
return resultStatus
}
return proto.Status_FAIL
}