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

This commit is contained in:
2026-01-13 14:50:10 +08:00
12 changed files with 161 additions and 137 deletions

View File

@@ -58,6 +58,10 @@ export default {
showEmpty: {
type: Boolean,
default: false
},
canSelectDisabled: {
type: Boolean,
default: false
}
},
data() {
@@ -124,7 +128,7 @@ export default {
label: item.actualWarehouseName,
leaf: isLeafLevel,
// 只有第三级可选;一、二级全部 disabled
disabled: nextLevel == 3 && !item.isEnabled,
disabled: !this.canSelectDisabled && nextLevel == 3 && !item.isEnabled,
// 保留原始数据和层级
raw: item,
level: nextLevel

View File

@@ -102,6 +102,22 @@
</div>
<div class="param-divider"></div>
<div class="param-item">
<div class="param-row" v-if="item.qualityStatus">
<span class="param-label">质量状态</span>
<span class="param-value">{{ item.qualityStatus }}</span>
</div>
<div class="param-row" v-if="item.trimmingRequirement">
<span class="param-label">切边要求</span>
<span class="param-value">{{ item.trimmingRequirement }}</span>
</div>
<div class="param-row" v-if="item.packingStatus">
<span class="param-label">打包状态</span>
<span class="param-value">{{ item.packingStatus }}</span>
</div>
<div class="param-row" v-if="item.packagingRequirement">
<span class="param-label">包装要求</span>
<span class="param-value">{{ item.packagingRequirement }}</span>
</div>
<div class="param-row" v-if="item.grossWeight">
<span class="param-label">毛重</span>
<span class="param-value">{{ item.grossWeight }}t</span>
@@ -248,7 +264,6 @@
<el-select v-model="form.materialType" placeholder="请选择材料类型" @change="handleMaterialTypeChange">
<el-option label="成品" value="成品" />
<el-option label="原料" value="原料" />
<el-option label="废品" value="废品" />
</el-select>
</el-form-item>
<el-form-item :label="getItemLabel" prop="itemId">
@@ -258,9 +273,9 @@
style="width: 100%;" clearable />
<div v-else>请先选择材料类型</div>
</el-form-item>
<el-form-item v-if="form.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-form-item label="质量状态" prop="qualityStatus">
<el-select v-model="form.qualityStatus" placeholder="请选择质量状态" style="width: 100%">
<el-option label="A+" value="A+" />
<!-- <el-option label="A+" value="A+" />
<el-option label="A" value="A" />
<el-option label="A-" value="A-" />
<el-option label="B+" value="B+" />
@@ -268,23 +283,24 @@
<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-option label="C-" value="C-" /> -->
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item v-if="form.materialType === '成品'" label="切边要求" prop="trimmingRequirement">
<el-form-item label="切边要求" prop="trimmingRequirement">
<el-select v-model="form.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%">
<el-option label="净边料" value="净边料" />
<el-option label="毛边料" value="毛边料" />
</el-select>
</el-form-item>
<el-form-item v-if="form.materialType === '成品'" label="打包状态" prop="packingStatus">
<el-form-item label="打包状态" prop="packingStatus">
<el-input v-model="form.packingStatus" placeholder="请输入打包状态">
</el-input>
</el-form-item>
<el-form-item v-if="form.materialType === '成品'" label="包装要求" prop="packagingRequirement">
<el-form-item label="包装要求" prop="packagingRequirement">
<el-select v-model="form.packagingRequirement" placeholder="请选择包装要求" style="width: 100%">
<el-option label="裸包" value="裸包" />
<el-option label="普包" value="普包" />
@@ -358,6 +374,7 @@ export default {
ProductSelect,
RawMaterialSelect,
},
dicts: ['coil_quality_status'],
data() {
return {
// 物料列表相关
@@ -420,7 +437,7 @@ export default {
getItemLabel() {
if (this.form.materialType === '成品') {
return '产品类型';
} else if (this.form.materialType === '原料' || this.form.materialType === '废品') {
} else if (this.form.materialType === '原料') {
return '原料类型';
}
return '物品类型';
@@ -497,7 +514,7 @@ export default {
// 根据材料类型设置物品类型
if (value === '成品') {
this.form.itemType = 'product';
} else if (value === '原料' || value === '废品') {
} else if (value === '原料') {
this.form.itemType = 'raw_material';
}
},

View File

@@ -61,7 +61,6 @@
<el-select v-model="form.materialType" placeholder="请选择材料类型" @change="handleMaterialTypeChange">
<el-option label="成品" value="成品" />
<el-option label="原料" value="原料" />
<el-option label="废品" value="废品" />
</el-select>
</el-form-item>
</el-col>
@@ -76,12 +75,12 @@
</el-col>
</el-row>
<el-row v-if="form.materialType === '成品'">
<el-row>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-form-item label="质量状态" prop="qualityStatus">
<el-select v-model="form.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="A-" value="A-" />
<el-option label="B+" value="B+" />
@@ -89,12 +88,14 @@
<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-option label="C-" value="C-" /> -->
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="切边要求" prop="trimmingRequirement">
<el-form-item label="切边要求" prop="trimmingRequirement">
<el-select v-model="form.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%"
:disabled="readonly">
<el-option label="净边料" value="净边料" />
@@ -103,13 +104,13 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="打包状态" prop="packingStatus">
<el-form-item label="打包状态" prop="packingStatus">
<el-input v-model="form.packingStatus" placeholder="请输入打包状态" :disabled="readonly">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="包装要求" prop="packagingRequirement">
<el-form-item label="包装要求" prop="packagingRequirement">
<el-select v-model="form.packagingRequirement" placeholder="请选择包装要求" style="width: 100%"
:disabled="readonly">
<el-option label="裸包" value="裸包" />
@@ -143,14 +144,20 @@
<el-row>
<el-col :span="12">
<el-form-item label="质量状态" prop="qualityStatus">
<memo-input v-model="form.qualityStatus" placeholder="请输入质量状态" storageKey="qualityStatus">
</memo-input>
<!-- <memo-input v-model="form.qualityStatus" placeholder="请输入质量状态" storageKey="qualityStatus">
</memo-input> -->
<el-select v-model="form.qualityStatus" placeholder="请选择质量状态" style="width: 100%">
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="切边要求" prop="trimmingRequirement">
<memo-input v-model="form.trimmingRequirement" placeholder="请输入切边要求" storageKey="trimmingRequirement">
</memo-input>
<el-select v-model="form.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%">
<el-option label="净边料" value="净边料" />
<el-option label="毛边料" value="毛边料" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
@@ -161,9 +168,11 @@
</el-col>
<el-col :span="12">
<el-form-item label="包装要求" prop="packagingRequirement">
<memo-input v-model="form.packagingRequirement" placeholder="请输入包装要求"
storageKey="packagingRequirement">
</memo-input>
<el-select v-model="form.packagingRequirement" placeholder="请选择包装要求" style="width: 100%">
<el-option label="裸包" value="裸包" />
<el-option label="普包" value="普包" />
<el-option label="简包" value="简包" />
</el-select>
</el-form-item>
</el-col>
</el-row>
@@ -253,6 +262,7 @@ export default {
CoilSelector,
MemoInput
},
dicts: ['coil_quality_status'],
data() {
return {
pendingActions: [],
@@ -307,7 +317,7 @@ export default {
getItemLabel() {
if (this.form.materialType === '成品') {
return '产品类型';
} else if (this.form.materialType === '原料' || this.form.materialType === '废品') {
} else if (this.form.materialType === '原料') {
return '原料类型';
}
return '物品类型';
@@ -325,7 +335,7 @@ export default {
// 根据材料类型设置物品类型
if (value === '成品') {
this.form.itemType = 'product';
} else if (value === '原料' || value === '废品') {
} else if (value === '原料') {
this.form.itemType = 'raw_material';
}
},

View File

@@ -36,7 +36,7 @@
<el-col :span="12">
<el-form-item label="实际库区" prop="actualWarehouseId">
<actual-warehouse-select v-model="form.actualWarehouseId" placeholder="请选择实际库区" style="width: 100%;"
clearable :showEmpty="true" />
clearable :showEmpty="true" :canSelectDisabled="true" />
</el-form-item>
</el-col>
<el-col :span="12">
@@ -60,7 +60,6 @@
<el-select v-model="form.materialType" placeholder="请选择材料类型" @change="handleMaterialTypeChange">
<el-option label="成品" value="成品" />
<el-option label="原料" value="原料" />
<el-option label="废品" value="废品" />
</el-select>
</el-form-item>
</el-col>
@@ -73,12 +72,12 @@
</el-col>
</el-row>
<el-row v-if="form.materialType === '成品'">
<el-row>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-form-item label="质量状态" prop="qualityStatus">
<el-select v-model="form.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="A-" value="A-" />
<el-option label="B+" value="B+" />
@@ -86,12 +85,13 @@
<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-option label="C-" value="C-" /> -->
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="切边要求" prop="trimmingRequirement">
<el-form-item label="切边要求" prop="trimmingRequirement">
<el-select v-model="form.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%"
:disabled="readonly">
<el-option label="净边料" value="净边料" />
@@ -100,13 +100,13 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="打包状态" prop="packingStatus">
<el-form-item label="打包状态" prop="packingStatus">
<el-input v-model="form.packingStatus" placeholder="请输入打包状态">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="包装要求" prop="packagingRequirement">
<el-form-item label="包装要求" prop="packagingRequirement">
<el-select v-model="form.packagingRequirement" placeholder="请选择包装要求" style="width: 100%"
:disabled="readonly">
<el-option label="裸包" value="裸包" />
@@ -304,6 +304,7 @@ export default {
ProductSelect,
RawMaterialSelect,
},
dicts: ['coil_quality_status'],
data() {
return {
// 物料列表相关
@@ -364,7 +365,7 @@ export default {
getItemLabel() {
if (this.form.materialType === '成品') {
return '产品类型';
} else if (this.form.materialType === '原料' || this.form.materialType === '废品') {
} else if (this.form.materialType === '原料') {
return '原料类型';
}
return '物品类型';
@@ -424,7 +425,7 @@ export default {
// 根据材料类型设置物品类型
if (value === '成品') {
this.form.itemType = 'product';
} else if (value === '原料' || value === '废品') {
} else if (value === '原料') {
this.form.itemType = 'raw_material';
}
},

View File

@@ -60,7 +60,6 @@
<el-select v-model="form.materialType" placeholder="请选择材料类型" @change="handleMaterialTypeChange">
<el-option label="成品" value="成品" />
<el-option label="原料" value="原料" />
<el-option label="废品" value="废品" />
</el-select>
</el-form-item>
</el-col>
@@ -75,27 +74,27 @@
</el-col>
</el-row>
<el-row v-if="form.materialType === '成品'">
<el-row>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-form-item label="质量状态" prop="qualityStatus">
<el-input v-model="form.qualityStatus" placeholder="请输入质量状态" :disabled="readonly">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="切边要求" prop="trimmingRequirement">
<el-form-item label="切边要求" prop="trimmingRequirement">
<el-input v-model="form.trimmingRequirement" placeholder="请输入切边要求" :disabled="readonly">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="打包状态" prop="packingStatus">
<el-form-item label="打包状态" prop="packingStatus">
<el-input v-model="form.packingStatus" placeholder="请输入打包状态" :disabled="readonly">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-if="form.materialType === '成品'" label="包装要求" prop="packagingRequirement">
<el-form-item label="包装要求" prop="packagingRequirement">
<el-input v-model="form.packagingRequirement" placeholder="请输入包装要求" :disabled="readonly">
</el-input>
</el-form-item>
@@ -268,7 +267,7 @@ export default {
getItemLabel() {
if (this.form.materialType === '成品') {
return '产品类型';
} else if (this.form.materialType === '原料' || this.form.materialType === '废品') {
} else if (this.form.materialType === '原料') {
return '原料类型';
}
return '物品类型';
@@ -286,7 +285,7 @@ export default {
// 根据材料类型设置物品类型
if (value === '成品') {
this.form.itemType = 'product';
} else if (value === '原料' || value === '废品') {
} else if (value === '原料') {
this.form.itemType = 'raw_material';
}
},

View File

@@ -60,10 +60,10 @@
<el-row v-if="form.materialType === '成品'">
<el-col :span="24">
<el-form-item v-if="form.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-form-item label="质量状态" prop="qualityStatus">
<el-select v-model="form.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="A-" value="A-" />
<el-option label="B+" value="B+" />
@@ -71,12 +71,13 @@
<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-option label="C-" value="C-" /> -->
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item v-if="form.materialType === '成品'" label="切边要求" prop="trimmingRequirement">
<el-form-item label="切边要求" prop="trimmingRequirement">
<el-select v-model="form.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%"
:disabled="readonly">
<el-option label="净边料" value="净边料" />
@@ -85,13 +86,13 @@
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item v-if="form.materialType === '成品'" label="打包状态" prop="packingStatus">
<el-form-item label="打包状态" prop="packingStatus">
<el-input v-model="form.packingStatus" placeholder="请输入打包状态">
</el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item v-if="form.materialType === '成品'" label="包装要求" prop="packagingRequirement">
<el-form-item label="包装要求" prop="packagingRequirement">
<el-select v-model="form.packagingRequirement" placeholder="请选择包装要求" style="width: 100%"
:disabled="readonly">
<el-option label="裸包" value="裸包" />
@@ -126,7 +127,6 @@
<el-select v-model="form.materialType" placeholder="请选择材料类型" @change="handleMaterialTypeChange">
<el-option label="成品" value="成品" />
<el-option label="原料" value="原料" />
<el-option label="废品" value="废品" />
</el-select>
</el-form-item>
</el-col>
@@ -273,20 +273,19 @@
<el-select v-model="editCoil.form.materialType" placeholder="请选择材料类型" @change="handleMaterialTypeChange">
<el-option label="成品" value="成品" />
<el-option label="原料" value="原料" />
<el-option label="废品" value="废品" />
</el-select>
</el-form-item>
<el-form-item :label="getItemLabel" prop="itemId">
<product-select v-if="editCoil.form.itemType == 'product' && editCoil.form.materialType === '成品'" v-model="editCoil.form.itemId" placeholder="请选择成品"
style="width: 100%;" clearable />
<raw-material-select v-else-if="editCoil.form.itemType == 'raw_material' && (editCoil.form.materialType === '原料' || editCoil.form.materialType === '废品')" v-model="editCoil.form.itemId"
<raw-material-select v-else-if="editCoil.form.itemType == 'raw_material' && (editCoil.form.materialType === '原料')" v-model="editCoil.form.itemId"
placeholder="请选择原料" style="width: 100%;" clearable />
<div v-else>请先选择材料类型</div>
</el-form-item>
<el-form-item v-if="editCoil.form.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-form-item label="质量状态" prop="qualityStatus">
<el-select v-model="editCoil.form.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="A-" value="A-" />
<el-option label="B+" value="B+" />
@@ -294,11 +293,12 @@
<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-option label="C-" value="C-" /> -->
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item v-if="editCoil.form.materialType === '成品'" label="切边要求" prop="trimmingRequirement">
<el-form-item label="切边要求" prop="trimmingRequirement">
<el-select v-model="editCoil.form.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%"
:disabled="readonly">
<el-option label="净边料" value="净边料" />
@@ -306,12 +306,12 @@
</el-select>
</el-form-item>
<el-form-item v-if="editCoil.form.materialType === '成品'" label="打包状态" prop="packingStatus">
<el-form-item label="打包状态" prop="packingStatus">
<el-input v-model="editCoil.form.packingStatus" placeholder="请输入打包状态" :disabled="readonly">
</el-input>
</el-form-item>
<el-form-item v-if="editCoil.form.materialType === '成品'" label="包装要求" prop="packagingRequirement">
<el-form-item label="包装要求" prop="packagingRequirement">
<el-select v-model="editCoil.form.packagingRequirement" placeholder="请选择包装要求" style="width: 100%"
:disabled="readonly">
<el-option label="裸包" value="裸包" />
@@ -366,6 +366,7 @@ export default {
LabelRender,
CoilNo,
},
dicts: ['coil_quality_status'],
data() {
return {
pendingActions: [],
@@ -502,7 +503,7 @@ export default {
getItemLabel() {
if (this.form.materialType === '成品') {
return '产品类型';
} else if (this.form.materialType === '原料' || this.form.materialType === '废品') {
} else if (this.form.materialType === '原料') {
return '原料类型';
}
return '物品类型';
@@ -516,7 +517,7 @@ export default {
// 根据材料类型设置物品类型
if (value === '成品') {
this.form.itemType = 'product';
} else if (value === '原料' || value === '废品') {
} else if (value === '原料') {
this.form.itemType = 'raw_material';
}
},
@@ -526,7 +527,7 @@ export default {
// 根据材料类型设置物品类型
if (value === '成品') {
this.editCoil.form.itemType = 'product';
} else if (value === '原料' || value === '废品') {
} else if (value === '原料') {
this.editCoil.form.itemType = 'raw_material';
}
},

View File

@@ -137,30 +137,21 @@
:disabled="readonly" @change="handleMaterialTypeChange">
<el-option label="原料" value="原料" />
<el-option label="成品" value="成品" />
<el-option label="废品" value="废品" />
</el-select>
</el-form-item>
<!-- 物品类型由材料类型自动联动隐藏此选择框 -->
<el-form-item v-if="targetCoil.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-form-item label="质量状态" prop="qualityStatus">
<!-- <el-input v-model="targetCoil.qualityStatus"
placeholder="请输入质量状态" :disabled="readonly">
</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-option v-for="item in dict.type.coil_quality_status" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item v-if="targetCoil.materialType === '成品'" label="切边要求" prop="trimmingRequirement">
<el-form-item label="切边要求" prop="trimmingRequirement">
<el-select v-model="targetCoil.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%"
:disabled="readonly">
<el-option label="净边料" value="净边料" />
@@ -171,12 +162,12 @@
</el-input> -->
</el-form-item>
<el-form-item v-if="targetCoil.materialType === '成品'" label="打包状态" prop="packingStatus">
<el-form-item label="打包状态" prop="packingStatus">
<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-form-item label="包装要求" prop="packagingRequirement">
<el-select v-model="targetCoil.packagingRequirement" placeholder="请选择包装要求" style="width: 100%"
:disabled="readonly">
<el-option label="裸包" value="裸包" />
@@ -189,7 +180,7 @@
</el-form-item>
<el-form-item :label="getItemLabel">
<raw-material-selector v-if="targetCoil.materialType === '原料' || targetCoil.materialType === '废品'"
<raw-material-selector v-if="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"
@@ -267,6 +258,7 @@ export default {
ProductSelector,
WarehouseSelect
},
dicts: ['coil_quality_status'],
data() {
return {
// 源卷列表
@@ -312,7 +304,7 @@ export default {
getItemLabel() {
if (this.targetCoil.materialType === '成品') {
return '产品类型';
} else if (this.targetCoil.materialType === '原料' || this.targetCoil.materialType === '废品') {
} else if (this.targetCoil.materialType === '原料') {
return '原料类型';
}
return '物品';
@@ -323,8 +315,6 @@ export default {
return '请选择产品类型';
} else if (this.targetCoil.materialType === '原料') {
return '请选择原料类型';
} else if (this.targetCoil.materialType === '废品') {
return '请选择原料类型(非必填)';
}
return '请先选择材料类型';
},

View File

@@ -127,7 +127,7 @@
<el-table-column v-if="showGrade" label="质量状态" align="center" prop="qualityStatus">
<template slot-scope="scope">
<el-select v-model="scope.row.qualityStatus" placeholder="请选择质量状态" @change="handleGradeChange(scope.row)">
<el-option v-for="item in qualityStatusEnum" :key="item.value" :value="item.value" :label="item.label" />
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :value="item.value" :label="item.label" />
</el-select>
</template>
</el-table-column>
@@ -191,7 +191,6 @@
<el-select v-model="form.materialType" placeholder="请选择材料类型" @change="handleMaterialTypeChange">
<el-option label="成品" value="成品" />
<el-option label="原料" value="原料" />
<el-option label="废品" value="废品" />
</el-select>
</el-form-item>
<el-form-item :label="getItemLabel" prop="itemId">
@@ -201,33 +200,25 @@
style="width: 100%;" clearable />
<div v-else>请先选择材料类型</div>
</el-form-item>
<el-form-item v-if="form.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-form-item label="质量状态" prop="qualityStatus">
<el-select v-model="form.qualityStatus" placeholder="请选择质量状态" style="width: 100%">
<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-option v-for="item in dict.type.coil_quality_status" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item v-if="form.materialType === '成品'" label="切边要求" prop="trimmingRequirement">
<el-form-item label="切边要求" prop="trimmingRequirement">
<el-select v-model="form.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%">
<el-option label="净边料" value="净边料" />
<el-option label="毛边料" value="毛边料" />
</el-select>
</el-form-item>
<el-form-item v-if="form.materialType === '成品'" label="打包状态" prop="packingStatus">
<el-form-item label="打包状态" prop="packingStatus">
<el-input v-model="form.packingStatus" placeholder="请输入打包状态">
</el-input>
</el-form-item>
<el-form-item v-if="form.materialType === '成品'" label="包装要求" prop="packagingRequirement">
<el-form-item label="包装要求" prop="packagingRequirement">
<el-select v-model="form.packagingRequirement" placeholder="请选择包装要求" style="width: 100%">
<el-option label="裸包" value="裸包" />
<el-option label="普包" value="普包" />
@@ -340,7 +331,7 @@ export default {
MutiSelect,
OuterTagPreview,
},
dicts: ['product_coil_status', 'coil_material', 'coil_itemname', 'coil_manufacturer'],
dicts: ['product_coil_status', 'coil_material', 'coil_itemname', 'coil_manufacturer', 'coil_quality_status'],
props: {
qrcode: {
type: Boolean,
@@ -403,6 +394,9 @@ export default {
{ label: 'C+', value: 'C+' },
{ label: 'C', value: 'C' },
{ label: 'C-', value: 'C-' },
{ label: 'D+', value: 'D+' },
{ label: 'D', value: 'D' },
{ label: 'D-', value: 'D-' },
],
// 按钮loading
buttonLoading: false,
@@ -567,7 +561,7 @@ export default {
getItemLabel() {
if (this.form.materialType === '成品') {
return '产品类型';
} else if (this.form.materialType === '原料' || this.form.materialType === '废品') {
} else if (this.form.materialType === '原料') {
return '原料类型';
}
return '物品类型';
@@ -606,7 +600,7 @@ export default {
// 根据材料类型设置物品类型
if (value === '成品') {
this.form.itemType = 'product';
} else if (value === '原料' || value === '废品') {
} else if (value === '原料') {
this.form.itemType = 'raw_material';
}
},
@@ -759,7 +753,7 @@ export default {
// 同时设置对应的 itemType
if (this.querys.materialType === '成品') {
this.form.itemType = 'product';
} else if (this.querys.materialType === '原料' || this.querys.materialType === '废品') {
} else if (this.querys.materialType === '原料') {
this.form.itemType = 'raw_material';
}
}
@@ -792,7 +786,7 @@ export default {
// 同时设置对应的 itemType
if (this.querys.materialType === '成品') {
this.form.itemType = 'product';
} else if (this.querys.materialType === '原料' || this.querys.materialType === '废品') {
} else if (this.querys.materialType === '原料') {
this.form.itemType = 'raw_material';
}
}
@@ -834,7 +828,7 @@ export default {
// 同时设置对应的 itemType
if (this.querys.materialType === '成品') {
this.form.itemType = 'product';
} else if (this.querys.materialType === '原料' || this.querys.materialType === '废品') {
} else if (this.querys.materialType === '原料') {
this.form.itemType = 'raw_material';
}
}

View File

@@ -107,6 +107,22 @@
</div>
<div class="param-divider"></div>
<div class="param-item">
<div class="param-row" v-if="item.qualityStatus">
<span class="param-label">质量状态</span>
<span class="param-value">{{ item.qualityStatus }}</span>
</div>
<div class="param-row" v-if="item.trimmingRequirement">
<span class="param-label">切边要求</span>
<span class="param-value">{{ item.trimmingRequirement }}</span>
</div>
<div class="param-row" v-if="item.packingStatus">
<span class="param-label">打包状态</span>
<span class="param-value">{{ item.packingStatus }}</span>
</div>
<div class="param-row" v-if="item.packagingRequirement">
<span class="param-label">包装要求</span>
<span class="param-value">{{ item.packagingRequirement }}</span>
</div>
<div class="param-row" v-if="item.grossWeight">
<span class="param-label">毛重</span>
<span class="param-value">{{ item.grossWeight }}t</span>

View File

@@ -13,10 +13,9 @@ export default {
return {
qrcode: false,
querys: {
// itemType: 'rubbish',
dataType: 1,
materialType: '废品'
// warehouseId: 111,
OnlyScrap: true,
// materialType: '废品'
},
hideWarehouseQuery: true,
labelType: '2',

View File

@@ -119,14 +119,13 @@
@change="handleMaterialTypeChange(item, index)">
<el-option label="原料" value="原料" />
<el-option label="成品" value="成品" />
<el-option label="废品" value="废品" />
</el-select>
</el-form-item>
<el-form-item v-if="item.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-form-item label="质量状态" prop="qualityStatus">
<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="A-" value="A-" />
<el-option label="B+" value="B+" />
@@ -134,11 +133,12 @@
<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-option label="C-" value="C-" /> -->
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item v-if="item.materialType === '成品'" label="切边要求" prop="trimmingRequirement">
<el-form-item label="切边要求" prop="trimmingRequirement">
<el-select v-model="item.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%"
:disabled="readonly">
<el-option label="净边料" value="净边料" />
@@ -148,12 +148,12 @@
</el-input> -->
</el-form-item>
<el-form-item v-if="item.materialType === '成品'" label="打包状态" prop="packingStatus">
<el-form-item label="打包状态" prop="packingStatus">
<el-input v-model="item.packingStatus" placeholder="请输入打包状态" :disabled="readonly">
</el-input>
</el-form-item>
<el-form-item v-if="item.materialType === '成品'" label="包装要求" prop="packagingRequirement">
<el-form-item label="包装要求" prop="packagingRequirement">
<el-select v-model="item.packagingRequirement" placeholder="请选择包装要求" style="width: 100%"
:disabled="readonly">
<el-option label="裸包" value="裸包" />
@@ -165,8 +165,8 @@
</el-form-item>
<!-- 物品类型由材料类型自动决定不显示选择框 -->
<el-form-item :label="getItemLabel(item.materialType)" :required="item.materialType !== '废品'">
<raw-material-select v-if="item.materialType === '原料' || item.materialType === '废品'"
<el-form-item :label="getItemLabel(item.materialType)">
<raw-material-select v-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="请选择成品"
@@ -243,6 +243,7 @@ export default {
ProductSelect,
WarehouseSelect,
},
dicts: ['coil_quality_status'],
data() {
return {
// 母卷信息
@@ -330,7 +331,7 @@ export default {
this.$set(item, 'itemType', 'product');
// 清空列表,等待用户搜索
this.productList = [];
} else if (item.materialType === '原料' || item.materialType === '废品') {
} else if (item.materialType === '原料') {
this.$set(item, 'itemType', 'raw_material');
// 清空列表,等待用户搜索
this.rawMaterialList = [];
@@ -341,7 +342,7 @@ export default {
getItemLabel(materialType) {
if (materialType === '成品') {
return '产品类型';
} else if (materialType === '原料' || materialType === '废品') {
} else if (materialType === '原料') {
return '原料类型';
}
return '物品';
@@ -352,8 +353,6 @@ export default {
return '请选择产品类型';
} else if (materialType === '原料') {
return '请选择原料类型';
} else if (materialType === '废品') {
return '请选择原料类型(非必填)';
}
return '请先选择材料类型';
},

View File

@@ -103,19 +103,16 @@
:disabled="readonly" @change="handleMaterialTypeChange">
<el-option label="原料" value="原料" />
<el-option label="成品" value="成品" />
<el-option label="废品" value="废品" />
</el-select>
</el-form-item>
<!-- 物品类型由材料类型自动决定不显示选择框 -->
<el-form-item v-if="updateForm.materialType === '成品'" label="质量状态" prop="qualityStatus">
<el-form-item label="质量状态" prop="qualityStatus">
<!-- <el-input v-model="updateForm.qualityStatus" placeholder="请输入质量状态"
:disabled="readonly">
</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="A-" value="A-" />
<el-option label="B+" value="B+" />
@@ -123,11 +120,12 @@
<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-option label="C-" value="C-" /> -->
<el-option v-for="item in dict.type.coil_quality_status" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
</el-form-item>
<el-form-item v-if="updateForm.materialType === '成品'" label="切边要求" prop="qualityStatus">
<el-form-item label="切边要求" prop="trimmingRequirement">
<el-select v-model="updateForm.trimmingRequirement" placeholder="请选择切边要求" style="width: 100%"
:disabled="readonly">
<el-option label="净边料" value="净边料" />
@@ -138,26 +136,23 @@
</el-input> -->
</el-form-item>
<el-form-item v-if="updateForm.materialType === '成品'" label="打包状态" prop="qualityStatus">
<el-form-item label="打包状态" prop="packingStatus">
<el-input v-model="updateForm.packingStatus" placeholder="请输入打包状态"
:disabled="readonly">
</el-input>
</el-form-item>
<el-form-item v-if="updateForm.materialType === '成品'" label="包装要求" prop="qualityStatus">
<el-form-item label="包装要求" prop="packagingRequirement">
<el-select v-model="updateForm.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="updateForm.packagingRequirement" placeholder="请输入包装要求"
:disabled="readonly">
</el-input> -->
</el-form-item>
<el-form-item :label="getItemLabel" :prop="updateForm.materialType === '废品' ? '' : 'itemId'"
:rules="updateForm.materialType === '废品' ? [] : rules.itemId">
<el-form-item :label="getItemLabel" prop="itemId"
:rules="rules.itemId">
<!-- <el-select v-model="updateForm.itemId" :placeholder="getItemPlaceholder" filterable remote
:remote-method="searchItems" :loading="itemSearchLoading" style="width: 100%"
:disabled="readonly || !updateForm.materialType">
@@ -278,6 +273,7 @@ export default {
ProductSelect,
WarehouseSelect,
},
dicts: ['coil_quality_status'],
data() {
return {
loading: false,
@@ -363,7 +359,7 @@ export default {
getItemLabel() {
if (this.updateForm.materialType === '成品') {
return '产品类型';
} else if (this.updateForm.materialType === '原料' || this.updateForm.materialType === '废品') {
} else if (this.updateForm.materialType === '原料') {
return '原料类型';
}
return '物品';
@@ -374,8 +370,6 @@ export default {
return '请选择产品类型';
} else if (this.updateForm.materialType === '原料') {
return '请选择原料类型';
} else if (this.updateForm.materialType === '废品') {
return '请选择原料类型(非必填)';
}
return '请先选择材料类型';
},
@@ -431,7 +425,7 @@ export default {
this.$set(this.updateForm, 'itemType', 'product');
// 清空列表,等待用户搜索
this.productList = [];
} else if (value === '原料' || value === '废品') {
} else if (value === '原料') {
this.$set(this.updateForm, 'itemType', 'raw_material');
// 清空列表,等待用户搜索
this.rawMaterialList = [];