From 9ccc8bd3a53160a40cf60f14e5867f6ce9f6c58f Mon Sep 17 00:00:00 2001
From: guoyujie <guoyujie@ng.com>
Date: 星期五, 26 十二月 2025 16:49:15 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override
---
north-glass-erp/src/main/resources/mapper/sd/DeliveryMapper.xml | 424 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 424 insertions(+), 0 deletions(-)
diff --git a/north-glass-erp/src/main/resources/mapper/sd/DeliveryMapper.xml b/north-glass-erp/src/main/resources/mapper/sd/DeliveryMapper.xml
new file mode 100644
index 0000000..57931dc
--- /dev/null
+++ b/north-glass-erp/src/main/resources/mapper/sd/DeliveryMapper.xml
@@ -0,0 +1,424 @@
+<?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.DeliveryMapper">
+
+ <resultMap id="selectOrderInventory" type="com.example.erp.entity.sd.Order">
+
+ <result column="create_order" property="createOrder"/>
+ <result column="process_review" property="processReview"/>
+ <result column="order_review" property="orderReview"/>
+ <result column="production_order" property="productionOrder"/>
+ <result column="processing_card" property="processingCard"/>
+ <result column="warehousing" property="warehousing"/>
+ <result column="delivery" property="delivery"/>
+ <result column="order_id" property="orderId"/>
+ <result column="customer_id" property="customerId"/>
+ <result column="customer_name" property="customerName"/>
+ <result column="quantity" property="quantity"/>
+ <result column="project" property="project"/>
+ <result column="batch" property="batch"/>
+ <result column="money" property="money"/>
+ <result column="area" property="area"/>
+ <result column="create_time" property="createTime"/>
+ <result column="pack_type" property="packType"/>
+ <result column="order_type" property="orderType"/>
+ <result column="creator" property="creator"/>
+ <result column="quantity_available" property="finishedGoodsInventory.quantityAvailable"/>
+ </resultMap>
+
+ <resultMap id="selectDeliveryOrder" type="com.example.erp.entity.sd.Delivery">
+
+ <result column="id" property="id"/>
+ <result column="delivery_state" property="deliveryState"/>
+ <result column="stock_state" property="stockState"/>
+ <result column="payment_terms" property="paymentTerms"/>
+ <result column="delivery_id" property="deliveryId"/>
+ <result column="order_id" property="orderId"/>
+ <result column="project" property="project"/>
+ <result column="customer_id" property="customerId"/>
+ <result column="customer_name" property="customerName"/>
+ <result column="delivery_date" property="deliveryDate"/>
+ <result column="pay_method" property="payMethod"/>
+ <result column="pay_date" property="payDate"/>
+ <result column="salesman_id" property="salesmanId"/>
+ <result column="salesman" property="salesman"/>
+ <result column="creator_id" property="creatorId"/>
+ <result column="creator" property="creator"/>
+ <result column="contacts" property="contacts"/>
+ <result column="contact_number" property="contactNumber"/>
+ <result column="delivery_address" property="deliveryAddress"/>
+ <result column="area" property="area"/>
+
+ <result column="quantity" property="quantity"/>
+ <result column="money" property="money"/>
+ <result column="other_money" property="otherMoney"/>
+ <result column="remarks" property="remarks"/>
+ <result column="create_time" property="createTime"/>
+ <result column="batch" property="order.batch"/>
+ </resultMap>
+
+
+ <delete id="deleteDelivery">
+ delete from sd.delivery where delivery_id=#{deliveryId}
+ </delete>
+ <update id="updateDeliveryToExamine">
+ update sd.delivery set delivery_state=#{deliveryState} where delivery_id=#{deliveryId}
+ </update>
+
+ <update id="updatedelivery">
+ update sd.delivery set area=#{area},quantity=#{quantity},money=#{money},other_money=#{otherMoney} where delivery_id=#{oddNumber}
+ </update>
+
+
+ <select id="getmaximum" >
+ select
+ ifnull(SUBSTR(max(right(delivery_id,8)) from 7),0)
+ from
+ sd.delivery as a
+ where
+ date(a.create_time) = curdate()
+ </select>
+
+ <select id="getmaximumMonth">
+ select
+ ifnull(SUBSTR(max(delivery_id) from 7),0)
+ from
+ sd.delivery as a
+ where
+ date(a.create_time) BETWEEN DATE_FORMAT(DATE(NOW()), '%Y-%m-01') AND DATE(NOW())
+ </select>
+
+ <select id="getDeliveryConut" >
+ select count(*) from sd.delivery where delivery_id=#{deliveryId}
+ </select>
+
+
+ <insert id="insertDelivery" useGeneratedKeys="true" >
+ insert into sd.delivery(delivery_state,stock_state,payment_terms,delivery_id,order_id,project,customer_id,customer_name,
+ delivery_date,pay_method,pay_date,salesman_id,salesman,creator_id,creator,contacts,contact_number,delivery_address,
+ area,quantity,money,remarks,create_time,freight,freight_price,freight_quantity)
+ values (
+ 0,0,#{delivery.paymentTerms},#{number} ,#{orderId},#{delivery.project},#{delivery.customerId},#{delivery.customerName},#{delivery.deliveryDate},#{delivery.payMethod},
+ #{delivery.payDate},#{delivery.salesmanId},#{delivery.salesman},#{delivery.creatorId},#{delivery.creator},#{delivery.contacts},#{delivery.contactNumber},#{delivery.deliveryAddress},
+ 0,0,0,#{delivery.remarks},now(),#{delivery.freightPrice}*#{delivery.freightQuantity},#{delivery.freightPrice},#{delivery.freightQuantity}
+ )
+ </insert>
+
+ <update id="updateDelivery" >
+ update sd.delivery set payment_terms=#{delivery.paymentTerms},
+ delivery_date=#{delivery.deliveryDate},
+ pay_method=#{delivery.payMethod},
+ pay_date=#{delivery.payDate},contacts=#{delivery.contacts},contact_number=#{delivery.contactNumber},
+ delivery_address=#{delivery.deliveryAddress},
+ freight=#{delivery.freightPrice}*#{delivery.freightQuantity},
+ freight_price=#{delivery.freightPrice},
+ freight_quantity=#{delivery.freightQuantity}
+ where delivery_id=#{number}
+ </update>
+
+ <select id="getSelectOrderInventory" resultMap="selectOrderInventory">
+ select o.create_order,
+ o.process_review,
+ o.order_review,
+ o.production_order,
+ o.processing_card,
+ o.warehousing,
+ o.delivery,
+ o.order_id,
+ o.customer_id,
+ o.customer_name,
+ o.quantity,
+ sum(fgi.quantity_available) as quantity_available,
+ o.project,
+ o.batch,
+ o.money,
+ o.area,
+ o.create_time,
+ o.pack_type,
+ o.order_type,
+ o.creator
+ from sd.`order` o
+ left join mm.finished_goods_inventory fgi on o.order_id = fgi.order_id
+ <where>
+ fgi.quantity_available > 0 and date(o.create_time)>=#{startDate} and date(o.create_time) <= #{endDate} and o.create_order>0
+ <if test="order.orderId != null and order.orderId != ''">
+ and o.order_id REGEXP #{order.orderId}
+ </if>
+ <if test="order.customerId != null and order.customerId != ''">
+ and o.customer_id REGEXP #{order.customerId}
+ </if>
+ <if test="order.customerName != null and order.customerName != ''">
+ and o.customer_name REGEXP #{order.customerName}
+ </if>
+ <if test="order.quantity != null and order.quantity != ''">
+ and o.quantity REGEXP #{order.quantity}
+ </if>
+ <if test="order.project != null and order.project != ''">
+ and o.project REGEXP #{order.project}
+ </if>
+ <if test="order.batch != null and order.batch != ''">
+ and o.batch REGEXP #{order.batch}
+ </if>
+ <if test="order.money != null and order.money != ''">
+ and o.money REGEXP REGEXP_REPLACE(#{order.money},'\\.0+$','')
+ </if>
+ <if test="order.area != null and order.area != ''">
+ and o.area REGEXP REGEXP_REPLACE(#{order.area},'\\.0+$','')
+ </if>
+ <if test="order.packType != null and order.packType != ''">
+ and o.pack_type REGEXP #{order.packType}
+ </if>
+ <if test="order.orderType != null and order.orderType != ''">
+ and o.order_type REGEXP #{order.orderType}
+ </if>
+ <if test="order.creator != null and order.creator != ''">
+ and o.creator REGEXP #{order.creator}
+ </if>
+ <if test="order.createTime != null and order.createTime != ''">
+ and o.create_time REGEXP #{order.createTime}
+ </if>
+ </where>
+ group by o.order_id order by o.id desc
+ limit #{offset},#{pageSize};
+ </select>
+
+ <select id="selectOrderId" >
+ select * from sd.`order` where order_id=#{orderId}
+ </select>
+
+ <select id="getSelectOrderInventoryPageTotal" >
+ select CEILING(count(zu.order_id)/#{pageSize}) as 'pageTotal',
+ count(zu.order_id) as 'total' from
+ (select o.create_order,o.process_review,o.order_review,o.production_order,
+ o.processing_card,o.warehousing,o.delivery,o.order_id,o.customer_id,
+ o.customer_name,o.quantity,sum(fgi.quantity_available),o.project,o.batch,
+ o.money,o.area,o.create_time,o.pack_type,o.order_type,o.creator
+ from sd.`order` o left join mm.finished_goods_inventory fgi on o.order_id=fgi.order_id
+ <where>
+ fgi.quantity_available > 0 and date(o.create_time)>=#{startDate} and date(o.create_time) <= #{endDate} and o.create_order>0
+ <if test="order.orderId != null and order.orderId != ''">
+ and o.order_id REGEXP #{order.orderId}
+ </if>
+ <if test="order.customerId != null and order.customerId != ''">
+ and o.customer_id REGEXP #{order.customerId}
+ </if>
+ <if test="order.customerName != null and order.customerName != ''">
+ and o.customer_name REGEXP #{order.customerName}
+ </if>
+ <if test="order.quantity != null and order.quantity != ''">
+ and o.quantity REGEXP #{order.quantity}
+ </if>
+ <if test="order.project != null and order.project != ''">
+ and o.project REGEXP #{order.project}
+ </if>
+ <if test="order.batch != null and order.batch != ''">
+ and o.batch REGEXP #{order.batch}
+ </if>
+ <if test="order.money != null and order.money != ''">
+ and o.money REGEXP REGEXP_REPLACE(#{order.money},'\\.0+$','')
+ </if>
+ <if test="order.area != null and order.area != ''">
+ and o.area REGEXP REGEXP_REPLACE(#{order.area},'\\.0+$','')
+ </if>
+ <if test="order.packType != null and order.packType != ''">
+ and o.pack_type REGEXP #{order.packType}
+ </if>
+ <if test="order.orderType != null and order.orderType != ''">
+ and o.order_type REGEXP #{order.orderType}
+ </if>
+ <if test="order.creator != null and order.creator != ''">
+ and o.creator REGEXP #{order.creator}
+ </if>
+ <if test="order.createTime != null and order.createTime != ''">
+ and o.create_time REGEXP #{order.createTime}
+ </if>
+ </where>
+ group by o.order_id limit #{offset},#{pageSize}) as zu;
+
+
+
+
+ </select>
+
+ <select id="getSelectShippingOrderDetailDelivery" >
+ select
+ d.delivery_state,d.stock_state,d.payment_terms,
+ d.customer_id,d.customer_name,d.project,d.pay_method,d.pay_date,d.contacts,d.contact_number,
+ d.delivery_address,d.remarks,d.create_time,d.delivery_date,d.creator,d.salesman,d.salesman_id,d.freight,d.freight_price,d.freight_quantity
+ from sd.delivery d
+ <where>
+ <if test="orderDetail.deliveryDetail.deliveryId != null and orderDetail.deliveryDetail.deliveryId != ''">
+ and d.delivery_id regexp #{orderDetail.deliveryDetail.deliveryId}
+ </if>
+
+ </where>
+ limit 0,1
+ </select>
+
+ <select id="getSelectShippingOrderDetailDeliveryPrinting" >
+ select
+ d.delivery_id,d.quantity,d.money,d.area,d.project,
+ d.customer_id,d.customer_name,d.project,d.pay_method,d.pay_date,d.contacts,d.contact_number,
+ d.delivery_address,d.remarks,d.create_time,d.delivery_date,d.creator,d.salesman,d.salesman_id,d.freight,d.freight_price,d.freight_quantity
+ from sd.delivery d
+ <where>
+ <if test="deliveryDetail.deliveryId != null and deliveryDetail.deliveryId != ''">
+ and d.delivery_id like concat('%',#{deliveryDetail.deliveryId},'%')
+ </if>
+
+ </where>
+ </select>
+
+ <select id="getSelectShippingOrderDetailPrinting" >
+ select
+ d.order_id,d.quantity,round(d.money,0) as money ,d.area,d.project,
+ d.customer_id,d.customer_name,d.creator,d.salesman,d.salesman_id,
+ d.processing_note,d.contract_id,d.delivery_date
+ from sd.`order` d
+ <where>
+ <if test="orderDetail.orderId != null and orderDetail.orderId != ''">
+ and d.order_id like concat('%',#{orderDetail.orderId},'%')
+ </if>
+
+ </where>
+ </select>
+
+
+ <select id="getSelectShippingOrderDetailDeliverys" >
+ select customer_id,customer_name,project,salesman,salesman_id,contacts,contact_number,delivery_address from sd.`order`
+ <where>
+ <if test="orderDetail.orderId != null and orderDetail.orderId != ''">
+ and order_id regexp #{orderDetail.orderId}
+ </if>
+
+ </where>
+ limit 0,1
+ </select>
+
+ <select id="getSelectShippingOrder" resultMap="selectDeliveryOrder">
+ select * from sd.delivery d left join sd.delivery_detail dd on d.delivery_id=dd.delivery_id
+ left join sd.order o on o.order_id=d.order_id
+ <where>
+ date(d.create_time)>=#{startDate} and date(d.create_time) <= #{endDate}
+ <if test="delivery.deliveryId != null and delivery.deliveryId != ''">
+ and d.delivery_id regexp #{delivery.deliveryId}
+ </if>
+ <if test="delivery.creator != null and delivery.creator != ''">
+ and d.creator regexp #{delivery.creator}
+ </if>
+ <if test="delivery.deliveryDate != null and delivery.deliveryDate != ''">
+ and d.delivery_date regexp #{delivery.deliveryDate}
+ </if>
+ <if test="delivery.customerId != null and delivery.customerId != ''">
+ and d.customer_id regexp #{delivery.customerId}
+ </if>
+ <if test="delivery.customerName != null and delivery.customerName != ''">
+ and d.customer_name regexp #{delivery.customerName}
+ </if>
+ <if test="delivery.project != null and delivery.project != ''">
+ and d.project regexp #{delivery.project}
+ </if>
+ <if test="delivery.orderId != null and delivery.orderId != ''">
+ and dd.order_id regexp #{delivery.orderId}
+ </if>
+ <if test="delivery.payMethod != null and delivery.payMethod != ''">
+ and d.pay_method regexp #{delivery.payMethod}
+ </if>
+ <if test="delivery.quantity != null and delivery.quantity != ''">
+ and d.quantity regexp #{delivery.quantity}
+ </if>
+ <if test="delivery.area != null and delivery.area != ''">
+ and d.area regexp REGEXP_REPLACE(#{delivery.area},'\\.0+$','')
+ </if>
+ <if test="delivery.deliveryState != null ">
+ and d.delivery_state = #{delivery.deliveryState}
+ </if>
+ <if test="delivery.stockState != null ">
+ and d.stock_state = #{delivery.stockState}
+ </if>
+ <if test="delivery.order != null and delivery.order.batch != null and delivery.order.batch != ''">
+ and o.batch regexp #{delivery.order.batch}
+ </if>
+
+ </where>
+ group by d.delivery_id
+ order by
+ <if test="orderBy == null ">
+ d.id desc
+ </if>
+ <if test="orderBy == 'desc'">
+ d.${field} desc
+ </if>
+ <if test="orderBy == 'asc'">
+ d.${field}
+ </if>
+ limit #{offset},#{pageSize};
+ </select>
+
+ <select id="getSelectShippingOrderPageTotal">
+ select
+ CEILING(count(d.id)/#{pageSize}) as 'pageTotal',
+ count(d.id) as 'total'
+ from sd.delivery d
+ left join sd.order o on o.order_id=d.order_id
+ <where>
+ date(d.create_time)>=#{startDate} and date(d.create_time) <= #{endDate}
+ <if test="delivery.deliveryId != null and delivery.deliveryId != ''">
+ and d.delivery_id regexp #{delivery.deliveryId}
+ </if>
+ <if test="delivery.creator != null and delivery.creator != ''">
+ and d.creator regexp #{delivery.creator}
+ </if>
+ <if test="delivery.deliveryDate != null and delivery.deliveryDate != ''">
+ and d.delivery_date regexp #{delivery.deliveryDate}
+ </if>
+ <if test="delivery.customerId != null and delivery.customerId != ''">
+ and d.customer_id regexp #{delivery.customerId}
+ </if>
+ <if test="delivery.customerName != null and delivery.customerName != ''">
+ and d.customer_name regexp #{delivery.customerName}
+ </if>
+ <if test="delivery.project != null and delivery.project != ''">
+ and d.project regexp #{delivery.project}
+ </if>
+ <if test="delivery.orderId != null and delivery.orderId != ''">
+ and d.order_id regexp #{delivery.orderId}
+ </if>
+ <if test="delivery.payMethod != null and delivery.payMethod != ''">
+ and d.pay_method regexp #{delivery.payMethod}
+ </if>
+ <if test="delivery.quantity != null and delivery.quantity != ''">
+ and d.quantity regexp #{delivery.quantity}
+ </if>
+ <if test="delivery.area != null and delivery.area != ''">
+ and d.area regexp REGEXP_REPLACE(#{delivery.area},'\\.0+$','')
+ </if>
+ <if test="delivery.deliveryState != null ">
+ and d.delivery_state = #{delivery.deliveryState}
+ </if>
+ <if test="delivery.stockState != null ">
+ and d.stock_state = #{delivery.stockState}
+ </if>
+ <if test="delivery.order != null and delivery.order.batch != null and delivery.order.batch != ''">
+ and o.batch regexp #{delivery.order.batch}
+ </if>
+ </where>
+ limit #{offset},#{pageSize};
+</select>
+
+ <update id="updateDeliveryPrintNumber">
+ update sd.delivery
+ set printing_number=printing_number+1
+ where delivery_id = #{deliveryId}
+
+ </update>
+
+ <select id="selectByDate">
+ select * from sd.delivery
+ where date(create_time) between #{startDate} and #{endDate}
+ </select>
+
+
+</mapper>
\ No newline at end of file
--
Gitblit v1.8.0