This commit is contained in:
suyl
2021-07-09 13:35:08 +08:00
parent 91eeb508a2
commit c730727a32
9 changed files with 147 additions and 30 deletions

View File

@@ -1,13 +1,19 @@
package jdshopapi
import (
"bytes"
"crypto/aes"
"crypto/cipher"
"encoding/base64"
"encoding/hex"
"fmt"
"git.rosy.net.cn/baseapi/utils"
"golang.org/x/text/encoding/simplifiedchinese"
"golang.org/x/text/transform"
"io/ioutil"
"math"
"sort"
"strconv"
"testing"
)
@@ -689,7 +695,7 @@ func TestStoreWareDoUpdate(t *testing.T) {
}
func TestStoreUpdatePrice(t *testing.T) {
err := api.StoreUpdatePrice("11.4", 10027605679156, "1000069001")
err := api.StoreUpdatePrice("16", 10033611936135, "1000116473")
if err != nil {
t.Fatal(err)
}
@@ -728,16 +734,112 @@ func TestStoreProductSearch(t *testing.T) {
t.Log(utils.Format4Output(result, false))
}
//二进制转十六进制
func btox(b string) string {
base, _ := strconv.ParseInt(b, 2, 10)
return strconv.FormatInt(base, 16)
}
//十六进制转二进制
func xtob(x string) string {
base, _ := strconv.ParseInt(x, 16, 10)
return strconv.FormatInt(base, 2)
}
func h8l82int(h, l string) (i int64) {
s1, s2 := xtob(h), xtob(l)
flag1 := 8 - len(s1)
flag2 := 8 - len(s2)
for m := 0; m < flag1; m++ {
s1 = "0" + s1
}
for j := 0; j < flag2; j++ {
s2 = "0" + s2
}
i, _ = strconv.ParseInt(s1+s2, 2, 10)
return i
}
func TestUpdateStatus(t *testing.T) {
s := []int{3, 5, 2}
for i := 0; i < len(s)-1; i++ {
for j := 0; j < len(s)-i-1; j++ {
if s[j] < s[j+1] {
temp := s[j]
s[j] = s[j+1]
s[j+1] = temp
}
//data2 := []byte{0x00, 0x01}
//key := RandStringBytes(16)
data, _ := Utf8ToGbk([]byte("<sound>"))
fmt.Println(int2h8l8(int64(len(hex.EncodeToString(data)+"0101")) / 2))
fmt.Println(hex.EncodeToString(data))
fmt.Println(fmt.Sprintf("%x", (len("fd002a0101")+len(hex.EncodeToString(data)))/2))
//result, _ := hex.DecodeString(data2)
//fmt.Println(strconv.FormatInt(255, 16))
//var lenData int64 = 257
//fmt.Println(strconv.FormatInt(lenData, 16)[:2] + "0" + strconv.FormatInt(lenData, 16)[2:])
//var checkSum = 'a'
//for i := 0; i < 5; i++ {
// checkSum++
//}
//fmt.Println(checkSum)
//sv := 55
//// 2 to 10
//fmt.Println(fmt.Sprintf("%b", sv))
//fmt.Println(fmt.Sprintf("%x", sv))
//
//origin2 := fmt.Sprintf("%b", sv)
//flag := 16 - len(origin2)
//for i := 0; i < flag; i++ {
// origin2 = "0" + origin2
// fmt.Println(origin2)
//}
//begin8 := origin2[:8]
//end8 := origin2[8:]
//r1, _ := strconv.ParseInt(begin8, 2, 32)
//r2, _ := strconv.ParseInt(end8, 2, 32)
//fmt.Println(fmt.Sprintf("%x", r1), fmt.Sprintf("%x", r2))
//buf := make([]byte, 1024)
//var i uint8 = 0x2d
//buf = append(buf, i)
//fmt.Println(hex.EncodeToString([]byte{0x1E, 0x00}))
}
func Utf8ToGbk(str []byte) (b []byte, err error) {
r := transform.NewReader(bytes.NewReader(str), simplifiedchinese.GBK.NewEncoder())
b, err = ioutil.ReadAll(r)
if err != nil {
return
}
return
}
func int2h8l8(i int64) (h, l string) {
origin2 := fmt.Sprintf("%b", i)
flag := 16 - len(origin2)
for i := 0; i < flag; i++ {
origin2 = "0" + origin2
}
begin8 := origin2[:8]
end8 := origin2[8:]
r1, _ := strconv.ParseInt(begin8, 2, 32)
r2, _ := strconv.ParseInt(end8, 2, 32)
h = fmt.Sprintf("%x", r1)
l = fmt.Sprintf("%x", r2)
if len(h) < 2 {
h = "0" + h
}
if len(l) < 2 {
l = "0" + l
}
return h, l
}
func Hextob(str string) []byte {
slen := len(str)
bHex := make([]byte, len(str)/2)
ii := 0
for i := 0; i < len(str); i = i + 2 {
if slen != 1 {
ss := string(str[i]) + string(str[i+1])
bt, _ := strconv.ParseInt(ss, 16, 32)
bHex[ii] = byte(bt)
ii = ii + 1
slen = slen - 2
}
}
fmt.Println(s)
return bHex
}