From 89fd2cf7202c321512c2ea699a3a220a7138ed44 Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期四, 09 四月 2026 10:40:52 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/cwxt_master' into cwxt_master
---
ui/admin-ui3/src/views/tms/paymentTmsFinance/index.vue | 923 +++++++++++++++++++++++---------------------------------
1 files changed, 383 insertions(+), 540 deletions(-)
diff --git a/ui/admin-ui3/src/views/tms/paymentTmsFinance/index.vue b/ui/admin-ui3/src/views/tms/paymentTmsFinance/index.vue
index 1d64374..2e4fa0e 100644
--- a/ui/admin-ui3/src/views/tms/paymentTmsFinance/index.vue
+++ b/ui/admin-ui3/src/views/tms/paymentTmsFinance/index.vue
@@ -1,5 +1,5 @@
<template>
- <basicContainer >
+ <basicContainer>
<avue-crud
:option="option"
:table-loading="pageF.loading"
@@ -21,21 +21,21 @@
@on-load="onLoad"
>
<template #menu-left>
- <el-button
- type="success"
- icon="Edit"
- :disabled="pageF.single"
- v-hasPermi="['tms:tmsFinance:edit']"
- @click="handleUpdate">淇敼
- </el-button>
- <el-button
- type="danger"
- icon="Delete"
- :disabled="pageF.multiple"
- @click="handleDelete"
- v-hasPermi="['tms:tmsFinance:remove']"
- >鍒犻櫎
- </el-button>
+ <!-- <el-button-->
+ <!-- type="success"-->
+ <!-- icon="Edit"-->
+ <!-- :disabled="pageF.single"-->
+ <!-- v-hasPermi="['tms:tmsFinance:edit']"-->
+ <!-- @click="handleUpdate">淇敼-->
+ <!-- </el-button>-->
+ <!-- <el-button-->
+ <!-- type="danger"-->
+ <!-- icon="Delete"-->
+ <!-- :disabled="pageF.multiple"-->
+ <!-- @click="handleDelete"-->
+ <!-- v-hasPermi="['tms:tmsFinance:remove']"-->
+ <!-- >鍒犻櫎-->
+ <!-- </el-button>-->
<el-button
type="warning"
plain
@@ -45,540 +45,383 @@
>瀵煎嚭
</el-button>
</template>
+ <template #menu-before="{row}">
+ <el-link size="small" type="primary" v-if="row.status == 0" @click="handleConfirm(row)" class="link-btn"
+ :underline="false" icon="el-icon-pointer">纭
+ </el-link>
+ <el-link size="small" type="primary" v-if="[0,1].includes(row.status)" @click="handleCancel(row)" class="link-btn" :underline="false"
+ icon="el-icon-connection">浣滃簾
+ </el-link>
+ <el-link size="small" type="primary" v-if="[0,1].includes(row.status)" @click="handleAddFinanceDetail(row)" class="link-btn"
+ :underline="false" icon="el-icon-edit-pen">璐圭敤鏄庣粏
+ </el-link>
+ </template>
</avue-crud>
+ <el-dialog :title="pageF.title" v-model="pageF.open" class="avue-dialog avue-dialog--top" width="80%">
+ 鎬昏垂鐢� <el-input-number v-model="form.totalAmount" disabled readonly></el-input-number>
+ <avue-crud style="margin-top: 10px "
+ :option="financeTableOption"
+ :data="boxTableData"
+ :permission="permissionList2"
+ @row-update="rowDetailUpdate"
+ @row-save="rowDetailSave"
+ >
+ <template #menu="{row}">
+ <el-link size="small" type="primary" v-if="[0].includes(row.status)" @click="handleCancelDetail(row)" class="link-btn" :underline="false"
+ icon="el-icon-connection">浣滃簾
+ </el-link>
+ </template>
+ </avue-crud>
+ </el-dialog>
+
</basicContainer>
</template>
<script setup name="tmsFinance" lang="ts">
- import {TmsFinanceI,addTmsFinance, delTmsFinance, exportTmsFinance, getTmsFinance, listTmsFinance, updateTmsFinance} from "@/api/tms/tmsFinance";
- import useCurrentInstance from "@/utils/useCurrentInstance";
- import {computed,reactive, ref, toRefs} from "vue";
- import {PagesInterface, PageQueryInterface} from "@/utils/globalInterface";
- import {usePagePlus} from "@/hooks/usePagePlus";
- import {hasPermission} from "@/utils/permissionUtils";
+import {
+ TmsFinanceI,
+ addTmsFinance,
+ delTmsFinance,
+ exportTmsFinance,
+ getTmsFinance,
+ listTmsFinance,
+ updateTmsFinance,confirmFinance,cancelFinance
+} from "@/api/tms/tmsFinance";
+import {addTmsFinanceDetail, listTmsFinanceDetail,
+ cancelFinanceDetail,
+ updateTmsFinanceDetail} from "@/api/tms/tmsFinanceDetail"
- const { proxy } = useCurrentInstance();
- const crudRef = ref();
+import useCurrentInstance from "@/utils/useCurrentInstance";
+import {computed, reactive, ref, toRefs} from "vue";
+import {PagesInterface, PageQueryInterface} from "@/utils/globalInterface";
+import {usePagePlus} from "@/hooks/usePagePlus";
+import {hasPermission} from "@/utils/permissionUtils";
+import {ElMessage, ElMessageBox} from "element-plus";
+import {confirmOrder} from "@/api/tms/tmsDispatchOrder";
- const permissionList = computed(()=>{
- return {
- addBtn: hasPermission(["tms:tmsFinance:add"]),
- delBtn: hasPermission(["tms:tmsFinance:remove"]),
- editBtn: hasPermission(["tms:tmsFinance:edit"]),
- viewBtn: hasPermission(["tms:tmsFinance:query"]),
- }
- })
+const {proxy} = useCurrentInstance();
+const crudRef = ref();
- const data = reactive({
- form:<TmsFinanceI>{},
- queryParams:<TmsFinanceI&PageQueryInterface>{},
- page: <PagesInterface>{
- pageSize: 10,
- total: 0,
- currentPage: 1,
+const permissionList = computed(() => {
+ return {
+ addBtn: hasPermission(["tms:tmsFinance:add"]),
+ delBtn: hasPermission(["tms:tmsFinance:remove"]),
+ editBtn: hasPermission(["tms:tmsFinance:edit"]),
+ viewBtn: hasPermission(["tms:tmsFinance:query"]),
+ }
+})
+
+const permissionList2 = (key: any, row: any, index: any) => {
+ if (key == 'addBtn') {
+ return true
+ }else if (key == 'editBtn') {
+ return [0].includes(row?.status)
+ } else {
+ return true;
+ }
+};
+const data = reactive({
+ form: <TmsFinanceI>{},
+ queryParams: <TmsFinanceI & PageQueryInterface>{},
+ page: <PagesInterface>{
+ pageSize: 10,
+ total: 0,
+ currentPage: 1,
+ },
+ selectionList: [],
+ boxTableData: []
+})
+const {queryParams, form, page, selectionList,boxTableData} = toRefs(data);
+const option = ref({
+ pageKey: 'TmsFinance',
+ rowKey: 'id',
+ addBtn: false,
+ editBtn: false,
+ delBtn: false,
+ viewBtn: false,
+ column: {
+
+ systemCode: {
+ label: '绯荤粺缂栧彿',
+ hide: false,minWidth: 180,
+ search: true,
},
- selectionList:[],
- })
- const {queryParams,form,page,selectionList} = toRefs(data);
- const option = ref({
- pageKey: 'TmsFinance',
- rowKey: 'id',
- column: {
- id: {
- label: '涓婚敭ID',
- addDisplay :true,
- editDisplay : false,
- viewDisplay : false,
- hide : true,
- search : false,
- },
- systemCode: {
- label: '绯荤粺缂栧彿锛屾柊澧炴椂鑷姩濉啓',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "绯荤粺缂栧彿锛屾柊澧炴椂鑷姩濉啓涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- planName: {
- label: '搴旀敹',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "搴旀敹涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- dispatchId: {
- label: '璋冨害鍗曞彿',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "璋冨害鍗曞彿涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- dispatchNo: {
- label: '璋冨害鍗曞彿',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "璋冨害鍗曞彿涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- customerId: {
- label: '瀹㈡埛ID',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "瀹㈡埛ID涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- customerCode: {
- label: '瀹㈡埛缂栫爜',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- projectId: {
- label: '鍏宠仈椤圭洰ID',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "鍏宠仈椤圭洰ID涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- projectName: {
- label: '鍏宠仈椤圭洰鍚嶇О',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "鍏宠仈椤圭洰鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- vehicleProviderId: {
- label: '杞﹁締鏈嶅姟鍟咺D',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "杞﹁締鏈嶅姟鍟咺D涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- vehicleProviderName: {
- label: '杞﹁締鏈嶅姟鍟嗗悕绉�',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "杞﹁締鏈嶅姟鍟嗗悕绉颁笉鑳戒负绌�", trigger: "blur" }
- ], },
- requiredVehicleTypes: {
- label: '瑕佹眰杞﹀瀷锛岀敱璋冨害鍗曟暟鎹敓鎴�',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "瑕佹眰杞﹀瀷锛岀敱璋冨害鍗曟暟鎹敓鎴愪笉鑳戒负绌�", trigger: "blur" }
- ], },
- actualVehicleType: {
- label: '瀹為檯杞﹀瀷',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- mainDriverId: {
- label: '鍏宠仈椹鹃┒鍛樼鐞咺D',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "鍏宠仈椹鹃┒鍛樼鐞咺D涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- mainDriver: {
- label: '涓婚┚椹跺憳锛岀敱璋冨害鍗曟暟鎹敓鎴�',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "涓婚┚椹跺憳锛岀敱璋冨害鍗曟暟鎹敓鎴愪笉鑳戒负绌�", trigger: "blur" }
- ], },
- assistantDriver: {
- label: '鍓┚椹跺憳锛岀敱璋冨害鍗曟暟鎹敓鎴�',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- vehicleId: {
- label: '杞﹁締绠$悊琛↖D',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "杞﹁締绠$悊琛↖D涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- licensePlate: {
- label: '杞︾墝鍙凤紝鐢辫皟搴﹀崟鏁版嵁鐢熸垚',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "杞︾墝鍙凤紝鐢辫皟搴﹀崟鏁版嵁鐢熸垚涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- totalAmount: {
- label: '鎬婚噾棰濓紝鐢辫皟搴﹀崟鏁版嵁鐢熸垚',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "鎬婚噾棰濓紝鐢辫皟搴﹀崟鏁版嵁鐢熸垚涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- transportRoute: {
- label: '杩愯緭绾胯矾锛岀敱璋冨害鍗曟暟鎹敓鎴�',
- type: 'textarea', minRows: 3, maxRows: 5,
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "杩愯緭绾胯矾锛岀敱璋冨害鍗曟暟鎹敓鎴愪笉鑳戒负绌�", trigger: "blur" }
- ], },
- shipperId: {
- label: '鍙戣揣浜�',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "鍙戣揣浜轰笉鑳戒负绌�", trigger: "blur" }
- ], },
- shipperName: {
- label: '鍙戣揣浜哄悕绉�',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- shipperMobile: {
- label: '鍙戣揣浜烘墜鏈哄彿',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- shipperAddress: {
- label: '鍙戣揣浜哄湴鍧�',
- type: 'textarea', minRows: 3, maxRows: 5,
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- shipperRegionCode: {
- label: '鍙戣揣琛屾斂鍖哄煙',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- receiverId: {
- label: '鏀惰揣浜�',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "鏀惰揣浜轰笉鑳戒负绌�", trigger: "blur" }
- ], },
- receiverName: {
- label: '鏀惰揣浜哄悕绉�',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- receiverMobile: {
- label: '鏀惰揣浜烘墜鏈哄彿',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- receiverAddress: {
- label: '鏀惰揣浜哄湴鍧�',
- type: 'textarea', minRows: 3, maxRows: 5,
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- receiverRegionCode: {
- label: '鏀惰揣琛屾斂鍖哄煙',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- status: {
- label: '鐘舵�侊紝0=寰呯‘璁わ紝1=宸茬‘璁わ紝2=浣滃簾',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "鐘舵�侊紝0=寰呯‘璁わ紝1=宸茬‘璁わ紝2=浣滃簾涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- feeName: {
- label: '璐圭敤鍚嶇О锛岀敓鎴愯垂鐢ㄦ椂鍥哄畾鐢熸垚涓�鏉¤繍璐�',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "璐圭敤鍚嶇О锛岀敓鎴愯垂鐢ㄦ椂鍥哄畾鐢熸垚涓�鏉¤繍璐逛笉鑳戒负绌�", trigger: "blur" }
- ], },
- initialFeeAmount: {
- label: '鍒濆璐圭敤閲戦锛岀瓑浜庡尮閰嶆姤浠锋柟妗堢殑杩愯垂鎶ヤ环锛屾柊澧炲悗涓嶅彲淇敼',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "鍒濆璐圭敤閲戦锛岀瓑浜庡尮閰嶆姤浠锋柟妗堢殑杩愯垂鎶ヤ环锛屾柊澧炲悗涓嶅彲淇敼涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- actualFeeAmount: {
- label: '瀹為檯璐圭敤閲戦锛岄粯璁ょ瓑浜庡垵濮嬭垂鐢紝鍙慨鏀�',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "瀹為檯璐圭敤閲戦锛岄粯璁ょ瓑浜庡垵濮嬭垂鐢紝鍙慨鏀逛笉鑳戒负绌�", trigger: "blur" }
- ], },
- feeVoucherUrl: {
- label: '璐圭敤鍑瘉锛岃秴閾炬帴',
- type: 'textarea', minRows: 3, maxRows: 5,
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- feeCreateTime: {
- label: '璐圭敤鍒涘缓鏃堕棿锛屾柊澧炴椂鑷姩濉啓',
- type: 'date', valueFormat: 'YYYY-MM-DD',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "璐圭敤鍒涘缓鏃堕棿锛屾柊澧炴椂鑷姩濉啓涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- createBy: {
- label: '鍒涘缓浜猴紝鏂板鏃惰嚜鍔ㄥ~鍐�',
- addDisplay :true,
- editDisplay : false,
- viewDisplay : false,
- hide : true,
- search : false,
- rules: [
- {
- required: true,
- message: "鍒涘缓浜猴紝鏂板鏃惰嚜鍔ㄥ~鍐欎笉鑳戒负绌�", trigger: "blur" }
- ], },
- createTime: {
- label: '鍒涘缓鏃堕棿锛屾柊澧炴椂鑷姩濉啓',
- type: 'date', valueFormat: 'YYYY-MM-DD',
- addDisplay :true,
- editDisplay : false,
- viewDisplay : false,
- hide : true,
- search : false,
- rules: [
- {
- required: true,
- message: "鍒涘缓鏃堕棿锛屾柊澧炴椂鑷姩濉啓涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- updateBy: {
- label: '鏇存柊浜猴紝鏂板鏃惰嚜鍔ㄥ~鍐欙紝琚慨鏀规椂鑷姩鏇存柊',
- addDisplay :true,
- editDisplay :true,
- viewDisplay : false,
- hide : true,
- search : false,
- rules: [
- {
- required: true,
- message: "鏇存柊浜猴紝鏂板鏃惰嚜鍔ㄥ~鍐欙紝琚慨鏀规椂鑷姩鏇存柊涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- updateTime: {
- label: '鏇存柊鏃堕棿锛屾柊澧炴椂鑷姩濉啓锛岃淇敼鏃惰嚜鍔ㄦ洿鏂�',
- type: 'date', valueFormat: 'YYYY-MM-DD',
- addDisplay :true,
- editDisplay :true,
- viewDisplay : false,
- hide : true,
- search : false,
- rules: [
- {
- required: true,
- message: "鏇存柊鏃堕棿锛屾柊澧炴椂鑷姩濉啓锛岃淇敼鏃惰嚜鍔ㄦ洿鏂颁笉鑳戒负绌�", trigger: "blur" }
- ], },
- remark: {
- label: '澶囨敞',
- type: 'textarea', minRows: 3, maxRows: 5,
- addDisplay :true,
- editDisplay :true,
- viewDisplay : false,
- hide :false,
- search : false,
- },
- recordStatus: {
- label: '璁板綍鐘舵�侊紝0=姝e父锛�1=浣滃簾',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- rules: [
- {
- required: true,
- message: "璁板綍鐘舵�侊紝0=姝e父锛�1=浣滃簾涓嶈兘涓虹┖", trigger: "blur" }
- ], },
- planId: {
- label: '',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- type: {
- label: '绫诲瀷',
- addDisplay :true,
- editDisplay :true,
- viewDisplay :true,
- hide :false,
- search :true,
- },
- }
- })
-
- const { tableData,pageF,rowSave,rowUpdate,rowDel,beforeOpen,searchChange,
- searchReset,selectionChange,onLoad,currentChange,sizeChange,handleDelete,handleExport,handleUpdate,refreshChange} = usePagePlus({
- form:form,
- option:option,
- queryParams:queryParams,
- idKey:'id',
- page:page.value,
- getListApi:listTmsFinance,
- getDetailApi:getTmsFinance,
- exportApi:exportTmsFinance,
- deleteApi:delTmsFinance,
- addApi:addTmsFinance,
- updateApi:updateTmsFinance,
- handleUpdateFunc:()=>{
- crudRef.value.rowEdit(selectionList.value[0]);
+ dispatchNo: {
+ label: '璋冨害鍗曞彿',minWidth: 150,
+ search: true,
},
- handleSelectionChangeFunc:(selection:any)=>{
- selectionList.value = selection;
- }
- })
+ planName: {
+ label: '搴斾粯鏂规鍚嶇О',minWidth: 150,
+ search: true,
+ },
+ customerName: {
+ label: '瀹㈡埛',minWidth: 150,
+ search: true,
+ },
+ projectName: {
+ label: '椤圭洰鍚嶇О',minWidth: 150,
+ search: true,
+ },
+ vehicleProviderName: {
+ label: '杞﹁締鏈嶅姟鍟�',minWidth: 150,
+ search: false,
+ },
+ requiredVehicleTypes: {
+ label: '瑕佹眰杞﹀瀷',minWidth: 150,
+ search: false,
+ display: true, type: 'select', dicUrl: '/system/dict/data/type/license_type', dataType: 'string',
+ },
+ actualVehicleType: {
+ label: '瀹為檯杞﹀瀷',minWidth: 150,
+ search: false,
+ display: true, type: 'select', dicUrl: '/system/dict/data/type/license_type', dataType: 'string',
+ },
+ mainDriverName: {
+ label: '涓婚┚椹跺憳',minWidth: 150,
+ search: false,
+ },
+
+ licensePlate: {
+ label: '杞︾墝鍙�',minWidth: 150,
+ search: false,
+ },
+
+ transportLine: {
+ label: '杩愯緭绾胯矾',minWidth: 150, overHidden: true,
+ search: false,
+ },
+
+ shipperName: {
+ label: '鍙戣揣浜哄悕绉�',minWidth: 150,
+ search: false,
+ },
+ shipperRegionLabel: {
+ label: '鍙戣揣琛屾斂鍖哄煙',minWidth: 150,
+ search: false,
+ },
+
+ receiverName: {
+ label: '鏀惰揣浜哄悕绉�',
+ search: false,minWidth: 150,
+ },
+ receiverRegionLabel: {
+ label: '鏀惰揣琛屾斂鍖哄煙',
+ search: false,minWidth: 150,
+ },
+ totalAmount: {
+ label: '鎬婚噾棰�',minWidth: 150,
+ search: false,
+ },
+ confirmBy: {
+ label: '璐圭敤纭浜�',minWidth: 150,
+ search: false,
+ },
+ confirmTime: {
+ label: '璐圭敤纭鏃堕棿',minWidth: 180,
+ search: false,
+ },
+ status: {
+ label: '鐘舵��',minWidth: 150,
+ search: false,fixed: 'right',
+ display: true, type: 'select', dicUrl: '/system/dict/data/type/finance_status', dataType: 'string',
+
+ },
+ updateBy: {
+ label: '鏇存柊浜�',
+ search: false,minWidth: 150,
+ },
+ updateTime: {
+ label: '鏇存柊鏃堕棿',
+ search: false,minWidth: 180,
+ },
+ }
+})
+
+
+const financeTableOption = ref({
+ menu: true,
+ addBtn: true,
+ header: true, selection: false,
+ viewBtn: false,
+ delBtn: false,labelWidth:150,
+ column: {
+ feeType: {
+ label: '璐圭敤鍚嶇О',minWidth: 150,
+ display: true,disabled: true,
+ value: "99",
+ type: 'select', dataType: 'string', dicUrl: '/system/dict/data/type/fee_type',
+ },
+ initialFeeAmount: {
+ label: '鍒濆鐧昏璐圭敤閲戦',minWidth: 150,
+ display: true,disabled: true,type: 'number',
+ },
+ actualFeeAmount: {
+ label: '瀹為檯璐圭敤閲戦',minWidth: 150, type: 'number',
+ display: true,
+ rules: [
+ {
+ required: true,
+ message: "瀹為檯璐圭敤閲戦涓嶈兘涓虹┖", trigger: "change"
+ }
+ ],
+ },
+ feeVoucherUrl: {
+ label: '璐圭敤鍑瘉',
+ display: true, hide:true,
+ accept:'string',dataType: 'string',
+ type: 'upload',
+ action: '/common/upload2',
+
+ },
+ feeCreateTime: {
+ label: '璐圭敤鍒涘缓鏃堕棿',minWidth: 180,
+ display: false,
+ },
+ updateBy: {
+ label: '鏇存柊浜�',minWidth: 150,
+ display: false,
+ },
+ updateTime: {
+ label: '鏇存柊鏃堕棿',minWidth: 180,
+ display: false,
+
+ },
+ status: {
+ label: '鐘舵��',minWidth: 150, fixed: 'right',
+ display: false,
+ type: 'select', dataType: 'string', dicUrl: '/system/dict/data/type/finance_detail_status',
+ },
+ }
+})
+
+
+const {
+ tableData,
+ pageF,
+ rowSave,
+ rowUpdate,
+ rowDel,
+ beforeOpen,
+ searchChange,
+ searchReset,
+ selectionChange,
+ onLoad,
+ currentChange,
+ sizeChange,
+ handleDelete,
+ handleExport,
+ handleUpdate,
+ refreshChange
+} = usePagePlus({
+ form: form,
+ option: option,
+ queryParams: queryParams,
+ idKey: 'id',
+ page: page.value,
+ getListApi: listTmsFinance,
+ getDetailApi: getTmsFinance,
+ exportApi: exportTmsFinance,
+ deleteApi: delTmsFinance,
+ addApi: addTmsFinance,
+ updateApi: updateTmsFinance,
+ handleUpdateFunc: () => {
+ crudRef.value.rowEdit(selectionList.value[0]);
+ },
+ handleSelectionChangeFunc: (selection: any) => {
+ selectionList.value = selection;
+ },
+ getBeginListFunc:()=>{
+ queryParams.value.type = 1;
+ }
+})
+
+const handleConfirm = (row: any) => {
+ ElMessageBox.confirm("鏄惁瀵硅皟搴﹀崟鍙�" + row.dispatchNo + "鐨勫簲浠樻柟妗堣繘琛岀‘璁� 锛�", '绯荤粺鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ return confirmFinance(row.id);
+ }).then(() => {
+ onLoad(page.value);
+ ElMessage({
+ message: "鎿嶄綔鎴愬姛锛�",
+ type: 'success'
+ })
+ });
+}
+const handleCancel = (row: any) => {
+ ElMessageBox.confirm("鏄惁瀵硅皟搴﹀崟鍙�" + row.dispatchNo + "鐨勫簲浠樻柟妗堣繘琛屼綔搴燂紵", '绯荤粺鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ return cancelFinance(row.id);
+ }).then(() => {
+ onLoad(page.value);
+ ElMessage({
+ message: "鎿嶄綔鎴愬姛锛�",
+ type: 'success'
+ })
+ });
+}
+
+const handleAddFinanceDetail = (row:any) => {
+
+ listTmsFinanceDetail({financeId:row.id,pageNum:1,pageSize: 9999}).then(res=>{
+ boxTableData.value = res.rows || [];
+ pageF.title = '璐圭敤鏄庣粏';
+ pageF.open = true;
+ form.value = row;
+ })
+}
+
+const rowDetailUpdate = (row:any,index:any,done:any, loading:any) => {
+ updateTmsFinanceDetail( row).then(res=>{
+ ElMessage({
+ message: "淇敼鎴愬姛锛�",
+ type: 'success'
+ })
+ handleAddFinanceDetail(res.data);
+ onLoad(page.value);
+ done();
+ }).catch(()=>{
+ loading()
+ })
+}
+const rowDetailSave = (row:any, done:any, loading:any) => {
+ row.financeId = form.value.id;
+ addTmsFinanceDetail({...row,dispatchOrderId:form.value.dispatchId,
+ type: form.value.type,financeType:form.value.type
+ }).then(res=>{
+ ElMessage({
+ message: "鏂板鎴愬姛锛�",
+ type: 'success'
+ })
+ handleAddFinanceDetail(res.data);
+ onLoad(page.value);
+ done();
+ }).catch(()=>{
+ loading()
+ })
+}
+
+const handleCancelDetail = (row: any) => {
+ ElMessageBox.confirm("鏄惁浣滃簾鎺� " + row.$feeType + "纭畾 锛�", '绯荤粺鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ return cancelFinanceDetail(row.id);
+ }).then(() => {
+ handleAddFinanceDetail(form.value);
+ onLoad(page.value);
+ ElMessage({
+ message: "鎿嶄綔鎴愬姛锛�",
+ type: 'success'
+ })
+ });
+}
</script>
--
Gitblit v1.8.0