Commit 3e2f8b162a4b05d8d3bfada4a5bd412183f4ff6b
1 parent
3e014017
Exists in
master
提交
Showing
4 changed files
with
87 additions
and
3 deletions
Show diff stats
src/HttpServer/logic/datadef.go
| @@ -14,6 +14,21 @@ type TestAddCatResp struct { | @@ -14,6 +14,21 @@ type TestAddCatResp struct { | ||
| 14 | Message string `json:"message"` | 14 | Message string `json:"message"` |
| 15 | } | 15 | } |
| 16 | 16 | ||
| 17 | +type ChangeCoinReq struct { | ||
| 18 | + Type int `json:"type"` | ||
| 19 | + Coin string `json:"coin"` | ||
| 20 | +} | ||
| 21 | + | ||
| 22 | +type ChangeCoinData struct { | ||
| 23 | + Coin DoBuyCatCoin `json:"coin"` | ||
| 24 | +} | ||
| 25 | + | ||
| 26 | +type ChangeCoinResp struct { | ||
| 27 | + Code int `json:"code"` | ||
| 28 | + Data ChangeCoinData `json:"data"` | ||
| 29 | + Message string `json:"message"` | ||
| 30 | +} | ||
| 31 | + | ||
| 17 | type UserLoginReq struct { | 32 | type UserLoginReq struct { |
| 18 | Lype int `json:"type"` | 33 | Lype int `json:"type"` |
| 19 | UserId int `json:"userId"` | 34 | UserId int `json:"userId"` |
src/HttpServer/logic/function.go
| @@ -573,8 +573,8 @@ func InitUserInfo(data *UserLoginReq, resp *UserLoginResp, uuid int) { | @@ -573,8 +573,8 @@ func InitUserInfo(data *UserLoginReq, resp *UserLoginResp, uuid int) { | ||
| 573 | 573 | ||
| 574 | d1.Cat = 0 | 574 | d1.Cat = 0 |
| 575 | //d1.Cat = 18 | 575 | //d1.Cat = 18 |
| 576 | - if i < 4 { | ||
| 577 | - d1.Cat = 36 | 576 | + if i < 2 { |
| 577 | + d1.Cat = 1 | ||
| 578 | } | 578 | } |
| 579 | udata.PosInfo = append(udata.PosInfo, d1) | 579 | udata.PosInfo = append(udata.PosInfo, d1) |
| 580 | 580 |
src/HttpServer/logic/httpserver.go
| @@ -109,7 +109,8 @@ func CheckErr(err error) { | @@ -109,7 +109,8 @@ func CheckErr(err error) { | ||
| 109 | 109 | ||
| 110 | func startServerHttpServe() { | 110 | func startServerHttpServe() { |
| 111 | //test | 111 | //test |
| 112 | - http.HandleFunc("/api/test/addCat", TestaddCat) //增加猫 | 112 | + http.HandleFunc("/api/test/addCat", TestaddCat) //增加猫 |
| 113 | + http.HandleFunc("/api/test/changeCoin", ChangeCoin) //增加猫 | ||
| 113 | 114 | ||
| 114 | //real | 115 | //real |
| 115 | http.HandleFunc("/api/account/login", UserLogin) //登录 | 116 | http.HandleFunc("/api/account/login", UserLogin) //登录 |
| @@ -1291,6 +1292,24 @@ func Getrandredbag(w http.ResponseWriter, r *http.Request) { | @@ -1291,6 +1292,24 @@ func Getrandredbag(w http.ResponseWriter, r *http.Request) { | ||
| 1291 | HandlerGetrandredbag(w, s, Uuid) | 1292 | HandlerGetrandredbag(w, s, Uuid) |
| 1292 | } | 1293 | } |
| 1293 | 1294 | ||
| 1295 | +func ChangeCoin(w http.ResponseWriter, r *http.Request) { | ||
| 1296 | + Uuid := 0 | ||
| 1297 | + if len(r.Header) > 0 { | ||
| 1298 | + Uuid, _ = strconv.Atoi(r.Header.Get("uid")) | ||
| 1299 | + } | ||
| 1300 | + if Uuid == 0 { | ||
| 1301 | + SetHeader(w) | ||
| 1302 | + return | ||
| 1303 | + } | ||
| 1304 | + result, _ := ioutil.ReadAll(r.Body) | ||
| 1305 | + r.Body.Close() | ||
| 1306 | + | ||
| 1307 | + s := string(result) | ||
| 1308 | + logger.Info("ChangeCoin , body:%v,uuid=%v", s, Uuid) | ||
| 1309 | + | ||
| 1310 | + HandlerChangeCoin(w, s, Uuid) | ||
| 1311 | +} | ||
| 1312 | + | ||
| 1294 | func TestaddCat(w http.ResponseWriter, r *http.Request) { | 1313 | func TestaddCat(w http.ResponseWriter, r *http.Request) { |
| 1295 | Uuid := 0 | 1314 | Uuid := 0 |
| 1296 | if len(r.Header) > 0 { | 1315 | if len(r.Header) > 0 { |
src/HttpServer/logic/logic.go
| @@ -41,6 +41,55 @@ func SetHeader(w http.ResponseWriter) { | @@ -41,6 +41,55 @@ func SetHeader(w http.ResponseWriter) { | ||
| 41 | 41 | ||
| 42 | } | 42 | } |
| 43 | 43 | ||
| 44 | +func HandlerChangeCoin(w http.ResponseWriter, data string, uuid int) { | ||
| 45 | + SetHeader(w) | ||
| 46 | + var resp ChangeCoinResp | ||
| 47 | + resp.Code = 0 | ||
| 48 | + resp.Message = "success" | ||
| 49 | + var rdata ChangeCoinReq | ||
| 50 | + err := json.Unmarshal([]byte(data), &rdata) | ||
| 51 | + if err != nil { | ||
| 52 | + logger.Info("json decode HandlerChangeCoin data failed:%v,for:%v", err, data) | ||
| 53 | + resp.Message = "json unmarshal failed" | ||
| 54 | + resp.Code = 1 | ||
| 55 | + respstr, _ := json.Marshal(&resp) | ||
| 56 | + logger.Info("###HandlerLogin###rdata:%v", string(respstr)) | ||
| 57 | + fmt.Fprint(w, string(respstr)) | ||
| 58 | + return | ||
| 59 | + } | ||
| 60 | + | ||
| 61 | + for { | ||
| 62 | + | ||
| 63 | + uinfo, err := GetUserInfo(strconv.Itoa(uuid)) | ||
| 64 | + if err != nil || uinfo == nil { | ||
| 65 | + logger.Error("HandlerTestaddCat getuserinfo failed=%v", err) | ||
| 66 | + resp.Code = 1 | ||
| 67 | + resp.Message = "get userinfo failed" | ||
| 68 | + break | ||
| 69 | + } | ||
| 70 | + | ||
| 71 | + addgold, _ := strconv.ParseInt(rdata.Coin, 10, 64) | ||
| 72 | + if rdata.Type == 0 { | ||
| 73 | + uinfo.Gold += addgold | ||
| 74 | + } else { | ||
| 75 | + uinfo.Gold -= addgold | ||
| 76 | + } | ||
| 77 | + | ||
| 78 | + resp.Data.Coin.UserId = uuid | ||
| 79 | + resp.Data.Coin.Coin = strconv.FormatInt(uinfo.Gold, 10) | ||
| 80 | + resp.Data.Coin.IcomeRate = strconv.FormatInt(uinfo.Goldrate, 10) | ||
| 81 | + resp.Data.Coin.UpdateTime = int(time.Now().Unix()) | ||
| 82 | + SaveUserInfo(uinfo, strconv.Itoa(uuid)) | ||
| 83 | + break | ||
| 84 | + } | ||
| 85 | + | ||
| 86 | + //回包 | ||
| 87 | + respstr, _ := json.Marshal(&resp) | ||
| 88 | + fmt.Fprint(w, string(respstr)) | ||
| 89 | + | ||
| 90 | + logger.Info("###HandlerLogin###rdata:%v", string(respstr)) | ||
| 91 | +} | ||
| 92 | + | ||
| 44 | func HandlerTestaddCat(w http.ResponseWriter, data string, uuid int) { | 93 | func HandlerTestaddCat(w http.ResponseWriter, data string, uuid int) { |
| 45 | SetHeader(w) | 94 | SetHeader(w) |
| 46 | var resp TestAddCatResp | 95 | var resp TestAddCatResp |
| @@ -77,6 +126,7 @@ func HandlerTestaddCat(w http.ResponseWriter, data string, uuid int) { | @@ -77,6 +126,7 @@ func HandlerTestaddCat(w http.ResponseWriter, data string, uuid int) { | ||
| 77 | 126 | ||
| 78 | catid, _ := strconv.Atoi(rdata.CatId) | 127 | catid, _ := strconv.Atoi(rdata.CatId) |
| 79 | uinfo.PosInfo[rdata.Position].Cat = catid | 128 | uinfo.PosInfo[rdata.Position].Cat = catid |
| 129 | + uinfo.CalcGoldRate() | ||
| 80 | SaveUserInfo(uinfo, strconv.Itoa(uuid)) | 130 | SaveUserInfo(uinfo, strconv.Itoa(uuid)) |
| 81 | break | 131 | break |
| 82 | } | 132 | } |