Commit b196a6f3 by ningjihai

发现梳理

parent 3cb3c08a
......@@ -187,30 +187,34 @@
<!-- 底部按钮 -->
<!-- <template #footer> -->
<div class="dialog-footer">
<el-button @click="handleCancel">取消</el-button>
<el-button type="danger" @click="handleCancel">取消</el-button>
<el-button
color="rgba(255, 141, 26, 1)"
type="primary"
v-if="currentStep > 1"
@click="handlePrevStep"
>
上一步
<span style="color: #fff;">上一步</span>
</el-button>
<el-button
<!-- <el-button
v-if="currentStep < 3"
type="primary"
@click="handleNextStep"
>
下一步
</el-button>
</el-button> -->
<el-button v-if="currentStep < 3" type="primary" color="rgba(33, 103, 217, 1)" @click="handleNextStep">下一步</el-button>
<el-button
<!-- <el-button
v-if="currentStep === 3"
type="primary"
@click="handleConfirm"
>
确定
</el-button>
</el-button> -->
<el-button v-if="currentStep === 3" type="primary" color="rgba(33, 103, 217, 1)" @click="handleConfirm">确定</el-button>
</div>
<!-- </template> -->
......
......@@ -12,6 +12,10 @@ import DomainRuleDialog from './modules/DomainRuleDialog.vue'
import MatchPreviewDialog from './modules/MatchPreviewDialog.vue'
import SaveVersionDialog from './modules/SaveVersionDialog.vue'
import arrowDown from '@/assets/images/arrowDown.png'
import arrowUp from '@/assets/images/arrowUp.png'
import eye from '@/assets/images/eye.png'
import {
tdiscoverresultQuery,
getdiscoverresultreport,
......@@ -798,41 +802,7 @@ const handleError = (error, file, fileList) => {
查看结果
</template>
<template #buttons>
<el-checkbox style="margin-right: 10px;" v-model="selectAll" @change="displaySensitive" class="select-all-checkbox">仅显示敏感字段</el-checkbox>
<el-button
type="primary"
:Loading="confirmAllLoading"
@click="confirmAll"
>
确认所有
</el-button>
<el-button
type="danger"
:loading="cancelAllLoading"
@click="cancelAll"
>
取消所有
</el-button>
<el-button
type="success"
@click="openSaveDialog"
>
保存版本
</el-button>
<el-button
type="primary"
@click="exportData"
>
导出
</el-button>
<el-button
type="success"
@click="handleImport"
>
导入
</el-button>
</template>
</PageTitle>
......@@ -842,15 +812,50 @@ const handleError = (error, file, fileList) => {
<div class="discovery-report-container">
<!-- 上方:发现任务执行报告概览 -->
<div class="report-overview">
<h2 class="report-title">发现任务执行报告</h2>
<div class="overview-cards">
<el-descriptions :column="4" border>
<el-descriptions-item :label="item.label" v-for="(item,index) in reportData" :key="index">
<span class="highlight-text">{{item.content}}</span>
</el-descriptions-item>
</el-descriptions>
<div class="flex-container report-item" v-for="(item,index) in reportData" :class="`report-back${index+1}`">
<div class="item-label">{{ item.label }}</div>
<div class="item-content">{{ item.content }}</div>
</div>
</div>
<div class="option-container">
<el-checkbox style="margin-right: 10px;" v-model="selectAll" @change="displaySensitive" class="select-all-checkbox">仅显示敏感字段</el-checkbox>
<el-button
plain
color="rgba(255, 141, 26, 1)"
:loading="confirmAllLoading"
@click="confirmAll"
>
确认所有
</el-button>
<el-button
plain
color="rgba(121, 72, 234, 1)"
:loading="cancelAllLoading"
@click="cancelAll"
>
取消所有
</el-button>
<!-- <el-button
type="success"
@click="openSaveDialog"
>
保存版本
</el-button> -->
<el-button
color="rgba(83, 178, 87, 1)"
plain
@click="exportData"
>
导出
</el-button>
<el-button
color="rgba(172, 51, 193, 1)"
plain
@click="handleImport"
>
导入
</el-button>
</div>
<!-- 下方:详细数据表格 -->
......@@ -858,11 +863,22 @@ const handleError = (error, file, fileList) => {
<el-collapse v-model="activeNames" v-if="collapseDataList.length > 0" v-loading="listLoading" accordion @change="handleChangeTableByCollapse">
<!-- 第一个表格 -->
<el-collapse-item :name="item.tfields" v-for="(item, index) in collapseDataList" :key="index">
<template #icon="{ isActive }">
<!-- <span class="icon-ele">
{{ isActive ? 'Expanded' : 'Collapsed' }}
</span> -->
<img v-if="isActive" :src="arrowUp" alt="">
<img v-else :src="arrowDown" alt="">
</template>
<template #title>
<span class="collapse-title">{{ item.tfields }}</span>
<span class="sensitive-count">{{item.dataarea_name}}</span>
<div>
<span class="collapse-title">{{ item.tfields }}</span>
<span class="sensitive-count">{{item.dataarea_name}}</span>
</div>
</template>
<el-table :data="item.children" height="300px" style="width: 100%;">
<el-table :data="item.children" height="300px" stripe style="width: 100%;">
<el-table-column
v-for="(tableItem,tableIndex) in tableColumns"
......@@ -879,9 +895,12 @@ const handleError = (error, file, fileList) => {
<template #default="scope">
<div v-if="tableItem.key === 'index'">{{ scope.$index + 1 }}</div>
<el-button type="primary" link v-if="tableItem.key === 'dataarea_name'" @click="setDataarea(scope.row)">{{ scope.row.icon.find(x =>x.key === 'dataarea_name').label }}</el-button>
<el-button type="primary" plain v-if="tableItem.key === 'confirm'" size="small" @click="confirmKey(scope.row)">{{ scope.row.button[0].label }}</el-button>
<el-button :type="scope.row.issure === '1' ? 'primary' : ''" :plain="scope.row.issure === '0'" v-if="tableItem.key === 'confirm'" size="small" @click="confirmKey(scope.row)">{{ scope.row.button[0].label }}</el-button>
<el-button type="success" plain v-if="tableItem.key === 'actStatus'" size="small" @click="matchingPercent(scope.row)">{{ scope.row.icon.find(x =>x.key === 'actStatus').label }}</el-button>
<el-button type="primary" link v-if="tableItem.key === 'actStatus'" size="small" @click="matchingPercent(scope.row)">
<img :src="eye" alt="" class="eye">
{{ scope.row.icon.find(x =>x.key === 'actStatus').label }}
</el-button>
</template>
......@@ -983,17 +1002,52 @@ const handleError = (error, file, fileList) => {
.discovery-report-container {
padding: 20px;
background: #f5f7fa;
// padding: 20px;
// background: #f5f7fa;
// min-height: 100vh;
}
.report-overview {
background: white;
border-radius: 8px;
padding: 24px;
margin-bottom: 20px;
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
display: flex;
justify-content: space-between;
.report-item {
padding: 24px 16px 23px 12px;
.item-label{
font-size: 12px;
color: rgba(255, 255, 255, 1);
}
.item-content{
margin-left: 76px;
font-size: 12px;
color: rgba(255, 255, 255, 1);
}
}
.report-back1{
background-image: url("@/assets/images/resultBack1.png");
background-size: 100% 100%;
background-repeat: no-repeat;
}
.report-back2{
background-image: url("@/assets/images/resultBack2.png");
background-size: 100% 100%;
background-repeat: no-repeat;
}
.report-back3{
background-image: url("@/assets/images/resultBack3.png");
background-size: 100% 100%;
background-repeat: no-repeat;
}
.report-back4{
background-image: url("@/assets/images/resultBack4.png");
background-size: 100% 100%;
background-repeat: no-repeat;
}
.report-back5{
background-image: url("@/assets/images/resultBack5.png");
background-size: 100% 100%;
background-repeat: no-repeat;
}
}
.report-title {
......@@ -1012,7 +1066,11 @@ const handleError = (error, file, fileList) => {
.main-cards {
flex: 1;
}
.eye {
height: 10px;
width: 10px;
object-fit: cover;
}
.sensitive-column-card {
background: #f0f7ff;
border: 1px solid #1890ff;
......@@ -1067,12 +1125,18 @@ const handleError = (error, file, fileList) => {
font-weight: 600;
font-size: 16px;
}
.option-container {
margin-top: 32px;
display: flex;
align-items: center;
justify-content: flex-end;
}
.detailed-data {
background: white;
border-radius: 8px;
padding: 20px;
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
margin-top: 37px;
// background: white;
// border-radius: 8px;
// padding: 20px;
// box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
}
:deep(.el-collapse) {
......@@ -1082,23 +1146,26 @@ const handleError = (error, file, fileList) => {
margin-bottom: 12px;
&__header {
background: #f0f7ff;
border: 1px solid #1890ff;
background: rgba(72, 158, 255, 1);
// border: 1px solid #1890ff;
border-radius: 4px;
padding: 0 16px;
height: 48px;
font-weight: 600;
display: flex;
justify-content: space-between;
.collapse-title {
color: #303133;
font-size: 14px;
font-size: 16px;
font-weight: 500;
color: rgba(255, 255, 255, 1);
}
.sensitive-count {
color: #1890ff;
margin-left: 12px;
font-size: 13px;
font-weight: normal;
margin-left: 31px;
font-size: 16px;
font-weight: 500;
color: rgba(255, 255, 255, 1);
}
}
......
......@@ -10,8 +10,8 @@ import { changeRoute } from '@/utils/switchRoute'
import QueryForm from './QueryForm.vue'
// import AddDiscoveryDialog from './modules/AddDiscoveryDialog.vue' // 引入新增发现任务弹窗
import SmartDiscoveryDialog from './modules/SmartDiscoveryDialog.vue'
import find from '@/assets/images/find.png'
import jiankong from '@/assets/images/jiankong.png'
import {
queryDiscoverList,
delDiscoverTask,
......@@ -519,9 +519,10 @@ const handleAddEditConfirm = (submitData, isEditMode) =>{
<div class="operation-buttons">
<!-- 编辑按钮 -->
<el-button
link
type="primary"
link
type="danger"
size="small"
icon="edit"
@click="handleEdit(row)"
class="op-btn"
>
......@@ -531,23 +532,23 @@ const handleAddEditConfirm = (submitData, isEditMode) =>{
<!-- 发现按钮 -->
<el-button
link
type="success"
type="danger"
size="small"
@click="handleDiscover(row)"
class="op-btn"
>
发现
<img :src="find" alt="" class="btn-logo"> 发现
</el-button>
<!-- 监控按钮 -->
<el-button
link
type="warning"
type="danger"
size="small"
@click="handleMonitor(row)"
class="op-btn"
>
监控
<img :src="jiankong" alt="" class="btn-logo">监控
</el-button>
<!-- 更多操作下拉菜单 -->
......@@ -557,7 +558,7 @@ const handleAddEditConfirm = (submitData, isEditMode) =>{
>
<el-button
link
type="info"
type="danger"
size="small"
class="more-btn"
icon="MoreFilled"
......@@ -570,12 +571,12 @@ const handleAddEditConfirm = (submitData, isEditMode) =>{
</el-button>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item command="smartDiscover">
<!-- <el-dropdown-item command="smartDiscover">
<span class="dropdown-item smart-discover">智能发现</span>
</el-dropdown-item>
<el-dropdown-item command="viewHistory">
</el-dropdown-item> -->
<!-- <el-dropdown-item command="viewHistory">
<span class="dropdown-item">查看历史</span>
</el-dropdown-item>
</el-dropdown-item> -->
<el-dropdown-item command="viewResult">
<span class="dropdown-item">查看结果</span>
</el-dropdown-item>
......@@ -615,7 +616,10 @@ const handleAddEditConfirm = (submitData, isEditMode) =>{
margin-top: var(--container-pd);
margin-bottom: 20px;
}
.btn-logo {
height: 10px;
width: 10px;
}
.item-content {
margin: 8px 0;
.label {
......@@ -763,4 +767,11 @@ const handleAddEditConfirm = (submitData, isEditMode) =>{
}
}
}
:deep(.el-button--danger){
--el-button-text-color: rgba(33, 103, 217, 1);
--el-button-hover-text-color: rgba(33, 103, 217, 1);
--el-button-hover-bg-color: rgba(33, 103, 217, 1);
--el-button-hover-border-color:rgba(33, 103, 217, 1);
--el-button-hover-link-text-color:rgba(33, 103, 217, 1);
}
</style>
\ No newline at end of file
......@@ -2,7 +2,8 @@
<el-dialog
v-model="dialogVisible"
:title="title"
width="800px"
class="custom-dialog"
width="900px"
destroy-on-close
:before-close="handleClose"
>
......@@ -68,11 +69,16 @@
</div>
</div>
<!-- 底部按钮 -->
<div class="dialog-footer">
<el-button @click="handleReset">重置规则</el-button>
<el-button type="primary" @click="handleConfirm">确定规则</el-button>
</div>
</div>
<template #footer>
<!-- <el-button @click="handleReset">重置规则</el-button>
<el-button type="primary" @click="handleConfirm">确定规则</el-button> -->
<el-button type="primary" color="rgba(33, 103, 217, 1)" @click="handleReset">确定规则</el-button>
<el-button type="primary" plain @click="handleConfirm">重置规则</el-button>
</template>
</el-dialog>
</template>
......@@ -330,12 +336,12 @@ watch(() => props.ruleList, (newRuleList) => {
}
.dialog-footer {
display: flex;
justify-content: flex-end;
gap: 12px;
margin-top: 20px;
padding-top: 16px;
border-top: 1px solid #e0e0e0;
// display: flex;
// // justify-content: flex-end;
// gap: 12px;
// margin-top: 20px;
// padding-top: 16px;
// border-top: 1px solid #e0e0e0;
}
}
......
......@@ -2,6 +2,7 @@
<el-dialog
v-model="dialogVisible"
title="查看匹配"
class="custom-dialog"
width="900px"
:before-close="handleClose"
>
......@@ -77,11 +78,13 @@
</div>
</div>
<!-- 底部按钮 -->
<div class="dialog-footer">
<el-button type="primary" @click="handleClose">关闭</el-button>
</div>
</div>
<template #footer>
<el-button type="primary" color="rgba(33, 103, 217, 1)" @click="handleClose">关闭</el-button>
</template>
</el-dialog>
</template>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论