刷新物料店库存,商品上下架
This commit is contained in:
@@ -192,9 +192,10 @@ type tUpdateSkuSpecTag struct {
|
||||
}
|
||||
|
||||
type MatterStock struct {
|
||||
SkuID int `json:"skuID"`
|
||||
Name string `json:"name"`
|
||||
Stock int `json:"stock"`
|
||||
SkuID int `json:"skuID"`
|
||||
SkuNameID int `json:"skuNameID"`
|
||||
Name string `json:"name"`
|
||||
Stock int `json:"stock"`
|
||||
}
|
||||
|
||||
const (
|
||||
@@ -2406,7 +2407,7 @@ func GetTopSkusByCityCode(ctx *jxcontext.Context, cityCode, storeID int) (skuNam
|
||||
var skuList []*model.SkuAndName
|
||||
storeSkuSyncInfo, _ := dao.GetStoreSkusAndSkuName(db, []int{storeID}, nil, []int{v.ID})
|
||||
for _, storeSkuSync := range storeSkuSyncInfo {
|
||||
sku, _ := dao.GetSkus(db, []int{storeSkuSync.ID}, nil, nil, nil)
|
||||
sku, _ := dao.GetSkus(db, []int{storeSkuSync.ID}, nil, nil, nil, nil)
|
||||
sku[0].Price = int(storeSkuSync.Price)
|
||||
skuList = append(skuList, sku...)
|
||||
}
|
||||
@@ -3019,7 +3020,7 @@ func FocusStoreSkusByExcelBin(ctx *jxcontext.Context, reader io.Reader, isAsync,
|
||||
for k, _ := range skuMap {
|
||||
skuIDs = append(skuIDs, k)
|
||||
}
|
||||
skuList, err := dao.GetSkus(db, skuIDs, nil, nil, nil)
|
||||
skuList, err := dao.GetSkus(db, skuIDs, nil, nil, nil, nil)
|
||||
storeList, err := dao.GetStoreList(db, nil, nil, nil, nil, "")
|
||||
if err != nil && len(skuList) == 0 {
|
||||
return result, err
|
||||
@@ -3132,7 +3133,7 @@ func FocusStoreSkusBySku(ctx *jxcontext.Context, skuBindInfos []*StoreSkuBindInf
|
||||
if err != nil {
|
||||
return retVal, err
|
||||
}
|
||||
skuList, err := dao.GetSkus(db, []int{skuID}, nil, nil, nil)
|
||||
skuList, err := dao.GetSkus(db, []int{skuID}, nil, nil, nil, nil)
|
||||
if err != nil {
|
||||
return retVal, err
|
||||
}
|
||||
@@ -3318,7 +3319,7 @@ func AutoFocusStoreSkusWithoutFocus(ctx *jxcontext.Context, skuIDs []int, isSync
|
||||
}
|
||||
var skuBindSkuList []*StoreSkuBindSkuInfo
|
||||
skuMap := make(map[int]int)
|
||||
skuList, _ := dao.GetSkus(db, nil, []int{v.NameID}, nil, nil)
|
||||
skuList, _ := dao.GetSkus(db, nil, []int{v.NameID}, nil, nil, nil)
|
||||
if len(v.Skus) != len(skuList) {
|
||||
for _, skus := range v.Skus {
|
||||
skuMap[skus.SkuID] = 1
|
||||
@@ -3624,7 +3625,7 @@ func RefreshJxPriceByVendor(ctx *jxcontext.Context, jdStoreSkus []*JdStoreSkus,
|
||||
}
|
||||
err = dao.GetRows(db, &cats, sql, sqlParams...)
|
||||
if len(cats) > 0 {
|
||||
skus, err = dao.GetSkus(db, []int{int(cats[0].ThingID)}, nil, nil, nil)
|
||||
skus, err = dao.GetSkus(db, []int{int(cats[0].ThingID)}, nil, nil, nil, nil)
|
||||
if err != nil || len(skus) == 0 {
|
||||
return result, fmt.Errorf("没有找到该京西skuID!,京西skuID :[%v]", cats[0].ThingID)
|
||||
}
|
||||
@@ -3684,7 +3685,7 @@ func RefreshJxPriceByVendor(ctx *jxcontext.Context, jdStoreSkus []*JdStoreSkus,
|
||||
var (
|
||||
pricePercentagePack []*model.PricePercentageItem
|
||||
)
|
||||
skus, _ := dao.GetSkus(db, []int{v.JdSkuID}, nil, nil, nil)
|
||||
skus, _ := dao.GetSkus(db, []int{v.JdSkuID}, nil, nil, nil, nil)
|
||||
if len(skus) == 0 {
|
||||
continue
|
||||
}
|
||||
@@ -3837,7 +3838,7 @@ func getSkuNamePrice(db *dao.DaoDB, skuID int, orgPrice int64) (price int64, nam
|
||||
var (
|
||||
specQuality float64
|
||||
)
|
||||
skuList, _ := dao.GetSkus(db, []int{skuID}, nil, nil, nil)
|
||||
skuList, _ := dao.GetSkus(db, []int{skuID}, nil, nil, nil, nil)
|
||||
for _, v := range skuList {
|
||||
if v.Unit == model.SpecialUnit {
|
||||
if v.SpecUnit == model.SpecUnitNames[1] || v.SpecUnit == model.SpecUnitNames[2] {
|
||||
@@ -3934,7 +3935,74 @@ func ReturnStoreSkuBind(ctx *jxcontext.Context, snapshotAt string, storeIDs, sku
|
||||
return err
|
||||
}
|
||||
|
||||
func RefreshMatterStock(ctx *jxcontext.Context, skuID int) (matterStock []*MatterStock, err error) {
|
||||
// api.JdEclpAPI.SearchShopStock(searchShopStockParam)
|
||||
return matterStock, err
|
||||
func RefreshMatterStock(ctx *jxcontext.Context, skuID int) (err error) {
|
||||
var (
|
||||
db = dao.GetDB()
|
||||
skuBindInfos []*StoreSkuBindInfo
|
||||
)
|
||||
if skuID != 0 {
|
||||
skus, err := dao.GetSkus(db, []int{skuID}, nil, nil, nil, nil)
|
||||
if err != nil || len(skus) == 0 {
|
||||
return err
|
||||
}
|
||||
result, err := api.JdEclpAPI.SearchShopStock(skus[0].EclpID)
|
||||
if err != nil || result == nil {
|
||||
return err
|
||||
}
|
||||
var isSale = 0
|
||||
if utils.Str2Int64(result.Data[0].StockNum) > 0 {
|
||||
isSale = 1
|
||||
} else {
|
||||
isSale = -1
|
||||
}
|
||||
storeSkuList, _ := dao.GetStoresSkusInfo(db, nil, []int{skuID})
|
||||
for _, vv := range storeSkuList {
|
||||
var storeSkuBindSkus []*StoreSkuBindSkuInfo
|
||||
storeSkuBindSku := &StoreSkuBindSkuInfo{
|
||||
SkuID: vv.SkuID,
|
||||
IsSale: isSale,
|
||||
}
|
||||
storeSkuBindSkus = append(storeSkuBindSkus, storeSkuBindSku)
|
||||
storeSkuBind := &StoreSkuBindInfo{
|
||||
StoreID: vv.StoreID,
|
||||
// NameID: v.SkuNameID,
|
||||
Skus: storeSkuBindSkus,
|
||||
}
|
||||
skuBindInfos = append(skuBindInfos, storeSkuBind)
|
||||
}
|
||||
} else {
|
||||
result, err := api.JdEclpAPI.SearchShopStock("")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
for _, v := range result.Data {
|
||||
skus, err := dao.GetSkus(db, nil, nil, nil, nil, []string{v.GoodsNo})
|
||||
if err != nil || len(skus) == 0 {
|
||||
continue
|
||||
}
|
||||
var isSale = 0
|
||||
if utils.Str2Int64(result.Data[0].StockNum) > 0 {
|
||||
isSale = 1
|
||||
} else {
|
||||
isSale = -1
|
||||
}
|
||||
storeSkuList, _ := dao.GetStoresSkusInfo(db, nil, []int{skus[0].ID})
|
||||
for _, vv := range storeSkuList {
|
||||
var storeSkuBindSkus []*StoreSkuBindSkuInfo
|
||||
storeSkuBindSku := &StoreSkuBindSkuInfo{
|
||||
SkuID: vv.SkuID,
|
||||
IsSale: isSale,
|
||||
}
|
||||
storeSkuBindSkus = append(storeSkuBindSkus, storeSkuBindSku)
|
||||
storeSkuBind := &StoreSkuBindInfo{
|
||||
StoreID: vv.StoreID,
|
||||
// NameID: v.SkuNameID,
|
||||
Skus: storeSkuBindSkus,
|
||||
}
|
||||
skuBindInfos = append(skuBindInfos, storeSkuBind)
|
||||
}
|
||||
}
|
||||
}
|
||||
UpdateStoresSkusByBind(ctx, nil, skuBindInfos, true, true)
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user