From 9a46c0fdf46b5d40a80d74bdc227675d1f60f5e7 Mon Sep 17 00:00:00 2001 From: zhengshilong <1725838433@qq.com> Date: Fri, 11 Jul 2025 18:03:48 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- acquaintances/biz/dal/mysql/init.go | 2 +- acquaintances/biz/dal/mysql/user.go | 54 +- acquaintances/biz/dal/mysql/user_relations.go | 25 + .../handler/user/user_relations_service.go | 71 + .../biz/handler/user/user_service.go | 39 +- acquaintances/biz/model/user/user.go | 2922 +++++++++++++++-- acquaintances/biz/model/user_relations.go | 21 + acquaintances/biz/router/user/middleware.go | 55 + acquaintances/biz/router/user/user.go | 22 +- acquaintances/idl/user.thrift | 93 +- acquaintances/main.go.bak | 137 + 11 files changed, 3106 insertions(+), 335 deletions(-) create mode 100644 acquaintances/biz/dal/mysql/user_relations.go create mode 100644 acquaintances/biz/handler/user/user_relations_service.go create mode 100644 acquaintances/biz/model/user_relations.go create mode 100644 acquaintances/main.go.bak diff --git a/acquaintances/biz/dal/mysql/init.go b/acquaintances/biz/dal/mysql/init.go index aef82e0..efd4782 100644 --- a/acquaintances/biz/dal/mysql/init.go +++ b/acquaintances/biz/dal/mysql/init.go @@ -33,7 +33,7 @@ func Init() { panic(err) } // 自动迁移 - err = DB.AutoMigrate(model.User{}, model.Country{}) + err = DB.AutoMigrate(model.User{}, model.Country{}, model.UserRelations{}) if err != nil { hlog.Error("AutoMigrate failed: " + err.Error()) return diff --git a/acquaintances/biz/dal/mysql/user.go b/acquaintances/biz/dal/mysql/user.go index 3dddd6c..dc35b71 100644 --- a/acquaintances/biz/dal/mysql/user.go +++ b/acquaintances/biz/dal/mysql/user.go @@ -3,6 +3,7 @@ package mysql import ( "acquaintances/biz/model" "acquaintances/biz/model/user" + "github.com/cloudwego/hertz/pkg/common/hlog" ) func CreateUser(users []*model.User) error { @@ -10,25 +11,52 @@ func CreateUser(users []*model.User) error { } func DeleteUser(userId int64) error { - return DB.Where("id = ?", userId).Delete(&user.User{}).Error + return DB.Model(&model.User{}).Where("user_id = ?", userId).Delete(&model.User{}).Error } func UpdateUser(user *user.User) error { return DB.Updates(user).Error } - -func QueryUser(keyword *string, page, pageSize int64) ([]*user.User, int64, error) { - db := DB.Model(user.User{}) - if keyword != nil && len(*keyword) != 0 { - db = db.Where(DB.Or("name like ?", "%"+*keyword+"%")) +func UpdatesUser(user *user.UpdateUserRequest) error { + db := DB.Model(&model.User{}) + maps := make(map[string]interface{}) + if user.Name != "" { + maps["user_name"] = user.Name } - var total int64 - if err := db.Count(&total).Error; err != nil { - return nil, 0, err + if user.Birthday != "" { + maps["birthday"] = user.Birthday } - var res []*user.User - if err := db.Limit(int(pageSize)).Offset(int(pageSize * (page - 1))).Find(&res).Error; err != nil { - return nil, 0, err + if user.Address != "" { + maps["address"] = user.Address } - return res, total, nil + if user.Area != "" { + maps["area"] = user.Area + } + if user.Mobile != "" { + maps["mobile"] = user.Mobile + } + if user.Age != 0 { + maps["age"] = user.Age + } + if user.AvatarImageURL != "" { + maps["avatar_image_url"] = user.AvatarImageURL + } + if user.Introduce != "" { + maps["introduce"] = user.Introduce + } + if user.Gender != 0 { + maps["gender"] = user.Gender + } + hlog.Info(maps) + return db.Where("user_id = ?", user.UserID).Updates(maps).Error +} + +func InfoUser(id int64) (*user.UserInfoReq, error) { + db := DB.Model(&model.User{}) + db.Where("user_id = ?", id) + var res *user.UserInfoReq + if err := db.Find(&res).Error; err != nil { + return nil, err + } + return res, nil } diff --git a/acquaintances/biz/dal/mysql/user_relations.go b/acquaintances/biz/dal/mysql/user_relations.go new file mode 100644 index 0000000..22de090 --- /dev/null +++ b/acquaintances/biz/dal/mysql/user_relations.go @@ -0,0 +1,25 @@ +package mysql + +import ( + "acquaintances/biz/model" + "acquaintances/biz/model/user" +) + +func CreateUserRelations(relations user.CreateUserRelationsReq) error { + db := DB.Model(&model.UserRelations{}) + return db.Create(relations).Error +} + +func DeleteUserRelations(relations user.DeleteUserRelationsReq) error { + db := DB.Model(&model.UserRelations{}) + return db.Delete(&model.UserRelations{UserID: relations.UserID, FriendID: relations.FriendID}).Error +} + +func GetUserListRelations(relations user.ListUserRelationsReq) (*user.ListUserRelationsResponse, error) { + db := DB.Model(&model.UserRelations{}) + var res *user.ListUserRelationsResponse + if err := db.Where("user_id = ? or friend_id= ?", relations.UserID).Find(&res).Error; err != nil { + return nil, err + } + return res, nil +} diff --git a/acquaintances/biz/handler/user/user_relations_service.go b/acquaintances/biz/handler/user/user_relations_service.go new file mode 100644 index 0000000..18de6c8 --- /dev/null +++ b/acquaintances/biz/handler/user/user_relations_service.go @@ -0,0 +1,71 @@ +// Code generated by hertz generator. + +package user + +import ( + "acquaintances/biz/dal/mysql" + "context" + + user "acquaintances/biz/model/user" + "github.com/cloudwego/hertz/pkg/app" + "github.com/cloudwego/hertz/pkg/protocol/consts" +) + +// DeleteUserRelations . +// @router /v1/user/relation/ [DELETE] +func DeleteUserRelations(ctx context.Context, c *app.RequestContext) { + var err error + var req user.DeleteUserRelationsReq + err = c.BindAndValidate(&req) + if err != nil { + c.JSON(consts.StatusBadRequest, err.Error()) + return + } + if err = mysql.DeleteUserRelations(req); err != nil { + c.JSON(consts.StatusInternalServerError, err.Error()) + return + } + resp := new(user.DeleteUserRelationsReq) + + c.JSON(consts.StatusOK, resp) +} + +// CreateUserRelations . +// @router /v1/user/relation/ [POST] +func CreateUserRelations(ctx context.Context, c *app.RequestContext) { + var err error + var req user.CreateUserRelationsReq + err = c.BindAndValidate(&req) + if err != nil { + c.JSON(consts.StatusBadRequest, err.Error()) + return + } + if err = mysql.CreateUserRelations(req); err != nil { + c.JSON(consts.StatusInternalServerError, err.Error()) + return + } + resp := new(user.CreateUserRelationsReq) + + c.JSON(consts.StatusOK, resp) +} + +// ListUserRelations . +// @router /v1/user/relation/ [GET] +func ListUserRelations(ctx context.Context, c *app.RequestContext) { + var err error + var req user.ListUserRelationsReq + err = c.BindAndValidate(&req) + if err != nil { + c.JSON(consts.StatusBadRequest, err.Error()) + return + } + + resp := new(user.ListUserRelationsResponse) + resp, err = mysql.GetUserListRelations(req) + if err != nil { + c.JSON(consts.StatusInternalServerError, err.Error()) + return + } + + c.JSON(consts.StatusOK, resp) +} diff --git a/acquaintances/biz/handler/user/user_service.go b/acquaintances/biz/handler/user/user_service.go index e3f93b5..26fe489 100644 --- a/acquaintances/biz/handler/user/user_service.go +++ b/acquaintances/biz/handler/user/user_service.go @@ -9,54 +9,67 @@ import ( "acquaintances/biz/utils" "context" "github.com/cloudwego/hertz/pkg/app" + "github.com/cloudwego/hertz/pkg/common/hlog" "github.com/cloudwego/hertz/pkg/protocol/consts" "strconv" ) // UpdateUser . -// @router /v1/user/update/:user_id [POST] +// @router /v1/user/update/ [PUT] func UpdateUser(ctx context.Context, c *app.RequestContext) { var err error var req user.UpdateUserRequest err = c.BindAndValidate(&req) if err != nil { - c.String(consts.StatusBadRequest, err.Error()) + c.JSON(consts.StatusBadRequest, err.Error()) + return + } + if err = mysql.UpdatesUser(&req); err != nil { + hlog.Error(err.Error()) + c.JSON(consts.StatusInternalServerError, &user.CreateUserResponse{Code: user.Code_DBErr, Msg: err.Error()}) return } - resp := new(user.UpdateUserResponse) c.JSON(consts.StatusOK, resp) } // DeleteUser . -// @router /v1/user/delete/:user_id [POST] +// @router /v1/user/delete/ [delete] func DeleteUser(ctx context.Context, c *app.RequestContext) { var err error var req user.DeleteUserRequest err = c.BindAndValidate(&req) if err != nil { - c.String(consts.StatusBadRequest, err.Error()) + c.JSON(consts.StatusBadRequest, err.Error()) + return + } + if err = mysql.DeleteUser(req.UserID); err != nil { + c.JSON(consts.StatusInternalServerError, err.Error()) return } - resp := new(user.DeleteUserResponse) c.JSON(consts.StatusOK, resp) } // QueryUser . -// @router /v1/user/query/ [POST] -func QueryUser(ctx context.Context, c *app.RequestContext) { +// @router /v1/user/info/ [GET] +func InfoUser(ctx context.Context, c *app.RequestContext) { var err error - var req user.QueryUserRequest + var req user.InfoUserRequest err = c.BindAndValidate(&req) if err != nil { - c.String(consts.StatusBadRequest, err.Error()) + c.JSON(consts.StatusBadRequest, err.Error()) + return + } + data, err := mysql.InfoUser(req.UserID) + if err != nil { + c.JSON(consts.StatusInternalServerError, err.Error()) return } - resp := new(user.QueryUserResponse) + resp.UserInfo = data c.JSON(consts.StatusOK, resp) } @@ -68,12 +81,12 @@ func CreateUser(ctx context.Context, c *app.RequestContext) { var req user.CreateUserRequest err = c.BindAndValidate(&req) if err != nil { - c.String(consts.StatusBadRequest, err.Error()) + c.JSON(consts.StatusBadRequest, err.Error()) return } userId, err := utils.GetID() if err != nil { - c.String(consts.StatusInternalServerError, err.Error()) + c.JSON(consts.StatusInternalServerError, err.Error()) return } if err = mysql.CreateUser([]*model.User{ diff --git a/acquaintances/biz/model/user/user.go b/acquaintances/biz/model/user/user.go index 290824d..c185b9f 100644 --- a/acquaintances/biz/model/user/user.go +++ b/acquaintances/biz/model/user/user.go @@ -62,6 +62,9 @@ func (p *Code) Value() (driver.Value, error) { return int64(*p), nil } +/** + 用户基本信息 +**/ type Gender int64 const ( @@ -114,7 +117,6 @@ type UserStatus int64 const ( UserStatus_Disable UserStatus = 0 UserStatus_Normal UserStatus = 1 - UserStatus_LogOff UserStatus = 2 ) func (p UserStatus) String() string { @@ -1629,9 +1631,9 @@ func (p *UserInfoReq) String() string { } type CreateUserRequest struct { - Name string `thrift:"name,1" form:"name" json:"name" vd:"(len($) > 0 && len($) < 100)"` - Gender Gender `thrift:"gender,2" form:"gender" form:"gender" json:"gender" vd:"($ == 0 || $ == 1||$ == 2)"` - Age int64 `thrift:"age,3" form:"age" json:"age" vd:"$>0"` + Name string `thrift:"name,1" form:"name" json:"name" vd:"(len($) > 0 && len($) < 100)"` + Gender Gender `thrift:"gender,2" form:"gender" json:"gender" vd:"($ == 1||$ == 2)"` + Age int64 `thrift:"age,3" form:"age" json:"age" vd:"$>0"` Mobile string `thrift:"mobile,4" form:"mobile" json:"mobile" vd:"(len($) > 0 && len($) < 12)"` Area string `thrift:"area,5" form:"area" json:"area" vd:"(len($) > 0 && len($) < 5)"` UserPassword string `thrift:"user_password,6" form:"user_password" json:"user_password" vd:"(len($) > 0 && len($) < 15)"` @@ -2176,47 +2178,26 @@ func (p *CreateUserResponse) String() string { } -type QueryUserRequest struct { - Keyword *string `thrift:"Keyword,1,optional" form:"keyword" form:"keyword" json:"keyword,omitempty" query:"keyword"` - Page int64 `thrift:"page,2" form:"page" json:"page" query:"page" vd:"$ > 0"` - PageSize int64 `thrift:"page_size,3" form:"page_size" json:"page_size" query:"page_size" vd:"($ > 0 || $ <= 100)"` +type InfoUserRequest struct { + UserID int64 `thrift:"user_id,1" json:"user_id" path:"user_id" vd:"$>0"` } -func NewQueryUserRequest() *QueryUserRequest { - return &QueryUserRequest{} +func NewInfoUserRequest() *InfoUserRequest { + return &InfoUserRequest{} } -func (p *QueryUserRequest) InitDefault() { +func (p *InfoUserRequest) InitDefault() { } -var QueryUserRequest_Keyword_DEFAULT string - -func (p *QueryUserRequest) GetKeyword() (v string) { - if !p.IsSetKeyword() { - return QueryUserRequest_Keyword_DEFAULT - } - return *p.Keyword +func (p *InfoUserRequest) GetUserID() (v int64) { + return p.UserID } -func (p *QueryUserRequest) GetPage() (v int64) { - return p.Page +var fieldIDToName_InfoUserRequest = map[int16]string{ + 1: "user_id", } -func (p *QueryUserRequest) GetPageSize() (v int64) { - return p.PageSize -} - -var fieldIDToName_QueryUserRequest = map[int16]string{ - 1: "Keyword", - 2: "page", - 3: "page_size", -} - -func (p *QueryUserRequest) IsSetKeyword() bool { - return p.Keyword != nil -} - -func (p *QueryUserRequest) Read(iprot thrift.TProtocol) (err error) { +func (p *InfoUserRequest) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -2235,29 +2216,13 @@ func (p *QueryUserRequest) Read(iprot thrift.TProtocol) (err error) { switch fieldId { case 1: - if fieldTypeId == thrift.STRING { + if fieldTypeId == thrift.I64 { if err = p.ReadField1(iprot); err != nil { goto ReadFieldError } } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } - case 2: - if fieldTypeId == thrift.I64 { - if err = p.ReadField2(iprot); err != nil { - goto ReadFieldError - } - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } - case 3: - if fieldTypeId == thrift.I64 { - if err = p.ReadField3(iprot); err != nil { - goto ReadFieldError - } - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } default: if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError @@ -2277,7 +2242,7 @@ ReadStructBeginError: ReadFieldBeginError: return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) ReadFieldError: - return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_QueryUserRequest[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_InfoUserRequest[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -2287,18 +2252,7 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *QueryUserRequest) ReadField1(iprot thrift.TProtocol) error { - - var _field *string - if v, err := iprot.ReadString(); err != nil { - return err - } else { - _field = &v - } - p.Keyword = _field - return nil -} -func (p *QueryUserRequest) ReadField2(iprot thrift.TProtocol) error { +func (p *InfoUserRequest) ReadField1(iprot thrift.TProtocol) error { var _field int64 if v, err := iprot.ReadI64(); err != nil { @@ -2306,24 +2260,13 @@ func (p *QueryUserRequest) ReadField2(iprot thrift.TProtocol) error { } else { _field = v } - p.Page = _field - return nil -} -func (p *QueryUserRequest) ReadField3(iprot thrift.TProtocol) error { - - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.PageSize = _field + p.UserID = _field return nil } -func (p *QueryUserRequest) Write(oprot thrift.TProtocol) (err error) { +func (p *InfoUserRequest) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("QueryUserRequest"); err != nil { + if err = oprot.WriteStructBegin("InfoUserRequest"); err != nil { goto WriteStructBeginError } if p != nil { @@ -2331,14 +2274,6 @@ func (p *QueryUserRequest) Write(oprot thrift.TProtocol) (err error) { fieldId = 1 goto WriteFieldError } - if err = p.writeField2(oprot); err != nil { - fieldId = 2 - goto WriteFieldError - } - if err = p.writeField3(oprot); err != nil { - fieldId = 3 - goto WriteFieldError - } } if err = oprot.WriteFieldStop(); err != nil { goto WriteFieldStopError @@ -2357,17 +2292,15 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *QueryUserRequest) writeField1(oprot thrift.TProtocol) (err error) { - if p.IsSetKeyword() { - if err = oprot.WriteFieldBegin("Keyword", thrift.STRING, 1); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteString(*p.Keyword); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } +func (p *InfoUserRequest) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("user_id", thrift.I64, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.UserID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError } return nil WriteFieldBeginError: @@ -2375,52 +2308,19 @@ WriteFieldBeginError: WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *QueryUserRequest) writeField2(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("page", thrift.I64, 2); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.Page); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) -} -func (p *QueryUserRequest) writeField3(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("page_size", thrift.I64, 3); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.PageSize); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) -} -func (p *QueryUserRequest) String() string { +func (p *InfoUserRequest) String() string { if p == nil { return "" } - return fmt.Sprintf("QueryUserRequest(%+v)", *p) + return fmt.Sprintf("InfoUserRequest(%+v)", *p) } type QueryUserResponse struct { - Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` - Msg string `thrift:"msg,2" form:"msg" json:"msg" query:"msg"` - Users []*UserInfoReq `thrift:"users,3" form:"users" json:"users" query:"users"` - Total int64 `thrift:"total,4" form:"total" json:"total" query:"total"` + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + Msg string `thrift:"msg,2" form:"msg" json:"msg" query:"msg"` + UserInfo *UserInfoReq `thrift:"userInfo,3" form:"userInfo" json:"userInfo" query:"userInfo"` } func NewQueryUserResponse() *QueryUserResponse { @@ -2438,19 +2338,23 @@ func (p *QueryUserResponse) GetMsg() (v string) { return p.Msg } -func (p *QueryUserResponse) GetUsers() (v []*UserInfoReq) { - return p.Users -} +var QueryUserResponse_UserInfo_DEFAULT *UserInfoReq -func (p *QueryUserResponse) GetTotal() (v int64) { - return p.Total +func (p *QueryUserResponse) GetUserInfo() (v *UserInfoReq) { + if !p.IsSetUserInfo() { + return QueryUserResponse_UserInfo_DEFAULT + } + return p.UserInfo } var fieldIDToName_QueryUserResponse = map[int16]string{ 1: "code", 2: "msg", - 3: "users", - 4: "total", + 3: "userInfo", +} + +func (p *QueryUserResponse) IsSetUserInfo() bool { + return p.UserInfo != nil } func (p *QueryUserResponse) Read(iprot thrift.TProtocol) (err error) { @@ -2488,21 +2392,13 @@ func (p *QueryUserResponse) Read(iprot thrift.TProtocol) (err error) { goto SkipFieldError } case 3: - if fieldTypeId == thrift.LIST { + if fieldTypeId == thrift.STRUCT { if err = p.ReadField3(iprot); err != nil { goto ReadFieldError } } else if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError } - case 4: - if fieldTypeId == thrift.I64 { - if err = p.ReadField4(iprot); err != nil { - goto ReadFieldError - } - } else if err = iprot.Skip(fieldTypeId); err != nil { - goto SkipFieldError - } default: if err = iprot.Skip(fieldTypeId); err != nil { goto SkipFieldError @@ -2555,37 +2451,11 @@ func (p *QueryUserResponse) ReadField2(iprot thrift.TProtocol) error { return nil } func (p *QueryUserResponse) ReadField3(iprot thrift.TProtocol) error { - _, size, err := iprot.ReadListBegin() - if err != nil { + _field := NewUserInfoReq() + if err := _field.Read(iprot); err != nil { return err } - _field := make([]*UserInfoReq, 0, size) - values := make([]UserInfoReq, size) - for i := 0; i < size; i++ { - _elem := &values[i] - _elem.InitDefault() - - if err := _elem.Read(iprot); err != nil { - return err - } - - _field = append(_field, _elem) - } - if err := iprot.ReadListEnd(); err != nil { - return err - } - p.Users = _field - return nil -} -func (p *QueryUserResponse) ReadField4(iprot thrift.TProtocol) error { - - var _field int64 - if v, err := iprot.ReadI64(); err != nil { - return err - } else { - _field = v - } - p.Total = _field + p.UserInfo = _field return nil } @@ -2607,10 +2477,6 @@ func (p *QueryUserResponse) Write(oprot thrift.TProtocol) (err error) { fieldId = 3 goto WriteFieldError } - if err = p.writeField4(oprot); err != nil { - fieldId = 4 - goto WriteFieldError - } } if err = oprot.WriteFieldStop(); err != nil { goto WriteFieldStopError @@ -2662,18 +2528,10 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) } func (p *QueryUserResponse) writeField3(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("users", thrift.LIST, 3); err != nil { + if err = oprot.WriteFieldBegin("userInfo", thrift.STRUCT, 3); err != nil { goto WriteFieldBeginError } - if err := oprot.WriteListBegin(thrift.STRUCT, len(p.Users)); err != nil { - return err - } - for _, v := range p.Users { - if err := v.Write(oprot); err != nil { - return err - } - } - if err := oprot.WriteListEnd(); err != nil { + if err := p.UserInfo.Write(oprot); err != nil { return err } if err = oprot.WriteFieldEnd(); err != nil { @@ -2685,22 +2543,6 @@ WriteFieldBeginError: WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) } -func (p *QueryUserResponse) writeField4(oprot thrift.TProtocol) (err error) { - if err = oprot.WriteFieldBegin("total", thrift.I64, 4); err != nil { - goto WriteFieldBeginError - } - if err := oprot.WriteI64(p.Total); err != nil { - return err - } - if err = oprot.WriteFieldEnd(); err != nil { - goto WriteFieldEndError - } - return nil -WriteFieldBeginError: - return thrift.PrependError(fmt.Sprintf("%T write field 4 begin error: ", p), err) -WriteFieldEndError: - return thrift.PrependError(fmt.Sprintf("%T write field 4 end error: ", p), err) -} func (p *QueryUserResponse) String() string { if p == nil { @@ -3034,17 +2876,17 @@ func (p *DeleteUserResponse) String() string { } type UpdateUserRequest struct { - UserID int64 `thrift:"user_id,1" json:"user_id" path:"user_id" vd:"$>0"` - Name string `thrift:"name,2" form:"name" form:"name" json:"name" vd:"(len($) > 0 && len($) < 100)"` - Gender Gender `thrift:"gender,3" form:"gender" json:"gender" vd:"($ == 1||$ == 2)"` - Age int64 `thrift:"age,4" form:"age" json:"age" vd:"$>0"` - Introduce string `thrift:"introduce,5" form:"introduce" json:"introduce" vd:"(len($) > 0 && len($) < 1000)"` - AvatarImageURL string `thrift:"avatar_image_url,6" form:"avatar_image_url" json:"avatar_image_url" vd:"(len($) > 0 && len($) < 1000)"` - Birthday string `thrift:"birthday,7" form:"birthday" form:"birthday" json:"birthday" vd:"len($) > 0"` - UserPassword string `thrift:"user_password,8" form:"user_password" form:"user_password" json:"user_password" vd:"(len($) > 0 && len($) < 15)"` - Area string `thrift:"area,9" form:"area" form:"area" json:"area" vd:"(len($) > 0 && len($) < 5)"` - Mobile string `thrift:"mobile,10" form:"mobile" json:"mobile" vd:"(len($) > 0 && len($) < 12)"` - Address string `thrift:"address,11" form:"address" form:"address" json:"address" vd:"(len($) > 0 && len($) < 200)"` + UserID int64 `thrift:"user_id,1" json:"user_id" path:"user_id"` + Name string `thrift:"name,2" form:"name" json:"name"` + Gender Gender `thrift:"gender,3" form:"gender" json:"gender"` + Age int64 `thrift:"age,4" form:"age" json:"age"` + Introduce string `thrift:"introduce,5" form:"introduce" json:"introduce"` + AvatarImageURL string `thrift:"avatar_image_url,6" form:"avatar_image_url" json:"avatar_image_url"` + Birthday string `thrift:"birthday,7" form:"birthday" json:"birthday"` + UserPassword string `thrift:"user_password,8" form:"user_password" json:"user_password"` + Area string `thrift:"area,9" form:"area" json:"area"` + Mobile string `thrift:"mobile,10" form:"mobile" json:"mobile"` + Address string `thrift:"address,11" form:"address" json:"address"` } func NewUpdateUserRequest() *UpdateUserRequest { @@ -3806,12 +3648,1421 @@ func (p *UpdateUserResponse) String() string { } +/** + 用户好友关系 +**/ +type UserRelations struct { + //id + UserID string `thrift:"user_id,1" form:"user_id" json:"user_id" query:"user_id"` + //好友id + FriendID string `thrift:"friend_id,2" form:"friend_id" json:"friend_id" query:"friend_id"` + //关系状态 + Status string `thrift:"status,3" form:"status" json:"status" query:"status"` +} + +func NewUserRelations() *UserRelations { + return &UserRelations{} +} + +func (p *UserRelations) InitDefault() { +} + +func (p *UserRelations) GetUserID() (v string) { + return p.UserID +} + +func (p *UserRelations) GetFriendID() (v string) { + return p.FriendID +} + +func (p *UserRelations) GetStatus() (v string) { + return p.Status +} + +var fieldIDToName_UserRelations = map[int16]string{ + 1: "user_id", + 2: "friend_id", + 3: "status", +} + +func (p *UserRelations) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRING { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.STRING { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserRelations[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *UserRelations) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.UserID = _field + return nil +} +func (p *UserRelations) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.FriendID = _field + return nil +} +func (p *UserRelations) ReadField3(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Status = _field + return nil +} + +func (p *UserRelations) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("UserRelations"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *UserRelations) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("user_id", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.UserID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *UserRelations) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("friend_id", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.FriendID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} +func (p *UserRelations) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("status", thrift.STRING, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Status); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) +} + +func (p *UserRelations) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserRelations(%+v)", *p) + +} + +type CreateUserRelationsReq struct { + //id + UserID string `thrift:"user_id,1" form:"user_id" json:"user_id" query:"user_id"` + //好友id + FriendID string `thrift:"friend_id,2" form:"friend_id" json:"friend_id" query:"friend_id"` +} + +func NewCreateUserRelationsReq() *CreateUserRelationsReq { + return &CreateUserRelationsReq{} +} + +func (p *CreateUserRelationsReq) InitDefault() { +} + +func (p *CreateUserRelationsReq) GetUserID() (v string) { + return p.UserID +} + +func (p *CreateUserRelationsReq) GetFriendID() (v string) { + return p.FriendID +} + +var fieldIDToName_CreateUserRelationsReq = map[int16]string{ + 1: "user_id", + 2: "friend_id", +} + +func (p *CreateUserRelationsReq) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRING { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_CreateUserRelationsReq[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *CreateUserRelationsReq) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.UserID = _field + return nil +} +func (p *CreateUserRelationsReq) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.FriendID = _field + return nil +} + +func (p *CreateUserRelationsReq) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateUserRelationsReq"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *CreateUserRelationsReq) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("user_id", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.UserID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *CreateUserRelationsReq) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("friend_id", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.FriendID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *CreateUserRelationsReq) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("CreateUserRelationsReq(%+v)", *p) + +} + +type CreateUserRelationsResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + Msg string `thrift:"msg,2" form:"msg" json:"msg" query:"msg"` +} + +func NewCreateUserRelationsResponse() *CreateUserRelationsResponse { + return &CreateUserRelationsResponse{} +} + +func (p *CreateUserRelationsResponse) InitDefault() { +} + +func (p *CreateUserRelationsResponse) GetCode() (v Code) { + return p.Code +} + +func (p *CreateUserRelationsResponse) GetMsg() (v string) { + return p.Msg +} + +var fieldIDToName_CreateUserRelationsResponse = map[int16]string{ + 1: "code", + 2: "msg", +} + +func (p *CreateUserRelationsResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_CreateUserRelationsResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *CreateUserRelationsResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *CreateUserRelationsResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Msg = _field + return nil +} + +func (p *CreateUserRelationsResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateUserRelationsResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *CreateUserRelationsResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *CreateUserRelationsResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("msg", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Msg); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *CreateUserRelationsResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("CreateUserRelationsResponse(%+v)", *p) + +} + +type DeleteUserRelationsReq struct { + //id + UserID string `thrift:"user_id,1" form:"user_id" json:"user_id" query:"user_id"` + //好友id + FriendID string `thrift:"friend_id,2" form:"friend_id" json:"friend_id" query:"friend_id"` +} + +func NewDeleteUserRelationsReq() *DeleteUserRelationsReq { + return &DeleteUserRelationsReq{} +} + +func (p *DeleteUserRelationsReq) InitDefault() { +} + +func (p *DeleteUserRelationsReq) GetUserID() (v string) { + return p.UserID +} + +func (p *DeleteUserRelationsReq) GetFriendID() (v string) { + return p.FriendID +} + +var fieldIDToName_DeleteUserRelationsReq = map[int16]string{ + 1: "user_id", + 2: "friend_id", +} + +func (p *DeleteUserRelationsReq) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRING { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_DeleteUserRelationsReq[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *DeleteUserRelationsReq) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.UserID = _field + return nil +} +func (p *DeleteUserRelationsReq) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.FriendID = _field + return nil +} + +func (p *DeleteUserRelationsReq) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteUserRelationsReq"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *DeleteUserRelationsReq) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("user_id", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.UserID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *DeleteUserRelationsReq) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("friend_id", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.FriendID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *DeleteUserRelationsReq) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("DeleteUserRelationsReq(%+v)", *p) + +} + +type DeleteUserRelationsResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + Msg string `thrift:"msg,2" form:"msg" json:"msg" query:"msg"` +} + +func NewDeleteUserRelationsResponse() *DeleteUserRelationsResponse { + return &DeleteUserRelationsResponse{} +} + +func (p *DeleteUserRelationsResponse) InitDefault() { +} + +func (p *DeleteUserRelationsResponse) GetCode() (v Code) { + return p.Code +} + +func (p *DeleteUserRelationsResponse) GetMsg() (v string) { + return p.Msg +} + +var fieldIDToName_DeleteUserRelationsResponse = map[int16]string{ + 1: "code", + 2: "msg", +} + +func (p *DeleteUserRelationsResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_DeleteUserRelationsResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *DeleteUserRelationsResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *DeleteUserRelationsResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Msg = _field + return nil +} + +func (p *DeleteUserRelationsResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteUserRelationsResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *DeleteUserRelationsResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *DeleteUserRelationsResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("msg", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Msg); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} + +func (p *DeleteUserRelationsResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("DeleteUserRelationsResponse(%+v)", *p) + +} + +type ListUserRelationsReq struct { + //id + UserID string `thrift:"user_id,1" form:"user_id" json:"user_id" query:"user_id"` +} + +func NewListUserRelationsReq() *ListUserRelationsReq { + return &ListUserRelationsReq{} +} + +func (p *ListUserRelationsReq) InitDefault() { +} + +func (p *ListUserRelationsReq) GetUserID() (v string) { + return p.UserID +} + +var fieldIDToName_ListUserRelationsReq = map[int16]string{ + 1: "user_id", +} + +func (p *ListUserRelationsReq) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRING { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ListUserRelationsReq[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ListUserRelationsReq) ReadField1(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.UserID = _field + return nil +} + +func (p *ListUserRelationsReq) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListUserRelationsReq"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *ListUserRelationsReq) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("user_id", thrift.STRING, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.UserID); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *ListUserRelationsReq) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ListUserRelationsReq(%+v)", *p) + +} + +type ListUserRelationsResponse struct { + Code Code `thrift:"code,1" form:"code" json:"code" query:"code"` + Msg string `thrift:"msg,2" form:"msg" json:"msg" query:"msg"` + Users []*UserInfoReq `thrift:"users,3" form:"users" json:"users" query:"users"` + Total int64 `thrift:"total,4" form:"total" json:"total" query:"total"` +} + +func NewListUserRelationsResponse() *ListUserRelationsResponse { + return &ListUserRelationsResponse{} +} + +func (p *ListUserRelationsResponse) InitDefault() { +} + +func (p *ListUserRelationsResponse) GetCode() (v Code) { + return p.Code +} + +func (p *ListUserRelationsResponse) GetMsg() (v string) { + return p.Msg +} + +func (p *ListUserRelationsResponse) GetUsers() (v []*UserInfoReq) { + return p.Users +} + +func (p *ListUserRelationsResponse) GetTotal() (v int64) { + return p.Total +} + +var fieldIDToName_ListUserRelationsResponse = map[int16]string{ + 1: "code", + 2: "msg", + 3: "users", + 4: "total", +} + +func (p *ListUserRelationsResponse) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.I32 { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 2: + if fieldTypeId == thrift.STRING { + if err = p.ReadField2(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 3: + if fieldTypeId == thrift.LIST { + if err = p.ReadField3(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + case 4: + if fieldTypeId == thrift.I64 { + if err = p.ReadField4(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_ListUserRelationsResponse[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *ListUserRelationsResponse) ReadField1(iprot thrift.TProtocol) error { + + var _field Code + if v, err := iprot.ReadI32(); err != nil { + return err + } else { + _field = Code(v) + } + p.Code = _field + return nil +} +func (p *ListUserRelationsResponse) ReadField2(iprot thrift.TProtocol) error { + + var _field string + if v, err := iprot.ReadString(); err != nil { + return err + } else { + _field = v + } + p.Msg = _field + return nil +} +func (p *ListUserRelationsResponse) ReadField3(iprot thrift.TProtocol) error { + _, size, err := iprot.ReadListBegin() + if err != nil { + return err + } + _field := make([]*UserInfoReq, 0, size) + values := make([]UserInfoReq, size) + for i := 0; i < size; i++ { + _elem := &values[i] + _elem.InitDefault() + + if err := _elem.Read(iprot); err != nil { + return err + } + + _field = append(_field, _elem) + } + if err := iprot.ReadListEnd(); err != nil { + return err + } + p.Users = _field + return nil +} +func (p *ListUserRelationsResponse) ReadField4(iprot thrift.TProtocol) error { + + var _field int64 + if v, err := iprot.ReadI64(); err != nil { + return err + } else { + _field = v + } + p.Total = _field + return nil +} + +func (p *ListUserRelationsResponse) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListUserRelationsResponse"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + if err = p.writeField2(oprot); err != nil { + fieldId = 2 + goto WriteFieldError + } + if err = p.writeField3(oprot); err != nil { + fieldId = 3 + goto WriteFieldError + } + if err = p.writeField4(oprot); err != nil { + fieldId = 4 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *ListUserRelationsResponse) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("code", thrift.I32, 1); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI32(int32(p.Code)); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} +func (p *ListUserRelationsResponse) writeField2(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("msg", thrift.STRING, 2); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteString(p.Msg); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 2 end error: ", p), err) +} +func (p *ListUserRelationsResponse) writeField3(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("users", thrift.LIST, 3); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteListBegin(thrift.STRUCT, len(p.Users)); err != nil { + return err + } + for _, v := range p.Users { + if err := v.Write(oprot); err != nil { + return err + } + } + if err := oprot.WriteListEnd(); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 3 end error: ", p), err) +} +func (p *ListUserRelationsResponse) writeField4(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("total", thrift.I64, 4); err != nil { + goto WriteFieldBeginError + } + if err := oprot.WriteI64(p.Total); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 4 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 4 end error: ", p), err) +} + +func (p *ListUserRelationsResponse) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("ListUserRelationsResponse(%+v)", *p) + +} + type UserService interface { UpdateUser(ctx context.Context, req *UpdateUserRequest) (r *UpdateUserResponse, err error) DeleteUser(ctx context.Context, req *DeleteUserRequest) (r *DeleteUserResponse, err error) - QueryUser(ctx context.Context, req *QueryUserRequest) (r *QueryUserResponse, err error) + InfoUser(ctx context.Context, req *InfoUserRequest) (r *QueryUserResponse, err error) CreateUser(ctx context.Context, req *CreateUserRequest) (r *CreateUserResponse, err error) } @@ -3860,11 +5111,11 @@ func (p *UserServiceClient) DeleteUser(ctx context.Context, req *DeleteUserReque } return _result.GetSuccess(), nil } -func (p *UserServiceClient) QueryUser(ctx context.Context, req *QueryUserRequest) (r *QueryUserResponse, err error) { - var _args UserServiceQueryUserArgs +func (p *UserServiceClient) InfoUser(ctx context.Context, req *InfoUserRequest) (r *QueryUserResponse, err error) { + var _args UserServiceInfoUserArgs _args.Req = req - var _result UserServiceQueryUserResult - if err = p.Client_().Call(ctx, "QueryUser", &_args, &_result); err != nil { + var _result UserServiceInfoUserResult + if err = p.Client_().Call(ctx, "InfoUser", &_args, &_result); err != nil { return } return _result.GetSuccess(), nil @@ -3879,6 +5130,68 @@ func (p *UserServiceClient) CreateUser(ctx context.Context, req *CreateUserReque return _result.GetSuccess(), nil } +type UserRelationsService interface { + DeleteUserRelations(ctx context.Context, req *DeleteUserRelationsReq) (r *DeleteUserRelationsReq, err error) + + ListUserRelations(ctx context.Context, req *ListUserRelationsReq) (r *ListUserRelationsResponse, err error) + + CreateUserRelations(ctx context.Context, req *CreateUserRelationsReq) (r *CreateUserRelationsReq, err error) +} + +type UserRelationsServiceClient struct { + c thrift.TClient +} + +func NewUserRelationsServiceClientFactory(t thrift.TTransport, f thrift.TProtocolFactory) *UserRelationsServiceClient { + return &UserRelationsServiceClient{ + c: thrift.NewTStandardClient(f.GetProtocol(t), f.GetProtocol(t)), + } +} + +func NewUserRelationsServiceClientProtocol(t thrift.TTransport, iprot thrift.TProtocol, oprot thrift.TProtocol) *UserRelationsServiceClient { + return &UserRelationsServiceClient{ + c: thrift.NewTStandardClient(iprot, oprot), + } +} + +func NewUserRelationsServiceClient(c thrift.TClient) *UserRelationsServiceClient { + return &UserRelationsServiceClient{ + c: c, + } +} + +func (p *UserRelationsServiceClient) Client_() thrift.TClient { + return p.c +} + +func (p *UserRelationsServiceClient) DeleteUserRelations(ctx context.Context, req *DeleteUserRelationsReq) (r *DeleteUserRelationsReq, err error) { + var _args UserRelationsServiceDeleteUserRelationsArgs + _args.Req = req + var _result UserRelationsServiceDeleteUserRelationsResult + if err = p.Client_().Call(ctx, "DeleteUserRelations", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *UserRelationsServiceClient) ListUserRelations(ctx context.Context, req *ListUserRelationsReq) (r *ListUserRelationsResponse, err error) { + var _args UserRelationsServiceListUserRelationsArgs + _args.Req = req + var _result UserRelationsServiceListUserRelationsResult + if err = p.Client_().Call(ctx, "ListUserRelations", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} +func (p *UserRelationsServiceClient) CreateUserRelations(ctx context.Context, req *CreateUserRelationsReq) (r *CreateUserRelationsReq, err error) { + var _args UserRelationsServiceCreateUserRelationsArgs + _args.Req = req + var _result UserRelationsServiceCreateUserRelationsResult + if err = p.Client_().Call(ctx, "CreateUserRelations", &_args, &_result); err != nil { + return + } + return _result.GetSuccess(), nil +} + type UserServiceProcessor struct { processorMap map[string]thrift.TProcessorFunction handler UserService @@ -3901,7 +5214,7 @@ func NewUserServiceProcessor(handler UserService) *UserServiceProcessor { self := &UserServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} self.AddToProcessorMap("UpdateUser", &userServiceProcessorUpdateUser{handler: handler}) self.AddToProcessorMap("DeleteUser", &userServiceProcessorDeleteUser{handler: handler}) - self.AddToProcessorMap("QueryUser", &userServiceProcessorQueryUser{handler: handler}) + self.AddToProcessorMap("InfoUser", &userServiceProcessorInfoUser{handler: handler}) self.AddToProcessorMap("CreateUser", &userServiceProcessorCreateUser{handler: handler}) return self } @@ -4019,16 +5332,16 @@ func (p *userServiceProcessorDeleteUser) Process(ctx context.Context, seqId int3 return true, err } -type userServiceProcessorQueryUser struct { +type userServiceProcessorInfoUser struct { handler UserService } -func (p *userServiceProcessorQueryUser) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { - args := UserServiceQueryUserArgs{} +func (p *userServiceProcessorInfoUser) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserServiceInfoUserArgs{} if err = args.Read(iprot); err != nil { iprot.ReadMessageEnd() x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) - oprot.WriteMessageBegin("QueryUser", thrift.EXCEPTION, seqId) + oprot.WriteMessageBegin("InfoUser", thrift.EXCEPTION, seqId) x.Write(oprot) oprot.WriteMessageEnd() oprot.Flush(ctx) @@ -4037,11 +5350,11 @@ func (p *userServiceProcessorQueryUser) Process(ctx context.Context, seqId int32 iprot.ReadMessageEnd() var err2 error - result := UserServiceQueryUserResult{} + result := UserServiceInfoUserResult{} var retval *QueryUserResponse - if retval, err2 = p.handler.QueryUser(ctx, args.Req); err2 != nil { - x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing QueryUser: "+err2.Error()) - oprot.WriteMessageBegin("QueryUser", thrift.EXCEPTION, seqId) + if retval, err2 = p.handler.InfoUser(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing InfoUser: "+err2.Error()) + oprot.WriteMessageBegin("InfoUser", thrift.EXCEPTION, seqId) x.Write(oprot) oprot.WriteMessageEnd() oprot.Flush(ctx) @@ -4049,7 +5362,7 @@ func (p *userServiceProcessorQueryUser) Process(ctx context.Context, seqId int32 } else { result.Success = retval } - if err2 = oprot.WriteMessageBegin("QueryUser", thrift.REPLY, seqId); err2 != nil { + if err2 = oprot.WriteMessageBegin("InfoUser", thrift.REPLY, seqId); err2 != nil { err = err2 } if err2 = result.Write(oprot); err == nil && err2 != nil { @@ -4699,35 +6012,35 @@ func (p *UserServiceDeleteUserResult) String() string { } -type UserServiceQueryUserArgs struct { - Req *QueryUserRequest `thrift:"req,1"` +type UserServiceInfoUserArgs struct { + Req *InfoUserRequest `thrift:"req,1"` } -func NewUserServiceQueryUserArgs() *UserServiceQueryUserArgs { - return &UserServiceQueryUserArgs{} +func NewUserServiceInfoUserArgs() *UserServiceInfoUserArgs { + return &UserServiceInfoUserArgs{} } -func (p *UserServiceQueryUserArgs) InitDefault() { +func (p *UserServiceInfoUserArgs) InitDefault() { } -var UserServiceQueryUserArgs_Req_DEFAULT *QueryUserRequest +var UserServiceInfoUserArgs_Req_DEFAULT *InfoUserRequest -func (p *UserServiceQueryUserArgs) GetReq() (v *QueryUserRequest) { +func (p *UserServiceInfoUserArgs) GetReq() (v *InfoUserRequest) { if !p.IsSetReq() { - return UserServiceQueryUserArgs_Req_DEFAULT + return UserServiceInfoUserArgs_Req_DEFAULT } return p.Req } -var fieldIDToName_UserServiceQueryUserArgs = map[int16]string{ +var fieldIDToName_UserServiceInfoUserArgs = map[int16]string{ 1: "req", } -func (p *UserServiceQueryUserArgs) IsSetReq() bool { +func (p *UserServiceInfoUserArgs) IsSetReq() bool { return p.Req != nil } -func (p *UserServiceQueryUserArgs) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceInfoUserArgs) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -4772,7 +6085,7 @@ ReadStructBeginError: ReadFieldBeginError: return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) ReadFieldError: - return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceQueryUserArgs[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceInfoUserArgs[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -4782,8 +6095,8 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceQueryUserArgs) ReadField1(iprot thrift.TProtocol) error { - _field := NewQueryUserRequest() +func (p *UserServiceInfoUserArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewInfoUserRequest() if err := _field.Read(iprot); err != nil { return err } @@ -4791,9 +6104,9 @@ func (p *UserServiceQueryUserArgs) ReadField1(iprot thrift.TProtocol) error { return nil } -func (p *UserServiceQueryUserArgs) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceInfoUserArgs) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("QueryUser_args"); err != nil { + if err = oprot.WriteStructBegin("InfoUser_args"); err != nil { goto WriteStructBeginError } if p != nil { @@ -4819,7 +6132,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceQueryUserArgs) writeField1(oprot thrift.TProtocol) (err error) { +func (p *UserServiceInfoUserArgs) writeField1(oprot thrift.TProtocol) (err error) { if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { goto WriteFieldBeginError } @@ -4836,43 +6149,43 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) } -func (p *UserServiceQueryUserArgs) String() string { +func (p *UserServiceInfoUserArgs) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceQueryUserArgs(%+v)", *p) + return fmt.Sprintf("UserServiceInfoUserArgs(%+v)", *p) } -type UserServiceQueryUserResult struct { +type UserServiceInfoUserResult struct { Success *QueryUserResponse `thrift:"success,0,optional"` } -func NewUserServiceQueryUserResult() *UserServiceQueryUserResult { - return &UserServiceQueryUserResult{} +func NewUserServiceInfoUserResult() *UserServiceInfoUserResult { + return &UserServiceInfoUserResult{} } -func (p *UserServiceQueryUserResult) InitDefault() { +func (p *UserServiceInfoUserResult) InitDefault() { } -var UserServiceQueryUserResult_Success_DEFAULT *QueryUserResponse +var UserServiceInfoUserResult_Success_DEFAULT *QueryUserResponse -func (p *UserServiceQueryUserResult) GetSuccess() (v *QueryUserResponse) { +func (p *UserServiceInfoUserResult) GetSuccess() (v *QueryUserResponse) { if !p.IsSetSuccess() { - return UserServiceQueryUserResult_Success_DEFAULT + return UserServiceInfoUserResult_Success_DEFAULT } return p.Success } -var fieldIDToName_UserServiceQueryUserResult = map[int16]string{ +var fieldIDToName_UserServiceInfoUserResult = map[int16]string{ 0: "success", } -func (p *UserServiceQueryUserResult) IsSetSuccess() bool { +func (p *UserServiceInfoUserResult) IsSetSuccess() bool { return p.Success != nil } -func (p *UserServiceQueryUserResult) Read(iprot thrift.TProtocol) (err error) { +func (p *UserServiceInfoUserResult) Read(iprot thrift.TProtocol) (err error) { var fieldTypeId thrift.TType var fieldId int16 @@ -4917,7 +6230,7 @@ ReadStructBeginError: ReadFieldBeginError: return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) ReadFieldError: - return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceQueryUserResult[fieldId]), err) + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserServiceInfoUserResult[fieldId]), err) SkipFieldError: return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) @@ -4927,7 +6240,7 @@ ReadStructEndError: return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) } -func (p *UserServiceQueryUserResult) ReadField0(iprot thrift.TProtocol) error { +func (p *UserServiceInfoUserResult) ReadField0(iprot thrift.TProtocol) error { _field := NewQueryUserResponse() if err := _field.Read(iprot); err != nil { return err @@ -4936,9 +6249,9 @@ func (p *UserServiceQueryUserResult) ReadField0(iprot thrift.TProtocol) error { return nil } -func (p *UserServiceQueryUserResult) Write(oprot thrift.TProtocol) (err error) { +func (p *UserServiceInfoUserResult) Write(oprot thrift.TProtocol) (err error) { var fieldId int16 - if err = oprot.WriteStructBegin("QueryUser_result"); err != nil { + if err = oprot.WriteStructBegin("InfoUser_result"); err != nil { goto WriteStructBeginError } if p != nil { @@ -4964,7 +6277,7 @@ WriteStructEndError: return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) } -func (p *UserServiceQueryUserResult) writeField0(oprot thrift.TProtocol) (err error) { +func (p *UserServiceInfoUserResult) writeField0(oprot thrift.TProtocol) (err error) { if p.IsSetSuccess() { if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { goto WriteFieldBeginError @@ -4983,11 +6296,11 @@ WriteFieldEndError: return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) } -func (p *UserServiceQueryUserResult) String() string { +func (p *UserServiceInfoUserResult) String() string { if p == nil { return "" } - return fmt.Sprintf("UserServiceQueryUserResult(%+v)", *p) + return fmt.Sprintf("UserServiceInfoUserResult(%+v)", *p) } @@ -5282,3 +6595,1066 @@ func (p *UserServiceCreateUserResult) String() string { return fmt.Sprintf("UserServiceCreateUserResult(%+v)", *p) } + +type UserRelationsServiceProcessor struct { + processorMap map[string]thrift.TProcessorFunction + handler UserRelationsService +} + +func (p *UserRelationsServiceProcessor) AddToProcessorMap(key string, processor thrift.TProcessorFunction) { + p.processorMap[key] = processor +} + +func (p *UserRelationsServiceProcessor) GetProcessorFunction(key string) (processor thrift.TProcessorFunction, ok bool) { + processor, ok = p.processorMap[key] + return processor, ok +} + +func (p *UserRelationsServiceProcessor) ProcessorMap() map[string]thrift.TProcessorFunction { + return p.processorMap +} + +func NewUserRelationsServiceProcessor(handler UserRelationsService) *UserRelationsServiceProcessor { + self := &UserRelationsServiceProcessor{handler: handler, processorMap: make(map[string]thrift.TProcessorFunction)} + self.AddToProcessorMap("DeleteUserRelations", &userRelationsServiceProcessorDeleteUserRelations{handler: handler}) + self.AddToProcessorMap("ListUserRelations", &userRelationsServiceProcessorListUserRelations{handler: handler}) + self.AddToProcessorMap("CreateUserRelations", &userRelationsServiceProcessorCreateUserRelations{handler: handler}) + return self +} +func (p *UserRelationsServiceProcessor) Process(ctx context.Context, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + name, _, seqId, err := iprot.ReadMessageBegin() + if err != nil { + return false, err + } + if processor, ok := p.GetProcessorFunction(name); ok { + return processor.Process(ctx, seqId, iprot, oprot) + } + iprot.Skip(thrift.STRUCT) + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.UNKNOWN_METHOD, "Unknown function "+name) + oprot.WriteMessageBegin(name, thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, x +} + +type userRelationsServiceProcessorDeleteUserRelations struct { + handler UserRelationsService +} + +func (p *userRelationsServiceProcessorDeleteUserRelations) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserRelationsServiceDeleteUserRelationsArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("DeleteUserRelations", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := UserRelationsServiceDeleteUserRelationsResult{} + var retval *DeleteUserRelationsReq + if retval, err2 = p.handler.DeleteUserRelations(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing DeleteUserRelations: "+err2.Error()) + oprot.WriteMessageBegin("DeleteUserRelations", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("DeleteUserRelations", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + +type userRelationsServiceProcessorListUserRelations struct { + handler UserRelationsService +} + +func (p *userRelationsServiceProcessorListUserRelations) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserRelationsServiceListUserRelationsArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("ListUserRelations", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := UserRelationsServiceListUserRelationsResult{} + var retval *ListUserRelationsResponse + if retval, err2 = p.handler.ListUserRelations(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing ListUserRelations: "+err2.Error()) + oprot.WriteMessageBegin("ListUserRelations", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("ListUserRelations", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + +type userRelationsServiceProcessorCreateUserRelations struct { + handler UserRelationsService +} + +func (p *userRelationsServiceProcessorCreateUserRelations) Process(ctx context.Context, seqId int32, iprot, oprot thrift.TProtocol) (success bool, err thrift.TException) { + args := UserRelationsServiceCreateUserRelationsArgs{} + if err = args.Read(iprot); err != nil { + iprot.ReadMessageEnd() + x := thrift.NewTApplicationException(thrift.PROTOCOL_ERROR, err.Error()) + oprot.WriteMessageBegin("CreateUserRelations", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return false, err + } + + iprot.ReadMessageEnd() + var err2 error + result := UserRelationsServiceCreateUserRelationsResult{} + var retval *CreateUserRelationsReq + if retval, err2 = p.handler.CreateUserRelations(ctx, args.Req); err2 != nil { + x := thrift.NewTApplicationException(thrift.INTERNAL_ERROR, "Internal error processing CreateUserRelations: "+err2.Error()) + oprot.WriteMessageBegin("CreateUserRelations", thrift.EXCEPTION, seqId) + x.Write(oprot) + oprot.WriteMessageEnd() + oprot.Flush(ctx) + return true, err2 + } else { + result.Success = retval + } + if err2 = oprot.WriteMessageBegin("CreateUserRelations", thrift.REPLY, seqId); err2 != nil { + err = err2 + } + if err2 = result.Write(oprot); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.WriteMessageEnd(); err == nil && err2 != nil { + err = err2 + } + if err2 = oprot.Flush(ctx); err == nil && err2 != nil { + err = err2 + } + if err != nil { + return + } + return true, err +} + +type UserRelationsServiceDeleteUserRelationsArgs struct { + Req *DeleteUserRelationsReq `thrift:"req,1"` +} + +func NewUserRelationsServiceDeleteUserRelationsArgs() *UserRelationsServiceDeleteUserRelationsArgs { + return &UserRelationsServiceDeleteUserRelationsArgs{} +} + +func (p *UserRelationsServiceDeleteUserRelationsArgs) InitDefault() { +} + +var UserRelationsServiceDeleteUserRelationsArgs_Req_DEFAULT *DeleteUserRelationsReq + +func (p *UserRelationsServiceDeleteUserRelationsArgs) GetReq() (v *DeleteUserRelationsReq) { + if !p.IsSetReq() { + return UserRelationsServiceDeleteUserRelationsArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_UserRelationsServiceDeleteUserRelationsArgs = map[int16]string{ + 1: "req", +} + +func (p *UserRelationsServiceDeleteUserRelationsArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *UserRelationsServiceDeleteUserRelationsArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserRelationsServiceDeleteUserRelationsArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *UserRelationsServiceDeleteUserRelationsArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewDeleteUserRelationsReq() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *UserRelationsServiceDeleteUserRelationsArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteUserRelations_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *UserRelationsServiceDeleteUserRelationsArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *UserRelationsServiceDeleteUserRelationsArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserRelationsServiceDeleteUserRelationsArgs(%+v)", *p) + +} + +type UserRelationsServiceDeleteUserRelationsResult struct { + Success *DeleteUserRelationsReq `thrift:"success,0,optional"` +} + +func NewUserRelationsServiceDeleteUserRelationsResult() *UserRelationsServiceDeleteUserRelationsResult { + return &UserRelationsServiceDeleteUserRelationsResult{} +} + +func (p *UserRelationsServiceDeleteUserRelationsResult) InitDefault() { +} + +var UserRelationsServiceDeleteUserRelationsResult_Success_DEFAULT *DeleteUserRelationsReq + +func (p *UserRelationsServiceDeleteUserRelationsResult) GetSuccess() (v *DeleteUserRelationsReq) { + if !p.IsSetSuccess() { + return UserRelationsServiceDeleteUserRelationsResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_UserRelationsServiceDeleteUserRelationsResult = map[int16]string{ + 0: "success", +} + +func (p *UserRelationsServiceDeleteUserRelationsResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *UserRelationsServiceDeleteUserRelationsResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserRelationsServiceDeleteUserRelationsResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *UserRelationsServiceDeleteUserRelationsResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewDeleteUserRelationsReq() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *UserRelationsServiceDeleteUserRelationsResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("DeleteUserRelations_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *UserRelationsServiceDeleteUserRelationsResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *UserRelationsServiceDeleteUserRelationsResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserRelationsServiceDeleteUserRelationsResult(%+v)", *p) + +} + +type UserRelationsServiceListUserRelationsArgs struct { + Req *ListUserRelationsReq `thrift:"req,1"` +} + +func NewUserRelationsServiceListUserRelationsArgs() *UserRelationsServiceListUserRelationsArgs { + return &UserRelationsServiceListUserRelationsArgs{} +} + +func (p *UserRelationsServiceListUserRelationsArgs) InitDefault() { +} + +var UserRelationsServiceListUserRelationsArgs_Req_DEFAULT *ListUserRelationsReq + +func (p *UserRelationsServiceListUserRelationsArgs) GetReq() (v *ListUserRelationsReq) { + if !p.IsSetReq() { + return UserRelationsServiceListUserRelationsArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_UserRelationsServiceListUserRelationsArgs = map[int16]string{ + 1: "req", +} + +func (p *UserRelationsServiceListUserRelationsArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *UserRelationsServiceListUserRelationsArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserRelationsServiceListUserRelationsArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *UserRelationsServiceListUserRelationsArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewListUserRelationsReq() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *UserRelationsServiceListUserRelationsArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListUserRelations_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *UserRelationsServiceListUserRelationsArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *UserRelationsServiceListUserRelationsArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserRelationsServiceListUserRelationsArgs(%+v)", *p) + +} + +type UserRelationsServiceListUserRelationsResult struct { + Success *ListUserRelationsResponse `thrift:"success,0,optional"` +} + +func NewUserRelationsServiceListUserRelationsResult() *UserRelationsServiceListUserRelationsResult { + return &UserRelationsServiceListUserRelationsResult{} +} + +func (p *UserRelationsServiceListUserRelationsResult) InitDefault() { +} + +var UserRelationsServiceListUserRelationsResult_Success_DEFAULT *ListUserRelationsResponse + +func (p *UserRelationsServiceListUserRelationsResult) GetSuccess() (v *ListUserRelationsResponse) { + if !p.IsSetSuccess() { + return UserRelationsServiceListUserRelationsResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_UserRelationsServiceListUserRelationsResult = map[int16]string{ + 0: "success", +} + +func (p *UserRelationsServiceListUserRelationsResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *UserRelationsServiceListUserRelationsResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserRelationsServiceListUserRelationsResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *UserRelationsServiceListUserRelationsResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewListUserRelationsResponse() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *UserRelationsServiceListUserRelationsResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("ListUserRelations_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *UserRelationsServiceListUserRelationsResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *UserRelationsServiceListUserRelationsResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserRelationsServiceListUserRelationsResult(%+v)", *p) + +} + +type UserRelationsServiceCreateUserRelationsArgs struct { + Req *CreateUserRelationsReq `thrift:"req,1"` +} + +func NewUserRelationsServiceCreateUserRelationsArgs() *UserRelationsServiceCreateUserRelationsArgs { + return &UserRelationsServiceCreateUserRelationsArgs{} +} + +func (p *UserRelationsServiceCreateUserRelationsArgs) InitDefault() { +} + +var UserRelationsServiceCreateUserRelationsArgs_Req_DEFAULT *CreateUserRelationsReq + +func (p *UserRelationsServiceCreateUserRelationsArgs) GetReq() (v *CreateUserRelationsReq) { + if !p.IsSetReq() { + return UserRelationsServiceCreateUserRelationsArgs_Req_DEFAULT + } + return p.Req +} + +var fieldIDToName_UserRelationsServiceCreateUserRelationsArgs = map[int16]string{ + 1: "req", +} + +func (p *UserRelationsServiceCreateUserRelationsArgs) IsSetReq() bool { + return p.Req != nil +} + +func (p *UserRelationsServiceCreateUserRelationsArgs) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 1: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField1(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserRelationsServiceCreateUserRelationsArgs[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *UserRelationsServiceCreateUserRelationsArgs) ReadField1(iprot thrift.TProtocol) error { + _field := NewCreateUserRelationsReq() + if err := _field.Read(iprot); err != nil { + return err + } + p.Req = _field + return nil +} + +func (p *UserRelationsServiceCreateUserRelationsArgs) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateUserRelations_args"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField1(oprot); err != nil { + fieldId = 1 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *UserRelationsServiceCreateUserRelationsArgs) writeField1(oprot thrift.TProtocol) (err error) { + if err = oprot.WriteFieldBegin("req", thrift.STRUCT, 1); err != nil { + goto WriteFieldBeginError + } + if err := p.Req.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 1 end error: ", p), err) +} + +func (p *UserRelationsServiceCreateUserRelationsArgs) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserRelationsServiceCreateUserRelationsArgs(%+v)", *p) + +} + +type UserRelationsServiceCreateUserRelationsResult struct { + Success *CreateUserRelationsReq `thrift:"success,0,optional"` +} + +func NewUserRelationsServiceCreateUserRelationsResult() *UserRelationsServiceCreateUserRelationsResult { + return &UserRelationsServiceCreateUserRelationsResult{} +} + +func (p *UserRelationsServiceCreateUserRelationsResult) InitDefault() { +} + +var UserRelationsServiceCreateUserRelationsResult_Success_DEFAULT *CreateUserRelationsReq + +func (p *UserRelationsServiceCreateUserRelationsResult) GetSuccess() (v *CreateUserRelationsReq) { + if !p.IsSetSuccess() { + return UserRelationsServiceCreateUserRelationsResult_Success_DEFAULT + } + return p.Success +} + +var fieldIDToName_UserRelationsServiceCreateUserRelationsResult = map[int16]string{ + 0: "success", +} + +func (p *UserRelationsServiceCreateUserRelationsResult) IsSetSuccess() bool { + return p.Success != nil +} + +func (p *UserRelationsServiceCreateUserRelationsResult) Read(iprot thrift.TProtocol) (err error) { + var fieldTypeId thrift.TType + var fieldId int16 + + if _, err = iprot.ReadStructBegin(); err != nil { + goto ReadStructBeginError + } + + for { + _, fieldTypeId, fieldId, err = iprot.ReadFieldBegin() + if err != nil { + goto ReadFieldBeginError + } + if fieldTypeId == thrift.STOP { + break + } + + switch fieldId { + case 0: + if fieldTypeId == thrift.STRUCT { + if err = p.ReadField0(iprot); err != nil { + goto ReadFieldError + } + } else if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + default: + if err = iprot.Skip(fieldTypeId); err != nil { + goto SkipFieldError + } + } + if err = iprot.ReadFieldEnd(); err != nil { + goto ReadFieldEndError + } + } + if err = iprot.ReadStructEnd(); err != nil { + goto ReadStructEndError + } + + return nil +ReadStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T read struct begin error: ", p), err) +ReadFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T read field %d begin error: ", p, fieldId), err) +ReadFieldError: + return thrift.PrependError(fmt.Sprintf("%T read field %d '%s' error: ", p, fieldId, fieldIDToName_UserRelationsServiceCreateUserRelationsResult[fieldId]), err) +SkipFieldError: + return thrift.PrependError(fmt.Sprintf("%T field %d skip type %d error: ", p, fieldId, fieldTypeId), err) + +ReadFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T read field end error", p), err) +ReadStructEndError: + return thrift.PrependError(fmt.Sprintf("%T read struct end error: ", p), err) +} + +func (p *UserRelationsServiceCreateUserRelationsResult) ReadField0(iprot thrift.TProtocol) error { + _field := NewCreateUserRelationsReq() + if err := _field.Read(iprot); err != nil { + return err + } + p.Success = _field + return nil +} + +func (p *UserRelationsServiceCreateUserRelationsResult) Write(oprot thrift.TProtocol) (err error) { + var fieldId int16 + if err = oprot.WriteStructBegin("CreateUserRelations_result"); err != nil { + goto WriteStructBeginError + } + if p != nil { + if err = p.writeField0(oprot); err != nil { + fieldId = 0 + goto WriteFieldError + } + } + if err = oprot.WriteFieldStop(); err != nil { + goto WriteFieldStopError + } + if err = oprot.WriteStructEnd(); err != nil { + goto WriteStructEndError + } + return nil +WriteStructBeginError: + return thrift.PrependError(fmt.Sprintf("%T write struct begin error: ", p), err) +WriteFieldError: + return thrift.PrependError(fmt.Sprintf("%T write field %d error: ", p, fieldId), err) +WriteFieldStopError: + return thrift.PrependError(fmt.Sprintf("%T write field stop error: ", p), err) +WriteStructEndError: + return thrift.PrependError(fmt.Sprintf("%T write struct end error: ", p), err) +} + +func (p *UserRelationsServiceCreateUserRelationsResult) writeField0(oprot thrift.TProtocol) (err error) { + if p.IsSetSuccess() { + if err = oprot.WriteFieldBegin("success", thrift.STRUCT, 0); err != nil { + goto WriteFieldBeginError + } + if err := p.Success.Write(oprot); err != nil { + return err + } + if err = oprot.WriteFieldEnd(); err != nil { + goto WriteFieldEndError + } + } + return nil +WriteFieldBeginError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 begin error: ", p), err) +WriteFieldEndError: + return thrift.PrependError(fmt.Sprintf("%T write field 0 end error: ", p), err) +} + +func (p *UserRelationsServiceCreateUserRelationsResult) String() string { + if p == nil { + return "" + } + return fmt.Sprintf("UserRelationsServiceCreateUserRelationsResult(%+v)", *p) + +} diff --git a/acquaintances/biz/model/user_relations.go b/acquaintances/biz/model/user_relations.go new file mode 100644 index 0000000..76de084 --- /dev/null +++ b/acquaintances/biz/model/user_relations.go @@ -0,0 +1,21 @@ +package model + +import ( + "gorm.io/gorm" +) + +// Friendship 好友关系表 +type UserRelations struct { + gorm.Model + UserID string `gorm:"type:bigint;not null;index:idx_user_status;column:用户id;"` + FriendID string `gorm:"type:bigint;not null;index:idx_friend_status;column:好友id"` + Status uint8 `gorm:"type:tinyint;default:0;column:关系状态"` // 0: 待确认, 1: 已确认, 2: 已拒绝, 3: 已删除 + + // 关联用户 + User *User `gorm:"foreignKey:UserID;references:UserID"` + Friend *User `gorm:"foreignKey:FriendID;references:UserID"` +} + +func (u *UserRelations) TableName() string { + return "user_relations" +} diff --git a/acquaintances/biz/router/user/middleware.go b/acquaintances/biz/router/user/middleware.go index 67abd2c..8266c73 100644 --- a/acquaintances/biz/router/user/middleware.go +++ b/acquaintances/biz/router/user/middleware.go @@ -60,3 +60,58 @@ func _updateuserMw() []app.HandlerFunc { // your code... return nil } + +func _infoMw() []app.HandlerFunc { + // your code... + return nil +} + +func _infouserMw() []app.HandlerFunc { + // your code... + return nil +} + +func _relationsMw() []app.HandlerFunc { + // your code... + return nil +} + +func _deleteuser0Mw() []app.HandlerFunc { + // your code... + return nil +} + +func _infouser0Mw() []app.HandlerFunc { + // your code... + return nil +} + +func _createuser0Mw() []app.HandlerFunc { + // your code... + return nil +} + +func _relationMw() []app.HandlerFunc { + // your code... + return nil +} + +func _deleteuserrelationsMw() []app.HandlerFunc { + // your code... + return nil +} + +func _infouserrelationsMw() []app.HandlerFunc { + // your code... + return nil +} + +func _createuserrelationsMw() []app.HandlerFunc { + // your code... + return nil +} + +func _listuserrelationsMw() []app.HandlerFunc { + // your code... + return nil +} diff --git a/acquaintances/biz/router/user/user.go b/acquaintances/biz/router/user/user.go index 50a3fa2..0029d2b 100644 --- a/acquaintances/biz/router/user/user.go +++ b/acquaintances/biz/router/user/user.go @@ -21,21 +21,15 @@ func Register(r *server.Hertz) { _v1 := root.Group("/v1", _v1Mw()...) { _user := _v1.Group("/user", _userMw()...) + _user.DELETE("/", append(_deleteuserMw(), user.DeleteUser)...) + _user.GET("/", append(_infouserMw(), user.InfoUser)...) + _user.POST("/", append(_createuserMw(), user.CreateUser)...) + _user.PUT("/", append(_updateuserMw(), user.UpdateUser)...) { - _create := _user.Group("/create", _createMw()...) - _create.POST("/", append(_createuserMw(), user.CreateUser)...) - } - { - _delete := _user.Group("/delete", _deleteMw()...) - _delete.POST("/:user_id", append(_deleteuserMw(), user.DeleteUser)...) - } - { - _query := _user.Group("/query", _queryMw()...) - _query.POST("/", append(_queryuserMw(), user.QueryUser)...) - } - { - _update := _user.Group("/update", _updateMw()...) - _update.POST("/:user_id", append(_updateuserMw(), user.UpdateUser)...) + _relation := _user.Group("/relation", _relationMw()...) + _relation.DELETE("/", append(_deleteuserrelationsMw(), user.DeleteUserRelations)...) + _relation.GET("/", append(_listuserrelationsMw(), user.ListUserRelations)...) + _relation.POST("/", append(_createuserrelationsMw(), user.CreateUserRelations)...) } } } diff --git a/acquaintances/idl/user.thrift b/acquaintances/idl/user.thrift index c90ec57..4b013df 100644 --- a/acquaintances/idl/user.thrift +++ b/acquaintances/idl/user.thrift @@ -7,6 +7,10 @@ enum Code { ServerError = 4 } +/** + 用户基本信息 +**/ + enum Gender { Unknown = 0 Male = 1 @@ -67,17 +71,14 @@ struct CreateUserResponse{ 2: string msg } -struct QueryUserRequest{ - 1: optional string Keyword (api.body="keyword", api.form="keyword",api.query="keyword") - 2: i64 page (api.body="page", api.form="page",api.query="page",api.vd="$ > 0") - 3: i64 page_size (api.body="page_size", api.form="page_size",api.query="page_size",api.vd="($ > 0 || $ <= 100)") +struct InfoUserRequest{ + 1: i64 user_id (api.path="user_id",api.vd="$>0") } struct QueryUserResponse{ 1: Code code 2: string msg - 3: list users - 4: i64 total + 3: UserInfoReq userInfo } struct DeleteUserRequest{ @@ -90,17 +91,17 @@ struct DeleteUserResponse{ } struct UpdateUserRequest{ - 1: i64 user_id (api.path="user_id",api.vd="$>0") - 2: string name (api.body="name", api.form="name",api.vd="(len($) > 0 && len($) < 100)") - 3: Gender gender (api.body="gender", api.form="gender",api.vd="($ == 1||$ == 2)") - 4: i64 age (api.body="age", api.form="age",api.vd="$>0") - 5: string introduce (api.body="introduce", api.form="introduce",api.vd="(len($) > 0 && len($) < 1000)") - 6: string avatar_image_url (api.body="avatar_image_url", api.form="avatar_image_url",api.vd="(len($) > 0 && len($) < 1000)") - 7: string birthday (api.body="birthday", api.form="birthday",api.vd="len($) > 0") - 8: string user_password (api.body="user_password", api.form="user_password",api.vd="(len($) > 0 && len($) < 15)") - 9: string area (api.body="area", api.form="area",api.vd="(len($) > 0 && len($) < 5)") - 10: string mobile (api.body="mobile", api.form="mobile",api.vd="(len($) > 0 && len($) < 12)") - 11: string address (api.body="address", api.form="address",api.vd="(len($) > 0 && len($) < 200)") + 1: i64 user_id (api.path="user_id") + 2: string name (api.body="name") + 3: Gender gender (api.body="gender") + 4: i64 age (api.body="age") + 5: string introduce (api.body="introduce") + 6: string avatar_image_url (api.body="avatar_image_url") + 7: string birthday (api.body="birthday") + 8: string user_password (api.body="user_password") + 9: string area (api.body="area") + 10: string mobile (api.body="mobile") + 11: string address (api.body="address") } struct UpdateUserResponse{ @@ -110,8 +111,58 @@ struct UpdateUserResponse{ service UserService { - UpdateUserResponse UpdateUser(1:UpdateUserRequest req)(api.post="/v1/user/update/:user_id") - DeleteUserResponse DeleteUser(1:DeleteUserRequest req)(api.post="/v1/user/delete/:user_id") - QueryUserResponse QueryUser(1: QueryUserRequest req)(api.post="/v1/user/query/") - CreateUserResponse CreateUser(1:CreateUserRequest req)(api.post="/v1/user/create/") + UpdateUserResponse UpdateUser(1:UpdateUserRequest req)(api.put="/v1/user/") + DeleteUserResponse DeleteUser(1:DeleteUserRequest req)(api.delete="/v1/user/") + QueryUserResponse InfoUser(1: InfoUserRequest req)(api.get="/v1/user/") + CreateUserResponse CreateUser(1:CreateUserRequest req)(api.post="/v1/user/") } + + +/** + 用户好友关系 +**/ +struct UserRelations { + 1: string user_id //id + 2: string friend_id //好友id + 3: string status //关系状态 +} + + +struct CreateUserRelationsReq { + 1: string user_id //id + 2: string friend_id //好友id +} + +struct CreateUserRelationsResponse{ + 1: Code code + 2: string msg +} + +struct DeleteUserRelationsReq { + 1: string user_id //id + 2: string friend_id //好友id +} + +struct DeleteUserRelationsResponse{ + 1: Code code + 2: string msg +} + +struct ListUserRelationsReq{ + 1: string user_id //id +} + + +struct ListUserRelationsResponse{ + 1: Code code + 2: string msg + 3: list users + 4: i64 total +} + +service UserRelationsService { + DeleteUserRelationsReq DeleteUserRelations(1:DeleteUserRelationsReq req)(api.delete="/v1/user/relation/") //删除申请 + ListUserRelationsResponse ListUserRelations(1: ListUserRelationsReq req)(api.get="/v1/user/relation/") //获取好友列表 + CreateUserRelationsReq CreateUserRelations(1:CreateUserRelationsReq req)(api.post="/v1/user/relation/") //发起好友申请 +} + diff --git a/acquaintances/main.go.bak b/acquaintances/main.go.bak new file mode 100644 index 0000000..46e65fd --- /dev/null +++ b/acquaintances/main.go.bak @@ -0,0 +1,137 @@ +// Code generated by hertz generator. + +package main + +import ( + "acquaintances/biz/dal" + "acquaintances/config" + "fmt" + "github.com/cloudwego/hertz/pkg/app/server" + "github.com/cloudwego/hertz/pkg/app/server/registry" + "github.com/cloudwego/hertz/pkg/common/utils" + "github.com/hertz-contrib/registry/etcd" +) + +func main() { + dal.Init() + r, err := etcd.NewEtcdRegistry([]string{fmt.Sprintf("%s:%s", config.EtcdHost, config.EtcdPort)}, + etcd.WithAuthOpt(config.EtcdUser, config.EtcdPassword), + ) + if err != nil { + panic(err) + } + // ... + addr := fmt.Sprintf("%s:%s", config.ServerHost, config.HttpPort) + h := server.Default( + server.WithHostPorts(addr), + server.WithRegistry(r, ®istry.Info{ + ServiceName: config.ServiceName, + Addr: utils.NewNetAddr("tcp", addr), + Weight: 10, + Tags: nil, + })) + + register(h) + h.Spin() +} + + +// Code generated by hertz generator. + +package user + +import ( + "acquaintances/biz/dal/mysql" + "acquaintances/biz/model" + user "acquaintances/biz/model/user" + "acquaintances/biz/utils" + "context" + "github.com/cloudwego/hertz/pkg/app" + "github.com/cloudwego/hertz/pkg/protocol/consts" + "strconv" +) + +// UpdateUser . +// @router /v1/user/update/:user_id [POST] +func UpdateUser(ctx context.Context, c *app.RequestContext) { + var err error + var req user.UpdateUserRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + if err = mysql.UpdatesUser(&req); err != nil { + c.JSON(consts.StatusInternalServerError, &user.CreateUserResponse{Code: user.Code_DBErr, Msg: err.Error()}) + return + } + resp := new(user.UpdateUserResponse) + + c.JSON(consts.StatusOK, resp) +} + +// DeleteUser . +// @router /v1/user/delete/:user_id [POST] +func DeleteUser(ctx context.Context, c *app.RequestContext) { + var err error + var req user.DeleteUserRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + + resp := new(user.DeleteUserResponse) + + c.JSON(consts.StatusOK, resp) +} + +// QueryUser . +// @router /v1/user/query/ [POST] +func QueryUser(ctx context.Context, c *app.RequestContext) { + var err error + var req user.QueryUserRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + + resp := new(user.QueryUserResponse) + + c.JSON(consts.StatusOK, resp) +} + +// CreateUser . +// @router /v1/user/create/ [POST] +func CreateUser(ctx context.Context, c *app.RequestContext) { + var err error + var req user.CreateUserRequest + err = c.BindAndValidate(&req) + if err != nil { + c.String(consts.StatusBadRequest, err.Error()) + return + } + userId, err := utils.GetID() + if err != nil { + c.String(consts.StatusInternalServerError, err.Error()) + return + } + if err = mysql.CreateUser([]*model.User{ + { + UserID: strconv.FormatInt(userId, 10), + UserName: req.Name, + Gender: req.Gender, + Age: uint8(req.Age), + Mobile: req.Mobile, + Area: req.Area, + UserPassword: req.UserPassword, + }, + }); err != nil { + c.JSON(consts.StatusInternalServerError, &user.CreateUserResponse{Code: user.Code_DBErr, Msg: err.Error()}) + return + } + resp := new(user.CreateUserResponse) + + c.JSON(consts.StatusOK, resp) +}