From cc78e409cdca2a414f654490d3bc78cce429c59e Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期一, 05 八月 2024 09:13:42 +0800
Subject: [PATCH] 新增订单总报表
---
north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml | 91 +++++++++++++++++++++++++++++++++++++++------
1 files changed, 79 insertions(+), 12 deletions(-)
diff --git a/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml b/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
index 573ebef..26a2681 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
@@ -66,6 +66,7 @@
<result column="delivery_number" property="deliveryNumber"/>
<result column="quantity" property="quantity"/>
<result column="area" property="area"/>
+ <result column="price" property="price"/>
<result column="money" property="money"/>
<result column="delivery_detail_remakes" property="deliveryDetailRemakes"/>
<result column="delivery_detail_state" property="deliveryDetailState"/>
@@ -86,6 +87,8 @@
<result column="product_id" property="orderDetail.productId"/>
<result column="product_name" property="orderDetail.productName"/>
+
+ <result column="other_money" property="order.otherMoney"/>
@@ -148,11 +151,11 @@
<insert id="insertDeliveryDetail" useGeneratedKeys="true" >
insert into sd.delivery_detail (delivery_id,delivery_number,order_number,
- area,order_id,quantity,money,delivery_detail_remakes,delivery_detail_state,other_columns,create_time)
+ area,order_id,quantity,money,delivery_detail_remakes,delivery_detail_state,other_columns,create_time,price)
values (
#{number} ,#{deliveryNumber},#{orderDetail.orderNumber},#{orderDetail.computeArea}*#{orderDetail.deliveryDetail.quantity},
#{orderDetail.orderId},#{orderDetail.deliveryDetail.quantity},
- #{deliveryDetailMoney},'',1,#{orderDetail.otherColumns},now()
+ #{deliveryDetailMoney},'',1,#{orderDetail.otherColumns},now(),#{orderDetail.price}
)
</insert>
@@ -170,7 +173,7 @@
od.building_number,
od.product_id,
od.product_name,
- od.price,
+ dd.price,
fgi.storage_region,
dd.money,
od.width,
@@ -262,7 +265,7 @@
</if>
</where>
- order by dd.id desc
+ order by dd.id
limit #{offset},#{pageSize};
</select>
@@ -371,7 +374,8 @@
od.compute_gross_area,
od.processing_note,
od.edging_type,
- od.perimeter
+ od.perimeter,
+ od.other_columns
from sd.order_detail od
left join sd.`order` o on od.order_id = o.order_id
left join mm.finished_goods_inventory fgi
@@ -519,6 +523,8 @@
<select id="getSelectDeliveryDetailReport" resultMap="selectDeliveryDetail">
select dd.delivery_id,
dd.delivery_number,
+ od.product_id,
+ od.product_name,
d.payment_terms,
d.project,
d.customer_id,
@@ -534,12 +540,16 @@
dd.order_id,
dd.order_number,
dd.area,
+ dd.price,
dd.money,
dd.quantity,
dd.delivery_detail_remakes,
- dd.create_time
+ dd.create_time,
+ o.other_money
from sd.delivery_detail dd
left join sd.delivery d on dd.delivery_id=d.delivery_id
+ left join order_detail od on dd.order_id=od.order_id and dd.order_number=od.order_number
+ left join sd.`order` o on dd.order_id=o.order_id
<where>
and date(dd.create_time)>=#{startDate} and date(dd.create_time) <= #{endDate}
<if test="deliveryDetail.deliveryId != null and deliveryDetail.deliveryId != ''">
@@ -547,6 +557,12 @@
</if>
<if test="deliveryDetail.deliveryNumber != null and deliveryDetail.deliveryNumber != ''">
and dd.delivery_number like concat('%',#{deliveryDetail.deliveryNumber},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and deliveryDetail.orderDetail.productId != null and deliveryDetail.orderDetail.productId != ''">
+ and od.product_id like concat('%',#{deliveryDetail.orderDetail.productId},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and deliveryDetail.orderDetail.productName != null and deliveryDetail.orderDetail.productName != ''">
+ and od.product_name like concat('%', #{deliveryDetail.orderDetail.productName},'%')
</if>
<if test="deliveryDetail.orderId != null and deliveryDetail.orderId != ''">
and dd.order_id like concat('%', #{deliveryDetail.orderId},'%')
@@ -556,6 +572,9 @@
</if>
<if test="deliveryDetail.area != null and deliveryDetail.area != ''">
and dd.area like concat('%', #{deliveryDetail.area},'%')
+ </if>
+ <if test="deliveryDetail.price != null and deliveryDetail.price != ''">
+ and dd.price like concat('%', #{deliveryDetail.price},'%')
</if>
<if test="deliveryDetail.money != null and deliveryDetail.money != ''">
and dd.money like concat('%', #{deliveryDetail.money},'%')
@@ -616,6 +635,8 @@
count(dd.id) as 'total'
from sd.delivery_detail dd
left join sd.delivery d on dd.delivery_id=d.delivery_id
+ left join order_detail od on dd.order_id=od.order_id and dd.order_number=od.order_number
+ left join sd.`order` o on dd.order_id=o.order_id
<where>
and date(dd.create_time)>=#{startDate} and date(dd.create_time) <= #{endDate}
<if test="deliveryDetail.deliveryId != null and deliveryDetail.deliveryId != ''">
@@ -623,6 +644,12 @@
</if>
<if test="deliveryDetail.deliveryNumber != null and deliveryDetail.deliveryNumber != ''">
and dd.delivery_number like concat('%',#{deliveryDetail.deliveryNumber},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and deliveryDetail.orderDetail.productId != null and deliveryDetail.orderDetail.productId != ''">
+ and od.product_id like concat('%',#{deliveryDetail.orderDetail.productId},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and deliveryDetail.orderDetail.productName != null and deliveryDetail.orderDetail.productName != ''">
+ and od.product_name like concat('%', #{deliveryDetail.orderDetail.productName},'%')
</if>
<if test="deliveryDetail.orderId != null and deliveryDetail.orderId != ''">
and dd.order_id like concat('%', #{deliveryDetail.orderId},'%')
@@ -632,6 +659,9 @@
</if>
<if test="deliveryDetail.area != null and deliveryDetail.area != ''">
and dd.area like concat('%', #{deliveryDetail.area},'%')
+ </if>
+ <if test="deliveryDetail.price != null and deliveryDetail.price != ''">
+ and dd.price like concat('%', #{deliveryDetail.price},'%')
</if>
<if test="deliveryDetail.money != null and deliveryDetail.money != ''">
and dd.money like concat('%', #{deliveryDetail.money},'%')
@@ -707,12 +737,15 @@
dd.order_id,
dd.order_number,
sum(dd.area) as area,
+ dd.price,
sum(dd.money) as money,
sum(dd.quantity) as quantity,
dd.delivery_detail_remakes,
- dd.create_time
+ dd.create_time,
+ o.other_money
from sd.delivery_detail dd left join delivery d on dd.delivery_id=d.delivery_id
left join order_detail od on dd.order_id=od.order_id and dd.order_number=od.order_number
+ left join sd.`order` o on dd.order_id=o.order_id
<where>
and date(dd.create_time)>=#{startDate} and date(dd.create_time) <= #{endDate}
<if test="deliveryDetail.deliveryId != null and deliveryDetail.deliveryId != ''">
@@ -720,6 +753,12 @@
</if>
<if test="deliveryDetail.deliveryNumber != null and deliveryDetail.deliveryNumber != ''">
and dd.delivery_number like concat('%',#{deliveryDetail.deliveryNumber},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and deliveryDetail.orderDetail.productId != null and deliveryDetail.orderDetail.productId != ''">
+ and od.product_id like concat('%',#{deliveryDetail.orderDetail.productId},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and deliveryDetail.orderDetail.productName != null and deliveryDetail.orderDetail.productName != ''">
+ and od.product_name like concat('%', #{deliveryDetail.orderDetail.productName},'%')
</if>
<if test="deliveryDetail.orderId != null and deliveryDetail.orderId != ''">
and dd.order_id like concat('%', #{deliveryDetail.orderId},'%')
@@ -729,6 +768,9 @@
</if>
<if test="deliveryDetail.area != null and deliveryDetail.area != ''">
and dd.area like concat('%', #{deliveryDetail.area},'%')
+ </if>
+ <if test="deliveryDetail.price != null and deliveryDetail.price != ''">
+ and dd.price like concat('%', #{deliveryDetail.price},'%')
</if>
<if test="deliveryDetail.money != null and deliveryDetail.money != ''">
and dd.money like concat('%', #{deliveryDetail.money},'%')
@@ -786,7 +828,7 @@
</if>
</where>
- group by dd.delivery_id,od.product_id
+ group by dd.delivery_id,dd.order_id,od.product_id
order by dd.delivery_id,dd.delivery_number
limit #{offset},#{pageSize};
</select>
@@ -799,6 +841,7 @@
select dd.id as id
from sd.delivery_detail dd left join delivery d on dd.delivery_id=d.delivery_id
left join order_detail od on dd.order_id=od.order_id and dd.order_number=od.order_number
+ left join sd.`order` o on dd.order_id=o.order_id
<where>
and date(dd.create_time)>=#{startDate} and date(dd.create_time) <= #{endDate}
<if test="deliveryDetail.deliveryId != null and deliveryDetail.deliveryId != ''">
@@ -806,6 +849,12 @@
</if>
<if test="deliveryDetail.deliveryNumber != null and deliveryDetail.deliveryNumber != ''">
and dd.delivery_number like concat('%',#{deliveryDetail.deliveryNumber},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and deliveryDetail.orderDetail.productId != null and deliveryDetail.orderDetail.productId != ''">
+ and od.product_id like concat('%',#{deliveryDetail.orderDetail.productId},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and deliveryDetail.orderDetail.productName != null and deliveryDetail.orderDetail.productName != ''">
+ and od.product_name like concat('%', #{deliveryDetail.orderDetail.productName},'%')
</if>
<if test="deliveryDetail.orderId != null and deliveryDetail.orderId != ''">
and dd.order_id like concat('%', #{deliveryDetail.orderId},'%')
@@ -815,6 +864,9 @@
</if>
<if test="deliveryDetail.area != null and deliveryDetail.area != ''">
and dd.area like concat('%', #{deliveryDetail.area},'%')
+ </if>
+ <if test="deliveryDetail.price != null and deliveryDetail.price != ''">
+ and dd.price like concat('%', #{deliveryDetail.price},'%')
</if>
<if test="deliveryDetail.money != null and deliveryDetail.money != ''">
and dd.money like concat('%', #{deliveryDetail.money},'%')
@@ -872,7 +924,7 @@
</if>
</where>
- group by dd.delivery_id,od.product_id) as zu
+ group by dd.delivery_id,dd.order_id,od.product_id) as zu
</select>
<select id="getSelectDeliveryPrinting" resultMap="selectDeliveryDetailOrderDetail" >
@@ -912,7 +964,7 @@
dd.area,
ifnull(od.processing_note,"") as processingNote,
ifnull(od.building_number,"") as buildingNumber,
- od.price,
+ dd.price,
od.other_columns
from delivery_detail dd
left join order_detail od on dd.order_id = od.order_id and dd.order_number = od.order_number
@@ -963,10 +1015,13 @@
select dd.id,
dd.delivery_id,
dd.delivery_number,
+ od.product_id,
+ od.product_name,
d.payment_terms,
d.project,
d.customer_id,
d.customer_name,
+ c.customer_abbreviation,
d.delivery_date,
d.pay_method,
d.pay_date,
@@ -978,12 +1033,17 @@
dd.order_id,
dd.order_number,
dd.area,
+ dd.price,
dd.money,
dd.quantity,
dd.delivery_detail_remakes,
- dd.create_time
+ dd.create_time,
+ o.other_money
from sd.delivery_detail dd
left join sd.delivery d on dd.delivery_id=d.delivery_id
+ left join order_detail od on dd.order_id=od.order_id and dd.order_number=od.order_number
+ left join sd.`order` o on dd.order_id=o.order_id
+ left join sd.customer c on d.customer_id=c.id
where date(d.create_time)>=#{dates[0]} and date(d.create_time) <= #{dates[1]}
</select>
@@ -997,6 +1057,7 @@
d.project,
d.customer_id,
d.customer_name,
+ c.customer_abbreviation,
d.delivery_date,
d.pay_method,
d.pay_date,
@@ -1011,9 +1072,15 @@
sum(dd.money) as money,
sum(dd.quantity) as quantity,
dd.delivery_detail_remakes,
- dd.create_time
+ dd.price,
+ dd.create_time,
+ o.other_money
from sd.delivery_detail dd left join delivery d on dd.delivery_id=d.delivery_id
left join order_detail od on dd.order_id=od.order_id and dd.order_number=od.order_number
+ left join sd.`order` o on dd.order_id=o.order_id
+ left join sd.customer c on d.customer_id=c.id
where date(d.create_time)>=#{dates[0]} and date(d.create_time) <= #{dates[1]}
+ group by dd.delivery_id,dd.order_id,od.product_id
+ order by dd.delivery_id,dd.delivery_number
</select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0