|
@@ -0,0 +1,45 @@
|
|
|
|
+package token
|
|
|
|
+
|
|
|
|
+import (
|
|
|
|
+ "context"
|
|
|
|
+ "github.com/zeromicro/go-zero/core/errorx"
|
|
|
|
+ "wechat-api/internal/utils/dberrorhandler"
|
|
|
|
+
|
|
|
|
+ "wechat-api/internal/svc"
|
|
|
|
+ "wechat-api/internal/types"
|
|
|
|
+
|
|
|
|
+ "github.com/zeromicro/go-zero/core/logx"
|
|
|
|
+)
|
|
|
|
+
|
|
|
|
+type ClearTokenByIdLogic struct {
|
|
|
|
+ logx.Logger
|
|
|
|
+ ctx context.Context
|
|
|
|
+ svcCtx *svc.ServiceContext
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func NewClearTokenByIdLogic(ctx context.Context, svcCtx *svc.ServiceContext) *ClearTokenByIdLogic {
|
|
|
|
+ return &ClearTokenByIdLogic{
|
|
|
|
+ Logger: logx.WithContext(ctx),
|
|
|
|
+ ctx: ctx,
|
|
|
|
+ svcCtx: svcCtx}
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+func (l *ClearTokenByIdLogic) ClearTokenById(req *types.IDReq) (*types.BaseMsgResp, error) {
|
|
|
|
+ isAdmin := l.ctx.Value("isAdmin").(bool)
|
|
|
|
+
|
|
|
|
+ resp := types.BaseMsgResp{
|
|
|
|
+ Code: 0,
|
|
|
|
+ Msg: "操作成功",
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if isAdmin {
|
|
|
|
+ _, err := l.svcCtx.DB.Token.UpdateOneID(req.Id).SetMAC("").Save(l.ctx)
|
|
|
|
+ if err != nil {
|
|
|
|
+ return nil, dberrorhandler.DefaultEntError(l.Logger, err, req)
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ return nil, errorx.NewInvalidArgumentError("暂无权限")
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return &resp, nil
|
|
|
|
+}
|