enahnce(error):增强未成功完成操作的错误描述。
This commit is contained in:
parent
986562c2c2
commit
11bd661e79
|
@ -1,11 +1,130 @@
|
||||||
package exceptions
|
package exceptions
|
||||||
|
|
||||||
type UnsuccessfulOperationError struct{}
|
import (
|
||||||
|
"strings"
|
||||||
|
)
|
||||||
|
|
||||||
func NewUnsuccessfulOperationError() *UnsuccessfulOperationError {
|
type OperationType int16
|
||||||
return &UnsuccessfulOperationError{}
|
|
||||||
|
const (
|
||||||
|
OPERATE_CREATE OperationType = iota
|
||||||
|
OPERATE_UPDATE
|
||||||
|
OPERATE_DELETE
|
||||||
|
OEPRATE_QUERY
|
||||||
|
OPERATE_CALCULATE
|
||||||
|
OPERATE_DB
|
||||||
|
OPERATE_DB_TRANSACTION
|
||||||
|
OPERATE_CUSTOM OperationType = 98
|
||||||
|
OPERATE_OTHER OperationType = 99
|
||||||
|
)
|
||||||
|
|
||||||
|
type UnsuccessfulOperationError struct {
|
||||||
|
Operate OperationType
|
||||||
|
Description string
|
||||||
|
Message string
|
||||||
}
|
}
|
||||||
|
|
||||||
func (UnsuccessfulOperationError) Error() string {
|
func NewUnsuccessfulOperationError(oeprate OperationType, describe, message string) *UnsuccessfulOperationError {
|
||||||
return "操作不成功。"
|
return &UnsuccessfulOperationError{
|
||||||
|
Operate: oeprate,
|
||||||
|
Description: describe,
|
||||||
|
Message: message,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewUnsuccessCreateError(message string) *UnsuccessfulOperationError {
|
||||||
|
return &UnsuccessfulOperationError{
|
||||||
|
Operate: OPERATE_CREATE,
|
||||||
|
Message: message,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewUnsuccessUpdateError(message string) *UnsuccessfulOperationError {
|
||||||
|
return &UnsuccessfulOperationError{
|
||||||
|
Operate: OPERATE_UPDATE,
|
||||||
|
Message: message,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewUnsuccessDeleteError(message string) *UnsuccessfulOperationError {
|
||||||
|
return &UnsuccessfulOperationError{
|
||||||
|
Operate: OPERATE_DELETE,
|
||||||
|
Message: message,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewUnsuccessQueryError(message string) *UnsuccessfulOperationError {
|
||||||
|
return &UnsuccessfulOperationError{
|
||||||
|
Operate: OEPRATE_QUERY,
|
||||||
|
Message: message,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewUnsuccessCalculateError(message string) *UnsuccessfulOperationError {
|
||||||
|
return &UnsuccessfulOperationError{
|
||||||
|
Operate: OPERATE_CALCULATE,
|
||||||
|
Message: message,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewUnsuccessDBError(message string) *UnsuccessfulOperationError {
|
||||||
|
return &UnsuccessfulOperationError{
|
||||||
|
Operate: OPERATE_DB,
|
||||||
|
Message: message,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewUnsuccessDBTransactionError(message string) *UnsuccessfulOperationError {
|
||||||
|
return &UnsuccessfulOperationError{
|
||||||
|
Operate: OPERATE_DB_TRANSACTION,
|
||||||
|
Message: message,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewUnsuccessCustomError(describe, message string) *UnsuccessfulOperationError {
|
||||||
|
return &UnsuccessfulOperationError{
|
||||||
|
Operate: OPERATE_CUSTOM,
|
||||||
|
Description: describe,
|
||||||
|
Message: message,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewUnsuccessOtherError(message string) *UnsuccessfulOperationError {
|
||||||
|
return &UnsuccessfulOperationError{
|
||||||
|
Operate: OPERATE_OTHER,
|
||||||
|
Message: message,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (e UnsuccessfulOperationError) Error() string {
|
||||||
|
var builder strings.Builder
|
||||||
|
switch e.Operate {
|
||||||
|
case OPERATE_CREATE:
|
||||||
|
builder.WriteString("创建")
|
||||||
|
case OPERATE_UPDATE:
|
||||||
|
builder.WriteString("更新")
|
||||||
|
case OPERATE_DELETE:
|
||||||
|
builder.WriteString("删除")
|
||||||
|
case OEPRATE_QUERY:
|
||||||
|
builder.WriteString("查询")
|
||||||
|
case OPERATE_CALCULATE:
|
||||||
|
builder.WriteString("计算")
|
||||||
|
case OPERATE_DB:
|
||||||
|
builder.WriteString("数据库")
|
||||||
|
case OPERATE_DB_TRANSACTION:
|
||||||
|
builder.WriteString("数据库事务")
|
||||||
|
case OPERATE_CUSTOM:
|
||||||
|
builder.WriteString(e.Description)
|
||||||
|
case OPERATE_OTHER:
|
||||||
|
builder.WriteString("其他")
|
||||||
|
default:
|
||||||
|
builder.WriteString("未知")
|
||||||
|
}
|
||||||
|
builder.WriteString("操作不成功,")
|
||||||
|
if len(e.Message) > 0 {
|
||||||
|
builder.WriteString(e.Message)
|
||||||
|
} else {
|
||||||
|
builder.WriteString("未知原因")
|
||||||
|
}
|
||||||
|
return builder.String()
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user