From cda08d331470d4a5897f45621bd77bb5a1fdc916 Mon Sep 17 00:00:00 2001 From: 陆恒 Date: Sun, 26 Apr 2020 09:47:27 +0800 Subject: [PATCH] 提交 --- src/HttpServer/logic/datadef.go | 19 +++++++++++++++++++ src/HttpServer/logic/errordef.go | 1 + src/HttpServer/logic/function.go | 28 ++++++++++++++++++++++++++++ src/HttpServer/logic/httpserver.go | 13 +++++++++++++ src/HttpServer/logic/logic.go | 39 +++++++++++++++++++++++++++++++++++++++ 5 files changed, 100 insertions(+), 0 deletions(-) diff --git a/src/HttpServer/logic/datadef.go b/src/HttpServer/logic/datadef.go index 388a0f9..2c09ab0 100644 --- a/src/HttpServer/logic/datadef.go +++ b/src/HttpServer/logic/datadef.go @@ -527,6 +527,25 @@ type DelFriendResp struct { Result CommonResult `json:"result"` } +type QueryPlayerDataReq struct{ + Token string `json:"token"` + User_id int `json:"user_id"` +} + +type QueryPlayerDataDesc struct { + Player_data GetRecommendListInfo `json:"player_data"` +} + +type QueryPlayerDataResult struct { + Code int `json:"code"` + Data QueryPlayerDataDesc `json:"data"` +} + +type QueryPlayerDataResp struct { + Status string `json:"status"` + Result QueryPlayerDataResult `json:"result"` +} + //********************************************************************************************************** diff --git a/src/HttpServer/logic/errordef.go b/src/HttpServer/logic/errordef.go index 583ffff..1add74f 100644 --- a/src/HttpServer/logic/errordef.go +++ b/src/HttpServer/logic/errordef.go @@ -34,4 +34,5 @@ const ( ERROR_FRIENDAPPROVEFAILED = 29 //好友审批失败 ERROR_FRIENDNOTFRIEND = 30 //不是好友 ERROR_FRIENDDELFRIENDFAILED = 31 //删除好友失败 + ERROR_FRIENDGETFRIENDINFOFAILED = 32 //获取好友信息失败 ) \ No newline at end of file diff --git a/src/HttpServer/logic/function.go b/src/HttpServer/logic/function.go index 8ffee6f..8ef32d1 100644 --- a/src/HttpServer/logic/function.go +++ b/src/HttpServer/logic/function.go @@ -576,6 +576,34 @@ func DelCacheRecommandFriendList(uuid int) error { } +func GetFfiendData(frienduuid int) *GetRecommendListInfo { + tmpext,err := GetUserExt(frienduuid) + if err != nil { + return nil + } + tmpbasic,err := GetUserBasic(frienduuid) + if err != nil { + return nil + } + + tmpinfo := new(GetRecommendListInfo) + tmpinfo.Hot = tmpext.Hot + tmpinfo.Bean = tmpext.Bean + tmpinfo.Userid = tmpext.User_id + tmpinfo.Coin = tmpext.Coin + tmpinfo.Reg_time = tmpext.Reg_time + tmpinfo.Lv = tmpext.Lv + tmpinfo.Exp = tmpext.Exp + tmpinfo.Nickname = tmpbasic.User_nickname + tmpinfo.Avatar_url = tmpbasic.User_avatar_url + tmpinfo.Cat_num = 0 + tmpinfo.City = tmpbasic.User_city + tmpinfo.Gender = tmpbasic.User_gender + tmpinfo.Love_exp = tmpext.LoveExp + tmpinfo.Shop_num = tmpext.ShopNum + return tmpinfo +} + //获取推荐好友列表 func (flist *FriendList)GetRecommandFriendList(uuid,friendnum int) (*GetRecommendListDesc,error) { diff --git a/src/HttpServer/logic/httpserver.go b/src/HttpServer/logic/httpserver.go index 251219a..fd39106 100644 --- a/src/HttpServer/logic/httpserver.go +++ b/src/HttpServer/logic/httpserver.go @@ -52,6 +52,7 @@ func startServerHttpServe() { http.HandleFunc("/catcafe/friend/getRecommendList", GetRecommendList) //获取推荐好友列表 http.HandleFunc("/catcafe/friend/handleFriendRequest", HandleFriendRequest) //处理好友请求 http.HandleFunc("/catcafe/friend/delFriend", DelFriend) //删除好友 + http.HandleFunc("/catcafe/friend/QueryPlayerData", QueryPlayerData) //根据用户id获取用户信息 好友用 err := http.ListenAndServe(conf.GetServerHttpAddrConf(), nil) @@ -59,6 +60,18 @@ func startServerHttpServe() { } +func QueryPlayerData(w http.ResponseWriter, r *http.Request) { + + result, _ := ioutil.ReadAll(r.Body) + r.Body.Close() + + s := string(result) + logger.Info("QueryPlayerData , body:%v,uuid=%v", s) + + HandleQueryPlayerData(w,s) +} + + func DelFriend(w http.ResponseWriter, r *http.Request) { result, _ := ioutil.ReadAll(r.Body) diff --git a/src/HttpServer/logic/logic.go b/src/HttpServer/logic/logic.go index 31306cc..a1d82b2 100644 --- a/src/HttpServer/logic/logic.go +++ b/src/HttpServer/logic/logic.go @@ -1489,4 +1489,43 @@ func HandleDelFriend(w http.ResponseWriter, data string) { //回包 respstr, _ := json.Marshal(&resp) fmt.Fprint(w, string(respstr)) +} + +func HandleQueryPlayerData(w http.ResponseWriter, data string) { + SetHeader(w) + var resp QueryPlayerDataResp + resp.Status = "true" + resp.Result.Code = ERROR_OK + var rdata QueryPlayerDataReq + err := json.Unmarshal([]byte(data), &rdata) + for { + if err != nil { + logger.Error("HandleQueryPlayerData json unmarshal failed=%v", err) + resp.Result.Code = ERROR_JSONUNMASHFAILED + break + } + + uuid,err := GetTouristUid(rdata.Token) + if err != nil || uuid==0{ + logger.Error("HandleQueryPlayerData GetTouristUid failed=%v", err) + resp.Result.Code = ERROR_GETUSERIDFAILED + break + } + + finfo := GetFfiendData(rdata.User_id) + if finfo == nil { + logger.Error("HandleQueryPlayerData ERROR_FRIENDGETFRIENDINFOFAILED failed=%v", err) + resp.Result.Code = ERROR_FRIENDGETFRIENDINFOFAILED + break + } + + resp.Result.Data.Player_data = *finfo + + resp.Result.Code = ERROR_OK + break + } + + //回包 + respstr, _ := json.Marshal(&resp) + fmt.Fprint(w, string(respstr)) } \ No newline at end of file -- libgit2 0.21.0