Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
X
xpkg
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
屠思豪
xpkg
Commits
dc0f9fb2
提交
dc0f9fb2
authored
12月 08, 2025
作者:
mooncake
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
修改err
上级
95326137
显示空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
77 行增加
和
104 行删除
+77
-104
http_system_code.go
pkg/errcode/http_system_code.go
+10
-10
xcode.go
pkg/xerrors/xcode/xcode.go
+0
-9
xerror_api.go
pkg/xerrors/xerror/xerror_api.go
+27
-34
xerror_error.go
pkg/xerrors/xerror/xerror_error.go
+4
-0
xerror_error_test.go
pkg/xerrors/xerror/xerror_error_test.go
+26
-0
cron.go
xcron/ecode/cron.go
+0
-9
cron_job.go
xcron/service/cron_job.go
+5
-6
xslice.go
xutils/sliceutils/xslice.go
+5
-36
没有找到文件。
pkg/errcode/http_system_code.go
浏览文件 @
dc0f9fb2
package
errcode
package
errcode
// http system level error code, error code range 10000~
2
0000
// http system level error code, error code range 10000~
1
0000
var
(
var
(
Success
=
NewError
(
1
,
"OK"
)
Success
=
NewError
(
1
,
"OK"
)
// 已下错误会返给前端
InvalidParams
=
NewError
(
100001
,
"Invalid Parameter"
)
InvalidParams
=
NewError
(
100001
,
"Invalid Parameter"
)
Unauthorized
=
NewError
(
100002
,
"Unauthorized"
)
Unauthorized
=
NewError
(
100002
,
"Unauthorized"
)
InternalServerError
=
NewError
(
100003
,
"Internal Server Error"
)
InternalServerError
=
NewError
(
100003
,
"Internal Server Error"
)
...
@@ -16,7 +18,6 @@ var (
...
@@ -16,7 +18,6 @@ var (
AccessDenied
=
NewError
(
100011
,
"Access Denied"
)
AccessDenied
=
NewError
(
100011
,
"Access Denied"
)
MethodNotAllowed
=
NewError
(
100012
,
"Method Not Allowed"
)
MethodNotAllowed
=
NewError
(
100012
,
"Method Not Allowed"
)
ServiceUnavailable
=
NewError
(
100013
,
"Service Unavailable"
)
ServiceUnavailable
=
NewError
(
100013
,
"Service Unavailable"
)
Canceled
=
NewError
(
100014
,
"Canceled"
)
Canceled
=
NewError
(
100014
,
"Canceled"
)
Unknown
=
NewError
(
100015
,
"Unknown"
)
Unknown
=
NewError
(
100015
,
"Unknown"
)
PermissionDenied
=
NewError
(
100016
,
"Permission Denied"
)
PermissionDenied
=
NewError
(
100016
,
"Permission Denied"
)
...
@@ -27,13 +28,12 @@ var (
...
@@ -27,13 +28,12 @@ var (
Unimplemented
=
NewError
(
100021
,
"Unimplemented"
)
Unimplemented
=
NewError
(
100021
,
"Unimplemented"
)
DataLoss
=
NewError
(
100022
,
"Data Loss"
)
DataLoss
=
NewError
(
100022
,
"Data Loss"
)
StatusBadGateway
=
NewError
(
100023
,
"Bad Gateway"
)
StatusBadGateway
=
NewError
(
100023
,
"Bad Gateway"
)
Conflict
=
NewError
(
100024
,
"Conflict"
)
TooEarly
=
NewError
(
100025
,
"Too Early"
)
DBError
=
NewError
(
100024
,
"DB Error"
)
// 已下错误不会返给前端
NetError
=
NewError
(
100025
,
"Net Error"
)
DBError
=
NewError
(
160001
,
"DB Error"
)
FileError
=
NewError
(
100026
,
"File Error"
)
CacheError
=
NewError
(
160002
,
"Cache Error"
)
BizLogicError
=
NewError
(
100027
,
"Business Logic Error"
)
NetError
=
NewError
(
160003
,
"Net Error"
)
FileError
=
NewError
(
160004
,
"File Error"
)
// Deprecated: use Conflict instead
Conflict
=
NewError
(
100409
,
"Conflict"
)
TooEarly
=
NewError
(
100425
,
"Too Early"
)
)
)
pkg/xerrors/xcode/xcode.go
浏览文件 @
dc0f9fb2
package
xcode
package
xcode
// Code 通用错误代码接口定义。
type
Code
interface
{
type
Code
interface
{
// Code 错误码。
Code
()
int
Code
()
int
// Message 错误码简短信息。
Message
()
string
Message
()
string
// Detail 错误码详细信息。
Detail
()
any
Detail
()
any
}
}
// ================================================================================================================
// 公共错误码定义。
// 保留内部错误码: code < 1000。
// ================================================================================================================
var
(
var
(
CodeDefault
=
0
CodeDefault
=
0
CodeOK
=
200
CodeOK
=
200
...
...
pkg/xerrors/xerror/xerror_api.go
浏览文件 @
dc0f9fb2
...
@@ -16,11 +16,27 @@ import (
...
@@ -16,11 +16,27 @@ import (
// }
// }
// }
// }
func
NewFileError
(
text
string
)
error
{
e
:=
FileError
{}
e
.
stack
=
callers
()
e
.
text
=
text
e
.
code
=
errcode
.
FileError
.
Code
()
return
&
e
}
func
NewFileErrorf
(
format
string
,
args
...
any
)
error
{
e
:=
FileError
{}
e
.
stack
=
callers
()
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
code
=
errcode
.
FileError
.
Code
()
return
&
e
}
func
NewNetError
(
text
string
)
error
{
func
NewNetError
(
text
string
)
error
{
e
:=
NetError
{}
e
:=
NetError
{}
e
.
stack
=
callers
()
e
.
stack
=
callers
()
e
.
text
=
text
e
.
text
=
text
e
.
code
=
xcode
.
CodeDefault
e
.
code
=
errcode
.
NetError
.
Code
()
return
&
e
return
&
e
}
}
...
@@ -28,7 +44,7 @@ func NewNetErrorf(format string, args ...any) error {
...
@@ -28,7 +44,7 @@ func NewNetErrorf(format string, args ...any) error {
e
:=
NetError
{}
e
:=
NetError
{}
e
.
stack
=
callers
()
e
.
stack
=
callers
()
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
code
=
xcode
.
CodeDefault
e
.
code
=
errcode
.
NetError
.
Code
()
return
&
e
return
&
e
}
}
...
@@ -36,7 +52,7 @@ func NewDBError(text string) error {
...
@@ -36,7 +52,7 @@ func NewDBError(text string) error {
e
:=
DBError
{}
e
:=
DBError
{}
e
.
stack
=
callers
()
e
.
stack
=
callers
()
e
.
text
=
text
e
.
text
=
text
e
.
code
=
xcode
.
CodeDefault
e
.
code
=
errcode
.
DBError
.
Code
()
return
&
e
return
&
e
}
}
...
@@ -44,7 +60,7 @@ func NewDBErrorf(format string, args ...any) error {
...
@@ -44,7 +60,7 @@ func NewDBErrorf(format string, args ...any) error {
e
:=
DBError
{}
e
:=
DBError
{}
e
.
stack
=
callers
()
e
.
stack
=
callers
()
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
code
=
xcode
.
CodeDefault
e
.
code
=
errcode
.
DBError
.
Code
()
return
&
e
return
&
e
}
}
...
@@ -52,7 +68,7 @@ func NewCacheError(text string) error {
...
@@ -52,7 +68,7 @@ func NewCacheError(text string) error {
e
:=
CacheError
{}
e
:=
CacheError
{}
e
.
stack
=
callers
()
e
.
stack
=
callers
()
e
.
text
=
text
e
.
text
=
text
e
.
code
=
xcode
.
CodeDefault
e
.
code
=
errcode
.
CacheError
.
Code
()
return
&
e
return
&
e
}
}
...
@@ -60,7 +76,7 @@ func NewCacheErrorf(format string, args ...any) error {
...
@@ -60,7 +76,7 @@ func NewCacheErrorf(format string, args ...any) error {
e
:=
CacheError
{}
e
:=
CacheError
{}
e
.
stack
=
callers
()
e
.
stack
=
callers
()
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
code
=
xcode
.
CodeDefault
e
.
code
=
errcode
.
CacheError
.
Code
()
return
&
e
return
&
e
}
}
...
@@ -76,31 +92,7 @@ func NewParamErrorf(format string, args ...any) error {
...
@@ -76,31 +92,7 @@ func NewParamErrorf(format string, args ...any) error {
e
:=
ParamError
{}
e
:=
ParamError
{}
e
.
stack
=
callers
()
e
.
stack
=
callers
()
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
code
=
xcode
.
CodeDefault
e
.
code
=
errcode
.
InvalidParams
.
Code
()
return
&
e
}
func
NewBizError
(
text
string
)
error
{
e
:=
BizError
{}
e
.
stack
=
callers
()
e
.
text
=
text
e
.
code
=
xcode
.
CodeDefault
return
&
e
}
func
NewBizErrorC
(
code
int
,
text
string
)
error
{
e
:=
BizError
{}
e
.
stack
=
callers
()
e
.
text
=
text
e
.
code
=
code
return
&
e
}
func
NewBizErrorf
(
format
string
,
args
...
any
)
error
{
e
:=
BizError
{}
e
.
stack
=
callers
()
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
code
=
xcode
.
CodeDefault
return
&
e
return
&
e
}
}
...
@@ -108,7 +100,7 @@ func NewRuntimeError(text string) error {
...
@@ -108,7 +100,7 @@ func NewRuntimeError(text string) error {
e
:=
RuntimeError
{}
e
:=
RuntimeError
{}
e
.
stack
=
callers
()
e
.
stack
=
callers
()
e
.
text
=
text
e
.
text
=
text
e
.
code
=
xcode
.
CodeDefault
e
.
code
=
errcode
.
InternalServerError
.
Code
()
return
&
e
return
&
e
}
}
...
@@ -116,11 +108,10 @@ func NewRuntimeErrorf(format string, args ...any) error {
...
@@ -116,11 +108,10 @@ func NewRuntimeErrorf(format string, args ...any) error {
e
:=
RuntimeError
{}
e
:=
RuntimeError
{}
e
.
stack
=
callers
()
e
.
stack
=
callers
()
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
text
=
fmt
.
Sprintf
(
format
,
args
...
)
e
.
code
=
xcode
.
CodeDefault
e
.
code
=
errcode
.
InternalServerError
.
Code
()
return
&
e
return
&
e
}
}
// NewC add code
func
NewC
(
code
int
,
text
string
)
error
{
func
NewC
(
code
int
,
text
string
)
error
{
e
:=
BizError
{}
e
:=
BizError
{}
e
.
stack
=
callers
()
e
.
stack
=
callers
()
...
@@ -160,6 +151,7 @@ func Newf(format string, args ...any) error {
...
@@ -160,6 +151,7 @@ func Newf(format string, args ...any) error {
code
:
xcode
.
CodeDefault
,
code
:
xcode
.
CodeDefault
,
}
}
}
}
func
Errorf
(
format
string
,
args
...
any
)
error
{
func
Errorf
(
format
string
,
args
...
any
)
error
{
return
&
Err
{
return
&
Err
{
stack
:
callers
(),
stack
:
callers
(),
...
@@ -167,6 +159,7 @@ func Errorf(format string, args ...any) error {
...
@@ -167,6 +159,7 @@ func Errorf(format string, args ...any) error {
code
:
xcode
.
CodeDefault
,
code
:
xcode
.
CodeDefault
,
}
}
}
}
func
NewCf
(
code
int
,
format
string
,
args
...
any
)
error
{
func
NewCf
(
code
int
,
format
string
,
args
...
any
)
error
{
return
&
Err
{
return
&
Err
{
stack
:
callers
(),
stack
:
callers
(),
...
...
pkg/xerrors/xerror/xerror_error.go
浏览文件 @
dc0f9fb2
...
@@ -41,6 +41,10 @@ type NetError struct {
...
@@ -41,6 +41,10 @@ type NetError struct {
Err
Err
}
}
type
FileError
struct
{
Err
}
type
DBError
struct
{
type
DBError
struct
{
Err
Err
}
}
...
...
pkg/xerrors/xerror/xerror_error_test.go
0 → 100644
浏览文件 @
dc0f9fb2
package
xerror_test
import
(
"fmt"
"testing"
"gitlab.wanzhuangkj.com/tush/xpkg/pkg/xerrors/xerror"
)
func
TestErr_Error
(
t
*
testing
.
T
)
{
dbe
:=
xerror
.
NewDBError
(
"db err"
)
if
e
,
ok
:=
dbe
.
(
*
xerror
.
DBError
);
ok
{
fmt
.
Println
(
"is DBError,"
,
e
.
Error
())
}
if
e
,
ok
:=
dbe
.
(
*
xerror
.
Err
);
ok
{
fmt
.
Println
(
"is Err,"
,
e
.
Error
())
}
}
func
TestErr_WarpError
(
t
*
testing
.
T
)
{
e
:=
xerror
.
NewC
(
-
1
,
"db error"
)
e
=
xerror
.
Wrap
(
e
,
"add wrap"
)
if
v
,
ok
:=
e
.
(
*
xerror
.
Err
);
ok
{
fmt
.
Println
(
"is Err,"
,
v
.
Error
(),
v
.
Code
())
}
}
xcron/ecode/cron.go
deleted
100644 → 0
浏览文件 @
95326137
package
ecode
import
(
"errors"
)
var
(
ErrCronJobNotFound
=
errors
.
New
(
"未查询到任务"
)
)
xcron/service/cron_job.go
浏览文件 @
dc0f9fb2
...
@@ -2,19 +2,18 @@ package service
...
@@ -2,19 +2,18 @@ package service
import
(
import
(
"context"
"context"
"errors"
"fmt"
"fmt"
"gitlab.wanzhuangkj.com/tush/xpkg/xcommon"
"gitlab.wanzhuangkj.com/tush/xpkg/xcommon"
"gitlab.wanzhuangkj.com/tush/xpkg/xcron/biz"
"gitlab.wanzhuangkj.com/tush/xpkg/xcron/biz"
"gitlab.wanzhuangkj.com/tush/xpkg/xcron/dao"
"gitlab.wanzhuangkj.com/tush/xpkg/xcron/dao"
"gitlab.wanzhuangkj.com/tush/xpkg/xcron/ecode"
"gitlab.wanzhuangkj.com/tush/xpkg/xcron/enums"
"gitlab.wanzhuangkj.com/tush/xpkg/xcron/enums"
"gitlab.wanzhuangkj.com/tush/xpkg/xcron/models"
"gitlab.wanzhuangkj.com/tush/xpkg/xcron/models"
"gitlab.wanzhuangkj.com/tush/xpkg/xcron/types"
"gitlab.wanzhuangkj.com/tush/xpkg/xcron/types"
"gitlab.wanzhuangkj.com/tush/xpkg/xutils/xsf"
"gitlab.wanzhuangkj.com/tush/xpkg/xutils/xsf"
"github.com/jinzhu/copier"
"github.com/jinzhu/copier"
"gitlab.wanzhuangkj.com/tush/xpkg/pkg/xerrors/xerror"
"gitlab.wanzhuangkj.com/tush/xpkg/xutils/sliceutils"
"gitlab.wanzhuangkj.com/tush/xpkg/xutils/sliceutils"
)
)
...
@@ -62,7 +61,7 @@ func (x *cronJobService) DeleteByID(ctx context.Context, id xsf.ID) error {
...
@@ -62,7 +61,7 @@ func (x *cronJobService) DeleteByID(ctx context.Context, id xsf.ID) error {
return
err
return
err
}
}
if
cronJob
==
nil
{
if
cronJob
==
nil
{
return
xerror
.
NewBizError
(
fmt
.
Sprintf
(
"未查询到%s[id:%d]"
,
models
.
CronJobTool
.
TableName
(),
id
))
return
errors
.
New
(
fmt
.
Sprintf
(
"未查询到%s[id:%d]"
,
models
.
CronJobTool
.
TableName
(),
id
))
}
}
return
dao
.
CronJobDao
.
DeleteByID
(
ctx
,
id
)
return
dao
.
CronJobDao
.
DeleteByID
(
ctx
,
id
)
}
}
...
@@ -75,7 +74,7 @@ func (x *cronJobService) DeleteByIDs(ctx context.Context, ids []xsf.ID) error {
...
@@ -75,7 +74,7 @@ func (x *cronJobService) DeleteByIDs(ctx context.Context, ids []xsf.ID) error {
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
err
=
sliceutils
.
CompareSlice
(
ids
,
cronJobs
,
ecode
.
ErrCronJobNotFound
)
err
=
sliceutils
.
CompareSlice
(
ids
,
cronJobs
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
...
@@ -107,7 +106,7 @@ func (x *cronJobService) UpdateByID(ctx context.Context, req *types.CronJobUpdat
...
@@ -107,7 +106,7 @@ func (x *cronJobService) UpdateByID(ctx context.Context, req *types.CronJobUpdat
return
err
return
err
}
}
if
cronJob
==
nil
{
if
cronJob
==
nil
{
return
xerror
.
NewBizError
(
fmt
.
Sprintf
(
"未查询到%s[id:%d]"
,
models
.
CronJobTool
.
TableName
(),
req
.
ID
))
return
errors
.
New
(
fmt
.
Sprintf
(
"未查询到%s[id:%d]"
,
models
.
CronJobTool
.
TableName
(),
req
.
ID
))
}
}
cronJobUpd
:=
&
models
.
CronJob
{}
cronJobUpd
:=
&
models
.
CronJob
{}
_
=
copier
.
Copy
(
cronJobUpd
,
req
)
_
=
copier
.
Copy
(
cronJobUpd
,
req
)
...
@@ -122,7 +121,7 @@ func (x *cronJobService) UpdateByIDs(ctx context.Context, req *types.CronJobUpda
...
@@ -122,7 +121,7 @@ func (x *cronJobService) UpdateByIDs(ctx context.Context, req *types.CronJobUpda
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
err
=
sliceutils
.
CompareSlice
(
req
.
IDs
,
cronJobs
,
ecode
.
ErrCronJobNotFound
)
err
=
sliceutils
.
CompareSlice
(
req
.
IDs
,
cronJobs
)
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
...
...
xutils/sliceutils/xslice.go
浏览文件 @
dc0f9fb2
package
sliceutils
package
sliceutils
import
(
import
(
"errors"
"fmt"
"fmt"
"strings"
"strings"
"gitlab.wanzhuangkj.com/tush/xpkg/pkg/errcode"
"gitlab.wanzhuangkj.com/tush/xpkg/pkg/xtype"
"gitlab.wanzhuangkj.com/tush/xpkg/pkg/xtype"
"gitlab.wanzhuangkj.com/tush/xpkg/xutils/setutils"
"gitlab.wanzhuangkj.com/tush/xpkg/xutils/setutils"
"github.com/jinzhu/copier"
"github.com/jinzhu/copier"
"github.com/spf13/cast"
"github.com/spf13/cast"
"gitlab.wanzhuangkj.com/tush/xpkg/pkg/xerrors/xerror"
)
)
// connector 连接符
// connector 连接符
...
@@ -236,23 +235,17 @@ type ICode interface {
...
@@ -236,23 +235,17 @@ type ICode interface {
Code
()
int
Code
()
int
}
}
func
CompareSlice
[
ID
xtype
.
Key
,
T
IIDTable
[
ID
],
BizSlice
~
[]
*
T
](
ids
[]
ID
,
bizSlice
BizSlice
,
errCode
error
)
error
{
func
CompareSlice
[
ID
xtype
.
Key
,
T
IIDTable
[
ID
],
BizSlice
~
[]
*
T
](
ids
[]
ID
,
bizSlice
BizSlice
)
error
{
if
len
(
ids
)
==
0
{
if
len
(
ids
)
==
0
{
return
nil
return
nil
}
}
if
len
(
bizSlice
)
<
len
(
ids
)
{
if
len
(
bizSlice
)
<
len
(
ids
)
{
if
len
(
bizSlice
)
==
0
{
if
len
(
bizSlice
)
==
0
{
if
v
,
ok
:=
errCode
.
(
*
errcode
.
Error
);
ok
{
return
errors
.
New
(
"ids(result) less then ids(params)"
)
return
xerror
.
NewC
(
v
.
Code
(),
v
.
Msg
())
}
}
return
xerror
.
NewBizError
(
errCode
.
Error
())
deltaIDs
:=
SetDifference
(
ids
,
GetIDs
(
bizSlice
))
}
deltaIDs
:=
SetDifference
(
ids
,
GetIDs
[
ID
](
bizSlice
))
if
len
(
deltaIDs
)
>
0
{
if
len
(
deltaIDs
)
>
0
{
if
v
,
ok
:=
errCode
.
(
*
errcode
.
Error
);
ok
{
return
fmt
.
Errorf
(
"ids not match: %s"
,
Join
(
deltaIDs
,
","
))
return
xerror
.
NewC
(
v
.
Code
(),
fmt
.
Sprintf
(
"%s[ids:%s]"
,
v
.
Msg
(),
Join
(
deltaIDs
,
","
)))
}
return
xerror
.
NewBizError
(
errCode
.
Error
())
}
}
}
}
return
nil
return
nil
...
@@ -272,30 +265,6 @@ func ArrayUnique[T comparable](array []T) []T {
...
@@ -272,30 +265,6 @@ func ArrayUnique[T comparable](array []T) []T {
return
array
[
:
idx
]
return
array
[
:
idx
]
}
}
//
//type IId[id xtype.Key] interface {
// GetID() id
//}
//
//func GetIds[id xtype.Key, T IId[id]](rs []*T) []id {
// if len(rs) == 0 {
// return nil
// }
// set := setutils.NewSet[id]()
// for _, r := range rs {
// set.Add((*r).GetID())
// }
// return set.Slice()
//}
//
//func SliceToIdMap[id xtype.Key, T IId[id]](rs []*T) map[id]*T {
// m := make(map[id]*T)
// for _, r := range rs {
// m[(*r).GetID()] = r
// }
// return m
//}
func
ChunkSlice
[
T
any
](
slice
[]
T
,
chunkSize
int
)
[][]
T
{
func
ChunkSlice
[
T
any
](
slice
[]
T
,
chunkSize
int
)
[][]
T
{
var
chunks
[][]
T
var
chunks
[][]
T
for
i
:=
0
;
i
<
len
(
slice
);
i
+=
chunkSize
{
for
i
:=
0
;
i
<
len
(
slice
);
i
+=
chunkSize
{
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论