打印标签
This commit is contained in:
@@ -76,7 +76,8 @@
|
||||
<el-button class="tool-box" color="#00aa00" icon="Upload" @click="handleExport"> 工单导出 </el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button class="tool-box" color="#E6A23C" icon="Printer" @click="handlePrint"> 工单打印 </el-button>
|
||||
<el-button class="tool-box" color="#E65100" icon="Printer" @click="handlePrint"> 打印所勾选标签
|
||||
</el-button>
|
||||
</el-col>
|
||||
<!-- <el-col :span="1.5">
|
||||
<el-button class="tool-box" color="#55557f" v-hasPermi="['productManagement:proworkorder:list']" icon="Printer" @click="handlePrint"> 打印 </el-button>
|
||||
@@ -105,8 +106,11 @@
|
||||
</el-row> -->
|
||||
|
||||
<el-table :data="dataList" v-loading="loading" ref="table" border stripe size="small"
|
||||
header-row-class-name="table-header" :cell-class-name="tableCellClassName" @sort-change="sortChange">
|
||||
@selection-change="handleSelectionChange" header-row-class-name="table-header"
|
||||
:cell-class-name="tableCellClassName" @sort-change="sortChange">
|
||||
<el-table-column type="selection" align="center" width="55" />
|
||||
<el-table-column type="index" width="50" align="center" />
|
||||
|
||||
<!-- <el-table-column prop="sort" label="编号" align="center" /> -->
|
||||
<el-table-column prop="workorder" label="工单号" align="center" width="160">
|
||||
<template #default="scope">
|
||||
@@ -1163,15 +1167,18 @@ const printObj = {
|
||||
}
|
||||
function handlePrint() {
|
||||
PrintDialogShow.value = true
|
||||
printList.value = getPrintList()
|
||||
printList.value = allList.value
|
||||
exportWorkorderPDF(getPrintList())
|
||||
|
||||
}
|
||||
const selectList = ref([])
|
||||
function handleSelectionChange(val) {
|
||||
selectList.value = val
|
||||
}
|
||||
function getPrintList() {
|
||||
const _list = allList.value.map(item => {
|
||||
const _list = selectList.value.map(item => {
|
||||
return item.workorder
|
||||
})
|
||||
console.log(_list);
|
||||
return _list
|
||||
// const groupedData = _list.reduce((acc, item) => {
|
||||
// const key = item.groupCode
|
||||
@@ -1183,31 +1190,18 @@ function getPrintList() {
|
||||
// }, {})
|
||||
// return Object.values(groupedData)
|
||||
}
|
||||
import axios from 'axios';
|
||||
|
||||
// 打印pdf
|
||||
async function exportWorkorderPDF(workorderArray) {
|
||||
const url = '/mes/productManagement/ProWorkorder/print'
|
||||
try {
|
||||
const response = await axios.get(url, {
|
||||
params: {
|
||||
workorderArray
|
||||
let url = '/mes/productManagement/ProWorkorder/print?'
|
||||
if (workorderArray.length === 0) {
|
||||
proxy.$modal.msgError('无勾选工单打印')
|
||||
return
|
||||
}
|
||||
});
|
||||
|
||||
// 下面是处理后端返回的数据
|
||||
const filename = '工单打印';
|
||||
const fileBlob = new Blob([response.data], { type: 'application/pdf' });
|
||||
console.log(fileBlob);
|
||||
// 创建一个隐藏的 a 标签来触发 PDF 下载
|
||||
const link = document.createElement('a');
|
||||
link.href = URL.createObjectURL(fileBlob);
|
||||
link.download = filename;
|
||||
link.click();
|
||||
URL.revokeObjectURL(link.href); // 清除对象 URL
|
||||
} catch (error) {
|
||||
console.error('打印异常:', error);
|
||||
for (let index = 0; index < workorderArray.length; index++) {
|
||||
url += 'workorderArray=' + workorderArray[index] + '&'
|
||||
}
|
||||
proxy.download(url, '工单标签打印模板')
|
||||
return
|
||||
}
|
||||
// 获取打印时间
|
||||
function getPrintTime() {
|
||||
|
||||
Reference in New Issue
Block a user