|
|
|
|
@ -6,7 +6,7 @@ |
|
|
|
|
<el-form :model="form" label-width="auto"> |
|
|
|
|
<el-form-item label="工艺级别:"> |
|
|
|
|
<el-select |
|
|
|
|
v-model="processLevel" |
|
|
|
|
v-model="rank" |
|
|
|
|
placeholder="请选择" |
|
|
|
|
style="width: 220px" |
|
|
|
|
@change="leavelChange" |
|
|
|
|
@ -71,107 +71,372 @@ |
|
|
|
|
<div class="table-btn-left"> |
|
|
|
|
<el-button type="primary" plain @click="addTable()">插入一行</el-button> |
|
|
|
|
<el-button type="danger" plain @click="delTable()">删除选择行</el-button> |
|
|
|
|
<el-button type="primary" @click="saveInfo()">保存</el-button> |
|
|
|
|
</div> |
|
|
|
|
<div class="table-btn-right" v-if="!(activeName == '3' || activeName == '4')"> |
|
|
|
|
<div class="table-btn-right" v-if="activeName == '1'"> |
|
|
|
|
<el-select |
|
|
|
|
v-model="processLevel" |
|
|
|
|
v-model="modelLevel" |
|
|
|
|
placeholder="选择工艺模板" |
|
|
|
|
style="width: 220px; margin-right: 12px" |
|
|
|
|
> |
|
|
|
|
<el-option label="模板一" value="1" /> |
|
|
|
|
<el-option label="模板二" value="2" /> |
|
|
|
|
<el-option label="模板三" value="3" /> |
|
|
|
|
<el-option |
|
|
|
|
v-for="(item, index) in modelOption" |
|
|
|
|
:key="index" |
|
|
|
|
:label="item.name" |
|
|
|
|
:value="item.id" |
|
|
|
|
/> |
|
|
|
|
</el-select> |
|
|
|
|
<el-button type="primary">导入模板</el-button> |
|
|
|
|
<el-button type="primary" @change="modelLevelChange()">导入模板</el-button> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
<el-table :data="tableData1" style="width: 100%" v-if="activeName == '1'"> |
|
|
|
|
<el-table-column type="selection" width="55"></el-table-column> |
|
|
|
|
<el-table-column prop="date" label="工序号"></el-table-column> |
|
|
|
|
<el-table-column prop="name" label="工序"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>工序</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="address" label="工艺能力"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>工艺能力</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="address" label="工序描述"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>工序描述</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="address" label="定额工时(分钟)"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>定额工时(分钟)</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="address" label="准备工时(分钟)"> </el-table-column> |
|
|
|
|
<el-table-column prop="address" label="是否主工序"> |
|
|
|
|
<el-select v-model="value" placeholder="请选择"> |
|
|
|
|
<el-option label="是" value="1"></el-option> |
|
|
|
|
<el-option label="否" value="2"></el-option> |
|
|
|
|
</el-select> |
|
|
|
|
</el-table-column> |
|
|
|
|
</el-table> |
|
|
|
|
<el-table :data="tableData2" style="width: 100%" v-if="activeName == '2'"> |
|
|
|
|
<el-table-column type="selection" width="55"></el-table-column> |
|
|
|
|
<el-table-column prop="date" label="工序号"></el-table-column> |
|
|
|
|
<el-table-column prop="date" label="检验项目"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>检验项目</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="date" label="检验标准"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>检验标准</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="date" label="标准值"> </el-table-column> |
|
|
|
|
<el-table-column prop="date" label="上限"> </el-table-column> |
|
|
|
|
<el-table-column prop="date" label="下限"> </el-table-column> |
|
|
|
|
<el-table-column prop="date" label="定额工时(分钟)"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>定额工时(分钟)</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="date" label="准备工时(分钟)"></el-table-column> |
|
|
|
|
</el-table> |
|
|
|
|
<el-table :data="tableData3" style="width: 100%" v-if="activeName == '3'"> |
|
|
|
|
<el-table-column type="selection" width="55"></el-table-column> |
|
|
|
|
<el-table-column prop="date" label="工序号"></el-table-column> |
|
|
|
|
<el-table-column prop="date" label="镀前镀后"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>镀前镀后</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="date" label="量具"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>量具</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="date" label="量具尺寸"></el-table-column> |
|
|
|
|
<el-table-column prop="date" label="图纸尺寸"></el-table-column> |
|
|
|
|
</el-table> |
|
|
|
|
<el-table :data="tableData4" style="width: 100%" v-if="activeName == '4'"> |
|
|
|
|
<el-table-column type="selection" width="55"></el-table-column> |
|
|
|
|
<el-table-column prop="date" label="工序号"></el-table-column> |
|
|
|
|
<el-table-column prop="date" label="对应工装"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>对应工装</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="date" label="工装名称"></el-table-column> |
|
|
|
|
<el-table-column prop="date" label="是否印字"></el-table-column> |
|
|
|
|
<el-table-column prop="date" label="印字版编号"></el-table-column> |
|
|
|
|
<el-table-column prop="date" label="测试夹具号"></el-table-column> |
|
|
|
|
</el-table> |
|
|
|
|
<!-- 工序 --> |
|
|
|
|
<el-form |
|
|
|
|
ref="tableForm1" |
|
|
|
|
:model="form1" |
|
|
|
|
:rules="formRules1" |
|
|
|
|
label-width="0px" |
|
|
|
|
v-if="activeName == '1'" |
|
|
|
|
> |
|
|
|
|
<el-table :data="form1.tableData1" style="width: 100%"> |
|
|
|
|
<el-table-column type="selection" width="55"></el-table-column> |
|
|
|
|
<el-table-column prop="processNo" label="工序号"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.processNo" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="processName" label="工序"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>工序</span> |
|
|
|
|
</template> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-form-item |
|
|
|
|
:prop="`tableData1[${scope.$index}].processName`" |
|
|
|
|
:rules="formRules1.processName" |
|
|
|
|
> |
|
|
|
|
<el-select v-model="scope.row.processName" placeholder="请选择"> |
|
|
|
|
<el-option |
|
|
|
|
v-for="(item, index) in processSetOption" |
|
|
|
|
:key="index" |
|
|
|
|
label="是" |
|
|
|
|
value="1" |
|
|
|
|
></el-option> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="address" label="工艺能力"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>工艺能力</span> |
|
|
|
|
</template> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-form-item |
|
|
|
|
:prop="`tableData1[${scope.$index}].address`" |
|
|
|
|
:rules="formRules1.address" |
|
|
|
|
> |
|
|
|
|
<el-select v-model="scope.row.address" placeholder="请选择"> |
|
|
|
|
<el-option |
|
|
|
|
v-for="(item, index) in craftAbilityOption" |
|
|
|
|
:key="index" |
|
|
|
|
label="是" |
|
|
|
|
value="1" |
|
|
|
|
></el-option> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="proDes" label="工序描述"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>工序描述</span> |
|
|
|
|
</template> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-form-item :prop="`tableData1[${scope.$index}].proDes`" :rules="formRules1.proDes"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.proDes" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="proHours" label="定额工时(分钟)"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>定额工时(分钟)</span> |
|
|
|
|
</template> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-form-item |
|
|
|
|
:prop="`tableData1[${scope.$index}].proHours`" |
|
|
|
|
:rules="formRules1.proHours" |
|
|
|
|
> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.proHours" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="setoutHours" label="准备工时(分钟)"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.proHours" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="isMain" label="是否主工序"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-form-item :prop="`tableData1[${scope.$index}].isMain`" :rules="formRules1.isMain"> |
|
|
|
|
<el-select v-model="scope.row.isMain" placeholder="请选择"> |
|
|
|
|
<el-option label="是" value="1"></el-option> |
|
|
|
|
<el-option label="否" value="2"></el-option> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
</el-table> |
|
|
|
|
</el-form> |
|
|
|
|
<!-- 项目 --> |
|
|
|
|
<el-form |
|
|
|
|
ref="tableForm2" |
|
|
|
|
:model="form2" |
|
|
|
|
:rules="formRules2" |
|
|
|
|
label-width="0px" |
|
|
|
|
v-if="activeName == '2'" |
|
|
|
|
> |
|
|
|
|
<el-table :data="form2.tableData2" style="width: 100%"> |
|
|
|
|
<el-table-column type="selection" width="55"></el-table-column> |
|
|
|
|
<el-table-column prop="trialNo" label="工序号"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.trialNo" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="projectName" label="检验项目"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>检验项目</span> |
|
|
|
|
</template> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-form-item |
|
|
|
|
:prop="`tableData2[${scope.$index}].projectName`" |
|
|
|
|
:rules="formRules2.projectName" |
|
|
|
|
> |
|
|
|
|
<el-select v-model="scope.row.projectName" placeholder="请选择"> |
|
|
|
|
<el-option label="是" value="1"></el-option> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="projectStandard" label="检验标准"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>检验标准</span> |
|
|
|
|
</template> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-form-item |
|
|
|
|
:prop="`tableData2[${scope.$index}].projectStandard`" |
|
|
|
|
:rules="formRules2.projectStandard" |
|
|
|
|
> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.projectStandard" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="proHours" label="定额工时(分钟)"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>定额工时(分钟)</span> |
|
|
|
|
</template> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-form-item |
|
|
|
|
:prop="`tableData2[${scope.$index}].proHours`" |
|
|
|
|
:rules="formRules2.proHours" |
|
|
|
|
> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.proHours" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="prepareHours" label="准备工时(分钟)"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.prepareHours" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
</el-table> |
|
|
|
|
</el-form> |
|
|
|
|
<!-- 量具 --> |
|
|
|
|
<el-form |
|
|
|
|
ref="tableForm3" |
|
|
|
|
:model="form3" |
|
|
|
|
:rules="formRules3" |
|
|
|
|
label-width="0px" |
|
|
|
|
v-if="activeName == '3'" |
|
|
|
|
> |
|
|
|
|
<el-table :data="form3.tableData3" style="width: 100%"> |
|
|
|
|
<el-table-column type="selection" width="55"></el-table-column> |
|
|
|
|
<el-table-column prop="trialNo" label="工序号"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.trialNo" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="testType" label="镀前镀后"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>镀前镀后</span> |
|
|
|
|
</template> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-form-item |
|
|
|
|
:prop="`tableData3[${scope.$index}].testType`" |
|
|
|
|
:rules="formRules3.testType" |
|
|
|
|
> |
|
|
|
|
<el-select v-model="scope.row.testType" placeholder="请选择"> |
|
|
|
|
<el-option label="是" value="1"></el-option> |
|
|
|
|
<el-option label="否" value="2"></el-option> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="tool" label="量具"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>量具</span> |
|
|
|
|
</template> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-form-item :prop="`tableData3[${scope.$index}].tool`" :rules="formRules3.tool"> |
|
|
|
|
<el-select v-model="scope.row.tool" placeholder="请选择"> |
|
|
|
|
<el-option label="是" value="1"></el-option> |
|
|
|
|
<el-option label="否" value="2"></el-option> |
|
|
|
|
</el-select> |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="toolSize" label="量具尺寸"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.toolSize" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="toolInfo" label="图纸尺寸"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.toolInfo" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
</el-table> |
|
|
|
|
</el-form> |
|
|
|
|
<!-- 工装 --> |
|
|
|
|
<el-form |
|
|
|
|
ref="tableForm4" |
|
|
|
|
:model="form4" |
|
|
|
|
:rules="formRules4" |
|
|
|
|
label-width="0px" |
|
|
|
|
v-if="activeName == '4'" |
|
|
|
|
> |
|
|
|
|
<el-table :data="form4.tableData4" style="width: 100%"> |
|
|
|
|
<el-table-column type="selection" width="55"></el-table-column> |
|
|
|
|
<el-table-column prop="trialNo" label="工序号"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.trialNo" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="moldCode" label="对应工装"> |
|
|
|
|
<template #header> |
|
|
|
|
<span><i style="color: red">*</i>对应工装</span> |
|
|
|
|
</template> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-form-item |
|
|
|
|
:prop="`tableData1[${scope.$index}].moldCode`" |
|
|
|
|
:rules="formRules4.moldCode" |
|
|
|
|
> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.moldCode" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="moldName" label="工装名称"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.moldName" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="isPrint" label="是否印字"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.isPrint" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="printNo" label="印字版编号"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.printNo" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="testFixtureNo" label="测试夹具号"> |
|
|
|
|
<template #default="scope"> |
|
|
|
|
<el-input |
|
|
|
|
v-model="scope.row.testFixtureNo" |
|
|
|
|
placeholder="请输入" |
|
|
|
|
style="width: 100%" |
|
|
|
|
></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
</el-table> |
|
|
|
|
</el-form> |
|
|
|
|
</div> |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
<script> |
|
|
|
|
import { |
|
|
|
|
getProcessAuthorized, |
|
|
|
|
getModelList, |
|
|
|
|
getModelDetailList, |
|
|
|
|
authorizedAccomplish2, |
|
|
|
|
saveProcessProjectSave, |
|
|
|
|
saveProcessMeasuringTool, |
|
|
|
|
saveProcessMoldTool, |
|
|
|
|
getProcessSetList, |
|
|
|
|
getCraftAbilityList, |
|
|
|
|
} from '@/api/processManagement/taskProcessing'; |
|
|
|
|
|
|
|
|
|
export default { |
|
|
|
|
name: 'CraftIndex', |
|
|
|
|
components: {}, |
|
|
|
|
@ -188,58 +453,16 @@ export default { |
|
|
|
|
type: String, |
|
|
|
|
default: '', |
|
|
|
|
}, |
|
|
|
|
updateRow: { |
|
|
|
|
type: Object, |
|
|
|
|
default: {}, |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
data() { |
|
|
|
|
return { |
|
|
|
|
rank: '2', |
|
|
|
|
processLevel: '2', |
|
|
|
|
data: [ |
|
|
|
|
{ |
|
|
|
|
label: '零件号A', |
|
|
|
|
disabled: true, |
|
|
|
|
children: [ |
|
|
|
|
{ |
|
|
|
|
label: 'B0001-C0001', |
|
|
|
|
children: [ |
|
|
|
|
{ |
|
|
|
|
label: '清洗', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
label: '镀后检验', |
|
|
|
|
children: [ |
|
|
|
|
{ |
|
|
|
|
label: '厚度检验', |
|
|
|
|
disabled: true, |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
label: '外观检验', |
|
|
|
|
disabled: true, |
|
|
|
|
}, |
|
|
|
|
], |
|
|
|
|
}, |
|
|
|
|
], |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
label: 'B0001-C0002', |
|
|
|
|
children: [ |
|
|
|
|
{ |
|
|
|
|
label: '清洗', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
label: '镀后检验', |
|
|
|
|
children: [ |
|
|
|
|
{ |
|
|
|
|
label: '厚度检验', |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
label: '外观检验', |
|
|
|
|
}, |
|
|
|
|
], |
|
|
|
|
}, |
|
|
|
|
], |
|
|
|
|
}, |
|
|
|
|
], |
|
|
|
|
}, |
|
|
|
|
], |
|
|
|
|
data: [], |
|
|
|
|
defaultProps: { |
|
|
|
|
children: 'children', |
|
|
|
|
label: 'label', |
|
|
|
|
@ -282,21 +505,184 @@ export default { |
|
|
|
|
], |
|
|
|
|
activeName: '1', |
|
|
|
|
treeLeave: 2, //组织树选中层级 |
|
|
|
|
processSetOption: [], //工序列表 |
|
|
|
|
craftAbilityOption: [], //工艺能力列表 |
|
|
|
|
modelOption: [], //模板列表 |
|
|
|
|
modelLevel: null, //模板选择 |
|
|
|
|
form1: { |
|
|
|
|
tableData1: [], //工序 |
|
|
|
|
}, |
|
|
|
|
form2: { |
|
|
|
|
tableData2: [], //项目 |
|
|
|
|
}, |
|
|
|
|
form3: { |
|
|
|
|
tableData3: [], //量具 |
|
|
|
|
}, |
|
|
|
|
form4: { |
|
|
|
|
tableData4: [], //工装 |
|
|
|
|
}, |
|
|
|
|
formRules1: { |
|
|
|
|
processName: [{ required: true, message: '请选择', trigger: ['change', 'submit'] }], |
|
|
|
|
address: [{ required: true, message: '请选择', trigger: ['change', 'submit'] }], |
|
|
|
|
proDes: [{ required: true, message: '请选择', trigger: ['change', 'submit'] }], |
|
|
|
|
proHours: [{ required: true, message: '请输入', trigger: ['change', 'submit'] }], |
|
|
|
|
isMain: [{ required: true, message: '请选择', trigger: ['change', 'submit'] }], |
|
|
|
|
}, |
|
|
|
|
formRules2: { |
|
|
|
|
projectName: [{ required: true, message: '请选择', trigger: ['change', 'submit'] }], |
|
|
|
|
projectStandard: [{ required: true, message: '请输入', trigger: ['change', 'submit'] }], |
|
|
|
|
proHours: [{ required: true, message: '请输入', trigger: ['change', 'submit'] }], |
|
|
|
|
}, |
|
|
|
|
formRules3: { |
|
|
|
|
testType: [{ required: true, message: '请选择', trigger: ['change', 'submit'] }], |
|
|
|
|
tool: [{ required: true, message: '请选择', trigger: ['change', 'submit'] }], |
|
|
|
|
}, |
|
|
|
|
formRules4: { |
|
|
|
|
moldCode: [{ required: true, message: '请输入', trigger: ['change', 'submit'] }], |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
}, |
|
|
|
|
mounted() { |
|
|
|
|
this.getDetails(); |
|
|
|
|
this.getModelList(); |
|
|
|
|
this.getProcessSetList(); |
|
|
|
|
this.getCraftAbilityList(); |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
// 工艺模板列表 |
|
|
|
|
getModelList() { |
|
|
|
|
getModelList().then(res => { |
|
|
|
|
this.modelOption = res.data.data; |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
// 工序列表查询 |
|
|
|
|
getProcessSetList() { |
|
|
|
|
getProcessSetList().then(res => { |
|
|
|
|
this.processSetOption = res.data.data; |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
// 工艺能力列表查询 |
|
|
|
|
getCraftAbilityList() { |
|
|
|
|
getCraftAbilityList().then(res => { |
|
|
|
|
this.craftAbilityOption = res.data.data; |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
// 导入模板 |
|
|
|
|
modelLevelChange() { |
|
|
|
|
getModelDetailList({ modelId: this.modelLevel }).then(res => { |
|
|
|
|
console.log(9999, res); |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
// 获取零件信息详情数据 |
|
|
|
|
getDetails() { |
|
|
|
|
getProcessAuthorized({ partId: this.partId, taskId: this.updateRow.id }).then(res => { |
|
|
|
|
this.data = this.transformCraftTree(res.data.data); |
|
|
|
|
console.log(89898989, this.data); |
|
|
|
|
}); |
|
|
|
|
}, |
|
|
|
|
// 组织树转换 |
|
|
|
|
transformCraftTree(responseData) { |
|
|
|
|
const { partInfo, craftList } = responseData; |
|
|
|
|
const partCode = partInfo.partCode; |
|
|
|
|
|
|
|
|
|
// 构建树形结构并保留原始数据引用 |
|
|
|
|
const tree = [ |
|
|
|
|
{ |
|
|
|
|
label: partCode, |
|
|
|
|
disabled: true, |
|
|
|
|
rawData: partInfo, // 保存零件原始数据 |
|
|
|
|
children: craftList.map(craft => { |
|
|
|
|
const { craftInfo, processList } = craft; |
|
|
|
|
// 拼接二级节点标签:roamNo-craftNo |
|
|
|
|
const craftLabel = `${craftInfo.roamNo}-${craftInfo.craftNo}`; |
|
|
|
|
|
|
|
|
|
return { |
|
|
|
|
...craftInfo, |
|
|
|
|
label: craftLabel, |
|
|
|
|
processList: processList.map(process => { |
|
|
|
|
return process.processInfo; |
|
|
|
|
}), |
|
|
|
|
rawData: craftInfo, // 保存工艺原始数据 |
|
|
|
|
children: processList.map(process => { |
|
|
|
|
const { processInfo, projectList, measuringToolList, moldToolList } = process; |
|
|
|
|
// 三级节点:工序名称 |
|
|
|
|
const processLabel = processInfo.processName; |
|
|
|
|
|
|
|
|
|
return { |
|
|
|
|
...processInfo, |
|
|
|
|
label: processLabel, |
|
|
|
|
rawData: { |
|
|
|
|
processInfo, |
|
|
|
|
projectList, |
|
|
|
|
measuringToolList, |
|
|
|
|
moldToolList, |
|
|
|
|
}, // 保存工序及关联数据 |
|
|
|
|
children: projectList.map(project => ({ |
|
|
|
|
label: project.projectName, // 四级节点:项目名称 |
|
|
|
|
rawData: project, // 保存项目原始数据 |
|
|
|
|
disabled: true, |
|
|
|
|
})), |
|
|
|
|
}; |
|
|
|
|
}), |
|
|
|
|
}; |
|
|
|
|
}), |
|
|
|
|
}, |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
return tree; |
|
|
|
|
}, |
|
|
|
|
// 组织树点击 |
|
|
|
|
handleNodeClick(nodes, node, self) { |
|
|
|
|
if (nodes.disabled) { |
|
|
|
|
// 阻止默认的点击行为 |
|
|
|
|
return false; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
this.treeLeave = node.level; |
|
|
|
|
if (this.treeLeave == 3) { |
|
|
|
|
this.activeName = '2'; |
|
|
|
|
} |
|
|
|
|
if (this.treeLeave == 2) { |
|
|
|
|
|
|
|
|
|
// 清空现有表格数据 |
|
|
|
|
this.form1.tableData1 = []; |
|
|
|
|
this.form2.tableData2 = []; |
|
|
|
|
this.form3.tableData3 = []; |
|
|
|
|
this.form4.tableData4 = []; |
|
|
|
|
// 根据节点层级切换标签页 |
|
|
|
|
if (this.treeLeave === 2) { |
|
|
|
|
this.activeName = '1'; |
|
|
|
|
console.log(99999, nodes.processList); |
|
|
|
|
this.form1.tableData1 = nodes.processList; |
|
|
|
|
} |
|
|
|
|
// 根据节点层级加载对应数据 |
|
|
|
|
if (this.treeLeave === 3) { |
|
|
|
|
this.activeName = '2'; |
|
|
|
|
// 三级节点:工序级,加载工序相关数据 |
|
|
|
|
const { processInfo, projectList, measuringToolList, moldToolList } = nodes.rawData; |
|
|
|
|
|
|
|
|
|
// 加载项目表格数据 |
|
|
|
|
this.form2.tableData2 = projectList.map(item => ({ |
|
|
|
|
trialNo: item.projectCode, |
|
|
|
|
projectName: item.projectName, |
|
|
|
|
projectStandard: item.projectStandard, |
|
|
|
|
proHours: item.proHours, |
|
|
|
|
prepareHours: item.prepareHours, |
|
|
|
|
})); |
|
|
|
|
|
|
|
|
|
// 加载量具表格数据 |
|
|
|
|
this.form3.tableData3 = measuringToolList.map(item => ({ |
|
|
|
|
trialNo: item.projectCode || '', |
|
|
|
|
testType: item.testType, |
|
|
|
|
tool: item.tool, |
|
|
|
|
toolSize: item.toolSize, |
|
|
|
|
toolInfo: item.toolInfo, |
|
|
|
|
})); |
|
|
|
|
|
|
|
|
|
// 加载工装表格数据 |
|
|
|
|
this.form4.tableData4 = moldToolList.map(item => ({ |
|
|
|
|
trialNo: processInfo.processNo, |
|
|
|
|
moldCode: item.moldCode, |
|
|
|
|
moldName: item.moldName, |
|
|
|
|
isPrint: item.isPrint, |
|
|
|
|
printNo: item.printNo, |
|
|
|
|
testFixtureNo: item.testFixtureNo, |
|
|
|
|
})); |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
// 右侧tab切换 |
|
|
|
|
@ -305,17 +691,22 @@ export default { |
|
|
|
|
}, |
|
|
|
|
// 切换等级 |
|
|
|
|
leavelChange() { |
|
|
|
|
this.$message.success('保存成功'); |
|
|
|
|
|
|
|
|
|
// this.$message.success('保存成功'); |
|
|
|
|
}, |
|
|
|
|
// 插入一行 |
|
|
|
|
addTable() { |
|
|
|
|
if (this.activeName == '1') { |
|
|
|
|
this.form1.tableData1.push({}); |
|
|
|
|
} |
|
|
|
|
if (this.activeName == '2') { |
|
|
|
|
this.form2.tableData2.push({}); |
|
|
|
|
} |
|
|
|
|
if (this.activeName == '3') { |
|
|
|
|
this.form3.tableData3.push({}); |
|
|
|
|
} |
|
|
|
|
if (this.activeName == '4') { |
|
|
|
|
this.form4.tableData4.push({}); |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
// 删除选择行 |
|
|
|
|
@ -329,6 +720,66 @@ export default { |
|
|
|
|
if (this.activeName == '4') { |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
saveInfo() { |
|
|
|
|
if (this.activeName == '1') { |
|
|
|
|
// 调用单个 Form 的校验方法 |
|
|
|
|
this.$refs.tableForm1.validate((isValid, invalidFields) => { |
|
|
|
|
if (!isValid) { |
|
|
|
|
let query_ = { |
|
|
|
|
dsPart: {}, //零件信息 |
|
|
|
|
craft: {}, //工艺信息 |
|
|
|
|
processList: [], //工序集合 |
|
|
|
|
deleteIds: [], //删除ids |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
// authorizedAccomplish2(query_).then(res=>{ |
|
|
|
|
|
|
|
|
|
// }) |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if (this.activeName == '2') { |
|
|
|
|
this.$refs.tableForm2.validate((isValid, invalidFields) => { |
|
|
|
|
if (!isValid) { |
|
|
|
|
let query_ = { |
|
|
|
|
processEntity: {}, //工序 |
|
|
|
|
processProjectEntityList: [], //项目 |
|
|
|
|
deleteIds: [], //删除ids |
|
|
|
|
}; |
|
|
|
|
// saveProcessProjectSave(query_).then(res=>{ |
|
|
|
|
|
|
|
|
|
// }) |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if (this.activeName == '3') { |
|
|
|
|
this.$refs.tableForm3.validate((isValid, invalidFields) => { |
|
|
|
|
if (!isValid) { |
|
|
|
|
let query_ = { |
|
|
|
|
processEntity: {}, //工序 |
|
|
|
|
processMeasuringToolEntities: [], //尺寸量具 |
|
|
|
|
deleteIds: [], //删除ids |
|
|
|
|
}; |
|
|
|
|
// saveProcessMeasuringTool(query_).then(res=>{ |
|
|
|
|
|
|
|
|
|
// }) |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
if (this.activeName == '4') { |
|
|
|
|
this.$refs.tableForm4.validate((isValid, invalidFields) => { |
|
|
|
|
if (!isValid) { |
|
|
|
|
let query_ = { |
|
|
|
|
processEntity: {}, //工序 |
|
|
|
|
processMoldToolEntities: [], //尺寸量具 |
|
|
|
|
deleteIds: [], //删除ids |
|
|
|
|
}; |
|
|
|
|
// saveProcessMoldTool(query_).then(res=>{ |
|
|
|
|
// }) |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
</script> |
|
|
|
|
@ -345,13 +796,11 @@ export default { |
|
|
|
|
.process-select { |
|
|
|
|
padding: 12px; |
|
|
|
|
background: #e4e7ed; |
|
|
|
|
|
|
|
|
|
:deep(.el-form-item) { |
|
|
|
|
margin-bottom: 0px !important; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
:deep(.el-form-item) { |
|
|
|
|
margin-bottom: 0px !important; |
|
|
|
|
} |
|
|
|
|
.process-right { |
|
|
|
|
padding: 12px; |
|
|
|
|
flex: 1; |
|
|
|
|
@ -372,4 +821,10 @@ export default { |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
:deep(.el-table .el-table__cell) { |
|
|
|
|
height: 50px !important; |
|
|
|
|
padding: 0 !important; |
|
|
|
|
line-height: 50px !important; |
|
|
|
|
} |
|
|
|
|
</style> |
|
|
|
|
|