Merge remote-tracking branch 'origin/0.8.X' into 0.8.X

This commit is contained in:
2026-04-24 16:22:30 +08:00
6 changed files with 283 additions and 53 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="trimmingRequirement"></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>
<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="trimmingRequirement"></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>
</div>
@@ -121,7 +123,7 @@
<span>
总净重{{ coilTrimStatistics.total_net_weight || 0 }}t
</span>
<pagination v-if="!rangeMode" v-show="total > 0" :total="total" :page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize" @pagination="getList" />
</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="trimmingRequirement"></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">
<template slot-scope="scope">
@@ -569,11 +572,24 @@ export default {
this.$message.warning('您没有权限选择此钢卷');
return; // 终止后续逻辑
}
const disabledOList = ['O', 'C+', 'C', 'C-', 'D+', 'D', 'D-']
if (this.disableO && disabledOList.includes(row.qualityStatus)) {
this.$message.warning(`${row.qualityStatus}卷不能选择`);
return;
if (this.disableO) {
// 并且钢卷的warehouseId不是1988150210872930306
// 1988150380649967617
// 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);
},

View File

@@ -45,12 +45,49 @@
</el-form>
<!-- 物料卡片列表 -->
<div v-loading="materialLoading" class="card-grid-container">
<div v-if="materialCoilList.length === 0" class="empty-state">
<div v-loading="materialLoading">
<!-- <div v-if="materialCoilList.length === 0" class="empty-state">
<i class="el-icon-box"></i>
<p>暂无待领物料</p>
</div>
<coil-card v-for="(item, index) in materialCoilList" :key="item.coilId || index" :coil="item"
</div> -->
<KLPTable :data="materialCoilList" height="calc(100vh - 340px)" :floatLayer="true" :floatLayerConfig="floatLayerConfig">
<el-table-column prop="currentCoilNo" label="当前钢卷号">
<template slot-scope="scope">
<current-coil-no :current-coil-no="scope.row.currentCoilNo" />
</template>
</el-table-column>
<el-table-column prop="enterCoilNo" label="入场钢卷号" show-overflow-tooltip></el-table-column>
<el-table-column prop="supplierCoilNo" label="厂家卷号" show-overflow-tooltip></el-table-column>
<el-table-column prop="warehouseName" label="逻辑库区" show-overflow-tooltip></el-table-column>
<el-table-column prop="specification" label="规格" width="100" show-overflow-tooltip></el-table-column>
<el-table-column prop="netWeight" label="净重" width="100" show-overflow-tooltip></el-table-column>
<el-table-column prop="action" label="操作" width="400">
<template slot-scope="scope">
<el-button v-loading="buttonLoading" style="margin-left: 0px; padding: 4px !important;" type="default"
size="mini" icon="el-icon-view" @click="handlePreviewLabel(scope.row)" title="预览标签">预览</el-button>
<el-button v-loading="buttonLoading" style="margin-left: 0px; padding: 4px !important;" type="default"
size="mini" icon="el-icon-printer" @click="handlePrintLabel(scope.row)" title="打印标签">打印</el-button>
<el-button type="warning" icon="el-icon-time" size="mini" @click="handleTrace(scope.row)"
:loading="scope.row.picking" class="action-btn">追溯</el-button>
<el-button type="primary" icon="el-icon-check" size="mini" @click="handleCorrectMaterial(scope.row)"
:loading="scope.row.picking" class="action-btn">修正</el-button>
<el-button type="danger" icon="el-icon-delete" size="mini" @click="hanleDeleteMaterial(scope.row)"
:loading="scope.row.picking" class="action-btn">删除</el-button>
<el-button v-if="scope.row.dataType == 1 && scope.row.status == 0"
type="success" icon="el-icon-refresh"
size="mini" @click="handleRestoreMaterial(scope.row)" :loading="scope.row.cancelling"
class="action-btn">回滚</el-button>
<el-button v-if="scope.row.dataType == 10 && scope.row.status == 0"
type="success" icon="el-icon-refresh"
size="mini" @click="handleForceInMaterial(scope.row)" :loading="scope.row.cancelling"
class="action-btn">强制入库</el-button>
</template>
</el-table-column>
</KLPTable>
<!-- <coil-card v-for="(item, index) in materialCoilList" :key="item.coilId || index" :coil="item"
:card-style="getBorderStyle(item)">
<template slot="header">
<el-tag type="info" size="small" class="coil-no-tag" :style="getBorderStyle(item)">{{
@@ -98,7 +135,7 @@
<el-button type="danger" icon="el-icon-delete" size="mini" @click="hanleDeleteMaterial(item)"
:loading="item.picking" class="action-btn">删除</el-button>
</template>
</coil-card>
</coil-card> -->
</div>
<!-- 分页 -->
@@ -294,7 +331,7 @@ export default {
name: 'DoPage',
dicts: ['action_type', 'coil_abnormal_code', 'coil_abnormal_position', 'coil_abnormal_degree', 'coil_quality_status', 'coil_business_purpose'],
props: {
label: {
label: {
type: String,
default: () => '酸连轧工序'
},
@@ -448,6 +485,40 @@ export default {
correctVisible: false,
buttonLoading: false,
userList: [],
floatLayerConfig: {
columns: [
{ label: '入场钢卷号', prop: 'enterCoilNo' },
{ label: '当前钢卷号', prop: 'currentCoilNo' },
{ label: '厂家卷号', prop: 'supplierCoilNo' },
{ label: '逻辑库位', prop: 'warehouseName' },
{ label: '实际库位', prop: 'actualWarehouseName' },
{ label: '物料类型', prop: 'materialType' },
{ label: '班组', prop: 'team' },
{ label: '净重', prop: 'netWeight' },
{ label: '毛重', prop: 'grossWeight' },
{ label: '备注', prop: 'remark' },
{ label: '创建人', prop: 'createBy' },
{ label: '创建时间', prop: 'createTime' },
{ label: '更新人', prop: 'updateBy' },
{ label: '更新时间', prop: 'updateTime' },
{ label: '质量状态', prop: 'qualityStatus' },
{ label: '原料材质', prop: 'packingStatus' },
{ label: '切边要求', prop: 'edgeRequirement' },
{ label: '包装要求', prop: 'packagingRequirement' },
{ label: '物料名称', prop: 'itemName' },
{ label: '材质', prop: 'material' },
{ label: '规格', prop: 'specification' },
{ label: '镀层质量', prop: 'zincLayer' },
{ label: '厂家', prop: 'manufacturer' },
{ label: '调制度', prop: 'temperGrade' },
{ label: '镀层种类', prop: 'coatingType' },
{ label: '实测长度(m)', prop: 'actualLength' },
{ label: '实测宽度(m)', prop: 'actualWidth' },
{ label: '实测厚度(m)', prop: 'actualThickness' },
{ label: '钢卷表面处理', prop: 'coilSurfaceTreatment' },
],
title: '详细信息'
},
}
},
computed: {

View File

@@ -36,8 +36,46 @@
</div>
<!-- 钢卷信息卡片 -->
<div v-loading="materialLoading" class="coil-info-container">
<div v-if="materialCoilList.length === 0" class="empty-state">
<div v-loading="materialLoading">
<KLPTable :data="materialCoilList" height="calc(100vh - 340px)" :floatLayer="true"
:floatLayerConfig="floatLayerConfig">
<el-table-column prop="currentCoilNo" label="当前钢卷号">
<template slot-scope="scope">
<current-coil-no :current-coil-no="scope.row.currentCoilNo" />
</template>
</el-table-column>
<el-table-column prop="enterCoilNo" label="入场钢卷号" show-overflow-tooltip></el-table-column>
<el-table-column prop="supplierCoilNo" label="厂家卷号" show-overflow-tooltip></el-table-column>
<el-table-column prop="warehouseName" label="逻辑库区" show-overflow-tooltip></el-table-column>
<el-table-column prop="specification" label="规格" width="100" show-overflow-tooltip></el-table-column>
<el-table-column prop="netWeight" label="净重" width="100" show-overflow-tooltip></el-table-column>
<el-table-column prop="action" label="操作" width="400">
<template slot-scope="scope">
<el-button v-loading="buttonLoading" style="margin-left: 0px; padding: 4px !important;" type="default"
size="mini" icon="el-icon-view" @click="handlePreviewLabel(scope.row)" title="预览标签">预览</el-button>
<el-button v-loading="buttonLoading" style="margin-left: 0px; padding: 4px !important;" type="default"
size="mini" icon="el-icon-printer" @click="handlePrintLabel(scope.row)" title="打印标签">打印</el-button>
<el-button type="warning" icon="el-icon-time" size="mini" @click="handleTrace(scope.row)"
:loading="scope.row.picking" class="action-btn">追溯</el-button>
<el-button type="primary" icon="el-icon-check" size="mini" @click="handleCorrectMaterial(scope.row)"
:loading="scope.row.picking" class="action-btn">修正</el-button>
<el-button type="danger" icon="el-icon-delete" size="mini" @click="hanleDeleteMaterial(scope.row)"
:loading="scope.row.picking" class="action-btn">删除</el-button>
<el-button v-if="scope.row.dataType == 1 && scope.row.status == 0"
type="success" icon="el-icon-refresh"
size="mini" @click="handleRestoreMaterial(scope.row)" :loading="scope.row.cancelling"
class="action-btn">回滚</el-button>
<el-button v-if="scope.row.dataType == 10 && scope.row.status == 0"
type="success" icon="el-icon-refresh"
size="mini" @click="handleForceInMaterial(scope.row)" :loading="scope.row.cancelling"
class="action-btn">强制入库</el-button>
</template>
</el-table-column>
</KLPTable>
<!-- <div v-if="materialCoilList.length === 0" class="empty-state">
<i class="el-icon-box"></i>
<p>未找到钢卷数据</p>
</div>
@@ -85,7 +123,7 @@
<el-button type="primary" icon="el-icon-check" size="mini" @click="handleCorrectMaterial(item)"
:loading="item.picking" class="action-btn">修正</el-button>
</template>
</coil-card>
</coil-card> -->
</div>
</div>
@@ -131,7 +169,8 @@
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="操作类型" align="center" prop="actionType" width="160">
<template slot-scope="scope">
<el-select @change="handleStatusChange(scope.row)" v-model="scope.row.actionType" placeholder="请选择操作类型" clearable filterable>
<el-select @change="handleStatusChange(scope.row)" v-model="scope.row.actionType" placeholder="请选择操作类型"
clearable filterable>
<el-option label="入库/收货操作" :value="401" />
<el-option label="发货操作" :value="402" />
<el-option label="移库操作" :value="403" />
@@ -421,6 +460,41 @@ export default {
buttonLoading: false,
userList: [],
floatLayerConfig: {
columns: [
{ label: '入场钢卷号', prop: 'enterCoilNo' },
{ label: '当前钢卷号', prop: 'currentCoilNo' },
{ label: '厂家卷号', prop: 'supplierCoilNo' },
{ label: '逻辑库位', prop: 'warehouseName' },
{ label: '实际库位', prop: 'actualWarehouseName' },
{ label: '物料类型', prop: 'materialType' },
{ label: '班组', prop: 'team' },
{ label: '净重', prop: 'netWeight' },
{ label: '毛重', prop: 'grossWeight' },
{ label: '备注', prop: 'remark' },
{ label: '创建人', prop: 'createBy' },
{ label: '创建时间', prop: 'createTime' },
{ label: '更新人', prop: 'updateBy' },
{ label: '更新时间', prop: 'updateTime' },
{ label: '质量状态', prop: 'qualityStatus' },
{ label: '原料材质', prop: 'packingStatus' },
{ label: '切边要求', prop: 'edgeRequirement' },
{ label: '包装要求', prop: 'packagingRequirement' },
{ label: '物料名称', prop: 'itemName' },
{ label: '材质', prop: 'material' },
{ label: '规格', prop: 'specification' },
{ label: '镀层质量', prop: 'zincLayer' },
{ label: '厂家', prop: 'manufacturer' },
{ label: '调制度', prop: 'temperGrade' },
{ label: '镀层种类', prop: 'coatingType' },
{ label: '实测长度(m)', prop: 'actualLength' },
{ label: '实测宽度(m)', prop: 'actualWidth' },
{ label: '实测厚度(m)', prop: 'actualThickness' },
{ label: '钢卷表面处理', prop: 'coilSurfaceTreatment' },
],
title: '详细信息'
},
// 操作记录相关
actionDialogVisible: false,
actionLoading: false,

View File

@@ -2,7 +2,7 @@
<div class="app-container acid-do-container">
<el-row :gutter="20">
<!-- 左侧物料列表 -->
<el-col :span="12">
<el-col :span="16">
<div class="section-card material-section">
<div class="section-header">
<!-- 当tab数量多余一个时额外渲染一个el-tab-pane. 当tab切换时切换对应的物料列表 -->
@@ -31,13 +31,45 @@
</el-form>
<!-- 物料卡片列表 -->
<div v-loading="materialLoading" class="card-grid-container">
<div v-if="materialCoilList.length === 0" class="empty-state">
<div v-loading="materialLoading">
<!-- <div v-if="materialCoilList.length === 0" class="empty-state">
<i class="el-icon-box"></i>
<p>暂无待领物料</p>
</div>
</div> -->
<coil-card v-for="(item, index) in materialCoilList" :key="item.coilId || index" :coil="item"
<KLPTable :data="materialCoilList" height="calc(100vh - 340px)" :floatLayer="true" :floatLayerConfig="floatLayerConfig">
<el-table-column prop="currentCoilNo" label="当前钢卷号">
<template slot-scope="scope">
<current-coil-no :current-coil-no="scope.row.currentCoilNo" />
</template>
</el-table-column>
<el-table-column prop="enterCoilNo" label="入场钢卷号" show-overflow-tooltip></el-table-column>
<el-table-column prop="supplierCoilNo" label="厂家卷号" show-overflow-tooltip></el-table-column>
<el-table-column prop="specification" label="规格" width="100" show-overflow-tooltip></el-table-column>
<el-table-column prop="netWeight" label="净重" width="100" show-overflow-tooltip></el-table-column>
<el-table-column prop="action" label="操作" width="320">
<template slot-scope="scope">
<el-button v-loading="buttonLoading" style="margin-left: 0px; padding: 4px !important;" type="default"
size="mini" icon="el-icon-view" @click="handlePreviewLabel(scope.row)" title="预览标签">预览</el-button>
<!-- <i class="el-icon-view param-icon" @click="handlePreviewLabel(scope.row)" title="查看标签"></i> -->
<el-button v-loading="buttonLoading" style="margin-left: 0px; padding: 4px !important;" type="default"
size="mini" icon="el-icon-printer" @click="handlePrintLabel(scope.row)" title="打印标签">打印</el-button>
<el-button v-if="useSpecialSplit" :style="splitButtonStyle" icon="el-icon-scissors" size="mini"
@click="handleStartSplit(scope.row)" :loading="buttonLoading" class="action-btn">加工</el-button>
<el-button v-else type="primary" icon="el-icon-check" size="mini" @click="handlePickMaterial(scope.row)"
:loading="buttonLoading" class="action-btn">领料</el-button>
<el-button type="danger" icon="el-icon-alarm-clock" :plain="scope.row.abnormalCount == 0" size="mini"
@click="handleAddAbnormal(scope.row)" :loading="buttonLoading" class="action-btn">
缺陷明细
<span v-if="scope.row.abnormalCount > 0">({{ scope.row.abnormalCount }})</span>
</el-button>
</template>
</el-table-column>
</KLPTable>
<!-- <coil-card v-for="(item, index) in materialCoilList" :key="item.coilId || index" :coil="item"
:card-style="{ border: item.abnormalCount > 0 ? '1px solid red' : ' 1px solid #e4e7ed' }">
<template slot="header">
<i class="el-icon-view param-icon" @click="handlePreviewLabel(item)" title="查看标签"></i>
@@ -55,7 +87,7 @@
<span v-if="item.abnormalCount > 0">({{ item.abnormalCount }})</span>
</el-button>
</template>
</coil-card>
</coil-card> -->
</div>
<!-- 分页 -->
@@ -65,7 +97,7 @@
</el-col>
<!-- 右侧:待操作列表 -->
<el-col :span="12">
<el-col :span="8">
<div class="section-card action-section" v-if="useSpecialSplit" style="margin-bottom: 20px;"
v-loading="stepSpilt.loading">
<div class="section-header ">
@@ -74,9 +106,10 @@
</div>
<div v-if="stepSpilt.list.length > 0" style="display: flex; align-items: center; gap: 10px; flex-wrap: wrap;">
<div v-for="(item, index) in stepSpilt.list" :key="item.coilId || index"
style="width: 18rem; background-color: #ffffff; border-bottom-left-radius: 0.5rem; border-bottom-right-radius: 0.5rem; border-top: 4px solid #2bf; padding-left: 1rem; padding-right: 1rem; padding-top: 1.25rem; padding-bottom: 1.25rem; display: flex; flex-direction: column; justify-content: space-around; box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);">
style="width: 13rem; background-color: #ffffff; border-bottom-left-radius: 0.5rem; border-bottom-right-radius: 0.5rem; border-top: 4px solid #2bf; padding-left: 1rem; padding-right: 1rem; padding-top: 1.25rem; padding-bottom: 1.25rem; display: flex; flex-direction: column; justify-content: space-around; box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);">
<p
style="font-size: 1.125rem; line-height: 1.75rem; font-weight: 700; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';">
<svg-icon icon-class="coil" style="width: 1.5rem; height: 1.5rem;"></svg-icon>
{{ item.currentCoilNo || 'N/A' }}
</p>
<div style="padding-top: 0.75rem; padding-bottom: 0.75rem;">
@@ -128,7 +161,7 @@
</p>
</div>
<div style="display: flex; justify-content: space-between;">
<svg-icon icon-class="coil" style="width: 1.5rem; height: 1.5rem;"></svg-icon>
<div style="font-size: 0.875rem; line-height: 1.25rem; display: flex; gap: 0.5rem;">
<el-button type="primary" size="mini" @click="handleContinueSplit(item)"
style="min-width: 80px; padding: 5px 15px;">
@@ -151,11 +184,14 @@
<div class="section-card action-section">
<div class="section-header">
<h3 class="section-title">{{ label }}操作记录</h3>
<el-button size="mini" icon="el-icon-refresh" @click="getPendingAction">刷新</el-button>
<div>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleActionQuery">搜索</el-button>
<el-button size="mini" icon="el-icon-refresh" @click="getPendingAction">刷新</el-button>
</div>
</div>
<!-- 搜索栏 -->
<el-form :model="actionQueryParams" ref="actionQueryForm" size="small" :inline="true" class="query-form">
<el-form :model="actionQueryParams" ref="actionQueryForm" size="small" :inline="true">
<el-form-item label="钢卷号" prop="currentCoilNo">
<el-input v-model="actionQueryParams.currentCoilNo" placeholder="请输入钢卷号" clearable
@keyup.enter.native="handleActionQuery" style="width: 150px;" />
@@ -168,14 +204,10 @@
<el-option label="已取消" :value="3" />
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleActionQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetActionQuery">重置</el-button>
</el-form-item>
</el-form>
<!-- 待操作卡片列表 -->
<div v-if="!useSpecialSplit" v-loading="actionLoading" class="card-grid-container">
<div v-loading="actionLoading" class="card-grid-container">
<div v-if="pendingActionList.length === 0" class="empty-state">
<i class="el-icon-document"></i>
<p>暂无待操作任务</p>
@@ -198,13 +230,13 @@
<div class="card-body">
<div class="info-list">
<div class="info-item">
<!-- <div class="info-item">
<span class="info-label">来源:</span>
<span class="info-value">
<el-tag v-if="item.sourceType === 'scan'" type="success" size="mini">扫码</el-tag>
<el-tag v-else type="info" size="mini">手动</el-tag>
</span>
</div>
</div> -->
<div class="info-item">
<span class="info-label">创建人:</span>
<span class="info-value">{{ item.createBy || '—' }}</span>
@@ -214,13 +246,13 @@
<span class="info-value">{{ item.operatorName || '—' }}</span>
</div>
<div class="info-item">
<span class="info-label">扫码时间:</span>
<span class="info-value">{{ parseTime(item.scanTime, '{m}-{d} {h}:{i}') || '—' }}</span>
<span class="info-label">创建时间:</span>
<span class="info-value">{{ parseTime(item.createTime, '{m}-{d} {h}:{i}') || '—' }}</span>
</div>
<div class="info-item">
<!-- <div class="info-item">
<span class="info-label">完成时间:</span>
<span class="info-value">{{ parseTime(item.completeTime, '{m}-{d} {h}:{i}') || '—' }}</span>
</div>
</div> -->
</div>
</div>
@@ -248,7 +280,7 @@
</div>
</div>
<el-table v-else :data="pendingActionList">
<!-- <el-table v-else :data="pendingActionList">
<el-table-column label="钢卷号" prop="currentCoilNo"></el-table-column>
<el-table-column label="操作状态" prop="actionStatus">
<template slot-scope="scope">
@@ -267,7 +299,7 @@
size="mini" @click="handleDeleteAction(scope.row)" class="action-btn">删除</el-button>
</template>
</el-table-column>
</el-table>
</el-table> -->
<!-- 分页 -->
<pagination v-show="actionTotal > 0" :total="actionTotal" :page.sync="actionQueryParams.pageNum"
@@ -352,6 +384,41 @@ export default {
type: '2'
},
floatLayerConfig: {
columns: [
{ label: '入场钢卷号', prop: 'enterCoilNo' },
{ label: '当前钢卷号', prop: 'currentCoilNo' },
{ label: '厂家卷号', prop: 'supplierCoilNo' },
{ label: '逻辑库位', prop: 'warehouseName' },
{ label: '实际库位', prop: 'actualWarehouseName' },
{ label: '物料类型', prop: 'materialType' },
{ label: '班组', prop: 'team' },
{ label: '净重', prop: 'netWeight' },
{ label: '毛重', prop: 'grossWeight' },
{ label: '备注', prop: 'remark' },
{ label: '创建人', prop: 'createBy' },
{ label: '创建时间', prop: 'createTime' },
{ label: '更新人', prop: 'updateBy' },
{ label: '更新时间', prop: 'updateTime' },
{ label: '质量状态', prop: 'qualityStatus' },
{ label: '原料材质', prop: 'packingStatus' },
{ label: '切边要求', prop: 'edgeRequirement' },
{ label: '包装要求', prop: 'packagingRequirement' },
{ label: '物料名称', prop: 'itemName' },
{ label: '材质', prop: 'material' },
{ label: '规格', prop: 'specification' },
{ label: '镀层质量', prop: 'zincLayer' },
{ label: '厂家', prop: 'manufacturer' },
{ label: '调制度', prop: 'temperGrade' },
{ label: '镀层种类', prop: 'coatingType' },
{ label: '实测长度(m)', prop: 'actualLength' },
{ label: '实测宽度(m)', prop: 'actualWidth' },
{ label: '实测厚度(m)', prop: 'actualThickness' },
{ label: '钢卷表面处理', prop: 'coilSurfaceTreatment' },
],
title: '详细信息'
},
// 待操作列表相关
actionLoading: false,
pendingActionList: [],
@@ -425,7 +492,7 @@ export default {
border: '1px solid #2bf',
color: '#fff'
}
}
}
// 各个修复工序,使用工序的代表色 + 粉色的渐变来标识
// 酸轧修复工序
else if (this.acidRollingActionType == 520) {
@@ -928,7 +995,7 @@ export default {
// 卡片网格容器
.card-grid-container {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-columns: repeat(2, 1fr);
gap: 8px;
max-height: calc(100vh - 320px);
overflow-y: auto;

View File

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

View File

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