复制门店商品价格不统一修改
This commit is contained in:
@@ -1734,6 +1734,41 @@ func CopyStoreSkus(ctx *jxcontext.Context, fromStoreID int, toStoreIDs []int, co
|
|||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("CopyStoreSkus fromStoreID:%d, toStoreID:%d, trackInfo:%s num3:%d", fromStoreID, toStoreID, ctx.GetTrackInfo(), num2)
|
globals.SugarLogger.Debugf("CopyStoreSkus fromStoreID:%d, toStoreID:%d, trackInfo:%s num3:%d", fromStoreID, toStoreID, ctx.GetTrackInfo(), num2)
|
||||||
dao.Commit(db)
|
dao.Commit(db)
|
||||||
|
|
||||||
|
//同一商品若源门店的规格少于要复制到的门店,则在复制的门店里的其他规格的unitprice不会变,
|
||||||
|
//导致复制的门店的商品unitprice不尽相同,这里先处理一下
|
||||||
|
type tStore struct {
|
||||||
|
NameID int `orm:"column(name_id)"`
|
||||||
|
StoreID int `orm:"column(store_id)"`
|
||||||
|
}
|
||||||
|
var resultList []*tStore
|
||||||
|
sql3 := `
|
||||||
|
SELECT a.name_id, a.store_id FROM (
|
||||||
|
SELECT DISTINCT a.unit_price, b.name_id, a.store_id FROM store_sku_bind a, sku b, store c
|
||||||
|
WHERE a.sku_id = b.id
|
||||||
|
AND c.id = a.store_id
|
||||||
|
AND c.deleted_at = ?
|
||||||
|
AND a.store_id = ?
|
||||||
|
AND a.deleted_at = ?)a
|
||||||
|
GROUP BY 1, 2
|
||||||
|
HAVING COUNT(a.unit_price) > 1
|
||||||
|
`
|
||||||
|
sqlParams3 := []interface{}{utils.DefaultTimeValue, toStoreID, utils.DefaultTimeValue}
|
||||||
|
err = dao.GetRows(db, &resultList, sql3, sqlParams3)
|
||||||
|
if len(resultList) > 0 {
|
||||||
|
var skuBindInfos []*StoreSkuBindInfo
|
||||||
|
for _, v := range resultList {
|
||||||
|
storeSkus, _ := dao.GetStoreSkusByNameIDs(db, []int{v.StoreID}, v.NameID)
|
||||||
|
unitPirce := storeSkus[0].UnitPrice
|
||||||
|
skuBindInfo := &StoreSkuBindInfo{
|
||||||
|
StoreID: v.StoreID,
|
||||||
|
NameID: v.NameID,
|
||||||
|
UnitPrice: int(unitPirce),
|
||||||
|
}
|
||||||
|
skuBindInfos = append(skuBindInfos, skuBindInfo)
|
||||||
|
}
|
||||||
|
_, err = updateStoresSkusWithoutSync(ctx, db, []int{toStoreID}, skuBindInfos, false, false)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if globals.IsAddEvent {
|
if globals.IsAddEvent {
|
||||||
mapAfter := make(map[string]interface{})
|
mapAfter := make(map[string]interface{})
|
||||||
|
|||||||
@@ -1636,7 +1636,7 @@ func UploadJdsImage(ctx *jxcontext.Context) (err error) {
|
|||||||
fmt.Println("testresultList3", utils.Format4Output(resultList, false))
|
fmt.Println("testresultList3", utils.Format4Output(resultList, false))
|
||||||
// var skuBindInfos []*cms.StoreSkuBindInfo
|
// var skuBindInfos []*cms.StoreSkuBindInfo
|
||||||
// for _, v := range resultList {
|
// for _, v := range resultList {
|
||||||
// storeSkus, _ := dao.GetStoreSkusByNameIDs(db, []int{v.StoreID}, v.NameID)
|
// storeSkus, _ := dao.GetStoreSkusByNameIDs(db, []int{v.StoreID}, v.NameID)
|
||||||
// unitPirce := storeSkus[0].UnitPrice
|
// unitPirce := storeSkus[0].UnitPrice
|
||||||
// skuBindInfo := &cms.StoreSkuBindInfo{
|
// skuBindInfo := &cms.StoreSkuBindInfo{
|
||||||
// StoreID: v.StoreID,
|
// StoreID: v.StoreID,
|
||||||
|
|||||||
@@ -998,7 +998,7 @@ func GetStoreSkusByNameIDs(db *DaoDB, storeIDs []int, nameID int) (skuList []*St
|
|||||||
sqlParams = append(sqlParams, storeIDs)
|
sqlParams = append(sqlParams, storeIDs)
|
||||||
}
|
}
|
||||||
sql += ` AND a.status != ?
|
sql += ` AND a.status != ?
|
||||||
ORDER BY a.created_at
|
ORDER BY a.updated_at DESC
|
||||||
`
|
`
|
||||||
sqlParams = append(sqlParams, model.SkuStatusDeleted)
|
sqlParams = append(sqlParams, model.SkuStatusDeleted)
|
||||||
err = GetRows(db, &skuList, sql, sqlParams...)
|
err = GetRows(db, &skuList, sql, sqlParams...)
|
||||||
|
|||||||
Reference in New Issue
Block a user