fix(wayBill): 修改打印失败处理逻辑并显示错误提示

feat(CoilSelector): 添加镀层质量列并优化钢卷选择逻辑

1. 在wayBill组件中,当打印失败时不再尝试下载PDF,而是直接显示错误提示
2. 在CoilSelector组件中添加镀层质量列
3. 优化钢卷选择逻辑,增加对未判级钢卷的限制条件
This commit is contained in:
2026-04-24 14:31:20 +08:00
parent a1b2a3b6bb
commit 7803c38c27
3 changed files with 35 additions and 17 deletions

View File

@@ -95,6 +95,7 @@
<el-table-column v-if="orderBy" label="品质" prop="qualityStatus"></el-table-column> <el-table-column v-if="orderBy" label="品质" prop="qualityStatus"></el-table-column>
<el-table-column v-if="orderBy" label="切边" prop="trimmingRequirement"></el-table-column> <el-table-column v-if="orderBy" label="切边" prop="trimmingRequirement"></el-table-column>
<el-table-column v-if="orderBy" label="包装" prop="packagingRequirement"></el-table-column> <el-table-column v-if="orderBy" label="包装" prop="packagingRequirement"></el-table-column>
<el-table-column v-if="orderBy" label="镀层质量" prop="zincLayer"></el-table-column>
</el-table> </el-table>
<div v-else> <div v-else>
@@ -113,6 +114,7 @@
<el-table-column v-if="orderBy" label="品质" prop="qualityStatus"></el-table-column> <el-table-column v-if="orderBy" label="品质" prop="qualityStatus"></el-table-column>
<el-table-column v-if="orderBy" label="切边" prop="trimmingRequirement"></el-table-column> <el-table-column v-if="orderBy" label="切边" prop="trimmingRequirement"></el-table-column>
<el-table-column v-if="orderBy" label="包装" prop="packagingRequirement"></el-table-column> <el-table-column v-if="orderBy" label="包装" prop="packagingRequirement"></el-table-column>
<el-table-column v-if="orderBy" label="镀层质量" prop="zincLayer"></el-table-column>
</el-table> </el-table>
</div> </div>
@@ -121,7 +123,7 @@
<span> <span>
总净重{{ coilTrimStatistics.total_net_weight || 0 }}t 总净重{{ coilTrimStatistics.total_net_weight || 0 }}t
</span> </span>
<pagination v-if="!rangeMode" v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" <pagination v-if="!rangeMode" v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" /> :limit.sync="queryParams.pageSize" @pagination="getList" />
</div> </div>
@@ -147,6 +149,7 @@
<el-table-column v-if="orderBy" label="品质" prop="qualityStatus"></el-table-column> <el-table-column v-if="orderBy" label="品质" prop="qualityStatus"></el-table-column>
<el-table-column v-if="orderBy" label="切边" prop="trimmingRequirement"></el-table-column> <el-table-column v-if="orderBy" label="切边" prop="trimmingRequirement"></el-table-column>
<el-table-column v-if="orderBy" label="包装" prop="packagingRequirement"></el-table-column> <el-table-column v-if="orderBy" label="包装" prop="packagingRequirement"></el-table-column>
<el-table-column v-if="orderBy" label="镀层质量" prop="zincLayer"></el-table-column>
<el-table-column label="操作" width="50"> <el-table-column label="操作" width="50">
<template slot-scope="scope"> <template slot-scope="scope">
@@ -569,11 +572,24 @@ export default {
this.$message.warning('您没有权限选择此钢卷'); this.$message.warning('您没有权限选择此钢卷');
return; // 终止后续逻辑 return; // 终止后续逻辑
} }
const disabledOList = ['O', 'C+', 'C', 'C-', 'D+', 'D', 'D-'] if (this.disableO) {
if (this.disableO && disabledOList.includes(row.qualityStatus)) { // 并且钢卷的warehouseId不是1988150210872930306
this.$message.warning(`${row.qualityStatus}卷不能选择`); // 1988150380649967617
return; // 1988150800092950529
// 1988151027466170370其中之一才不能选择
const warehouseIds = ['1988150210872930306', '1988150380649967617', '1988150800092950529', '1988151027466170370'];
// 如果没有判级就不能选择,除非是那分剪四个库区
if (!row.qualityStatus && !warehouseIds.includes(row.warehouseId)) {
this.$message.warning('未判级的钢卷不能选择');
return;
}
const disabledOList = ['O', 'C+', 'C', 'C-', 'D+', 'D', 'D-']
if (disabledOList.includes(row.qualityStatus)) {
this.$message.warning(`${row.qualityStatus}卷不能选择`);
return;
}
} }
this.handleSelect(row); this.handleSelect(row);
}, },

View File

@@ -478,12 +478,13 @@ export default {
const win = window.open(url, '_blank'); const win = window.open(url, '_blank');
if (!win) { if (!win) {
const a = document.createElement('a'); this.$message.error('打印失败,请检查浏览器设置');
a.href = url; // const a = document.createElement('a');
a.download = `发货单_${this.waybill.waybillName || this.waybill.waybillNo || new Date().getTime()}.pdf`; // a.href = url;
document.body.appendChild(a); // a.download = `发货单_${this.waybill.waybillName || this.waybill.waybillNo || new Date().getTime()}.pdf`;
a.click(); // document.body.appendChild(a);
document.body.removeChild(a); // a.click();
// document.body.removeChild(a);
} }
}, },
async exportExcelByXLSX() { async exportExcelByXLSX() {

View File

@@ -478,12 +478,13 @@ export default {
const win = window.open(url, '_blank'); const win = window.open(url, '_blank');
if (!win) { if (!win) {
const a = document.createElement('a'); this.$message.error('打印失败,请检查浏览器设置');
a.href = url; // const a = document.createElement('a');
a.download = `发货单_${this.waybill.waybillName || this.waybill.waybillNo || new Date().getTime()}.pdf`; // a.href = url;
document.body.appendChild(a); // a.download = `发货单_${this.waybill.waybillName || this.waybill.waybillNo || new Date().getTime()}.pdf`;
a.click(); // document.body.appendChild(a);
document.body.removeChild(a); // a.click();
// document.body.removeChild(a);
} }
}, },
async exportExcelByXLSX() { async exportExcelByXLSX() {