🐞 fix: 修复原材料无法创建BOM
This commit is contained in:
@@ -114,9 +114,12 @@ export default {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
this.createLoading = true;
|
this.createLoading = true;
|
||||||
|
// 添加一个semi类型
|
||||||
|
const bomName = (this.type == 'product' ? '产品BOM' : (this.type == 'raw_material' ? '原材料BOM' : '半成品BOM')) + new Date().getTime();
|
||||||
|
const bomCode = (this.type == 'product' ? 'P' : (this.type == 'raw_material' ? 'R' : 'S')) + new Date().getTime();
|
||||||
const bomResponse = await addBom({
|
const bomResponse = await addBom({
|
||||||
bomName: (this.type == 'product' ? '产品BOM' : '原材料BOM') + new Date().getTime(),
|
bomName,
|
||||||
bomCode: (this.type == 'product' ? 'P' : 'R') + new Date().getTime()
|
bomCode
|
||||||
});
|
});
|
||||||
|
|
||||||
this.$message.success('创建BOM成功');
|
this.$message.success('创建BOM成功');
|
||||||
@@ -133,6 +136,11 @@ export default {
|
|||||||
rawMaterialId: this.itemId,
|
rawMaterialId: this.itemId,
|
||||||
bomId: bomData.bomId
|
bomId: bomData.bomId
|
||||||
});
|
});
|
||||||
|
} else if (this.type == 'semi' && this.itemId) {
|
||||||
|
await updateProduct({
|
||||||
|
productId: this.itemId,
|
||||||
|
bomId: bomData.bomId
|
||||||
|
});
|
||||||
}
|
}
|
||||||
this.$store.dispatch('category/getBomMap');
|
this.$store.dispatch('category/getBomMap');
|
||||||
|
|
||||||
|
|||||||
@@ -25,13 +25,13 @@
|
|||||||
<el-form ref="form" v-if="activeStep === 0" :model="addForm" :rules="rules" label-width="120px">
|
<el-form ref="form" v-if="activeStep === 0" :model="addForm" :rules="rules" label-width="120px">
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="原材料编号" prop="productCode">
|
<el-form-item label="原材料编号" prop="rawMaterialCode">
|
||||||
<el-input v-model="addForm.productCode" placeholder="请输入原材料编号" />
|
<el-input v-model="addForm.rawMaterialCode" placeholder="请输入原材料编号" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="原材料名称" prop="productName">
|
<el-form-item label="原材料名称" prop="rawMaterialName">
|
||||||
<el-input v-model="addForm.productName" placeholder="请输入原材料名称" />
|
<el-input v-model="addForm.rawMaterialName" placeholder="请输入原材料名称" />
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
@@ -60,13 +60,10 @@
|
|||||||
<script>
|
<script>
|
||||||
import { mapGetters } from "vuex";
|
import { mapGetters } from "vuex";
|
||||||
import { addRawMaterial } from '@/api/wms/rawMaterial';
|
import { addRawMaterial } from '@/api/wms/rawMaterial';
|
||||||
import { BomPanel } from '@/components/KLPService/BomPanel/index.vue';
|
import BomPanel from '../BomPanel/index.vue';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "RawMaterialSelect",
|
name: "RawMaterialSelect",
|
||||||
components: {
|
|
||||||
BomPanel
|
|
||||||
},
|
|
||||||
props: {
|
props: {
|
||||||
value: [String, null],
|
value: [String, null],
|
||||||
placeholder: {
|
placeholder: {
|
||||||
@@ -78,24 +75,27 @@ export default {
|
|||||||
default: false
|
default: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
components: {
|
||||||
|
BomPanel
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
options: [],
|
options: [],
|
||||||
selected: this.value,
|
selected: this.value,
|
||||||
loading: false,
|
loading: false,
|
||||||
addForm: {
|
addForm: {
|
||||||
productCode: undefined,
|
rawMaterialCode: undefined,
|
||||||
productName: undefined,
|
rawMaterialName: undefined,
|
||||||
owner: undefined,
|
owner: undefined,
|
||||||
unit: undefined,
|
unit: undefined,
|
||||||
type: 'raw'
|
type: 'raw_material'
|
||||||
},
|
},
|
||||||
addDialogVisible: false,
|
addDialogVisible: false,
|
||||||
rules: {
|
rules: {
|
||||||
productCode: [
|
rawMaterialCode: [
|
||||||
{ required: true, message: "原材料编号不能为空", trigger: "blur" }
|
{ required: true, message: "原材料编号不能为空", trigger: "blur" }
|
||||||
],
|
],
|
||||||
productName: [
|
rawMaterialName: [
|
||||||
{ required: true, message: "原材料名称不能为空", trigger: "blur" }
|
{ required: true, message: "原材料名称不能为空", trigger: "blur" }
|
||||||
],
|
],
|
||||||
owner: [
|
owner: [
|
||||||
@@ -104,7 +104,7 @@ export default {
|
|||||||
},
|
},
|
||||||
buttonLoading: false,
|
buttonLoading: false,
|
||||||
itemId: undefined,
|
itemId: undefined,
|
||||||
activeStep: 0,
|
activeStep: 1,
|
||||||
bomId: undefined,
|
bomId: undefined,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@@ -130,11 +130,11 @@ export default {
|
|||||||
add() {
|
add() {
|
||||||
this.addDialogVisible = true;
|
this.addDialogVisible = true;
|
||||||
this.addForm = {
|
this.addForm = {
|
||||||
productCode: undefined,
|
rawMaterialCode: undefined,
|
||||||
productName: undefined,
|
rawMaterialName: undefined,
|
||||||
owner: undefined,
|
owner: undefined,
|
||||||
unit: undefined,
|
unit: undefined,
|
||||||
type: 'raw'
|
type: 'raw_material'
|
||||||
};
|
};
|
||||||
this.bomId = undefined;
|
this.bomId = undefined;
|
||||||
this.itemId = undefined;
|
this.itemId = undefined;
|
||||||
@@ -163,11 +163,11 @@ export default {
|
|||||||
cancel() {
|
cancel() {
|
||||||
this.addDialogVisible = false;
|
this.addDialogVisible = false;
|
||||||
this.addForm = {
|
this.addForm = {
|
||||||
productCode: undefined,
|
rawMaterialCode: undefined,
|
||||||
productName: undefined,
|
rawMaterialName: undefined,
|
||||||
owner: undefined,
|
owner: undefined,
|
||||||
unit: undefined,
|
unit: undefined,
|
||||||
type: 'raw'
|
type: 'raw_material'
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="position: relative;">
|
<div style="position: relative;">
|
||||||
<!-- 录入二维码列表 -->
|
<!-- 录入二维码列表 -->
|
||||||
<el-form inline>
|
<el-form inline style="position: relative;">
|
||||||
<el-form-item label="物料类型">
|
<el-form-item label="物料类型">
|
||||||
<el-select v-model="itemType" placeholder="请选择物料类型" clearable>
|
<el-select v-model="itemType" placeholder="请选择物料类型" clearable>
|
||||||
<el-option v-for="dict in dict.type.stock_item_type" :key="dict.value" :label="dict.label"
|
<el-option v-for="dict in dict.type.stock_item_type" :key="dict.value" :label="dict.label"
|
||||||
@@ -19,7 +19,6 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
|
||||||
|
|
||||||
<div class="print-container" v-loading="loading">
|
<div class="print-container" v-loading="loading">
|
||||||
<BarCode :barcodes="drawerBarcodeData" @delete="handleDelete" />
|
<BarCode :barcodes="drawerBarcodeData" @delete="handleDelete" />
|
||||||
</div>
|
</div>
|
||||||
@@ -67,8 +66,4 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.print-container {
|
|
||||||
margin-top: 20px;
|
|
||||||
padding: 20px;
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
Reference in New Issue
Block a user