From ca98866230c89e247bf4b93222c07cea0437ff20 Mon Sep 17 00:00:00 2001
From: zhangback <zhangback@163.com>
Date: 星期二, 16 十二月 2025 17:17:26 +0800
Subject: [PATCH] 提交

---
 ui/admin-ui3/src/views/tms/generationCost/index.vue |   56 +++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 49 insertions(+), 7 deletions(-)

diff --git a/ui/admin-ui3/src/views/tms/generationCost/index.vue b/ui/admin-ui3/src/views/tms/generationCost/index.vue
index 48dd64a..e035a76 100644
--- a/ui/admin-ui3/src/views/tms/generationCost/index.vue
+++ b/ui/admin-ui3/src/views/tms/generationCost/index.vue
@@ -151,6 +151,15 @@
                          :false-value="0"
                          @change="(e:number) =>isYFChange(e, row)" ></el-checkbox>
           </template>
+          <template #yfServiceProviderId="{row}">
+            <el-select v-model="row.yfServiceProviderIdType"  placeholder="璇烽�夋嫨鏈嶅姟鍟�"
+                      @change="(e:any)=>ysServiceProviderChange(e,row)"
+                      :filterable="true">
+              <el-option v-for="item in serviceProviderList"
+                         :key="item.serviceProviderId + '_'+ item.serviceProviderType" :label="item.serviceProviderName"
+                         :value="item.serviceProviderId + '_'+ item.serviceProviderType"></el-option>
+            </el-select>
+          </template>
           <template #yfPrice="{row}">
             <el-input v-model="row.yfPrice" :min="1"
                       type="number" placeholder="璇疯緭鍏ラ噾棰�"></el-input>
@@ -227,7 +236,9 @@
   getTmsDispatchOrder,
   costListTmsDispatchOrder,
   updateTmsDispatchOrder,
-  generateTmsDispatchOrder, initGenerate, initYSGenerate, ysGenerateTmsDispatchOrder, initYFGenerate,yfGenerateTmsDispatchOrder
+  generateTmsDispatchOrder, initGenerate, initYSGenerate,
+  ysGenerateTmsDispatchOrder, initYFGenerate,yfGenerateTmsDispatchOrder,
+  getServiceProvider
 } from "@/api/tms/tmsDispatchOrder";
 import useCurrentInstance from "@/utils/useCurrentInstance";
 import {computed, onMounted, reactive, ref, toRefs, watch, getCurrentInstance, nextTick} from "vue";
@@ -244,6 +255,7 @@
 import {listTmsLoadingServiceProvider} from "@/api/tms/tmsLoadingServiceProvider";
 import {selectPaymentTmsQuotePlan} from "@/api/tms/tmsQuotePlan";
 import {addTmsQuoteFee, listTmsQuoteFee, pushTmsQuoteFee} from "@/api/tms/tmsQuoteFee";
+import {an} from "vue-router/dist/router-CWoNjPRp";
 
 
 const {appContext} = getCurrentInstance();
@@ -293,12 +305,13 @@
   isCustoms:<any> -1,
   isLoad: -1,
   active: 'tab1',
-  quotationItems:[]
+  quotationItems:[],
+  serviceProviderList: <any>[]
 })
 const {
   queryParams, form, page, selectionList,
   boxTableData, optionType,open,
-  boxFormOption, boxForm, boxTableOption,boxItemTableOption,selectionList2,isCustoms,isLoad,active,quotationItems
+  boxFormOption, boxForm, boxTableOption,boxItemTableOption,selectionList2,isCustoms,isLoad,active,quotationItems,serviceProviderList
 } = toRefs(data);
 const option = ref({
   pageKey: 'TmsDispatchOrder',
@@ -672,13 +685,21 @@
       type: 'select', dataType: 'string', dicUrl: '/system/dict/data/type/tms_dispatch_order_status',
       display: false,
       hide: false, fixed: 'right',
-      search: true,
+      search: false,
       rules: [
         {
           required: true,
           message: "鐘舵�佷笉鑳戒负绌�", trigger: "change"
         }
       ],
+    },
+    inStatusList: {
+      label: '鐘舵��', minWidth: 150,
+      type: 'select', dataType: 'string', dicUrl: '/system/dict/data/type/tms_dispatch_order_status',
+      display: false,multiple:true,
+      hide: true,
+      search: true,
+
     },
     confirmTime: {
       label: '纭鏃堕棿', minWidth: 180,
@@ -908,6 +929,12 @@
       label: '鏄惁搴斾粯璐圭敤',
       display: true,
       type: 'radio', dicUrl: '/system/dict/data/type/sys_number_is', dataType: 'string',
+
+    },
+    yfServiceProviderId:{
+      label: '鏈嶅姟鍟�',
+      display: true,
+      type: 'select',
 
     },
     yfPrice:{
@@ -1178,6 +1205,7 @@
         message: "鎿嶄綔鎴愬姛锛�",
         type: 'success'
       })
+      boxFormRef.value?.resetFields();
       getTab2Data();
     })
   }
@@ -1194,7 +1222,7 @@
   boxTableOption.value = itineraryTableOption.value;
   listTmsTrip({dispatchOrderId: row.id, pageNum: 1, pageSize: 999}).then(res => {
     boxTableData.value = res.rows || [];
-    pageF.open = true;
+    open.value =  true;
     pageF.title = '鏌ョ湅琛岀▼';
     boxFormOption.value.title = '';
   })
@@ -1258,18 +1286,22 @@
 
 
 const getTab2Data = async () =>{
+  let serviceProvider = await getServiceProvider(form.value.id);
+  serviceProviderList.value = serviceProvider.data || [];
   listTmsFinanceDetail({
     dispatchOrderId: form.value.id, financeType: 2,
     pageNum: 1, pageSize: 999
-  }).then(res => {
+  }).then(async res => {
     boxTableData.value = res.rows || [];
+
     boxForm.value = {
-      dispatchOrderId:  form.value.id,
+      dispatchOrderId: form.value.id,
       dataSource: 0,
       financeType: 2,
     }
   })
 }
+
 
 
 
@@ -1357,6 +1389,10 @@
           row.serviceProviderId = serviceProviderId;
 
         }
+      }
+
+      if (row.serviceProviderType){
+        serviceProviderChange(row);
       }
 
 
@@ -1480,6 +1516,12 @@
 
 }
 
+const ysServiceProviderChange = (e:any,row:any) => {
+  let  active = serviceProviderList.value.find((item:any) => item.serviceProviderId + '_'+ item.serviceProviderType == e)
+  row.yfServiceProviderId = active.serviceProviderId;
+  row.yfServiceProviderName = active.serviceProviderName;
+  row.yfServiceProviderType = active.serviceProviderType;
+}
 
 
 </script>
\ No newline at end of file

--
Gitblit v1.8.0