KKSU
2024-06-04 068fe86cffc98f31a0b83bee34fa2dce6b23b736
src/main/resources/mapper/modules/MallGoodsMapper.xml
@@ -29,6 +29,7 @@
        <result property="levelOnePrice" column="level_one_price" />
        <result property="levelTwoPrice" column="level_two_price" />
        <result property="levelThreePrice" column="level_three_price" />
        <result property="hasCollect" column="hasCollect" />
        <collection property="styles" ofType="cc.mrbird.febs.mall.entity.MallGoodsStyle">
            <id property="id" column="style_id" />
            <result property="name" column="style_name" />
@@ -55,6 +56,7 @@
    <select id="selectGoodsDetailById" resultMap="MallGoodsMap">
        select
            a.*,
            case when collection.id is null then 2 else 1 end hasCollect,
            b.id style_id,
            b.name style_name,
            b.goods_id style_goods_id,
@@ -75,6 +77,7 @@
        from mall_goods a
          left join mall_goods_style b on a.id = b.goods_id
          left join mall_goods_sku c on b.id=c.style_id
          left join mall_member_collection collection on a.id=collection.goods_id
        where a.id=#{id}
    </select>
@@ -98,13 +101,19 @@
                a.carriage_rule_id,
                a.goods_weight,
                a.order_number,
                <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
                 <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">
@@ -114,9 +123,12 @@
                    <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.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
                    </if>