svip_user_charge.go 2.5 KB
Newer Older
hujiebin's avatar
hujiebin committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
package main

import (
	"encoding/json"
	"fmt"
	"github.com/tealeg/xlsx"
	"io/ioutil"
	"net/http"
)

type AutoGenerated34 struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	Data    struct {
		Total int `json:"total"`
		Data  []struct {
			UserID      int    `json:"userId"`
			Date        string `json:"date"`
			Country     string `json:"country"`
			UserCode    string `json:"userCode"`
			UserName    string `json:"userName"`
			ChargeMoney string `json:"chargeMoney"`
			HaveFirst   int    `json:"haveFirst"`
			RegisterAt  string `json:"registerAt"`
			SvipLevel   int    `json:"svipLevel"`
		} `json:"data"`
	} `json:"data"`
}

func ats34(a interface{}) string {
	return fmt.Sprintf("%v", a)
}

func main() {
hujiebin's avatar
1  
hujiebin committed
35
	url := "https://apiv2.faceline.live/v1/stats/charge/user?lang=zh-cn&diamondType=2&beginDate=2023-10-01&endDate=2023-10-31&pageIndex=1&pageSize=10000&country=All&code=&area=1&timezone=1"
hujiebin's avatar
hujiebin committed
36 37 38 39 40 41 42 43 44 45
	method := "GET"

	client := &http.Client{}
	req, err := http.NewRequest(method, url, nil)

	if err != nil {
		fmt.Println(err)
		return
	}
	req.Header.Add("nonce", "hilo")
hujiebin's avatar
1  
hujiebin committed
46
	req.Header.Add("token", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJVc2VySWQiOjI1MSwiRXh0ZXJuYWxJZCI6IiIsImV4cCI6MTcwMTIyNTI5Nn0.YIz5lhgvqIxgmK0lLXICUhiISHNP4_g-LHsg4foL-qc")
hujiebin's avatar
hujiebin committed
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63

	res, err := client.Do(req)
	if err != nil {
		fmt.Println(err)
		return
	}
	defer res.Body.Close()

	body, err := ioutil.ReadAll(res.Body)
	if err != nil {
		panic(err)
	}
	var response = new(AutoGenerated34)
	err = json.Unmarshal(body, &response)
	if err != nil {
		panic(err)
	}
hujiebin's avatar
1  
hujiebin committed
64
	excelFileName := fmt.Sprintf("./粉钻充值10月-沙特时间.xlsx")
hujiebin's avatar
hujiebin committed
65 66 67 68 69 70 71 72 73 74 75 76 77
	xlFile := xlsx.NewFile()
	sheet, _ := xlFile.AddSheet("charge")
	row := sheet.AddRow()
	c1, c2, c3, c4, c5, c6, c7, c8 := row.AddCell(), row.AddCell(), row.AddCell(), row.AddCell(), row.AddCell(), row.AddCell(), row.AddCell(), row.AddCell()
	c1.Value, c2.Value, c3.Value, c4.Value, c5.Value, c6.Value, c7.Value, c8.Value = "日期", "国家", "用户ID", "用户昵称", "充值金额", "注册时间", "是否举办首场活动", "svip等级"
	for _, d := range response.Data.Data {
		row := sheet.AddRow()
		c1, c2, c3, c4, c5, c6, c7, c8 := row.AddCell(), row.AddCell(), row.AddCell(), row.AddCell(), row.AddCell(), row.AddCell(), row.AddCell(), row.AddCell()
		c1.Value, c2.Value, c3.Value, c4.Value, c5.Value, c6.Value = ats34(d.Date), ats34(d.Country), ats34(d.UserCode), ats34(d.UserName), ats34(d.ChargeMoney), ats34(d.RegisterAt)
		c7.Value, c8.Value = ats34(d.HaveFirst), ats34(d.SvipLevel)
	}
	_ = xlFile.Save(excelFileName)
}