# frontend/src/views/home/components/table.vue

#	frontend/src/views/home/tabs/dashboard.vue
#	frontend/src/views/system/dictionary/dictTree/index.vue
This commit is contained in:
sjl
2024-11-14 18:30:53 +08:00
8 changed files with 157 additions and 41 deletions

View File

@@ -71,11 +71,11 @@
>
<el-button type="primary" v-if="form.activeTabs === 3"
>报告批量生成</el-button
>批量生成</el-button
>
<el-button type="primary" v-if="form.activeTabs === 4"
>设备批量归档</el-button
>批量归档</el-button
>
</el-form-item>
</el-form>
@@ -86,9 +86,40 @@
type="primary"
link
:icon="View"
@click="openDrawer('报告查看', scope.row)"
@click="openDrawer('查看', scope.row)"
v-if="form.activeTabs === 3 && form.activeChildTabs === 0"
>查看</el-button
>
<div class='cn-render-buttons' v-if="form.activeTabs === 3 && form.activeChildTabs === 1">
<el-dropdown trigger='click'>
<el-button link type='primary' :icon="View" class='table-operate'>
<div class='table-operate-text'>查看...</div>
</el-button>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item>Q/GDW 10650.2-2021 报告</el-dropdown-item>
<el-dropdown-item>Q/GDW 1650.2-2016 报告</el-dropdown-item>
<el-dropdown-item>GBT 19862-2016 报告</el-dropdown-item>
</el-dropdown-menu>
</template>
</el-dropdown>
</div>
<el-button
type="primary"
link
:icon="EditPen"
@click="openDrawer('生成', scope.row)"
v-if="form.activeTabs === 3"
>报告查看</el-button
>生成</el-button
>
<el-button
type="primary"
link
:icon="EditPen"
@click="openDrawer('归档', scope.row)"
v-if="form.activeTabs === 4"
>归档</el-button
>
<el-button
type="primary"
@@ -114,7 +145,7 @@
import { useRouter } from "vue-router";
import type { Device } from '@/api/device/interface'
import { useHandleData } from "@/hooks/useHandleData";
import { ElMessage, ElMessageBox } from "element-plus";
import { ElMessage, ElMessageBox, ElLoading} from "element-plus";
import ProTable from "@/components/ProTable/index.vue";
import { type ProTableInstance, type ColumnProps } from '@/components/ProTable/interface'
import {
@@ -245,6 +276,7 @@ let checkResultList = reactive([
//查询条件
const form: any = ref({
activeTabs: 0, //功能选择
activeChildTabs: 0,//子功能选择
checkStatus: 0, //检测状态
checkReportStatus: 0, //检测报告状态
checkResult: 0, //检测结果
@@ -552,10 +584,15 @@ const changeStatus = async (row: User.ResUserList) => {
proTable.value?.getTableList();
};
//顶部功能切换时修改activeTabs
const changeActiveTabs = (val: number) => {
const changeActiveTabs = (val: number,val2: number) => {
form.value.activeTabs = val;
form.value.activeChildTabs= val2;
tableHeaderInit(val)
<<<<<<< HEAD
//console.log(form,val,666)
=======
console.log(form,val,val2,666)
>>>>>>> 12201e065fe575761995440a3bf1e9876321c6e6
};
//根据当前功能,初始化表头下拉框中的默认值和禁用值
@@ -600,7 +637,7 @@ function tableHeaderInit(val: number) {
disableCheckStatus("归档")
disableCheckReportStatus("未生成报告")
disablecheckResultList("未出结果")
operationShow.value = false;
operationShow.value = true;
break;
case 5://设备浏览
operationShow.value = true;
@@ -663,14 +700,35 @@ const handleTest = () => {
}
};
// 打开 drawer(新增、查看、编辑)
const openDrawer = (title: string, row: any) => {
if (title === '报告查看')
console.log(title);
if (title === '查看')
{
console.log(title);
const link = document.createElement('a');
const fileUrl = 'G:/南网数研院非结构化数据生成程序MMS_JSON修改记录.docx'; // 文件路径
link.href = fileUrl;
link.target = '_blank'; // 在新标签页中打开
link.download = 'file.docx'; // 设置下载文件的名称
link.click();
}
else if (title === '误差体系编辑')
console.log(title);
if (title === '归档')
{
const loading = ElLoading.service({
lock: true,
text: '归档中...',
background: 'rgba(0, 0, 0, 0.7)',
})
setTimeout(() => {
loading.close()
ElMessage.success("归档成功");
}, 2000)
}
}
onMounted(() => {

View File

@@ -112,7 +112,8 @@ import Table from "../components/table.vue";
import { data } from "@/api/plan/static.json";
const treeRef = ref();
const form: any = ref({
activeTabs: 0, //功能选择
activeTabs: 0, //功能选择,例如报告生成
activeChildTabs: 0,//子功能选择,例如未检设备报告生成,或已检设备更换误差体系生成
checkStatus: 0, //检测状态
checkReportStatus: 0, //检测报告状态
checkResult: 0, //检测结果
@@ -132,7 +133,12 @@ const handleChange = (val: string[]) => {
const handleTabsChange = (val) => {
form.value.activeTabs = 0;
form.value.activeTabs = 3;
<<<<<<< HEAD
// console.log(val)
=======
form.value.activeChildTabs = Number(val);
console.log(val)
>>>>>>> 12201e065fe575761995440a3bf1e9876321c6e6
}
localStorage.setItem("color", "red");
//功能选择数据
@@ -207,7 +213,7 @@ watch(
() => form.value,
(val, oldVal) => {
if (val) {
tableRef1.value && tableRef1.value.changeActiveTabs(form.value.activeTabs);
tableRef1.value && tableRef1.value.changeActiveTabs(form.value.activeTabs,form.value.activeChildTabs);
}
},
{
@@ -219,7 +225,8 @@ watch(
() => form.value,
(val, oldVal) => {
if (val) {
tableRef2.value && tableRef2.value.changeActiveTabs(form.value.activeTabs);
tableRef2.value && tableRef2.value.changeActiveTabs(form.value.activeTabs,form.value.activeChildTabs);
console.log(form.value.activeTabs,form.value.activeChildTabs);
}
},
{
@@ -281,6 +288,7 @@ const planDetail = () => {
const handleCheckFunction = (val: any) => {
// console.log("test",val);
editableTabsValue.value = '0';
form.value.activeChildTabs = 0;
tabsList.value.map((item: any, index: any) => {
if (val == item.value) {
item.checked = true;
@@ -293,7 +301,7 @@ const handleCheckFunction = (val: any) => {
switch (val) {
case 0://自动检测
tabLabel1.value = "自动检测";
tabLabel1.value = "设备检测";
break;
case 1://手动检测
tabLabel1.value = "手动检测";
@@ -398,6 +406,7 @@ onMounted(() => {
.item_text {
p {
width: 40px;
margin: 0;
font-weight: 800;
color: var(--el-color-primary);