|  |  | 
 |  |  |             select | 
 |  |  |                 a.id, | 
 |  |  |                 a.goods_name, | 
 |  |  |                 a.goods_introdution goodsIntroduction, | 
 |  |  |                 a.thumb, | 
 |  |  |                 a.unit, | 
 |  |  |                 a.original_price, | 
 |  |  |                 a.present_price, | 
 |  |  |                 a.level_one_price, | 
 |  |  |                 a.level_two_price, | 
 |  |  |                 a.level_three_price, | 
 |  |  |                 a.score, | 
 |  |  |                 a.is_hot, | 
 |  |  |                 a.carriage_type, | 
 |  |  |                 a.carriage_amount, | 
 |  |  |                 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, | 
 |  |  |                 ifnull(sum(b.stock), a.stock) stock, | 
 |  |  |                 sum(b.sku_volume) saleVolume | 
 |  |  |             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"> | 
 |  |  | 
 |  |  |                     <if test="record.isNormal != null and record.isNormal != ''"> | 
 |  |  |                         and a.is_normal = #{record.isNormal} | 
 |  |  |                     </if> | 
 |  |  |                     <if test="record.goodsType != null and record.goodsType != '' and record.goodsType != 3"> | 
 |  |  |                     <if test="record.isNormal == 3"> | 
 |  |  |                         and a.activity_id = #{record.activityId} | 
 |  |  |                     </if> | 
 |  |  |                     <if test="record.goodsType != null and record.goodsType != '' and record.goodsType == 1"> | 
 |  |  |                         and a.goods_type = #{record.goodsType} and a.present_price != 0 | 
 |  |  |                     </if> | 
 |  |  |                     <if test="record.goodsType != null and record.goodsType != '' and record.goodsType == 2"> | 
 |  |  |                         and a.goods_type = #{record.goodsType} | 
 |  |  |                     </if> | 
 |  |  |                     <if test="record.goodsType == 3"> | 
 |  |  |                         and a.present_price = 0 | 
 |  |  | 
 |  |  |         a.goods_introdution, | 
 |  |  |         a.unit, | 
 |  |  |         a.thumb, | 
 |  |  |         a.is_sku, | 
 |  |  |         a.goods_details, | 
 |  |  |         a.is_sale, | 
 |  |  |         a.original_price, | 
 |  |  | 
 |  |  |                 </if> | 
 |  |  |                 <if test="record.goodsType != null and record.goodsType != ''"> | 
 |  |  |                     and a.goods_type=#{record.goodsType} | 
 |  |  |                 </if> | 
 |  |  |                 <if test="record.activityId != null"> | 
 |  |  |                     and a.activity_id=#{record.activityId} | 
 |  |  |                 </if> | 
 |  |  |             </if> | 
 |  |  |         </where> | 
 |  |  | 
 |  |  |         select | 
 |  |  |         a.id, | 
 |  |  |         a.goods_name, | 
 |  |  |         a.goods_introdution goodsIntroduction, | 
 |  |  |         a.thumb, | 
 |  |  |         a.unit, | 
 |  |  |         a.original_price, | 
 |  |  |         a.present_price, | 
 |  |  |         a.score, | 
 |  |  |         a.is_hot, | 
 |  |  |         a.carriage_type, | 
 |  |  |         a.carriage_amount, | 
 |  |  |         a.carriage_rule_id, | 
 |  |  |         a.goods_weight, | 
 |  |  |         a.order_number, | 
 |  |  |         min(b.id) skuId, | 
 |  |  | 
 |  |  |                 <if test="record.isNormal != null and record.isNormal != ''"> | 
 |  |  |                     and a.is_normal = #{record.isNormal} | 
 |  |  |                 </if> | 
 |  |  |                 <if test="record.isNormal == 3"> | 
 |  |  |                     and a.activity_id = #{record.activityId} | 
 |  |  |                 </if> | 
 |  |  |                 <if test="record.goodsType != null and record.goodsType != '' and record.goodsType != 3"> | 
 |  |  |                     and a.goods_type = #{record.goodsType} and a.present_price != 0 | 
 |  |  |                 </if> |