增加导入附件的查看记录
This commit is contained in:
@@ -95,6 +95,15 @@
|
||||
@click="openChargeWeightImport"
|
||||
>批量修改计费重</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button
|
||||
type="info"
|
||||
plain
|
||||
icon="Document"
|
||||
v-hasPermi="['price:billing:chargeWeightEdit']"
|
||||
@click="openChargeWeightImportAttach"
|
||||
>导入记录</el-button>
|
||||
</el-col>
|
||||
</template>
|
||||
<template #col-action="{ row }">
|
||||
<el-button link type="primary" icon="View" @click="handleView(row)">查看</el-button>
|
||||
@@ -151,6 +160,7 @@
|
||||
<div class="cw-fill-hint">勾选后下载模板会写入筛选结果的订单号、客户代码;人工修改计费重列留空待填</div>
|
||||
</template>
|
||||
</excel-import-dialog>
|
||||
<charge-weight-import-attach-drawer ref="cwImportAttachRef" />
|
||||
<el-dialog
|
||||
v-model="cwImportProgressVisible"
|
||||
title="正在导入修改计费重"
|
||||
@@ -181,6 +191,7 @@ import BillDetail from './components/BillDetail.vue'
|
||||
import BatchAddIncomeFeeDialog from './components/BatchAddIncomeFeeDialog.vue'
|
||||
import EditChargeWeightDialog from './components/EditChargeWeightDialog.vue'
|
||||
import ExcelImportDialog from '@/components/ExcelImportDialog'
|
||||
import ChargeWeightImportAttachDrawer from './components/ChargeWeightImportAttachDrawer.vue'
|
||||
|
||||
// 订单号下拉远程搜索:返回匹配的订单号列表(最多 20 条)
|
||||
function searchOrderNoOptions(keyword) {
|
||||
@@ -218,6 +229,7 @@ const refundingKey = ref(null)
|
||||
const editCwOpen = ref(false)
|
||||
const editCwRow = ref(null)
|
||||
const chargeWeightImportRef = ref()
|
||||
const cwImportAttachRef = ref()
|
||||
const chargeWeightImportDesc = [
|
||||
'模板列:订单号、客户、人工修改计费重(kg)',
|
||||
'客户可填名称或代码,须与订单客户一致',
|
||||
@@ -440,6 +452,10 @@ async function downloadChargeWeightImportTemplate() {
|
||||
await downloadChargeWeightTemplate(payload)
|
||||
}
|
||||
|
||||
function openChargeWeightImportAttach() {
|
||||
cwImportAttachRef.value?.open?.()
|
||||
}
|
||||
|
||||
function openChargeWeightImport() {
|
||||
cwFillByFilter.value = false
|
||||
chargeWeightImportRef.value?.open?.()
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
<template>
|
||||
<el-drawer v-model="visible" size="860px" :title="drawerTitle" append-to-body destroy-on-close>
|
||||
<basic-table
|
||||
v-if="visible"
|
||||
:columns="columns"
|
||||
:search-columns="searchColumns"
|
||||
:query="queryList"
|
||||
row-key="attachmentId"
|
||||
:page-size="10"
|
||||
:selection="false"
|
||||
:show-add="false"
|
||||
>
|
||||
<template #col-fileSize="{ row }">
|
||||
{{ formatSize(row.fileSize) }}
|
||||
</template>
|
||||
<template #col-action="{ row }">
|
||||
<el-button link type="primary" :disabled="!row.filePath" @click="handleDownload(row)">下载</el-button>
|
||||
</template>
|
||||
</basic-table>
|
||||
</el-drawer>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { listChargeWeightImportAttachments } from '@/api/price/billing'
|
||||
|
||||
const { proxy } = getCurrentInstance()
|
||||
|
||||
const visible = ref(false)
|
||||
const drawerTitle = '批量修改计费重导入记录'
|
||||
|
||||
const searchColumns = [
|
||||
{ label: '文件名', prop: 'fileName', component: 'input', placeholder: '文件名', width: '200px' },
|
||||
{ label: '上传人', prop: 'createBy', component: 'input', placeholder: '上传人', width: '140px' }
|
||||
]
|
||||
|
||||
const columns = [
|
||||
{ label: '文件名称', prop: 'fileName', minWidth: 220, showOverflowTooltip: true },
|
||||
{ label: '任务ID', prop: 'bizId', minWidth: 180, showOverflowTooltip: true },
|
||||
{ label: '大小', prop: 'fileSize', width: 100, align: 'right', slot: 'fileSize' },
|
||||
{ label: '上传人', prop: 'createBy', width: 110, align: 'center', showOverflowTooltip: true },
|
||||
{ label: '上传时间', prop: 'createTime', width: 170, align: 'center' },
|
||||
{ label: '操作', prop: 'action', width: 90, align: 'center', fixed: 'right', slot: 'action', showInToolbar: false }
|
||||
]
|
||||
|
||||
function queryList(params) {
|
||||
return listChargeWeightImportAttachments(params)
|
||||
}
|
||||
|
||||
function formatSize(bytes) {
|
||||
const n = Number(bytes)
|
||||
if (!n || n < 0) return '-'
|
||||
if (n < 1024) return n + ' B'
|
||||
if (n < 1024 * 1024) return (n / 1024).toFixed(1) + ' KB'
|
||||
return (n / (1024 * 1024)).toFixed(2) + ' MB'
|
||||
}
|
||||
|
||||
function handleDownload(row) {
|
||||
if (!row || !row.filePath) {
|
||||
proxy.$modal.msgWarning('文件路径不存在')
|
||||
return
|
||||
}
|
||||
proxy.$download.resource(row.filePath)
|
||||
}
|
||||
|
||||
function open() {
|
||||
visible.value = true
|
||||
}
|
||||
|
||||
defineExpose({ open })
|
||||
</script>
|
||||
Reference in New Issue
Block a user