<?xml version="1.0" encoding="UTF-8" ?>
|
<!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.DeliveryOrderItemMapper">
|
|
<select id="selectDoItemList" resultType="com.mzl.flower.dto.response.payment.DeliveryOrderItemListDTO">
|
SELECT q.id, o.order_no, o.warehouse_name, o.warehouse_location_code
|
, oi.flower_name, oi.flower_unit, oi.flower_color, oi.flower_cover, oi.num
|
, oi.supplier_price price, oi.flower_level
|
FROM t_delivery_order_item q
|
join t_order o on q.order_id = o.id
|
join t_order_item oi on oi.id = q.order_item_id
|
WHERE q.deleted = 0 and o.deleted = 0 and oi.deleted = 0
|
and q.delivery_id = #{deliveryId}
|
</select>
|
|
<select id="selectDoItemCheckList" resultType="com.mzl.flower.dto.response.payment.DeliveryOrderItemCheckDTO">
|
SELECT oi.id, oi.flower_name, oi.flower_unit, oi.flower_color, oi.flower_cover, oi.num
|
, oi.supplier_price price, oi.flower_level, oi.status, oi.check_images, oi.check_time, oi.check_remarks
|
FROM t_delivery_order_item q
|
join t_order_item oi on oi.id = q.order_item_id
|
WHERE q.deleted = 0 and oi.deleted = 0
|
and q.delivery_id = #{deliveryId}
|
</select>
|
|
<select id="selectDoItemListByTime" resultType="com.mzl.flower.dto.response.payment.DeliveryOrderItemStatisticsDTO">
|
SELECT oi.flower_name, oi.flower_level, sum(oi.num) num, sum(oi.supplier_price) price
|
FROM t_delivery_order_item doi
|
join t_delivery_order q on q.id = doi.delivery_id
|
join t_order_item oi on oi.id = doi.order_item_id
|
WHERE q.deleted = 0 and doi.deleted = 0
|
and q.supplier_id = #{supplierId}
|
<if test="startDate != null">
|
AND q.create_time > #{startDate}
|
</if>
|
<if test="endDate != null">
|
AND q.create_time <= #{endDate}
|
</if>
|
group by oi.flower_name, oi.flower_level
|
</select>
|
|
<select id="selectSettlementListByTime" resultType="com.mzl.flower.dto.response.payment.DeliveryOrderItemSettlementDTO">
|
SELECT ois.order_item_id, oi.flower_name, oi.flower_level, oi.num, oi.supplier_price price , s.`status`
|
, ois.check_num, ois.check_fee, ois.replace_num, ois.replace_fee, ois.lack_num, ois.lack_fee_supplier lackFee
|
, ois.station_fee, ois.sales_fee_supplier salesFee, ois.service_fee_rate, ois.service_fee, ois.income_supplier
|
, o.status_backend, o.create_time orderTime
|
FROM t_delivery_order_item doi
|
join t_delivery_order q on q.id = doi.delivery_id
|
join t_order o on o.id = q.order_id
|
join t_order_item oi on oi.id = doi.order_item_id
|
left join t_order_item_settlement ois on ois.order_item_id = oi.id
|
left join t_order_settlement_detail sd on sd.order_item_id = oi.id
|
left join t_order_settlement s on sd.settlement_id = s.id
|
WHERE q.deleted = 0 and doi.deleted = 0
|
and q.supplier_id = #{supplierId}
|
<if test="startDate != null">
|
AND q.create_time > #{startDate}
|
</if>
|
<if test="endDate != null">
|
AND q.create_time <= #{endDate}
|
</if>
|
order by q.create_time desc
|
</select>
|
|
<select id="getSupplierStatisticsByTime" resultType="com.mzl.flower.dto.response.payment.DeliveryOrderItemStatisticsDTO">
|
SELECT sum(oi.num) num, sum(oi.supplier_price) price
|
FROM t_delivery_order_item doi
|
join t_delivery_order q on q.id = doi.delivery_id
|
join t_order_item oi on oi.id = doi.order_item_id
|
WHERE q.deleted = 0 and doi.deleted = 0
|
and q.supplier_id = #{supplierId}
|
<if test="startDate != null">
|
AND q.create_time > #{startDate}
|
</if>
|
<if test="endDate != null">
|
AND q.create_time <= #{endDate}
|
</if>
|
</select>
|
|
<select id="getDoItemCount" resultType="java.lang.Integer">
|
SELECT sum(oi.num)
|
FROM t_delivery_order_item doi
|
join t_delivery_order q on q.id = doi.delivery_id
|
join t_order_item oi on oi.id = doi.order_item_id
|
WHERE q.deleted = 0 and doi.deleted = 0
|
and q.supplier_id = #{supplierId}
|
<if test="status != null and status != ''">
|
AND q.status = #{status}
|
</if>
|
<if test="startDate != null">
|
AND q.create_time > #{startDate}
|
</if>
|
<if test="endDate != null">
|
AND q.create_time <= #{endDate}
|
</if>
|
</select>
|
|
<select id="selectDoItemList4Check" resultType="com.mzl.flower.dto.response.payment.DeliveryOrderItem4CheckDTO">
|
SELECT oi.id, q.delivery_id, oi.flower_name, oi.flower_unit, oi.flower_color
|
, oi.flower_cover, oi.num , oi.supplier_price price, oi.flower_level, oi.status
|
, (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'replace') replaceNum
|
, (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'reduce') reduceNum
|
, (select oic.num from t_order_item_check oic where oic.order_item_id = oi.id and oic.type = 'lack') lackNum
|
FROM t_delivery_order_item q
|
join t_order_item oi on oi.id = q.order_item_id
|
WHERE q.deleted = 0 and oi.deleted = 0
|
and q.delivery_id in
|
<foreach collection="deliveryIds" item="item" open="(" separator="," close=")">
|
#{item}
|
</foreach>
|
</select>
|
|
<select id="getUnCheckCount" resultType="java.lang.Integer">
|
SELECT count(1)
|
FROM t_delivery_order_item doi
|
join t_order_item oi on oi.id = doi.order_item_id
|
WHERE oi.deleted = 0 and doi.deleted = 0
|
and oi.status is null
|
and doi.delivery_id = #{deliveryId}
|
</select>
|
</mapper>
|