From 5ce0cecd476a5c034f7ae12309a6c65078c3f44e Mon Sep 17 00:00:00 2001
From: wujianwei <wjw@11.com>
Date: 星期三, 17 十二月 2025 17:21:40 +0800
Subject: [PATCH] 新增应收账单管理和明细
---
ui/admin-ui3/src/views/cwgl/dispatchOrder/index.vue | 174 +++++++++++++++++++++++++++++++++++----------------------
1 files changed, 106 insertions(+), 68 deletions(-)
diff --git a/ui/admin-ui3/src/views/cwgl/dispatchOrder/index.vue b/ui/admin-ui3/src/views/cwgl/dispatchOrder/index.vue
index bf5f280..2cc278c 100644
--- a/ui/admin-ui3/src/views/cwgl/dispatchOrder/index.vue
+++ b/ui/admin-ui3/src/views/cwgl/dispatchOrder/index.vue
@@ -3,14 +3,14 @@
<avue-crud :option="option" :table-loading="pageF.loading" :data="tableData" :page="page"
:permission="permissionList" :before-open="beforeOpen" v-model="form" ref="crudRef" @row-update="rowUpdate"
@row-save="rowSave" @refresh-change="refreshChange" @row-del="rowDel" @search-change="searchChange"
- @search-reset="searchReset" @selection-change="selectionChange" @current-change="currentChange"
+ @search-reset="searchReset" @selection-change="selectionChange" @current-change="currentChange" v-model:search="queryParams"
@size-change="sizeChange" @on-load="onLoad">
<template #menu-left>
<el-button type="warning" plain icon="Download" @click="handleExport"
v-hasPermi="['cwgl:dispatchOrder:export']">瀵煎嚭
</el-button>
- <el-button type="success" plain icon="Download" @click="handleExport"
+ <el-button type="success" plain icon="Download" @click="handleExport2"
v-hasPermi="['cwgl:dispatchOrder:export']">鐢熸垚鍙拌处鎶ヨ〃
</el-button>
</template>
@@ -39,6 +39,11 @@
class="attachment-image" />
</template>
</avue-crud>
+ <template #footer>
+ <div class="dialog-footer">
+ <el-button type="primary" v-if="itemTableData2.length>0" @click="downPZ">涓嬭浇闄勪欢</el-button>
+ </div>
+ </template>
</el-dialog>
</basicContainer>
@@ -52,13 +57,15 @@
exportDispatchOrder,
getDispatchOrder,
listDispatchOrder,
- updateDispatchOrder, cwglDispatchOrderItem, cwglDispatchOrderattAchment
+ updateDispatchOrder, cwglDispatchOrderItem, cwglDispatchOrderattAchment, exportDispatchOrder2, downloadFJ
} from "@/api/cwgl/dispatchOrder";
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 {blobValidate} from "@/utils/ruoyi";
+import {saveAs} from "file-saver";
const { proxy } = useCurrentInstance();
const crudRef = ref();
@@ -104,6 +111,8 @@
delBtn: false,
viewBtn: false,
selection: false,
+ searchSpan: 5,
+ searchLabelWidth: 100,
column: {
dispatchNo: {
fixed: 'left',
@@ -121,14 +130,17 @@
productName: {
label: '鏈嶅姟浜у搧鍚嶇О', width: 120, showOverflowTooltip: true
},
+ customerName: {
+ label: '瀹㈡埛鍚嶇О', search: true, minWidth: 220, showOverflowTooltip: true
+ },
carrierName: {
- label: '鎵胯繍鍟�', search: true, width: 200, showOverflowTooltip: true
+ label: '鎵胯繍鍟�', search: true, minWidth: 220, showOverflowTooltip: true
},
departureLocationName: {
- label: '鍑哄彂鍦板悕绉�', width: 210, showOverflowTooltip: true
+ label: '鍑哄彂鍦板悕绉�', minWidth: 220, showOverflowTooltip: true
},
arrivalLocationName: {
- label: '鐩殑鍦板悕绉�', width: 200, showOverflowTooltip: true
+ label: '鐩殑鍦板悕绉�', minWidth: 220, showOverflowTooltip: true
},
licensePlateNumber: {
label: '杞︾墝', search: true, width: 120,
@@ -136,63 +148,63 @@
vehiclePlateId: {
label: '杞︽澘鍙�', width: 120,
},
- mainDriverName: {
- label: '涓婚┚椹跺憳', width: 120,
- },
- assistantDriverName: {
- label: '鍓┚椹跺憳', width: 120,
- },
- pointNum: {
- label: '鎻愰�佽揣鐐规暟', width: 120,
- },
- quantity: {
- label: '浠舵暟', width: 120,
- },
- actualDepartureTime: {
- label: '瀹為檯鍑哄彂鏃堕棿', width: 180,
- },
- actualDepartureTimeRange: {
- label: '瀹為檯鍑哄彂鏃堕棿', display: false, search: true, searchRange: true, type: 'date',
- format: 'YYYY-MM-DD', hide: true, searchSpan: 6, searchLabelWidth: 110,
- valueFormat: 'YYYY-MM-DD',
- },
- requiredArrivalTime: {
- label: '瑕佹眰鍒拌揪鏃堕棿', width: 180,
- },
- requiredArrivalTimeRange: {
- label: '瑕佹眰鍒拌揪鏃堕棿', display: false, search: true, searchRange: true, type: 'date',
- format: 'YYYY-MM-DD', hide: true, searchSpan: 6, searchLabelWidth: 110,
- valueFormat: 'YYYY-MM-DD',
- },
- actualArrivalTime: {
- label: '瀹為檯鍒拌揪鏃堕棿', width: 180,
- },
- actualArrivalTimeRange: {
- label: '瑕佹眰鍒拌揪鏃堕棿', display: false, search: true, searchRange: true, type: 'date',
- format: 'YYYY-MM-DD', hide: true, searchSpan: 6, searchLabelWidth: 110,
- valueFormat: 'YYYY-MM-DD',
- },
- beReturn: {
- label: '鏄惁鍥炵▼', dataType: 'string', width: 100,
- type: 'select', dicUrl: '/system/dict/data/type/dispatch_order_status',
- },
- dispatchQuantity: {
- label: '瀹炲彂浠舵暟', width: 100,
- },
- dispatchWeight: {
- label: '瀹炲彂閲嶉噺', width: 100,
- },
- dispatchVolume: {
- label: '瀹炲彂浣撶Н(绔嬫柟锛�', width: 160,
- },
- status: {
- label: '鐘舵��', search: true, dataType: 'string', width: 100,
- type: 'select', dicUrl: '/system/dict/data/type/dispatch_order_status',
- },
- remark: {
- label: '澶囨敞', width: 120,
- type: 'textarea', minRows: 3, maxRows: 5,
- },
+ // mainDriverName: {
+ // label: '涓婚┚椹跺憳', width: 120,
+ // },
+ // assistantDriverName: {
+ // label: '鍓┚椹跺憳', width: 120,
+ // },
+ // pointNum: {
+ // label: '鎻愰�佽揣鐐规暟', width: 120,
+ // },
+ // quantity: {
+ // label: '浠舵暟', width: 120,
+ // },
+ // actualDepartureTime: {
+ // label: '瀹為檯鍑哄彂鏃堕棿', width: 180,
+ // },
+ // actualDepartureTimeRange: {
+ // label: '瀹為檯鍑哄彂鏃堕棿', display: false, search: true, searchRange: true, type: 'date',
+ // format: 'YYYY-MM-DD', hide: true, searchSpan: 5, searchLabelWidth: 120,
+ // valueFormat: 'YYYY-MM-DD',
+ // },
+ // requiredArrivalTime: {
+ // label: '瑕佹眰鍒拌揪鏃堕棿', width: 180,
+ // },
+ // requiredArrivalTimeRange: {
+ // label: '瑕佹眰鍒拌揪鏃堕棿', display: false, search: true, searchRange: true, type: 'date',
+ // format: 'YYYY-MM-DD', hide: true, searchSpan: 5, searchLabelWidth: 120,
+ // valueFormat: 'YYYY-MM-DD',
+ // },
+ // actualArrivalTime: {
+ // label: '瀹為檯鍒拌揪鏃堕棿', width: 180,
+ // },
+ // actualArrivalTimeRange: {
+ // label: '瑕佹眰鍒拌揪鏃堕棿', display: false, search: true, searchRange: true, type: 'date',
+ // format: 'YYYY-MM-DD', hide: true, searchSpan: 5, searchLabelWidth: 120,
+ // valueFormat: 'YYYY-MM-DD',
+ // },
+ // beReturn: {
+ // label: '鏄惁鍥炵▼', dataType: 'string', width: 100,
+ // type: 'select', dicUrl: '/system/dict/data/type/dispatch_order_status',
+ // },
+ // dispatchQuantity: {
+ // label: '瀹炲彂浠舵暟', width: 100,
+ // },
+ // dispatchWeight: {
+ // label: '瀹炲彂閲嶉噺', width: 100,
+ // },
+ // dispatchVolume: {
+ // label: '瀹炲彂浣撶Н(绔嬫柟锛�', width: 160,
+ // },
+ // status: {
+ // label: '鐘舵��', search: true, dataType: 'string', width: 100,
+ // type: 'select', dicUrl: '/system/dict/data/type/dispatch_order_status',
+ // },
+ // remark: {
+ // label: '澶囨敞', width: 120,
+ // type: 'textarea', minRows: 3, maxRows: 5,
+ // },
// createBy: {
// label: '鍒涘缓浜�',
// },
@@ -243,11 +255,10 @@
handleUpdateFunc: () => {
crudRef.value.rowEdit(selectionList.value[0]);
},
- getBeginListFunc(params: any = {}) {
- params = proxy.addDateRangeNew(params, params?.actualDepartureTimeRange, 'actualDepartureTime') || {};
- params = proxy.addDateRangeNew(params, params?.requiredArrivalTimeRange, 'requiredArrivalTime') || {};
- params = proxy.addDateRangeNew(params, params?.actualArrivalTimeRange, 'actualArrivalTime') || {};
- return params;
+ getBeginListFunc() {
+ queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.actualDepartureTimeRange, 'actualDepartureTime') || {};
+ queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.requiredArrivalTimeRange, 'requiredArrivalTime') || {};
+ queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.actualArrivalTimeRange, 'actualArrivalTime') || {};
},
handleSelectionChangeFunc: (selection: any) => {
selectionList.value = selection;
@@ -279,6 +290,7 @@
type: 'select',
dicUrl: '/system/dict/data/type/sys_whether_type',
},
+
}
})
@@ -370,6 +382,23 @@
const attachmentChange = () => {
// loadAttachmentData();
}
+const handleExport2 =()=>{
+ queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.actualDepartureTimeRange, 'actualDepartureTime') || {};
+ queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.requiredArrivalTimeRange, 'requiredArrivalTime') || {};
+ queryParams.value = proxy.addDateRangeNew(queryParams.value, queryParams.value?.actualArrivalTimeRange, 'actualArrivalTime') || {};
+ exportDispatchOrder2(queryParams.value);
+}
+
+const downPZ =()=>{
+ downloadFJ({no:pageAttachment.value.no}).then(res=>{
+ console.log(res)
+ const blob = new Blob([res])
+ console.log(blob)
+ saveAs(blob, decodeURI(pageAttachment.value.no+"闄勪欢.pdf"))
+
+ })
+
+}
</script>
<style lang="scss" scoped>
@@ -384,4 +413,13 @@
z-index: 9999 !important;
}
}
+
+:deep(.avue-crud__table) {
+ overflow-y: auto;
+}
+
+:deep(.el-scrollbar__bar.is-horizontal) {
+ pointer-events: auto;
+}
+
</style>
\ No newline at end of file
--
Gitblit v1.8.0