feat: 添加钢卷镀层种类枚举并优化原材料选择组件

- 在stepSplit.vue表格中添加净重列
- 全局注册MemoInput组件
- 在CoilNo.vue中显示净重和厂家卷号
- 将RawMaterialSelect和ProductSelect中的输入框替换为MemoInput组件
- 为原材料和产品添加默认计量单位"卷"
This commit is contained in:
砂糖
2026-03-03 17:36:18 +08:00
parent 07e982b736
commit 66c41f42e1
5 changed files with 36 additions and 19 deletions

View File

@@ -103,35 +103,34 @@
</el-form-item> -->
<el-form-item label="产品名称" prop="productName">
<el-input v-model="form.productName" placeholder="请输入产品名称" />
<MemoInput storageKey="productName" v-model="form.productName" placeholder="请输入产品名称" />
</el-form-item>
<!-- <el-form-item label="负责人" prop="owner">
<el-input v-model="form.owner" :multiple="false" placeholder="请填写负责人" />
</el-form-item> -->
<el-form-item label="计量单位" prop="unit">
<!-- <el-form-item label="计量单位" prop="unit">
<el-input v-model="form.unit" placeholder="请输入计量单位" />
</el-form-item>
</el-form-item> -->
<el-form-item label="规格" prop="specification">
<el-input v-model="form.specification" placeholder="请输入规格" />
<MemoInput storageKey="coilSpec" v-model="form.specification" placeholder="请输入规格" />
</el-form-item>
<el-form-item label="材质" prop="material">
<el-input v-model="form.material" placeholder="请输入材质" />
<MemoInput storageKey="material" v-model="form.material" placeholder="请输入材质" />
</el-form-item>
<el-form-item label="厂家" prop="manufacturer">
<el-input v-model="form.manufacturer" placeholder="请输入厂家" />
<MemoInput storageKey="manufacturer" v-model="form.manufacturer" placeholder="请输入厂家" />
</el-form-item>
<el-form-item label="表面处理" prop="surfaceTreatmentDesc">
<el-input v-model="form.surfaceTreatmentDesc" placeholder="请输入表面处理" />
<MemoInput storageKey="surfaceTreatmentDesc" v-model="form.surfaceTreatmentDesc" placeholder="请输入表面处理" />
</el-form-item>
<el-form-item label="镀层质量" prop="zincLayer">
<el-input v-model="form.zincLayer" placeholder="请输入镀层质量" />
<MemoInput storageKey="zincLayer" v-model="form.zincLayer" placeholder="请输入镀层质量" />
</el-form-item>
</el-form>
@@ -359,6 +358,7 @@ export default {
} else {
addProduct({
...this.form,
unit: '卷',
productCode: this.form.material || '' + (this.form.zincLayer || '') + new Date().getTime(),
}).then(response => {
this.$modal.msgSuccess("新增成功");

View File

@@ -98,28 +98,25 @@
<el-input v-model="form.rawMaterialCode" placeholder="请输入原材料编号" />
</el-form-item> -->
<el-form-item label="原材料名称" prop="rawMaterialName">
<el-input v-model="form.rawMaterialName" placeholder="请输入原材料名称" />
<MemoInput storageKey="productName" v-model="form.rawMaterialName" placeholder="请输入原材料名称" />
</el-form-item>
<el-form-item label="规格" prop="specification">
<el-input v-model="form.specification" placeholder="请输入规格" />
<MemoInput storageKey="coilSpec" v-model="form.specification" placeholder="请输入规格" />
</el-form-item>
<el-form-item label="计量单位" prop="unit">
<el-input v-model="form.unit" placeholder="请输入计量单位" />
</el-form-item>
<el-form-item label="材质" prop="material">
<el-input v-model="form.material" placeholder="请输入材质" />
<el-form-item label="材质" prop="material">
<MemoInput storageKey="material" v-model="form.material" placeholder="请输入材质" />
</el-form-item>
<el-form-item label="厂家" prop="manufacturer">
<el-input v-model="form.manufacturer" placeholder="请输入厂家" />
<MemoInput storageKey="manufacturer" v-model="form.manufacturer" placeholder="请输入厂家" />
</el-form-item>
<el-form-item label="表面处理" prop="surfaceTreatmentDesc">
<el-input v-model="form.surfaceTreatmentDesc" placeholder="请输入表面处理" />
<MemoInput storageKey="surfaceTreatmentDesc" v-model="form.surfaceTreatmentDesc" placeholder="请输入表面处理" />
</el-form-item>
<el-form-item label="镀层质量" prop="zincLayer">
<el-input v-model="form.zincLayer" placeholder="请输入镀层质量" />
<MemoInput storageKey="zincLayer" v-model="form.zincLayer" placeholder="请输入镀层质量" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@@ -316,6 +313,7 @@ export default {
} else {
addRawMaterial({
...this.form,
unit: '卷',
rawMaterialCode: this.form.material || '' + (this.form.zincLayer || '') + new Date().getTime(),
}).then(response => {
this.$modal.msgSuccess("新增成功");

View File

@@ -26,6 +26,14 @@
{{ specification }}
</span>
</div>
<div class="info-item">
<span class="label">净重</span>
<span class="value">{{ netWeight }}</span>
</div>
<div class="info-item">
<span class="label">厂家卷号</span>
<span class="value">{{ supplierCoilNo }}</span>
</div>
</div>
<el-tag type="info" size="small" slot="reference">{{ currentCoilNo }}</el-tag>
@@ -73,6 +81,12 @@ export default {
},
currentCoilNo() {
return this.coilNo || this.coilInfo?.currentCoilNo || '-'
},
netWeight() {
return this.coilInfo.netWeight || '-'
},
supplierCoilNo() {
return this.coilInfo.supplierCoilNo || '-'
}
},
methods: {

View File

@@ -45,6 +45,9 @@ import VueMeta from 'vue-meta'
// 字典数据组件
import DictData from '@/components/DictData'
import KLPTable from '@/components/KLPUI/KLPTable/index.vue'
import MemoInput from '@/components/MemoInput/index.vue'
// 全局方法挂载
Vue.prototype.getDicts = getDicts
@@ -68,6 +71,7 @@ Vue.component('FileUpload', FileUpload)
Vue.component('ImageUpload', ImageUpload)
Vue.component('ImagePreview', ImagePreview)
Vue.component('KLPTable', KLPTable)
Vue.component('MemoInput', MemoInput)
Vue.use(vueFlvPlayer)
Vue.use(directive)

View File

@@ -38,6 +38,7 @@
highlight-current-row border stripe>
<el-table-column prop="currentCoilNo" label="当前钢卷号" />
<el-table-column prop="materialType" label="材料类型" />
<el-table-column prop="netWeight" label="净重" />
<el-table-column prop="dataType" label="钢卷状态">
<template #default="scope">
<div v-if="scope.row.status == 1">