|
|
@ -27,9 +27,9 @@
|
|
|
|
}}</span>
|
|
|
|
}}</span>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</el-tooltip>
|
|
|
|
</el-tooltip>
|
|
|
|
<el-button type="primary" link @click="fun(data)"
|
|
|
|
<el-button type="success" v-has-permi="['mes:materialBom:publish']" link @click="publishMaterialBom(data)" style=" vertical-align: top; "
|
|
|
|
style=" vertical-align: top; ">
|
|
|
|
v-if="data.activeFlag && data.activeFlag!==MATERIAL_BOM_ACTIVE_FLAG.ACTIVE && data.children">
|
|
|
|
上传
|
|
|
|
发布
|
|
|
|
</el-button>
|
|
|
|
</el-button>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
@ -97,11 +97,11 @@
|
|
|
|
<el-form-item label='父物料数量' prop='parentStandardAmount'>
|
|
|
|
<el-form-item label='父物料数量' prop='parentStandardAmount'>
|
|
|
|
<el-input-number v-model='parentForm.parentStandardAmount' :precision="2" :step="1"
|
|
|
|
<el-input-number v-model='parentForm.parentStandardAmount' :precision="2" :step="1"
|
|
|
|
placeholder='请输入父物料数量'
|
|
|
|
placeholder='请输入父物料数量'
|
|
|
|
style="width:200px" />
|
|
|
|
style="width:200px" :disabled="parentForm.activeFlag !== MATERIAL_BOM_ACTIVE_FLAG.DESIGN"/>
|
|
|
|
</el-form-item>
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
|
|
<el-form-item label='单位' prop='parentUnitId'>
|
|
|
|
<el-form-item label='单位' prop='parentUnitId'>
|
|
|
|
<el-select v-model="parentForm.parentUnitId" placeholder="请选择" style="width:200px">
|
|
|
|
<el-select v-model="parentForm.parentUnitId" placeholder="请选择" style="width:200px" :disabled="parentForm.activeFlag !== MATERIAL_BOM_ACTIVE_FLAG.DESIGN">
|
|
|
|
<el-option
|
|
|
|
<el-option
|
|
|
|
v-for="item in unitInfoOptions"
|
|
|
|
v-for="item in unitInfoOptions"
|
|
|
|
:key="item.unitId"
|
|
|
|
:key="item.unitId"
|
|
|
@ -112,7 +112,7 @@
|
|
|
|
</el-form-item>
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
|
|
<el-form-item label="BOM说明" prop='materialBomDesc'>
|
|
|
|
<el-form-item label="BOM说明" prop='materialBomDesc'>
|
|
|
|
<el-input v-model='parentForm.materialBomDesc' placeholder='' style="width:360px" type="textarea" />
|
|
|
|
<el-input v-model='parentForm.materialBomDesc' placeholder='' style="width:360px" type="textarea" :disabled="parentForm.activeFlag !== MATERIAL_BOM_ACTIVE_FLAG.DESIGN"/>
|
|
|
|
</el-form-item>
|
|
|
|
</el-form-item>
|
|
|
|
|
|
|
|
|
|
|
|
</el-row>
|
|
|
|
</el-row>
|
|
|
@ -126,12 +126,12 @@
|
|
|
|
<el-row :gutter="10">
|
|
|
|
<el-row :gutter="10">
|
|
|
|
<el-col :span="1.5">
|
|
|
|
<el-col :span="1.5">
|
|
|
|
<el-button v-has-permi="['mes:materialBom:add']" type="primary" plain icon="Plus"
|
|
|
|
<el-button v-has-permi="['mes:materialBom:add']" type="primary" plain icon="Plus"
|
|
|
|
@click="handleAdd()" :loading="btnLoading">新增
|
|
|
|
@click="handleAdd()" :loading="btnLoading" v-if="parentForm.activeFlag === MATERIAL_BOM_ACTIVE_FLAG.DESIGN">新增
|
|
|
|
</el-button>
|
|
|
|
</el-button>
|
|
|
|
</el-col>
|
|
|
|
</el-col>
|
|
|
|
<el-col :span="1.5">
|
|
|
|
<el-col :span="1.5">
|
|
|
|
<el-button v-has-permi="['mes:materialBom:remove']" type="danger" plain :disabled="multiple"
|
|
|
|
<el-button v-has-permi="['mes:materialBom:remove']" type="danger" plain :disabled="multiple"
|
|
|
|
icon="Delete" @click="handleDelete()" :loading="btnLoading">
|
|
|
|
icon="Delete" @click="handleDelete()" :loading="btnLoading" v-if="parentForm.activeFlag === MATERIAL_BOM_ACTIVE_FLAG.DESIGN">
|
|
|
|
删除
|
|
|
|
删除
|
|
|
|
</el-button>
|
|
|
|
</el-button>
|
|
|
|
</el-col>
|
|
|
|
</el-col>
|
|
|
@ -187,7 +187,7 @@
|
|
|
|
<template #footer>
|
|
|
|
<template #footer>
|
|
|
|
<div class="dialog-footer">
|
|
|
|
<div class="dialog-footer">
|
|
|
|
<el-button v-has-permi="['mes:materialBom:add']" type="success" plain icon="CircleCheck"
|
|
|
|
<el-button v-has-permi="['mes:materialBom:add']" type="success" plain icon="CircleCheck"
|
|
|
|
@click="submitBatchSaveMaterialBoms()" :loading="btnLoading">保存
|
|
|
|
@click="submitBatchSaveMaterialBoms()" :loading="btnLoading" v-if="parentForm.activeFlag === MATERIAL_BOM_ACTIVE_FLAG.DESIGN">保存
|
|
|
|
</el-button>
|
|
|
|
</el-button>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
@ -278,7 +278,7 @@ import {
|
|
|
|
listMaterialBomJoinStructure,
|
|
|
|
listMaterialBomJoinStructure,
|
|
|
|
addBatchMaterialBom,
|
|
|
|
addBatchMaterialBom,
|
|
|
|
getUnitInfoList, getMaterialBomVersionList, getParentMaterialBom, deleteMaterialBoms,
|
|
|
|
getUnitInfoList, getMaterialBomVersionList, getParentMaterialBom, deleteMaterialBoms,
|
|
|
|
selectNextMaterialBomVersion
|
|
|
|
selectNextMaterialBomVersion,publish
|
|
|
|
} from '@/api/mes/materialBom';
|
|
|
|
} from '@/api/mes/materialBom';
|
|
|
|
|
|
|
|
|
|
|
|
import { MaterialBomVO, MaterialBomForm, MaterialBomQuery } from '@/api/mes/materialBom/types';
|
|
|
|
import { MaterialBomVO, MaterialBomForm, MaterialBomQuery } from '@/api/mes/materialBom/types';
|
|
|
@ -971,6 +971,28 @@ const addNewMaterialBomVersion = async () => {
|
|
|
|
console.log(materialBomList);
|
|
|
|
console.log(materialBomList);
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** 基于当前父级物料和版本,发布 */
|
|
|
|
|
|
|
|
const publishMaterialBom = async (data) => {
|
|
|
|
|
|
|
|
try{
|
|
|
|
|
|
|
|
loading.value = true;
|
|
|
|
|
|
|
|
treeLoading.value = true;
|
|
|
|
|
|
|
|
const toPublishMaterialBom = {
|
|
|
|
|
|
|
|
parentId:data.materialId,
|
|
|
|
|
|
|
|
materialBomVersion:data.materialBomVersion
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
await publish(toPublishMaterialBom);
|
|
|
|
|
|
|
|
proxy?.$modal.msgSuccess('操作成功');
|
|
|
|
|
|
|
|
await getTreeSelect();
|
|
|
|
|
|
|
|
loading.value = false;
|
|
|
|
|
|
|
|
}catch (e) {
|
|
|
|
|
|
|
|
proxy?.$modal.msgWarning(e);
|
|
|
|
|
|
|
|
loading.value = false;
|
|
|
|
|
|
|
|
treeLoading.value = false;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
// const getClickNode = (obj) => {
|
|
|
|
// const getClickNode = (obj) => {
|
|
|
|
// // 如果当前对象有 id,并且与之前focus的id相同,则收集
|
|
|
|
// // 如果当前对象有 id,并且与之前focus的id相同,则收集
|
|
|
|
// // console.log(JSON.stringify(obj))
|
|
|
|
// // console.log(JSON.stringify(obj))
|
|
|
@ -987,13 +1009,13 @@ const addNewMaterialBomVersion = async () => {
|
|
|
|
//
|
|
|
|
//
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
const getColor = (e) => {
|
|
|
|
const getColor = (e) => {
|
|
|
|
if (e.materialBomVersion === '01') {
|
|
|
|
if (e.activeFlag === MATERIAL_BOM_ACTIVE_FLAG.value.ACTIVE) {
|
|
|
|
return ['#ff0000', '#fff'];
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (e.materialBomVersion === '02') {
|
|
|
|
|
|
|
|
return ['#00ff00', '#000'];
|
|
|
|
return ['#00ff00', '#000'];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (e.materialBomVersion === '03') {
|
|
|
|
if (e.activeFlag === MATERIAL_BOM_ACTIVE_FLAG.value.HISTORY) {
|
|
|
|
|
|
|
|
return ['#ff0000', '#fff'];
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (e.activeFlag === MATERIAL_BOM_ACTIVE_FLAG.value.DESIGN) {
|
|
|
|
return ['#0000ff', '#fff'];
|
|
|
|
return ['#0000ff', '#fff'];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
};
|
|
|
|