fit: bug修复

master
李小林 6 months ago
parent 828535d94c
commit 5e9e62d65d
  1. 2
      src/api/resources-equipment/index.ts
  2. 11
      src/router/index.ts
  3. 12
      src/views/family/operate/fault-management/components/basicInfoQuery.vue
  4. 28
      src/views/family/operate/fault-management/index.vue
  5. 68
      src/views/family/operate/remote-operation/index.vue
  6. 12
      src/views/family/operate/web-applications/index.vue
  7. 7
      src/views/family/operate/workflow/components/UpdateWorkflow.vue
  8. 4
      src/views/resources/operate-type/index.vue

@ -21,7 +21,7 @@ export function getEquipmentPage(
}); });
} }
export function getEquipmentAdvancePage( export function getEquipmentAdvancePage(
data: EquipmentAdvanceQuery data: EquipmentAdvanceQuery | undefined
): AxiosPromise<EquipmentTableResult> { ): AxiosPromise<EquipmentTableResult> {
return request({ return request({
url: "/api/equipment/v1/advance-query-page", url: "/api/equipment/v1/advance-query-page",

@ -505,6 +505,17 @@ export const constantRoutes: RouteRecordRaw[] = [
title: "工作流详情", title: "工作流详情",
}, },
}, },
{
path: "/resources/web-applications",
name: "WebApplications",
component: () =>
import("@/views/family/operate/web-applications/index.vue"),
meta: {
hidden: true,
keepAlive: true,
title: "网络应用",
},
},
], ],
}, },
]; ];

@ -205,6 +205,18 @@ const getBasicInfo = (queryVO: FaultQueryVO) => {
}); });
}; };
defineExpose({ getBasicInfo }); defineExpose({ getBasicInfo });
const route = useRoute();
watch(
() => route.query.devId,
() => {
let devId = <string>route.query.devId;
if (devId) {
let vo = <FaultQueryVO>{ devId };
getBasicInfo(vo);
}
},
{ immediate: true }
);
</script> </script>
<style scoped> <style scoped>

@ -15,7 +15,9 @@
/> />
<div class="dropdown" v-if="flag" v-loading="loading"> <div class="dropdown" v-if="flag" v-loading="loading">
<div class="close" @click="flag = false"> <div class="close" @click="flag = false">
<el-icon size="18"><Close /></el-icon> <el-icon size="18">
<Close />
</el-icon>
</div> </div>
<el-scrollbar max-height="200"> <el-scrollbar max-height="200">
<div> <div>
@ -53,8 +55,8 @@
<el-radio value="adNo">AD编号</el-radio> <el-radio value="adNo">AD编号</el-radio>
<el-radio value="pppoeAccount">上网账号</el-radio> <el-radio value="pppoeAccount">上网账号</el-radio>
<el-radio disabled value="identificationNumber" <el-radio disabled value="identificationNumber"
>身份证号</el-radio >身份证号
> </el-radio>
<el-radio disabled value="phoneNumber">电话号码</el-radio> <el-radio disabled value="phoneNumber">电话号码</el-radio>
</el-radio-group> </el-radio-group>
</div> </div>
@ -148,12 +150,15 @@ const searchForm = ref<FaultQuery>({
ping: [], ping: [],
}); });
const basicInfoQueryRef = ref(); const basicInfoQueryRef = ref();
const route = useRoute();
const flag = ref<boolean>(false); const flag = ref<boolean>(false);
const faultOptions = ref<FaultQueryVO[]>([]); const faultOptions = ref<FaultQueryVO[]>([]);
const currentTab = ref<number>(0); const currentTab = ref<number>(0);
function isActive(tab: number) { function isActive(tab: number) {
return currentTab.value === tab; return currentTab.value === tab;
} }
const changTab = (tab: number) => { const changTab = (tab: number) => {
currentTab.value = tab; currentTab.value = tab;
}; };
@ -173,12 +178,23 @@ const loadBasicInfo = (vo: FaultQueryVO) => {
currentFaultQueryVO.value = vo; currentFaultQueryVO.value = vo;
basicInfoQueryRef.value.getBasicInfo(vo); basicInfoQueryRef.value.getBasicInfo(vo);
}; };
watch(
() => route.query.devId,
() => {
let devId = <string>route.query.devId;
if (devId) {
currentFaultQueryVO.value.devId = devId;
}
},
{ immediate: true }
);
</script> </script>
<style scoped> <style scoped>
:deep(.el-card__body) { :deep(.el-card__body) {
padding: 5px; padding: 5px;
} }
.tags-container { .tags-container {
width: 100%; width: 100%;
height: 50px; height: 50px;
@ -199,6 +215,7 @@ const loadBasicInfo = (vo: FaultQueryVO) => {
background-color: #fff; background-color: #fff;
border: 1px solid var(--el-border-color-light); border: 1px solid var(--el-border-color-light);
border-radius: 6px; border-radius: 6px;
&:hover { &:hover {
color: var(--el-color-primary); color: var(--el-color-primary);
} }
@ -216,10 +233,12 @@ const loadBasicInfo = (vo: FaultQueryVO) => {
} }
} }
} }
:deep(.my-label) { :deep(.my-label) {
width: 60px !important; width: 60px !important;
background: var(--el-color-white) !important; background: var(--el-color-white) !important;
} }
.dropdown { .dropdown {
border: 1px solid #ccc; border: 1px solid #ccc;
width: inherit; width: inherit;
@ -232,6 +251,7 @@ const loadBasicInfo = (vo: FaultQueryVO) => {
text-align: center; text-align: center;
color: var(--el-input-text-color, var(--el-text-color-regular)); color: var(--el-input-text-color, var(--el-text-color-regular));
} }
.dropdown .close { .dropdown .close {
height: 20px; height: 20px;
position: absolute; position: absolute;
@ -240,10 +260,12 @@ const loadBasicInfo = (vo: FaultQueryVO) => {
cursor: pointer; cursor: pointer;
right: 0; right: 0;
} }
.dropdown .close:hover { .dropdown .close:hover {
background-color: var(--el-color-primary); background-color: var(--el-color-primary);
color: var(--el-color-white); color: var(--el-color-white);
} }
.dropdown ul { .dropdown ul {
list-style: none; list-style: none;
padding: 0; padding: 0;

@ -50,13 +50,14 @@
<el-table <el-table
:data="tableData" :data="tableData"
style="width: 100%" style="width: 100%"
border
max-height="380" max-height="380"
v-loading="loading" v-loading="loading"
> >
<el-table-column <el-table-column
label="设备标识" label="设备标识"
align="center" align="center"
width="230" width="250"
fixed fixed
show-overflow-tooltip show-overflow-tooltip
v-if="columns[0].show" v-if="columns[0].show"
@ -110,11 +111,13 @@
label="设备在线时间" label="设备在线时间"
align="center" align="center"
prop="devOnlineTime" prop="devOnlineTime"
width="200"
v-if="columns[6].show" v-if="columns[6].show"
/> />
<el-table-column <el-table-column
label="设备状态" label="设备状态"
align="center" align="center"
width="110"
prop="devStatus" prop="devStatus"
v-if="columns[7].show" v-if="columns[7].show"
> >
@ -125,6 +128,7 @@
<el-table-column <el-table-column
label="是否合法" label="是否合法"
align="center" align="center"
width="110"
v-if="columns[8].show" v-if="columns[8].show"
> >
<template #default="scope"> <template #default="scope">
@ -135,12 +139,32 @@
<el-table-column <el-table-column
label="在线状态" label="在线状态"
align="center" align="center"
width="100" width="110"
prop="devOnline" prop="devOnline"
v-if="columns[9].show" v-if="columns[9].show"
> >
<template #default="scope"> <template #default="scope">
<el-tag>{{ scope.row.devOnline }}</el-tag> <el-button
:loading="onlineLoading"
:type="scope.row.devOnline === '在线' ? 'primary' : 'danger'"
link
@click="loadDevOnline(scope.row)"
>
{{ scope.row.devOnline }}</el-button
>
</template>
</el-table-column>
<el-table-column
label="操作"
align="center"
width="200"
fixed="right"
>
<template #default="scope">
<el-button type="primary" @click="skipFault(scope.row)" link
>故障管理</el-button
>
<el-button type="primary" @click="skipWebApp(scope.row)" link>网络应用</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -160,6 +184,7 @@
import { Search } from "@element-plus/icons-vue"; import { Search } from "@element-plus/icons-vue";
import { RemoteEquipmentTable } from "@/api/resources-equipment/types"; import { RemoteEquipmentTable } from "@/api/resources-equipment/types";
import { remoteTablePage } from "@/api/resources-equipment"; import { remoteTablePage } from "@/api/resources-equipment";
import { checkDevOnline } from "@/api/remote";
defineOptions({ defineOptions({
name: "RemoteOperation", name: "RemoteOperation",
inheritAttrs: false, inheritAttrs: false,
@ -177,6 +202,7 @@ const options = ref<OptionType[]>([
{ label: "设备PPPOE账号", value: "pppoeAccount" }, { label: "设备PPPOE账号", value: "pppoeAccount" },
]); ]);
const loading = ref<boolean>(false); const loading = ref<boolean>(false);
const onlineLoading = ref<boolean>(false);
const buttonColSpan = computed(() => { const buttonColSpan = computed(() => {
return queryForm.value.selectName === undefined ? 18 : 12; return queryForm.value.selectName === undefined ? 18 : 12;
}); });
@ -193,8 +219,8 @@ const columns = ref<TableColumns[]>([
{ name: "软件版本", show: true }, { name: "软件版本", show: true },
{ name: "设备上行方式", show: false }, { name: "设备上行方式", show: false },
{ name: "设备在线时间", show: false }, { name: "设备在线时间", show: false },
{ name: "设备状态", show: true }, { name: "设备状态", show: false },
{ name: "是否合法", show: true }, { name: "是否合法", show: false },
{ name: "在线状态", show: true }, { name: "在线状态", show: true },
]); ]);
const changeColumns = (newColumns: TableColumns[]) => { const changeColumns = (newColumns: TableColumns[]) => {
@ -229,6 +255,38 @@ const skipRemoteInfo = (row: RemoteEquipmentTable) => {
path: `/resources/remote-info/${row.devId}/${row.typeAndVerId}`, path: `/resources/remote-info/${row.devId}/${row.typeAndVerId}`,
}); });
}; };
const skipFault = (row: RemoteEquipmentTable) => {
router.push({
name: "FaultManagement",
query: { devId: row.devId },
});
};
const loadDevOnline = (row: RemoteEquipmentTable) => {
onlineLoading.value = true;
checkDevOnline(prop.devId)
.then(({ data }) => {
let resultCode = data.resultCode;
let resultState = data.resultState;
if ("2" === resultState) {
if (resultCode === "401") {
row.devOnline = "离线";
} else {
row.devOnline = "在线";
}
} else {
row.devOnline = "离线";
}
})
.finally(() => {
onlineLoading.value = false;
});
};
const skipWebApp = (row: RemoteEquipmentTable) => {
router.push({
name: "WebApplications",
query: { devId: row.devId },
});
};
</script> </script>
<style scoped> <style scoped>

@ -0,0 +1,12 @@
<template>
<div class="app-container"></div>
</template>
<script setup lang="ts">
defineOptions({
name: "WebApplications",
inheritAttrs: false,
});
</script>
<style scoped></style>

@ -141,7 +141,9 @@
</div> </div>
<template #footer> <template #footer>
<div class="flex justify-end"> <div class="flex justify-end">
<el-button type="primary" @click="submitForm(baseFormRef)">提交表单</el-button> <el-button type="primary" @click="submitForm(baseFormRef)"
>提交表单</el-button
>
</div> </div>
</template> </template>
</el-card> </el-card>
@ -160,7 +162,8 @@ import { getDomainOptions } from "@/api/domain";
import { import {
addPlanFilterConfig, addPlanFilterConfig,
getWorkflowStatusForm, getWorkflowStatusForm,
planConfigOption, updatePlanFilterConfig planConfigOption,
updatePlanFilterConfig,
} from "@/api/workflow"; } from "@/api/workflow";
import { confirm } from "@/utils/confirm"; import { confirm } from "@/utils/confirm";

@ -45,7 +45,7 @@
<el-table-column <el-table-column
label="组件操作名称" label="组件操作名称"
prop="operateName" prop="operateName"
align="center" align="left"
width="300" width="300"
show-overflow-tooltip show-overflow-tooltip
/> />
@ -53,7 +53,7 @@
label="组件包名称" label="组件包名称"
width="300" width="300"
prop="fileName" prop="fileName"
align="center" align="left"
show-overflow-tooltip show-overflow-tooltip
> >
<template #default="scope"> <template #default="scope">

Loading…
Cancel
Save