- merge storeID and cityCode for GetPromotions

This commit is contained in:
gazebo
2018-11-14 10:34:44 +08:00
parent 0e6c0d4a52
commit a679ef3f44

View File

@@ -575,18 +575,23 @@ func GetJdPromotions(ctx *jxcontext.Context, keyword string, params map[string]i
sql += " AND t1.type = ?"
sqlParams = append(sqlParams, params["type"].(int))
}
if params["storeID"] != nil {
sql += " AND (SELECT COUNT(*) FROM promotion_store tt1 WHERE tt1.promotion_id = t1.id AND tt1.store_id = ?) > 0"
sqlParams = append(sqlParams, params["storeID"].(int))
if params["storeID"] != nil || params["cityCode"] != nil {
sql += " AND (SELECT COUNT(*) FROM promotion_store tt1 "
if params["cityCode"] != nil {
sql += " JOIN store st ON st.id = tt1.store_id AND st.city_code = ?"
sqlParams = append(sqlParams, params["cityCode"].(int))
}
sql += "WHERE tt1.promotion_id = t1.id"
if params["storeID"] != nil {
sql += " AND tt1.store_id = ?"
sqlParams = append(sqlParams, params["storeID"].(int))
}
sql += ") > 0"
}
if params["skuID"] != nil {
sql += " AND (SELECT COUNT(*) FROM promotion_sku tt1 WHERE tt1.promotion_id = t1.id AND tt1.sku_id = ?) > 0"
sqlParams = append(sqlParams, params["skuID"].(int))
}
if params["cityCode"] != nil {
sql += " AND (SELECT COUNT(*) FROM promotion_store tt1 JOIN store st ON st.id = tt1.store_id AND st.city_code = ? WHERE tt1.promotion_id = t1.id) > 0"
sqlParams = append(sqlParams, params["cityCode"].(int))
}
sql += `
GROUP BY
1,2,3,4,5,6,7,8,9,10,11,12