This commit is contained in:
邹宗楠
2023-11-20 09:37:02 +08:00
parent 382c45297a
commit 92ed3708b4
3 changed files with 52 additions and 15 deletions

View File

@@ -1121,19 +1121,20 @@ func UpdateSkuName(ctx *jxcontext.Context, nameID int, payload map[string]interf
dao.Rollback(db, txDB)
return 0, err
}
// if valid["jdsStockSwitch"] != nil {
// if _, err = SetStoreSkuSyncStatus2(db, []int{model.JdShopMainStoreID}, []int{model.VendorIDJDShop}, skuIDs, model.SyncFlagSaleMask); err != nil {
// dao.Rollback(db, txDB)
// return 0, err
// }
// }
}
dao.Commit(db, txDB)
errList := errlist.New()
errList.AddErr(err)
_, err = CurVendorSync.SyncSku(ctx, db, nameID, -1, false, false, userName)
errList.AddErr(err)
//_, err = CurVendorSync.SyncSku(ctx, db, nameID, -1, false, false, userName)
//errList.AddErr(err)
storeIds, err := GetSyncSkuStoreId(db, skuIDs)
if err != nil {
return 0, err
}
_, err2 = CurVendorSync.SyncStoresSkus(jxcontext.AdminCtx, nil, 0, db, partner.GetSingleStoreVendorIDs(), storeIds, skuIDs, false, false, true)
errList.AddErr(err2)
err = errList.GetErrListAsOne()
if globals.IsAddEvent {
mapBefore := refutil.FindMapAndStructMixed(valid, beforSkuName)
@@ -1410,6 +1411,26 @@ func SetUpdateSkuPriceIfChange(db *dao.DaoDB, skuPrice, nowPrice int64, skuId in
return err
}
// GetSyncSkuStoreId 当每个商品存在修改时,需要重新同步商品的信息,立马同步,获取需要同步的门店信息
func GetSyncSkuStoreId(db *dao.DaoDB, skus []int) ([]int, error) {
sql := ` SELECT * FROM store_sku_bind b
INNER JOIN store s on s.id = b.store_id
WHERE b.sku_id IN (` + dao.GenQuestionMarks(len(skus)) + `) AND b.status = ? AND s.status <> ? AND b.deleted_at = ? `
param := []interface{}{skus, model.YES, model.StoreStatusDisabled, utils.DefaultTimeValue}
skuBind := make([]*model.StoreSkuBind, 0, 0)
if err := dao.GetRows(db, &skuBind, sql, param); err != nil {
return nil, err
}
storeIds := make([]int, 0, 0)
for _, v := range skuBind {
storeIds = append(storeIds, v.StoreID)
}
return storeIds, nil
}
func UpdateSkuImg(ctx *jxcontext.Context, skuID int, payload map[string]interface{}) (string, error) {
var (
db = dao.GetDB()