feat(wms): 将输入框改为下拉选择框以规范质量状态、切边要求和包装要求输入

修改了typing.vue、split.vue和merge.vue文件,将质量状态、切边要求和包装要求的输入框替换为预定义选项的下拉选择框,确保用户输入符合规范
This commit is contained in:
砂糖
2026-01-09 14:11:12 +08:00
parent ab528e6c32
commit 410919f8f7
3 changed files with 112 additions and 59 deletions

View File

@@ -7,7 +7,8 @@
<span>钢卷合卷</span>
</div>
<div class="header-actions">
<el-button v-if="!readonly" type="primary" size="small" @click="handleSave" :disabled="buttonLoading" v-loading="buttonLoading">保存合卷</el-button>
<el-button v-if="!readonly" type="primary" size="small" @click="handleSave" :disabled="buttonLoading"
v-loading="buttonLoading">保存合卷</el-button>
<el-button size="small" @click="handleCancel" :disabled="loading">{{ readonly ? '返回' : '取消' }}</el-button>
</div>
</div>
@@ -126,8 +127,7 @@
<el-input v-model="targetCoil.currentCoilNo" placeholder="输入目标卷号" :disabled="readonly"></el-input>
</el-form-item>
<el-form-item label="班组">
<el-select v-model="targetCoil.team" placeholder="请选择班组" style="width: 100%"
:disabled="readonly">
<el-select v-model="targetCoil.team" placeholder="请选择班组" style="width: 100%" :disabled="readonly">
<el-option key="甲" label="甲" value="甲" />
<el-option key="乙" label="乙" value="乙" />
</el-select>
@@ -143,60 +143,79 @@
<!-- 物品类型由材料类型自动联动隐藏此选择框 -->
<el-form-item v-if="targetCoil.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-input v-model="targetCoil.qualityStatus"
<!-- <el-input v-model="targetCoil.qualityStatus"
placeholder="请输入质量状态" :disabled="readonly">
</el-input>
</el-input> -->
<el-select v-model="targetCoil.qualityStatus" placeholder="请选择质量状态" style="width: 100%"
:disabled="readonly">
<el-option label="A+" value="A+" />
<el-option label="A" value="A" />
<el-option label="A-" value="A-" />
<el-option label="B+" value="B+" />
<el-option label="B" value="B" />
<el-option label="B-" value="B-" />
<el-option label="C+" value="C+" />
<el-option label="C" value="C" />
<el-option label="C-" value="C-" />
</el-select>
</el-form-item>
<el-form-item v-if="targetCoil.materialType === '成品'" label="切边要求" prop="trimmingRequirement">
<el-input v-model="targetCoil.trimmingRequirement"
<el-select v-model="targetCoil.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%"
:disabled="readonly">
<el-option label="净边料" value="净边料" />
<el-option label="毛边料" value="毛边料" />
</el-select>
<!-- <el-input v-model="targetCoil.trimmingRequirement"
placeholder="请输入切边要求" :disabled="readonly">
</el-input>
</el-input> -->
</el-form-item>
<el-form-item v-if="targetCoil.materialType === '成品'" label="打包状态" prop="packingStatus">
<el-input v-model="targetCoil.packingStatus"
placeholder="请输入打包状态" :disabled="readonly">
<el-input v-model="targetCoil.packingStatus" placeholder="请输入打包状态" :disabled="readonly">
</el-input>
</el-form-item>
<el-form-item v-if="targetCoil.materialType === '成品'" label="包装要求" prop="packagingRequirement">
<el-input v-model="targetCoil.packagingRequirement"
<el-select v-model="targetCoil.packagingRequirement" placeholder="请选择包装要求" style="width: 100%"
:disabled="readonly">
<el-option label="裸包" value="裸包" />
<el-option label="普包" value="普包" />
<el-option label="简包" value="简包" />
</el-select>
<!-- <el-input v-model="targetCoil.packagingRequirement"
placeholder="请输入包装要求" :disabled="readonly">
</el-input>
</el-input> -->
</el-form-item>
<el-form-item :label="getItemLabel">
<raw-material-selector v-if="targetCoil.materialType === '原料' || targetCoil.materialType === '废品'" v-model="targetCoil.itemId" placeholder="请选择原料" style="width: 100%"
clearable :disabled="readonly || !targetCoil.materialType" />
<product-selector v-else-if="targetCoil.materialType === '成品'" v-model="targetCoil.itemId" placeholder="请选择成品" style="width: 100%"
clearable :disabled="readonly || !targetCoil.materialType" />
<raw-material-selector v-if="targetCoil.materialType === '原料' || targetCoil.materialType === '废品'"
v-model="targetCoil.itemId" placeholder="请选择原料" style="width: 100%" clearable
:disabled="readonly || !targetCoil.materialType" />
<product-selector v-else-if="targetCoil.materialType === '成品'" v-model="targetCoil.itemId"
placeholder="请选择成品" style="width: 100%" clearable :disabled="readonly || !targetCoil.materialType" />
<div v-else>请先选择物料类型</div>
</el-form-item>
<el-form-item label="毛重(t)">
<el-input-number precision="3" :controls="false" v-model="targetCoil.grossWeight" placeholder="请输入毛重" type="number" step="0.01"
:disabled="readonly">
<el-input-number precision="3" :controls="false" v-model="targetCoil.grossWeight" placeholder="请输入毛重"
type="number" step="0.01" :disabled="readonly">
<template slot="append"></template>
</el-input-number>
</el-form-item>
<el-form-item label="净重(t)">
<el-input-number precision="3" :controls="false" v-model="targetCoil.netWeight" placeholder="请输入净重" type="number" step="0.01"
:disabled="readonly">
<el-input-number precision="3" :controls="false" v-model="targetCoil.netWeight" placeholder="请输入净重"
type="number" step="0.01" :disabled="readonly">
<template slot="append"></template>
</el-input-number>
</el-form-item>
<el-form-item label="长度(m)">
<el-input-number :controls="false" v-model="targetCoil.length" placeholder="请输入长度" type="number" step="0.01"
:disabled="readonly">
<el-input-number :controls="false" v-model="targetCoil.length" placeholder="请输入长度" type="number"
step="0.01" :disabled="readonly">
<template slot="append"></template>
</el-input-number>
</el-form-item>
<el-form-item label="逻辑库区">
<WarehouseSelect
v-model="targetCoil.warehouseId"
placeholder="请选择逻辑库区"
:disabled="readonly"
/>
<WarehouseSelect v-model="targetCoil.warehouseId" placeholder="请选择逻辑库区" :disabled="readonly" />
</el-form-item>
<el-form-item label="真实库区">
<actual-warehouse-select v-model="targetCoil.actualWarehouseId" placeholder="请选择" style="width: 100%"

View File

@@ -108,8 +108,7 @@
<el-input v-model="item.currentCoilNo" placeholder="输入子卷卷号" :disabled="readonly"></el-input>
</el-form-item>
<el-form-item label="班组" required>
<el-select v-model="item.team" placeholder="请选择班组" style="width: 100%"
:disabled="readonly">
<el-select v-model="item.team" placeholder="请选择班组" style="width: 100%" :disabled="readonly">
<el-option key="甲" label="甲" value="甲" />
<el-option key="乙" label="乙" value="乙" />
</el-select>
@@ -125,13 +124,28 @@
</el-form-item>
<el-form-item v-if="item.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-input v-model="item.qualityStatus" placeholder="请输入质量状态" :disabled="readonly">
</el-input>
<el-select v-model="item.qualityStatus" placeholder="请选择质量状态" style="width: 100%"
:disabled="readonly">
<el-option label="A+" value="A+" />
<el-option label="A" value="A" />
<el-option label="A-" value="A-" />
<el-option label="B+" value="B+" />
<el-option label="B" value="B" />
<el-option label="B-" value="B-" />
<el-option label="C+" value="C+" />
<el-option label="C" value="C" />
<el-option label="C-" value="C-" />
</el-select>
</el-form-item>
<el-form-item v-if="item.materialType === '成品'" label="切边要求" prop="trimmingRequirement">
<el-input v-model="item.trimmingRequirement" placeholder="请输入切边要求" :disabled="readonly">
</el-input>
<el-select v-model="item.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%"
:disabled="readonly">
<el-option label="净边料" value="净边料" />
<el-option label="毛边料" value="毛边料" />
</el-select>
<!-- <el-input v-model="item.trimmingRequirement" placeholder="请输入切边要求" :disabled="readonly">
</el-input> -->
</el-form-item>
<el-form-item v-if="item.materialType === '成品'" label="打包状态" prop="packingStatus">
@@ -140,8 +154,14 @@
</el-form-item>
<el-form-item v-if="item.materialType === '成品'" label="包装要求" prop="packagingRequirement">
<el-input v-model="item.packagingRequirement" placeholder="请输入包装要求" :disabled="readonly">
</el-input>
<el-select v-model="item.packagingRequirement" placeholder="请选择包装要求" style="width: 100%"
:disabled="readonly">
<el-option label="裸包" value="裸包" />
<el-option label="普包" value="普包" />
<el-option label="简包" value="简包" />
</el-select>
<!-- <el-input v-model="item.packagingRequirement" placeholder="请输入包装要求" :disabled="readonly">
</el-input> -->
</el-form-item>
<!-- 物品类型由材料类型自动决定不显示选择框 -->
@@ -149,21 +169,20 @@
<raw-material-select v-if="item.materialType === '原料' || item.materialType === '废品'"
v-model="item.itemId" placeholder="请选择原料" style="width: 100%" clearable
:disabled="readonly || !item.materialType" />
<product-select v-else-if="item.materialType === '成品'" v-model="item.itemId"
placeholder="请选择成品" style="width: 100%" clearable
:disabled="readonly || !item.materialType" />
<product-select v-else-if="item.materialType === '成品'" v-model="item.itemId" placeholder="请选择成品"
style="width: 100%" clearable :disabled="readonly || !item.materialType" />
<div v-else>请先选择物料类型</div>
</el-form-item>
<el-form-item label="毛重(t)" required>
<el-input-number precision="3" :controls="false" v-model="item.grossWeight" placeholder="请输入毛重" type="number" step="0.01"
:disabled="readonly">
<el-input-number precision="3" :controls="false" v-model="item.grossWeight" placeholder="请输入毛重"
type="number" step="0.01" :disabled="readonly">
<template slot="append"></template>
</el-input-number>
</el-form-item>
<el-form-item label="净重(t)" required>
<el-input-number precision="3" :controls="false" v-model="item.netWeight" placeholder="请输入净重" type="number" step="0.01"
:disabled="readonly">
<el-input-number precision="3" :controls="false" v-model="item.netWeight" placeholder="请输入净重"
type="number" step="0.01" :disabled="readonly">
<template slot="append"></template>
</el-input-number>
</el-form-item>
@@ -174,19 +193,11 @@
</el-input-number>
</el-form-item>
<el-form-item label="逻辑库区" required>
<WarehouseSelect
v-model="item.warehouseId"
placeholder="请选择逻辑库区"
:disabled="readonly"
/>
<WarehouseSelect v-model="item.warehouseId" placeholder="请选择逻辑库区" :disabled="readonly" />
</el-form-item>
<el-form-item label="真实库区" required>
<ActualWarehouseSelect
v-model="item.actualWarehouseId"
placeholder="请选择真实库区"
block
:disabled="readonly"
/>
<ActualWarehouseSelect v-model="item.actualWarehouseId" placeholder="请选择真实库区" block
:disabled="readonly" />
</el-form-item>
</el-form>
</div>
@@ -204,7 +215,7 @@
</div>
<!-- 钢卷选择器 -->
<coil-selector :visible.sync="coilSelectorVisible" @select="handleCoilSelect" />
<!-- <coil-selector :visible.sync="coilSelectorVisible" @select="handleCoilSelect" /> -->
</div>
</template>

View File

@@ -110,15 +110,32 @@
<!-- 物品类型由材料类型自动决定不显示选择框 -->
<el-form-item v-if="updateForm.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-input v-model="updateForm.qualityStatus" placeholder="请输入质量状态"
<!-- <el-input v-model="updateForm.qualityStatus" placeholder="请输入质量状态"
:disabled="readonly">
</el-input>
</el-input> -->
<el-select v-model="updateForm.qualityStatus" placeholder="请选择质量状态" style="width: 100%"
:disabled="readonly">
<el-option label="A+" value="A+" />
<el-option label="A" value="A" />
<el-option label="A-" value="A-" />
<el-option label="B+" value="B+" />
<el-option label="B" value="B" />
<el-option label="B-" value="B-" />
<el-option label="C+" value="C+" />
<el-option label="C" value="C" />
<el-option label="C-" value="C-" />
</el-select>
</el-form-item>
<el-form-item v-if="updateForm.materialType === '成品'" label="切边要求" prop="qualityStatus">
<el-input v-model="updateForm.trimmingRequirement" placeholder="请输入切边要求"
<el-select v-model="updateForm.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%"
:disabled="readonly">
</el-input>
<el-option label="净边料" value="净边料" />
<el-option label="毛边料" value="毛边料" />
</el-select>
<!-- <el-input v-model="updateForm.trimmingRequirement" placeholder="请输入切边要求"
:disabled="readonly">
</el-input> -->
</el-form-item>
<el-form-item v-if="updateForm.materialType === '成品'" label="打包状态" prop="qualityStatus">
@@ -128,9 +145,15 @@
</el-form-item>
<el-form-item v-if="updateForm.materialType === '成品'" label="包装要求" prop="qualityStatus">
<el-input v-model="updateForm.packagingRequirement" placeholder="请输入包装要求"
<el-select v-model="updateForm.packagingRequirement" placeholder="请选择包装要求" style="width: 100%"
:disabled="readonly">
</el-input>
<el-option label="裸包" value="裸包" />
<el-option label="普包" value="普包" />
<el-option label="简包" value="简包" />
</el-select>
<!-- <el-input v-model="updateForm.packagingRequirement" placeholder="请输入包装要求"
:disabled="readonly">
</el-input> -->
</el-form-item>
<el-form-item :label="getItemLabel" :prop="updateForm.materialType === '废品' ? '' : 'itemId'"