This commit is contained in:
邹宗楠
2024-10-16 09:17:05 +08:00
parent a6e6222075
commit 32cde499da
28 changed files with 271 additions and 167 deletions

View File

@@ -90,8 +90,11 @@ func (c *DeliveryHandler) OnWaybillExcept(msg *mtpsapi.CallbackOrderExceptionMsg
func (c *DeliveryHandler) onWaybillMsg(msg *mtpsapi.CallbackOrderMsg) (retVal *mtpsapi.CallbackResponse) {
order, goodsOrder := c.callbackMsg2Waybill(msg)
//查不到订单可能就是果园的订单
if goodsOrder == nil && beego.BConfig.RunMode != "jxgy" {
c.pushToGy(msg)
if goodsOrder == nil && beego.BConfig.RunMode == model.ServerTypeVegetable {
c.pushToGy(msg, model.ServerTypeFruits)
return mtpsapi.SuccessResponse
} else if goodsOrder == nil && beego.BConfig.RunMode == model.ServerTypeFruits {
c.pushToGy(msg, model.ServerTypePet)
return mtpsapi.SuccessResponse
}
// 多次取消,送达,只处理第一次
@@ -195,7 +198,7 @@ func pushMTPSToTiktok(msgStatus int, order *model.Waybill, lng, lat, vendorOrgCo
}
}
func (c *DeliveryHandler) pushToGy(msg *mtpsapi.CallbackOrderMsg) {
func (c *DeliveryHandler) pushToGy(msg *mtpsapi.CallbackOrderMsg, serverType string) {
cl := http.Client{}
params := make(map[string]interface{})
params["mt_peisong_id"] = msg.MtPeisongID
@@ -211,10 +214,22 @@ func (c *DeliveryHandler) pushToGy(msg *mtpsapi.CallbackOrderMsg) {
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
var request *http.Request
var err error
switch serverType {
case model.ServerTypeFruits:
request, err = http.NewRequest(http.MethodPost, "http://callback-jxgy.jxc4.com/mtps/status", strings.NewReader(utils.Map2URLValues(params).Encode()))
if err != nil {
return
}
case model.ServerTypePet:
request, err = http.NewRequest(http.MethodPost, "http://callback-jxpet.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)
}