gongzuming
2024-08-29 e0ea1f4a21321f145be79556896181f23f22b708
src/main/resources/mapper/payment/OrderItemSalesMapper.xml
@@ -2,16 +2,11 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.mzl.flower.mapper.payment.OrderItemSalesMapper">
    <select id="selectItemSalesList" resultType="com.mzl.flower.dto.response.payment.OrderItemSalesNewListDTO">
        SELECT si.id, s.name stationName, oi.flower_name, oi.flower_unit, oi.flower_color, oi.flower_cover
            , oi.flower_level, oi.flower_category, o.customer, o.customer_tel, o.customer_province, o.customer_city
            , o.customer_region, o.customer_address, oi.num flowerNum, oi.supplier_name, oi.price, oi.total
            , o.order_no, si.sales_no, si.title, si.num, si.reason, si.total_fee, si.status, si.create_time
            , si.remarks
    <select id="getSalesStatusCount" resultType="com.mzl.flower.dto.response.payment.OrderStatusCountDTO">
        SELECT si.status value, count(1) orderCount
        FROM t_order_item_sales si
        join t_order_item oi on oi.id = si.order_item_id
        join t_order o on si.order_id = o.id
        left join t_station s on s.id = oi.station_id
        WHERE oi.deleted = 0
        <if test="condition.orderId != null and condition.orderId != ''">
            AND si.order_id = #{condition.orderId}
@@ -69,6 +64,79 @@
            AND oi.supplier_id = #{condition.supplierId}
        </if>
        GROUP BY si.status
    </select>
    <select id="selectItemSalesList" resultType="com.mzl.flower.dto.response.payment.OrderItemSalesNewListDTO">
        SELECT si.id, s.name stationName, oi.flower_name, oi.flower_unit, oi.flower_color, oi.flower_cover
            , oi.flower_level, oi.flower_category, o.customer, o.customer_tel, o.customer_province, o.customer_city
            , o.customer_region, o.customer_address, oi.num flowerNum, oi.supplier_name, oi.price, oi.total
            , o.order_no, si.sales_no, si.title, si.num, si.reason, si.total_fee, si.status, si.create_time
            , si.remarks, oi.supplier_price, oi.markup_partner, si.audit_time
        FROM t_order_item_sales si
        join t_order_item oi on oi.id = si.order_item_id
        join t_order o on si.order_id = o.id
        left join t_station s on s.id = oi.station_id
        WHERE oi.deleted = 0
        <if test="condition.orderItemId != null and condition.orderItemId != ''">
            AND si.order_item_id = #{condition.orderItemId}
        </if>
        <if test="condition.orderId != null and condition.orderId != ''">
            AND si.order_id = #{condition.orderId}
        </if>
        <if test="condition.flowerName != null and condition.flowerName != ''">
            AND oi.flower_name LIKE concat('%', #{condition.flowerName},'%')
        </if>
        <if test="condition.orderNo != null and condition.orderNo != ''">
            AND o.order_no LIKE concat('%', #{condition.orderNo},'%')
        </if>
        <if test="condition.salesNo != null and condition.salesNo != ''">
            AND si.sales_no LIKE concat('%', #{condition.salesNo},'%')
        </if>
        <if test="condition.customer != null and condition.customer != ''">
            AND o.customer LIKE concat('%', #{condition.customer},'%')
        </if>
        <if test="condition.customerTel != null and condition.customerTel != ''">
            AND o.customer_tel LIKE concat('%', #{condition.customerTel},'%')
        </if>
        <if test="condition.supplierName != null and condition.supplierName != ''">
            AND oi.supplier_name LIKE concat('%', #{condition.supplierName},'%')
        </if>
        <if test="condition.orderStartDate != null">
            AND oi.create_time &gt;= #{condition.orderStartDate}
        </if>
        <if test="condition.orderEndDate != null">
            AND oi.create_time &lt;= #{condition.orderEndDate}
        </if>
        <if test="condition.salesStartDate != null">
            AND si.create_time &gt;= #{condition.salesStartDate}
        </if>
        <if test="condition.salesEndDate != null">
            AND si.create_time &lt;= #{condition.salesEndDate}
        </if>
        <if test="condition.status != null and condition.status != ''">
            AND si.status = #{condition.status}
        </if>
        <if test="condition.createBy != null and condition.createBy != ''">
            AND si.create_by = #{condition.createBy}
        </if>
        <if test="condition.partnerId != null">
            AND o.partner_id = #{condition.partnerId}
        </if>
        <if test="condition.supplierId != null">
            AND oi.supplier_id = #{condition.supplierId}
        </if>
        ORDER BY si.create_time desc
    </select>