You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
185 lines
8.0 KiB
185 lines
8.0 KiB
<template>
|
|
<div class="app-container">
|
|
<el-row :gutter="15">
|
|
<el-col>
|
|
<el-card class="box-card" shadow="never">
|
|
<div slot="header" class="clearfix">
|
|
<span class="role-span">基本信息:{{ device_code }}</span>
|
|
</div>
|
|
<el-form ref="form" :inline="true" :model="form" :rules="rules" size="small" label-width="78px">
|
|
<el-row>
|
|
<el-col :span="12">
|
|
<el-form-item label="设备类型" prop="device_type">
|
|
<el-select
|
|
v-model="form.device_type"
|
|
placeholder=""
|
|
disabled
|
|
>
|
|
<el-option
|
|
v-for="item in dict.device_type"
|
|
:key="item.id"
|
|
:label="item.label"
|
|
:value="item.value"
|
|
/>
|
|
</el-select>
|
|
<span style="color: #C0C0C0;margin-left: 10px;" />
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="12">
|
|
<el-form-item label="设备编号" prop="device_code">
|
|
<el-input v-model="form.device_code" disabled />
|
|
<span style="color: #C0C0C0;margin-left: 10px;" />
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
|
|
<el-row>
|
|
<el-col :span="12">
|
|
<el-form-item label="设备名称" prop="device_name">
|
|
<el-input v-model="form.device_name" disabled />
|
|
<span style="color: #C0C0C0;margin-left: 10px;" />
|
|
</el-form-item>
|
|
</el-col>
|
|
<el-col :span="12">
|
|
<el-form-item label="设备驱动" prop="driver_code">
|
|
<el-select
|
|
v-model="form.driver_code"
|
|
placeholder=""
|
|
@change="changeDriver"
|
|
>
|
|
<el-option
|
|
v-for="item in deviceDriverList"
|
|
:key="item.code"
|
|
:label="item.name"
|
|
:value="item.code"
|
|
/>
|
|
</el-select>
|
|
</el-form-item>
|
|
</el-col>
|
|
</el-row>
|
|
</el-form>
|
|
</el-card>
|
|
</el-col>
|
|
|
|
<!-- 组件-->
|
|
<component :is="currentComponent" :parent-form="form" />
|
|
|
|
</el-row>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import crud from '@/mixins/crud'
|
|
import { get, selectDriverCodeList } from '@/api/acs/device/driverConfig'
|
|
import { getDicts } from '@/api/system/dict'
|
|
import standard_inspect_site from './driver/standard_inspect_site'
|
|
import standard_ordinary_site from './driver/standard_ordinary_site'
|
|
import weighing_site from './driver/weighing_site'
|
|
import machines_site from './driver/machines_site'
|
|
import lamp_three_color from './driver/lamp_three_color'
|
|
import standard_autodoor from './driver/standard_autodoor'
|
|
import standard_emptypallet_site from './driver/standard_emptypallet_site'
|
|
import standard_manipulator_inspect_site from './driver/standard_manipulator_inspect_site'
|
|
import standard_special_inspect_site from './driver/standard_special_inspect_site'
|
|
import special_ordinary_site from './driver/special_ordinary_site'
|
|
import standard_storage from '@/views/acs/device/driver/standard_storage'
|
|
import standard_scanner from '@/views/acs/device/driver/standard_scanner'
|
|
import standard_conveyor_control_with_scanner from '@/views/acs/device/driver/standard_conveyor_control_with_scanner'
|
|
import standard_conveyor_control_with_plcscanner from '@/views/acs/device/driver/standard_conveyor_control_with_plcscanner'
|
|
import standard_conveyor_control from '@/views/acs/device/driver/standard_conveyor_control'
|
|
import standard_conveyor_monitor from '@/views/acs/device/driver/standard_conveyor_monitor'
|
|
import non_line_manipulator_inspect_site from '@/views/acs/device/driver/non_line_manipulator_inspect_site'
|
|
import non_line_inspect_site from '@/views/acs/device/driver/non_line_inspect_site'
|
|
import manipulator_inspect_site_NDC from '@/views/acs/device/driver/manipulator_inspect_site_NDC'
|
|
import standard_manipulator_stacking_site from '@/views/acs/device/driver/standard_manipulator_stacking_site'
|
|
import standard_photoelectric_inspect_site from '@/views/acs/device/driver/standard_photoelectric_inspect_site'
|
|
import ndxy_special from '@/views/acs/device/driver/ndxy_special'
|
|
|
|
import hailiang_labeling from '@/views/acs/device/driver/hailing_zgbz/hailiang_labeling'
|
|
import hailiang_feeding_trunk from '@/views/acs/device/driver/hailing_zgbz/hailiang_feeding_trunk'
|
|
import hailiang_feeding from '@/views/acs/device/driver/hailing_zgbz/hailiang_feeding'
|
|
import hailiang_lettering from '@/views/acs/device/driver/hailing_zgbz/hailiang_lettering'
|
|
import hailiang_risking from '@/views/acs/device/driver/hailing_zgbz/hailiang_risking'
|
|
import hailiang_strapping from '@/views/acs/device/driver/hailing_zgbz/hailiang_strapping'
|
|
import hailiang_coating from '@/views/acs/device/driver/hailing_zgbz/hailiang_coating'
|
|
import hailiang_flat from '@/views/acs/device/driver/hailing_zgbz/hailiang_flat'
|
|
|
|
import hailiang_special_pick_station from '@/views/acs/device/driver/hailiang_one/hailiang_special_pick_station'
|
|
import hailiang_special_empty_station from '@/views/acs/device/driver/hailiang_one/hailiang_special_empty_station'
|
|
import hailiang_special_full_station from '@/views/acs/device/driver/hailiang_one/hailiang_special_full_station'
|
|
import hailiang_special_pour_station from '@/views/acs/device/driver/hailiang_one/hailiang_special_pour_station'
|
|
import hailiang_special_device from '@/views/acs/device/driver/hailiang_one/hailiang_special_device'
|
|
|
|
export default {
|
|
name: 'DeviceConfig',
|
|
components: { standard_ordinary_site, standard_inspect_site, standard_autodoor,
|
|
standard_emptypallet_site, standard_manipulator_inspect_site, standard_special_inspect_site,
|
|
lamp_three_color, standard_storage, special_ordinary_site, standard_scanner, standard_conveyor_control_with_scanner,
|
|
standard_conveyor_control_with_plcscanner, standard_conveyor_control, standard_conveyor_monitor, weighing_site, machines_site, non_line_manipulator_inspect_site,
|
|
non_line_inspect_site, manipulator_inspect_site_NDC, standard_manipulator_stacking_site,
|
|
standard_photoelectric_inspect_site, ndxy_special, hailiang_flat,
|
|
hailiang_labeling, hailiang_feeding_trunk, hailiang_feeding, hailiang_lettering, hailiang_risking, hailiang_strapping, hailiang_coating,
|
|
hailiang_special_pick_station, hailiang_special_empty_station, hailiang_special_full_station, hailiang_special_pour_station, hailiang_special_device },
|
|
dicts: ['device_type'],
|
|
mixins: [crud],
|
|
data() {
|
|
return {
|
|
currentComponent: '',
|
|
activeName: 'first',
|
|
device_name: '',
|
|
tableHeight: 550,
|
|
columnLoading: false,
|
|
configLoading: false,
|
|
dicts: [],
|
|
syncLoading: false,
|
|
genLoading: false,
|
|
form: { id: null, device_name: '', device_type: '', name: '', code: '', driver_code: '' },
|
|
deviceDriverList: [],
|
|
rules: {
|
|
driver_code: [
|
|
{ required: true, message: '设备驱动不能为空', trigger: 'blur' }
|
|
]
|
|
}
|
|
}
|
|
},
|
|
created() {
|
|
this.tableHeight = document.documentElement.clientHeight - 385
|
|
this.device_code = this.$route.params.device_code
|
|
this.$nextTick(() => {
|
|
get(this.device_code).then(data => {
|
|
this.form = data.device
|
|
// 默认是普通站点
|
|
// this.currentComponent = 'standard_ordinary_site'
|
|
if (data.device.driver_code) {
|
|
this.currentComponent = data.device.driver_code
|
|
}
|
|
})
|
|
selectDriverCodeList(this.device_code).then(data => {
|
|
this.deviceDriverList = data
|
|
})
|
|
getDicts().then(data => {
|
|
this.dicts = data
|
|
})
|
|
})
|
|
},
|
|
methods: {
|
|
changeDriver(val) {
|
|
this.currentComponent = val
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style rel="stylesheet/scss" lang="scss">
|
|
.edit-input {
|
|
.el-input__inner {
|
|
border: 1px solid #e5e6e7;
|
|
}
|
|
}
|
|
</style>
|
|
|
|
<style scoped>
|
|
::v-deep .input-with-select .el-input-group__prepend {
|
|
background-color: #fff;
|
|
}
|
|
</style>
|
|
|