| src/axios.js | ●●●●● patch | view | raw | blame | history | |
| src/views/dataCenter/dataCenter.vue | ●●●●● patch | view | raw | blame | history | |
| src/views/device/airport.vue | ●●●●● patch | view | raw | blame | history | |
| src/views/device/components/DockControlPanel.vue | ●●●●● patch | view | raw | blame | history | |
| src/views/job/components/SearchBox.vue | ●●●●● patch | view | raw | blame | history | |
| src/views/resource/components/spotDetails.vue | ●●●●● patch | view | raw | blame | history |
src/axios.js
@@ -50,6 +50,25 @@ `${website.clientId}:${website.clientSecret}` )}`; } // 后端的要求 if (router.currentRoute.value.path === '/job/jobstatistics'){ const userAreaCode = store?.state?.user?.userInfo?.detail?.areaCode const paramsKey = config.method === 'get' ? 'params' : 'data'; const codeKey = config.method === 'get' ? 'areaCode' : 'area_code'; const paramCode = config?.params?.areaCode || config?.data?.area_code try { if (paramCode){ if (paramCode === userAreaCode) { config[paramsKey][codeKey] = config.method === 'get' ? '' : undefined; } else { if (!Array.isArray(config[paramsKey])){ config[paramsKey] = {...config[paramsKey],[codeKey]: paramCode} } } } }catch (e) {} } //headers判断请求是否携带token const meta = config.meta || {}; const isToken = meta.isToken === false; src/views/dataCenter/dataCenter.vue
@@ -93,13 +93,15 @@ <el-table-column property="link" label="缩略图" width="120"> <template #default="scope"> <img <div v-if="scope.row?.resultType === 5" class="videoItem1"> <img class="quanjing" @click="clickpanorama(scope.row)" v-if="scope.row?.resultType === 5" :src="scope.row?.smallUrl" alt="" /> </div> <!-- 视频 --> <div v-else-if="scope.row?.resultType === 1" class="videoItem1"> <img @@ -116,20 +118,23 @@ /> </div> <!-- 正射 --> <el-image v-else-if="scope.row?.resultType === 4" <div v-else-if="scope.row?.resultType === 4" class="videoItem1"> <el-image :src="getzsSmallImg(scope.row?.link)" :preview-src-list="[getzsSmallImg(scope.row?.link)]" fit="cover" preview-teleported /> <el-image v-else </div> <div v-else class="videoItem1"> <el-image :src="scope.row?.smallUrl" :preview-src-list="[scope.row?.showUrl]" fit="cover" preview-teleported /> </div> </template> </el-table-column> <el-table-column prop="jobTime" label="任务时间" /> @@ -1027,17 +1032,30 @@ width: 76px; height: 72px; } .videoItem1 { .playBox { width: 20px; height: 20px; position: absolute; top: 46%; left: 43%; transform: translate(-50%, -50%); cursor: pointer; } } position: relative; display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; min-height: 80px; } .playBox { position: absolute; width: 20px; height: 20px; cursor: pointer; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1; } .videoDialog :deep(.el-dialog) { height: 600px; width: 54%; src/views/device/airport.vue
@@ -26,18 +26,18 @@ <template #firmware_status="{ row }"> <div v-if="row.firmware_status == 1" class="onlineStatus1"> <el-tag type="info">无需升级</el-tag> <el-tag type="primary" effect="dark" class="active-element" @click="rollFirmware(row)">版本管理</el-tag> <!-- <el-tag type="primary" effect="dark" class="active-element" @click="rollFirmware(row)">版本管理</el-tag>--> <!-- <div style="background-color: #f1f1f1; border-radius: 4px">无需升级</div> --> </div> <div v-if="row.firmware_status == 2" class="onlineStatus1"> <!-- <el-tag type="success" effect="dark" class="active-element" @click="updateFirmware(row)" >升级固件</el-tag > --> <el-tag type="primary" effect="dark" class="active-element" @click="rollFirmware(row)">版本管理</el-tag> <!-- <el-tag type="primary" effect="dark" class="active-element" @click="rollFirmware(row)">版本管理</el-tag>--> <!-- <div @click="updateFirmware(row)" class="firmware_status">升级固件</div> --> </div> <div v-if="row.firmware_status == 3" class="onlineStatus"> <el-tag type="success" effect="dark" class="active-element" @click="updateFirmware(row)">一致性升级</el-tag> <!-- <el-tag type="success" effect="dark" class="active-element" @click="updateFirmware(row)">一致性升级</el-tag>--> <!-- <div @click="updateFirmware(row)" class="firmware_status">一致性升级</div> --> </div> <div v-if="row.firmware_status == 4" class="onlineStatus"> @@ -409,7 +409,6 @@ }, ], }, { label: '4G增强', prop: 'link_workmode', @@ -532,7 +531,18 @@ }, ], }, { label: '固件升级', prop: 'firmware_status', labelWidth: 145, width: 100, // hide: true, viewDisabled: true, addDisabled: true, editDisplay: false, //编辑显示 addDisplay: false, viewDisplay: false, }, { label: '设备SN', prop: 'device_sn', @@ -627,18 +637,6 @@ labelWidth: 145, width: 110, editDisplay: false, //编辑显示 }, { label: '固件升级', prop: 'firmware_status', labelWidth: 145, width: 100, hide: true, viewDisabled: true, addDisabled: true, editDisplay: false, //编辑显示 addDisplay: false, viewDisplay: false, }, { label: '所属部门', @@ -869,21 +867,30 @@ websocket?.initSocket() }, async messageHandler(payload) { if (!payload) { let loadData = JSON.parse(payload) if (!loadData) { return } if (payload.biz_code != 'ota_progress') { if (loadData.biz_code != 'ota_progress') { return } var data = payload.data this.data.forEach(e => { if (e.device_sn == data.sn && data.output.status == 'in_progress') { e.firmware_progress = data.output.progress.percent console.log(loadData.data.output.progress.percent, '6666') this.data.forEach((e, index) => { if ((e.device_sn == loadData.data.sn || e.child_sn == loadData.data.sn) && loadData.data.output.status == 'in_progress') { e.firmware_progress = loadData.data.output.progress.percent if (e.children[0]) { e.children[0].firmware_progress = loadData.data.output.progress.percent; } console.log('是否更新中2',e.children[0]) } if (e.device_sn == data.sn && data.output.status == 'ok') { if ((e.device_sn == loadData.data.sn || e.child_sn == loadData.data.sn) && loadData.data.output.status == 'ok') { // 升级完成修改状态 e.firmware_status = 1 if (e.children[0]) { e.children[0].firmware_status = 1 } const webscoket = this.websocketMap.get(e.workspace_id) // 关闭 webscoket?.close() @@ -892,6 +899,7 @@ this.webSocketIdSet.delete(e.workspace_id) } }) // this.$forceUpdate() }, init() { (this.page = { @@ -1133,7 +1141,7 @@ message: '操作成功!', }) this.onLoad(this.page) done() // done() }) }, // 升级固件按钮事件 @@ -1372,25 +1380,25 @@ this.$refs.crud.toggleSelection() }) }, async getFullAreaCode(areaCode) { console.log('getFullAreaCode', areaCode) if (!areaCode) return '' const code = areaCode.toString() if (code.includes(',')) return code if (code.endsWith('0000000000')) { return code } else if (code.endsWith('00000000') && !code.endsWith('0000000000')) { const provinceCode = code.substring(0, 2) + '0000000000' return `${provinceCode},${code}` } else { const provinceCode = code.substring(0, 2) + '0000000000' const cityCode = code.substring(0, 4) + '00000000' return `${provinceCode},${cityCode},${code}` } }, // async getFullAreaCode(areaCode) { // console.log('getFullAreaCode', areaCode) // if (!areaCode) return '' // // const code = areaCode.toString() // // if (code.includes(',')) return code // // if (code.endsWith('0000000000')) { // return code // } else if (code.endsWith('00000000') && !code.endsWith('0000000000')) { // const provinceCode = code.substring(0, 2) + '0000000000' // return `${provinceCode},${code}` // } else { // const provinceCode = code.substring(0, 2) + '0000000000' // const cityCode = code.substring(0, 4) + '00000000' // return `${provinceCode},${cityCode},${code}` // } // }, beforeOpen(done, type) { if (['edit', 'view'].includes(type)) { getDetail(this.form.id).then(async res => { @@ -1443,12 +1451,16 @@ this.page.total = data.total data.records.forEach(e => { e['hasChildren'] = e.has_children if (e.firmware_status == 4) { if (e.firmware_status == 4 || e.mode_code === 3) { console.log('监听了没')// 机巢升级 firmware_status === 4 this.connectWebSocket(e) } e.duration_of_insurance = [e?.insure_start_time?.slice(0, 10) || '', e?.insure_expired_time?.slice(0, 10) || ''] }) this.data = data.records this.data = data.records.map(item => ({ ...item, firmware_progress: 0 })); this.loading = false this.selectionClear() }) @@ -1460,7 +1472,10 @@ childSn: tree.child_sn, } getList(1, 10, params).then(res => { const data = res.data.data.records const data = res.data.data.records.map(item =>({ ...item, firmware_progress: 0 })) data.forEach(e => { e.duration_of_insurance = [e?.insure_start_time?.slice(0, 10) || '', e?.insure_expired_time?.slice(0, 10) || ''] }) src/views/device/components/DockControlPanel.vue
@@ -233,7 +233,7 @@ watch( () => Store.getters.deviceState, value => { console.log(value, '测试') // console.log(value, '测试') // console.log('设备状态变化', value.deviceInfo[props.deviceInfo.child_sn]) if (props.sn && (value.currentSn === props.deviceInfo.child_sn || value.currentSn === props.deviceInfo.device_sn)) { debugStatus.value = value.dockInfo[props.deviceInfo.device_sn]?.basic_osd?.mode_code === EDockModeCode.Remote_Debugging src/views/job/components/SearchBox.vue
@@ -320,27 +320,47 @@ let timeListEnum = ['TODAY', 'CURRENT_WEEK', 'CURRENT_MONTH', 'CURRENT_YEAR']; let checked = ref('month'); // 根据 周期 获取时间段 function getDateRange(date_enum) { // 设置对应的日期范围 switch (date_enum) { case 'today': dateRange.value = [dayjs().startOf('day').format(timeFormat), dayjs().endOf('day').format(timeFormat)] break case 'week': dateRange.value = [dayjs().startOf('week').format(timeFormat), dayjs().format(timeFormat)] break case 'month': dateRange.value = [dayjs().startOf('month').format(timeFormat), dayjs().format(timeFormat)] break case 'year': dateRange.value = [dayjs().startOf('year').format(timeFormat), dayjs().format(timeFormat)] break } } let timeClick = (item, index) => { if (checked.value === item){ if (checked.value === item) { checked.value = null searchForm.date_enum = undefined }else{ dateRange.value = [] } else { checked.value = item searchForm.date_enum = timeListEnum[index] getDateRange(item) } dateRange.value = [] handleSearch() }; } // 搜索 const handleSearch = () => { if (!dateRange.value) { dateRange.value = []; } if (dateRange.value && dateRange.value.length) { // 有值时 清除 日 本周 本月 本年状态 checked.value = ''; searchForm.date_enum = ''; } // if (dateRange.value && dateRange.value.length) { // // 有值时 清除 日 本周 本月 本年状态 // checked.value = ''; // searchForm.date_enum = ''; // } // 提交至store let params = { ...searchForm, @@ -446,6 +466,8 @@ dateRange.value = dateArray; const find = store.state.tags.bsTagList.find(i => i.path === '/job/jobstatistics') find && (find.query = {}) } else { getDateRange('month') } // 查询一次 handleSearch() src/views/resource/components/spotDetails.vue
@@ -30,6 +30,7 @@ v-model="item.value" placeholder="请选择图斑类型" style="width: 102%" :disabled="item.value ==='综合类'" > <el-option v-for="opt in spotTypeOptions" @@ -60,7 +61,14 @@ <div class="table-overlay"> <div class="table-content"> <div class="tabname">图斑列表</div> <el-table <div class="tabBoxLoading" v-loading="tableLoading" element-loading-text="加载中..." element-loading-background="rgba(0, 0, 0, 0.1)" > <el-table v-if="tableData.length > 0" ref="polygonTableEle" highlight-current-row :row-class-name="tableRowClassName" @@ -108,6 +116,7 @@ </template> </el-table-column> </el-table> </div> </div> </div> @@ -160,6 +169,7 @@ const homeViewer = shallowRef(null); let tbJwdList = []; const loading = ref(false); const tableLoading = ref(true); const tableData = ref([]); const AlltableData = ref([]); let total = ref(0); @@ -260,9 +270,9 @@ const isInit = ref(true); // 图斑管理表格 const getTableList = () => { tableLoading.value = true; const requestParams = { patchesInfoId: props.detailid, }; AlltableMapListApi(requestParams).then(res => { tableData.value = res.data.data?.map(item => ({ @@ -277,6 +287,8 @@ } else { entitiesAddSpot(); } }).finally(() => { tableLoading.value = false; }); }; @@ -640,7 +652,7 @@ getspotManagementTableApi(); }, 0); } else { tableLoading.value = false; tableData.value = []; isEditing.value = false; handleUpDateDrawState(false); @@ -907,9 +919,15 @@ z-index: 9999 !important; max-width: 300px; } .tabBoxLoading { height: 100%; } .el-table { flex: 1; overflow: auto; height: 98%; overflow: auto; } .btnGroups { position: absolute;