This commit is contained in:
2022-12-07 16:34:33 +08:00
parent 533073eb11
commit 13dc4bfddc
2 changed files with 87 additions and 88 deletions

View File

@@ -210,7 +210,6 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="关联设备异常时前工位取货点" prop="device_code" label-width="200"> <el-form-item label="关联设备异常时前工位取货点" prop="device_code" label-width="200">

View File

@@ -1,7 +1,7 @@
<template> <template>
<div style="overflow: hidden"> <div style="overflow: hidden">
<el-row> <el-row>
<div id="container" className="container" style="min-height: 100%"/> <div id="container" className="container" style="min-height: 100%" />
</el-row> </el-row>
<!--点击设备显示信息--> <!--点击设备显示信息-->
<el-dialog <el-dialog
@@ -33,7 +33,7 @@
<el-dialog title="设备设置" :visible.sync="dialogFormVisible" width="35%"> <el-dialog title="设备设置" :visible.sync="dialogFormVisible" width="35%">
<el-form :model="form" size="small"> <el-form :model="form" size="small">
<el-form-item label="设备编号" prop="device_code" label-width="80px"> <el-form-item label="设备编号" prop="device_code" label-width="80px">
<el-input v-model="form.device_code" :disabled="true"/> <el-input v-model="form.device_code" :disabled="true" />
</el-form-item> </el-form-item>
<el-form-item label="设备状态" label-width="80px"> <el-form-item label="设备状态" label-width="80px">
@@ -54,7 +54,7 @@
<el-dialog title="设备设置" :visible.sync="dialogFormVisible3" width="35%"> <el-dialog title="设备设置" :visible.sync="dialogFormVisible3" width="35%">
<el-form :model="form" size="small"> <el-form :model="form" size="small">
<el-form-item label="设备编号" prop="device_code" label-width="80px"> <el-form-item label="设备编号" prop="device_code" label-width="80px">
<el-input v-model="form.device_code" :disabled="true"/> <el-input v-model="form.device_code" :disabled="true" />
</el-form-item> </el-form-item>
<el-form-item label="设备状态" label-width="80px"> <el-form-item label="设备状态" label-width="80px">
<el-radio-group v-model="form.hasGoodStatus"> <el-radio-group v-model="form.hasGoodStatus">
@@ -64,7 +64,7 @@
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="物料编码" prop="material_type" label-width="80px"> <el-form-item label="物料编码" prop="material_type" label-width="80px">
<el-input v-model="form.material_type"/> <el-input v-model="form.material_type" />
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
@@ -77,7 +77,7 @@
<el-dialog title="设备设置" :visible.sync="dialogFormVisible4" width="35%"> <el-dialog title="设备设置" :visible.sync="dialogFormVisible4" width="35%">
<el-form :model="form" size="small"> <el-form :model="form" size="small">
<el-form-item label="设备编号" prop="device_code" label-width="120px"> <el-form-item label="设备编号" prop="device_code" label-width="120px">
<el-input v-model="form.device_code" :disabled="true"/> <el-input v-model="form.device_code" :disabled="true" />
</el-form-item> </el-form-item>
<el-form-item label="禁用机械手" prop="is_disable" label-width="120px"> <el-form-item label="禁用机械手" prop="is_disable" label-width="120px">
<el-radio-group v-model="form.is_disable"> <el-radio-group v-model="form.is_disable">
@@ -96,11 +96,11 @@
<el-dialog title="设备设置" :visible.sync="dialogFormVisible1" width="35%"> <el-dialog title="设备设置" :visible.sync="dialogFormVisible1" width="35%">
<el-form :model="form" size="small"> <el-form :model="form" size="small">
<el-form-item label="设备编号" prop="device_code" label-width="80px"> <el-form-item label="设备编号" prop="device_code" label-width="80px">
<el-input v-model="form.device_code" :disabled="true"/> <el-input v-model="form.device_code" :disabled="true" />
</el-form-item> </el-form-item>
<el-form-item label="条码" label-width="80px"> <el-form-item label="条码" label-width="80px">
<el-input v-model="form.barcode" :disabled="false"/> <el-input v-model="form.barcode" :disabled="false" />
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
@@ -115,12 +115,12 @@
import crudStage from '@/api/logicflow/stage' import crudStage from '@/api/logicflow/stage'
import paramCrud from '@/api/system/param' import paramCrud from '@/api/system/param'
import deviceCrud from '@/api/acs/device/device' import deviceCrud from '@/api/acs/device/device'
import {getDeviceByCodes} from '@/api/acs/device/deviceStageMonitor' import { getDeviceByCodes } from '@/api/acs/device/deviceStageMonitor'
import '@logicflow/core/dist/style/index.css' import '@logicflow/core/dist/style/index.css'
import '@logicflow/extension/lib/style/index.css' import '@logicflow/extension/lib/style/index.css'
import {LogicFlow} from '@logicflow/core' import { LogicFlow } from '@logicflow/core'
import {registerCustomElement} from '@/views/system/logicflow/editor/components/node' import { registerCustomElement } from '@/views/system/logicflow/editor/components/node'
let data = {} let data = {}
let lf = '' let lf = ''
@@ -193,10 +193,10 @@ export default {
}) })
lf.setTheme( lf.setTheme(
{ {
baseEdge: {strokeWidth: 1}, baseEdge: { strokeWidth: 1 },
baseNode: {strokeWidth: 1}, baseNode: { strokeWidth: 1 },
nodeText: {overflowMode: 'autoWrap', lineHeight: 1.5}, nodeText: { overflowMode: 'autoWrap', lineHeight: 1.5 },
edgeText: {overflowMode: 'autoWrap', lineHeight: 1.5} edgeText: { overflowMode: 'autoWrap', lineHeight: 1.5 }
} }
) )
// 注册自定义元素 // 注册自定义元素
@@ -206,7 +206,7 @@ export default {
nodeMenu: false nodeMenu: false
}) })
lf.on('node:click', (data, e) => { // 鼠标点击节点 lf.on('node:click', (data, e) => { // 鼠标点击节点
console.log("data: ", data) console.log('data: ', data)
// 展开显示设备信息 // 展开显示设备信息
if (data.data.type !== 'pro-rect' && data.data.type !== 'pro-circle' && data.data.type !== 'triangle' && data.data.type !== 'rect-radius') { if (data.data.type !== 'pro-rect' && data.data.type !== 'pro-circle' && data.data.type !== 'triangle' && data.data.type !== 'rect-radius') {
if (data.data.properties.device) { if (data.data.properties.device) {
@@ -303,8 +303,8 @@ export default {
if (item.device_code && item.data) { if (item.device_code && item.data) {
// console.log('item', item) // console.log('item', item)
this.arr = [ this.arr = [
{name: '设备编号', value: item.device_code}, { name: '设备编号', value: item.device_code },
{name: '设备名称', value: item.device_name} { name: '设备名称', value: item.device_name }
] ]
const data = item.data const data = item.data
for (const val in data) { for (const val in data) {
@@ -312,209 +312,209 @@ export default {
continue continue
} }
if (val === 'message' && data.isError === true) { if (val === 'message' && data.isError === true) {
const obj = {name: '设备信息', value: data[val]} const obj = { name: '设备信息', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} }
if (val === 'message' && data.isError === 'false') { if (val === 'message' && data.isError === 'false') {
const obj = {name: '异常信息', value: data[val]} const obj = { name: '异常信息', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} }
if (val === 'move') { if (val === 'move') {
const obj = {name: '光电信号', value: data[val]} const obj = { name: '光电信号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'mode') { } else if (val === 'mode') {
const obj = {name: '模式', value: data[val]} const obj = { name: '模式', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'error') { } else if (val === 'error') {
const obj = {name: '报警', value: data[val]} const obj = { name: '报警', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'ip') { } else if (val === 'ip') {
const obj = {name: 'IP地址', value: data[val]} const obj = { name: 'IP地址', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'number') { } else if (val === 'number') {
const obj = {name: '托盘数量', value: data[val]} const obj = { name: '托盘数量', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'instruction_message') { } else if (val === 'instruction_message') {
const obj = {name: '指令信息', value: data[val]} const obj = { name: '指令信息', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'last_instruction_message') { } else if (val === 'last_instruction_message') {
const obj = {name: '上次指令信息', value: data[val]} const obj = { name: '上次指令信息', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'container') { } else if (val === 'container') {
const obj = {name: '载具号', value: data[val]} const obj = { name: '载具号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'last_container') { } else if (val === 'last_container') {
const obj = {name: '上次载具号', value: data[val]} const obj = { name: '上次载具号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'instruction_code') { } else if (val === 'instruction_code') {
const obj = {name: '指令号', value: data[val]} const obj = { name: '指令号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'last_instruction_code') { } else if (val === 'last_instruction_code') {
const obj = {name: '上次指令号', value: data[val]} const obj = { name: '上次指令号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'action') { } else if (val === 'action') {
const obj = {name: '动作信号', value: data[val]} const obj = { name: '动作信号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'io_action') { } else if (val === 'io_action') {
const obj = {name: '允许进出信号', value: data[val]} const obj = { name: '允许进出信号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'material') { } else if (val === 'material') {
const obj = {name: '物料', value: data[val]} const obj = { name: '物料', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'batch') { } else if (val === 'batch') {
const obj = {name: '批次', value: data[val]} const obj = { name: '批次', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'requestSucess') { } else if (val === 'requestSucess') {
const obj = {name: '是否请求任务', value: data[val]} const obj = { name: '是否请求任务', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'applySucess') { } else if (val === 'applySucess') {
const obj = {name: '是否申请指令', value: data[val]} const obj = { name: '是否申请指令', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'message') { } else if (val === 'message') {
const obj = {name: '说明', value: data[val]} const obj = { name: '说明', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'status') { } else if (val === 'status') {
const obj = {name: '设备状态', value: data[val]} const obj = { name: '设备状态', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'open_time') { } else if (val === 'open_time') {
const obj = {name: '开机时间', value: data[val]} const obj = { name: '开机时间', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'close_time') { } else if (val === 'close_time') {
const obj = {name: '关机时间', value: data[val]} const obj = { name: '关机时间', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'standby_time') { } else if (val === 'standby_time') {
const obj = {name: '待机时间', value: data[val]} const obj = { name: '待机时间', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'production_time') { } else if (val === 'production_time') {
const obj = {name: '生产时间', value: data[val]} const obj = { name: '生产时间', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'error_time') { } else if (val === 'error_time') {
const obj = {name: '故障时间', value: data[val]} const obj = { name: '故障时间', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'weight') { } else if (val === 'weight') {
const obj = {name: '生产重量', value: data[val]} const obj = { name: '生产重量', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'order_No') { } else if (val === 'order_No') {
const obj = {name: '工单号', value: data[val]} const obj = { name: '工单号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'mix_num') { } else if (val === 'mix_num') {
const obj = {name: '碾次', value: data[val]} const obj = { name: '碾次', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'barcode') { } else if (val === 'barcode') {
const obj = {name: '条码', value: data[val]} const obj = { name: '条码', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'qualified') { } else if (val === 'qualified') {
const obj = {name: '合格数量', value: data[val]} const obj = { name: '合格数量', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'unqualified') { } else if (val === 'unqualified') {
const obj = {name: '不合格数量', value: data[val]} const obj = { name: '不合格数量', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'put_station') { } else if (val === 'put_station') {
const obj = {name: '当前码盘工位', value: data[val]} const obj = { name: '当前码盘工位', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'encoder_qty') { } else if (val === 'encoder_qty') {
const obj = {name: '码盘数量', value: data[val]} const obj = { name: '码盘数量', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'outKiln_move') { } else if (val === 'outKiln_move') {
const obj = {name: '出窑光电', value: data[val]} const obj = { name: '出窑光电', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'outKiln_barcode') { } else if (val === 'outKiln_barcode') {
const obj = {name: '出窑条码', value: data[val]} const obj = { name: '出窑条码', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'outKiln_device') { } else if (val === 'outKiln_device') {
const obj = {name: '出窑设备', value: data[val]} const obj = { name: '出窑设备', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'car_sum') { } else if (val === 'car_sum') {
const obj = {name: '窑车总数', value: data[val]} const obj = { name: '窑车总数', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'nullCar_qty') { } else if (val === 'nullCar_qty') {
const obj = {name: '空窑车数', value: data[val]} const obj = { name: '空窑车数', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'burning_car_qty') { } else if (val === 'burning_car_qty') {
const obj = {name: '在烧窑车数', value: data[val]} const obj = { name: '在烧窑车数', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'container_qty') { } else if (val === 'container_qty') {
const obj = {name: '托盘数', value: data[val]} const obj = { name: '托盘数', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'tray_crib_qty') { } else if (val === 'tray_crib_qty') {
const obj = {name: '托盘垛数', value: data[val]} const obj = { name: '托盘垛数', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'total_container') { } else if (val === 'total_container') {
const obj = {name: '托盘总数量', value: data[val]} const obj = { name: '托盘总数量', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'total_split') { } else if (val === 'total_split') {
const obj = {name: '累计拆垛数量', value: data[val]} const obj = { name: '累计拆垛数量', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'getStation') { } else if (val === 'getStation') {
const obj = {name: '当前抓取工位', value: data[val]} const obj = { name: '当前抓取工位', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'putStation') { } else if (val === 'putStation') {
const obj = {name: '当前码盘工位', value: data[val]} const obj = { name: '当前码盘工位', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'move_1') { } else if (val === 'move_1') {
const obj = {name: '前工位光电信号', value: data[val]} const obj = { name: '前工位光电信号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'move_2') { } else if (val === 'move_2') {
const obj = {name: '后工位光电信号', value: data[val]} const obj = { name: '后工位光电信号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'action_1') { } else if (val === 'action_1') {
const obj = {name: '前工位动作信号', value: data[val]} const obj = { name: '前工位动作信号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'action_2') { } else if (val === 'action_2') {
const obj = {name: '后工位动作信号', value: data[val]} const obj = { name: '后工位动作信号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'walk_y') { } else if (val === 'walk_y') {
const obj = {name: '行走列', value: data[val]} const obj = { name: '行走列', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'task1') { } else if (val === 'task1') {
const obj = {name: '前工位任务号', value: data[val]} const obj = { name: '前工位任务号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'task2') { } else if (val === 'task2') {
const obj = {name: '后工位任务号', value: data[val]} const obj = { name: '后工位任务号', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'labeling_qty') { } else if (val === 'labeling_qty') {
const obj = {name: '贴标数量', value: data[val]} const obj = { name: '贴标数量', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'container_type') { } else if (val === 'container_type') {
const obj = {name: '托盘类型', value: data[val]} const obj = { name: '托盘类型', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'specifications') { } else if (val === 'specifications') {
const obj = {name: '规格', value: data[val]} const obj = { name: '规格', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'onoff_status') { } else if (val === 'onoff_status') {
const obj = {name: '开关机状态', value: data[val]} const obj = { name: '开关机状态', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'task_qty') { } else if (val === 'task_qty') {
const obj = {name: '当前任务数量', value: data[val]} const obj = { name: '当前任务数量', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'finishTask_qty') { } else if (val === 'finishTask_qty') {
const obj = {name: '完成任务数量', value: data[val]} const obj = { name: '完成任务数量', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'AlongSide') { } else if (val === 'AlongSide') {
const obj = {name: 'A长边', value: data[val]} const obj = { name: 'A长边', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'BshortSide') { } else if (val === 'BshortSide') {
const obj = {name: 'B短边', value: data[val]} const obj = { name: 'B短边', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'Htrapezoidal') { } else if (val === 'Htrapezoidal') {
const obj = {name: 'H梯形高', value: data[val]} const obj = { name: 'H梯形高', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'Wthickness') { } else if (val === 'Wthickness') {
const obj = {name: 'W厚度', value: data[val]} const obj = { name: 'W厚度', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'is_disable') { } else if (val === 'is_disable') {
const obj = {name: '是否禁用', value: data[val]} const obj = { name: '是否禁用', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'notCreateTaskMessage') { } else if (val === 'notCreateTaskMessage') {
const obj = {name: '任务创建失败原因', value: data[val]} const obj = { name: '任务创建失败原因', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'notCreateInstMessage') { } else if (val === 'notCreateInstMessage') {
const obj = {name: '指令创建失败原因', value: data[val]} const obj = { name: '指令创建失败原因', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} else if (val === 'feedMessage') { } else if (val === 'feedMessage') {
const obj = {name: '未反馈电气信号原因', value: data[val]} const obj = { name: '未反馈电气信号原因', value: data[val] }
this.arr.push(obj) this.arr.push(obj)
} }
} }
@@ -523,7 +523,7 @@ export default {
}, },
initStatus() { // 初始化所有节点的设备信息通过节点id对应设备编号 initStatus() { // 初始化所有节点的设备信息通过节点id对应设备编号
let resion = {} let resion = {}
resion = lf.getGraphData().nodes.map(item => ({id: item.id, device_code: item.properties.device})) resion = lf.getGraphData().nodes.map(item => ({ id: item.id, device_code: item.properties.device }))
getDeviceByCodes(resion).then(res => { getDeviceByCodes(resion).then(res => {
console.log(res) console.log(res)
this.allDeviceMsg = res // 拿到所有节点的设备数据 this.allDeviceMsg = res // 拿到所有节点的设备数据
@@ -549,7 +549,7 @@ export default {
} }
} }
// 设置动态实时显示设备信息 // 设置动态实时显示设备信息
const {nodes} = lf.getSelectElements() // 获取选中的节点 const { nodes } = lf.getSelectElements() // 获取选中的节点
// console.log(nodes) // console.log(nodes)
if (nodes.length === 1) { // 因为是定时器,没有选中则不用实时更新显示数据 if (nodes.length === 1) { // 因为是定时器,没有选中则不用实时更新显示数据
this.moveShow(nodes[0]) // 监控模式下不可能托选,因此就只有一个数据 this.moveShow(nodes[0]) // 监控模式下不可能托选,因此就只有一个数据
@@ -558,7 +558,7 @@ export default {
}, },
dialogSave() { dialogSave() {
deviceCrud.changeDeviceStatus(this.form).then(res => { deviceCrud.changeDeviceStatus(this.form).then(res => {
this.$notify({title: '操作成功', message: '', type: 'success'}) this.$notify({ title: '操作成功', message: '', type: 'success' })
this.dialogFormVisible = false this.dialogFormVisible = false
this.dialogFormVisible3 = false this.dialogFormVisible3 = false
this.dialogFormVisible4 = false this.dialogFormVisible4 = false