diff --git a/business/jxstore/cms/store_sku.go b/business/jxstore/cms/store_sku.go index de19bdb21..5633091d7 100644 --- a/business/jxstore/cms/store_sku.go +++ b/business/jxstore/cms/store_sku.go @@ -4458,7 +4458,7 @@ func RefreshJdsSkusStatus(ctx *jxcontext.Context) (err error) { return err } -func GetStoreSkuAudit(ctx *jxcontext.Context, storeIDs, nameIDs, skuIDs, statuss, types []int, name, remark, keyword, marketManPhone, applyTimeStart, applyTimeEnd, auditTimeStart, auditTimeEnd string, pageSize, offset int) (pagedInfo *model.PagedInfo, err error) { +func GetStoreSkuAudit(ctx *jxcontext.Context, storeIDs, nameIDs, skuIDs, statuss, types []int, name, remark, keyword, cityName, marketManPhone, applyTimeStart, applyTimeEnd, auditTimeStart, auditTimeEnd string, pageSize, offset int) (pagedInfo *model.PagedInfo, err error) { var ( applyTimeStartp, applyTimeEndp, auditTimeStartp, auditTimeEndp time.Time ) @@ -4474,7 +4474,7 @@ func GetStoreSkuAudit(ctx *jxcontext.Context, storeIDs, nameIDs, skuIDs, statuss if auditTimeEnd != "" { auditTimeEndp = utils.Str2Time(auditTimeEnd) } - pagedInfo, err = dao.GetStoreSkuAudit(dao.GetDB(), storeIDs, nameIDs, skuIDs, statuss, types, name, remark, keyword, marketManPhone, applyTimeStartp, applyTimeEndp, auditTimeStartp, auditTimeEndp, pageSize, offset) + pagedInfo, err = dao.GetStoreSkuAudit(dao.GetDB(), storeIDs, nameIDs, skuIDs, statuss, types, name, remark, keyword, marketManPhone, cityName, applyTimeStartp, applyTimeEndp, auditTimeStartp, auditTimeEndp, pageSize, offset) return pagedInfo, err } diff --git a/business/model/dao/store_sku.go b/business/model/dao/store_sku.go index 4598ffcb7..f8b741397 100644 --- a/business/model/dao/store_sku.go +++ b/business/model/dao/store_sku.go @@ -1548,7 +1548,7 @@ type tStoreSkuAudit struct { MidUnitPrice int `json:"midUnitPrice"` } -func GetStoreSkuAudit(db *DaoDB, storeIDs, nameIDs, skuIDs, statuss, types []int, name, remark, keyword, marketManPhone string, applyTimeStart, applyTimeEnd, auditTimeStart, auditTimeEnd time.Time, pageSize, offset int) (pagedInfo *model.PagedInfo, err error) { +func GetStoreSkuAudit(db *DaoDB, storeIDs, nameIDs, skuIDs, statuss, types []int, name, remark, keyword, marketManPhone, cityName string, applyTimeStart, applyTimeEnd, auditTimeStart, auditTimeEnd time.Time, pageSize, offset int) (pagedInfo *model.PagedInfo, err error) { var requestList []*tStoreSkuAudit sql := ` SELECT SQL_CALC_FOUND_ROWS DISTINCT a.*, c.name sku_name, c.prefix, c.unit, c.spec_quality, c.spec_unit, c.img, d.name store_name, b.name, e.mid_unit_price @@ -1556,6 +1556,7 @@ func GetStoreSkuAudit(db *DaoDB, storeIDs, nameIDs, skuIDs, statuss, types []int LEFT JOIN user b ON a.user_id = b.user_id LEFT JOIN sku_name c ON c.id = a.name_id AND c.deleted_at = ? LEFT JOIN store d ON d.id = a.store_id AND d.deleted_at = ? + LEFT JOIN place e ON e.code = d.city_code LEFT JOIN price_refer_snapshot e ON e.name_id = c.id AND e.city_code = ? AND e.snapshot_at = ? WHERE a.deleted_at = ? ` @@ -1596,13 +1597,17 @@ func GetStoreSkuAudit(db *DaoDB, storeIDs, nameIDs, skuIDs, statuss, types []int sqlParams = append(sqlParams, types) } if keyword != "" { - sql += " AND (b.name LIKE ? OR a.remark LIKE ? OR a.name_id LIKE ? OR a.user_id LIKE ? OR a.store_id LIKE ?)" - sqlParams = append(sqlParams, "%"+keyword+"%", "%"+keyword+"%", "%"+keyword+"%", "%"+keyword+"%", "%"+keyword+"%") + sql += " AND (b.name LIKE ? OR a.remark LIKE ? OR a.name_id LIKE ? OR a.user_id LIKE ? OR a.store_id LIKE ? OR e.name LIKE ?)" + sqlParams = append(sqlParams, "%"+keyword+"%", "%"+keyword+"%", "%"+keyword+"%", "%"+keyword+"%", "%"+keyword+"%", "%"+keyword+"%") } if marketManPhone != "" { sql += " AND d.market_man_phone LIKE ? " sqlParams = append(sqlParams, "%"+marketManPhone+"%") } + if cityName != "" { + sql += " AND e.name LIKE ? " + sqlParams = append(sqlParams, "%"+cityName+"%") + } sql += " ORDER BY a.updated_at DESC LIMIT ? OFFSET ?" pageSize = jxutils.FormalizePageSize(pageSize) sqlParams = append(sqlParams, pageSize, offset) diff --git a/controllers/cms_store_sku.go b/controllers/cms_store_sku.go index 3794fefd0..a25d83f72 100644 --- a/controllers/cms_store_sku.go +++ b/controllers/cms_store_sku.go @@ -829,6 +829,7 @@ func (c *StoreSkuController) SyncMatterC4ToGy() { // @Param types query string false "改价类型,1是普通改价,2是关注" // @Param keyword query string false "关键字" // @Param marketManPhone query string false "市场负责人电话" +// @Param cityName query string false "城市名" // @Param offset query int false "门店列表起始序号(以0开始,缺省为0)" // @Param pageSize query int false "门店列表页大小(缺省为50,-1表示全部)" // @Success 200 {object} controllers.CallResult @@ -842,7 +843,7 @@ func (c *StoreSkuController) GetStoreSkuAudit() { if err = jxutils.Strings2Objs(params.StoreIDs, &storeIDs, params.NameIDs, &nameIDs, params.Statuss, &statuss, params.Types, &types); err != nil { return retVal, "", err } - retVal, err = cms.GetStoreSkuAudit(params.Ctx, storeIDs, nameIDs, nil, statuss, types, params.Name, params.Remark, params.Keyword, params.MarketManPhone, params.ApplyTimeStart, params.ApplyTimeEnd, params.AuditTimeStart, params.AuditTimeEnd, params.PageSize, params.Offset) + retVal, err = cms.GetStoreSkuAudit(params.Ctx, storeIDs, nameIDs, nil, statuss, types, params.Name, params.Remark, params.Keyword, params.MarketManPhone, params.CityName, params.ApplyTimeStart, params.ApplyTimeEnd, params.AuditTimeStart, params.AuditTimeEnd, params.PageSize, params.Offset) return retVal, "", err }) }