Merge remote-tracking branch 'origin/0.8.X' into 0.8.X
This commit is contained in:
@@ -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>
|
||||
|
||||
@@ -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; // 终止后续逻辑
|
||||
}
|
||||
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 (this.disableO && disabledOList.includes(row.qualityStatus)) {
|
||||
if (disabledOList.includes(row.qualityStatus)) {
|
||||
this.$message.warning(`${row.qualityStatus}卷不能选择`);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
this.handleSelect(row);
|
||||
},
|
||||
|
||||
|
||||
@@ -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>
|
||||
|
||||
<!-- 分页 -->
|
||||
@@ -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: {
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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>
|
||||
<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: [],
|
||||
@@ -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;
|
||||
|
||||
@@ -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() {
|
||||
|
||||
@@ -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() {
|
||||
|
||||
Reference in New Issue
Block a user