From fa3f092ce9824b9a0dddb53dc353cd9f41998bc9 Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期五, 12 四月 2024 15:27:46 +0800
Subject: [PATCH] 跨工序次破报表

---
 north-glass-erp/target/classes/mapper/sd/DeliveryDetail.xml |  213 +++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 207 insertions(+), 6 deletions(-)

diff --git a/north-glass-erp/target/classes/mapper/sd/DeliveryDetail.xml b/north-glass-erp/target/classes/mapper/sd/DeliveryDetail.xml
index 992c11e..99bea70 100644
--- a/north-glass-erp/target/classes/mapper/sd/DeliveryDetail.xml
+++ b/north-glass-erp/target/classes/mapper/sd/DeliveryDetail.xml
@@ -56,12 +56,42 @@
 
     </resultMap>
 
+    <resultMap id="selectDeliveryDetail" type="com.example.erp.entity.sd.DeliveryDetail">
+
+        <result column="order_id" property="orderId"/>
+        <result column="order_number" property="orderNumber"/>
+        <result column="o_quantity" property="quantity"/>
+        <result column="delivery_id" property="deliveryId"/>
+        <result column="delivery_number" property="deliveryNumber"/>
+        <result column="area" property="area"/>
+        <result column="money" property="money"/>
+        <result column="delivery_detail_remakes" property="deliveryDetailRemakes"/>
+        <result column="delivery_detail_state" property="deliveryDetailState"/>
+        <result column="create_time" property="createTime"/>
+
+        <result column="customer_id" property="delivery.customerId"/>
+        <result column="customer_name" property="delivery.customerName"/>
+        <result column="project" property="delivery.project"/>
+        <result column="pay_method" property="delivery.payMethod"/>
+        <result column="payment_terms" property="delivery.paymentTerms"/>
+        <result column="pay_date" property="delivery.payDate"/>
+        <result column="contacts" property="delivery.contacts"/>
+        <result column="contact_number" property="delivery.contactNumber"/>
+        <result column="delivery_address" property="delivery.deliveryAddress"/>
+        <result column="delivery_date" property="delivery.deliveryDate"/>
+        <result column="creator" property="delivery.creator"/>
+        <result column="salesman" property="delivery.salesman"/>
+
+
+
+    </resultMap>
+
     <delete id="deleteDeliveryDetail">
         delete from sd.delivery_detail where delivery_id=#{deliveryId}
     </delete>
 
     <update id="updateOrderDetailDeliveryNum">
-        update sd.order_detail set delivery_num=#{deliveryDetail.quantity} where order_id=#{orderId} and order_number=#{orderNumber}
+        update sd.order_detail set delivery_num=delivery_num+#{deliveryDetail.quantity} where order_id=#{orderId} and order_number=#{orderNumber}
     </update>
 
     <update id="updateIsNotOrderDetailDeliveryNum">
@@ -81,7 +111,7 @@
         insert into sd.delivery_detail (delivery_id,delivery_number,order_number,
                                         area,order_id,quantity,money,delivery_detail_remakes,delivery_detail_state,create_time)
         values (
-                   #{number} ,#{deliveryNumber},#{orderDetail.order_number},#{orderDetail.computeGrossArea},
+                   #{number} ,#{deliveryNumber},#{orderDetail.orderNumber},#{orderDetail.computeGrossArea},
                 #{orderDetail.orderId},#{orderDetail.deliveryDetail.quantity},
                 #{orderDetail.price}*#{orderDetail.deliveryDetail.quantity},'',1,now()
                )
@@ -89,7 +119,7 @@
 
 
 
-    <select id="getseletShippingOrderDetail" resultMap="selectDeliveryFinishedGoodsInventoryOrderDetail">
+    <select id="getSelectShippingOrderDetail" resultMap="selectDeliveryFinishedGoodsInventoryOrderDetail">
         select od.order_id,
                o.batch,
                dd.delivery_number,
@@ -192,10 +222,11 @@
             </if>
 
         </where>
+        order by dd.id desc
         limit #{offset},#{pageSize};
     </select>
 
-    <select id="getseletShippingOrderDetailPageTotal">
+    <select id="getSelectShippingOrderDetailPageTotal">
         select
             CEILING(count(dd.id)/#{pageSize})
         from sd.delivery_detail dd
@@ -277,7 +308,7 @@
         limit #{offset},#{pageSize};
     </select>
 
-    <select id="getseletShippingOrderDetails" resultMap="selectDeliveryFinishedGoodsInventoryOrderDetail">
+    <select id="getSelectShippingOrderDetails" resultMap="selectDeliveryFinishedGoodsInventoryOrderDetail">
         select od.order_id,
                od.order_number,
                o.batch,
@@ -370,7 +401,7 @@
         limit #{offset},#{pageSize};
     </select>
 
-    <select id="getseletShippingOrderDetailsPageTotal">
+    <select id="getSelectShippingOrderDetailsPageTotal">
         select
         CEILING(count(od.id)/#{pageSize})
         from sd.order_detail od
@@ -442,4 +473,174 @@
         </where>
         limit #{offset},#{pageSize};
     </select>
+
+
+    <select id="getSelectDeliveryDetailReport" resultMap="selectDeliveryDetail">
+        select dd.delivery_id,
+        dd.delivery_number,
+        d.payment_terms,
+        d.project,
+        d.customer_id,
+        d.customer_name,
+        d.delivery_date,
+        d.pay_method,
+        d.pay_date,
+        d.salesman,
+        d.creator,
+        d.contacts,
+        d.contact_number,
+        d.delivery_address,
+        dd.order_id,
+        dd.order_number,
+        dd.area,
+        dd.money,
+        dd.quantity,
+        dd.delivery_detail_remakes,
+        dd.create_time
+        from sd.delivery_detail dd
+        left join sd.delivery d on dd.delivery_id=d.delivery_id
+        <where>
+            <if test="deliveryDetail.deliveryId != null and deliveryDetail.deliveryId != ''">
+                and dd.delivery_id regexp #{deliveryDetail.deliveryId}
+            </if>
+            <if test="deliveryDetail.deliveryNumber != null and deliveryDetail.deliveryNumber != ''">
+                and dd.delivery_number regexp #{deliveryDetail.deliveryNumber}
+            </if>
+            <if test="deliveryDetail.orderId != null and deliveryDetail.orderId != ''">
+                and dd.order_id regexp #{deliveryDetail.orderId}
+            </if>
+            <if test="deliveryDetail.orderNumber != null and deliveryDetail.orderNumber != ''">
+                and dd.order_number regexp #{deliveryDetail.orderNumber}
+            </if>
+            <if test="deliveryDetail.area != null and deliveryDetail.area != ''">
+                and dd.area regexp #{deliveryDetail.area}
+            </if>
+            <if test="deliveryDetail.money != null and deliveryDetail.money != ''">
+                and dd.money regexp #{deliveryDetail.money}
+            </if>
+            <if test="deliveryDetail.quantity != null and deliveryDetail.quantity != ''">
+                and dd.quantity regexp #{deliveryDetail.quantity}
+            </if>
+            <if test="deliveryDetail.deliveryDetailRemakes != null and deliveryDetail.deliveryDetailRemakes != ''">
+                and dd.delivery_detail_remakes regexp #{deliveryDetail.deliveryDetailRemakes}
+            </if>
+            <if test="deliveryDetail.createTime != null and deliveryDetail.createTime != ''">
+                and dd.create_time regexp #{deliveryDetail.createTime}
+            </if>
+            <if test="deliveryDetail.delivery.paymentTerms != null and deliveryDetail.delivery.paymentTerms != ''">
+                and d.payment_terms regexp #{deliveryDetail.delivery.paymentTerms}
+            </if>
+            <if test="deliveryDetail.delivery.project != null and deliveryDetail.delivery.project != ''">
+                and d.project regexp #{deliveryDetail.delivery.project}
+            </if>
+            <if test="deliveryDetail.delivery.customerId != null and deliveryDetail.delivery.customerId != ''">
+                and d.customer_id regexp #{deliveryDetail.delivery.customerId}
+            </if>
+            <if test="deliveryDetail.delivery.customerName != null and deliveryDetail.delivery.customerName != ''">
+                and d.customer_name regexp #{deliveryDetail.delivery.customerName}
+            </if>
+            <if test="deliveryDetail.delivery.deliveryDate != null and deliveryDetail.delivery.deliveryDate != ''">
+                and d.delivery_date regexp #{deliveryDetail.delivery.deliveryDate}
+            </if>
+            <if test="deliveryDetail.delivery.payMethod != null and deliveryDetail.delivery.payMethod != ''">
+                and d.pay_method regexp #{deliveryDetail.delivery.payMethod}
+            </if>
+            <if test="deliveryDetail.delivery.payDate != null and deliveryDetail.delivery.payDate != ''">
+                and d.pay_date regexp #{deliveryDetail.delivery.payDate}
+            </if>
+            <if test="deliveryDetail.delivery.salesman != null and deliveryDetail.delivery.salesman != ''">
+                and d.salesman regexp #{deliveryDetail.delivery.salesman}
+            </if>
+            <if test="deliveryDetail.delivery.creator != null and deliveryDetail.delivery.creator != ''">
+                and d.creator regexp #{deliveryDetail.delivery.creator}
+            </if>
+            <if test="deliveryDetail.delivery.contacts != null and deliveryDetail.delivery.contacts != ''">
+                and d.contacts regexp #{deliveryDetail.delivery.contacts}
+            </if>
+            <if test="deliveryDetail.delivery.contactNumber != null and deliveryDetail.delivery.contactNumber != ''">
+                and d.contact_number regexp #{deliveryDetail.delivery.contactNumber}
+            </if>
+            <if test="deliveryDetail.delivery.deliveryAddress != null and deliveryDetail.delivery.deliveryAddress != ''">
+                and d.delivery_address regexp #{deliveryDetail.delivery.deliveryAddress}
+            </if>
+
+        </where>
+        order by dd.delivery_id,dd.delivery_number
+        limit #{offset},#{pageSize};
+    </select>
+
+    <select id="getSelectDeliveryDetailReportPageTotal" resultMap="selectDeliveryDetail">
+        select CEILING(count(dd.id)/#{pageSize}) as 'pageTotal',
+        count(dd.id) as 'total'
+        from sd.delivery_detail dd
+        left join sd.delivery d on dd.delivery_id=d.delivery_id
+        <where>
+            <if test="deliveryDetail.deliveryId != null and deliveryDetail.deliveryId != ''">
+                and dd.delivery_id regexp #{deliveryDetail.deliveryId}
+            </if>
+            <if test="deliveryDetail.deliveryNumber != null and deliveryDetail.deliveryNumber != ''">
+                and dd.delivery_number regexp #{deliveryDetail.deliveryNumber}
+            </if>
+            <if test="deliveryDetail.orderId != null and deliveryDetail.orderId != ''">
+                and dd.order_id regexp #{deliveryDetail.orderId}
+            </if>
+            <if test="deliveryDetail.orderNumber != null and deliveryDetail.orderNumber != ''">
+                and dd.order_number regexp #{deliveryDetail.orderNumber}
+            </if>
+            <if test="deliveryDetail.area != null and deliveryDetail.area != ''">
+                and dd.area regexp #{deliveryDetail.area}
+            </if>
+            <if test="deliveryDetail.money != null and deliveryDetail.money != ''">
+                and dd.money regexp #{deliveryDetail.money}
+            </if>
+            <if test="deliveryDetail.quantity != null and deliveryDetail.quantity != ''">
+                and dd.quantity regexp #{deliveryDetail.quantity}
+            </if>
+            <if test="deliveryDetail.deliveryDetailRemakes != null and deliveryDetail.deliveryDetailRemakes != ''">
+                and dd.delivery_detail_remakes regexp #{deliveryDetail.deliveryDetailRemakes}
+            </if>
+            <if test="deliveryDetail.createTime != null and deliveryDetail.createTime != ''">
+                and dd.create_time regexp #{deliveryDetail.createTime}
+            </if>
+            <if test="deliveryDetail.delivery.paymentTerms != null and deliveryDetail.delivery.paymentTerms != ''">
+                and d.payment_terms regexp #{deliveryDetail.delivery.paymentTerms}
+            </if>
+            <if test="deliveryDetail.delivery.project != null and deliveryDetail.delivery.project != ''">
+                and d.project regexp #{deliveryDetail.delivery.project}
+            </if>
+            <if test="deliveryDetail.delivery.customerId != null and deliveryDetail.delivery.customerId != ''">
+                and d.customer_id regexp #{deliveryDetail.delivery.customerId}
+            </if>
+            <if test="deliveryDetail.delivery.customerName != null and deliveryDetail.delivery.customerName != ''">
+                and d.customer_name regexp #{deliveryDetail.delivery.customerName}
+            </if>
+            <if test="deliveryDetail.delivery.deliveryDate != null and deliveryDetail.delivery.deliveryDate != ''">
+                and d.delivery_date regexp #{deliveryDetail.delivery.deliveryDate}
+            </if>
+            <if test="deliveryDetail.delivery.payMethod != null and deliveryDetail.delivery.payMethod != ''">
+                and d.pay_method regexp #{deliveryDetail.delivery.payMethod}
+            </if>
+            <if test="deliveryDetail.delivery.payDate != null and deliveryDetail.delivery.payDate != ''">
+                and d.pay_date regexp #{deliveryDetail.delivery.payDate}
+            </if>
+            <if test="deliveryDetail.delivery.salesman != null and deliveryDetail.delivery.salesman != ''">
+                and d.salesman regexp #{deliveryDetail.delivery.salesman}
+            </if>
+            <if test="deliveryDetail.delivery.creator != null and deliveryDetail.delivery.creator != ''">
+                and d.creator regexp #{deliveryDetail.delivery.creator}
+            </if>
+            <if test="deliveryDetail.delivery.contacts != null and deliveryDetail.delivery.contacts != ''">
+                and d.contacts regexp #{deliveryDetail.delivery.contacts}
+            </if>
+            <if test="deliveryDetail.delivery.contactNumber != null and deliveryDetail.delivery.contactNumber != ''">
+                and d.contact_number regexp #{deliveryDetail.delivery.contactNumber}
+            </if>
+            <if test="deliveryDetail.delivery.deliveryAddress != null and deliveryDetail.delivery.deliveryAddress != ''">
+                and d.delivery_address regexp #{deliveryDetail.delivery.deliveryAddress}
+            </if>
+
+        </where>
+        order by dd.delivery_id,dd.delivery_number
+        limit #{offset},#{pageSize};
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0