From 212f81d79dc966cdf5f73a658a070ca79d69e822 Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期二, 09 九月 2025 16:40:02 +0800
Subject: [PATCH] 新增接口

---
 service/src/main/resources/mapper/cwgl/KeyCollectionInfoMapper.xml |   54 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 53 insertions(+), 1 deletions(-)

diff --git a/service/src/main/resources/mapper/cwgl/KeyCollectionInfoMapper.xml b/service/src/main/resources/mapper/cwgl/KeyCollectionInfoMapper.xml
index 4255608..782eda6 100644
--- a/service/src/main/resources/mapper/cwgl/KeyCollectionInfoMapper.xml
+++ b/service/src/main/resources/mapper/cwgl/KeyCollectionInfoMapper.xml
@@ -27,10 +27,11 @@
         <result property="quantity"    column="quantity"    />
         <result property="dispatchQuantity"    column="dispatch_quantity"    />
         <result property="remark"    column="remark"    />
+        <result property="boxNum"    column="box_num"    />
     </resultMap>
 
     <sql id="selectKeyCollectionInfoVo">
-        select thisTab.id, thisTab.customer_name, thisTab.carrier, thisTab.dispatch_no, thisTab.driver_name, thisTab.driver_mobile, thisTab.license_plate_number, thisTab.order_time, thisTab.order_created_time, thisTab.dispatch_created_time, thisTab.key_collection_time, thisTab.estimated_departure_time, thisTab.required_arrival_time, thisTab.consignor_address, thisTab.consignee_address, thisTab.main_driver, thisTab.point_num, thisTab.transport_mode, thisTab.assistant_driver, thisTab.quantity, thisTab.dispatch_quantity, thisTab.remark from key_collection_info AS thisTab
+        select thisTab.id, thisTab.customer_name, thisTab.carrier, thisTab.dispatch_no, thisTab.driver_name, thisTab.driver_mobile, thisTab.license_plate_number, thisTab.order_time, thisTab.order_created_time, thisTab.dispatch_created_time, thisTab.key_collection_time, thisTab.estimated_departure_time, thisTab.required_arrival_time, thisTab.consignor_address, thisTab.consignee_address, thisTab.main_driver, thisTab.point_num, thisTab.transport_mode, thisTab.assistant_driver, thisTab.quantity, thisTab.dispatch_quantity, thisTab.remark, thisTab.box_num from key_collection_info AS thisTab
     </sql>
     <sql id="selectKeyCollectionInfoVoCount">
         select count(0) from key_collection_info as thisTab
@@ -56,6 +57,7 @@
         <if test="transportMode != null  and transportMode != ''"> and thisTab.transport_mode = #{transportMode}</if>
         <if test="assistantDriver != null  and assistantDriver != ''"> and thisTab.assistant_driver = #{assistantDriver}</if>
         <if test="quantity != null "> and thisTab.quantity = #{quantity}</if>
+        <if test="boxNum != null "> and thisTab.box_num = #{boxNum}</if>
         <if test="dispatchQuantity != null "> and thisTab.dispatch_quantity = #{dispatchQuantity}</if>
     </sql>
 
@@ -78,6 +80,54 @@
             <include refid="whereCondition"/>
         </where>
         order by thisTab.id desc
+    </select>
+    <select id="selectCwData" resultType="com.ruoyi.cwgl.domain.KeyCollectionInfo">
+        SELECT
+        customer.`NAME` as customerName,
+        bp.`NAME` as carrier,
+        ts.DISPATCH_NO as dispatchNo,
+        driver_m.`NAME` as driverName,
+        driver_m.MOBILE as driverMobile,
+        vhc.LICENSE_PLATE_NUMBER as licensePlateNumber,
+        vhc.NAME as boxNum,
+        ord.ORDER_TIME as orderTime,
+        ord.CREATED_TIME as orderCreatedTime,
+        ts.CREATED_TIME as dispatchCreatedTime,
+        now() as keyCollectionTime, -- 鏀捐姹傛煡璇㈠埌鐨勬椂闂�
+        ord.REQUIRED_DEPARTURE_TIME as estimatedDepartureTime,
+        ord.CONSIGNOR_ADDRESS_ADDR_INFO as consignorAddress,
+        ord.CONSIGNEE_ADDRESS_ADDR_INFO as consigneeAddress,
+        driver_m.`NAME` as mainDriver,
+        ts.POINT_NUM as pointNum,
+        ts.TRANSPORT_MODE as transportMode,
+        driver_a.`NAME` as assistantDriver,
+        ts.QUANTITY as quantity,
+        ts.REQUIRED_ARRIVAL_TIME as requiredArrivalTime,  -- 娣诲姞鍒悕
+        ts.DISPATCH_QUANTITY as dispatchQuantity,
+        ts.REMARK as remark,
+        TIMESTAMPDIFF(HOUR, ord.ORDER_TIME, ord.CREATED_TIME) as schedulingTimeout,
+        TIMESTAMPDIFF(HOUR, ord.REQUIRED_DEPARTURE_TIME, NOW()) as keyTimeout
+
+        FROM
+        tms_shipment ts
+        LEFT JOIN oms_order ord ON ts.DISPATCH_NO = ord.DISPATCH_CODE
+        LEFT JOIN base_customer customer ON customer.ID = ord.CUSTOMER_ID
+        LEFT JOIN tms_vehicle vhc ON ts.VEHICLE_ID = vhc.id
+        LEFT JOIN base_provider bp ON bp.ID = ts.CARRIER_ID
+        LEFT JOIN tms_driver driver_m ON driver_m.ID = ts.MAIN_DRIVER_ID
+        LEFT JOIN tms_driver driver_a ON driver_a.ID = ts.ASSISTANT_DRIVER_ID
+
+        WHERE
+        ts.`STATUS` = 'A'
+        <if test="driverCode != null and driverCode != ''">
+            AND driver_m.MOBILE = #{driverCode}
+        </if>
+        <if test="driverName != null and driverName != ''">
+            AND driver_m.NAME = #{driverName}
+        </if>
+
+        ORDER BY ord.ESTIMATED_DEPARTURE_TIME ASC
+        LIMIT 1
     </select>
 
     <!-- 鏂板 -->
@@ -105,6 +155,7 @@
             <if test="quantity != null">quantity,</if>
             <if test="dispatchQuantity != null">dispatch_quantity,</if>
             <if test="remark != null">remark,</if>
+            <if test="boxNum != null">box_num,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="customerName != null">#{customerName},</if>
@@ -128,6 +179,7 @@
             <if test="quantity != null">#{quantity},</if>
             <if test="dispatchQuantity != null">#{dispatchQuantity},</if>
             <if test="remark != null">#{remark},</if>
+            <if test="boxNum != null">#{boxNum},</if>
          </trim>
     </insert>
 

--
Gitblit v1.8.0