Commit dd229061a4a63f0a20eed47d4bd3a0ca03b92681

Authored by 陆恒
1 parent 5e6918b1
Exists in master and in 1 other branch ver2.3.6

提交

Showing 1 changed file with 51 additions and 7 deletions   Show diff stats
src/HttpServer/logic/httpserver.go
@@ -206,11 +206,43 @@ func QueryReadGold(w http.ResponseWriter, r *http.Request) { @@ -206,11 +206,43 @@ func QueryReadGold(w http.ResponseWriter, r *http.Request) {
206 206
207 func Addcoin(w http.ResponseWriter, r *http.Request) { 207 func Addcoin(w http.ResponseWriter, r *http.Request) {
208 SetHeader(w) 208 SetHeader(w)
209 - query := r.URL.Query()  
210 - uuid := query.Get("uuid") //需要加上渠道号 460012  
211 - channel := query.Get("channel")  
212 - uuidnum, _ := strconv.Atoi(uuid)  
213 - uniqueuuid := uuid + channel 209 + type TesaApiData struct {
  210 + Value int `json:"value"`
  211 + Gameid string `json:"gameid"`
  212 + Channel string `json:"channel"`
  213 + }
  214 +
  215 + type AddcoinResp struct {
  216 + Code int `json:"code"`
  217 + Message string `json:"message"`
  218 + }
  219 +
  220 + Uuid := 0
  221 + if len(r.Header) > 0 {
  222 + Uuid, _ = strconv.Atoi(r.Header.Get("Uuid"))
  223 + }
  224 +
  225 + if Uuid == 0 {
  226 + SetHeader(w)
  227 + logger.Error("Uuid is nil!")
  228 + return
  229 + }
  230 + result, _ := ioutil.ReadAll(r.Body)
  231 + r.Body.Close()
  232 +
  233 + s := string(result)
  234 + logger.Info("Addcoin , body:%v,uuid=%v", s, Uuid)
  235 +
  236 + var rdata TesaApiData
  237 + err := json.Unmarshal([]byte(s), &rdata)
  238 +
  239 + if err != nil {
  240 + logger.Info("json decode Addcoin data failed:%v,for:%v", err, s)
  241 + fmt.Fprint(w, "failed")
  242 + return
  243 + }
  244 +
  245 + uniqueuuid := strconv.Itoa(Uuid) + rdata.Channel
214 uinfo, err := GetUserInfo(uniqueuuid) 246 uinfo, err := GetUserInfo(uniqueuuid)
215 if err != nil || uinfo == nil { 247 if err != nil || uinfo == nil {
216 logger.Error("redis failed err=%v", err) 248 logger.Error("redis failed err=%v", err)
@@ -218,12 +250,24 @@ func Addcoin(w http.ResponseWriter, r *http.Request) { @@ -218,12 +250,24 @@ func Addcoin(w http.ResponseWriter, r *http.Request) {
218 return 250 return
219 } 251 }
220 252
  253 + addgold := rdata.Value
  254 + if addgold > 10000 {
  255 + addgold = 10000
  256 + }
221 //调用sdk 257 //调用sdk
222 - gold, err := AddCoinToSdk(uuidnum, 1000, "1001", "SA002", 99) 258 + gold, err := AddCoinToSdk(Uuid, addgold, rdata.Gameid, rdata.Channel, 108)
223 if err != nil { 259 if err != nil {
224 - logger.Error("test ddt! err=%v", err) 260 + logger.Error("Addcoin test ddt! err=%v", err)
225 } 261 }
226 uinfo.RealGold = gold 262 uinfo.RealGold = gold
  263 +
  264 + SaveUserInfo(uinfo,uniqueuuid)
  265 +
  266 + var resp AddcoinResp
  267 + resp.Code = 0
  268 + resp.Message = "success"
  269 + respstr, _ := json.Marshal(&resp)
  270 + fmt.Fprint(w, string(respstr))
227 } 271 }
228 272
229 func Testapi(w http.ResponseWriter, r *http.Request) { 273 func Testapi(w http.ResponseWriter, r *http.Request) {