aa
This commit is contained in:
@@ -7,7 +7,7 @@ import (
|
||||
)
|
||||
|
||||
func TestOrderGet(t *testing.T) {
|
||||
result, err := api.OrderGet("2147234624018417846")
|
||||
result, err := api.OrderGet("5027183668737301717")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
} else {
|
||||
@@ -51,7 +51,7 @@ func TestOrderListAll(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestOrderPartRefundGet(t *testing.T) {
|
||||
result, err := api.OrderPartRefundGet("2127926002950657162")
|
||||
result, err := api.OrderPartRefundGet("5028611225947901495")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
} else {
|
||||
|
||||
@@ -23,7 +23,7 @@ func init() {
|
||||
// sandbox
|
||||
// api = New("594ab45a-9a73-4a43-82b0-a64cbd55d883", "06692746f7224695ad4788ce340bc854", "d6b42a35a7414a5490d811654d745c84")
|
||||
// prod
|
||||
api = New("29afd5a8-f93f-4d4c-9fce-a7297340af59", "1dba76d40cac446ca500c0391a0b6c9d", "a88d031a1e7b462cb1579f12e97fe7f4")
|
||||
api = New("1c14b86e-54f0-4048-9062-c6aed5438578", "1dba76d40cac446ca500c0391a0b6c9d", "a88d031a1e7b462cb1579f12e97fe7f4")
|
||||
// 天天果园
|
||||
//api = New("c45e6510-00ba-4be2-977e-bcb9c9792cc7", "5d5577a2506f41b8b4ec520ba83490f5", "0b01b9eeb15b41dab1c3d05d95c17a26")
|
||||
|
||||
@@ -32,9 +32,10 @@ func init() {
|
||||
// const cookieValue = "YYJV3NHVBPHLD36FWP6F3EM5PTXJ2XZQS7U4HWRIDPP4IWGUKUIB4XG5N26CZRDLDF7PKOXBPD6BNTUAJLETLZOIWMCVFI3K6MYZIY4QBIXIMXYDJNUKFGJVQTN5356SAD6WPCIHWNQAG7DDMF7L7S3SHCT3RM3CQG7IJIPUQ3THS5UIUYWMKINM7ETUOQB7OBPOPZVCT3ZJY55243TDVXLO25PP4UYSPTTPMNQ7HPMWOJKJ3BJWGVHD243MXH7NZWW264TKN5UOCJBSSSOKD2QQII"
|
||||
//const cookieValue = "OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3JWVXCZBKYQN5CW57OZAUUGW26BM5GBMDUKCPJGLYBMEIVPIGG6PY2HOZTQL5PWKCSDJLG7AKSLKUQ422BVJDNQ36DIA74FV7RFQMMQPNJ5YQMCG2M72IH43LZDVSAYZWKUGAVD7VFRMEYTOXYHWCYVDXJ6HYFIPWIN3ULLXDDLN2ICON4GRK"
|
||||
//api.SetJdCookie(cookieValue)
|
||||
// api.SetCookie("user", "GXBMZPW62YXDDG4NE5JDLJJJHWWGJFKML56GHPDEUP6E65UMM4MQ2OB3RYHSEGXGEP5RT55TQZ3PJEXQVYJSNEBNZVY76BZPTRJTZTTZEEJRFHJ4JM5NZ6XI3TEG3X54QBIFC4C5WZUMEN6XHATZBIGB4XKWNNCAAVX4SNS5EIQTQBALUVFPM52OJ3X6L4MONINJDVRVL2UGV6BUPHOMBUWCNPP3AAKAQAXGI3DJA6LUXWO32ILD6E5QHFYGLC6SFRTUQPAUJJXGSGIIZBICUOPVZ7HJW4XPEJFBZU5TAEXOOWKXSK6RWKS6ABQGWC5SHKC73UFVR3WYW3XI5UUIUVWHXTFH6VNYCS4BV5Q")
|
||||
//api.SetCookie("user", "VCQUVHVJI4ELNGFZOYMCDYDUSHEJMPXZRZXSNBRB4MVBNENP72REAAZR3R4SGDJ5ZI4FLYLLN5EGBBMTFCWHZVESIWBNLKZPLHWD6UIBTPXOF5IXM6AVA3V6TUNZD5UJS43AROJ2IRPZWEN5AGZYBUEGD2EWFHHT3AOYXZYY4Q2OLWFTVITE5NEOXZXC5NSQWCV6NZG4LREQ6W2UVRSYWKL4Y6X7FXYIKJXSBSCOJ5OVVBPYJL4VDJUHW3P6D73BS6HG6MBXGIW576I6LGDTS6QISBWMZ4QZKVKOUHWBVIEMWKUWC6B6WPMKTCCKNRJ5MDOXFCWFFRK3ET3YXVE3ATQCURQ67HGQGUZFPZ46FQDYCONJQX6ZPVAQSQPDVL3HDBIIYIYDMWKFWXVFNA7BVVYJ34ADKDSEDLEEF5B2PIQZFLSUSODQ")
|
||||
api.SetCookieWithStr(`
|
||||
user_email=jd_jxcs1223; lsp-store1.jddj.com=OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3IW4E75TESEWTLRSIRJY7FNSYSI5WZ4XWQDVV4PV3ZVLFHE3PCLMACPFRWY4RSS2JEKOV4UE6UWLQHSSVYL7Y3BULPKRXGEGEUZ4AXL75DDUKMJKNYU4OV6SICN2OAQPBB4ANKYUYK6KOCYNU7MPQZRGZ7A3RCFZCSP5UJH6H2OTKVR4EGOCXYTZO2DXT6UDKHMIWF7PCFTVIYAVZV6TUYE43JONRCTQBY2PDBQYCB4ONJOEWAF6KFL3GJ3XH26R6E; __jda=1736810.1798730514.1623120276.1623120276.1623120276.1; __jdb=1736810.1.1798730514%7C1.1623120276; __jdv=1736810%7Cdirect%7C-%7Cnone%7C-; __jdc=1736810; UM_distinctid=179e981ec8517b-00b41f870f4ea8-5b1e341a-1fa400-179e981ec862fc; josl-privilege1.jddj.com=OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3IZEWY6OPWKC2VDB35RUYZNRHU2NWZ4XWQDVV4PV3ZVLFHE3PCLMBCKN37VTMTCRBLW4O6Y7WPLRH7SSVYL7Y3BULPKRXGEGEUZ4AXL7PFRYSKXTJC4DMVDFZGVZRZSYFTS2NHDUVTNCIWKXZIBXNQYVDA5XQBVLCTBLZJYLBWT5R6DGE3H4C4L7R23TYZA5JMSPJU7HE6MGAWXAMIJ7H54ZWWGP56KATLF26DHPBFC7H6AGN62RYAH3GOOTQMZPFOOK3A5M4RSJGLYDIG2YB3HH35HA; o2o-stock1.jddj.com=OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3KQ3WQGC55ESYXPBS6ILUSCUK42NWZ4XWQDVV4PV3ZVLFHE3PCLMBLVZUJXTZCIDNU6MLPP4QF3XBXAMIOV7EVR4JGDPUMIPCVZVKBP5E4RJGGER5KFUQWJBFZJVCAXQUQ; o2o-pms1.jddj.com=OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3KIUOTIFY2QI5CVIA5EBQUVQLHR5WZ4XWQDVV4PV3ZVLFHE3PCLMBTFESYD7DRZ6DIQ5T4DQFJ3PS7YMIOV7EVR4JGDPUMIPCVZVKBP5E4RJGGER5KFUQWJBFZJVCAXQUQ
|
||||
user_email=jd_jxcs1223; lsp-store1.jddj.com=OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3JNOEL2AB3X2CHI2INRIKCSGSOFKPR3OGH5BQEIVFZZB4KTZI7T3U3XO3AAUS2JMCK2Q75R3CSEA66K7RCJWNQLNB7ZW2SHFCPBWKK2WASIPBG2XVFQKS52PYRKBM4MYVZ4ANKYUYK6KOCYNU7MPQZRGZ7A3RCFZCSP5UJH6H2OTKVR4EGOCXYTZO2DXT6UDKHMIWF7PCFTVIYAVZV6TUYE43JONRCTQBY2PDBQYCB4ONJOEWAF6KFL3GJ3XH26R6E; __jdv=1736810%7Cdirect%7C-%7Cnone%7C-; __jdc=1736810; UM_distinctid=17a12b9cc28176-0928164ed7a903-5b1e341a-1fa400-17a12b9cc292e2; __jda=1736810.1704902685.1623811804.1623811804.1623811914.1; __jdb=1736810.2.1704902685%7C1.1623811914; josl-privilege1.jddj.com=OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3J6FF3QXQNY5NFGN2HASJWWNGKB2PR3OGH5BQEIVFZZB4KTZI7T3VYIKV4CINLIKFY47TGTGUH67RN27RCJWNQLNB7ZW2SHFCPBWKK2WBM3Q57WKXFDV4ZFAFGCLYIRHLLVSPMIG6L6KR7Z24OSIUDC7LA7HQBVLCTBLZJYLBWT5R6DGE3H4C4L7R23TYZA5JMSPJU7HE6MGAWXAMIJ7H54ZWWGP56KATLF26DHPBFC7H6AGN62RYAH3GOOTQMZPFOOK3A5M4RSJGLYDIG2YB3HH35HA; o2o-stock1.jddj.com=OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3KYOICOZSHJDAOYASPERU6MKWOV2PR3OGH5BQEIVFZZB4KTZI7T3VRCNUAXLXU5O5WOKOL4XKHF2Z2IMIOV7EVR4JGDPUMIPCVZVKBP5E4RJGGER5KFUQWJBFZJVCAXQUQ; o2o-pms1.jddj.com=OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3LEUGBETUGPLQ2YNFFBWXWG5QQC2PR3OGH5BQEIVFZZB4KTZI7T3URUJ3JOSPDH72IBC54EZ3WO76GAMIOV7EVR4JGDPUMIPCVZVKBP5E4RJGGER5KFUQWJBFZJVCAXQUQ
|
||||
|
||||
`)
|
||||
}
|
||||
|
||||
|
||||
@@ -87,7 +87,7 @@ func TestDeliveryEndOrder(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestGetAfsService(t *testing.T) {
|
||||
result, err := api.GetAfsService("22565438")
|
||||
result, err := api.GetAfsService("33927317")
|
||||
if err != nil {
|
||||
t.Fatal(err.Error())
|
||||
}
|
||||
@@ -103,7 +103,7 @@ func TestGetAfsService2(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestOrderShoudSettlementService2(t *testing.T) {
|
||||
result, err := api.OrderShoudSettlementService2("914508761000241")
|
||||
result, err := api.OrderShoudSettlementService2("2114317310000151")
|
||||
if err != nil {
|
||||
t.Fatal(err.Error())
|
||||
}
|
||||
|
||||
@@ -215,7 +215,7 @@ func TestUpdateClosetStatus(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestGetJdShopOrders(t *testing.T) {
|
||||
result, err := api.GetJdShopOrders("20210412", "20210413", "339032", "jd_jxgy")
|
||||
result, err := api.GetJdShopOrders("20210501", "20210531", "320406", "jd_jxcs1223")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ const (
|
||||
)
|
||||
|
||||
func TestGetStationInfoList(t *testing.T) {
|
||||
result, err := api.GetStationInfoList("11927116", []int64{2023435572})
|
||||
result, err := api.GetStationInfoList("11910721", []int64{2023432263})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ func init() {
|
||||
//api = New("de8157b447584885910f429011e49cb93yjq", "E1D746D42474D5F1F1A10CECE75D99F6", "efa7e1d1a22640fa990e6cf164b28608")
|
||||
api = New("9ad9cf5fc8b140b19a1dbbb700b47676kown", "D5E8352BE0786ED16F77B4548F62F09A", "71e1061ac2f246f6ac27efb900edba12")
|
||||
api.SetCookieWithStr(`
|
||||
__jdu=16193999982702078345144; shshshfpa=972f47df-9252-dc1a-1d6d-40594ce0501b-1619400562; cid=3; retina=0; webp=1; visitkey=44137284214309276; shshshfp=4d574741223da61a369c18ce2febefe8; shshshfpb=msX4%202n384blCOGusOxGDvQ%3D%3D; unpl=V2_ZzNtbREHQ0Z3WBEDc0oJUWJWRg1LBEpHIF1OAylNXgJkVhcKclRCFnUUR1BnGVoUZgoZX0RcQBZFCEVkexhdBGAAE19BVXMlRQtGZHopXAJnCxBVSl9LHHYOR1d6H1UHYgcSWEdncxJ1AXZkSxpZAmIHEG1DZ0EUdAtAUXMaXAxXSHxcD1dEFX0KTlxzEVUGYQIRXEReQRBxCENRSxldBGYCElVAUEIldg%3d%3d; __jdv=122270672|mydisplay.ctfile.com|t_1000620323_|tuiguang|ba1b3aff9bde4dea8b8cdd9fce362d4f|1621211866111; pinId=WMIzMhF5BfI9awOQjAcbdQ; pin=shop_jxcs2020; unick=shop_jxcs2020; _tp=VqmxIvk3BVEJnO6UciQrRA%3D%3D; _pst=shop_jxcs2020; language=zh_CN; 3AB9D23F7A4B3C9B=CKENC5MAUU744ZQDKVRY2L7UIJ23PJRDYJ6HF3ZMQHC5FFD46FMUQXRINFCOC4SKHL5MU3PPNPP4C4AX5ZYBXJ7LZ4; TrackID=17rRzIyvVvKD2hScZz_wtLxnEAOzisQ4g35DEediXp7w0SRDEQf96N9hbzt89mgoZkLwyVwMFvbHTcfe7ThMW1UXZwMNHCv40ZQRvH9ppEDc; ceshi3.com=000; __jda=220467782.16193999982702078345144.1619399998.1621236814.1622010194.7; __jdc=220467782; b-sec=S2JWP6CAFP7K44GG6BEY2DLMRELBY2BVKWF7A3GEWP2F7DXDXCIGNWDGN7N2IVGC3GKCW2HSJ6QNW; __jdb=220467782.4.16193999982702078345144|7.1622010194; thor=5E1D1AE7BBC42FACA3496D9C54AF9F879CF4836860E75FF70BFCDEAC5A75C1C587B5189485351099C7C85DF8B0092AF4FA575CD70E032D3DCDB7BF45632A7BE396941E4883372F2CACA078DBE25223FDDC15311B660F7326BC9255BDE4626C36AF91CC9068548FAFAC702C948CDBEABB949842C36EF7746EBF0C95619399250C56A68181180F3EEE719BA568EA82C645; 3AB9D23F7A4B3C9B=CKENC5MAUU744ZQDKVRY2L7UIJ23PJRDYJ6HF3ZMQHC5FFD46FMUQXRINFCOC4SKHL5MU3PPNPP4C4AX5ZYBXJ7LZ4; _base_=YKH2KDFHMOZBLCUV7NSRBWQUJPBI7JIMU5R3EFJ5UDHJ5LCU7R2NILKK5UJ6GLA2RGYT464UKXAI4Z6HPCTN4UQM3WHVQ4ENFP57OC2NCIWTST4KDNCWZES6EV2TD5XDTCNE6YVKRXISVWNQHZDBO6QEKYXMXGPYGVEOCQCSG4SOQWCP5WPWO6EFS7HEHMRWVKBRVHB33TFD4AUHV3TOJD7MGBX53BNNP2E6MSSOORYGL5H2GYFRURR5ACFJ54GH7PTHFL22YL3C6ODFYFTWGV5UAWCX5C6J372TDCL6LDNEERERTGC4QORANBYQDCHRJLC3L7RQZRPQZVQAQIWW3S2YBFMIMTF6SWAFAQ52UF5TATP7KZIQ; _vender_new_=GI63BGTJFDBQ4KTM333PMOGFGXGN2MWJNA4WUIW4ZGGIVOLTPK5TRV2UVRGJOLSZFF5XPPV376V2IZYUUTIZYUOSJ7XLQQXULY7UZCFHNUYZEPA5K4NKJ62CC6Q756VRE47INBENIPCNYN4MUZRCB27NNIDWST32H7A66G2G3UMJWUPPXMHKRJ4I6UJ43SNLTY755O3QKSMGQHPHSOAKK5R74V6PBVCLI56OPZPR7RNFOAEYFZTP2BSCS5ZMNTWN4HIOX5NUKDT5E75AVXNKX43RBTJ6W255CTVTEQ67VYYOGAEFV3CBL4MM5MFU6T2V7DWAKVLHWY2IK72YOJU4FK5DKJTA3IMVB5YYHJKFB6EHDFUVYEAPRXGVJKSRURJWMYG2DFIPOGB2KRIPRBYZNFOBAB4BBC6T7IT4RBGRQHU63BU24NLT3B722WUBKZ7XZVGJA3N5V5QQZAJ27O3QLTP5M5YE6OWLQPEH5LY76SIQJO62K63LPG6XGQM4I32SFFJR3R5NLQZPFLJTI6K74ICYFOP5LP54YOAU3MF223TH7RBNDQKQZAJGFHE3CEO3PDGTDMTFA3LOKDRYE3RCNZ3IIQEQZ3EKQ7Y7EZPHVW2EPN7W4FOKDTFUR4TGVDUVYWNRZBL6C3GBH4RH36VF6JLZQY; _BELONG_CLIENT_=WPSC4XJXWK5USS4JNZY2X7VRLR5MCBKRSVHEXABGTHDGISIQK5YOLZUXYE7IOIM7MOKO74H6CRN6WHAAR4TMDV3XZWMXZRCRT5XRNE3V356BTOB2Y7LPK66VWQK6HPTGWVXIDXDCPVE3W5WMHAIO6AT2LX2XXVNUCXR34ZWFK6HY45CORGIKOSYDYZBF27WOKTUX6BS4FZMIJWNUX6CB4JAA25ZLF7ZEKYOO4QV5HTSBXGNRM3E242MBI6V5D4C5VJDQ3EOYCOW5BMTUJZACIBHXQFAVLRF76VQY5PNJGGJNBEZHSFYYJA3YORRT7FB5AHCOIFQKF3W5RWNUX6CB4JAA26JNMO7AYWNUPZF5HTSBXGNRM3E242MBI6V5D4C5VJDQ3EOYCOW5BWZDKMOJ5BS6II53ERY6ALV3ZWPF42L4CPUHEGPYIII35KDC4FCNVCORCXFD6IVNLBEDPB2GGP4UHWNRUDOQBDIW7RZJXBA2WV5ANZOTEGUCDWYRVQS2YUTIZNZ276PRYG4N56V6YTII7MBKBC7LYHO7C555HTSBXGNRM3E466AYN67DHWVM5HQFJ4NFDO5BTMT3OICKNUZUXEZUPKTT4DPSKRY
|
||||
shshshfpa=b02d5da7-4399-dacb-d2af-dc8d6c460307-1606980337; shshshfpb=xasBIJG4GQtMArMLGnT8nqQ%3D%3D; pinId=WMIzMhF5BfI9awOQjAcbdQ; pin=shop_jxcs2020; unick=shop_jxcs2020; _tp=VqmxIvk3BVEJnO6UciQrRA%3D%3D; _pst=shop_jxcs2020; areaId=22; ipLoc-djd=22-1930-50946-0; unpl=V2_ZzNtbUdWRxN2XEFTfRpdVWIDElpLBUsdIQ5BVChODw03VEENclRCFnUUR1NnGV0UZwcZXkdcQxdFCEdkeB5fA2AFEFlBZxBFLV0CCyFbMgNuARNVQlBLEXUMdmR4GWwMVwMVXEVfRBBwCURTfR5fAGUFEVxCVkAlRQ92VHoYXwFhBRZVS1BKEXY4dlJ%2bHFQGZTMTbUNnQhZ3CE5XflRcAmYEGlpHUkIXcg5BV34bWgZmAxNeclZzFg%3d%3d; shshshfp=804caa46ddc472b1b54a25f9b53b7ade; __jdv=122270672|baidu-nks|t_262767352_baidunks|cpc|78309169515_0_40572e66720a41168c99e761bfb9afba|1623309854127; language=zh_CN; universityLanguage=zh_CN; xue_userTypeCookieNamefc7ce13825f3df99745a591482296d8="{\"1\":\"POP\"}"; xue_userTypePageCookieNamefc7ce13825f3df99745a591482296d8=1; TrackID=1NYX9aCmNd2K933ni85Uuq6Jijqq9MF5lSBaVjcFdqEeUoPjs42EBInf7aoolL7-0gUveabSMPHTRtpXN0AXoe9G5c_SPyPf-kp-IkDR_R_j4AkzY9__5B_tVNDmb027o; ceshi3.com=000; _vender_=TNK3O6PALVQGHZYSSOH7L4PZFXD2QEMYMFRFF57TELYN4LQLXSPDPQTS2T6DT6Z4JMFC5HGBYZA3LOKB6SNH4AVAREXA5236RRQGSDMMFKYN22HBLPNNNDJ7EQS5NOGALMTLVOQSEBKX4EOVORRD6L536ICPREWPSW6NKQ6V7YP2SC4RQRZVV5L75KYETGWV25ORZ3W5RHKJSP5KHTC62KEHJ47UBOYHQXIXUN5UZ7GEPNC7TTKSCXDHWDFESR5SRKTXITQEBPR3XE3UWSWVOJOKCMSABZJ744URIU5DZHQGTTOSIIB2TWTEHPHQGKVR2KY2YIRYYKXHFV3O2EXPOYB4DVGHJNC24ZWEJW3TBR4STR3FX3WDJKATQGW6ZT5VZYD6MZOT7I46XBLKRWCRQWNBMQKR4MJHRULBANRIS362RD2YKTUSCACWI7HIB3VT23V2JMFUZMOJCWZIS6YK4NPFDV2YMBQG7EPFVAOEWNELCU55YP5A; __jdu=1606964403676243720102; csrf_token=74a4c9c0-570f-4158-b045-1b7df4012b66; _base_=YKH2KDFHMOZBLCUV7NSRBWQUJPBI7JIMU5R3EFJ5UDHJ5LCU7R2NILKK5UJ6GLA2RGYT464UKXAI4Z6HPCTN4UQM3WHVQ4ENFP57OC2NCIWTST4KDNCWZES6EV2TD5XDTCNE6YVKRXISVWNQHZDBO6QEKYXMXGPYGVEOCQCSG4SOQWCP5WPWO6EFS7HEHMRWVKBRVHB33TFD4AUHV3TOJD7MGBX53BNNP2E6MSSOORYGL5H2GYFRURR5ACFJ54GH7PTHFL22YL3C6ODFYFTWGV5UAWCX5C6J372TDCL6LDNEERERTGCV5XXIQKY5TAIDDFOP4HBZEUR7JVQAQIWW3S2YBFMIMTF6SWAFAQ52UF5TATP7KZIQ; _vender_new_=GI63BGTJFDBQ4KTM333PMOGFGXGN2MWJNA4WUIW4ZGGIVOLTPK5TRV2UVRGJOLSZFF5XPPV376V2IZYUUTIZYUOSJ7XLQQXULY7UZCFHNUYZEPA5K4NKJ62CC6Q756VRE47INBENIPCNYN4MUZRCB27NNIDWST32H7A66G2G3UMJWUPPXMHKRJ4I6UJ43SNLTY755O3QKSMGQHPHSOAKK5R74V6PBVCLI56OPZPR7RNFOAEYFZTP2BSCS5ZMNTWN4HIOX5NUKDT5E75AVXNKX43RBTJ6W255CTVTEQ67VYYOGAEFV3CBL4MM5MFU6T2V7DWAKVLHWY2IK72YOJU4FK5DKJCRYEXUPPK4QJK6X4GTL6CC3GHPRXGVJKSRURJWIUOBF5D32XECKXV7BU27QQWZRZ4BBC6T7IT4RBGRQHU63BU24NLT3B722WUBKZ7XZVGJA3N5V5QQZAJ27O3QLTP5M5YE6OWLQPEH5LY76SIQJO62K63LPG6XGQM4I32SFFJR3R5NLQZPFLJTI6K74ICYFOP5LP54YOAU3MF223TH7RBNDQKQZAJGFHE3CEO3PDGTDMTFA3LOKDRYE3RCNZ3IIQEQZ3EKQ7Y7EZPHVW2EPN7W4FOKDTFUR4TGVDUVL7NB524LL5RV3LMV5DL3IFV4VA; b-sec=S2JWP6CAFP7K4UQHUODGXYT4BQ23Y5BGZ2GOUV4LQORS7SMNJUD6SBIWXMFGZVLYE2X2BHAV2MUB4; _BELONG_CLIENT_=WPSC4XJXWK5USS4JNZY2X7VRLR5MCBKRSVHEXABGTHDGISIQK5YOLZUXYE7IOIM7MOKO74H6CRN6WHAAR4TMDV3XZWMXZRCRT5XRNE3V356BTOB2Y7LPK66VWQK6HPTGWVXIDXDCPVE3W5WMHAIO6AT2LX2XXVNUCXR34ZWFK6HY45CORGIKOSYDYZBF27WOKTUX6BS4FZMIJWNUX6CB4JAA25ZLF7ZEKYOO4QV5HTSBXGNRM3E242MBI6V5D4C5VJDQ3EOYCOW5BMTUJZACIBHXQFAVLRF76VQY5PNJGGJNBEZHSFYYJA3YORRT7FB5AHCOIFQKF3W5RWNUX6CB4JAA26JNMO7AYWNUPZF5HTSBXGNRM3E242MBI6V5D4C5VJDQ3EOYCOW5BWZDKMOJ5BS6II53ERY6ALV3ZWPF42L4CPUHEGPYIII35KDC4FCNVCORCXFD6IVNLBEDPB2GGP4UHWNRUDOQBDIW7RZJXBA2WV5ANZOTEGUCDWYRVQS2YUTIZNZ276PRYG4N56V6YTII7MBKBC7LYHO7C555HTSBXGNRM3E466AYN67DHWVM5HQFJ4NFDO5BSZBUIBYJRTMUJ4YKA4SGLHHILPY; chat.jd.com=20170206; thor=5E1D1AE7BBC42FACA3496D9C54AF9F879CF4836860E75FF70BFCDEAC5A75C1C59E32C5FCA1177210BDF4B56945E248C97290DB0237A020EB0E4460CB0ADD3FEDDCEE0B966C725227F9F25B187A1AB6425A1FEA428871F334770D12182781BF22E7C9AE0655B544D733165CE7F072A24B8782C264EAA3ED8D4E07551EE9EEE709A9CED0B34CE276BCC140779786ECA7AB; __jda=122270672.1606964403676243720102.1606964404.1623891720.1623897356.126; __jdb=122270672.1.1606964403676243720102|126.1623897356; __jdc=122270672; 3AB9D23F7A4B3C9B=3LXEVQM6COV5NINMQN77BN64JE2WJ76EIPRTIYTDM7GIU7BHDAMFOVQT7WP33PVNBO2DUGASISKUTTJX65DM4ZME3Y
|
||||
`)
|
||||
// api.SetCookie("thor", "5E1D1AE7BBC42FACA3496D9C54AF9F879CF4836860E75FF70BFCDEAC5A75C1C5E43030CF54E4A3A8F5E760492948E69B763D115FE234A59948BA538A4F7E18F38B80F818E28EAE71F1CF5BFE2D0DC456D56E8BEAEF10D398C709D9A4EB46923C7E63867435BD42996F1570A816FD1B0B247CD9756A1184DD61317D28BBF77F828691684AD6E60801B2BB38F9DE086D73")
|
||||
|
||||
|
||||
@@ -59,7 +59,7 @@ func TestAllOrders(t *testing.T) {
|
||||
result, err := api.AllOrders(&AllOrdersParam{
|
||||
Current: 1,
|
||||
PageSize: 10,
|
||||
OrderCreateDateRange: []string{"2021-04-05 00:00:00", "2021-04-06 23:59:59"},
|
||||
OrderCreateDateRange: []string{"2021-06-17 00:00:00", "2021-06-17 23:59:59"},
|
||||
// OrderID: "118793082128",
|
||||
})
|
||||
if err != nil {
|
||||
@@ -69,7 +69,7 @@ func TestAllOrders(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestOrderDetail(t *testing.T) {
|
||||
result, err := api.OrderDetail("125138699851")
|
||||
result, err := api.OrderDetail("204667541886")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@@ -19,10 +19,10 @@ func init() {
|
||||
baseapi.Init(sugarLogger)
|
||||
|
||||
// 菜市
|
||||
//api = New("589", "a81eb3df418d83d6a1a4b7c572156d2f", "", "")
|
||||
api = New("589", "a81eb3df418d83d6a1a4b7c572156d2f", "", "")
|
||||
|
||||
// 果园
|
||||
api = New("4123", "df2c88338b85f830cebce2a9eab56628", "", "")
|
||||
//api = New("4123", "df2c88338b85f830cebce2a9eab56628", "", "")
|
||||
|
||||
//商超
|
||||
// api = New("5873", "41c479790a76f86326f89e8048964739", "", "token_tE0txRtx7CRuPIOjh2BH4w") //token_nH_IlcWQKAkZBqklwItNRw
|
||||
|
||||
@@ -97,7 +97,7 @@ func TestOrderGetRiderInfoPhoneNumber(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestGetOrderRefundDetail(t *testing.T) {
|
||||
result, err := api.GetOrderRefundDetail(25236870166465610, RefundTypePart)
|
||||
result, err := api.GetOrderRefundDetail(94310371440052951, 0)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
@@ -7,6 +7,11 @@ const (
|
||||
|
||||
ticketType = "wx_card"
|
||||
authType = 0 //Int 是 授权类型,0:开票授权,1:填写字段开票授权,2:领票授权
|
||||
//图片(image)、视频(video)、语音 (voice)、图文(news)
|
||||
MaterialTypeImage = "image"
|
||||
MaterialTypeVideo = "video"
|
||||
MaterialTypeVoice = "voice"
|
||||
MaterialTypeNews = "news"
|
||||
)
|
||||
|
||||
type CBUserInfo struct {
|
||||
@@ -115,3 +120,52 @@ func (a *API) CBGetTicketInfo() (ticketInfo *CBTicketInfo, err error) {
|
||||
}
|
||||
return ticketInfo, err
|
||||
}
|
||||
|
||||
type CBBatchgetMaterialResult struct {
|
||||
Item []struct {
|
||||
MediaID string `json:"media_id"`
|
||||
Content struct {
|
||||
NewsItem []struct {
|
||||
Title string `json:"title"`
|
||||
Author string `json:"author"`
|
||||
Digest string `json:"digest"`
|
||||
Content string `json:"content"`
|
||||
ContentSourceURL string `json:"content_source_url"`
|
||||
ThumbMediaID string `json:"thumb_media_id"`
|
||||
ShowCoverPic int `json:"show_cover_pic"`
|
||||
URL string `json:"url"`
|
||||
ThumbURL string `json:"thumb_url"`
|
||||
NeedOpenComment int `json:"need_open_comment"`
|
||||
OnlyFansCanComment int `json:"only_fans_can_comment"`
|
||||
} `json:"news_item"`
|
||||
CreateTime int `json:"create_time"`
|
||||
UpdateTime int `json:"update_time"`
|
||||
} `json:"content"`
|
||||
UpdateTime int `json:"update_time"`
|
||||
} `json:"item"`
|
||||
TotalCount int `json:"total_count"`
|
||||
ItemCount int `json:"item_count"`
|
||||
}
|
||||
|
||||
//获取素材列表
|
||||
func (a *API) CBBatchgetMaterial(mediaType string, offset, count int) (ticketInfo *CBBatchgetMaterialResult, err error) {
|
||||
bodyJson := map[string]interface{}{
|
||||
"type": mediaType,
|
||||
"offset": offset,
|
||||
"count": count,
|
||||
}
|
||||
result, err := a.AccessAPI("cgi-bin/material/batchget_material", nil, string(utils.MustMarshal(bodyJson)))
|
||||
if err == nil {
|
||||
err = utils.Map2StructByJson(result, &ticketInfo, false)
|
||||
}
|
||||
return ticketInfo, err
|
||||
}
|
||||
|
||||
//上传图片
|
||||
func (a *API) CBUploadImg(data []byte, fileName, contentType string) (url string, err error) {
|
||||
result, err := a.AccessAPIUpload(data, fileName, contentType)
|
||||
if err == nil {
|
||||
return result["url"].(string), err
|
||||
}
|
||||
return url, err
|
||||
}
|
||||
|
||||
@@ -1,6 +1,11 @@
|
||||
package weixinapi
|
||||
|
||||
import (
|
||||
"crypto/md5"
|
||||
"fmt"
|
||||
"git.rosy.net.cn/baseapi/platformapi"
|
||||
"io/ioutil"
|
||||
"net/http"
|
||||
"testing"
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
@@ -58,3 +63,35 @@ func TestCBGetTicketInfo(t *testing.T) {
|
||||
}
|
||||
t.Log(utils.Format4Output(userInfo, false))
|
||||
}
|
||||
|
||||
func TestCBBatchgetMaterial(t *testing.T) {
|
||||
userInfo, err := api.CBBatchgetMaterial(MaterialTypeNews, 19, 1)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
t.Log(utils.Format4Output(userInfo, false))
|
||||
}
|
||||
|
||||
func TestCBUploadImg(t *testing.T) {
|
||||
data, _, _ := DownloadFileByURL("https://image.jxc4.com/noGoodsImg.jpg")
|
||||
result, err := api.CBUploadImg(data, "noGoodsImg.jpg", "image/jpeg")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
t.Log(utils.Format4Output(result, false))
|
||||
}
|
||||
|
||||
func DownloadFileByURL(fileURL string) (bodyData []byte, fileMD5 string, err error) {
|
||||
response, err := http.Get(fileURL)
|
||||
if err == nil {
|
||||
defer response.Body.Close()
|
||||
if response.StatusCode == http.StatusOK {
|
||||
if bodyData, err = ioutil.ReadAll(response.Body); err == nil {
|
||||
fileMD5 = fmt.Sprintf("%X", md5.Sum(bodyData))
|
||||
}
|
||||
} else {
|
||||
err = platformapi.ErrHTTPCodeIsNot200
|
||||
}
|
||||
}
|
||||
return bodyData, fileMD5, err
|
||||
}
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
package weixinapi
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"fmt"
|
||||
"math/rand"
|
||||
"mime/multipart"
|
||||
"net/http"
|
||||
"net/textproto"
|
||||
"strings"
|
||||
"sync"
|
||||
|
||||
@@ -17,6 +21,8 @@ const (
|
||||
const (
|
||||
ResponseCodeBusy = -1
|
||||
ResponseCodeSuccess = 0
|
||||
|
||||
letterBytes = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||
)
|
||||
|
||||
type TokenInfo struct {
|
||||
@@ -129,3 +135,78 @@ func (a *API) AccessAPI(action string, params map[string]interface{}, body strin
|
||||
})
|
||||
return retVal, err
|
||||
}
|
||||
|
||||
func RandStringBytes(n int) string {
|
||||
b := make([]byte, n)
|
||||
for i := range b {
|
||||
b[i] = letterBytes[rand.Intn(len(letterBytes))]
|
||||
}
|
||||
return string(b)
|
||||
}
|
||||
|
||||
func getBoundary() (boundary string) {
|
||||
boundary = "----WebKitFormBoundary"
|
||||
boundary += RandStringBytes(16)
|
||||
return boundary
|
||||
}
|
||||
|
||||
func (a *API) AccessAPIUpload(data []byte, fileName, contentType string) (retVal map[string]interface{}, err error) {
|
||||
params2 := make(map[string]interface{})
|
||||
accessToken := a.CBGetToken()
|
||||
if accessToken == "" {
|
||||
panic("token is empty!")
|
||||
}
|
||||
params2["access_token"] = accessToken
|
||||
fullURL := utils.GenerateGetURL(prodURL, "cgi-bin/media/uploadimg", params2)
|
||||
// baseapi.SugarLogger.Debug(fullURL)
|
||||
// 实例化multipart
|
||||
body := &bytes.Buffer{}
|
||||
writer := multipart.NewWriter(body)
|
||||
writer.SetBoundary(getBoundary())
|
||||
// 创建multipart 文件字段
|
||||
h := make(textproto.MIMEHeader)
|
||||
h.Set("Content-Disposition",
|
||||
fmt.Sprintf(`form-data; name="%s"; filename="%s"`,
|
||||
"media", fileName))
|
||||
h.Set("Content-Type", contentType)
|
||||
part, err := writer.CreatePart(h)
|
||||
// 写入文件数据到multipart,和读取本地文件方法的唯一区别
|
||||
_, err = part.Write(data)
|
||||
//将额外参数也写入到multipart
|
||||
//_ = writer.WriteField("media", fileName)
|
||||
err = writer.Close()
|
||||
err = platformapi.AccessPlatformAPIWithRetry(a.client,
|
||||
func() *http.Request {
|
||||
request, _ := http.NewRequest(http.MethodPost, fullURL, body)
|
||||
request.Header.Set("Content-Type", writer.FormDataContentType())
|
||||
return request
|
||||
},
|
||||
a.config,
|
||||
func(response *http.Response, bodyStr string, jsonResult1 map[string]interface{}) (errLevel string, err error) {
|
||||
if jsonResult1 == nil {
|
||||
return platformapi.ErrLevelRecoverableErr, fmt.Errorf("mapData is nil")
|
||||
}
|
||||
var errInfo *ErrorInfo
|
||||
// 微信的返回值,在错误与正常情况下,结构是完全不一样的
|
||||
if errCode, ok := jsonResult1["errcode"]; ok {
|
||||
errInfo = &ErrorInfo{
|
||||
ErrCode: int(utils.MustInterface2Int64(errCode)),
|
||||
ErrMsg: jsonResult1["errmsg"].(string),
|
||||
}
|
||||
if errInfo.ErrCode == 0 {
|
||||
retVal = jsonResult1
|
||||
}
|
||||
} else {
|
||||
retVal = jsonResult1
|
||||
}
|
||||
if retVal != nil {
|
||||
return platformapi.ErrLevelSuccess, nil
|
||||
}
|
||||
newErr := utils.NewErrorIntCode(errInfo.ErrMsg, errInfo.ErrCode)
|
||||
if errInfo.ErrCode == ResponseCodeBusy {
|
||||
return platformapi.ErrLevelRecoverableErr, newErr
|
||||
}
|
||||
return platformapi.ErrLevelCodeIsNotOK, newErr
|
||||
})
|
||||
return retVal, err
|
||||
}
|
||||
|
||||
@@ -23,11 +23,11 @@ func init() {
|
||||
// api = New("wxbf235770edaabc5c", "ba32b269a068a5b72486a0beafd171e8")
|
||||
|
||||
// // prod
|
||||
// api = New("wx2bb99eb5d2c9b82c", "6bbbed1443cc062c20a015a64c07a531")
|
||||
api = New("wx2bb99eb5d2c9b82c", "6bbbed1443cc062c20a015a64c07a531")
|
||||
|
||||
//weixinapp
|
||||
api = New("wx18111a41fd17f24f", "c79ac6e1b2d6d7968e72a9658a8b6715")
|
||||
// api.CBSetToken("43_ZotOV6kJJjqc4H9blBhwxbXpSmY1LMOv13lxYRL44FQ1icX0nnnAGt5-pNWDVSuaVK3IrYoxR1xY6AGeY5XHsjCgwymwT009y6uDyo7mB8suHrSUP-2vCWHk8Q0Ff8FQHVsTnxBo8NicLeUAPYJjAEASBM")
|
||||
//api = New("wx18111a41fd17f24f", "c79ac6e1b2d6d7968e72a9658a8b6715")
|
||||
api.CBSetToken("46_Cj1HI_V-qSBMFLvS0L-Xot-mYJEFhKK5apzHURNV83IPCGMj66X2TGo4Zqtr4nkwpZY3bBNaQhPzKjseBXL9JcyTp0h3i-idLHPCukqz7QO-kV7zycv_Cp6HZyhpsxyyFwobd4DIONbfYTQrCSNaAEAGWR")
|
||||
}
|
||||
|
||||
func handleError(t *testing.T, err error) {
|
||||
|
||||
Reference in New Issue
Block a user