From 155d0cb16d9549c701d9ad59e519a7fc5bc899a2 Mon Sep 17 00:00:00 2001
From: sen <sen@qq.com>
Date: 星期一, 18 八月 2025 10:16:48 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/yagwly_fa_master' into yagwly_fa_master

---
 service/src/main/resources/mapper/cwgl/PendingSettlementBusinessMapper.xml |   88 ++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 85 insertions(+), 3 deletions(-)

diff --git a/service/src/main/resources/mapper/cwgl/PendingSettlementBusinessMapper.xml b/service/src/main/resources/mapper/cwgl/PendingSettlementBusinessMapper.xml
index 8532055..7510e95 100644
--- a/service/src/main/resources/mapper/cwgl/PendingSettlementBusinessMapper.xml
+++ b/service/src/main/resources/mapper/cwgl/PendingSettlementBusinessMapper.xml
@@ -53,10 +53,18 @@
         <result property="settlementStatus"    column="settlement_status"    />
         <result property="createTime"    column="create_time"    />
         <result property="updateTime"    column="update_time"    />
+        <result property="isCreate"    column="is_create"    />
+        <result property="billId"    column="bill_id"    />
+        <result property="billName"    column="bill_name"    />
+        <result property="confirmedTotalIncome"    column="confirmed_total_income"    />
+        <result property="confirmedTotalCost"    column="confirmed_total_cost"    />
+        <result property="isIncomeMatched"    column="is_income_matched"    />
+        <result property="isCostMatched"    column="is_cost_matched"    />
+        <result property="relatedBillStatus"    column="related_bill_status"    />
     </resultMap>
 
     <sql id="selectPendingSettlementBusinessVo">
-        select thisTab.id, thisTab.booking_no, thisTab.customer_id, thisTab.carrier_id, thisTab.project_name, thisTab.dispatch_no, thisTab.created_time, thisTab.transport_mode, thisTab.product_id, thisTab.customer_name, thisTab.operation_mode, thisTab.carrier_name, thisTab.departure_location, thisTab.arrival_location, thisTab.vehicle_id, thisTab.license_plate_number, thisTab.vehicle_type, thisTab.main_driver, thisTab.assistant_driver, thisTab.point_num, thisTab.business_contact, thisTab.estimated_total_income, thisTab.estimated_total_cost, thisTab.estimated_profit, thisTab.electronic_lock, thisTab.re_weighing_weight, thisTab.quantity, thisTab.actual_departure_time, thisTab.required_arrival_time, thisTab.actual_arrival_time, thisTab.be_return, thisTab.dispatch_quantity, thisTab.dispatch_weight, thisTab.dispatch_volume, thisTab.empty_mileage, thisTab.empty_fuel, thisTab.heavy_mileage, thisTab.heavy_fuel, thisTab.be_scheduled, thisTab.tracking_no, thisTab.seal_no, thisTab.schedule_no, thisTab.transport_status, thisTab.estimated_bill_id, thisTab.settlement_bill_id, thisTab.settlement_status, thisTab.create_time, thisTab.update_time from pending_settlement_business AS thisTab
+        select thisTab.id, thisTab.booking_no, thisTab.customer_id, thisTab.carrier_id, thisTab.project_name, thisTab.dispatch_no, thisTab.created_time, thisTab.transport_mode, thisTab.product_id, thisTab.customer_name, thisTab.operation_mode, thisTab.carrier_name, thisTab.departure_location, thisTab.arrival_location, thisTab.vehicle_id, thisTab.license_plate_number, thisTab.vehicle_type, thisTab.main_driver, thisTab.assistant_driver, thisTab.point_num, thisTab.business_contact, thisTab.estimated_total_income, thisTab.estimated_total_cost, thisTab.estimated_profit, thisTab.electronic_lock, thisTab.re_weighing_weight, thisTab.quantity, thisTab.actual_departure_time, thisTab.required_arrival_time, thisTab.actual_arrival_time, thisTab.be_return, thisTab.dispatch_quantity, thisTab.dispatch_weight, thisTab.dispatch_volume, thisTab.empty_mileage, thisTab.empty_fuel, thisTab.heavy_mileage, thisTab.heavy_fuel, thisTab.be_scheduled, thisTab.tracking_no, thisTab.seal_no, thisTab.schedule_no, thisTab.transport_status, thisTab.estimated_bill_id, thisTab.settlement_bill_id, thisTab.bill_id, thisTab.settlement_status, thisTab.create_time, thisTab.update_time, thisTab.is_create, thisTab.bill_name, thisTab.confirmed_total_income, thisTab.confirmed_total_cost, thisTab.is_income_matched, thisTab.is_cost_matched, thisTab.related_bill_status from pending_settlement_business AS thisTab
     </sql>
     <sql id="selectPendingSettlementBusinessVoCount">
         select count(0) from pending_settlement_business as thisTab
@@ -98,8 +106,14 @@
         <if test="dispatchVolume != null "> and thisTab.dispatch_volume = #{dispatchVolume}</if>
         <if test="emptyMileage != null "> and thisTab.empty_mileage = #{emptyMileage}</if>
         <if test="emptyFuel != null "> and thisTab.empty_fuel = #{emptyFuel}</if>
+        <if test="isCreate != null "> and thisTab.is_create = #{isCreate}</if>
+        <if test="billId != null "> and thisTab.bill_id = #{billId}</if>
         <if test="heavyMileage != null "> and thisTab.heavy_mileage = #{heavyMileage}</if>
         <if test="heavyFuel != null "> and thisTab.heavy_fuel = #{heavyFuel}</if>
+        <if test="confirmedTotalIncome != null "> and thisTab.confirmed_total_income = #{confirmedTotalIncome}</if>
+        <if test="confirmedTotalCost != null "> and thisTab.confirmed_total_cost = #{confirmedTotalCost}</if>
+        <if test="isIncomeMatched != null "> and thisTab.is_income_matched = #{isIncomeMatched}</if>
+        <if test="isCostMatched != null "> and thisTab.is_cost_matched = #{isCostMatched}</if>
         <if test="beScheduled != null  and beScheduled != ''"> and thisTab.be_scheduled = #{beScheduled}</if>
         <if test="trackingNo != null  and trackingNo != ''"> and thisTab.tracking_no = #{trackingNo}</if>
         <if test="sealNo != null  and sealNo != ''"> and thisTab.seal_no = #{sealNo}</if>
@@ -265,6 +279,20 @@
 	rt.STATUS = 'ACTIVE'
 	AND rt.NAME = '搴斾粯绾胯矾鏁磋溅浠锋牸' and rtd.REFERENCE1='杩愯垂'
     </select>
+    <select id="selectCustomName" resultType="java.lang.String">
+        SELECT customer_name from pending_settlement_business group by customer_name
+
+    </select>
+    <select id="selectPendingSettlementBusinessDispatchNos" resultType="java.lang.String">
+        SELECT dispatch_no from pending_settlement_business where  bill_id =    #{id}
+
+    </select>
+    <select id="selectPendingSettlementBusinessByNo"
+            resultMap="PendingSettlementBusinessResult">
+        <include refid="selectPendingSettlementBusinessVo"/>
+        where dispatch_no = #{dispatchNo}
+
+    </select>
 
     <!-- 鏂板 -->
     <insert id="insertPendingSettlementBusiness" parameterType="com.ruoyi.cwgl.domain.PendingSettlementBusiness"  useGeneratedKeys="true" keyProperty="id">
@@ -317,6 +345,11 @@
             <if test="settlementStatus != null">settlement_status,</if>
             <if test="createTime != null">create_time,</if>
             <if test="updateTime != null">update_time,</if>
+            <if test="isCreate != null">is_create,</if>
+            <if test="confirmedTotalIncome != null">confirmed_total_income,</if>
+            <if test="confirmedTotalCost != null">confirmed_total_cost,</if>
+            <if test="isIncomeMatched != null">is_income_matched,</if>
+            <if test="isCostMatched != null">is_cost_matched,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="bookingNo != null">#{bookingNo},</if>
@@ -366,17 +399,22 @@
             <if test="settlementStatus != null">#{settlementStatus},</if>
             <if test="createTime != null">#{createTime},</if>
             <if test="updateTime != null">#{updateTime},</if>
+            <if test="isCreate != null">#{isCreate},</if>
+            <if test="confirmedTotalIncome != null">#{confirmedTotalIncome},</if>
+            <if test="confirmedTotalCost != null">#{confirmedTotalCost},</if>
+            <if test="isIncomeMatched != null">#{isIncomeMatched},</if>
+            <if test="isCostMatched != null">#{isCostMatched},</if>
          </trim>
     </insert>
 
     <insert id="insertPendingSettlementBusinessBatch" parameterType="java.util.List">
         insert into pending_settlement_business
         <trim prefix="(" suffix=") values" suffixOverrides=",">
-            booking_no,customer_id,carrier_id,project_name,dispatch_no,created_time,transport_mode,product_id,customer_name,operation_mode,carrier_name,departure_location,arrival_location,vehicle_id,license_plate_number,vehicle_type,main_driver,assistant_driver,point_num,business_contact,estimated_total_income,estimated_total_cost,estimated_profit,electronic_lock,re_weighing_weight,quantity,actual_departure_time,required_arrival_time,actual_arrival_time,be_return,dispatch_quantity,dispatch_weight,dispatch_volume,empty_mileage,empty_fuel,heavy_mileage,heavy_fuel,be_scheduled,tracking_no,seal_no,schedule_no,transport_status,estimated_bill_id,settlement_bill_id,settlement_status,create_time,update_time,
+            booking_no,customer_id,carrier_id,project_name,dispatch_no,created_time,transport_mode,product_id,customer_name,operation_mode,carrier_name,departure_location,arrival_location,vehicle_id,license_plate_number,vehicle_type,main_driver,assistant_driver,point_num,business_contact,estimated_total_income,estimated_total_cost,estimated_profit,electronic_lock,re_weighing_weight,quantity,actual_departure_time,required_arrival_time,actual_arrival_time,be_return,dispatch_quantity,dispatch_weight,dispatch_volume,empty_mileage,empty_fuel,heavy_mileage,heavy_fuel,be_scheduled,tracking_no,seal_no,schedule_no,transport_status,estimated_bill_id,settlement_bill_id,settlement_status,create_time,update_time,is_create,is_income_matched,is_cost_matched,
         </trim>
         <foreach item="item" index="index" collection="list" separator=",">
             <trim prefix="(" suffix=") " suffixOverrides=",">
-                #{item.bookingNo},#{item.customerId},#{item.carrierId},#{item.projectName},#{item.dispatchNo},#{item.createdTime},#{item.transportMode},#{item.productId},#{item.customerName},#{item.operationMode},#{item.carrierName},#{item.departureLocation},#{item.arrivalLocation},#{item.vehicleId},#{item.licensePlateNumber},#{item.vehicleType},#{item.mainDriver},#{item.assistantDriver},#{item.pointNum},#{item.businessContact},#{item.estimatedTotalIncome},#{item.estimatedTotalCost},#{item.estimatedProfit},#{item.electronicLock},#{item.reWeighingWeight},#{item.quantity},#{item.actualDepartureTime},#{item.requiredArrivalTime},#{item.actualArrivalTime},#{item.beReturn},#{item.dispatchQuantity},#{item.dispatchWeight},#{item.dispatchVolume},#{item.emptyMileage},#{item.emptyFuel},#{item.heavyMileage},#{item.heavyFuel},#{item.beScheduled},#{item.trackingNo},#{item.sealNo},#{item.scheduleNo},#{item.transportStatus},#{item.estimatedBillId},#{item.settlementBillId},#{item.settlementStatus},#{item.createTime},#{item.updateTime},
+                #{item.bookingNo},#{item.customerId},#{item.carrierId},#{item.projectName},#{item.dispatchNo},#{item.createdTime},#{item.transportMode},#{item.productId},#{item.customerName},#{item.operationMode},#{item.carrierName},#{item.departureLocation},#{item.arrivalLocation},#{item.vehicleId},#{item.licensePlateNumber},#{item.vehicleType},#{item.mainDriver},#{item.assistantDriver},#{item.pointNum},#{item.businessContact},#{item.estimatedTotalIncome},#{item.estimatedTotalCost},#{item.estimatedProfit},#{item.electronicLock},#{item.reWeighingWeight},#{item.quantity},#{item.actualDepartureTime},#{item.requiredArrivalTime},#{item.actualArrivalTime},#{item.beReturn},#{item.dispatchQuantity},#{item.dispatchWeight},#{item.dispatchVolume},#{item.emptyMileage},#{item.emptyFuel},#{item.heavyMileage},#{item.heavyFuel},#{item.beScheduled},#{item.trackingNo},#{item.sealNo},#{item.scheduleNo},#{item.transportStatus},#{item.estimatedBillId},#{item.settlementBillId},#{item.settlementStatus},#{item.createTime},#{item.updateTime},#{item.isCreate},#{item.isIncomeMatched},#{item.isCostMatched},
             </trim>
         </foreach>
     </insert>
@@ -432,6 +470,7 @@
             <if test="settlementStatus != null">settlement_status = #{settlementStatus},</if>
             <if test="createTime != null">create_time = #{createTime},</if>
             <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="isCreate != null">is_create = #{isCreate},</if>
         </trim>
         where id = #{id}
     </update>
@@ -487,6 +526,7 @@
                 <if test="item.settlementStatus != null">settlement_status = #{item.settlementStatus},</if>
                 <if test="item.createTime != null">create_time = #{item.createTime},</if>
                 <if test="item.updateTime != null">update_time = #{item.updateTime},</if>
+                <if test="item.isCreate != null">is_create = #{item.isCreate},</if>
             </trim>
         where id = #{item.id}
         </foreach>
@@ -499,6 +539,37 @@
         </foreach>
 
     </update>
+    <update id="updatePendingSettlementBusinessIsCreate">
+
+        UPDATE pending_settlement_business
+        SET is_create = 1 ,bill_id = #{id},bill_name = #{billName},related_bill_status = 1
+        WHERE dispatch_no IN
+        <foreach item="item" collection="list" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+    </update>
+    <update id="updatePendingSettlementBusinessByBillId">
+            UPDATE pending_settlement_business p
+            JOIN estimated_receivable e ON p.dispatch_no = e.dispatch_no
+            SET
+            p.bill_name = #{billName},
+            e.related_bill_name = #{billName}
+            WHERE p.bill_id = #{id};
+    </update>
+    <update id="updateEstimatedReceivableBillStatus">
+        UPDATE pending_settlement_business p
+        JOIN estimated_receivable e ON p.dispatch_no = e.dispatch_no
+        SET
+        p.is_create = 1,
+        p.bill_id = #{id},
+        p.bill_name = #{billName},
+        p.related_bill_status = 1,
+        e.related_bill_name = #{billName}
+        WHERE p.dispatch_no IN
+        <foreach item="item" collection="list" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+    </update>
 
     <!--鍒犻櫎-->
     <delete id="deletePendingSettlementBusinessById" parameterType="Integer">
@@ -510,5 +581,16 @@
             #{id}
         </foreach>
     </delete>
+    <delete id="cancelRelevancy">
+       UPDATE pending_settlement_business p
+LEFT JOIN estimated_receivable e ON p.dispatch_no = e.dispatch_no
+SET
+    p.bill_id = NULL,
+    p.bill_name = NULL,
+    p.is_create = 0,
+    p.related_bill_status = 0,
+    e.related_bill_name = NULL
+    WHERE p.id = #{id}
+    </delete>
 
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0