|  |  |  | 
|---|
|  |  |  | a.carriage_rule_id, | 
|---|
|  |  |  | a.goods_weight, | 
|---|
|  |  |  | a.order_number, | 
|---|
|  |  |  | case when collection.id is null then 2 else 1 end hasCollect, | 
|---|
|  |  |  | <if test="record.memberId != null"> | 
|---|
|  |  |  | case when collection.id is null then 2 else 1 end hasCollect, | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | min(b.id) skuId, | 
|---|
|  |  |  | min(b.present_price) price, | 
|---|
|  |  |  | sum(b.stock) stock, | 
|---|
|  |  |  | 
|---|
|  |  |  | from mall_goods a | 
|---|
|  |  |  | left join mall_goods_sku b on a.id=b.goods_id | 
|---|
|  |  |  | left join mall_goods_category c on a.category_id=c.id | 
|---|
|  |  |  | left join mall_member_collection collection on a.id=collection.goods_id | 
|---|
|  |  |  | <if test="record.memberId != null"> | 
|---|
|  |  |  | left join mall_member_collection collection on a.id=collection.goods_id and collection.member_id=#{record.memberId} | 
|---|
|  |  |  | </if> | 
|---|
|  |  |  | <where> | 
|---|
|  |  |  | a.is_sale=1 | 
|---|
|  |  |  | <if test="record != null"> | 
|---|