package user import ( "go_dreamfactory/comm" "go_dreamfactory/pb" cfg "go_dreamfactory/sys/configure/structs" "strings" "google.golang.org/protobuf/proto" ) func (this *apiComp) ModifynameCheck(session comm.IUserSession, req *pb.UserModifynameReq) (code pb.ErrorCode) { if strings.TrimSpace(req.Name) == "" || len(strings.TrimSpace(req.Name)) > 6 { code = pb.ErrorCode_ReqParameterError } return } func (this *apiComp) Modifyname(session comm.IUserSession, req *pb.UserModifynameReq) (code pb.ErrorCode, data proto.Message) { if code = this.ModifynameCheck(session, req); code != pb.ErrorCode_Success { return } name := strings.TrimSpace(req.Name) //验证名称 if !this.module.modelUser.NickNameIsExist(name) { code = pb.ErrorCode_UserNickNameExist return } expand, err := this.module.modelExpand.GetUserExpand(session.GetUserId()) if err != nil { code = pb.ErrorCode_DBError return } //校验名称修改次数 if expand.ModifynameCount <= 0 { //TODO 从全局配置从读取消耗道具 if code = this.module.ConsumeRes(session, []*cfg.Game_atn{ { A: "attr", T: "gold", N: 5000, }, }, true); code != pb.ErrorCode_Success { return } } //修改名称次数 mc := map[string]interface{}{ "modifynameCount": expand.ModifynameCount - 1, } if err := this.module.modelExpand.ChanageUserExpand(session.GetUserId(), mc); err != nil { code = pb.ErrorCode_DBError return } // 修改名称 if code = this.module.modelUser.modifyName(session.GetUserId(), name); code != pb.ErrorCode_Success { return } return }