refactor(wms/coil): 优化代码格式并新增热轧卷材质自动填充功能

1. 格式化多个vue文件的模板代码,调整长标签换行规范
2. 新增getFirstHeatCoilMaterial接口调用,从接口获取最早热轧卷板材质
3. 在分条、酸洗页面中自动将packingStatus填充为获取到的热轧材质
4. 调整typing页面的布局结构,优化表单排版
This commit is contained in:
2026-05-12 10:40:02 +08:00
parent a69b931b94
commit 1e62425fb8
3 changed files with 368 additions and 418 deletions

View File

@@ -25,7 +25,8 @@
<el-descriptions :column="2" border title="待分条钢卷信息">
<template slot="extra">
<el-button v-if="showSplitForm" type="info" @click="copyFromSourceCoil" icon="el-icon-document-copy">复制源卷信息</el-button>
<el-button v-if="showSplitForm" type="info" @click="copyFromSourceCoil"
icon="el-icon-document-copy">复制源卷信息</el-button>
</template>
<el-descriptions-item label="入场钢卷号">{{ coilInfo.enterCoilNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="当前钢卷号">{{ coilInfo.currentCoilNo || '-' }}</el-descriptions-item>
@@ -244,7 +245,7 @@
<!-- 分条钢卷详情选中列表项时显示 -->
<div class="split-detail-card" v-else-if="selectedSplitItem">
<el-card title="分条钢卷详情" shadow="hover">
<CoilInfoRender :coilInfo="selectedSplitItem" :column="2" border/>
<CoilInfoRender :coilInfo="selectedSplitItem" :column="2" border />
</el-card>
</div>
@@ -271,17 +272,28 @@
<el-alert title="检测到您之前有暂存的分条数据,是否恢复使用?" type="info" show-icon :closable="false"></el-alert>
<el-divider content-position="left">暂存的表单数据</el-divider>
<el-descriptions :column="2" border size="small">
<el-descriptions-item label="入场钢卷号">{{ parsedCacheData && parsedCacheData.splitForm && parsedCacheData.splitForm.enterCoilNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="当前钢卷号">{{ parsedCacheData && parsedCacheData.splitForm && parsedCacheData.splitForm.currentCoilNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="所在库位">{{ parsedCacheData && parsedCacheData.splitForm && parsedCacheData.splitForm.warehouseId || '-' }}</el-descriptions-item>
<el-descriptions-item label="班组">{{ parsedCacheData && parsedCacheData.splitForm && parsedCacheData.splitForm.team || '-' }}</el-descriptions-item>
<el-descriptions-item label="材料类型">{{ parsedCacheData && parsedCacheData.splitForm && parsedCacheData.splitForm.materialType || '-' }}</el-descriptions-item>
<el-descriptions-item label="质量状态">{{ parsedCacheData && parsedCacheData.splitForm && parsedCacheData.splitForm.qualityStatus || '-' }}</el-descriptions-item>
<el-descriptions-item label="净重">{{ parsedCacheData && parsedCacheData.splitForm && parsedCacheData.splitForm.netWeight || '-' }}</el-descriptions-item>
<el-descriptions-item label="备注">{{ parsedCacheData && parsedCacheData.splitForm && parsedCacheData.splitForm.remark || '-' }}</el-descriptions-item>
<el-descriptions-item label="入场钢卷号">{{ parsedCacheData && parsedCacheData.splitForm &&
parsedCacheData.splitForm.enterCoilNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="当前钢卷号">{{ parsedCacheData && parsedCacheData.splitForm &&
parsedCacheData.splitForm.currentCoilNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="所在库位">{{ parsedCacheData && parsedCacheData.splitForm &&
parsedCacheData.splitForm.warehouseId || '-' }}</el-descriptions-item>
<el-descriptions-item label="班组">{{ parsedCacheData && parsedCacheData.splitForm &&
parsedCacheData.splitForm.team
|| '-' }}</el-descriptions-item>
<el-descriptions-item label="材料类型">{{ parsedCacheData && parsedCacheData.splitForm &&
parsedCacheData.splitForm.materialType || '-' }}</el-descriptions-item>
<el-descriptions-item label="质量状态">{{ parsedCacheData && parsedCacheData.splitForm &&
parsedCacheData.splitForm.qualityStatus || '-' }}</el-descriptions-item>
<el-descriptions-item label="净重">{{ parsedCacheData && parsedCacheData.splitForm &&
parsedCacheData.splitForm.netWeight || '-' }}</el-descriptions-item>
<el-descriptions-item label="备注">{{ parsedCacheData && parsedCacheData.splitForm &&
parsedCacheData.splitForm.remark || '-' }}</el-descriptions-item>
</el-descriptions>
<el-divider v-if="parsedCacheData && parsedCacheData.abnormals && parsedCacheData.abnormals.length > 0" content-position="left">暂存的异常信息 ({{ parsedCacheData.abnormals.length }})</el-divider>
<div v-if="parsedCacheData && parsedCacheData.abnormals && parsedCacheData.abnormals.length > 0" class="abnormal-container" style="margin-bottom: 20px;">
<el-divider v-if="parsedCacheData && parsedCacheData.abnormals && parsedCacheData.abnormals.length > 0"
content-position="left">暂存的异常信息 ({{ parsedCacheData.abnormals.length }})</el-divider>
<div v-if="parsedCacheData && parsedCacheData.abnormals && parsedCacheData.abnormals.length > 0"
class="abnormal-container" style="margin-bottom: 20px;">
<div v-for="(abnormal, index) in parsedCacheData.abnormals" :key="index" class="abnormal-item">
<div class="abnormal-content">
<div class="abnormal-info">
@@ -302,7 +314,7 @@
</template>
<script>
import { getMaterialCoil, listMaterialCoil, createSpecialChild, completeSpecialSplit, updateMaterialCoilSimple, checkCoilNo, delMaterialCoil } from '@/api/wms/coil'
import { getMaterialCoil, listMaterialCoil, createSpecialChild, completeSpecialSplit, updateMaterialCoilSimple, checkCoilNo, delMaterialCoil, getFirstHeatCoilMaterial } from '@/api/wms/coil'
import { completeAction, getPendingAction, updatePendingAction } from '@/api/wms/pendingAction'
import { saveCoilCache, getCoilCacheByCoilId, delCoilCache } from '@/api/wms/coilCache'
import { getGalvanize1TypingPrefill } from '@/api/pocket/acidTyping';
@@ -440,6 +452,8 @@ export default {
cacheDialogVisible: false,
currentCache: null,
parsedCacheData: null,
// 最早的热轧卷板材质
firstHeatMaterial: '',
}
},
computed: {
@@ -486,6 +500,16 @@ export default {
const res = await getMaterialCoil(this.coilId)
if (res.code === 200) {
this.coilInfo = res.data || {}
// 获取最早的热轧卷板材质
try {
const firstHeatMaterial = await getFirstHeatCoilMaterial(this.coilId);
if (firstHeatMaterial.code === 200 && firstHeatMaterial.msg) {
this.firstHeatMaterial = firstHeatMaterial.msg
}
} catch {
}
} else {
this.$message.error('查询钢卷信息失败:' + res.msg)
}
@@ -610,7 +634,7 @@ export default {
itemId: '',
qualityStatus: '',
trimmingRequirement: '',
packingStatus: '',
packingStatus: this.firstHeatMaterial || '',
packagingRequirement: '',
grossWeight: '',
netWeight: '',