来源:hgdjnet-server 9bfbafe10d417deea959bd53117bc88a10e60a83 项目身份 HKDJ / JHA-216,独立官网仓库,Jenkins 守卫键 hkdjnet 测试目录 /server/hkdj_net,App/Web API 30331/30332 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
75 lines
1.6 KiB
Go
75 lines
1.6 KiB
Go
package srv_mwacc
|
|
|
|
import (
|
|
"context"
|
|
"hkdj-web-server/pub/common/crypt"
|
|
"hkdj-web-server/pub/common/errors"
|
|
"hkdj-web-server/pub/models/mwacc"
|
|
"time"
|
|
|
|
"go.mongodb.org/mongo-driver/bson"
|
|
)
|
|
|
|
// // 删除角色
|
|
// func AccDel(ctx context.Context, roleId int64) (ok bool, err error){
|
|
//
|
|
// }
|
|
|
|
// 更改
|
|
func AccUp(ctx context.Context, upDoc *AccUpDoc) (ok bool, err error) {
|
|
|
|
c, err := mwacc.AccCountByFilter(ctx, bson.M{
|
|
mwacc.FN.MwAcc.Acc: upDoc.Acc,
|
|
mwacc.FN.MwAcc.Id: bson.M{
|
|
"$ne": upDoc.Id,
|
|
},
|
|
})
|
|
|
|
if c > 0 {
|
|
err = errors.MakeWithMsg(errors.DBInsert, "账户名已存在")
|
|
return false, err
|
|
}
|
|
|
|
set := bson.M{}
|
|
|
|
set = bson.M{
|
|
mwacc.FN.MwAcc.UserName: upDoc.UserName,
|
|
mwacc.FN.MwAcc.Acc: upDoc.Acc,
|
|
mwacc.FN.MwAcc.Email: upDoc.Email,
|
|
mwacc.FN.MwAcc.RoleId: upDoc.RoleId,
|
|
mwacc.FN.MwAcc.IsEnb: upDoc.IsEnb,
|
|
mwacc.FN.MwAcc.UpdatedAt: time.Now(),
|
|
mwacc.FN.MwAcc.LimitIP: upDoc.LimitIP,
|
|
}
|
|
|
|
err = mwacc.UpOneAccByFilter(ctx, bson.M{
|
|
mwacc.FN.MwAcc.Id: upDoc.Id,
|
|
}, set)
|
|
if err != nil {
|
|
err = errors.MakeWithErr(errors.DBUpdate, err)
|
|
return false, err
|
|
}
|
|
return true, err
|
|
}
|
|
|
|
// 更改账号密码
|
|
func AccUpPwd(ctx context.Context, upDoc *AccUpPwdDoc) (ok bool, err error) {
|
|
|
|
set := bson.M{}
|
|
|
|
set = bson.M{
|
|
mwacc.FN.MwAcc.Pwd: crypt.StrToMd5(upDoc.Pwd),
|
|
mwacc.FN.MwAcc.UpdatedAt: time.Now(),
|
|
}
|
|
|
|
err = mwacc.UpOneAccByFilter(ctx, bson.M{
|
|
mwacc.FN.MwAcc.Id: upDoc.Id,
|
|
}, set)
|
|
if err != nil {
|
|
err = errors.MakeWithErr(errors.DBUpdate, err)
|
|
return false, err
|
|
}
|
|
mwacc.DeleteOneToken(ctx, bson.M{mwacc.FN.MwAccToken.AccId: upDoc.Id})
|
|
return true, err
|
|
}
|