You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
198 lines
6.6 KiB
Go
198 lines
6.6 KiB
Go
package cmd
|
|
|
|
import (
|
|
"crypto/md5"
|
|
"encoding/base64"
|
|
"encoding/hex"
|
|
"encoding/json"
|
|
"fmt"
|
|
"log"
|
|
"strconv"
|
|
"time"
|
|
|
|
"github.com/mizuki1412/go-core-kit/class/exception"
|
|
"github.com/mizuki1412/go-core-kit/service/logkit"
|
|
"github.com/spf13/cast"
|
|
"github.com/spf13/cobra"
|
|
"github.com/tidwall/gjson"
|
|
"github.com/xuri/excelize/v2"
|
|
)
|
|
|
|
func init() {
|
|
rootCmd.AddCommand(testCmd)
|
|
}
|
|
|
|
var testCmd = &cobra.Command{
|
|
Use: "test",
|
|
Short: "Only for test",
|
|
Run: func(cmd *cobra.Command, args []string) {
|
|
fff()
|
|
},
|
|
}
|
|
|
|
func md5str(s string) string {
|
|
h := md5.Sum([]byte(s))
|
|
return hex.EncodeToString(h[:])
|
|
}
|
|
|
|
func getToken(timestamp, systemCode string) string {
|
|
return md5str(timestamp + systemCode)
|
|
}
|
|
|
|
func getPostKey(data interface{}) string {
|
|
b, _ := json.Marshal(data)
|
|
return base64.StdEncoding.EncodeToString(b)
|
|
}
|
|
|
|
func fff() {
|
|
systemCode := "3axgoA2bKgTjANbCPaeKMkeGe/8uTzyv17kjLC0CWV7fyM3keJwlg0WWyeYsXCWrm40/i7cL1TMsY4zThYj3dkKEnmCqRhMiRYJ7n/0l0dMLsKeFHDStUL1HSfQ/WjFQ9cWnR5Jm/MUD/F2w9SkmOTwU5jT6zZ7gG2SV3AzCh/IFo+BE7KWY1tkrH+xCPRWGRDCOHOGAI8JbDHSBMpbvU2eWTUfZyjMTzzvTu++3CN6OWMqigMP3O07NkcKXhhn9L4CJtigxPdTBN3ubKLRGcId+7JmJGvI4sCJBMEky913nDtqyr/8iORDZI7xT/QUUQYBwSs2ys5HsbJv7C7jAURUt5UhTS0CRqTxVlkUKm6iS0/e6MxODvcIYb6eUopOTzUhQu7KSj4CELD9v3oxJXARN+kXLFZ3LukRTe8Oo+PgTxZS2jgc5hMLpT4G9eBkHXoIPrx8ddGwik2q1xhSX1VviJSU5JtM6HtM1m5BfBV0" // 👈 从前端拿到
|
|
|
|
timestamp := "20260415123456000" // 按页面格式生成
|
|
token := getToken(timestamp, systemCode)
|
|
|
|
data := map[string]interface{}{
|
|
"evtTime": timestamp,
|
|
"token": token,
|
|
}
|
|
|
|
postKey := getPostKey(data)
|
|
|
|
fmt.Println("token:", token)
|
|
fmt.Println("postKey:", postKey)
|
|
}
|
|
|
|
func extractColumnsLoss() {
|
|
// 打开 Excel 文件
|
|
f, err := excelize.OpenFile("/Users/leo/Documents/竣工与调度光衰单 (21).xlsx")
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
|
|
// 获取表格的所有行
|
|
rows, err := f.GetRows("{worksheet}") // 假设表格在"{worksheet}"中
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
|
|
// 创建一个二维数组来存储提取的数据
|
|
var data []string
|
|
|
|
// 遍历每一行,提取 A, C, BH 列的数据
|
|
for i, row := range rows {
|
|
// 跳过表头
|
|
if i == 0 {
|
|
continue
|
|
}
|
|
// 获取 AO 列的数据
|
|
if len(row) > 40 {
|
|
data = append(data, row[40]) // AC列
|
|
}
|
|
}
|
|
for i, row := range data {
|
|
resp, err := lawClient.R().
|
|
SetHeaders(map[string]string{
|
|
"Authorization": "eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIxNTY1NzE3NTEyNCIsInVzZXJJZCI6IjE2NjUiLCJuYW1lIjoi6K646ZyW5Y2TIiwiZXhwIjoxNzYxOTE2NTAwLCJuYmYiOjE3NjE4OTg1MDB9.DBqqShxxp5dwLrKYzuKFneRnqQub5V5ocbwFSAa5DvmHww3iWWAHLRD9bPkoE20CSDqcVjOj2MjkttaT3EarYqVhPxTdXtS0rddWTZaRDiMkO5GOFRvdlb-404h2YCUtxoubM0033v9jBKF_VgjMphUo_w8VjizqzcouucBlNtE",
|
|
"Content-type": "application/json;charset=UTF-8",
|
|
"Cookie": "Admin-Token=eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIxNTY1NzE3NTEyNCIsInVzZXJJZCI6IjE2NjUiLCJuYW1lIjoi6K646ZyW5Y2TIiwiZXhwIjoxNzYxOTE2NTAwLCJuYmYiOjE3NjE4OTg1MDB9.DBqqShxxp5dwLrKYzuKFneRnqQub5V5ocbwFSAa5DvmHww3iWWAHLRD9bPkoE20CSDqcVjOj2MjkttaT3EarYqVhPxTdXtS0rddWTZaRDiMkO5GOFRvdlb-404h2YCUtxoubM0033v9jBKF_VgjMphUo_w8VjizqzcouucBlNtE; sysName=%E8%AE%B8%E9%9C%96%E5%8D%93",
|
|
}).SetBody(map[string]interface{}{
|
|
"endTime": cast.ToString(time.Now().Format("2006-01-02")),
|
|
"eqpLoid": row,
|
|
"limit": "10",
|
|
"page": 1,
|
|
"startTime": cast.ToString(time.Now().AddDate(0, 0, -4).Format("2006-01-02")),
|
|
"userName": "许霖卓",
|
|
}).Post("http://10.20.219.85:9527/api/view/onuCon/queryOnuInfoList")
|
|
if err != nil || resp.IsError() || resp.StatusCode() != 200 {
|
|
fmt.Println(err)
|
|
} else {
|
|
res := gjson.Get(resp.String(), "data.rows").Array()
|
|
if len(res) > 0 {
|
|
f.SetCellValue("{worksheet}", "AZ"+strconv.Itoa(i+2), res[0].Get("onu_rx_power").String())
|
|
}
|
|
if len(res) > 1 {
|
|
f.SetCellValue("{worksheet}", "BA"+strconv.Itoa(i+2), res[1].Get("onu_rx_power").String())
|
|
}
|
|
if len(res) > 2 {
|
|
f.SetCellValue("{worksheet}", "BB"+strconv.Itoa(i+2), res[2].Get("onu_rx_power").String())
|
|
}
|
|
if len(res) > 3 {
|
|
f.SetCellValue("{worksheet}", "BC"+strconv.Itoa(i+2), res[3].Get("onu_rx_power").String())
|
|
}
|
|
if len(res) > 4 {
|
|
f.SetCellValue("{worksheet}", "BD"+strconv.Itoa(i+2), res[4].Get("onu_rx_power").String())
|
|
}
|
|
}
|
|
}
|
|
if err := f.SaveAs("/Users/leo/Documents/竣工与调度光衰单 (21).xlsx"); err != nil {
|
|
fmt.Println(err)
|
|
}
|
|
logkit.Info("生成结束...")
|
|
}
|
|
|
|
func extractColumns() {
|
|
// 打开 Excel 文件
|
|
f, err := excelize.OpenFile("/Users/leo/Documents/副本电子围栏---林斌1.16.xlsx")
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
|
|
// 获取表格的所有行
|
|
rows, err := f.GetRows("李强") // 假设表格在"Sheet1"中
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
|
|
// 创建一个二维数组来存储提取的数据
|
|
var data [][]string
|
|
|
|
// 遍历每一行,提取 A, C, BH 列的数据
|
|
for i, row := range rows {
|
|
// 跳过表头
|
|
if i == 0 {
|
|
continue
|
|
}
|
|
|
|
// 获取 A, C, BH 列的数据
|
|
var rowData []string
|
|
if len(row) > 0 {
|
|
rowData = append(rowData, row[0]) // A列
|
|
}
|
|
if len(row) > 2 {
|
|
rowData = append(rowData, row[2]) // C列
|
|
}
|
|
if len(row) > 28 {
|
|
rowData = append(rowData, row[28]) // AC列
|
|
}
|
|
|
|
// 将这一行数据添加到二维数组中
|
|
if len(rowData) > 0 {
|
|
data = append(data, rowData)
|
|
}
|
|
}
|
|
|
|
// 输出提取的数据
|
|
for _, row := range data {
|
|
fmt.Println(row)
|
|
resp, err := lawClient.R().
|
|
SetHeaders(map[string]string{
|
|
"Authorization": "eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIxNTY1NzE3NjI2OSIsInVzZXJJZCI6IjEwMTUiLCJuYW1lIjoi6a2P5beN5beNIiwiZXhwIjoxNzM3MDI1MDc1LCJuYmYiOjE3MzcwMDcwNzV9.TG-Bk0CbwzavOl1RKszTDVYrBEZUoyY8EhXAS_Q8HRkJj_CyzPj_SfAc2sJnejarxh4hfVK0FkIU6GiVPMm67OhKUQCN1FnBWspXNFihIdnsaS9WDB4o_BCI16gV5dUxEQ3TjL3Ok4vMBnzk0rPdQJmU-3DphCmo7f_AS6BM46s",
|
|
"Content-type": "application/json;charset=UTF-8",
|
|
"Cookie": "Admin-Token=eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIxNTY1NzE3NjI2OSIsInVzZXJJZCI6IjEwMTUiLCJuYW1lIjoi6a2P5beN5beNIiwiZXhwIjoxNzM3MDI1MDc1LCJuYmYiOjE3MzcwMDcwNzV9.TG-Bk0CbwzavOl1RKszTDVYrBEZUoyY8EhXAS_Q8HRkJj_CyzPj_SfAc2sJnejarxh4hfVK0FkIU6GiVPMm67OhKUQCN1FnBWspXNFihIdnsaS9WDB4o_BCI16gV5dUxEQ3TjL3Ok4vMBnzk0rPdQJmU-3DphCmo7f_AS6BM46s; sysName=%E9%AD%8F%E5%B7%8D%E5%B7%8D",
|
|
}).SetBody(map[string]interface{}{
|
|
"dzwlCode": row[2],
|
|
"dzwlId": cast.ToInt64(row[0]),
|
|
"remarks": "其他",
|
|
"sevenAddrId": row[1],
|
|
"userId": "15657176269",
|
|
"zprName": "林斌",
|
|
"zprPhone": "15657178035",
|
|
}).Post("http://10.20.219.85:9527/api/resourceView/dzwl/updDzwlZpr")
|
|
if err != nil || resp.IsError() || resp.StatusCode() != 200 {
|
|
fmt.Println(err)
|
|
panic(exception.New("失败" + row[1]))
|
|
} else {
|
|
fmt.Println("ok" + row[1] + resp.String())
|
|
}
|
|
}
|
|
}
|