This commit is contained in:
suyl
2021-05-22 11:16:32 +08:00
parent f3bdc35c35
commit 6540dfde8a

View File

@@ -279,7 +279,8 @@ func GetStoresSkusForStore(ctx *jxcontext.Context, storeID int, isFocus, isAct b
SkuNames []*dao.StoreSkuNameExt
)
sql := `
SELECT SQL_CALC_FOUND_ROWS DISTINCT a.*, e.id store_id, c.unit_price
SELECT SQL_CALC_FOUND_ROWS DISTINCT a.*, e.id store_id, c.unit_price ,b.id sku_id, b.spec_quality sku_spec_quality,
b.spec_unit sku_spec_unit, b.status sku_status
FROM sku_name a
JOIN sku b ON b.name_id = a.id AND b.deleted_at = ?
JOIN store e ON e.deleted_at = ?
@@ -366,48 +367,62 @@ func GetStoresSkusForStore(ctx *jxcontext.Context, storeID int, isFocus, isAct b
sql += `
LIMIT ? OFFSET ?
`
var tmpList []*tGetStoresSkusInfo
pageSize = jxutils.FormalizePageSize(pageSize)
offset = jxutils.FormalizePageOffset(offset)
sqlParams = append(sqlParams, pageSize, offset)
txDB, _ := dao.Begin(db)
defer dao.Commit(db, txDB)
if err = dao.GetRowsTx(txDB, &SkuNames, sql, sqlParams...); err == nil {
if err = dao.GetRowsTx(txDB, &tmpList, sql, sqlParams...); err == nil {
skuNamesInfo = &dao.StoreSkuNamesInfo{
TotalCount: dao.GetLastTotalRowCount2(db, txDB),
}
// skuNamesInfo.TotalCount = dao.GetLastTotalRowCount2(db, txDB)
for _, v := range SkuNames {
var skus []*dao.StoreSkuExt
sql2 := `
SELECT a.id sku_id, a.spec_quality sku_spec_quality, a.spec_unit sku_spec_unit, a.status sku_status,
b.stock, b.price bind_price, b.unit_price,
b.status store_sku_status
FROM sku a
JOIN sku_name c ON a.name_id = c.id AND c.deleted_at = ? AND c.status = ?
`
sqlParams2 := []interface{}{
utils.DefaultTimeValue, model.SkuStatusNormal,
}
if !isFocus {
sql2 += `
LEFT
`
}
sql2 += ` JOIN store_sku_bind b ON a.id = b.sku_id AND b.deleted_at = ? AND b.store_id = ?
WHERE a.deleted_at = ? AND a.name_id = ? AND a.status = ?
`
sqlParams2 = append(sqlParams2, utils.DefaultTimeValue, storeID,
utils.DefaultTimeValue, v.ID, model.SkuStatusNormal,
)
if status != -1 {
sql2 += " AND b.status = ?"
sqlParams2 = append(sqlParams2, status)
}
if err = dao.GetRows(db, &skus, sql2, sqlParams2); err == nil {
v.Skus = skus
for _, v := range tmpList {
//var skus []*dao.StoreSkuExt
//sql2 := `
// SELECT a.id sku_id, a.spec_quality sku_spec_quality, a.spec_unit sku_spec_unit, a.status sku_status,
// b.stock, b.price bind_price, b.unit_price,
// b.status store_sku_status
// FROM sku a
// JOIN sku_name c ON a.name_id = c.id AND c.deleted_at = ? AND c.status = ?
//`
//sqlParams2 := []interface{}{
// utils.DefaultTimeValue, model.SkuStatusNormal,
//}
//if !isFocus {
// sql2 += `
// LEFT
// `
//}
//sql2 += ` JOIN store_sku_bind b ON a.id = b.sku_id AND b.deleted_at = ? AND b.store_id = ?
// WHERE a.deleted_at = ? AND a.name_id = ? AND a.status = ?
//`
//sqlParams2 = append(sqlParams2, utils.DefaultTimeValue, storeID,
// utils.DefaultTimeValue, v.ID, model.SkuStatusNormal,
//)
//if status != -1 {
// sql2 += " AND b.status = ?"
// sqlParams2 = append(sqlParams2, status)
//}
//if err = dao.GetRows(db, &skus, sql2, sqlParams2); err == nil {
// v.Skus = skus
//}
var storeName *dao.StoreSkuNameExt
storeName = &dao.StoreSkuNameExt{
StoreID: v.StoreID,
StoreName: v.StoreName,
SkuName: v.SkuName,
UnitPrice: v.UnitPrice,
PayPercentage: v.PayPercentage,
RealMidUnitPrice: v.RealMidUnitPrice,
YbSkuName: v.YbSkuName,
AuditUnitPrice: v.AuditUnitPrice,
}
skuNamesInfo.SkuNames = append(skuNamesInfo.SkuNames, storeName)
storeName.Skus = append(storeName.Skus, &v.StoreSkuExt)
}
skuNamesInfo.SkuNames = SkuNames
//skuNamesInfo.SkuNames = SkuNames
if err == nil {
if isFocus {
if err == nil {