|
|
@ -85,6 +85,11 @@
|
|
|
|
v-hasPermi="['mes:technologyInfo:edit']">工艺参数
|
|
|
|
v-hasPermi="['mes:technologyInfo:edit']">工艺参数
|
|
|
|
</el-button>
|
|
|
|
</el-button>
|
|
|
|
</el-tooltip>
|
|
|
|
</el-tooltip>
|
|
|
|
|
|
|
|
<el-tooltip content='复制' placement='top'>
|
|
|
|
|
|
|
|
<el-button link type='primary' @click='handleCopy(scope.row)'
|
|
|
|
|
|
|
|
v-hasPermi="['mes:technologyInfo:add']">复制
|
|
|
|
|
|
|
|
</el-button>
|
|
|
|
|
|
|
|
</el-tooltip>
|
|
|
|
<!-- <el-tooltip content='删除' placement='top'>-->
|
|
|
|
<!-- <el-tooltip content='删除' placement='top'>-->
|
|
|
|
<!-- <el-button link type='primary' icon='Delete' @click='handleDelete(scope.row)'-->
|
|
|
|
<!-- <el-button link type='primary' icon='Delete' @click='handleDelete(scope.row)'-->
|
|
|
|
<!-- v-hasPermi="['mes:technologyInfo:remove']"></el-button>-->
|
|
|
|
<!-- v-hasPermi="['mes:technologyInfo:remove']"></el-button>-->
|
|
|
@ -99,16 +104,16 @@
|
|
|
|
<!-- 添加或修改成型工艺信息对话框 -->
|
|
|
|
<!-- 添加或修改成型工艺信息对话框 -->
|
|
|
|
<el-dialog :title='dialog.title' v-model='dialog.visible' width='500px' append-to-body>
|
|
|
|
<el-dialog :title='dialog.title' v-model='dialog.visible' width='500px' append-to-body>
|
|
|
|
<el-form ref='technologyInfoFormRef' :model='form' :rules='rules' label-width='100px'>
|
|
|
|
<el-form ref='technologyInfoFormRef' :model='form' :rules='rules' label-width='100px'>
|
|
|
|
<!-- <el-form-item label='工序名称' prop='processId'>-->
|
|
|
|
<!-- <el-form-item label='工序名称' prop='processId'>-->
|
|
|
|
<!-- <el-select v-model='form.processId' placeholder='请选择所属工序'>-->
|
|
|
|
<!-- <el-select v-model='form.processId' placeholder='请选择所属工序'>-->
|
|
|
|
<!-- <el-option-->
|
|
|
|
<!-- <el-option-->
|
|
|
|
<!-- v-for='item in processInfoList'-->
|
|
|
|
<!-- v-for='item in processInfoList'-->
|
|
|
|
<!-- :key='item.processId'-->
|
|
|
|
<!-- :key='item.processId'-->
|
|
|
|
<!-- :label='item.processName'-->
|
|
|
|
<!-- :label='item.processName'-->
|
|
|
|
<!-- :value='item.processId'-->
|
|
|
|
<!-- :value='item.processId'-->
|
|
|
|
<!-- />-->
|
|
|
|
<!-- />-->
|
|
|
|
<!-- </el-select>-->
|
|
|
|
<!-- </el-select>-->
|
|
|
|
<!-- </el-form-item>-->
|
|
|
|
<!-- </el-form-item>-->
|
|
|
|
<el-form-item label='物料名称' prop='materialId'>
|
|
|
|
<el-form-item label='物料名称' prop='materialId'>
|
|
|
|
<el-input v-model='form.materialName' placeholder='请点击检索物料' @click='handleMaterialAdd' readonly>
|
|
|
|
<el-input v-model='form.materialName' placeholder='请点击检索物料' @click='handleMaterialAdd' readonly>
|
|
|
|
<template #append>
|
|
|
|
<template #append>
|
|
|
@ -248,40 +253,73 @@
|
|
|
|
@selection-change='handleProdLineSelectionChange'>
|
|
|
|
@selection-change='handleProdLineSelectionChange'>
|
|
|
|
<el-table-column type='selection' width='50' align='center' />
|
|
|
|
<el-table-column type='selection' width='50' align='center' />
|
|
|
|
<el-table-column label='序号' width='50' align='center' prop='index' />
|
|
|
|
<el-table-column label='序号' width='50' align='center' prop='index' />
|
|
|
|
<el-table-column align='center' label='参数编号' prop='stepCode'>
|
|
|
|
<el-table-column align='center' label='参数编号' prop='stepCode' width='130'>
|
|
|
|
<template #default='scope'>
|
|
|
|
<template #default='scope'>
|
|
|
|
<!-- <el-input v-model='scope.row.stepCode' :disabled='true' placeholder='请输入参数编号' />-->
|
|
|
|
<!-- <el-input v-model='scope.row.stepCode' :disabled='true' placeholder='请输入参数编号' />-->
|
|
|
|
<el-input v-model='scope.row.stepCode' placeholder='请输入参数编号' />
|
|
|
|
<el-input v-model='scope.row.stepCode' placeholder='请输入参数编号' />
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|
</el-table-column>
|
|
|
|
</el-table-column>
|
|
|
|
<el-table-column align='center' label='参数名称' prop='stepName'>
|
|
|
|
<el-table-column align='center' label='参数名称' prop='stepName' width='260'>
|
|
|
|
<template #default='scope'>
|
|
|
|
<template #default='scope'>
|
|
|
|
<el-input v-model='scope.row.stepName' placeholder='请输入参数名称' />
|
|
|
|
<el-input v-model='scope.row.stepName' placeholder='请输入参数名称' />
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|
</el-table-column>
|
|
|
|
</el-table-column>
|
|
|
|
<!-- <el-table-column align='center' label='参数时间' prop='stepTime'>-->
|
|
|
|
<el-table-column align='center' label='频率(毫秒)' prop='stepTime' width='130'>
|
|
|
|
<!-- <template #default='scope'>-->
|
|
|
|
|
|
|
|
<!-- <el-input v-model='scope.row.stepTime' placeholder='请输入参数时间' />-->
|
|
|
|
|
|
|
|
<!-- </template>-->
|
|
|
|
|
|
|
|
<!-- </el-table-column>-->
|
|
|
|
|
|
|
|
<el-table-column align='center' label='参数值' prop='stepParameter'>
|
|
|
|
|
|
|
|
<template #default='scope'>
|
|
|
|
<template #default='scope'>
|
|
|
|
<el-input v-model='scope.row.stepParameter' placeholder='请输入参数参数' />
|
|
|
|
<el-input v-model='scope.row.stepTime' />
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|
</el-table-column>
|
|
|
|
</el-table-column>
|
|
|
|
<!-- <el-table-column align='center' label='阀门状态' prop='valueState'>-->
|
|
|
|
<el-table-column align='center' label='参数值' prop='stepParameter' width='100'>
|
|
|
|
<!-- <template #default='scope'>-->
|
|
|
|
|
|
|
|
<!-- <el-input v-model='scope.row.valueState' placeholder='请输入阀门状态' />-->
|
|
|
|
|
|
|
|
<!-- </template>-->
|
|
|
|
|
|
|
|
<!-- </el-table-column>-->
|
|
|
|
|
|
|
|
<el-table-column align='center' label='激活标识' prop='activeFlag'>
|
|
|
|
|
|
|
|
<template #default='scope'>
|
|
|
|
<template #default='scope'>
|
|
|
|
<el-select v-model='scope.row.activeFlag' placeholder='请输入激活标识' >
|
|
|
|
<el-input v-model='scope.row.stepParameter' />
|
|
|
|
<el-option v-for="dict in active_flag" :key="dict.value" :label="dict.label" :value="dict.value"/>
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
<el-table-column align='center' label='参数地址' prop='pointAddress' width='100'>
|
|
|
|
|
|
|
|
<template #default='scope'>
|
|
|
|
|
|
|
|
<el-input v-model='scope.row.pointAddress' />
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
<el-table-column align='center' label='数据类型' prop='dataType' width='100'>
|
|
|
|
|
|
|
|
<template #default='scope'>
|
|
|
|
|
|
|
|
<el-select v-model='scope.row.dataType' placeholder='请选择数据类型'>
|
|
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
|
|
v-for='dict in machine_data_type'
|
|
|
|
|
|
|
|
:key='dict.value'
|
|
|
|
|
|
|
|
:label='dict.label'
|
|
|
|
|
|
|
|
:value='dict.value'
|
|
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
<el-table-column align='center' label='操作类型' prop='operationType' width='100'>
|
|
|
|
|
|
|
|
<template #default='scope'>
|
|
|
|
|
|
|
|
<el-select v-model='scope.row.operationType' placeholder='请选择操作类型'>
|
|
|
|
|
|
|
|
<el-option
|
|
|
|
|
|
|
|
v-for='dict in mes_operation_type'
|
|
|
|
|
|
|
|
:key='dict.value'
|
|
|
|
|
|
|
|
:label='dict.label'
|
|
|
|
|
|
|
|
:value='parseInt(dict.value)'
|
|
|
|
|
|
|
|
></el-option>
|
|
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
<el-table-column align='center' label='阈值上限' prop='upperLimit' width='100'>
|
|
|
|
|
|
|
|
<template #default='scope'>
|
|
|
|
|
|
|
|
<el-input v-model='scope.row.upperLimit' />
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
<el-table-column align='center' label='阈值下限' prop='lowerLimit' width='100'>
|
|
|
|
|
|
|
|
<template #default='scope'>
|
|
|
|
|
|
|
|
<el-input v-model='scope.row.lowerLimit' />
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
<el-table-column align='center' label='激活标识' prop='activeFlag' width='100'>
|
|
|
|
|
|
|
|
<template #default='scope'>
|
|
|
|
|
|
|
|
<el-select v-model='scope.row.activeFlag' placeholder='请输入激活标识'>
|
|
|
|
|
|
|
|
<el-option v-for='dict in active_flag' :key='dict.value' :label='dict.label' :value='dict.value' />
|
|
|
|
</el-select>
|
|
|
|
</el-select>
|
|
|
|
</template>
|
|
|
|
</template>
|
|
|
|
</el-table-column>
|
|
|
|
</el-table-column>
|
|
|
|
|
|
|
|
|
|
|
|
</el-table>
|
|
|
|
</el-table>
|
|
|
|
|
|
|
|
|
|
|
|
</el-form>
|
|
|
|
</el-form>
|
|
|
@ -302,7 +340,7 @@ import {
|
|
|
|
getTechnologyInfo,
|
|
|
|
getTechnologyInfo,
|
|
|
|
delTechnologyInfo,
|
|
|
|
delTechnologyInfo,
|
|
|
|
addTechnologyInfo,
|
|
|
|
addTechnologyInfo,
|
|
|
|
updateTechnologyInfo
|
|
|
|
updateTechnologyInfo, copyTechnologyInfo
|
|
|
|
} from '@/api/mes/technologyInfo';
|
|
|
|
} from '@/api/mes/technologyInfo';
|
|
|
|
import { TechnologyInfoVO, TechnologyInfoQuery, TechnologyInfoForm } from '@/api/mes/technologyInfo/types';
|
|
|
|
import { TechnologyInfoVO, TechnologyInfoQuery, TechnologyInfoForm } from '@/api/mes/technologyInfo/types';
|
|
|
|
import { getProcessInfoList } from '@/api/mes/baseProcessInfo';
|
|
|
|
import { getProcessInfoList } from '@/api/mes/baseProcessInfo';
|
|
|
@ -313,8 +351,10 @@ const { proxy } = getCurrentInstance() as ComponentInternalInstance;
|
|
|
|
const {
|
|
|
|
const {
|
|
|
|
mes_machine_type,
|
|
|
|
mes_machine_type,
|
|
|
|
active_flag,
|
|
|
|
active_flag,
|
|
|
|
|
|
|
|
machine_data_type,
|
|
|
|
|
|
|
|
mes_operation_type,
|
|
|
|
mes_technology_type
|
|
|
|
mes_technology_type
|
|
|
|
} = toRefs<any>(proxy?.useDict('mes_machine_type', 'active_flag', 'mes_technology_type'));
|
|
|
|
} = toRefs<any>(proxy?.useDict('mes_machine_type', 'active_flag', 'machine_data_type', 'mes_operation_type', 'mes_technology_type'));
|
|
|
|
|
|
|
|
|
|
|
|
const technologyInfoList = ref<TechnologyInfoVO[]>([]);
|
|
|
|
const technologyInfoList = ref<TechnologyInfoVO[]>([]);
|
|
|
|
const buttonLoading = ref(false);
|
|
|
|
const buttonLoading = ref(false);
|
|
|
@ -342,6 +382,9 @@ const stepOpen = ref(false);
|
|
|
|
const prodTechnologyStepInfoList = ref([]);
|
|
|
|
const prodTechnologyStepInfoList = ref([]);
|
|
|
|
const chekedProdLineList = ref([]);
|
|
|
|
const chekedProdLineList = ref([]);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 复制相关
|
|
|
|
|
|
|
|
const isCopy = ref(false);
|
|
|
|
|
|
|
|
|
|
|
|
/** 查询工位下拉树结构 */
|
|
|
|
/** 查询工位下拉树结构 */
|
|
|
|
const getProcessInfoListSelect = async () => {
|
|
|
|
const getProcessInfoListSelect = async () => {
|
|
|
|
let res = await getProcessInfoList(null);
|
|
|
|
let res = await getProcessInfoList(null);
|
|
|
@ -422,6 +465,7 @@ const getList = async () => {
|
|
|
|
const cancel = () => {
|
|
|
|
const cancel = () => {
|
|
|
|
reset();
|
|
|
|
reset();
|
|
|
|
dialog.visible = false;
|
|
|
|
dialog.visible = false;
|
|
|
|
|
|
|
|
isCopy.value = false;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
/** 表单重置 */
|
|
|
|
/** 表单重置 */
|
|
|
|
const reset = () => {
|
|
|
|
const reset = () => {
|
|
|
@ -471,6 +515,16 @@ const handleUpdate = async (row?: TechnologyInfoVO) => {
|
|
|
|
dialog.title = '修改成型工艺信息';
|
|
|
|
dialog.title = '修改成型工艺信息';
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const handleCopy = (row: TechnologyInfoVO) => {
|
|
|
|
|
|
|
|
reset();
|
|
|
|
|
|
|
|
// 深拷贝当前行数据
|
|
|
|
|
|
|
|
Object.assign(form.value, JSON.parse(JSON.stringify(row)));
|
|
|
|
|
|
|
|
// form.value.technologyId = undefined;
|
|
|
|
|
|
|
|
dialog.visible = true;
|
|
|
|
|
|
|
|
dialog.title = '复制成型工艺信息';
|
|
|
|
|
|
|
|
isCopy.value = true;
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
/** 工艺参数信息维护按钮操作 */
|
|
|
|
/** 工艺参数信息维护按钮操作 */
|
|
|
|
const handleStepUpdate = async (row?: TechnologyInfoVO) => {
|
|
|
|
const handleStepUpdate = async (row?: TechnologyInfoVO) => {
|
|
|
|
reset();
|
|
|
|
reset();
|
|
|
@ -482,7 +536,7 @@ const handleStepUpdate = async (row?: TechnologyInfoVO) => {
|
|
|
|
index: index + 1 // 初始化 index
|
|
|
|
index: index + 1 // 初始化 index
|
|
|
|
}));
|
|
|
|
}));
|
|
|
|
stepOpen.value = true;
|
|
|
|
stepOpen.value = true;
|
|
|
|
dialog.title = '工艺参数信息维护';
|
|
|
|
dialog.title = '成型工艺参数信息维护';
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
/** 提交按钮 */
|
|
|
|
/** 提交按钮 */
|
|
|
@ -491,7 +545,10 @@ const submitForm = () => {
|
|
|
|
if (valid) {
|
|
|
|
if (valid) {
|
|
|
|
buttonLoading.value = true;
|
|
|
|
buttonLoading.value = true;
|
|
|
|
convertToSeconds();
|
|
|
|
convertToSeconds();
|
|
|
|
if (form.value.technologyId) {
|
|
|
|
if (isCopy.value) {
|
|
|
|
|
|
|
|
form.value.prodTechnologyStepInfoList = prodTechnologyStepInfoList;
|
|
|
|
|
|
|
|
await copyTechnologyInfo(form.value).finally(() => buttonLoading.value = false);
|
|
|
|
|
|
|
|
} else if (form.value.technologyId) {
|
|
|
|
form.value.prodTechnologyStepInfoList = prodTechnologyStepInfoList;
|
|
|
|
form.value.prodTechnologyStepInfoList = prodTechnologyStepInfoList;
|
|
|
|
await updateTechnologyInfo(form.value).finally(() => buttonLoading.value = false);
|
|
|
|
await updateTechnologyInfo(form.value).finally(() => buttonLoading.value = false);
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
@ -501,6 +558,7 @@ const submitForm = () => {
|
|
|
|
dialog.visible = false;
|
|
|
|
dialog.visible = false;
|
|
|
|
stepOpen.value = false;
|
|
|
|
stepOpen.value = false;
|
|
|
|
form.value.prodTechnologyStepInfoList = [];
|
|
|
|
form.value.prodTechnologyStepInfoList = [];
|
|
|
|
|
|
|
|
isCopy.value = false;
|
|
|
|
await getList();
|
|
|
|
await getList();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|