diff --git a/business/jxstore/cms/store.go b/business/jxstore/cms/store.go index 9c7e0b56b..452c32ccf 100644 --- a/business/jxstore/cms/store.go +++ b/business/jxstore/cms/store.go @@ -1615,6 +1615,9 @@ func AddStoreVendorMap(ctx *jxcontext.Context, db *dao.DaoDB, vendorID int, vend storeMap.MtwmToken = token.AccessToken storeMap.MtwmRefreshToken = token.RefreshToken } + if err != nil { + return nil, err + } } storeMap.SyncStatus = model.SyncFlagModifiedMask | model.SyncFlagStoreName | model.SyncFlagStoreAddress // 新增绑定门店是修改的概念 } else { diff --git a/business/jxstore/cms/vendor_sku.go b/business/jxstore/cms/vendor_sku.go new file mode 100644 index 000000000..01a5bf87c --- /dev/null +++ b/business/jxstore/cms/vendor_sku.go @@ -0,0 +1,109 @@ +package cms + +import ( + "git.rosy.net.cn/jx-callback/business/model" +) + +// +//// GetMtSkuDetailInfo 获取美团商品信息,暂时只支持美团 +//func GetMtSkuDetailInfo(ctx *jxcontext.Context, vendorOrderID string, vendorSkuName string) (outSkuNameExt *model.SkuNameExt, err error) { +// orderDetail, err := partner.CurOrderManager.LoadOrder(vendorOrderID, model.VendorIDMTWM) +// if err != nil { +// return nil, err +// } +// +// // 获取订单详情 +// mtApi := mtwm.GetAPI(orderDetail.VendorOrgCode, orderDetail.JxStoreID, orderDetail.VendorStoreID) +// mtOrderDetail, err := mtApi.OrderGetOrderDetail(utils.Str2Int64(vendorOrderID), false) +// if err != nil { +// return nil, err +// } +// var detail []map[string]interface{} +// if err = utils.UnmarshalUseNumber([]byte(mtOrderDetail["detail"].(string)), &detail); err != nil { +// return nil, err +// } +// +// mtCode := "" +// for _, product := range detail { +// if product["food_name"].(string) == vendorSkuName { +// if product["app_food_code"].(string) == "" { +// return nil, fmt.Errorf("[%s] 未获取到商品的美团code,无法创建商品", vendorSkuName) +// } +// mtCode = product["app_food_code"].(string) +// break +// } +// } +// if mtCode == "" { +// return nil, fmt.Errorf("[%s] 未获取到商品的美团code,无法创建商品", vendorSkuName) +// } +// +// // 获取美团商品详情 +// mtSkuDetail, err := mtApi.RetailGet(orderDetail.VendorStoreID, mtCode) +// if err != nil { +// return nil, err +// } +// +// skuName := &model.SkuNameExt{ +// SkuName: model.SkuName{ +// Prefix: "", +// Name: mtSkuDetail.Name, +// Upc: utils.String2Pointer(mtSkuDetail.UpcCode), +// Status: 1, +// CategoryID: 291, // ? +// IsGlobal: 1, +// Unit: mtSkuDetail.Unit, +// Price: utils.Float64TwoInt(mtSkuDetail.Price * float64(100)), +// DescImg: mtSkuDetail.PictureContents, +// }, +// Skus: nil, +// } +// +// skus := make([]*model.SkuWithVendor, 0, 0) +// for _, mtSks := range mtSkuDetail.SkuList { +// sku := &model.SkuWithVendor{ +// Sku: &model.Sku{ +// MinOrderCount: utils.Str2Int(mtSks.MinOrderCount), +// LadderBoxNum: utils.Str2Int(mtSks.LadderBoxNum), +// LadderBoxPrice: utils.Float64TwoInt(utils.Str2Float64(mtSks.Price) * float64(100)), +// SpecQuality: utils.Str2Int(mtSks.Weight), +// Weight: utils.Str2Int(mtSks.Weight), +// SpecUnit: mtSks.Unit, +// Status: 1, +// Comment: "", +// EclpID: "", +// }, +// } +// skus = append(skus, sku) +// } +// skuName.Skus = skus +// +// mTImg2Jx(skuName, mtSkuDetail.PictureList) +// return AddSkuName(ctx, skuName, ctx.GetUserName()) +//} + +func mTImg2Jx(sku *model.SkuNameExt, pictureList []string) { + switch len(pictureList) { + case 0: + return + case 1: + sku.Img = pictureList[0] + case 2: + sku.Img = pictureList[0] + sku.Img2 = pictureList[1] + case 3: + sku.Img = pictureList[0] + sku.Img2 = pictureList[1] + sku.Img3 = pictureList[2] + case 4: + sku.Img = pictureList[0] + sku.Img2 = pictureList[1] + sku.Img3 = pictureList[2] + sku.Img4 = pictureList[3] + case 5: + sku.Img = pictureList[0] + sku.Img2 = pictureList[1] + sku.Img3 = pictureList[2] + sku.Img4 = pictureList[3] + sku.Img5 = pictureList[4] + } +} diff --git a/business/partner/purchase/mtwm/store.go b/business/partner/purchase/mtwm/store.go index 6b46af877..be3c62e39 100644 --- a/business/partner/purchase/mtwm/store.go +++ b/business/partner/purchase/mtwm/store.go @@ -284,10 +284,10 @@ func (p *PurchaseHandler) UpdateStore(db *dao.DaoDB, storeID int, userName strin } if storeDetail.SyncStatus&(model.SyncFlagNewMask|model.SyncFlagStoreStatus) != 0 { // 平台状态和本地状态相同且都为禁用时不再更新 - vendorStatus := bizStatusMtwm2JX(remoteStoreInfo.OpenLevel, remoteStoreInfo.IsOnline) - if vendorStatus == mergedStoreStatus && mergedStoreStatus == model.StoreStatusDisabled { - return nil - } + //vendorStatus := bizStatusMtwm2JX(remoteStoreInfo.OpenLevel, remoteStoreInfo.IsOnline) + //if vendorStatus == mergedStoreStatus && mergedStoreStatus == model.StoreStatusDisabled { + // return nil + //} errList.AddErr(p.UpdateStoreStatus(jxcontext.AdminCtx, storeDetail.VendorOrgCode, storeID, storeDetail.VendorStoreID, mergedStoreStatus)) } diff --git a/controllers/cms_sku.go b/controllers/cms_sku.go index 6ed483f62..e35f3ce19 100644 --- a/controllers/cms_sku.go +++ b/controllers/cms_sku.go @@ -204,6 +204,21 @@ func (c *SkuController) AddSkuName() { }) } +// @Title 获取美团商品信息添加到本地 +// @Description 获取美团商品信息添加到本地 +// @Param token header string true "认证token" +// @Param orderSkuID formData int true "本地商品存储id" +// @Param vendorOrderID formData string true "订单id" +// @Success 200 {object} controllers.CallResult +// @Failure 200 {object} controllers.CallResult +// @router /MTSku2Local [post] +func (c *SkuController) MTSku2Local() { + c.callMTSku2Local(func(params *tSkuMTSku2LocalParams) (retVal interface{}, errCode string, err error) { + + return retVal, "", err + }) +} + // @Title 修改商品名信息 // @Description 修改商品名信息,注意:如果Places没有变动,不要传此字段,否则会导致不必要的删除与新增 // @Param token header string true "认证token"