init: web_hgdjc_server
This commit is contained in:
@@ -0,0 +1,84 @@
|
||||
package mwacc
|
||||
|
||||
import (
|
||||
"context"
|
||||
"time"
|
||||
"videoweb/pub/common/errors"
|
||||
"videoweb/pub/common/log"
|
||||
"videoweb/pub/common/srvdef"
|
||||
"videoweb/pub/mongos"
|
||||
|
||||
"go.mongodb.org/mongo-driver/bson"
|
||||
"go.mongodb.org/mongo-driver/bson/primitive"
|
||||
)
|
||||
|
||||
// 过滤更新
|
||||
func UpOneTokenByFilter(ctx context.Context, query primitive.M, update primitive.M) (err error) {
|
||||
_, err = mwAccTokenColl.UpdateOne(ctx, query, primitive.M{"$set": update})
|
||||
return
|
||||
}
|
||||
|
||||
func SaveToken(ctx context.Context, accId int64, token string) (ok bool, err error) {
|
||||
var booToken MwAccToken
|
||||
|
||||
// 查找
|
||||
err = mwAccTokenColl.FindOne(ctx, &booToken, primitive.M{FN.MwAccToken.AccId: accId})
|
||||
|
||||
if booToken.AccId > 0 {
|
||||
// 更新
|
||||
err = UpOneTokenByFilter(ctx, primitive.M{
|
||||
FN.MwAccToken.AccId: accId,
|
||||
}, primitive.M{
|
||||
FN.MwAccToken.Token: token,
|
||||
FN.MwAccToken.UpdatedAt: time.Now(),
|
||||
})
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
return true, nil
|
||||
}
|
||||
|
||||
if err != nil || booToken.AccId == 0 {
|
||||
if _, err := mwAccTokenColl.InsertOne(ctx,
|
||||
primitive.M{
|
||||
FN.MwAccToken.Id: mongos.Lid.MwAccToken.Get(),
|
||||
FN.MwAccToken.AccId: accId,
|
||||
FN.MwAccToken.Token: token,
|
||||
FN.MwAccToken.CreatedAt: time.Now(),
|
||||
}); err != nil {
|
||||
return false, err
|
||||
}
|
||||
}
|
||||
|
||||
return true, nil
|
||||
}
|
||||
|
||||
func CheckToken(ctx context.Context, token string) (ok bool, err error) {
|
||||
var booToken MwAccToken
|
||||
Terr := mwAccTokenColl.FindOne(ctx, &booToken, primitive.M{FN.MwAccToken.Token: token})
|
||||
if Terr != nil || booToken.AccId == 0 {
|
||||
err = errors.MakeWithMsg(errors.NoToken, "token 不存在或已过期")
|
||||
return false, err
|
||||
}
|
||||
return true, nil
|
||||
}
|
||||
|
||||
// // 检测Token
|
||||
// func CheckToken(ctx context.Context, token string) (ok bool, err error) {
|
||||
// var booToken WebToken
|
||||
// Terr := tokenColl.FindOne(ctx, &booToken, primitive.M{"token": token})
|
||||
// if Terr != nil || booToken.Id == 0 {
|
||||
// err = errors.MakeWithMsg(errors.NoToken, "token 不存在或已过期")
|
||||
// return
|
||||
// }
|
||||
// return true, nil
|
||||
// }
|
||||
|
||||
// 删除token
|
||||
func DeleteOneToken(ctx context.Context, filter bson.M) *srvdef.SrvErr {
|
||||
if _, err := mwAccTokenColl.DeleteOne(ctx, filter); err != nil {
|
||||
log.Warn("mwacc:DeleteOneToken db.DeleteOne failed", log.E(err), log.Any("filter", filter))
|
||||
return srvdef.New(srvdef.ErrDbDeleteError, "", "")
|
||||
}
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user