Helius
2022-06-15 fc1f912905287cd1ff9f81207f05f158301f7563
src/main/resources/mapper/modules/MallOrderInfoMapper.xml
@@ -96,6 +96,7 @@
        <result column="longitude" property="longitude" />
        <result column="latitude" property="latitude" />
        <result column="order_type" property="orderType" />
        <result column="carriage" property="carriage" />
        <result column="remark" property="remark" />
        <result column="del_flag" property="delFlag" />
        <collection property="items" ofType="cc.mrbird.febs.mall.entity.MallOrderItem">
@@ -110,6 +111,7 @@
            <result property="cnt" column="cnt" />
            <result property="price" column="price" />
            <result property="amount" column="amount" />
            <result property="isNormal" column="is_normal" />
        </collection>
    </resultMap>
@@ -166,7 +168,8 @@
            b.sku_image,
            b.cnt,
            b.price,
            b.amount
            b.amount,
            b.is_normal
        from mall_order_info a
             inner join mall_order_item b on a.id=b.order_id
        where a.id=#{id}
@@ -219,7 +222,7 @@
    <select id="selectTotalAmount" resultType="java.math.BigDecimal">
        select IFNULL(sum(IFNULL(amount,0)),0) from mall_order_info
        where member_id=#{memberId} and status = 4
        where member_id=#{memberId} and status in (2, 3, 4) and order_type=1
    </select>
    <select id="selectTotalAmountForDate" resultType="java.math.BigDecimal">
@@ -229,11 +232,49 @@
            and member_id=#{memberId}
        </if>
        <if test="date != null">
            and date_format(a.receving_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d')
            and date_format(a.receiving_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d')
        </if>
    </select>
    <select id="selectTotalAmountUnCostForDate" resultType="java.math.BigDecimal">
        select IFNULL(sum(IFNULL(b.amount,0) - IFNULL(b.cost_price*b.cnt, 0)),0)
        from mall_order_info a
        inner join mall_order_item b on a.id=b.order_id
        where a.order_type=1
        <if test="isNormal == 2">
            and a.status in (2, 3, 4) and b.is_normal = 2 and b.has_settle=1
        </if>
        <if test="isNormal == 1">
            and a.status=4 and b.is_normal = 1 and b.has_settle=1
        </if>
        <if test="member != null">
            and member_id=#{memberId}
        </if>
        <if test='date != null and dateType == "D"'>
            and date_format(a.pay_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d')
        </if>
        <if test='date != null and dateType == "M"'>
            and date_format(a.pay_time, '%Y-%m') = date_format(#{date}, '%Y-%m')
        </if>
        <if test='date != null and dateType == "Y"'>
            and date_format(a.pay_time, '%Y') = date_format(#{date}, '%Y')
        </if>
    </select>
    <select id="selectByOrderNo" resultType="cc.mrbird.febs.mall.entity.MallOrderInfo">
        select * from mall_order_info where order_no=#{orderNo}
    </select>
    <update id="updateOrderConfirmStatus">
        update mall_order_info
        set status=4,
            receiving_time=new Date()
        where status=3 and date_format(pay_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d')
    </update>
    <select id="selectOrderInfoWithNormalGoods" resultMap="OrderInfoMap">
        select * from mall_order_info a
        inner join mall_order_item b on a.id=b.order_id and b.is_normal=1
        where date_format(pay_time, '%Y-%m-%d') = date_format(#{date}, '%Y-%m-%d')
    </select>
</mapper>