go_dreamfactory/modules/user/api_modifyname.go
2023-11-15 11:14:33 +08:00

104 lines
2.6 KiB
Go

package user
import (
"go_dreamfactory/comm"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
"go_dreamfactory/sys/wordfilter"
"strings"
)
func (this *apiComp) ModifynameCheck(session comm.IUserSession, req *pb.UserModifynameReq) (errdata *pb.ErrorData) {
name := strings.TrimSpace(req.Name)
if name == "" || len(name) > 30 {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_ReqParameterError,
Title: pb.ErrorCode_ReqParameterError.ToString(),
}
return
}
if ok, _ := wordfilter.Validate(name); !ok {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_UserNickSensitive,
Title: pb.ErrorCode_UserNickSensitive.ToString(),
}
}
return
}
func (this *apiComp) Modifyname(session comm.IUserSession, req *pb.UserModifynameReq) (errdata *pb.ErrorData) {
var (
user *pb.DBUser
err error
)
if errdata = this.ModifynameCheck(session, req); errdata != nil {
return
}
uid := session.GetUserId()
resp := &pb.UserModifynameResp{Uid: uid, Name: req.Name}
name := strings.TrimSpace(req.Name)
//验证名称
if !this.module.modelUser.NickNameIsExist(name) {
resp.Code = pb.ErrorCode_UserNickNameExist
this.sendMsg(session, UserSubTypeModifyName, resp)
return
}
if user, err = this.module.GetUser(session.GetUserId()); err != nil {
errdata = &pb.ErrorData{
Code: pb.ErrorCode_UserSessionNobeing,
Title: pb.ErrorCode_UserSessionNobeing.ToString(),
Message: err.Error(),
}
return
}
// expand, err := this.module.modelExpand.GetUserExpand(uid)
// if err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// return
// }
//校验名称修改次数
// if expand.ModifynameCount <= 0 {
if user.Name != "" {
errdata = this.module.ConsumeRes(session, []*cfg.Gameatn{this.module.globalConf.ChangeName}, true)
if errdata != nil {
return
}
}
// }
// //修改名称次数
// left := expand.ModifynameCount - 1
// if left < 0 {
// left = 0
// }
// mc := map[string]interface{}{
// "modifynameCount": left,
// }
// if err := this.module.modelExpand.ChangeUserExpand(uid, mc); err != nil {
// errdata = &pb.ErrorData{
// Code: pb.ErrorCode_DBError,
// Title: pb.ErrorCode_DBError.ToString(),
// Message: err.Error(),
// }
// this.module.Errorf("更新昵称失败 uid:%v name:%v err:%v", uid, req.Name, err)
// return
// }
// 修改名称
if errdata = this.module.modelUser.modifyName(uid, name); errdata != nil {
return
}
//resp.Count = uint32(left)
this.sendMsg(session, UserSubTypeModifyName, resp)
return
}