|
|
@@ -64,8 +64,12 @@
|
|
|
<!-- 产品类别 -->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="产品类别" name="product_category">
|
|
|
+ <!-- 非空值,或者为制造bom时 -->
|
|
|
<el-select
|
|
|
- :disabled="!!originFormData?.erp_code && !isEmpty"
|
|
|
+ :disabled="
|
|
|
+ (!!originFormData?.erp_code && !isEmpty) ||
|
|
|
+ (!!originFormData?.erp_code && type === '2')
|
|
|
+ "
|
|
|
v-model="formData.product_category"
|
|
|
placeholder="请选择"
|
|
|
>
|
|
|
@@ -87,6 +91,7 @@
|
|
|
<el-form-item label="制造工艺" name="process">
|
|
|
<el-select
|
|
|
v-model="formData.process"
|
|
|
+ :disabled="!!originFormData?.erp_code"
|
|
|
placeholder="请选择"
|
|
|
>
|
|
|
<el-option
|
|
|
@@ -105,14 +110,22 @@
|
|
|
<!-- 材料牌号 -->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="材料牌号" name="material_grade">
|
|
|
- <el-input placeholder="请输入" v-model="formData.material_grade" />
|
|
|
+ <el-input
|
|
|
+ :disabled="!!originFormData?.erp_code"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.material_grade"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 材料供应商 -->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="材料供应商" name="supplier">
|
|
|
- <el-input placeholder="请输入" v-model="formData.supplier" />
|
|
|
+ <el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.supplier"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
@@ -120,6 +133,7 @@
|
|
|
<el-col :span="12"
|
|
|
><el-form-item label="标准用量" name="qty">
|
|
|
<el-input-number
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
class="inline-block w-full!"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.qty"
|
|
|
@@ -128,10 +142,13 @@
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 制造区域 -->
|
|
|
- <el-col :span="12" v-if="type == '2'">
|
|
|
+ <el-col :span="12">
|
|
|
<el-form-item label="制造区域" prop="manufacture_area">
|
|
|
<el-select
|
|
|
- :disabled="!!originFormData?.erp_code && !isEmpty"
|
|
|
+ :disabled="
|
|
|
+ (!!originFormData?.erp_code && !isEmpty) ||
|
|
|
+ (!!originFormData?.erp_code && type === '1')
|
|
|
+ "
|
|
|
v-model="formData.manufacture_area"
|
|
|
placeholder="请选择"
|
|
|
>
|
|
|
@@ -149,10 +166,13 @@
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 制造单元 -->
|
|
|
- <el-col :span="12" v-if="type == '2'">
|
|
|
+ <el-col :span="12">
|
|
|
<el-form-item label="制造单元" prop="manufacture_report">
|
|
|
<el-select
|
|
|
- :disabled="!!originFormData?.erp_code && !isEmpty"
|
|
|
+ :disabled="
|
|
|
+ (!!originFormData?.erp_code && !isEmpty) ||
|
|
|
+ (!!originFormData?.erp_code && type === '1')
|
|
|
+ "
|
|
|
v-model="formData.manufacture_report"
|
|
|
placeholder="请选择"
|
|
|
>
|
|
|
@@ -172,7 +192,7 @@
|
|
|
<!-- NK零件名称 -->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="NK零件名称" prop="part_name">
|
|
|
- <el-input placeholder="请输入" v-model="formData.part_name" />
|
|
|
+ <el-input placeholder="请输入" :disabled="!!originFormData?.erp_code" v-model="formData.part_name" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
@@ -188,14 +208,20 @@
|
|
|
<el-button
|
|
|
type="text"
|
|
|
:icon="CirclePlus"
|
|
|
- :disabled="layerIndex === 1 || (!!originFormData?.erp_code && !isEmpty) || erpCodeDisabled"
|
|
|
+ :disabled="
|
|
|
+ layerIndex === 1 ||
|
|
|
+ (!!originFormData?.erp_code && !isEmpty) ||
|
|
|
+ erpCodeDisabled
|
|
|
+ "
|
|
|
@click="openRecomendModal"
|
|
|
>
|
|
|
推荐
|
|
|
</el-button>
|
|
|
<el-button
|
|
|
type="text"
|
|
|
- :disabled="(!!originFormData?.erp_code && !isEmpty) || erpCodeDisabled"
|
|
|
+ :disabled="
|
|
|
+ (!!originFormData?.erp_code && !isEmpty) || erpCodeDisabled
|
|
|
+ "
|
|
|
@click="handleGenratorErpCode"
|
|
|
>
|
|
|
生成
|
|
|
@@ -261,15 +287,24 @@
|
|
|
<!-- 配置比 -->
|
|
|
<el-col :span="12" v-if="type == '1'">
|
|
|
<el-form-item label="配置比" name="config_ratio">
|
|
|
- <el-input placeholder="请输入" v-model="formData.config_ratio" />
|
|
|
+ <el-input-number
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.config_ratio"
|
|
|
+ style="width: 100%;"
|
|
|
+ >
|
|
|
+ <template #suffix>
|
|
|
+ <span>%</span>
|
|
|
+ </template>
|
|
|
+ </el-input-number>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 长宽高 -->
|
|
|
- <el-row :gutter="8" v-if="type == '1'">
|
|
|
+ <el-row :gutter="8">
|
|
|
<el-col :span="8"
|
|
|
><el-form-item label="长" name="length">
|
|
|
<el-input-number
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
class="inline-block w-full!"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.length"
|
|
|
@@ -279,6 +314,7 @@
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="宽" name="width">
|
|
|
<el-input-number
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
class="inline-block w-full!"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.width"
|
|
|
@@ -287,6 +323,7 @@
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="高" name="height">
|
|
|
<el-input-number
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
class="inline-block w-full!"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.height"
|
|
|
@@ -297,28 +334,41 @@
|
|
|
<!-- 颜色 -->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="颜色" name="color">
|
|
|
- <el-input placeholder="请输入" v-model="formData.color" />
|
|
|
+ <el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.color"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 光泽度 -->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="光泽度" name="color_config">
|
|
|
- <el-input placeholder="请输入" v-model="formData.color_config" />
|
|
|
+ <el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.color_config"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 计量单位 -->
|
|
|
<el-col :span="12"
|
|
|
><el-form-item label="计量单位" name="unit">
|
|
|
- <el-input placeholder="请输入" v-model="formData.unit" />
|
|
|
+ <el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.unit"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 工艺消耗 -->
|
|
|
- <el-col :span="12" v-if="type == '2'">
|
|
|
+ <el-col :span="12">
|
|
|
<el-form-item label="工艺消耗" name="technology_consume">
|
|
|
<el-input-number
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '1'"
|
|
|
class="inline-block w-full!"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.technology_consume"
|
|
|
@@ -327,18 +377,23 @@
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 不良率% -->
|
|
|
- <el-col :span="12" v-if="type == '2'">
|
|
|
+ <el-col :span="12">
|
|
|
<el-form-item label="不良率%" name="nonperform_rate">
|
|
|
<el-input-number
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '1'"
|
|
|
class="inline-block w-full!"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.nonperform_rate"
|
|
|
- />
|
|
|
+ >
|
|
|
+ <template #suffix>
|
|
|
+ <span>%</span>
|
|
|
+ </template>
|
|
|
+ </el-input-number>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 制造设备类(组) -->
|
|
|
- <el-col :span="12">
|
|
|
+ <el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="制造设备类(组)" prop="manufature_equip">
|
|
|
<el-input
|
|
|
placeholder="请输入"
|
|
|
@@ -348,7 +403,7 @@
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 模具/工装治具 -->
|
|
|
- <el-col :span="12">
|
|
|
+ <el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="模具/工装治具" prop="moldtooling_fixture">
|
|
|
<el-input
|
|
|
placeholder="请输入"
|
|
|
@@ -358,9 +413,11 @@
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 模腔数/取数(pcs) -->
|
|
|
- <el-col :span="12">
|
|
|
+ <el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="模腔数/取数(pcs)" prop="production_cycle">
|
|
|
- <el-input
|
|
|
+ <el-input-number
|
|
|
+ :step="1"
|
|
|
+ :precision="0"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.production_cycle"
|
|
|
/>
|
|
|
@@ -368,35 +425,43 @@
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 制造周期(S) -->
|
|
|
- <el-col :span="12">
|
|
|
+ <el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="制造周期(S)" prop="cavities">
|
|
|
- <el-input placeholder="请输入" v-model="formData.cavities" />
|
|
|
+ <el-input-number placeholder="请输入" v-model="formData.cavities" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 持台人数 -->
|
|
|
- <el-col :span="12">
|
|
|
+ <el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="持台人数" prop="holding_number">
|
|
|
- <el-input placeholder="请输入" v-model="formData.holding_number" />
|
|
|
+ <el-input-number
|
|
|
+ :step="1"
|
|
|
+ :precision="0"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.holding_number"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 单件节拍(S) -->
|
|
|
- <el-col :span="12">
|
|
|
+ <el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="单件节拍(S)" prop="single_piece">
|
|
|
- <el-input placeholder="请输入" v-model="formData.single_piece" />
|
|
|
+ <el-input-number
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.single_piece"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 外包类型 -->
|
|
|
- <el-col :span="12">
|
|
|
+ <el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="外包类型" prop="package_type">
|
|
|
<el-input placeholder="请输入" v-model="formData.package_type" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<!-- 内包类型 -->
|
|
|
- <el-col :span="12">
|
|
|
+ <el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="内包类型" prop="innerpackage_type">
|
|
|
<el-input
|
|
|
placeholder="请输入"
|
|
|
@@ -408,7 +473,12 @@
|
|
|
<!-- snp -->
|
|
|
<el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="SNP" prop="snp">
|
|
|
- <el-input placeholder="请输入" v-model="formData.snp" />
|
|
|
+ <el-input-number
|
|
|
+ :step="1"
|
|
|
+ :precision="0"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.snp"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
@@ -416,6 +486,8 @@
|
|
|
<el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="循环次数(次)" name="cycle_number">
|
|
|
<el-input-number
|
|
|
+ :step="1"
|
|
|
+ :precision="0"
|
|
|
class="inline-block w-full!"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.cycle_number"
|
|
|
@@ -433,7 +505,7 @@
|
|
|
<!-- 供货距离(KM) -->
|
|
|
<el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="供货距离(KM)" prop="supplier_distance">
|
|
|
- <el-input
|
|
|
+ <el-input-number
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.supplier_distance"
|
|
|
/>
|
|
|
@@ -450,46 +522,72 @@
|
|
|
<!-- 最小起订量 -->
|
|
|
<el-col :span="12" v-if="type == '2'">
|
|
|
<el-form-item label="最小起订量" name="min_order">
|
|
|
- <el-input placeholder="请输入" v-model="formData.min_order" />
|
|
|
+ <el-input-number
|
|
|
+ :step="1"
|
|
|
+ :precision="0"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.min_order"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <template v-if="type == '1'">
|
|
|
+ <template>
|
|
|
<!-- 备用字段1 -->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="工程BOM备用字段1" name="engin_var1">
|
|
|
- <el-input placeholder="请输入" v-model="formData.engin_var1" />
|
|
|
+ <el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.engin_var1"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<!-- 备用字段2 -->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="工程BOM备用字段2" name="engin_var2">
|
|
|
- <el-input placeholder="请输入" v-model="formData.engin_var2" />
|
|
|
+ <el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.engin_var2"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<!-- 备用字段3 -->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="工程BOM备用字段3" name="engin_var3">
|
|
|
- <el-input placeholder="请输入" v-model="formData.engin_var3" />
|
|
|
+ <el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.engin_var3"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<!-- 备用字段4 -->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="工程BOM备用字段4" name="engin_var4">
|
|
|
- <el-input placeholder="请输入" v-model="formData.engin_var4" />
|
|
|
+ <el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.engin_var4"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<!-- 备用字段5 -->
|
|
|
- <el-col :span="12" v-if="type == '1'">
|
|
|
+ <el-col :span="12">
|
|
|
<el-form-item label="工程BOM备用字段5" name="engin_var5">
|
|
|
- <el-input placeholder="请输入" v-model="formData.engin_var5" />
|
|
|
+ <el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '2'"
|
|
|
+ placeholder="请输入"
|
|
|
+ v-model="formData.engin_var5"
|
|
|
+ />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</template>
|
|
|
- <template v-if="type == '2'">
|
|
|
+ <template>
|
|
|
<!-- 备用字段1 -->
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="制造BOM备用字段1" name="manufacture_var1">
|
|
|
<el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '1'"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.manufacture_var1"
|
|
|
/>
|
|
|
@@ -499,6 +597,7 @@
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="制造BOM备用字段2" name="manufacture_var2">
|
|
|
<el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '1'"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.manufacture_var2"
|
|
|
/>
|
|
|
@@ -508,6 +607,7 @@
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="制造BOM备用字段3" name="manufacture_var3">
|
|
|
<el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '1'"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.manufacture_var3"
|
|
|
/>
|
|
|
@@ -517,6 +617,7 @@
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="制造BOM备用字段4" name="manufacture_var4">
|
|
|
<el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '1'"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.manufacture_var4"
|
|
|
/>
|
|
|
@@ -526,6 +627,7 @@
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="制造BOM备用字段5" name="manufacture_var5">
|
|
|
<el-input
|
|
|
+ :disabled="!!originFormData?.erp_code && type === '1'"
|
|
|
placeholder="请输入"
|
|
|
v-model="formData.manufacture_var5"
|
|
|
/>
|
|
|
@@ -544,7 +646,9 @@
|
|
|
</el-form>
|
|
|
<template #footer>
|
|
|
<el-button @click="visible = false">取消</el-button>
|
|
|
- <el-button v-if="!readonly" type="primary" @click="handleSubmit">确定</el-button>
|
|
|
+ <el-button v-if="!readonly" type="primary" @click="handleSubmit"
|
|
|
+ >确定</el-button
|
|
|
+ >
|
|
|
</template>
|
|
|
</el-drawer>
|
|
|
<TableModal ref="recomendRef" @ok="handleRecomend" />
|
|
|
@@ -571,7 +675,7 @@ const isEmpty = ref(false);
|
|
|
const handleEmptyErpCode = () => {
|
|
|
formData.value.erp_code = "";
|
|
|
isEmpty.value = true;
|
|
|
-}
|
|
|
+};
|
|
|
|
|
|
const keyMap = {
|
|
|
gridorders: "序号",
|
|
|
@@ -697,7 +801,7 @@ const processOptions = [
|
|
|
"手工装配",
|
|
|
"整理",
|
|
|
"打磨",
|
|
|
-]
|
|
|
+];
|
|
|
|
|
|
const visible = ref(false);
|
|
|
const layerIndex = ref(0);
|
|
|
@@ -727,8 +831,10 @@ const recomendRef = ref<{
|
|
|
// 1.工程BOM只有P,C件这两个按钮才可以操作
|
|
|
// 2.制造BOM只有M件,这两个按钮才可以操作
|
|
|
const erpCodeDisabled = computed(() => {
|
|
|
- if(type === "1") return formData.value.part_type === "M" || !formData.value.part_type;
|
|
|
- if(type === "2") return formData.value.part_type !== "M" || !formData.value.part_type;
|
|
|
+ if (type === "1")
|
|
|
+ return formData.value.part_type === "M" || !formData.value.part_type;
|
|
|
+ if (type === "2")
|
|
|
+ return formData.value.part_type !== "M" || !formData.value.part_type;
|
|
|
});
|
|
|
|
|
|
const editType = ref<"add" | "edit">("edit");
|