diff --git a/business/jxstore/cms/sku.go b/business/jxstore/cms/sku.go index 215cc8de9..709ce2524 100644 --- a/business/jxstore/cms/sku.go +++ b/business/jxstore/cms/sku.go @@ -3075,11 +3075,13 @@ func setImgs2(v *model.SkuName, imgs []string) (err error) { return err } -func GetSkuNamesNew(ctx *jxcontext.Context, keyword string, skuIDs, skuNameIDs []int, categoryID, status, offset, pageSize int) (skuNamesInfo *SkuNamesInfo, err error) { +func GetSkuNamesNew(ctx *jxcontext.Context, keyword string, skuIDs, skuNameIDs []int, categoryID, status int, isBySku bool, offset, pageSize int) (skuNamesInfo *SkuNamesInfo, err error) { var ( - db = dao.GetDB() + db = dao.GetDB() + sql = "" ) - sql := ` + if !isBySku { + sql = ` SELECT SQL_CALC_FOUND_ROWS DISTINCT @@ -3118,6 +3120,46 @@ func GetSkuNamesNew(ctx *jxcontext.Context, keyword string, skuIDs, skuNameIDs [ LEFT JOIN sku t2 ON t1.id = t2.name_id AND t2.deleted_at = ? WHERE t1.deleted_at = ? ` + } else { + sql = ` + SELECT + SQL_CALC_FOUND_ROWS + t1.id, + t1.created_at, + t1.updated_at, + t1.last_operator, + t1.deleted_at, + t1.prefix, + t1.name, + t1.brand_id, + t1.category_id, + t1.jd_category_id, + t1.is_global, + t1.unit, + t1.price, + t1.img, + t1.img2, + t1.img3, + t1.img4, + t1.img5, + t1.img_watermark, + t1.img_mix, + t1.status, + t1.is_spu, + t1.desc_img, + t1.upc, + t1.ex_prefix, + t1.ex_prefix_begin, + t1.ex_prefix_end, + t1.yb_name_suffix, + t1.jds_stock_switch, + t1.preparation_time, + t1.best_seller, t2.id sku_id + FROM sku_name t1 + LEFT JOIN sku t2 ON t1.id = t2.name_id AND t2.deleted_at = ? + WHERE t1.deleted_at = ? + ` + } sqlParams := []interface{}{ utils.DefaultTimeValue, utils.DefaultTimeValue, } @@ -3179,10 +3221,17 @@ func GetSkuNamesNew(ctx *jxcontext.Context, keyword string, skuIDs, skuNameIDs [ sqlParams = []interface{}{utils.DefaultTimeValue} sql string ) - sql = ` - SELECT * FROM sku WHERE deleted_at = ? AND name_id = ? - ` - sqlParams = append(sqlParams, skuName.ID) + if !isBySku { + sql = ` + SELECT * FROM sku WHERE deleted_at = ? AND name_id = ? + ` + sqlParams = append(sqlParams, skuName.ID) + } else { + sql = ` + SELECT * FROM sku WHERE deleted_at = ? AND id = ? + ` + sqlParams = append(sqlParams, skuName.SkuID) + } if err = dao.GetRows(db, &skus, sql, sqlParams); err == nil { var skusVendors []*model.SkuWithVendor for _, v := range skus { diff --git a/controllers/cms_sku.go b/controllers/cms_sku.go index 0f9196198..536d0d7e0 100644 --- a/controllers/cms_sku.go +++ b/controllers/cms_sku.go @@ -720,6 +720,7 @@ func (c *SkuController) RefreshNoImgSku() { // @Param skuIDs query string false "Sku ID列表" // @Param categoryID query int false "商品名所属类别ID" // @Param status query int false "查询起始状态(0:下架,1:正常, -1全部)" +// @Param isBySku query bool false "是否将sku拆开,缺省为false" // @Param offset query int false "门店列表起始序号(以0开始,缺省为0)" // @Param pageSize query int false "门店列表页大小(缺省为50,-1表示全部)" // @Success 200 {object} controllers.CallResult @@ -729,7 +730,7 @@ func (c *SkuController) GetSkuNamesNew() { c.callGetSkuNamesNew(func(params *tSkuGetSkuNamesNewParams) (retVal interface{}, errCode string, err error) { var skuIDs, skuNameIDs []int if err = jxutils.Strings2Objs(params.SkuIDs, &skuIDs, params.NameIDs, &skuNameIDs); err == nil { - retVal, err = cms.GetSkuNamesNew(params.Ctx, params.Keyword, skuIDs, skuNameIDs, params.CategoryID, params.Status, params.Offset, params.PageSize) + retVal, err = cms.GetSkuNamesNew(params.Ctx, params.Keyword, skuIDs, skuNameIDs, params.CategoryID, params.Status, params.IsBySku, params.Offset, params.PageSize) } return retVal, "", err })