- fk
This commit is contained in:
@@ -1099,14 +1099,20 @@ func updateOrCreateCourierStore(ctx *jxcontext.Context, storeDetail *dao.StoreDe
|
||||
return false, fmt.Errorf("门店的城市码有问题,请检查")
|
||||
}
|
||||
storeDetail = formalizeStore4Courier(storeDetail)
|
||||
needUpdate := false
|
||||
if _, err = handlerInfo.Handler.GetStore(ctx, 0, storeDetail.VendorStoreID); err != nil {
|
||||
if handlerInfo.Handler.IsErrStoreNotExist(err) {
|
||||
storeDetail.VendorStoreID, storeDetail.AuditStatus, err = handlerInfo.Handler.CreateStore(ctx, storeDetail)
|
||||
if err == nil {
|
||||
isCreated = true
|
||||
} else if handlerInfo.Handler.IsErrStoreExist(err) {
|
||||
err = nil
|
||||
}
|
||||
}
|
||||
} else {
|
||||
needUpdate = true
|
||||
}
|
||||
if err == nil && needUpdate {
|
||||
if updateHandler, _ := handlerInfo.Handler.(partner.IDeliveryUpdateStoreHandler); updateHandler != nil {
|
||||
err = updateHandler.UpdateStore(ctx, storeDetail)
|
||||
} else {
|
||||
@@ -1148,13 +1154,13 @@ func UpdateOrCreateCourierStores(ctx *jxcontext.Context, storeID int, isForceUpd
|
||||
if _, ok := v.Handler.(partner.IDeliveryUpdateStoreHandler); ok {
|
||||
storeDetail, err2 := dao.GetStoreDetail2(db, storeID, "", vendorID)
|
||||
if err = err2; err2 == nil {
|
||||
if isForceUpdate || storeDetail.VendorStoreID == "" {
|
||||
var isCreated bool
|
||||
if storeDetail.VendorStoreID == "" {
|
||||
isNeedAdd := storeDetail.VendorStoreID == ""
|
||||
if isForceUpdate || isNeedAdd {
|
||||
if isNeedAdd {
|
||||
storeDetail.VendorID = vendorID
|
||||
storeDetail.VendorStoreID = utils.Int2Str(storeDetail.ID)
|
||||
}
|
||||
if isCreated, err = updateOrCreateCourierStore(ctx, storeDetail); err == nil && isCreated {
|
||||
if _, err = updateOrCreateCourierStore(ctx, storeDetail); err == nil && isNeedAdd {
|
||||
storeCourier := &model.StoreCourierMap{
|
||||
VendorStoreID: storeDetail.VendorStoreID,
|
||||
Status: model.StoreStatusOpened,
|
||||
|
||||
@@ -186,6 +186,10 @@ func (c *DeliveryHandler) IsErrStoreNotExist(err error) bool {
|
||||
return dadaapi.IsErrShopNotExist(err)
|
||||
}
|
||||
|
||||
func (c *DeliveryHandler) IsErrStoreExist(err error) bool {
|
||||
return dadaapi.IsErrShopExist(err)
|
||||
}
|
||||
|
||||
func (c *DeliveryHandler) GetWaybillFee(order *model.GoodsOrder) (deliveryFeeInfo *partner.WaybillFeeInfo, err error) {
|
||||
db := dao.GetDB()
|
||||
deliveryFeeInfo = &partner.WaybillFeeInfo{}
|
||||
|
||||
@@ -86,6 +86,10 @@ func (c *DeliveryHandler) IsErrStoreNotExist(err error) bool {
|
||||
return mtpsapi.IsErrShopNotExist(err)
|
||||
}
|
||||
|
||||
func (c *DeliveryHandler) IsErrStoreExist(err error) bool {
|
||||
return mtpsapi.IsErrShopExist(err)
|
||||
}
|
||||
|
||||
func (c *DeliveryHandler) UpdateStore(ctx *jxcontext.Context, storeDetail *dao.StoreDetail2) (err error) {
|
||||
if globals.EnableStoreWrite {
|
||||
err = api.MtpsAPI.PagePoiUpdate(storeDetail.VendorStoreID, storeDetail.PayeeName, storeDetail.Tel1, "fakeemail@163.com")
|
||||
|
||||
@@ -33,6 +33,7 @@ type IDeliveryPlatformHandler interface {
|
||||
CreateStore(ctx *jxcontext.Context, storeDetail *dao.StoreDetail2) (vendorStoreID string, status int, err error)
|
||||
GetStore(ctx *jxcontext.Context, storeID int, vendorStoreID string) (storeDetail *dao.StoreDetail2, err error)
|
||||
IsErrStoreNotExist(err error) bool
|
||||
IsErrStoreExist(err error) bool
|
||||
|
||||
CreateWaybill(order *model.GoodsOrder, policy CreateWaybillPolicy) (bill *model.Waybill, err error)
|
||||
CancelWaybill(bill *model.Waybill, cancelReasonID int, cancelReason string) (err error)
|
||||
|
||||
Reference in New Issue
Block a user