Merge branch 'jdshop' of https://e.coding.net/rosydev/jx-callback into jdshop
This commit is contained in:
@@ -82,9 +82,9 @@ func GetThingToTiktokMapList(db *DaoDB, vendorId int, thingId int64, vendorOrgCo
|
||||
}
|
||||
|
||||
// DeleteThingToTiktokMapList 删除同步关联关系
|
||||
func DeleteThingToTiktokMapList(vendorId int, vendorThingId string) error {
|
||||
sql := ` DELETE FROM thing_map t1 WHERE vendor_thing_id = ? AND vendor_id = ? `
|
||||
param := []interface{}{vendorThingId, vendorId}
|
||||
func DeleteThingToTiktokMapList(vendorId int, vendorThingId string, skuId int) error {
|
||||
sql := ` DELETE FROM thing_map t1 WHERE vendor_thing_id = ? AND vendor_id = ? AND thing_id = ? `
|
||||
param := []interface{}{vendorThingId, vendorId, skuId}
|
||||
_, err := ExecuteSQL(GetDB(), sql, param...)
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -7,14 +7,18 @@ import (
|
||||
"git.rosy.net.cn/jx-callback/business/jxutils/netprinter"
|
||||
"git.rosy.net.cn/jx-callback/business/model"
|
||||
"git.rosy.net.cn/jx-callback/business/model/dao"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"net/http"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// 美团回调接口
|
||||
func OnCallbackMsg(msg *mtwmapi.CallbackMsg) (response *mtwmapi.CallbackResponse) {
|
||||
func OnCallbackMsg(msg *mtwmapi.CallbackMsg, msgType string) (response *mtwmapi.CallbackResponse) {
|
||||
// 获取平台门店id
|
||||
//store, err := dao.GetStoreDetailByVendorStoreID(dao.GetDB(), GetVendorStoreIDFromMsg(msg), model.VendorIDMTWM, GetVendorAppIdFromMsg(msg))
|
||||
//_, err := dao.GetStoreDetailByVendorStoreID(dao.GetDB(), GetVendorStoreIDFromMsg(msg), model.VendorIDMTWM, GetVendorAppIdFromMsg(msg))
|
||||
//if err != nil && strings.Contains(err.Error(), "no row found") {
|
||||
//
|
||||
// forwardOrderToGy(msg, msgType)
|
||||
// return mtwmapi.SuccessResponse
|
||||
//}
|
||||
if CurPurchaseHandler != nil {
|
||||
if msg.Cmd == mtwmapi.MsgTypeStoreStatusChanged || msg.Cmd == mtwmapi.MsgTypeStoreAuditStatusChanged {
|
||||
@@ -60,27 +64,54 @@ func GetVendorAppIdFromMsg(msg *mtwmapi.CallbackMsg) string {
|
||||
return msg.FormData.Get(mtwmapi.KeyAppID)
|
||||
}
|
||||
|
||||
//
|
||||
//func forwardOrderToGy(msg *mtwmapi.CallbackMsg) {
|
||||
// cl := http.Client{}
|
||||
// params := make(map[string]interface{})
|
||||
// params["mt_peisong_id"] = msg.MtPeisongID
|
||||
// params["courier_name"] = msg.CourierName
|
||||
// params["delivery_id"] = msg.DeliveryID
|
||||
// params["appkey"] = msg.AppKey
|
||||
// params["order_id"] = msg.OrderID
|
||||
// params["courier_phone"] = msg.CourierPhone
|
||||
// params["status"] = msg.Status
|
||||
// params["timestamp"] = msg.Timestamp
|
||||
// params["cancel_reason_id"] = msg.CancelReasonId
|
||||
// params["cancel_reason"] = msg.CancelReason
|
||||
// urls := utils.Map2URLValues(params)
|
||||
// sign := signParams(urls)
|
||||
// params["sign"] = sign
|
||||
// request, err := http.NewRequest(http.MethodPost, "http://callback-jxgy.jxc4.com/mtps/status", strings.NewReader(utils.Map2URLValues(params).Encode()))
|
||||
// if err != nil {
|
||||
// return
|
||||
// }
|
||||
// request.Header.Set("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8")
|
||||
// cl.Do(request)
|
||||
//}
|
||||
func forwardOrderToGy(msg *mtwmapi.CallbackMsg, msgType string) {
|
||||
cl := http.Client{}
|
||||
callbackUrl := GetMsgCallBackUrl(msgType, msg.AppID)
|
||||
request, err := http.NewRequest(http.MethodPost, "http://callback-jxgy.jxc4.com/mtwm/"+callbackUrl, strings.NewReader(msg.FormData.Encode()))
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
request.Header.Set("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8")
|
||||
cl.Do(request)
|
||||
}
|
||||
|
||||
func GetMsgCallBackUrl(msgType, appId string) string {
|
||||
interfaceUrl := ""
|
||||
switch msgType {
|
||||
case mtwmapi.MsgTypeWaybillStatus:
|
||||
interfaceUrl = "/waybillStatus"
|
||||
case mtwmapi.MsgTypeNewOrder:
|
||||
interfaceUrl = "/newOrder"
|
||||
case mtwmapi.MsgTypeOrderAccepted:
|
||||
interfaceUrl = "/orderAccepted"
|
||||
case mtwmapi.MsgTypeOrderFinished:
|
||||
interfaceUrl = "/orderFinished"
|
||||
case mtwmapi.MsgTypeOrderFinancial:
|
||||
interfaceUrl = "/orderFinancial"
|
||||
case mtwmapi.MsgTypeOrderCanceled:
|
||||
interfaceUrl = "/orderCanceled"
|
||||
case mtwmapi.MsgTypeUserUrgeOrder:
|
||||
interfaceUrl = "/userUrgeOrder"
|
||||
case mtwmapi.MsgTypePrivateNumberDowngrade:
|
||||
interfaceUrl = "/numberDowngrade"
|
||||
case mtwmapi.MsgTypeOrderModified:
|
||||
interfaceUrl = "/orderModified"
|
||||
case mtwmapi.MsgTypeOrderRefund:
|
||||
interfaceUrl = "/orderRefund"
|
||||
case mtwmapi.MsgTypeOrderPartialRefund:
|
||||
interfaceUrl = "/orderPartialRefund"
|
||||
case mtwmapi.MsgTypeOrderFinishedPickup:
|
||||
interfaceUrl = "/orderFinishedPickup"
|
||||
case mtwmapi.MsgTypeStoreStatusChanged:
|
||||
interfaceUrl = "/storeStatusChanged"
|
||||
case mtwmapi.MsgTypeStoreAuditStatusChanged:
|
||||
interfaceUrl = "/storeAuditStatusChanged"
|
||||
case mtwmapi.MsgTypeSkuDelete:
|
||||
interfaceUrl = "/skuDelete"
|
||||
case mtwmapi.MsgTypeStoreBind:
|
||||
interfaceUrl = "/storeBind"
|
||||
default:
|
||||
globals.SugarLogger.Errorf("美团超市[app_id :=%s ,callbackUrl := %s ]回调推送到果园错误,回调地址不正确", appId, msgType)
|
||||
}
|
||||
return interfaceUrl
|
||||
}
|
||||
|
||||
@@ -209,6 +209,9 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
|
||||
storeSku.VendorSonSkuID = utils.Int2Str(storeSku.SkuID) // 还没同步子商品
|
||||
failedList = putils.GetErrMsg2FailedSingleList(storeSku, errors.New("只创建了主商品,没创建子商品"), storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
|
||||
} else if localThing[0].SyncStatus == model.ThingTypeSyncing {
|
||||
if time.Now().Unix()-localThing[0].CreatedAt.Unix() > 300 {
|
||||
dao.DeleteThingToTiktokMapList(model.VendorIDDD, localThing[0].VendorThingID, storeSku.SkuID)
|
||||
}
|
||||
continue
|
||||
} else if localThing[0].SyncStatus == model.ThingTypeSyncSuccess {
|
||||
// 主商品存在,直接同步子商品
|
||||
@@ -258,6 +261,7 @@ func (p *PurchaseHandler) createOrUpdateStoreSkus(ctx *jxcontext.Context, storeI
|
||||
}
|
||||
|
||||
if (err != nil || childrenProductId == 0) && !strings.Contains(err.Error(), "2010001") { // 2010001:重复创建渠道商品,就去更新
|
||||
failedList = putils.GetErrMsg2FailedSingleList(storeSku, err, storeID, model.VendorChineseNames[model.VendorIDDD], syncType)
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@ package controllers
|
||||
import (
|
||||
"encoding/base64"
|
||||
"fmt"
|
||||
"git.rosy.net.cn/jx-callback/globals"
|
||||
"net/http"
|
||||
"strings"
|
||||
|
||||
@@ -225,14 +224,14 @@ func (c *Auth2Controller) WeixinMPOAuth2() {
|
||||
}
|
||||
}
|
||||
if params.Block != "" {
|
||||
if moblie := params.Block[strings.LastIndex(params.Block, "=")+1:]; moblie != "" {
|
||||
if user, err := dao.GetUserByID(dao.GetDB(), "mobile", moblie); err == nil {
|
||||
if mobile := params.Block[strings.LastIndex(params.Block, "=")+1:]; mobile != "" {
|
||||
if user, err := dao.GetUserByID(dao.GetDB(), "mobile", mobile); err == nil {
|
||||
if user != nil {
|
||||
authInfo.AuthBindInfo.UserID = user.UserID
|
||||
authInfo.AuthBindInfo.AuthBind.UserID = user.UserID
|
||||
auth2.AddAuthBind(user, authInfo)
|
||||
} else {
|
||||
return retVal, errCode, fmt.Errorf("未查询到用户!mobile :%v", moblie)
|
||||
return retVal, errCode, fmt.Errorf("未查询到用户!mobile :%v", mobile)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -241,8 +240,6 @@ func (c *Auth2Controller) WeixinMPOAuth2() {
|
||||
params.Block = params.Block[:strings.LastIndex(params.Block, "?")]
|
||||
}
|
||||
redirectURL = fmt.Sprintf("%s?info=%s", params.Block, base64.StdEncoding.EncodeToString(utils.MustMarshal(callResult)))
|
||||
globals.SugarLogger.Debugf("===redirectURL=== %s", redirectURL)
|
||||
globals.SugarLogger.Debugf("===retVal=== %s", utils.Format4Output(retVal, false))
|
||||
return retVal, model.ErrorCodeIgnore, err
|
||||
})
|
||||
c.Redirect(redirectURL, http.StatusTemporaryRedirect)
|
||||
|
||||
@@ -15,7 +15,7 @@ func (c *MtwmController) onCallbackMsg(msgType string) {
|
||||
c.Data["json"] = mtwmapi.Err2CallbackResponse(nil, "")
|
||||
msg, callbackResponse := api.MtwmAPI.GetCallbackMsg(c.Ctx.Request)
|
||||
if callbackResponse == nil {
|
||||
callbackResponse = mtwm.OnCallbackMsg(msg)
|
||||
callbackResponse = mtwm.OnCallbackMsg(msg, msgType)
|
||||
if callbackResponse == nil {
|
||||
callbackResponse = mtwmapi.Err2CallbackResponse(nil, "")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user