From acaf8ca38cd32bc474bb46b593db2a8d75b9bfdd Mon Sep 17 00:00:00 2001
From: guoyuji <guoyujie@ng.com>
Date: 星期六, 12 十月 2024 08:26:23 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override
---
north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml | 1150 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 1,150 insertions(+), 0 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
new file mode 100644
index 0000000..bec9567
--- /dev/null
+++ b/north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
@@ -0,0 +1,1150 @@
+<?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.example.erp.mapper.sd.DeliveryDetailMapper">
+
+ <resultMap id="selectDeliveryFinishedGoodsInventoryOrderDetail" type="com.example.erp.entity.sd.OrderDetail">
+
+ <result column="order_id" property="orderId"/>
+ <result column="order_number" property="orderNumber"/>
+ <result column="o_quantity" property="quantity"/>
+ <result column="building_number" property="buildingNumber"/>
+ <result column="product_name" property="productName"/>
+ <result column="product_id" property="productId"/>
+ <result column="price" property="price"/>
+ <result column="width" property="width"/>
+ <result column="height" property="height"/>
+ <result column="shape" property="shape"/>
+ <result column="gross_area" property="grossArea"/>
+ <result column="compute_area" property="computeArea"/>
+ <result column="compute_gross_area" property="computeGrossArea"/>
+ <result column="processing_note" property="processingNote"/>
+ <result column="edging_type" property="edgingType"/>
+ <result column="perimeter" property="perimeter"/>
+
+ <result column="delivery_num" property="deliveryNum"/>
+
+ <result column="delivery_id" property="deliveryDetail.deliveryid"/>
+
+ <result column="d_quantity" property="deliveryDetail.quantity"/>
+ <result column="money" property="deliveryDetail.money"/>
+ <result column="delivery_number" property="deliveryDetail.deliveryNumber"/>
+ <result column="delivery_detail_remakes" property="deliveryDetail.deliveryDetailRemakes"/>
+
+ <result column="batch" property="order.batch"/>
+ <result column="t_quantity" property="order.quantity"/>
+ <result column="calculate_type" property="order.calculateType"/>
+
+
+ <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="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="remarks" property="delivery.remarks"/>
+ <result column="create_time" property="delivery.createTime"/>
+ <result column="delivery_date" property="delivery.deliveryDate"/>
+ <result column="creator" property="delivery.creator"/>
+
+ <result column="quantity_available" property="finishedGoodsInventory.quantityAvailable"/>
+ <result column="storage_region" property="finishedGoodsInventory.storageRegion"/>
+ <result column="actual_signal_area" property="finishedGoodsInventory.actualSignalArea"/>
+
+
+ </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="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"/>
+ <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"/>
+ <result column="freight" property="delivery.freight"/>
+ <result column="freight_price" property="delivery.freightPrice"/>
+ <result column="freight_quantity" property="delivery.freightQuantity"/>
+
+ <result column="product_id" property="orderDetail.productId"/>
+ <result column="product_name" property="orderDetail.productName"/>
+
+ <result column="other_money" property="order.otherMoney"/>
+
+
+
+ </resultMap>
+
+ <resultMap id="selectDeliveryDetailOrderDetail" type="com.example.erp.entity.sd.DeliveryDetail">
+
+ <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="quantity" property="quantity"/>
+ <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="product_id" property="orderDetail.productId"/>
+ <result column="product_name" property="orderDetail.productName"/>
+ <result column="order_id" property="orderDetail.orderId"/>
+
+
+
+
+ </resultMap>
+
+ <delete id="deleteDeliveryDetail">
+ delete from sd.delivery_detail where delivery_id=#{deliveryId}
+ </delete>
+
+ <update id="updateOrderDetailDeliveryNum">
+ update sd.order_detail set delivery_num=delivery_num+#{deliveryDetail.quantity} where order_id=#{orderId} and order_number=#{orderNumber}
+ </update>
+
+ <update id="updateIsNotOrderDetailDeliveryNum">
+ update sd.order_detail set delivery_num=delivery_num-#{quantity} where order_id=#{orderId} and order_number=#{orderNumber}
+ </update>
+
+ <update id="updateOrderDelivery">
+ update sd.`order` set delivery=#{state} where order_id=#{orderDetail.orderId}
+ </update>
+
+ <select id="getdeliveryDetailmaximum" >
+ select count(*) from sd.delivery_detail where delivery_id=#{deliveryId}
+ </select>
+
+ <select id="getIsNotDeliveryDetail" >
+ select * from sd.delivery_detail where delivery_id=#{deliveryId}
+ </select>
+
+ <select id="getSelectDetailQuantity" >
+ select quantity from sd.`order` where order_id=#{orderId}
+ </select>
+
+ <select id="getSelectDetailNum" >
+ select sum(quantity) from sd.order_detail where order_id=#{orderId}
+ </select>
+
+ <select id="selectOrderDetailDeliveryCount">
+ SELECT * FROM sd.order_detail where order_id=#{orderDetail.orderId} and order_number=#{orderDetail.orderNumber}
+ </select>
+
+
+ <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,price,other_money)
+ values (
+ #{number} ,#{deliveryNumber},#{orderDetail.orderNumber},#{deliveryDetailArea},
+ #{orderDetail.orderId},#{orderDetail.deliveryDetail.quantity},
+ #{deliveryDetailMoney},'',1,#{orderDetail.otherColumns},now(),#{orderDetail.price},#{otherMoneys}
+ )
+ </insert>
+
+
+
+ <select id="getSelectShippingOrderDetail" resultMap="selectDeliveryFinishedGoodsInventoryOrderDetail">
+ select od.order_id,
+ o.batch,
+ dd.delivery_number,
+ fgi.quantity_available + dd.quantity as quantity_available,
+ od.order_number,
+ od.quantity-od.delivery_num as t_quantity,
+ od.quantity as o_quantity,
+ dd.quantity as d_quantity,
+ od.building_number,
+ od.product_id,
+ od.product_name,
+ dd.price,
+ fgi.storage_region,
+ dd.money,
+ od.width,
+ od.height,
+ od.shape,
+ fgi.actual_signal_area,
+ od.area,
+ od.gross_area,
+ od.compute_area,
+ od.compute_gross_area,
+ od.processing_note,
+ od.edging_type,
+ od.perimeter,
+ dd.delivery_detail_remakes,
+ dd.other_columns
+ from sd.delivery_detail dd
+ left join sd.delivery d on dd.delivery_id=d.delivery_id
+ left join sd.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 mm.finished_goods_inventory fgi on dd.order_id=fgi.order_id and dd.order_number=fgi.order_number
+ <where>
+ <if test="orderDetail.deliveryDetail.deliveryId != null and orderDetail.deliveryDetail.deliveryId != ''">
+ and dd.delivery_id regexp #{orderDetail.deliveryDetail.deliveryId}
+ </if>
+ <if test="orderDetail.orderId != null and orderDetail.orderId != ''">
+ and od.order_id regexp #{orderDetail.orderId}
+ </if>
+ <if test="orderDetail.order.batch != null and orderDetail.order.batch != ''">
+ and o.batch regexp #{orderDetail.order.batch}
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.quantityAvailable != null and orderDetail.finishedGoodsInventory.quantityAvailable != ''">
+ and fgi.quantity_available regexp #{orderDetail.finishedGoodsInventory.quantityAvailable}
+ </if>
+ <if test="orderDetail.quantity != null and orderDetail.quantity != ''">
+ and od.quantity regexp #{orderDetail.quantity}
+ </if>
+ <if test="orderDetail.deliveryDetail.quantity != null and orderDetail.deliveryDetail.quantity != ''">
+ and dd.quantity regexp #{orderDetail.deliveryDetail.quantity}
+ </if>
+ <if test="orderDetail.buildingNumber != null and orderDetail.buildingNumber != ''">
+ and od.building_number regexp #{orderDetail.buildingNumber}
+ </if>
+ <if test="orderDetail.productId != null and orderDetail.productId != ''">
+ and od.product_id regexp #{orderDetail.productId}
+ </if>
+ <if test="orderDetail.productName != null and orderDetail.productName != ''">
+ and od.product_name regexp #{orderDetail.productName}
+ </if>
+ <if test="orderDetail.price != null and orderDetail.price != ''">
+ and od.price regexp #{orderDetail.price}
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.storageRegion != null and orderDetail.finishedGoodsInventory.storageRegion != ''">
+ and fgi.storage_region regexp #{orderDetail.finishedGoodsInventory.storageRegion}
+ </if>
+ <if test="orderDetail.deliveryDetail.money != null and orderDetail.deliveryDetail.money != ''">
+ and dd.money regexp REGEXP_REPLACE(#{orderDetail.deliveryDetail.money},'\\.0+$','')
+ </if>
+ <if test="orderDetail.width != null and orderDetail.width != ''">
+ and od.width regexp REGEXP_REPLACE(#{orderDetail.width},'\\.0+$','')
+ </if>
+ <if test="orderDetail.height != null and orderDetail.height != ''">
+ and od.height regexp REGEXP_REPLACE(#{orderDetail.height},'\\.0+$','')
+ </if>
+ <if test="orderDetail.shape != null and orderDetail.shape != ''">
+ and od.shape regexp #{orderDetail.shape}
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.actualSignalArea != null and orderDetail.finishedGoodsInventory.actualSignalArea != ''">
+ and fgi.actual_signal_area regexp REGEXP_REPLACE(#{orderDetail.finishedGoodsInventory.actualSignalArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.grossArea != null and orderDetail.grossArea != ''">
+ and od.gross_area regexp REGEXP_REPLACE(#{orderDetail.grossArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.computeArea != null and orderDetail.computeArea != ''">
+ and od.compute_area regexp REGEXP_REPLACE(#{orderDetail.computeArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.computeGrossArea != null and orderDetail.computeGrossArea != ''">
+ and od.compute_gross_area regexp REGEXP_REPLACE(#{orderDetail.computeGrossArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.processingNote != null and orderDetail.processingNote != ''">
+ and od.processing_note regexp #{orderDetail.processingNote}
+ </if>
+ <if test="orderDetail.edgingType != null and orderDetail.edgingType != ''">
+ and od.edging_type regexp #{orderDetail.edgingType}
+ </if>
+ <if test="orderDetail.perimeter != null and orderDetail.perimeter != ''">
+ and od.perimeter regexp #{orderDetail.perimeter}
+ </if>
+ <if test="orderDetail.deliveryDetail.deliveryDetailRemakes != null and orderDetail.deliveryDetail.deliveryDetailRemakes != ''">
+ and dd.delivery_detail_remakes regexp #{orderDetail.deliveryDetail.deliveryDetailRemakes}
+ </if>
+
+ </where>
+ order by dd.id
+ limit #{offset},#{pageSize};
+ </select>
+
+ <select id="getSelectShippingOrderDetailPageTotal">
+ select
+ CEILING(count(dd.id)/#{pageSize})
+ from sd.delivery_detail dd
+ left join sd.delivery d on dd.delivery_id=d.delivery_id
+ left join sd.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 mm.finished_goods_inventory fgi on dd.order_id=fgi.order_id and dd.order_number=fgi.order_number
+ <where>
+ <if test="orderDetail.deliveryDetail.deliveryId != null and orderDetail.deliveryDetail.deliveryId != ''">
+ and dd.delivery_id regexp #{orderDetail.deliveryDetail.deliveryId}
+ </if>
+ <if test="orderDetail.orderId != null and orderDetail.orderId != ''">
+ and od.order_id regexp #{orderDetail.orderId}
+ </if>
+ <if test="orderDetail.order.batch != null and orderDetail.order.batch != ''">
+ and o.batch regexp #{orderDetail.order.batch}
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.quantityAvailable != null and orderDetail.finishedGoodsInventory.quantityAvailable != ''">
+ and fgi.quantity_available regexp #{orderDetail.finishedGoodsInventory.quantityAvailable}
+ </if>
+ <if test="orderDetail.quantity != null and orderDetail.quantity != ''">
+ and od.quantity regexp #{orderDetail.quantity}
+ </if>
+ <if test="orderDetail.deliveryDetail.quantity != null and orderDetail.deliveryDetail.quantity != ''">
+ and dd.quantity regexp #{orderDetail.deliveryDetail.quantity}
+ </if>
+ <if test="orderDetail.buildingNumber != null and orderDetail.buildingNumber != ''">
+ and od.building_number regexp #{orderDetail.buildingNumber}
+ </if>
+ <if test="orderDetail.productId != null and orderDetail.productId != ''">
+ and od.product_id regexp #{orderDetail.productId}
+ </if>
+ <if test="orderDetail.productName != null and orderDetail.productName != ''">
+ and od.product_name regexp #{orderDetail.productName}
+ </if>
+ <if test="orderDetail.price != null and orderDetail.price != ''">
+ and od.price regexp #{orderDetail.price}
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.storageRegion != null and orderDetail.finishedGoodsInventory.storageRegion != ''">
+ and fgi.storage_region regexp #{orderDetail.finishedGoodsInventory.storageRegion}
+ </if>
+ <if test="orderDetail.deliveryDetail.money != null and orderDetail.deliveryDetail.money != ''">
+ and dd.money regexp REGEXP_REPLACE(#{orderDetail.deliveryDetail.money},'\\.0+$','')
+ </if>
+ <if test="orderDetail.width != null and orderDetail.width != ''">
+ and od.width regexp REGEXP_REPLACE(#{orderDetail.width},'\\.0+$','')
+ </if>
+ <if test="orderDetail.height != null and orderDetail.height != ''">
+ and od.height regexp REGEXP_REPLACE(#{orderDetail.height},'\\.0+$','')
+ </if>
+ <if test="orderDetail.shape != null and orderDetail.shape != ''">
+ and od.shape regexp #{orderDetail.shape}
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.actualSignalArea != null and orderDetail.finishedGoodsInventory.actualSignalArea != ''">
+ and fgi.actual_signal_area regexp REGEXP_REPLACE(#{orderDetail.finishedGoodsInventory.actualSignalArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.grossArea != null and orderDetail.grossArea != ''">
+ and od.gross_area regexp REGEXP_REPLACE(#{orderDetail.grossArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.computeArea != null and orderDetail.computeArea != ''">
+ and od.compute_area regexp REGEXP_REPLACE(#{orderDetail.computeArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.computeGrossArea != null and orderDetail.computeGrossArea != ''">
+ and od.compute_gross_area regexp REGEXP_REPLACE(#{orderDetail.computeGrossArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.processingNote != null and orderDetail.processingNote != ''">
+ and od.processing_note regexp #{orderDetail.processingNote}
+ </if>
+ <if test="orderDetail.edgingType != null and orderDetail.edgingType != ''">
+ and od.edging_type regexp #{orderDetail.edgingType}
+ </if>
+ <if test="orderDetail.perimeter != null and orderDetail.perimeter != ''">
+ and od.perimeter regexp #{orderDetail.perimeter}
+ </if>
+ <if test="orderDetail.deliveryDetail.deliveryDetailRemakes != null and orderDetail.deliveryDetail.deliveryDetailRemakes != ''">
+ and dd.delivery_detail_remakes regexp #{orderDetail.deliveryDetail.deliveryDetailRemakes}
+ </if>
+ </where>
+ limit #{offset},#{pageSize};
+ </select>
+
+ <select id="getSelectShippingOrderDetails" resultMap="selectDeliveryFinishedGoodsInventoryOrderDetail">
+ select od.order_id,
+ od.order_number,
+ o.batch,
+ o.calculate_type,
+ fgi.quantity_available,
+ od.quantity- od.delivery_num as t_quantity,
+ od.quantity as o_quantity,
+ fgi.quantity_available as d_quantity,
+ od.building_number,
+ od.product_id,
+ od.product_name,
+ od.price,
+ fgi.storage_region,
+ od.width,
+ od.height,
+ od.shape,
+ fgi.actual_signal_area,
+ od.area,
+ od.gross_area,
+ od.compute_area,
+ od.compute_gross_area,
+ od.processing_note,
+ od.edging_type,
+ 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
+ on od.order_id = fgi.order_id and od.order_number = fgi.order_number
+ <where>
+ fgi.quantity_available > 0 and od.quantity > od.delivery_num
+ <if test="orderDetail.orderId != null and orderDetail.orderId != ''">
+ and od.order_id regexp #{orderDetail.orderId}
+ </if>
+ <if test="orderDetail.order.batch != null and orderDetail.order.batch != ''">
+ and o.batch regexp #{orderDetail.order.batch}
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.quantityAvailable != null and orderDetail.finishedGoodsInventory.quantityAvailable != ''">
+ and fgi.quantity_available regexp #{orderDetail.finishedGoodsInventory.quantityAvailable}
+ </if>
+ <if test="orderDetail.quantity != null and orderDetail.quantity != ''">
+ and od.quantity regexp #{orderDetail.quantity}
+ </if>
+ <if test="orderDetail.deliveryNum != null and orderDetail.deliveryNum != ''">
+ and od.delivery_num regexp #{orderDetail.deliveryNum}
+ </if>
+ <if test="orderDetail.buildingNumber != null and orderDetail.buildingNumber != ''">
+ and od.building_number regexp #{orderDetail.buildingNumber}
+ </if>
+ <if test="orderDetail.productId != null and orderDetail.productId != ''">
+ and od.product_id regexp #{orderDetail.productId}
+ </if>
+ <if test="orderDetail.productName != null and orderDetail.productName != ''">
+ and od.product_name regexp #{orderDetail.productName}
+ </if>
+ <if test="orderDetail.price != null and orderDetail.price != ''">
+ and od.price regexp REGEXP_REPLACE(#{orderDetail.price},'\\.0+$','')
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.storageRegion != null and orderDetail.finishedGoodsInventory.storageRegion != ''">
+ and fgi.storage_region regexp #{orderDetail.finishedGoodsInventory.storageRegion}
+ </if>
+ <if test="orderDetail.width != null and orderDetail.width != ''">
+ and od.width regexp REGEXP_REPLACE(#{orderDetail.width},'\\.0+$','')
+ </if>
+ <if test="orderDetail.height != null and orderDetail.height != ''">
+ and od.height regexp REGEXP_REPLACE(#{orderDetail.height},'\\.0+$','')
+ </if>
+ <if test="orderDetail.shape != null and orderDetail.shape != ''">
+ and od.shape regexp #{orderDetail.shape}
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.actualSignalArea != null and orderDetail.finishedGoodsInventory.actualSignalArea != ''">
+ and fgi.actual_signal_area regexp REGEXP_REPLACE(#{orderDetail.finishedGoodsInventory.actualSignalArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.grossArea != null and orderDetail.grossArea != ''">
+ and od.gross_area regexp REGEXP_REPLACE(#{orderDetail.grossArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.computeArea != null and orderDetail.computeArea != ''">
+ and od.compute_area regexp REGEXP_REPLACE(#{orderDetail.computeArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.computeGrossArea != null and orderDetail.computeGrossArea != ''">
+ and od.compute_gross_area regexp REGEXP_REPLACE(#{orderDetail.computeGrossArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.processingNote != null and orderDetail.processingNote != ''">
+ and od.processing_note regexp #{orderDetail.processingNote}
+ </if>
+ <if test="orderDetail.edgingType != null and orderDetail.edgingType != ''">
+ and od.edging_type regexp #{orderDetail.edgingType}
+ </if>
+ <if test="orderDetail.perimeter != null and orderDetail.perimeter != ''">
+ and od.perimeter regexp #{orderDetail.perimeter}
+ </if>
+ </where>
+ limit #{offset},#{pageSize};
+ </select>
+
+ <select id="getSelectShippingOrderDetailsPageTotal">
+ select
+ CEILING(count(od.id)/#{pageSize})
+ from sd.order_detail od
+ left join sd.`order` o on od.order_id = o.order_id
+ left join mm.finished_goods_inventory fgi
+ on od.order_id = fgi.order_id and od.order_number = fgi.order_number
+ <where>
+ fgi.quantity_available > 0 and od.quantity > od.delivery_num
+ <if test="orderDetail.orderId != null and orderDetail.orderId != ''">
+ and od.order_id regexp #{orderDetail.orderId}
+ </if>
+ <if test="orderDetail.order.batch != null and orderDetail.order.batch != ''">
+ and o.batch regexp #{orderDetail.order.batch}
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.quantityAvailable != null and orderDetail.finishedGoodsInventory.quantityAvailable != ''">
+ and fgi.quantity_available regexp #{orderDetail.finishedGoodsInventory.quantityAvailable}
+ </if>
+ <if test="orderDetail.quantity != null and orderDetail.quantity != ''">
+ and od.quantity regexp #{orderDetail.quantity}
+ </if>
+ <if test="orderDetail.deliveryNum != null and orderDetail.deliveryNum != ''">
+ and od.delivery_num regexp #{orderDetail.deliveryNum}
+ </if>
+ <if test="orderDetail.buildingNumber != null and orderDetail.buildingNumber != ''">
+ and od.building_number regexp #{orderDetail.buildingNumber}
+ </if>
+ <if test="orderDetail.productId != null and orderDetail.productId != ''">
+ and od.product_id regexp #{orderDetail.productId}
+ </if>
+ <if test="orderDetail.productName != null and orderDetail.productName != ''">
+ and od.product_name regexp #{orderDetail.productName}
+ </if>
+ <if test="orderDetail.price != null and orderDetail.price != ''">
+ and od.price regexp REGEXP_REPLACE(#{orderDetail.price},'\\.0+$','')
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.storageRegion != null and orderDetail.finishedGoodsInventory.storageRegion != ''">
+ and fgi.storage_region regexp #{orderDetail.finishedGoodsInventory.storageRegion}
+ </if>
+ <if test="orderDetail.width != null and orderDetail.width != ''">
+ and od.width regexp REGEXP_REPLACE(#{orderDetail.width},'\\.0+$','')
+ </if>
+ <if test="orderDetail.height != null and orderDetail.height != ''">
+ and od.height regexp REGEXP_REPLACE(#{orderDetail.height},'\\.0+$','')
+ </if>
+ <if test="orderDetail.shape != null and orderDetail.shape != ''">
+ and od.shape regexp #{orderDetail.shape}
+ </if>
+ <if test="orderDetail.finishedGoodsInventory.actualSignalArea != null and orderDetail.finishedGoodsInventory.actualSignalArea != ''">
+ and fgi.actual_signal_area regexp REGEXP_REPLACE(#{orderDetail.finishedGoodsInventory.actualSignalArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.grossArea != null and orderDetail.grossArea != ''">
+ and od.gross_area regexp REGEXP_REPLACE(#{orderDetail.grossArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.computeArea != null and orderDetail.computeArea != ''">
+ and od.compute_area regexp REGEXP_REPLACE(#{orderDetail.computeArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.computeGrossArea != null and orderDetail.computeGrossArea != ''">
+ and od.compute_gross_area regexp REGEXP_REPLACE(#{orderDetail.computeGrossArea},'\\.0+$','')
+ </if>
+ <if test="orderDetail.processingNote != null and orderDetail.processingNote != ''">
+ and od.processing_note regexp #{orderDetail.processingNote}
+ </if>
+ <if test="orderDetail.edgingType != null and orderDetail.edgingType != ''">
+ and od.edging_type regexp #{orderDetail.edgingType}
+ </if>
+ <if test="orderDetail.perimeter != null and orderDetail.perimeter != ''">
+ and od.perimeter regexp #{orderDetail.perimeter}
+ </if>
+ </where>
+ limit #{offset},#{pageSize};
+ </select>
+
+
+ <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,
+ 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.price,
+ dd.money,
+ dd.quantity,
+ dd.delivery_detail_remakes,
+ dd.create_time,
+ o.other_money,
+ d.freight_price,
+ d.freight_quantity,
+ d.freight
+ 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 != ''">
+ and dd.delivery_id like concat('%',#{deliveryDetail.deliveryId},'%')
+ </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},'%')
+ </if>
+ <if test="deliveryDetail.orderNumber != null and deliveryDetail.orderNumber != ''">
+ and dd.order_number like concat('%', #{deliveryDetail.orderNumber},'%')
+ </if>
+ <if test="deliveryDetail.area != null and deliveryDetail.area != ''">
+ and dd.area regexp REGEXP_REPLACE(#{deliveryDetail.area},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.price != null and deliveryDetail.price != ''">
+ and dd.price regexp REGEXP_REPLACE(#{deliveryDetail.price},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.money != null and deliveryDetail.money != ''">
+ and dd.money regexp REGEXP_REPLACE(#{deliveryDetail.money},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.quantity != null and deliveryDetail.quantity != ''">
+ and dd.quantity regexp REGEXP_REPLACE(#{deliveryDetail.quantity},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.deliveryDetailRemakes != null and deliveryDetail.deliveryDetailRemakes != ''">
+ and dd.delivery_detail_remakes like concat('%', #{deliveryDetail.deliveryDetailRemakes},'%')
+ </if>
+ <if test="deliveryDetail.createTime != null and deliveryDetail.createTime != ''">
+ and dd.create_time like concat('%', #{deliveryDetail.createTime},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.paymentTerms != null and deliveryDetail.delivery.paymentTerms != '')">
+ and d.payment_terms like concat('%', #{deliveryDetail.delivery.paymentTerms},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.project != null and deliveryDetail.delivery.project != '')">
+ and d.project like concat('%', #{deliveryDetail.delivery.project},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.customerId != null and deliveryDetail.delivery.customerId != '')">
+ and d.customer_id like concat('%', #{deliveryDetail.delivery.customerId},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.customerName != null and deliveryDetail.delivery.customerName != '')">
+ and d.customer_name like concat('%', #{deliveryDetail.delivery.customerName},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.deliveryDate != null and deliveryDetail.delivery.deliveryDate != '')">
+ and d.delivery_date like concat('%', #{deliveryDetail.delivery.deliveryDate},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.payMethod != null and deliveryDetail.delivery.payMethod != '')">
+ and d.pay_method like concat('%', #{deliveryDetail.delivery.payMethod},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.payDate != null and deliveryDetail.delivery.payDate != '')">
+ and d.pay_date like concat('%', #{deliveryDetail.delivery.payDate},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.salesman != null and deliveryDetail.delivery.salesman != '')">
+ and d.salesman like concat('%', #{deliveryDetail.delivery.salesman},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.creator != null and deliveryDetail.delivery.creator != '')">
+ and d.creator like concat('%', #{deliveryDetail.delivery.creator},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.contacts != null and deliveryDetail.delivery.contacts != '')">
+ and d.contacts like concat('%', #{deliveryDetail.delivery.contacts},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.contactNumber != null and deliveryDetail.delivery.contactNumber != '')">
+ and d.contact_number like concat('%', #{deliveryDetail.delivery.contactNumber},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.deliveryAddress != null and deliveryDetail.delivery.deliveryAddress != '')">
+ and d.delivery_address like concat('%', #{deliveryDetail.delivery.deliveryAddress},'%')
+ </if>
+ <if test="deliveryDetail.order!=null and (deliveryDetail.order.otherMoney != null )">
+ and o.other_money regexp REGEXP_REPLACE(#{deliveryDetail.order.otherMoney},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freight != null )">
+ and d.freight regexp REGEXP_REPLACE(#{deliveryDetail.delivery.freight},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freightQuantity != null )">
+ and d.freight_quantity regexp REGEXP_REPLACE(#{deliveryDetail.delivery.freightQuantity},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freightPrice != null )">
+ and d.freight_price regexp REGEXP_REPLACE(#{deliveryDetail.delivery.freightPrice},'\\.0+$','')
+ </if>
+
+ </where>
+ order by dd.delivery_id,dd.delivery_number
+ limit #{offset},#{pageSize};
+ </select>
+
+ <select id="getSelectDeliveryDetailReportPageTotal">
+ 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
+ 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 != ''">
+ and dd.delivery_id like concat('%',#{deliveryDetail.deliveryId},'%')
+ </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},'%')
+ </if>
+ <if test="deliveryDetail.orderNumber != null and deliveryDetail.orderNumber != ''">
+ and dd.order_number like concat('%', #{deliveryDetail.orderNumber},'%')
+ </if>
+ <if test="deliveryDetail.area != null and deliveryDetail.area != ''">
+ and dd.area regexp REGEXP_REPLACE(#{deliveryDetail.area},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.price != null and deliveryDetail.price != ''">
+ and dd.price regexp REGEXP_REPLACE(#{deliveryDetail.price},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.money != null and deliveryDetail.money != ''">
+ and dd.money regexp REGEXP_REPLACE(#{deliveryDetail.money},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.quantity != null and deliveryDetail.quantity != ''">
+ and dd.quantity regexp REGEXP_REPLACE(#{deliveryDetail.quantity},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.deliveryDetailRemakes != null and deliveryDetail.deliveryDetailRemakes != ''">
+ and dd.delivery_detail_remakes like concat('%', #{deliveryDetail.deliveryDetailRemakes},'%')
+ </if>
+ <if test="deliveryDetail.createTime != null and deliveryDetail.createTime != ''">
+ and dd.create_time like concat('%', #{deliveryDetail.createTime},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.paymentTerms != null and deliveryDetail.delivery.paymentTerms != '')">
+ and d.payment_terms like concat('%', #{deliveryDetail.delivery.paymentTerms},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.project != null and deliveryDetail.delivery.project != '')">
+ and d.project like concat('%', #{deliveryDetail.delivery.project},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.customerId != null and deliveryDetail.delivery.customerId != '')">
+ and d.customer_id like concat('%', #{deliveryDetail.delivery.customerId},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.customerName != null and deliveryDetail.delivery.customerName != '')">
+ and d.customer_name like concat('%', #{deliveryDetail.delivery.customerName},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.deliveryDate != null and deliveryDetail.delivery.deliveryDate != '')">
+ and d.delivery_date like concat('%', #{deliveryDetail.delivery.deliveryDate},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.payMethod != null and deliveryDetail.delivery.payMethod != '')">
+ and d.pay_method like concat('%', #{deliveryDetail.delivery.payMethod},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.payDate != null and deliveryDetail.delivery.payDate != '')">
+ and d.pay_date like concat('%', #{deliveryDetail.delivery.payDate},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.salesman != null and deliveryDetail.delivery.salesman != '')">
+ and d.salesman like concat('%', #{deliveryDetail.delivery.salesman},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.creator != null and deliveryDetail.delivery.creator != '')">
+ and d.creator like concat('%', #{deliveryDetail.delivery.creator},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.contacts != null and deliveryDetail.delivery.contacts != '')">
+ and d.contacts like concat('%', #{deliveryDetail.delivery.contacts},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.contactNumber != null and deliveryDetail.delivery.contactNumber != '')">
+ and d.contact_number like concat('%', #{deliveryDetail.delivery.contactNumber},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.deliveryAddress != null and deliveryDetail.delivery.deliveryAddress != '')">
+ and d.delivery_address like concat('%', #{deliveryDetail.delivery.deliveryAddress},'%')
+ </if>
+ <if test="deliveryDetail.order!=null and (deliveryDetail.order.otherMoney != null )">
+ and o.other_money regexp REGEXP_REPLACE(#{deliveryDetail.order.otherMoney},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freight != null )">
+ and d.freight regexp REGEXP_REPLACE(#{deliveryDetail.delivery.freight},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freightQuantity != null )">
+ and d.freight_quantity regexp REGEXP_REPLACE(#{deliveryDetail.delivery.freightQuantity},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freightPrice != null )">
+ and d.freight_price regexp REGEXP_REPLACE(#{deliveryDetail.delivery.freightPrice},'\\.0+$','')
+ </if>
+ </where>
+ order by dd.delivery_id,dd.delivery_number
+ </select>
+
+
+ <select id="getSelectDeliveryDetailProductReport" resultMap="selectDeliveryDetail">
+ select dd.delivery_id,
+ dd.delivery_number,
+ od.product_id,
+ od.product_name,
+ 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,
+ sum(dd.area) as area,
+ dd.price,
+ sum(dd.money) as money,
+ sum(dd.quantity) as quantity,
+ dd.delivery_detail_remakes,
+ dd.create_time,
+ o.other_money,
+ d.freight_price,
+ d.freight_quantity,
+ d.freight
+ 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 != ''">
+ and dd.delivery_id like concat('%',#{deliveryDetail.deliveryId},'%')
+ </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},'%')
+ </if>
+ <if test="deliveryDetail.orderNumber != null and deliveryDetail.orderNumber != ''">
+ and dd.order_number like concat('%', #{deliveryDetail.orderNumber},'%')
+ </if>
+ <if test="deliveryDetail.area != null and deliveryDetail.area != ''">
+ and dd.area regexp REGEXP_REPLACE(#{deliveryDetail.area},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.price != null and deliveryDetail.price != ''">
+ and dd.price regexp REGEXP_REPLACE(#{deliveryDetail.price},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.money != null and deliveryDetail.money != ''">
+ and dd.money regexp REGEXP_REPLACE(#{deliveryDetail.money},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.quantity != null and deliveryDetail.quantity != ''">
+ and dd.quantity regexp REGEXP_REPLACE(#{deliveryDetail.quantity},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.deliveryDetailRemakes != null and deliveryDetail.deliveryDetailRemakes != ''">
+ and dd.delivery_detail_remakes like concat('%', #{deliveryDetail.deliveryDetailRemakes},'%')
+ </if>
+ <if test="deliveryDetail.createTime != null and deliveryDetail.createTime != ''">
+ and dd.create_time like concat('%', #{deliveryDetail.createTime},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.paymentTerms != null and deliveryDetail.delivery.paymentTerms != '')">
+ and d.payment_terms like concat('%', #{deliveryDetail.delivery.paymentTerms},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.project != null and deliveryDetail.delivery.project != '')">
+ and d.project like concat('%', #{deliveryDetail.delivery.project},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.customerId != null and deliveryDetail.delivery.customerId != '')">
+ and d.customer_id like concat('%', #{deliveryDetail.delivery.customerId},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.customerName != null and deliveryDetail.delivery.customerName != '')">
+ and d.customer_name like concat('%', #{deliveryDetail.delivery.customerName},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.deliveryDate != null and deliveryDetail.delivery.deliveryDate != '')">
+ and d.delivery_date like concat('%', #{deliveryDetail.delivery.deliveryDate},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.payMethod != null and deliveryDetail.delivery.payMethod != '')">
+ and d.pay_method like concat('%', #{deliveryDetail.delivery.payMethod},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.payDate != null and deliveryDetail.delivery.payDate != '')">
+ and d.pay_date like concat('%', #{deliveryDetail.delivery.payDate},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.salesman != null and deliveryDetail.delivery.salesman != '')">
+ and d.salesman like concat('%', #{deliveryDetail.delivery.salesman},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.creator != null and deliveryDetail.delivery.creator != '')">
+ and d.creator like concat('%', #{deliveryDetail.delivery.creator},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.contacts != null and deliveryDetail.delivery.contacts != '')">
+ and d.contacts like concat('%', #{deliveryDetail.delivery.contacts},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.contactNumber != null and deliveryDetail.delivery.contactNumber != '')">
+ and d.contact_number like concat('%', #{deliveryDetail.delivery.contactNumber},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.deliveryAddress != null and deliveryDetail.delivery.deliveryAddress != '')">
+ and d.delivery_address like concat('%', #{deliveryDetail.delivery.deliveryAddress},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and (deliveryDetail.orderDetail.productName != null and deliveryDetail.orderDetail.productName != '')">
+ and od.product_id like concat('%', #{deliveryDetail.orderDetail.productName},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and (deliveryDetail.orderDetail.productId != null and deliveryDetail.orderDetail.productId != '')">
+ and od.product_name like concat('%', #{deliveryDetail.orderDetail.productId},'%')
+ </if>
+ <if test="deliveryDetail.order!=null and (deliveryDetail.order.otherMoney != null )">
+ and o.other_money regexp REGEXP_REPLACE(#{deliveryDetail.order.otherMoney},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freight != null )">
+ and d.freight regexp REGEXP_REPLACE(#{deliveryDetail.delivery.freight},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freightQuantity != null )">
+ and d.freight_quantity like concat('%', #{deliveryDetail.delivery.freightQuantity},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freightPrice != null )">
+ and d.freight_price regexp REGEXP_REPLACE(#{deliveryDetail.delivery.freightPrice},'\\.0+$','')
+ </if>
+
+ </where>
+ group by dd.delivery_id,dd.order_id,od.product_id
+ order by dd.delivery_id,dd.delivery_number
+ limit #{offset},#{pageSize};
+ </select>
+
+
+ <select id="getSelectDeliveryDetailProductReportPageTotal">
+ select
+ CEILING(count(zu.id)/#{pageSize}) as 'pageTotal',
+ count(zu.id) as 'total' from (
+ 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 != ''">
+ and dd.delivery_id like concat('%',#{deliveryDetail.deliveryId},'%')
+ </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},'%')
+ </if>
+ <if test="deliveryDetail.orderNumber != null and deliveryDetail.orderNumber != ''">
+ and dd.order_number like concat('%', #{deliveryDetail.orderNumber},'%')
+ </if>
+ <if test="deliveryDetail.area != null and deliveryDetail.area != ''">
+ and dd.area regexp REGEXP_REPLACE(#{deliveryDetail.area},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.price != null and deliveryDetail.price != ''">
+ and dd.price regexp REGEXP_REPLACE(#{deliveryDetail.price},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.money != null and deliveryDetail.money != ''">
+ and dd.money regexp REGEXP_REPLACE(#{deliveryDetail.money},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.quantity != null and deliveryDetail.quantity != ''">
+ and dd.quantity regexp REGEXP_REPLACE(#{deliveryDetail.quantity},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.deliveryDetailRemakes != null and deliveryDetail.deliveryDetailRemakes != ''">
+ and dd.delivery_detail_remakes like concat('%', #{deliveryDetail.deliveryDetailRemakes},'%')
+ </if>
+ <if test="deliveryDetail.createTime != null and deliveryDetail.createTime != ''">
+ and dd.create_time like concat('%', #{deliveryDetail.createTime},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.paymentTerms != null and deliveryDetail.delivery.paymentTerms != '')">
+ and d.payment_terms like concat('%', #{deliveryDetail.delivery.paymentTerms},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.project != null and deliveryDetail.delivery.project != '')">
+ and d.project like concat('%', #{deliveryDetail.delivery.project},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.customerId != null and deliveryDetail.delivery.customerId != '')">
+ and d.customer_id like concat('%', #{deliveryDetail.delivery.customerId},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.customerName != null and deliveryDetail.delivery.customerName != '')">
+ and d.customer_name like concat('%', #{deliveryDetail.delivery.customerName},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.deliveryDate != null and deliveryDetail.delivery.deliveryDate != '')">
+ and d.delivery_date like concat('%', #{deliveryDetail.delivery.deliveryDate},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.payMethod != null and deliveryDetail.delivery.payMethod != '')">
+ and d.pay_method like concat('%', #{deliveryDetail.delivery.payMethod},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.payDate != null and deliveryDetail.delivery.payDate != '')">
+ and d.pay_date like concat('%', #{deliveryDetail.delivery.payDate},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.salesman != null and deliveryDetail.delivery.salesman != '')">
+ and d.salesman like concat('%', #{deliveryDetail.delivery.salesman},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.creator != null and deliveryDetail.delivery.creator != '')">
+ and d.creator like concat('%', #{deliveryDetail.delivery.creator},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.contacts != null and deliveryDetail.delivery.contacts != '')">
+ and d.contacts like concat('%', #{deliveryDetail.delivery.contacts},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.contactNumber != null and deliveryDetail.delivery.contactNumber != '')">
+ and d.contact_number like concat('%', #{deliveryDetail.delivery.contactNumber},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.deliveryAddress != null and deliveryDetail.delivery.deliveryAddress != '')">
+ and d.delivery_address like concat('%', #{deliveryDetail.delivery.deliveryAddress},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and (deliveryDetail.orderDetail.productName != null and deliveryDetail.orderDetail.productName != '')">
+ and od.product_id like concat('%', #{deliveryDetail.orderDetail.productName},'%')
+ </if>
+ <if test="deliveryDetail.orderDetail!=null and (deliveryDetail.orderDetail.productId != null and deliveryDetail.orderDetail.productId != '')">
+ and od.product_name like concat('%', #{deliveryDetail.orderDetail.productId},'%')
+ </if>
+ <if test="deliveryDetail.order!=null and (deliveryDetail.order.otherMoney != null )">
+ and o.other_money regexp REGEXP_REPLACE(#{deliveryDetail.order.otherMoney},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freight != null )">
+ and d.freight regexp REGEXP_REPLACE(#{deliveryDetail.delivery.freight},'\\.0+$','')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freightQuantity != null )">
+ and d.freight_quantity like concat('%', #{deliveryDetail.delivery.freightQuantity},'%')
+ </if>
+ <if test="deliveryDetail.delivery!=null and (deliveryDetail.delivery.freightPrice != null )">
+ and d.freight_price regexp REGEXP_REPLACE(#{deliveryDetail.delivery.freightPrice},'\\.0+$','')
+ </if>
+
+ </where>
+ group by dd.delivery_id,dd.order_id,od.product_id) as zu
+ </select>
+
+ <select id="getSelectDeliveryPrinting" resultMap="selectDeliveryDetailOrderDetail" >
+ select dd.delivery_id,od.order_id,od.product_id,pt.remarks as product_name,sum(dd.area) as area,sum(dd.money) as money,sum(dd.quantity) as quantity from
+ delivery_detail dd left join order_detail od on dd.order_id=od.order_id and dd.order_number=od.order_number
+ left join product pt on pt.id=od.product_id
+
+
+ <where>
+ <if test="deliveryDetail.deliveryId != null and deliveryDetail.deliveryId != ''">
+ and dd.delivery_id like concat('%',#{deliveryDetail.deliveryId},'%')
+ </if>
+ </where>
+ group by od.order_id,od.product_name,od.product_id
+ </select>
+
+ <select id="getSelectOrderPrinting" >
+ select od.order_id,od.product_id,p.remarks as product_name,sum(od.compute_gross_area) as area,sum(od.gross_amount) as gross_amount ,sum(od.quantity) as quantity from
+ order_detail od left join product p on od.product_id=p.id
+ where od.order_id = #{orderId}
+ and od.product_id = #{productId}
+ group by od.product_name,od.product_id ;
+ </select>
+
+ <select id="getSelectDeliveryDetailPrinting" >
+ select od.order_id,
+ od.order_number,
+ p.remarks as product_name,
+ od.width,
+ od.height,
+ dd.quantity,
+ dd.money,
+ dd.area,
+ ifnull(od.processing_note,"") as processingNote,
+ ifnull(od.building_number,"") as buildingNumber,
+ 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
+ left join product p on od.product_id = p.id
+ where delivery_id = #{deliveryId}
+ and od.order_id = #{orderId}
+ and od.product_id = #{productId}
+ </select>
+
+ <select id="getSelectotherMoney" >
+ select bom.alias,oom.price,#{value}*dd.quantity as count,oom.price*#{value}*dd.quantity as monery
+ from delivery_detail dd
+ left join order_detail od on dd.order_id = od.order_id and dd.order_number = od.order_number
+ left join order_other_money oom on oom.order_id=dd.order_id and oom.column=#{key}
+ left join basic_other_money bom on bom.`column`=oom.`column`
+ where delivery_id = #{deliveryId}
+ and od.order_id = #{orderId} and od.order_number=#{orderNumber} and (od.other_columns!='{}' or od.other_columns!=null)
+ </select>
+
+ <select id="getSelectOrderotherMoney" >
+ select bom.alias,ifnull(oom.price,0) as price,#{value}*od.quantity as count,ifnull(oom.price,0)*#{value}*od.quantity as monery
+ from order_detail od
+ left join order_other_money oom on oom.order_id=od.order_id and oom.column=#{key}
+ left join basic_other_money bom on bom.`column`=oom.`column`
+ where od.order_id = #{orderId} and od.order_number=#{orderNumber} and (od.other_columns!='{}' or od.other_columns!=null)
+ </select>
+
+ <select id="getSelectOrderDetailPrinting" >
+ select od.order_id,
+ od.order_number,
+ od.product_name,
+ od.width,
+ od.height,
+ od.quantity,
+ od.gross_amount,
+ od.compute_gross_area,
+ ifnull(od.processing_note,"") as processingNote,
+ ifnull(od.building_number,"") as buildingNumber,
+ od.price,
+ od.other_columns
+ from order_detail od
+ where od.order_id = #{orderId}
+ and od.product_id = #{productId}
+ </select>
+
+
+ <select id="exportDeliveryDetailReport">
+ 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,
+ d.salesman,
+ d.creator,
+ d.contacts,
+ d.contact_number,
+ d.delivery_address,
+ dd.order_id,
+ dd.order_number,
+ dd.area,
+ dd.price,
+ dd.money,
+ dd.quantity,
+ dd.delivery_detail_remakes,
+ dd.create_time,
+ o.other_money,
+ d.freight,
+ d.freight_price,
+ d.freight_quantity
+ 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>
+
+ <select id="exportDeliveryDetailProductReport">
+ 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,
+ d.salesman,
+ d.creator,
+ d.contacts,
+ d.contact_number,
+ d.delivery_address,
+ dd.order_id,
+ dd.order_number,
+ sum(dd.area) as area,
+ sum(dd.money) as money,
+ sum(dd.quantity) as quantity,
+ dd.delivery_detail_remakes,
+ dd.price,
+ dd.create_time,
+ o.other_money,
+ d.freight,
+ d.freight_price,
+ d.freight_quantity
+ 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