diff --git a/assets/as/getOtherUserCard.json b/assets/as/getOtherUserCard.json new file mode 100644 index 0000000..3e79efe --- /dev/null +++ b/assets/as/getOtherUserCard.json @@ -0,0 +1,3 @@ +{ + "other_user_card": "USER_CARD_INFO" +} \ No newline at end of file diff --git a/model/login.go b/model/login.go index 50a9cc9..99aa80c 100644 --- a/model/login.go +++ b/model/login.go @@ -462,6 +462,12 @@ type AsMvpInfo struct { AppealCount int64 `json:"appeal_count"` } +// AsUserCardReq ... +type AsUserCardReq struct { + UserID int64 `json:"user_id"` + CardMasterID int64 `json:"card_master_id"` +} + // AsReq ... type AsReq interface{} diff --git a/router/router.go b/router/router.go index 1184670..c852ac7 100644 --- a/router/router.go +++ b/router/router.go @@ -982,6 +982,45 @@ func AsRouter(r *gin.Engine) { resp := SignResp(ctx.GetString("ep"), liveFinishResp, sessionKey) + ctx.Header("Content-Type", "application/json") + ctx.String(http.StatusOK, resp) + }) + s.POST("/card/getOtherUserCard", func(ctx *gin.Context) { + reqBody := gjson.Parse(ctx.GetString("reqBody")).Array()[0] + // fmt.Println(reqBody.String()) + + userCardReq := model.AsUserCardReq{} + if err := json.Unmarshal([]byte(reqBody.String()), &userCardReq); err != nil { + panic(err) + } + // fmt.Println(liveStartReq) + + var cardInfo string + partnerResp := gjson.Parse(utils.ReadAllText("assets/as/fetchLivePartners.json")).Get("partner_select_state.live_partners") + partnerResp.ForEach(func(k, v gjson.Result) bool { + userId := v.Get("user_id").Int() + if userId == userCardReq.UserID { + v.Get("card_by_category").ForEach(func(kk, vv gjson.Result) bool { + if vv.IsObject() { + cardId := vv.Get("card_master_id").Int() + if cardId == userCardReq.CardMasterID { + cardInfo = vv.String() + // fmt.Println(cardInfo) + return false + } + } + return true + }) + return false + } + return true + }) + + userCardResp := utils.ReadAllText("assets/as/getOtherUserCard.json") + userCardResp = strings.ReplaceAll(userCardResp, `"USER_CARD_INFO"`, cardInfo) + + resp := SignResp(ctx.GetString("ep"), userCardResp, sessionKey) + ctx.Header("Content-Type", "application/json") ctx.String(http.StatusOK, resp) })