Merge branch 'master' of https://e.coding.net/rosydev/baseapi
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
package dadaapi
|
||||
|
||||
import "go.uber.org/zap"
|
||||
import (
|
||||
"git.rosy.net.cn/baseapi"
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
//
|
||||
//import (
|
||||
@@ -24,32 +27,33 @@ var (
|
||||
// testShopNo = "11047059"
|
||||
//)
|
||||
//
|
||||
//func init() {
|
||||
// logger, _ := zap.NewDevelopment()
|
||||
// sugarLogger = logger.Sugar()
|
||||
// baseapi.Init(sugarLogger)
|
||||
//
|
||||
// // sandbox
|
||||
// // dadaapi = New("dada9623324449cd250", "30c2abbfe8a8780ad5aace46300c64b9", "73753", "http://callback.jxc4.com/dada/order", false)
|
||||
//
|
||||
// // prod
|
||||
// dadaapi = New("dada154e2a41fd6cef3", "7f97d8f258b70b450f04e7ab274ed8f8", "6660", "http://callback.jxc4.com/dadadelivery/msg", true)
|
||||
//
|
||||
// // prod
|
||||
// testOrder = &OperateOrderParams{
|
||||
// ShopNo: testShopNo,
|
||||
// OriginID: "234242342",
|
||||
// CityCode: "028",
|
||||
// CargoPrice: 12.34,
|
||||
// IsPrepay: 1,
|
||||
// ReceiverName: "我是谁",
|
||||
// ReceiverAddress: "九里堤",
|
||||
// ReceiverLat: 30.74631,
|
||||
// ReceiverLng: 103.99112,
|
||||
// ReceiverPhone: "12812345678",
|
||||
// }
|
||||
//
|
||||
//}
|
||||
func init() {
|
||||
logger, _ := zap.NewDevelopment()
|
||||
sugarLogger = logger.Sugar()
|
||||
baseapi.Init(sugarLogger)
|
||||
|
||||
// sandbox
|
||||
// dadaapi = New("dada9623324449cd250", "30c2abbfe8a8780ad5aace46300c64b9", "73753", "http://callback.jxc4.com/dada/order", false)
|
||||
|
||||
// prod
|
||||
dadaapi = New("dada154e2a41fd6cef3", "7f97d8f258b70b450f04e7ab274ed8f8", "6660", "http://callback.jxc4.com/dadadelivery/msg", true)
|
||||
|
||||
// prod
|
||||
//testOrder = &OperateOrderParams{
|
||||
// ShopNo: testShopNo,
|
||||
// OriginID: "234242342",
|
||||
// CityCode: "028",
|
||||
// CargoPrice: 12.34,
|
||||
// IsPrepay: 1,
|
||||
// ReceiverName: "我是谁",
|
||||
// ReceiverAddress: "九里堤",
|
||||
// ReceiverLat: 30.74631,
|
||||
// ReceiverLng: 103.99112,
|
||||
// ReceiverPhone: "12812345678",
|
||||
//}
|
||||
|
||||
}
|
||||
|
||||
//
|
||||
//func TestTest(t *testing.T) {
|
||||
// sugarLogger.Debug(utils.GetCurTimeStr())
|
||||
|
||||
@@ -136,6 +136,8 @@ func (a *API) QueryOrderInfo(orderID string) (order *OrderInfo, err error) {
|
||||
if err == nil {
|
||||
err = utils.Map2StructByJson(result.Result, &order, false)
|
||||
}
|
||||
order.DeliveryFee += (utils.Int2Float64(utils.WayBillDeliveryMarkUp) / 100)
|
||||
//order.ActualFee += utils.Int2Float64(utils.WayBillDeliveryMarkUp)
|
||||
return order, err
|
||||
}
|
||||
|
||||
|
||||
@@ -2,9 +2,9 @@ package dadaapi
|
||||
|
||||
//
|
||||
import (
|
||||
"git.rosy.net.cn/baseapi"
|
||||
//"fmt"
|
||||
"testing"
|
||||
|
||||
//"git.rosy.net.cn/baseapi"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
)
|
||||
@@ -43,13 +43,14 @@ import (
|
||||
// // baseapi.SugarLogger.Debug(utils.Format4Output(cancelResponse, false))
|
||||
//}
|
||||
//
|
||||
//func TestCancel(t *testing.T) {
|
||||
// cancelResponse, err := dadaapi.CancelOrder("126099099192000002", ReasonIDOther, "协商一致")
|
||||
// if err != nil {
|
||||
// t.Fatal(err)
|
||||
// }
|
||||
// baseapi.SugarLogger.Debug(utils.Format4Output(cancelResponse, false))
|
||||
//}
|
||||
func TestCancel(t *testing.T) {
|
||||
cancelResponse, err := dadaapi.CancelOrder("1100551162883899675", ReasonIDOther, "协商一致")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
baseapi.SugarLogger.Debug(utils.Format4Output(cancelResponse, false))
|
||||
}
|
||||
|
||||
//
|
||||
//func TestGetComplaintReasons(t *testing.T) {
|
||||
// complaintReason, err := dadaapi.GetComplaintReasons()
|
||||
@@ -68,17 +69,12 @@ import (
|
||||
//
|
||||
func TestQueryOrderInfo(t *testing.T) {
|
||||
dadaapi = New("dada154e2a41fd6cef3", "7f97d8f258b70b450f04e7ab274ed8f8", "6660", "http://callback.jxc4.com/dadadelivery/msg", true)
|
||||
result, err := dadaapi.QueryOrderInfo("1100538083115517396")
|
||||
result, err := dadaapi.QueryOrderInfo("88421859678001")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
t.Log(utils.Format4Output(result, false))
|
||||
}
|
||||
|
||||
//
|
||||
//func TestAddTip(t *testing.T) {
|
||||
// err := dadaapi.AddTip("80704840263399812", 1.0, "530100", "")
|
||||
// if err != nil {
|
||||
// t.Fatal(err)
|
||||
// }
|
||||
//}
|
||||
func TestAddTip(t *testing.T) {
|
||||
}
|
||||
|
||||
@@ -138,25 +138,24 @@ func (a *API) GetChainstoreStatusNotify(request *http.Request) (shopStatusMsg *C
|
||||
}
|
||||
|
||||
// 获取订单状态回调消息
|
||||
func (a *API) GetChainOrderStatusNotify(request *http.Request) (shopStatusMsg *OrderStatusNottify, callbackResponse *CallbackResponse) {
|
||||
func (a *API) GetChainOrderStatusNotify(request *http.Request) (shopStatusMsg *OrderStatusNottify, result *ShortStatus, callbackResponse *CallbackResponse) {
|
||||
data, err := ioutil.ReadAll(request.Body)
|
||||
if err != nil {
|
||||
callbackResponse = &CallbackResponse{Code: -1}
|
||||
return nil, callbackResponse
|
||||
return nil, nil, callbackResponse
|
||||
}
|
||||
|
||||
result := &ShortStatus{}
|
||||
if err := json.Unmarshal(data, &result); err != nil {
|
||||
callbackResponse = &CallbackResponse{Code: -1}
|
||||
return nil, callbackResponse
|
||||
return nil, nil, callbackResponse
|
||||
}
|
||||
|
||||
orderResult := &OrderStatusNottify{}
|
||||
if err := json.Unmarshal([]byte(result.BusinessData), orderResult); err != nil {
|
||||
callbackResponse = &CallbackResponse{Code: -1}
|
||||
return nil, callbackResponse
|
||||
return nil, nil, callbackResponse
|
||||
}
|
||||
return orderResult, SuccessResponse
|
||||
return orderResult, result, SuccessResponse
|
||||
}
|
||||
|
||||
// 异常配送
|
||||
|
||||
@@ -7,7 +7,6 @@ import (
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"go.uber.org/zap"
|
||||
"testing"
|
||||
"time"
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -20,17 +19,17 @@ func init() {
|
||||
sugarLogger = logger.Sugar()
|
||||
baseapi.Init(sugarLogger)
|
||||
|
||||
api = New("6705486294797503379", "c1e6c280-e618-4103-9d0a-673bc54fb22e", "51658", "cabrXQf9eFMVWVYg4hNlwu")
|
||||
api = New("6705486294797503379", "c1e6c280-e618-4103-9d0a-673bc54fb22e", "5375691", "")
|
||||
//token, _ := api.GetAccessToken()
|
||||
api.accessToken = "5638ebf7-e69e-498b-8b47-96336ca720bc"
|
||||
api.accessToken = "c7ed10b7-3ecf-4def-adc1-9f43d5e9480c"
|
||||
}
|
||||
|
||||
// 查询单个门店
|
||||
func TestQueryOneStore(t *testing.T) {
|
||||
api = New("6705486294797503379", "c1e6c280-e618-4103-9d0a-673bc54fb22e", "5375691", "")
|
||||
token, err := api.GetAccessToken()
|
||||
api.accessToken = token.BusinessDataObj.AccessToken
|
||||
data, err := api.GetStore("209476483")
|
||||
api = New("6705486294797503379", "c1e6c280-e618-4103-9d0a-673bc54fb22e", "51658", "")
|
||||
//token, err := api.GetAccessToken()
|
||||
api.accessToken = "45c49b75-d47e-4145-b38d-fda8b5ebf3a9"
|
||||
data, err := api.GetStore("800293")
|
||||
fmt.Println(data)
|
||||
fmt.Println(err)
|
||||
}
|
||||
@@ -180,13 +179,22 @@ func TestGetOrder(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestQueryOrder(t *testing.T) {
|
||||
data, err := api.QueryOrder("1100536591119839487") // 1100537991119839487 1100536591119839487
|
||||
api = New("6705486294797503379", "c1e6c280-e618-4103-9d0a-673bc54fb22e", "51658", "")
|
||||
api.accessToken = "c7ed10b7-3ecf-4def-adc1-9f43d5e9480c"
|
||||
data, err := api.QueryOrder("88421859678001") // 1100537991119839487 1100536591119839487
|
||||
globals.SugarLogger.Debug("data:= %s", utils.Format4Output(data, false))
|
||||
globals.SugarLogger.Debug("err:= %s", utils.Format4Output(err, false))
|
||||
}
|
||||
|
||||
func TestTime(t *testing.T) {
|
||||
fmt.Println(time.Now().UnixNano() / 1e6)
|
||||
fmt.Println(1683530814777)
|
||||
fmt.Println(time.Now().UnixNano()/1e6 - 1683530814777)
|
||||
func TestCancelOrder(t *testing.T) {
|
||||
api = New("6705486294797503379", "c1e6c280-e618-4103-9d0a-673bc54fb22e", "51658", "")
|
||||
api.accessToken = "f5716fd7-f69b-491f-b63c-d0167c9097b6"
|
||||
param := CancelOrderReq{
|
||||
GetOrderDetailReq: GetOrderDetailReq{PartnerOrderCode: "88421859678001"},
|
||||
OrderCancelCode: 9,
|
||||
OrderCancelRole: 2,
|
||||
OrderCancelOtherReason: "不想要了",
|
||||
}
|
||||
err := api.CancelOrder(¶m) // 1100537991119839487 1100536591119839487
|
||||
globals.SugarLogger.Debug("err:= %s", utils.Format4Output(err, false))
|
||||
}
|
||||
|
||||
@@ -420,10 +420,10 @@ type PreCancelOrderReq struct {
|
||||
// cancelOrder 正式取消订单接口
|
||||
type CancelOrderReq struct {
|
||||
GetOrderDetailReq
|
||||
OrderCancelCode int64 `json:"order_cancel_code"` // 从可用取消原因列表接口返回结果选择(必填)
|
||||
OrderCancelRole int `json:"order_cancel_role"` // 1商户取消, 2 用户取消(必填)
|
||||
ActualCancelCostCent int64 `json:"actual_cancel_cost_cent"` // 单位分 取消实际需扣金额,从预取消接口拿(非必填)
|
||||
OrderCancelOtherReason string `json:"order_cancel_other_reason"` // 取消原因补充 20字以内(非必填)
|
||||
OrderCancelCode int64 `json:"order_cancel_code"` // 从可用取消原因列表接口返回结果选择(必填)
|
||||
OrderCancelRole int `json:"order_cancel_role"` // 1商户取消, 2 用户取消(必填)
|
||||
//ActualCancelCostCent int64 `json:"actual_cancel_cost_cent"` // 单位分 取消实际需扣金额,从预取消接口拿(非必填)
|
||||
OrderCancelOtherReason string `json:"order_cancel_other_reason"` // 取消原因补充 20字以内(必填)
|
||||
}
|
||||
|
||||
//#endregion
|
||||
|
||||
@@ -5,6 +5,7 @@ import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"time"
|
||||
)
|
||||
|
||||
@@ -60,8 +61,8 @@ func (a *API) PreCreateByShopFn(basicParams *PreCreateOrder) (deliveryFee, baseD
|
||||
if v.IsValid != 1 {
|
||||
continue
|
||||
}
|
||||
deliveryFeeFn = v.ActualDeliveryAmountCent
|
||||
baseDeliveryFeeFn = v.TotalDeliveryAmountCent
|
||||
deliveryFeeFn = v.TotalDeliveryAmountCent // 优惠后 actual_delivery_amount_cent
|
||||
baseDeliveryFeeFn = v.TotalDeliveryAmountCent // 原始配送费
|
||||
}
|
||||
|
||||
// 异常检测
|
||||
@@ -83,7 +84,8 @@ func (a *API) CreateOrder(createOrderParam *CreateOrderReqParam) (result string,
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
if utils.Interface2String(resultData["code"]) != "200" || utils.Interface2String(resultData["apiCode"]) != "" {
|
||||
|
||||
if utils.Interface2String(resultData["code"]) != "200" {
|
||||
return "", fmt.Errorf(fmt.Sprintf("其他异常错误信息:%s", utils.Interface2String(resultData["apiCode"])))
|
||||
}
|
||||
if orderId, ok := resultData["business_data"]; ok {
|
||||
@@ -170,9 +172,7 @@ func (a *API) CancelOrder(req *CancelOrderReq) (err error) {
|
||||
if req.PartnerOrderCode == "" && req.OrderId == "" {
|
||||
return errors.New("内部订单号或者外部订单号比填写一个")
|
||||
}
|
||||
if req.OrderCancelCode == 0 && req.OrderCancelOtherReason == "" {
|
||||
req.OrderCancelOtherReason = "暂时不想要了"
|
||||
}
|
||||
req.OrderCancelOtherReason = "暂时不想要了"
|
||||
|
||||
orderHead := a.MakeFnRequestHead()
|
||||
business, err := json.Marshal(req)
|
||||
@@ -181,11 +181,15 @@ func (a *API) CancelOrder(req *CancelOrderReq) (err error) {
|
||||
}
|
||||
orderHead["business_data"] = string(business)
|
||||
|
||||
if _, err := a.AccessAPI(ApiURL, "cancelOrder", RequestPost, orderHead); err != nil {
|
||||
data, err := a.AccessAPI(ApiURL, "cancelOrder", RequestPost, orderHead)
|
||||
globals.SugarLogger.Debugf("======data : %s", utils.Format4Output(data, false))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return
|
||||
if data["code"].(string) != "200" {
|
||||
return errors.New(data["msg"].(string))
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// 查询订单详情接口
|
||||
@@ -206,6 +210,8 @@ func (a *API) QueryOrder(partnerOrderCode string) (result *GetOrderDetailRes, er
|
||||
if err := json.Unmarshal([]byte(data["business_data"].(string)), &fnResult); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
fnResult.OrderActualAmountCent += int64(utils.WayBillDeliveryMarkUp)
|
||||
fnResult.OrderTotalAmountCent += int64(utils.WayBillDeliveryMarkUp)
|
||||
return fnResult, nil
|
||||
}
|
||||
|
||||
|
||||
@@ -3,6 +3,7 @@ package fnpsapi
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"strings"
|
||||
|
||||
"git.rosy.net.cn/baseapi/utils"
|
||||
@@ -130,3 +131,40 @@ func IsErrShopExist(err error) bool {
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
// HttpToGuoYuanFN 订单消息推送果园
|
||||
func HttpToGuoYuanFN(param map[string]interface{}, requestType string) (*http.Response, error) {
|
||||
var paramData []byte
|
||||
var err error
|
||||
if requestType == "order" || requestType == "waybill" {
|
||||
param["data"] = utils.Format4Output(param["data"], false)
|
||||
paramData, err = json.Marshal([]interface{}{param})
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
} else {
|
||||
paramData, err = json.Marshal(param)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
body := strings.NewReader(string(paramData))
|
||||
url := ""
|
||||
switch requestType {
|
||||
case "store": // 订单相关
|
||||
url = "http://callback-jxgy.jxc4.com/fn/fnStore"
|
||||
case "order": // 门店
|
||||
url = "http://callback-jxgy.jxc4.com/fn/fnOrder"
|
||||
case "abnormal": // 异常
|
||||
url = "http://callback-jxgy.jxc4.com/fn/fnAbnormal"
|
||||
}
|
||||
httpReq, err := http.NewRequest(http.MethodPost, url, body)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
httpReq.Header.Set("Content-Type", "application/json")
|
||||
|
||||
httpRes, err := http.DefaultClient.Do(httpReq)
|
||||
return httpRes, err
|
||||
}
|
||||
|
||||
@@ -88,6 +88,7 @@ func (a *API) AccessAPI1(url string, params map[string]interface{}) (retVal map[
|
||||
err = platformapi.AccessPlatformAPIWithRetry(a.client,
|
||||
func() *http.Request {
|
||||
globals.SugarLogger.Debugf("====param := %s", utils.Format4Output(params, false))
|
||||
globals.SugarLogger.Debugf("====url := %s", utils.Format4Output(url, false))
|
||||
request, _ := http.NewRequest(http.MethodPost, url, strings.NewReader(utils.Map2URLValues(params).Encode()))
|
||||
request.Header.Set("Content-Type", "application/json;charset=UTF-8")
|
||||
return request
|
||||
|
||||
@@ -72,20 +72,20 @@ func TestCreateToken(t *testing.T) {
|
||||
// 快手预下单获取支付参数
|
||||
func TestPreCreateOrder(t *testing.T) {
|
||||
param := &PreCreateOrderReq{
|
||||
OutOrderNo: "1024028220",
|
||||
OpenId: "f198f59711c9785314bf5724f7ab9f47",
|
||||
TotalAmount: 1,
|
||||
Subject: "这是一个测试商品",
|
||||
Detail: "大白菜,小白菜,中白菜",
|
||||
TypeDetail: 1832, // 素菜
|
||||
ExpireTime: 10 * 60,
|
||||
Sign: "",
|
||||
Attach: "1111",
|
||||
NotifyUrl: "https://callback.jxc4.com/tictoc/tiktokMsg",
|
||||
GoodsId: "1122",
|
||||
GoodsDetailUrl: "/page/index/anima",
|
||||
MultiCopiesGoodsInfo: "[{\"copies\":2}]",
|
||||
CancelOrder: 0,
|
||||
OutOrderNo: "88422209072664",
|
||||
OpenId: "f198f59711c9785314bf5724f7ab9f47",
|
||||
TotalAmount: 501,
|
||||
Subject: "蔬菜水果日用品",
|
||||
Detail: "好吃的素材水果",
|
||||
TypeDetail: 1832, // 素菜
|
||||
ExpireTime: 10 * 60,
|
||||
Sign: "",
|
||||
Attach: "22",
|
||||
NotifyUrl: "https://callback-jxgy.jxc4.com/kuaishou/kuaiShouCallback",
|
||||
GoodsId: "1122",
|
||||
GoodsDetailUrl: "/page/index/anima",
|
||||
//MultiCopiesGoodsInfo: `[{"copies":2}]`,
|
||||
CancelOrder: 1,
|
||||
}
|
||||
data, err := api.PreCreateOrder(param)
|
||||
globals.SugarLogger.Debugf("data := %s", utils.Format4Output(data, false))
|
||||
|
||||
@@ -295,7 +295,7 @@ func (a *API) result2OrderResponse(result *ResponseResult) (order *OrderResponse
|
||||
order.MtPeisongID = result.Data["mt_peisong_id"].(string)
|
||||
order.DeliveryID = utils.MustInterface2Int64(result.Data["delivery_id"])
|
||||
order.OrderID = result.Data["order_id"].(string)
|
||||
order.DeliveryFee = utils.MustInterface2Float64(result.Data["delivery_fee"])
|
||||
order.DeliveryFee = utils.MustInterface2Float64(result.Data["delivery_fee"]) // 原价
|
||||
return order
|
||||
}
|
||||
|
||||
@@ -346,6 +346,8 @@ func (a *API) QueryOrderStatus(deliveryId int64, mtPeiSongId string) (retVal map
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
result.Data["delivery_fee"] = utils.MustInterface2Float64(result.Data["delivery_fee"]) + (float64(utils.WayBillDeliveryMarkUp) / 100)
|
||||
result.Data["pay_amount"] = utils.MustInterface2Float64(result.Data["pay_amount"])
|
||||
return result.Data, nil
|
||||
}
|
||||
|
||||
@@ -465,8 +467,9 @@ func (a *API) PreCreateByShop(basicParams *PreCreateByShopParam) (deliveryFee, b
|
||||
return 0, 0, err
|
||||
}
|
||||
|
||||
deliveryFee = utils.Float64TwoInt64(utils.MustInterface2Float64(result.Data["delivery_fee"]) * 100) // 订单配送价格
|
||||
baseDeliveryFee = utils.Float64TwoInt64(utils.MustInterface2Float64(result.Data["base_delivery_fee"]) * 100) // 订单优惠价格
|
||||
deliveryFee = utils.Float64TwoInt64(utils.MustInterface2Float64(result.Data["delivery_fee"]) * 100) // 订单配送价格
|
||||
baseDeliveryFee = utils.Float64TwoInt64(utils.MustInterface2Float64(result.Data["delivery_fee"]) * 100) // 订单优惠价格
|
||||
//baseDeliveryFee = utils.Float64TwoInt64(utils.MustInterface2Float64(result.Data["base_delivery_fee"]) * 100) // 订单优惠价格
|
||||
return deliveryFee, baseDeliveryFee, nil
|
||||
}
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ func init() {
|
||||
//api = New("4123", "df2c88338b85f830cebce2a9eab56628", "", "")
|
||||
|
||||
//商超
|
||||
//api = New("5873", "41c479790a76f86326f89e8048964739", "", "token_n4TwqCntWWuvQwAawzxC0w") //token_n4TwqCntWWuvQwAawzxC0w
|
||||
api = New("5873", "41c479790a76f86326f89e8048964739", "", "token_nFTOat5DYhvqHIZbDZRJkQ") //token_n4TwqCntWWuvQwAawzxC0w
|
||||
cookieStr := `
|
||||
acctId=57396785; token=0bWbK5VbK50E2BmIhIH2zHB-am_y7mB37yXHm6RLZWx4*; wmPoiId=-1;
|
||||
`
|
||||
|
||||
@@ -120,10 +120,10 @@ func TestRetailListAll(t *testing.T) {
|
||||
|
||||
// 删除所有门店商品
|
||||
func TestReloadStoreSku(t *testing.T) {
|
||||
result, err := api.RetailListAll("17817296")
|
||||
result, err := api.RetailListAll("17223201")
|
||||
if err == nil {
|
||||
for i := 0; i < len(result); i++ {
|
||||
err := api.RetailDelete(utils.Int64ToStr(time.Now().Unix()), "17817296", result[i].AppFoodCode)
|
||||
err := api.RetailDelete(utils.Int64ToStr(time.Now().Unix()), "17223201", result[i].AppFoodCode)
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ import (
|
||||
// "authority_id": ""
|
||||
//}`
|
||||
|
||||
var token = `{"access_token":"71896365-cec7-4982-a686-0d8f3044cc1e","expires_in":1682872676,"scope":"SCOPE","shop_id":57939570,"shop_name":"京西菜市速食","refresh_token":"76d410d2-e869-4ddc-b8ad-0ae652114e13","authority_id":""}`
|
||||
var token = `{"access_token":"09e5b626-418f-4780-ab33-857ba8f69b49","expires_in":1684077242,"scope":"SCOPE","shop_id":57939570,"shop_name":"京西菜市速食","refresh_token":"04a82701-a439-4dad-a20a-48299b0dffcd","authority_id":""}`
|
||||
|
||||
//var token = `{"access_token":"e3173e9f-266f-4d87-88e7-e7cd837bc9d9","expires_in":1672882632,"scope":"SCOPE","shop_id":68023619,"shop_name":"京西到家","refresh_token":"5070aae2-493f-46bd-b5d6-6ea0cd64729f","authority_id":""}`
|
||||
|
||||
|
||||
@@ -30,3 +30,9 @@ func tryCatName2Code(originName string) (catCodeStr string) {
|
||||
}
|
||||
return catCodeStr
|
||||
}
|
||||
|
||||
func TestCa(t *testing.T) {
|
||||
name := "四川省"
|
||||
fmt.Println(len(name))
|
||||
fmt.Println(name[0:6])
|
||||
}
|
||||
|
||||
@@ -303,7 +303,7 @@ func TestDeleteSkuAndUploadSkuXiaJiaBiXu(t *testing.T) {
|
||||
CheckStatus: 1, // 1-未提交;2-待审核;3-审核通过;4-审核未通过;5-封禁;7-审核通过待上架
|
||||
Page: int64(i),
|
||||
Size: 100,
|
||||
StoreId: v,
|
||||
StoreId: 63509510,
|
||||
})
|
||||
if err != nil {
|
||||
globals.SugarLogger.Debugf("=index := %d ,err := %s", i, utils.Format4Output(err, false))
|
||||
|
||||
@@ -3,6 +3,7 @@ package tonglianpayapi
|
||||
import (
|
||||
"crypto/md5"
|
||||
"fmt"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"net/http"
|
||||
"sort"
|
||||
"strings"
|
||||
@@ -192,6 +193,8 @@ func (a *API) CreateUnitorderOrder(param *CreateUnitorderOrderParam) (result *Cr
|
||||
params["paytype"] = param.PayType
|
||||
params["sub_appid"] = param.SubAppID
|
||||
retVal, err := a.AccessAPI(sepcAction, params)
|
||||
globals.SugarLogger.Debugf("===========err := %s", utils.Format4Output(retVal, false))
|
||||
globals.SugarLogger.Debugf("===========err := %s", utils.Format4Output(err, false))
|
||||
if err == nil {
|
||||
utils.Map2StructByJson(retVal, &result, false)
|
||||
}
|
||||
|
||||
@@ -67,6 +67,7 @@ func (a *API) GetOrderDetail(orderCode string) (*GetOrderDetailResp, error) {
|
||||
}
|
||||
con := retVal != GetOrderDetailResp{}
|
||||
if con {
|
||||
retVal.OrderPrice = utils.Float64ToStr(utils.Str2Float64(retVal.OrderPrice) + float64(utils.WayBillDeliveryMarkUp/100) + float64(0.2))
|
||||
return &retVal, nil
|
||||
} else {
|
||||
return nil, fmt.Errorf("UU跑腿未返回运单详情")
|
||||
|
||||
@@ -23,8 +23,9 @@ var json1 = jsoniter.ConfigCompatibleWithStandardLibrary
|
||||
const MaxTimeSecond = 9573800254 // 正常最大的秒数
|
||||
|
||||
var (
|
||||
DefaultTimeValue = Str2Time("1970-01-01 00:00:00")
|
||||
ZeroTimeValue = time.Time{}
|
||||
DefaultTimeValue = Str2Time("1970-01-01 00:00:00")
|
||||
WayBillDeliveryMarkUp = 20 // 运单加价两毛钱
|
||||
ZeroTimeValue = time.Time{}
|
||||
)
|
||||
|
||||
func UnmarshalUseNumber(data []byte, result interface{}) error {
|
||||
|
||||
Reference in New Issue
Block a user