chenlu
2024-02-27 e8ba2a1bec7ffbd78cb941521b31d000890e66de
north-glass-erp/src/main/resources/mapper/mm/FinishedGoodsInventory.xml
@@ -64,6 +64,7 @@
        <result column="product_name" property="productName"/>
        <result column="product_id" property="productId"/>
        <result column="warehouse_num" property="warehouseNum"/>
        <result column="delivery_num" property="deliveryNum"/>
        <result column="order_number" property="deliveryDetail.orderNumber"/>
        <result column="delivery_id" property="deliveryDetail.deliveryId"/>
@@ -181,10 +182,10 @@
                and od.product_name regexp #{orderDetail.productName}
            </if>
            <if test="orderDetail.width != null and orderDetail.width != ''">
                and od.width regexp #{orderDetail.width}
                and od.width regexp REGEXP_REPLACE(#{orderDetail.width},'\\.0+$','')
            </if>
            <if test="orderDetail.height != null and orderDetail.height != ''">
                and od.height regexp #{orderDetail.height}
                and od.height regexp REGEXP_REPLACE(#{orderDetail.height},'\\.0+$','')
            </if>
            <if test="orderDetail.order.customerId != null and orderDetail.order.customerId != ''">
                and o.customer_id regexp #{orderDetail.order.customerId}
@@ -193,10 +194,10 @@
                and o.customer_name regexp #{orderDetail.order.customerName}
            </if>
            <if test="orderDetail.finishedGoodsInventory.actualSignalArea != null and orderDetail.finishedGoodsInventory.actualSignalArea != ''">
                and fgi.actual_signal_area regexp #{orderDetail.finishedGoodsInventory.actualSignalArea}
                and fgi.actual_signal_area regexp REGEXP_REPLACE(#{orderDetail.finishedGoodsInventory.actualSignalArea},'\\.0+$','')
            </if>
            <if test="orderDetail.finishedGoodsInventory.area != null and orderDetail.finishedGoodsInventory.area != ''">
                and fgi.area regexp #{orderDetail.finishedGoodsInventory.area}
                and fgi.area regexp REGEXP_REPLACE(#{orderDetail.finishedGoodsInventory.area},'\\.0+$','')
            </if>
            <if test="orderDetail.finishedGoodsInventory.storageRegion != null and orderDetail.finishedGoodsInventory.storageRegion != ''">
                and fgi.storage_region regexp #{orderDetail.finishedGoodsInventory.storageRegion}
@@ -208,7 +209,8 @@
    </select>
    <select id="getSelectAllocatePageTotal"  >
        select CEILING(count(zu.order_number)/#{pageSize}) from
        select CEILING(count(zu.order_number)/#{pageSize}) as 'pageTotal',
        count(zu.order_number) as 'total' from
            (select fgi.order_number as order_number
             from mm.finished_goods_inventory fgi
                      left join sd.order_detail od on fgi.order_id = od.order_id and fgi.order_number = od.order_number
@@ -234,10 +236,10 @@
                and od.product_name regexp #{orderDetail.productName}
            </if>
            <if test="orderDetail.width != null and orderDetail.width != ''">
                and od.width regexp #{orderDetail.width}
                and od.width regexp REGEXP_REPLACE(#{orderDetail.width},'\\.0+$','')
            </if>
            <if test="orderDetail.height != null and orderDetail.height != ''">
                and od.height regexp #{orderDetail.height}
                and od.height regexp REGEXP_REPLACE(#{orderDetail.height},'\\.0+$','')
            </if>
            <if test="orderDetail.order.customerId != null and orderDetail.order.customerId != ''">
                and o.customer_id regexp #{orderDetail.order.customerId}
@@ -246,10 +248,10 @@
                and o.customer_name regexp #{orderDetail.order.customerName}
            </if>
            <if test="orderDetail.finishedGoodsInventory.actualSignalArea != null and orderDetail.finishedGoodsInventory.actualSignalArea != ''">
                and fgi.actual_signal_area regexp #{orderDetail.finishedGoodsInventory.actualSignalArea}
                and fgi.actual_signal_area regexp REGEXP_REPLACE(#{orderDetail.finishedGoodsInventory.actualSignalArea},'\\.0+$','')
            </if>
            <if test="orderDetail.finishedGoodsInventory.area != null and orderDetail.finishedGoodsInventory.area != ''">
                and fgi.area regexp #{orderDetail.finishedGoodsInventory.area}
                and fgi.area regexp REGEXP_REPLACE(#{orderDetail.finishedGoodsInventory.area},'\\.0+$','')
            </if>
            <if test="orderDetail.finishedGoodsInventory.storageRegion != null and orderDetail.finishedGoodsInventory.storageRegion != ''">
                and fgi.storage_region regexp #{orderDetail.finishedGoodsInventory.storageRegion}
@@ -263,7 +265,7 @@
    <update id="updateDeliveryDetailState">
        update sd.delivery_detail
        set delivery_detail_state=#{state}
        where order_number=#{orderDetail.deliveryDetail.orderNumber}  and order_id=#{orderDetail.deliveryDetail.orderId}
        where order_number=#{orderDetail.deliveryDetail.orderNumber}  and order_id=#{orderDetail.deliveryDetail.orderId} and delivery_id=#{orderDetail.deliveryDetail.deliveryId}
    </update>
    <update id="updateInventoryquantityavailable">
@@ -275,12 +277,14 @@
    <select id="getseletdeliveryDetailPageTotal"  >
        select CEILING(count(dd.id)/#{pageSize})
        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 sd.order_detail od on od.order_id = dd.order_id and dd.order_number = od.order_number
                 left join sd.`order` o on o.order_id = dd.order_id
        <where>
                and dd.delivery_detail_state=1
            <if test="orderDetail.deliveryDetail.deliveryId != null and orderDetail.deliveryDetail.deliveryId != ''">
                and dd.delivery_id regexp #{orderDetail.deliveryDetail.deliveryId}
            </if>
@@ -300,22 +304,22 @@
                and d.customer_name regexp #{orderDetail.delivery.customerName}
            </if>
            <if test="orderDetail.width != null and orderDetail.width != ''">
                and od.width regexp #{orderDetail.width}
                and od.width regexp REGEXP_REPLACE(#{orderDetail.width},'\\.0+$','')
            </if>
            <if test="orderDetail.height != null and orderDetail.height != ''">
                and od.height regexp #{orderDetail.height}
                and od.height regexp REGEXP_REPLACE(#{orderDetail.height},'\\.0+$','')
            </if>
            <if test="orderDetail.delivery.quantity != null and orderDetail.delivery.quantity != ''">
                and d.quantity regexp #{orderDetail.delivery.quantity}
            </if>
            <if test="orderDetail.warehouseNum != null and orderDetail.warehouseNum != ''">
                and od.warehouseNum regexp #{orderDetail.warehouseNum}
                and od.warehouse_num regexp #{orderDetail.warehouseNum}
            </if>
            <if test="orderDetail.buildingNumber != null and orderDetail.buildingNumber != ''">
                and od.building_number regexp #{orderDetail.buildingNumber}
            </if>
            <if test="orderDetail.delivery.area != null and orderDetail.delivery.area != ''">
                and d.area regexp #{orderDetail.delivery.area}
                and d.area regexp REGEXP_REPLACE(#{orderDetail.delivery.area},'\\.0+$','')
            </if>
            <if test="orderDetail.deliveryDetail.orderNumber != null and orderDetail.deliveryDetail.orderNumber != ''">
                and dd.order_number regexp #{orderDetail.deliveryDetail.orderNumber}
@@ -347,6 +351,7 @@
               od.height,
               d.quantity,
               od.warehouse_num,
               od.delivery_num,
               d.area,
               od.building_number,
               d.creator,
@@ -355,9 +360,10 @@
        from sd.delivery_detail dd
                 left join sd.delivery d on dd.delivery_id = d.delivery_id
                 left join sd.order_detail od on od.order_id = dd.order_id and dd.order_number = od.order_number
                 left join sd.`order` o on o.order_id = dd.order_id where dd.delivery_detail_state=1
                 left join sd.`order` o on o.order_id = dd.order_id
        <where>
                and dd.delivery_detail_state=1
            <if test="orderDetail.deliveryDetail.deliveryId != null and orderDetail.deliveryDetail.deliveryId != ''">
                and dd.delivery_id regexp #{orderDetail.deliveryDetail.deliveryId}
            </if>
@@ -377,22 +383,22 @@
                and d.customer_name regexp #{orderDetail.delivery.customerName}
            </if>
            <if test="orderDetail.width != null and orderDetail.width != ''">
                and od.width regexp #{orderDetail.width}
                and od.width regexp REGEXP_REPLACE(#{orderDetail.width},'\\.0+$','')
            </if>
            <if test="orderDetail.height != null and orderDetail.height != ''">
                and od.height regexp #{orderDetail.height}
                and od.height regexp REGEXP_REPLACE(#{orderDetail.height},'\\.0+$','')
            </if>
            <if test="orderDetail.delivery.quantity != null and orderDetail.delivery.quantity != ''">
                and d.quantity regexp #{orderDetail.delivery.quantity}
            </if>
            <if test="orderDetail.warehouseNum != null and orderDetail.warehouseNum != ''">
                and od.warehouseNum regexp #{orderDetail.warehouseNum}
                and od.warehouse_num regexp #{orderDetail.warehouseNum}
            </if>
            <if test="orderDetail.buildingNumber != null and orderDetail.buildingNumber != ''">
                and od.building_number regexp #{orderDetail.buildingNumber}
            </if>
            <if test="orderDetail.delivery.area != null and orderDetail.delivery.area != ''">
                and d.area regexp #{orderDetail.delivery.area}
                and d.area regexp REGEXP_REPLACE(#{orderDetail.delivery.area},'\\.0+$','')
            </if>
            <if test="orderDetail.deliveryDetail.orderNumber != null and orderDetail.deliveryDetail.orderNumber != ''">
                and dd.order_number regexp #{orderDetail.deliveryDetail.orderNumber}
@@ -421,6 +427,14 @@
        select sum(warehouse_num) from sd.order_detail where order_id=#{orderId}
    </select>
    <select id="findDeliveryQuantity" >
        select quantity from sd.`delivery`  where delivery_id=#{deliveryId}
    </select>
    <select id="findDeliverydetailsum"  >
        select sum(quantity) from sd.`delivery_detail`  where delivery_id=#{deliveryId} and delivery_detail_state=#{deliveryDetailState}
    </select>
    <update id="updateOrderWarehousingState">
        update sd.`order`
        set warehousing=#{state}
@@ -431,6 +445,12 @@
        update sd.`order`
        set delivery=#{state}
        where order_id=#{orderId}
    </update>
    <update id="updateDeliveryDeliveryState">
        update sd.`delivery`
        set stock_state=#{state}
        where delivery_id=#{deliveryId}
    </update>
    <update id="updateIntOrderNumberConut">
@@ -537,10 +557,10 @@
                and od.product_name regexp #{flowCard.orderDetail.productName}
            </if>
            <if test="flowCard.orderDetail.width != null and flowCard.orderDetail.width != ''">
                and od.width regexp #{flowCard.orderDetail.width}
                and od.width regexp REGEXP_REPLACE(#{flowCard.orderDetail.width},'\\.0+$','')
            </if>
            <if test="flowCard.orderDetail.height != null and flowCard.orderDetail.height != ''">
                and od.height regexp #{flowCard.orderDetail.height}
                and od.height regexp REGEXP_REPLACE(#{flowCard.orderDetail.height},'\\.0+$','')
            </if>
            <if test="flowCard.order.creator != null and flowCard.order.creator != ''">
                and o.creator regexp #{flowCard.order.creator}
@@ -558,7 +578,7 @@
                and fc.inventory_quantity regexp #{flowCard.inventoryQuantity}
            </if>
            <if test="flowCard.order.area != null and flowCard.order.area != ''">
                and o.area regexp #{flowCard.order.area}
                and o.area regexp REGEXP_REPLACE(#{flowCard.order.area},'\\.0+$','')
            </if>
            <if test="flowCard.order.batch != null and flowCard.order.batch != ''">
                and o.batch regexp #{flowCard.order.batch}
@@ -575,7 +595,8 @@
        limit #{offset},#{pageSize};
    </select>
    <select id="getseletwarehousingPageTotal" >
        select  CEILING(count(zu.order_number)/#{pageSize}) from (
        CEILING(count(zu.order_number)/#{pageSize}) as 'pageTotal',
        count(zu.order_number) as 'total' from (
        select fc.order_number as order_number,fc.process_id from pp.flow_card fc left join sd.order_detail od on
        fc.order_id=od.order_id and fc.order_number=od.order_number inner join sd.`order` o on o.order_id=fc.order_id
        <where>
@@ -593,10 +614,10 @@
                and od.product_name regexp #{flowCard.orderDetail.productName}
            </if>
            <if test="flowCard.orderDetail.width != null and flowCard.orderDetail.width != ''">
                and od.width regexp #{flowCard.orderDetail.width}
                and od.width regexp REGEXP_REPLACE(#{flowCard.orderDetail.width},'\\.0+$','')
            </if>
            <if test="flowCard.orderDetail.height != null and flowCard.orderDetail.height != ''">
                and od.height regexp #{flowCard.orderDetail.height}
                and od.height regexp REGEXP_REPLACE(#{flowCard.orderDetail.height},'\\.0+$','')
            </if>
            <if test="flowCard.order.creator != null and flowCard.order.creator != ''">
                and o.creator regexp #{flowCard.order.creator}
@@ -614,7 +635,7 @@
                and fc.inventory_quantity regexp #{flowCard.inventoryQuantity}
            </if>
            <if test="flowCard.order.area != null and flowCard.order.area != ''">
                and o.area regexp #{flowCard.order.area}
                and o.area regexp REGEXP_REPLACE(#{flowCard.order.area},'\\.0+$','')
            </if>
            <if test="flowCard.order.batch != null and flowCard.order.batch != ''">
                and o.batch regexp #{flowCard.order.batch}
@@ -678,7 +699,7 @@
                and o.order_type regexp #{finishedGoodsInventory.order.orderType}
            </if>
            <if test="finishedGoodsInventory.orderDetail.height != null and finishedGoodsInventory.orderDetail.height != ''">
                and od.height regexp #{finishedGoodsInventory.orderDetail.height}
                and od.height regexp REGEXP_REPLACE(#{finishedGoodsInventory.orderDetail.height},'\\.0+$','')
            </if>
            <if test="finishedGoodsInventory.inventory != null and finishedGoodsInventory.inventory != ''">
                and fgi.inventory regexp #{finishedGoodsInventory.inventory}
@@ -687,10 +708,10 @@
                and fgi.quantity_available regexp #{finishedGoodsInventory.quantityAvailable}
            </if>
            <if test="finishedGoodsInventory.actualSignalArea != null and finishedGoodsInventory.actualSignalArea != ''">
                and fgi.actual_signal_area regexp #{finishedGoodsInventory.actualSignalArea}
                and fgi.actual_signal_area regexp REGEXP_REPLACE(#{finishedGoodsInventory.actualSignalArea},'\\.0+$','')
            </if>
            <if test="finishedGoodsInventory.area != null and finishedGoodsInventory.area != ''">
                and fgi.area regexp #{finishedGoodsInventory.area}
                and fgi.area regexp REGEXP_REPLACE(#{finishedGoodsInventory.area},'\\.0+$','')
            </if>
            <if test="finishedGoodsInventory.warehouseNumber != null and finishedGoodsInventory.warehouseNumber != ''">
                and fgi.warehouse_number regexp #{finishedGoodsInventory.warehouseNumber}
@@ -724,7 +745,8 @@
    <select id="getPageTotal">
        select
        CEILING(count(fgi.id)/#{pageSize})
        CEILING(count(fgi.id)/#{pageSize}) as 'pageTotal',
        count(fgi.id) as 'total'
        from finished_goods_inventory fgi
        left join sd.order_detail od on fgi.order_id = od.order_id and fgi.order_number = od.order_number
        left join sd.`order` o on fgi.order_id = o.order_id
@@ -752,7 +774,7 @@
                and o.order_type regexp #{finishedGoodsInventory.order.orderType}
            </if>
            <if test="finishedGoodsInventory.orderDetail.height != null and finishedGoodsInventory.orderDetail.height != ''">
                and od.height regexp #{finishedGoodsInventory.orderDetail.height}
                and od.height regexp REGEXP_REPLACE(#{finishedGoodsInventory.orderDetail.height},'\\.0+$','')
            </if>
            <if test="finishedGoodsInventory.inventory != null and finishedGoodsInventory.inventory != ''">
                and fgi.inventory regexp #{finishedGoodsInventory.inventory}
@@ -761,10 +783,10 @@
                and fgi.quantity_available regexp #{finishedGoodsInventory.quantityAvailable}
            </if>
            <if test="finishedGoodsInventory.actualSignalArea != null and finishedGoodsInventory.actualSignalArea != ''">
                and fgi.actual_signal_area regexp #{finishedGoodsInventory.actualSignalArea}
                and fgi.actual_signal_area regexp REGEXP_REPLACE(#{finishedGoodsInventory.actualSignalArea},'\\.0+$','')
            </if>
            <if test="finishedGoodsInventory.area != null and finishedGoodsInventory.area != ''">
                and fgi.area regexp #{finishedGoodsInventory.area}
                and fgi.area regexp REGEXP_REPLACE(#{finishedGoodsInventory.area},'\\.0+$','')
            </if>
            <if test="finishedGoodsInventory.warehouseNumber != null and finishedGoodsInventory.warehouseNumber != ''">
                and fgi.warehouse_number regexp #{finishedGoodsInventory.warehouseNumber}