Merge branch 'jdshop' of https://e.coding.net/rosydev/jx-callback into jdshop
This commit is contained in:
@@ -950,7 +950,6 @@ func AddSkuName(ctx *jxcontext.Context, skuNameExt *model.SkuNameExt, userName s
|
|||||||
}
|
}
|
||||||
|
|
||||||
func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interface{}, isExd bool) (num int64, err error) {
|
func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interface{}, isExd bool) (num int64, err error) {
|
||||||
globals.SugarLogger.Debugf("==========payload %s", utils.Format4Output(payload, false))
|
|
||||||
userName := ctx.GetUserName()
|
userName := ctx.GetUserName()
|
||||||
skuName := &model.SkuName{}
|
skuName := &model.SkuName{}
|
||||||
skuName.ID = nameID
|
skuName.ID = nameID
|
||||||
@@ -1026,10 +1025,6 @@ func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interf
|
|||||||
panic(r)
|
panic(r)
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
globals.SugarLogger.Debugf("UpdateEntityLogically 1 := %s", utils.Format4Output(skuName, false))
|
|
||||||
globals.SugarLogger.Debugf("UpdateEntityLogically 2 := %s", utils.Format4Output(valid, false))
|
|
||||||
globals.SugarLogger.Debugf("UpdateEntityLogically 3 := %s", userName)
|
|
||||||
// valid[model.FieldJdSyncStatus] = model.SyncFlagModifiedMask | skuName.JdSyncStatus
|
|
||||||
if num, err = dao.UpdateEntityLogically(db, skuName, valid, userName, nil); err != nil {
|
if num, err = dao.UpdateEntityLogically(db, skuName, valid, userName, nil); err != nil {
|
||||||
dao.Rollback(db, txDB)
|
dao.Rollback(db, txDB)
|
||||||
return 0, err
|
return 0, err
|
||||||
@@ -1087,6 +1082,7 @@ func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interf
|
|||||||
}
|
}
|
||||||
if len(skuIDs) > 0 {
|
if len(skuIDs) > 0 {
|
||||||
// 判断是否改价
|
// 判断是否改价
|
||||||
|
if payload["price"] != nil {
|
||||||
nowPrice, _ := payload["price"].(json.Number).Int64()
|
nowPrice, _ := payload["price"].(json.Number).Int64()
|
||||||
if skuName.Price != int(nowPrice) && nowPrice != 0 {
|
if skuName.Price != int(nowPrice) && nowPrice != 0 {
|
||||||
|
|
||||||
@@ -1106,6 +1102,7 @@ func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interf
|
|||||||
SetUpdateSkuPriceIfChange(db, skuPrice, nowPrice, skuInfo.Id)
|
SetUpdateSkuPriceIfChange(db, skuPrice, nowPrice, skuInfo.Id)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 更新skuIds对应在store_sku_bind中的价格体系,解决老版本改价之前关注的商品,在价格修改后,store_sku_bind中京西价未修改的问题
|
// 更新skuIds对应在store_sku_bind中的价格体系,解决老版本改价之前关注的商品,在价格修改后,store_sku_bind中京西价未修改的问题
|
||||||
if _, err = SetStoreSkuSyncStatus2(db, nil, partner.GetSingleStoreVendorIDs(), skuIDs, model.SyncFlagModifiedMask); err != nil {
|
if _, err = SetStoreSkuSyncStatus2(db, nil, partner.GetSingleStoreVendorIDs(), skuIDs, model.SyncFlagModifiedMask); err != nil {
|
||||||
|
|||||||
@@ -523,6 +523,7 @@ func setStoreMapInfo(ctx *jxcontext.Context, db *dao.DaoDB, storesInfo *StoresIn
|
|||||||
v.IDCardFront = ""
|
v.IDCardFront = ""
|
||||||
v.IDCardBack = ""
|
v.IDCardBack = ""
|
||||||
v.IDCardHand = ""
|
v.IDCardHand = ""
|
||||||
|
v.IDCardHandBack = ""
|
||||||
v.Licence = ""
|
v.Licence = ""
|
||||||
v.Licence2Image = ""
|
v.Licence2Image = ""
|
||||||
}
|
}
|
||||||
@@ -3526,7 +3527,7 @@ func GetStoreCategoryMap(ctx *jxcontext.Context, parentID, level int, storeID in
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
if ctx.GetLoginType() != weixin.AuthTypeMP && ctx.GetLoginType() != weixin.AuthTypeMini && ctx.GetLoginType() != weixin.AuthTypeWxApp && ctx.GetLoginType() != weixin.AuthTypeWxAppCaishi && ctx.GetLoginType() != auth2.AuthTypeMobile {
|
if ctx.GetLoginType() != auth2.AuthTypePassword && ctx.GetLoginType() != weixin.AuthTypeMP && ctx.GetLoginType() != weixin.AuthTypeMini && ctx.GetLoginType() != weixin.AuthTypeWxApp && ctx.GetLoginType() != weixin.AuthTypeWxAppCaishi && ctx.GetLoginType() != auth2.AuthTypeMobile {
|
||||||
return storeCatMaps, err
|
return storeCatMaps, err
|
||||||
}
|
}
|
||||||
//表示没有门店分类
|
//表示没有门店分类
|
||||||
@@ -4455,7 +4456,7 @@ func RefreshTiktokShopToken(ctx *jxcontext.Context) (err error) {
|
|||||||
v.UpdatedAt = time.Now()
|
v.UpdatedAt = time.Now()
|
||||||
v.StoreBrandName = "定时任务更新"
|
v.StoreBrandName = "定时任务更新"
|
||||||
dao.UpdateEntity(db, v, "Token", "UpdatedAt", "StoreBrandName")
|
dao.UpdateEntity(db, v, "Token", "UpdatedAt", "StoreBrandName")
|
||||||
tiktok_store.HttpToGuoYuan(utils.Struct2MapByJson(v), "token")
|
tiktok_store.HttpToGuoYuan(utils.Struct2MapByJson(v), tiktok_store.CaiShiPushGyTagToken)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -340,9 +340,9 @@ type Store struct {
|
|||||||
PrinterSound string `json:"printerSound"` //打印机语音,京西打印机
|
PrinterSound string `json:"printerSound"` //打印机语音,京西打印机
|
||||||
PrinterTemplate string `json:"printerTemplate"` //打印模板。京西打印机
|
PrinterTemplate string `json:"printerTemplate"` //打印模板。京西打印机
|
||||||
|
|
||||||
IDCardFront string `orm:"size(255);column(id_card_front)" json:"idCardFront"`
|
IDCardFront string `orm:"size(255);column(id_card_front)" json:"idCardFront"` // 身份证正面
|
||||||
IDCardBack string `orm:"size(255);column(id_card_back)" json:"idCardBack"`
|
IDCardBack string `orm:"size(255);column(id_card_back)" json:"idCardBack"` // 身份证背面
|
||||||
IDCardHand string `orm:"size(255);column(id_card_hand)" json:"idCardHand"`
|
IDCardHand string `orm:"size(255);column(id_card_hand)" json:"idCardHand"` // 手持身份证正面
|
||||||
Licence string `orm:"size(255)" json:"licence"` // 营业执照图片
|
Licence string `orm:"size(255)" json:"licence"` // 营业执照图片
|
||||||
LicenceCode string `orm:"size(32)" json:"licenceCode"`
|
LicenceCode string `orm:"size(32)" json:"licenceCode"`
|
||||||
|
|
||||||
@@ -397,6 +397,7 @@ type Store struct {
|
|||||||
BrandID int `orm:"column(brand_id)" json:"brandID"` //品牌ID
|
BrandID int `orm:"column(brand_id)" json:"brandID"` //品牌ID
|
||||||
IsPrintCancelOrder int `orm:"column(is_print_cancel_order)" json:"isPrintCancelOrder"` //是否打印取消订单1是/-1否
|
IsPrintCancelOrder int `orm:"column(is_print_cancel_order)" json:"isPrintCancelOrder"` //是否打印取消订单1是/-1否
|
||||||
IsPrintRefundOrder int `orm:"column(is_print_refund_order)" json:"isPrintRefundOrder"` //是否打印退款订单1是/-1否
|
IsPrintRefundOrder int `orm:"column(is_print_refund_order)" json:"isPrintRefundOrder"` //是否打印退款订单1是/-1否
|
||||||
|
IDCardHandBack string `orm:"size(255);column(id_card_hand_back)" json:"idCardHandBack"` // 手持身份证背面
|
||||||
}
|
}
|
||||||
|
|
||||||
func (*Store) TableUnique() [][]string {
|
func (*Store) TableUnique() [][]string {
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package ebai
|
package ebai
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"math"
|
"math"
|
||||||
"strings"
|
"strings"
|
||||||
@@ -387,23 +388,36 @@ func (p *PurchaseHandler) ConfirmReceiveGoods(ctx *jxcontext.Context, order *mod
|
|||||||
// 将订单从购物平台配送转为自送
|
// 将订单从购物平台配送转为自送
|
||||||
func (p *PurchaseHandler) Swtich2SelfDeliver(order *model.GoodsOrder, userName string) (err error) {
|
func (p *PurchaseHandler) Swtich2SelfDeliver(order *model.GoodsOrder, userName string) (err error) {
|
||||||
if globals.EnableEbaiStoreWrite {
|
if globals.EnableEbaiStoreWrite {
|
||||||
if order.DeliveryType == model.OrderDeliveryTypePlatform {
|
deliveryStatusObj, _ := api.EbaiAPI.OrderDeliveryGet(order.VendorOrderID)
|
||||||
if err = api.EbaiAPI.OrderSwitchselfdelivery(order.VendorOrderID); err != nil {
|
deliveryStatus := utils.Int64ToStr(utils.MustInterface2Int64(deliveryStatusObj["status"]))
|
||||||
if strings.Contains(err.Error(), "301251") {
|
switch deliveryStatus {
|
||||||
api.EbaiAPI.OrderCancelDelivery(order.VendorOrderID) // 取消呼叫众包骑手
|
case ebaiapi.WaybillStatusSelfDelivery:
|
||||||
}
|
|
||||||
if utils.IsErrMatch(err, "301251", nil) {
|
|
||||||
if deliveryStatus, err2 := api.EbaiAPI.OrderDeliveryGet(order.VendorOrderID); err2 == nil {
|
|
||||||
deliveryStatus := utils.Int64ToStr(utils.MustInterface2Int64(deliveryStatus["status"]))
|
|
||||||
if deliveryStatus == ebaiapi.WaybillStatusSelfDelivery {
|
|
||||||
err = nil
|
err = nil
|
||||||
} else if deliveryStatus == ebaiapi.WaybillStatusDeliveryCancled {
|
case ebaiapi.WaybillStatusDeliveryCancled:
|
||||||
p.trySyncCancelStatus(order.VendorOrderID)
|
p.trySyncCancelStatus(order.VendorOrderID)
|
||||||
|
case ebaiapi.WaybillStatusNew, ebaiapi.WaybillStatusRequestDelivery, ebaiapi.WaybillStatusWait4Courier:
|
||||||
|
err = api.EbaiAPI.OrderCancelDelivery(order.VendorOrderID) // 取消呼叫众包骑手
|
||||||
|
case ebaiapi.WaybillStatusCourierAccepted:
|
||||||
|
err = errors.New("骑手已接单,无法转自送")
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
//if order.DeliveryType == model.OrderDeliveryTypePlatform {
|
||||||
}
|
// if err = api.EbaiAPI.OrderSwitchselfdelivery(order.VendorOrderID); err != nil {
|
||||||
}
|
// if strings.Contains(err.Error(), "301251") {
|
||||||
|
// api.EbaiAPI.OrderCancelDelivery(order.VendorOrderID) // 取消呼叫众包骑手
|
||||||
|
// }
|
||||||
|
// if utils.IsErrMatch(err, "301251", nil) {
|
||||||
|
// if deliveryStatus, err2 := api.EbaiAPI.OrderDeliveryGet(order.VendorOrderID); err2 == nil {
|
||||||
|
// deliveryStatus := utils.Int64ToStr(utils.MustInterface2Int64(deliveryStatus["status"]))
|
||||||
|
// if deliveryStatus == ebaiapi.WaybillStatusSelfDelivery {
|
||||||
|
// err = nil
|
||||||
|
// } else if deliveryStatus == ebaiapi.WaybillStatusDeliveryCancled {
|
||||||
|
// p.trySyncCancelStatus(order.VendorOrderID)
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//}
|
||||||
}
|
}
|
||||||
if err == nil {
|
if err == nil {
|
||||||
// 饿百不会发送配送中,模拟发送
|
// 饿百不会发送配送中,模拟发送
|
||||||
|
|||||||
@@ -6,69 +6,98 @@ import (
|
|||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/jxutils"
|
"git.rosy.net.cn/jx-callback/business/jxutils"
|
||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
|
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
"git.rosy.net.cn/jx-callback/globals/api"
|
"git.rosy.net.cn/jx-callback/globals/api"
|
||||||
|
"io/ioutil"
|
||||||
"net/http"
|
"net/http"
|
||||||
"strings"
|
"strings"
|
||||||
|
"time"
|
||||||
|
)
|
||||||
|
|
||||||
|
// 同一账号下,菜市消息推送到果园
|
||||||
|
const (
|
||||||
|
CaiShiPushGyTagOrder = "order" // 订单
|
||||||
|
CaiShiPushGyTagToken = "token" // 授权
|
||||||
|
CaiShiPushGyTagDeliveryRegister = "delivery" // 配送注册查询
|
||||||
|
CaiShiPushGyTagDeliveryDetail = "deliveryDetail" // 配送详情
|
||||||
|
CaiShiPushGyTagWayBill = "waybill" // 配送
|
||||||
)
|
)
|
||||||
|
|
||||||
// OnOrderMsg 抖音
|
// OnOrderMsg 抖音
|
||||||
func OnOrderMsg(msgId string, msg interface{}) (response *tiktokShop.CallbackResponse) {
|
func OnOrderMsg(msgId string, msg interface{}) (response *tiktokShop.CallbackResponse) {
|
||||||
|
globals.SugarLogger.Debugf("guoyuan %s,%s", msgId, utils.Format4Output(msg, false))
|
||||||
if CurPurchaseHandler != nil {
|
if CurPurchaseHandler != nil {
|
||||||
orderId, shopId, _ := api.TiktokStore.GetCallbackOrderId(msgId, msg)
|
orderId, shopId, _ := api.TiktokStore.GetCallbackOrderId(msgId, msg)
|
||||||
globals.SugarLogger.Debugf("order_id %s,%s", orderId, shopId)
|
globals.SugarLogger.Debugf("order_id %s,%d", orderId, shopId)
|
||||||
//orderDetail, err := GetTiktokApi(utils.Int64ToStr(shopId), 0, "").GetTiktokOrderDetail(orderId)
|
orderDetail, err := GetTiktokApi(utils.Int64ToStr(shopId), 0, "").GetTiktokOrderDetail(orderId)
|
||||||
//if err != nil {
|
if err != nil {
|
||||||
// return tiktokShop.Err2CallbackResponse(err, "")
|
return tiktokShop.Err2CallbackResponse(err, "")
|
||||||
//}
|
}
|
||||||
//vendorStoreID := orderDetail.ShopId
|
vendorStoreID := orderDetail.SkuOrderList[0].StoreInfo.StoreId
|
||||||
//if vendorStoreID != 0 {
|
|
||||||
// storeDetail, err := dao.GetStoreDetailByVendorStoreID(dao.GetDB(), utils.Int64ToStr(vendorStoreID), model.VendorIDDD, "")
|
if vendorStoreID != "" {
|
||||||
// if err != nil || storeDetail == nil || storeDetail.Store.ID == 0 {
|
storeDetail, err := dao.GetStoreDetailByVendorStoreID(dao.GetDB(), vendorStoreID, model.VendorIDDD, "")
|
||||||
// // 当前订单所属门店不属于菜市时,将消息推送到果园
|
if err != nil || storeDetail == nil || storeDetail.Store.ID == 0 {
|
||||||
// gyMsg := map[string]interface{}{"tag": msgId, "msg_id": utils.Int64ToStr(time.Now().Unix()) + msgId, "data": msg}
|
// 当前订单所属门店不属于菜市时,将消息推送到果园
|
||||||
// // 通知到果园
|
gyMsg := map[string]interface{}{"tag": msgId, "msg_id": utils.Int64ToStr(time.Now().Unix()) + msgId, "data": msg}
|
||||||
// gyResult, err := HttpToGuoYuan(gyMsg, "order")
|
// 通知到果园
|
||||||
// if err != nil {
|
gyResult, err := HttpToGuoYuan(gyMsg, CaiShiPushGyTagOrder)
|
||||||
// return tiktokShop.Err2CallbackResponse(err, "")
|
if err != nil {
|
||||||
// }
|
return tiktokShop.Err2CallbackResponse(err, "")
|
||||||
// result, _ := ioutil.ReadAll(gyResult.Body)
|
}
|
||||||
// var guoYuan *tiktokShop.CallbackResponse
|
result, _ := ioutil.ReadAll(gyResult.Body)
|
||||||
// if err := json.Unmarshal(result, guoYuan); err != nil {
|
var guoYuan *tiktokShop.CallbackResponse
|
||||||
// return tiktokShop.Err2CallbackResponse(err, "")
|
if err2 := json.Unmarshal(result, guoYuan); err2 != nil {
|
||||||
// }
|
return tiktokShop.Err2CallbackResponse(err2, "")
|
||||||
// return guoYuan
|
}
|
||||||
// }
|
return guoYuan
|
||||||
//}
|
}
|
||||||
|
}
|
||||||
jxutils.CallMsgHandler(func() {
|
jxutils.CallMsgHandler(func() {
|
||||||
response = CurPurchaseHandler.onOrderMsg(msgId, orderId, msg)
|
response = CurPurchaseHandler.onOrderMsg(msgId, orderId, msg)
|
||||||
}, jxutils.ComposeUniversalOrderID(orderId, model.VendorIDDD))
|
}, jxutils.ComposeUniversalOrderID(orderId, model.VendorIDDD))
|
||||||
|
} else {
|
||||||
|
globals.SugarLogger.Debugf("============2")
|
||||||
}
|
}
|
||||||
return response
|
return response
|
||||||
}
|
}
|
||||||
|
|
||||||
func HttpToGuoYuan(param map[string]interface{}, requestType string) (*http.Response, error) {
|
func HttpToGuoYuan(param map[string]interface{}, requestType string) (*http.Response, error) {
|
||||||
globals.SugarLogger.Debugf("=========param %s", utils.Format4Output(param, false))
|
var paramData []byte
|
||||||
paramData, err := json.Marshal(param)
|
var err error
|
||||||
|
if requestType == "order" {
|
||||||
|
param["data"] = utils.Format4Output(param["data"], false)
|
||||||
|
paramData, err = json.Marshal([]interface{}{param})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
paramData, err = json.Marshal(param)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
}
|
||||||
body := strings.NewReader(string(paramData))
|
body := strings.NewReader(string(paramData))
|
||||||
|
|
||||||
url := ""
|
url := ""
|
||||||
switch requestType {
|
switch requestType {
|
||||||
case "order": // 订单相关
|
case CaiShiPushGyTagOrder: // 订单相关
|
||||||
url = "http://callback-jxgy.jxc4.com/tiktok/callbackTiktokOrderMsg"
|
url = "http://callback-jxgy.jxc4.com/tiktok/callbackTiktokOrderMsg"
|
||||||
case "token": // 授权相关
|
case CaiShiPushGyTagToken: // 授权相关
|
||||||
url = "http://callback-jxgy.jxc4.com/tiktokShop/jxcsToGyTiktokToken"
|
url = "http://callback-jxgy.jxc4.com/tiktokShop/jxcsToGyTiktokToken"
|
||||||
case "wayBill": // 运单消息
|
case CaiShiPushGyTagDeliveryRegister: // 配送查询注册
|
||||||
|
url = "http://callback-jxgy.jxc4.com/logistics/logisticsRegister"
|
||||||
|
case CaiShiPushGyTagDeliveryDetail: // 配送查询详情
|
||||||
|
url = "http://callback-jxgy.jxc4.com/logistics/logisticsQuery"
|
||||||
|
case CaiShiPushGyTagWayBill: // 运单消息
|
||||||
|
|
||||||
}
|
}
|
||||||
httpReq, err := http.NewRequest(http.MethodPost, url, body)
|
httpReq, err := http.NewRequest(http.MethodPost, url, body)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
httpReq.Header.Set("Content-Type", "application/json")
|
httpReq.Header.Set("Content-Type", "application/json")
|
||||||
|
|
||||||
httpRes, err := http.DefaultClient.Do(httpReq)
|
httpRes, err := http.DefaultClient.Do(httpReq)
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ func (c *PurchaseHandler) GetVendorID() int {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *PurchaseHandler) GetVendorCategories(ctx *jxcontext.Context) (vendorCats []*model.SkuVendorCategory, err error) {
|
func (p *PurchaseHandler) GetVendorCategories(ctx *jxcontext.Context) (vendorCats []*model.SkuVendorCategory, err error) {
|
||||||
cats, err := getAPI("57939570", 0, "").GetShopCategory(0)
|
cats, err := getAPI("68023619", 0, "").GetShopCategory(0)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -722,6 +722,9 @@ func CreateSaleTemp(storeId int64, api *tiktokShop.API) (int64, error) {
|
|||||||
|
|
||||||
// GetDeliveryTemp 获取运费模板id,运费模板不存在则创建
|
// GetDeliveryTemp 获取运费模板id,运费模板不存在则创建
|
||||||
func GetDeliveryTemp(api *tiktokShop.API, vendorStoreID string, storeDetail *dao.StoreDetail) (int64, error) {
|
func GetDeliveryTemp(api *tiktokShop.API, vendorStoreID string, storeDetail *dao.StoreDetail) (int64, error) {
|
||||||
|
if vendorStoreID == "" {
|
||||||
|
return 0, errors.New("平台门店id未绑定")
|
||||||
|
}
|
||||||
// 没有模板是查询线上模板
|
// 没有模板是查询线上模板
|
||||||
freightId, _ := api.GetStoreBindTemp(utils.Str2Int64(vendorStoreID))
|
freightId, _ := api.GetStoreBindTemp(utils.Str2Int64(vendorStoreID))
|
||||||
if freightId == 0 {
|
if freightId == 0 {
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import (
|
|||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||||
"git.rosy.net.cn/jx-callback/globals"
|
"git.rosy.net.cn/jx-callback/business/partner/purchase/tiktok_store"
|
||||||
"github.com/astaxie/beego/server/web"
|
"github.com/astaxie/beego/server/web"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"time"
|
"time"
|
||||||
@@ -58,8 +58,32 @@ func (c *LogisticsController) LogisticsRegister() {
|
|||||||
}
|
}
|
||||||
// 查询订单的运单是否存在
|
// 查询订单的运单是否存在
|
||||||
data, err := dao.GetWayBillsByWayBillId(dao.GetDB(), register.TrackNo)
|
data, err := dao.GetWayBillsByWayBillId(dao.GetDB(), register.TrackNo)
|
||||||
|
|
||||||
|
// 此订单可能是果园订单
|
||||||
|
if web.BConfig.RunMode != "jxgy" && (len(data) == 0 || err != nil) {
|
||||||
|
resp, err := tiktok_store.HttpToGuoYuan(utils.Struct2Map(register, "", true), tiktok_store.CaiShiPushGyTagDeliveryRegister)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
globals.SugarLogger.Debugf("根据单号查询运单数据错误:%s", err)
|
c.Data["json"] = LogisticsRegisterResp{
|
||||||
|
Result: false,
|
||||||
|
ReturnCode: "1002",
|
||||||
|
Message: "单号不存在",
|
||||||
|
}
|
||||||
|
c.ServeJSON()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
gyData := &LogisticsRegisterResp{}
|
||||||
|
gyBody, _ := ioutil.ReadAll(resp.Body)
|
||||||
|
if err := json.Unmarshal(gyBody, gyData); err != nil {
|
||||||
|
c.Data["json"] = LogisticsRegisterResp{
|
||||||
|
Result: false,
|
||||||
|
ReturnCode: "1002",
|
||||||
|
Message: "单号不存在",
|
||||||
|
}
|
||||||
|
c.ServeJSON()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
c.Data["json"] = gyData
|
||||||
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(data) == 0 || err != nil {
|
if len(data) == 0 || err != nil {
|
||||||
@@ -156,7 +180,9 @@ func (c *LogisticsController) LogisticsQuery() {
|
|||||||
|
|
||||||
// 查询订单的运单是否存在
|
// 查询订单的运单是否存在
|
||||||
data, err := dao.GetWayBillsByWayBillId(dao.GetDB(), param.TrackNo)
|
data, err := dao.GetWayBillsByWayBillId(dao.GetDB(), param.TrackNo)
|
||||||
if err != nil || len(data) == 0 {
|
if (err != nil || len(data) == 0) && web.BConfig.RunMode != "jxgy" {
|
||||||
|
resp, err := tiktok_store.HttpToGuoYuan(utils.Struct2Map(param, "", true), tiktok_store.CaiShiPushGyTagDeliveryDetail)
|
||||||
|
if err != nil {
|
||||||
c.Data["json"] = LogisticsQueryRest{
|
c.Data["json"] = LogisticsQueryRest{
|
||||||
Result: false,
|
Result: false,
|
||||||
ReturnCode: "1002",
|
ReturnCode: "1002",
|
||||||
@@ -165,6 +191,20 @@ func (c *LogisticsController) LogisticsQuery() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
wayBillDetail := &LogisticsQueryRest{}
|
||||||
|
gyBody, _ := ioutil.ReadAll(resp.Body)
|
||||||
|
if err := json.Unmarshal(gyBody, wayBillDetail); err != nil {
|
||||||
|
c.Data["json"] = LogisticsQueryRest{
|
||||||
|
Result: false,
|
||||||
|
ReturnCode: "1002",
|
||||||
|
Message: "json unmarshal",
|
||||||
|
}
|
||||||
|
c.ServeJSON()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
c.Data["json"] = wayBillDetail
|
||||||
|
c.ServeJSON()
|
||||||
|
}
|
||||||
|
|
||||||
returnParam := &LogisticsQueryRest{
|
returnParam := &LogisticsQueryRest{
|
||||||
Result: true,
|
Result: true,
|
||||||
|
|||||||
@@ -2,7 +2,9 @@ package controllers
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api"
|
"git.rosy.net.cn/baseapi/platformapi/tiktok_shop/tiktok_api"
|
||||||
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/partner/purchase/tiktok_store"
|
"git.rosy.net.cn/jx-callback/business/partner/purchase/tiktok_store"
|
||||||
|
"git.rosy.net.cn/jx-callback/globals"
|
||||||
"git.rosy.net.cn/jx-callback/globals/api"
|
"git.rosy.net.cn/jx-callback/globals/api"
|
||||||
"github.com/astaxie/beego/server/web"
|
"github.com/astaxie/beego/server/web"
|
||||||
"strings"
|
"strings"
|
||||||
@@ -21,6 +23,7 @@ func (t *TiktokController) CallbackTiktokOrderMsg() {
|
|||||||
t.ServeJSON()
|
t.ServeJSON()
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if strings.Contains(string(byteList), "\"msg_id\":\"0\"") {
|
if strings.Contains(string(byteList), "\"msg_id\":\"0\"") {
|
||||||
t.Data["json"] = tiktok_api.CallbackResponse{Code: tiktok_api.CallbackSuccessCode, Msg: tiktok_api.CallbackSuccess}
|
t.Data["json"] = tiktok_api.CallbackResponse{Code: tiktok_api.CallbackSuccessCode, Msg: tiktok_api.CallbackSuccess}
|
||||||
t.ServeJSON()
|
t.ServeJSON()
|
||||||
@@ -29,6 +32,7 @@ func (t *TiktokController) CallbackTiktokOrderMsg() {
|
|||||||
|
|
||||||
// 2.参数解析
|
// 2.参数解析
|
||||||
orderStatus, resp := api.TiktokStore.CreateOrderCallback(byteList)
|
orderStatus, resp := api.TiktokStore.CreateOrderCallback(byteList)
|
||||||
|
globals.SugarLogger.Debugf("orderStatus %s,%s", utils.Format4Output(orderStatus, false), utils.Format4Output(resp, false))
|
||||||
if resp.Code != 0 {
|
if resp.Code != 0 {
|
||||||
t.Data["json"] = resp
|
t.Data["json"] = resp
|
||||||
t.ServeJSON()
|
t.ServeJSON()
|
||||||
|
|||||||
@@ -154,6 +154,7 @@ func (c *TiktokShopController) TokenMsg() {
|
|||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// JxcsToGyTiktokToken 果园京西速食接受token更新
|
||||||
func (c *TiktokShopController) JxcsToGyTiktokToken() {
|
func (c *TiktokShopController) JxcsToGyTiktokToken() {
|
||||||
data, err := ioutil.ReadAll(c.Ctx.Request.Body)
|
data, err := ioutil.ReadAll(c.Ctx.Request.Body)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user