|
|
|
@ -1,7 +1,9 @@
|
|
|
|
|
package order
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"errors"
|
|
|
|
|
"fmt"
|
|
|
|
|
"git.oa00.com/go/mysql"
|
|
|
|
|
"log"
|
|
|
|
|
"recook/configs"
|
|
|
|
|
"recook/internal/back"
|
|
|
|
@ -15,6 +17,7 @@ import (
|
|
|
|
|
"recook/internal/v2/lib/jcook"
|
|
|
|
|
"recook/internal/v2/lib/shama"
|
|
|
|
|
"recook/internal/v2/model/jyy"
|
|
|
|
|
goods2 "recook/internal/v2/model/recook/goods"
|
|
|
|
|
"recook/tools"
|
|
|
|
|
"strconv"
|
|
|
|
|
|
|
|
|
@ -360,7 +363,31 @@ func JdOrderSubmit(tx *gorm.DB, ip string, data map[uint][]order_preview.GoodsDe
|
|
|
|
|
}
|
|
|
|
|
var resp jcook.OrderSubmitResp
|
|
|
|
|
if err := client.Exec(req1, &resp); err != nil {
|
|
|
|
|
return jcook.OrderSubmitResp{}, err
|
|
|
|
|
if err.Error() == "商品价格不匹配" {
|
|
|
|
|
go func() {
|
|
|
|
|
rq := jcook.SkuPriceReq{}
|
|
|
|
|
for _, info := range t {
|
|
|
|
|
rq.SkuIDSet = append(rq.SkuIDSet, info.SkuID)
|
|
|
|
|
}
|
|
|
|
|
var res []jcook.SkuPriceResp
|
|
|
|
|
if err := client.Exec(rq, &res); err != nil {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
if len(res) == 0 {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
for _, t := range res {
|
|
|
|
|
var sku goods2.RecookGoodsSkuModel
|
|
|
|
|
if err := mysql.Db.Table(sku.TableName()).Where("third_party_sku_id = ? and third_party_type=3", t.SkuID).Updates(map[string]interface{}{
|
|
|
|
|
"purchase_price": t.SupplyPrice,
|
|
|
|
|
}).Error; err != nil {
|
|
|
|
|
log.Println(err.Error())
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}()
|
|
|
|
|
}
|
|
|
|
|
return jcook.OrderSubmitResp{}, errors.New("价格变动,请重新下单")
|
|
|
|
|
}
|
|
|
|
|
return resp, nil
|
|
|
|
|
}
|
|
|
|
|