From 94b1ac90d5f121a2dea3dc0ecb1edb9f1ce5111c Mon Sep 17 00:00:00 2001 From: 陆恒 Date: Mon, 18 May 2020 11:41:11 +0800 Subject: [PATCH] 提交 --- src/HttpServer/logic/datadef.go | 31 +++++++++++++++++++++++++++++-- src/HttpServer/logic/function.go | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/HttpServer/logic/logic.go | 29 +++++++++++++++++++++-------- 3 files changed, 111 insertions(+), 10 deletions(-) diff --git a/src/HttpServer/logic/datadef.go b/src/HttpServer/logic/datadef.go index 9f14a48..e9006cd 100644 --- a/src/HttpServer/logic/datadef.go +++ b/src/HttpServer/logic/datadef.go @@ -121,6 +121,11 @@ type GetcashResp struct { Data GetcashData `json:"data"` } +type GetcashrecordReq struct { + Gameid string `json:"gameid"` + Channel string `json:"channel"` +} + type GetcashrecordResp struct { Code int `json:"code"` Message string `json:"message"` @@ -250,8 +255,13 @@ type WithDrawList struct { //提现记录结构 type WithDrawRecord struct { - Withdrawtime int `json:"wichdrawtime"` - Withdrawmoney float32 `json:"withdrawmoney"` + Coin int `json:"coin"` + Create_time int `json:"create_time"` + Money int `json:"money"` + No string `json:"no"` + Status int `json:"status"` + Statusmsg string `json:"statusmsg"` + Typ int `json:"typ"` } type WithDrawInfo struct { @@ -337,3 +347,20 @@ type GetCashResp struct { Code string `json:"code"` Msg string `json:"msg"` } + +type GetCashListDesc struct { + Sign string `json:"sign"` + Sign_type string `json:"sign_type"` + Time_stamp string `json:"time_stamp"` + Gameid string `json:"gameid"` + Channel string `json:"channel"` + Uid int `json:"uid"` + Start int `json:"start"` + Number int `json:"number"` +} + +type GetCashListResp struct { + Code string `json:"code"` + Msg string `json:"msg"` + Data []WithDrawRecord `json:"data"` +} diff --git a/src/HttpServer/logic/function.go b/src/HttpServer/logic/function.go index 04e0143..2e979e3 100644 --- a/src/HttpServer/logic/function.go +++ b/src/HttpServer/logic/function.go @@ -981,3 +981,64 @@ func GetCashFromSDK(uuid int, goldnum int, gameid, channel, openid, nickname, he } return newnum, nil } + +func GetCashList(uuid int, gameid string, channel string, start int, number int) (*[]WithDrawRecord, error) { + var paramlist []string + var params GetCashListDesc + params.Sign_type = "md5" + params.Gameid = gameid + params.Channel = channel + params.Uid = uuid + params.Time_stamp = strconv.Itoa(int(time.Now().Unix())) + params.Start = start + params.Number = number + signtypestr := "md5=" + params.Sign_type + timestampstr := "time_stamp=" + strconv.Itoa(int(time.Now().Unix())) + paramgameid := "gameid=" + gameid + pchannel := "channel=" + channel + puid := "uid=" + strconv.Itoa(uuid) + pstart := "start=" + strconv.Itoa(start) + pnumber := "number=" + strconv.Itoa(number) + paramlist = append(paramlist, signtypestr) + paramlist = append(paramlist, timestampstr) + paramlist = append(paramlist, paramgameid) + paramlist = append(paramlist, pchannel) + paramlist = append(paramlist, puid) + paramlist = append(paramlist, pstart) + paramlist = append(paramlist, pnumber) + + sumparam := GettotalParam(paramlist) + //加serverkey + signsum := sumparam + XIAOXINGXING_SERVERKEYTEST + logger.Info("GetCashList sumparam=%v", signsum) + + //进行hash + sign := GetHashValue(signsum) + params.Sign = sign + + bys, err := json.Marshal(¶ms) + if err != nil { + logger.Error("GetCashList failed=%v", err) + return nil, err + } + res, err := DoHttpPost(bys) + if err != nil { + logger.Error("GetCashList failed=%v", err) + return nil, err + } + + logger.Info("GetCashList res=%v", res) + + var resp GetCashListResp + err = json.Unmarshal([]byte(res), &resp) + if err != nil { + logger.Error("GetCoinFromSdk failed=%v", err) + return nil, err + } + + if resp.Code != "0" { + logger.Error("GetCoinFromSdk failed=%v", resp.Msg) + return nil, err + } + return &resp.Data, nil +} diff --git a/src/HttpServer/logic/logic.go b/src/HttpServer/logic/logic.go index 7e920ae..cd5c627 100644 --- a/src/HttpServer/logic/logic.go +++ b/src/HttpServer/logic/logic.go @@ -9,7 +9,6 @@ import ( "fmt" "net/http" "strconv" - "time" ) func HandlerQueryguaninfo(w http.ResponseWriter, data string, uuid int) { @@ -167,7 +166,7 @@ func HandlerGetcash(w http.ResponseWriter, data string, uuid int) { } //需要保存一下提现记录 - data := new(WithDrawRecord) + /*data := new(WithDrawRecord) data.Withdrawmoney = rdata.Money data.Withdrawtime = int(time.Now().Unix()) err = AddWithDrawList(uuid, data) @@ -176,7 +175,7 @@ func HandlerGetcash(w http.ResponseWriter, data string, uuid int) { resp.Message = "网络错误" resp.Code = ERROR_SRV_ERROR break - } + }*/ if info.Isnew == 1 { uinfo.WithDraw.Cashdata[index].Isnew = 0 @@ -569,17 +568,31 @@ func HandlerGetcashrecord(w http.ResponseWriter, data string, uuid int) { SetHeader(w) var resp GetcashrecordResp resp.Code = 0 + var rdata GetcashrecordReq + err := json.Unmarshal([]byte(data), &rdata) for { - list, err := GetWithDrawList(uuid) - if err != nil || list == nil { + if err != nil { + logger.Info("json decode HandlerGetcashrecord data failed:%v,for:%v", err, data) + resp.Message = "json解析错误" + resp.Code = ERROR_JSONUNMASH_ERROR + break + } + // list, err := GetWithDrawList(uuid) + /*if err != nil || list == nil { /*logger.Error("HandlerGetcashrecord failed err=%v", err) resp.Message = "服务器错误" resp.Code = ERROR_SRV_ERROR - break*/ + break + }*/ + list, err := GetCashList(uuid, rdata.Gameid, rdata.Channel, 0, 100) + if err != nil { + logger.Error("HandlerGetcashrecord failed err=%v", err) + resp.Message = "服务器错误" + resp.Code = ERROR_SRV_ERROR + break } - if list != nil { - resp.Data.Withdata = append(resp.Data.Withdata, list.Withdata...) + resp.Data.Withdata = append(resp.Data.Withdata, *list...) } resp.Code = ERROR_OK -- libgit2 0.21.0