| | |
| | | > |
| | | <div style="background-color: #a8cbfb; border-radius: 4px"> |
| | | 升级中 |
| | | <el-progress v-if="row.firmware_progress>0 && row.firmware_progress<100" :percentage="row.firmware_progress"></el-progress> |
| | | <el-progress |
| | | v-if="row.firmware_progress > 0 && row.firmware_progress < 100" |
| | | :percentage="row.firmware_progress" |
| | | ></el-progress> |
| | | </div> |
| | | </div> |
| | | </template> |
| | |
| | | getDeviceUpgradeInfo, |
| | | ota, |
| | | } from '@/api/device/device'; |
| | | |
| | | import { |
| | | getLazyTree |
| | | } from '@/api/base/region'; |
| | | |
| | | import { mapGetters } from 'vuex'; |
| | | import FirmwareManage from './components/firmwareManage.vue'; |
| | | export default { |
| | |
| | | tree: true, |
| | | height: '460', |
| | | calcHeight: 32, |
| | | dialogWidth: 950, |
| | | dialogWidth: 1050, |
| | | tip: false, |
| | | searchShow: true, |
| | | searchMenuSpan: 6, |
| | |
| | | label: '机巢编号', |
| | | prop: 'machine_nest_sn', |
| | | labelWidth: 130, |
| | | editDisabled: true, |
| | | rules: [ |
| | | { |
| | | required: false, |
| | |
| | | ], |
| | | }, |
| | | { |
| | | label: '行政区划', |
| | | prop: 'area_code', |
| | | type: 'cascader', |
| | | labelWidth: 130, |
| | | hide:true, |
| | | props: { |
| | | label: 'title', |
| | | value: 'value', |
| | | }, |
| | | dataType:"string", |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: '请选择所在省份', |
| | | trigger: 'blur', |
| | | }, |
| | | ], |
| | | lazy: true, |
| | | lazyLoad(node, resolve) { |
| | | let level = node.level; |
| | | let list = []; |
| | | let callback = () => { |
| | | resolve( |
| | | (list || []).map(ele => { |
| | | return Object.assign(ele, { |
| | | leaf: !ele.hasChildren, |
| | | }); |
| | | }) |
| | | ); |
| | | }; |
| | | if (level == 0) { |
| | | getLazyTree('000000000000').then(res => { |
| | | list = res.data.data; |
| | | callback(); |
| | | }); |
| | | } else if (level>0 && level<5 ) { |
| | | getLazyTree(node.value).then(res => { |
| | | list = res.data.data; |
| | | callback(); |
| | | }); |
| | | } else { |
| | | callback(); |
| | | } |
| | | }, |
| | | }, |
| | | // { |
| | | // label: '所在市州', |
| | | // prop: 'city_code', |
| | | // type: 'select', |
| | | // labelWidth: 130, |
| | | // cascader: ['district_code'], |
| | | // props: { |
| | | // label: 'name', |
| | | // value: 'code', |
| | | // }, |
| | | // dicUrl: `/api/blade-system/region/select?code={{province_code}}`, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: '请选择所在市州', |
| | | // trigger: 'blur', |
| | | // }, |
| | | // ], |
| | | // }, |
| | | // { |
| | | // label: '所在区县', |
| | | // prop: 'district_code', |
| | | // type: 'select', |
| | | // labelWidth: 130, |
| | | // cascader: ['town_code'], |
| | | // props: { |
| | | // label: 'name', |
| | | // value: 'code', |
| | | // }, |
| | | // dicUrl: `/api/blade-system/region/select?code={{city_code}}`, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: '请选择所在区县', |
| | | // trigger: 'blur', |
| | | // }, |
| | | // ], |
| | | // }, |
| | | // { |
| | | // label: '所在乡镇', |
| | | // prop: 'town_code', |
| | | // type: 'select', |
| | | // labelWidth: 130, |
| | | // cascader: ['village_code'], |
| | | // props: { |
| | | // label: 'name', |
| | | // value: 'code', |
| | | // }, |
| | | // dicUrl: `/api/blade-system/region/select?code={{district_code}}`, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: '请选择所在乡镇', |
| | | // trigger: 'blur', |
| | | // }, |
| | | // ], |
| | | // }, |
| | | // { |
| | | // label: '所在社区/村委会', |
| | | // prop: 'village_code', |
| | | // type: 'select', |
| | | // labelWidth: 130, |
| | | // props: { |
| | | // label: 'name', |
| | | // value: 'code', |
| | | // }, |
| | | // dicUrl: `/api/blade-system/region/select?code={{town_code}}`, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: '请选择所在社区/村委会', |
| | | // trigger: 'blur', |
| | | // }, |
| | | // ], |
| | | // }, |
| | | { |
| | | label: '在线时间', |
| | | prop: 'login_time', |
| | | type: 'date', |
| | |
| | | @current-change="currentChange" |
| | | @size-change="sizeChange" |
| | | @refresh-change="refreshChange" |
| | | @on-load="onLoad" |
| | | > |
| | | <template #menu-left> |
| | | <el-button type="primary" icon="el-icon-plus" plain @click="openFirmwareUpload" |
| | |
| | | :rules="rules" |
| | | > |
| | | <el-form-item label="设备名称" prop="device_name"> |
| | | <el-input v-model="importForm.device_name" clearable disabled></el-input> |
| | | <el-input v-model="importForm.device_name" clearable></el-input> |
| | | </el-form-item> |
| | | |
| | | <!-- 上传 --> |
| | |
| | | label: '上传状态', |
| | | prop: 'upload_status', |
| | | addDisplay: false, |
| | | editDisplay: false, |
| | | labelWidth: 130, |
| | | type: 'select', |
| | | width: 100, |
| | |
| | | { |
| | | label: '机巢编号', |
| | | prop: 'machine_nest_sn', |
| | | editDisabled: true, |
| | | labelWidth: 130, |
| | | rules: [ |
| | | { |