Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
N
nse-ui
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Members
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
吴超
nse-ui
Commits
0a81c04d
Commit
0a81c04d
authored
Sep 01, 2025
by
wanglizhen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
加密日志
parent
7cbec34d
显示空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
210 行增加
和
3 行删除
+210
-3
src/api/itemLogSet/desensitizationItemLog.js
+1
-1
src/api/itemLogSet/projectEncryptedLog.js
+41
-0
src/views/itemLogSet/DesensitizationItemLog/index.vue
+1
-2
src/views/itemLogSet/ProjectEncryptedLog/QueryForm.vue
+61
-0
src/views/itemLogSet/ProjectEncryptedLog/index.vue
+105
-0
src/views/itemLogSet/ProjectEncryptedLog/加密日志.md
+1
-0
没有找到文件。
src/api/itemLogSet/desensitizationItemLog.js
View file @
0a81c04d
...
...
@@ -40,7 +40,7 @@ export function checkEnc(data) {
}
/**
* 脱敏策略日志 -
到处
下载
* 脱敏策略日志 -
导出
下载
* @param {*} data
* @returns
*/
...
...
src/api/itemLogSet/projectEncryptedLog.js
0 → 100644
View file @
0a81c04d
import
request
from
'@/utils/request'
/**
* 加密日志 - 查询列表数据
* @param {*} data
* @returns
*/
export
function
query
(
data
)
{
return
request
({
url
:
'/aop/encryptlog/query'
,
method
:
'post'
,
data
:
data
})
}
/**
* 加密日志 - 校验数据
* @param {*} data
* @returns
*/
export
function
checkEnc
(
data
)
{
return
request
({
url
:
'/aop/encryptlog/checkEnc'
,
method
:
'post'
,
data
:
data
})
}
/**
* 加密日志 - 导出下载
* @param {*} data
* @returns
*/
export
function
getEncryptionLogExcel
(
data
)
{
return
request
({
url
:
'/aop/encryptlog/getEncryptionLogExcel'
,
method
:
'post'
,
data
:
data
,
responseType
:
'blob'
})
}
\ No newline at end of file
src/views/itemLogSet/DesensitizationItemLog/index.vue
View file @
0a81c04d
...
...
@@ -43,8 +43,7 @@ const getList = async () => {
// 导出
const
download
=
async
()
=>
{
try
{
const
{
page
,
...
newObj
}
=
queryParams
.
value
const
response
=
await
getdesensitizationStrategyLog
(
newObj
)
const
response
=
await
getdesensitizationStrategyLog
(
queryParams
.
value
)
const
blob
=
new
Blob
([
response
],
{
type
:
'application/vnd.ms-excel,charset=utf-8'
});
const
link
=
document
.
createElement
(
'a'
)
link
.
href
=
URL
.
createObjectURL
(
blob
)
...
...
src/views/itemLogSet/ProjectEncryptedLog/QueryForm.vue
0 → 100644
View file @
0a81c04d
<
script
setup
lang=
"ts"
name=
"QueryForm"
>
import
{
ref
,
computed
,
onMounted
}
from
"vue"
;
import
type
{
FormInstance
}
from
"element-plus"
;
import
PageWrapperSearch
from
"@/components/Search/PageWrapperSearch.vue"
;
import
timeRangeOptions
from
"@/constants/timeRangeOptions.js"
;
import
{
queryUser
}
from
"@/api/itemLogSet/desensitizationItemLog.js"
;
const
emit
=
defineEmits
([
"update:modelValue"
,
"query"
,
"reset"
]);
const
props
=
defineProps
<
{
modelValue
:
any
;
}
>
();
const
queryForm
=
computed
({
get
()
{
return
props
.
modelValue
;
},
set
(
val
:
any
)
{
console
.
log
(
"query computed"
,
val
);
emit
(
"update:modelValue"
,
val
);
},
});
const
userOptions
=
ref
([]);
// 搜索
function
onSearch
()
{
emit
(
"query"
);
}
// 重置
function
onReset
(
formRef
:
FormInstance
)
{
emit
(
"reset"
,
formRef
);
}
const
getQueryUser
=
async
()
=>
{
const
{
data
}
=
await
queryUser
();
userOptions
.
value
=
data
.
userlist
.
map
((
user
)
=>
({
id
:
user
.
id
,
user
:
user
.
realname
,
}));
};
onMounted
(()
=>
{
getQueryUser
();
});
</
script
>
<
template
>
<page-wrapper-search
:model=
"queryForm"
@
search=
"onSearch"
@
reset=
"onReset"
label-width=
'100'
>
<el-form-item
label=
"用户"
prop=
"user"
>
<el-select
v-model=
"queryForm.user"
placeholder=
"请选择"
clearable
>
<el-option
v-for=
"item in userOptions"
:key=
"item.id"
:label=
"item.user"
:value=
"item.id"
/>
</el-select>
</el-form-item>
<el-form-item
label=
"时间"
prop=
"range"
>
<el-select
v-model=
"queryForm.range"
placeholder=
"请选择时间"
>
<el-option
v-for=
"item in timeRangeOptions"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
/>
</el-select>
</el-form-item>
</page-wrapper-search>
</
template
>
src/views/itemLogSet/ProjectEncryptedLog/index.vue
0 → 100644
View file @
0a81c04d
<
script
setup
name=
"Index"
>
import
{
onMounted
,
ref
,
reactive
}
from
'vue'
import
{
ElMessage
}
from
"element-plus"
;
import
{
changeRoute
}
from
'@/utils/switchRoute'
import
QueryForm
from
'./QueryForm.vue'
import
{
query
,
checkEnc
,
getEncryptionLogExcel
}
from
"@/api/itemLogSet/projectEncryptedLog.js"
;
const
queryParams
=
ref
({
page
:
1
,
rows
:
10
,
projectId
:
sessionStorage
.
getItem
(
'projectId'
),
range
:
"3"
,
user
:
""
,
module
:
""
,
})
const
logList
=
ref
([])
const
total
=
ref
(
0
)
const
loading
=
ref
(
false
)
// 筛选查询
const
onQuery
=
()
=>
{
getList
()
}
// 查询组件事件重置
const
onReset
=
(
formQuery
)
=>
{
formQuery
.
resetFields
()
getList
()
}
// 获取列表数据
const
getList
=
async
()
=>
{
try
{
loading
.
value
=
true
const
{
data
}
=
await
query
(
queryParams
.
value
)
logList
.
value
=
data
.
list
total
.
value
=
data
.
total
loading
.
value
=
false
}
catch
(
error
)
{
loading
.
value
=
false
}
}
// 导出
const
download
=
async
()
=>
{
try
{
const
response
=
await
getEncryptionLogExcel
(
queryParams
.
value
)
const
blob
=
new
Blob
([
response
],
{
type
:
'application/vnd.ms-excel,charset=utf-8'
});
const
link
=
document
.
createElement
(
'a'
)
link
.
href
=
URL
.
createObjectURL
(
blob
)
link
.
download
=
'加密日志'
link
.
click
()
URL
.
revokeObjectURL
(
link
.
href
)
ElMessage
.
success
(
'导出成功'
)
}
catch
(
error
)
{
}
}
// 数据校验
const
dataValidation
=
async
()
=>
{
try
{
const
{
flag
}
=
await
checkEnc
(
queryParams
.
value
)
if
(
flag
)
{
ElMessage
.
success
(
'校验成功!'
)
}
else
{
ElMessage
.
error
(
'校验失败!'
)
}
}
catch
(
error
)
{
}
}
// 返回主页面
const
pageProjectManage
=
()
=>
{
changeRoute
()
}
onMounted
(()
=>
{
getList
()
})
</
script
>
<
template
>
<div
class=
"app-container scroller"
>
<PageTitle
:back=
"true"
@
back=
"pageProjectManage"
>
<template
#
title
>
返回项目管理
</
template
>
<
template
#
buttons
>
<el-button
type=
"primary"
icon=
"Download"
@
click=
"download"
>
导出
</el-button>
<el-button
type=
"primary"
@
click=
"dataValidation"
>
数据完成性校验
</el-button>
</
template
>
</PageTitle>
<div
class=
"app-container__body"
>
<query-form
ref=
"QueryFormRef"
v-model=
"queryParams"
@
query=
"onQuery"
@
reset=
"onReset"
/>
<el-table
v-loading=
"loading"
:data=
"logList"
border
style=
"width: 100%"
>
<el-table-column
prop=
"operptionUser"
label=
"用户"
align=
"center"
width=
"200"
/>
<el-table-column
prop=
"code"
label=
"操作代码"
align=
"center"
width=
"180"
/>
<el-table-column
prop=
"operModule"
label=
"操作模块"
align=
"center"
width=
"200"
/>
<el-table-column
prop=
"operptionMassage"
label=
"操作信息"
align=
"center"
show-overflow-tooltip
/>
</el-table>
<pagination
v-show=
"total > 0"
:total=
"total"
v-model:page=
"queryParams.page"
v-model:limit=
"queryParams.rows"
@
pagination=
"getList"
/>
</div>
</div>
</template>
\ No newline at end of file
src/views/itemLogSet/ProjectEncryptedLog/加密日志.md
0 → 100644
View file @
0a81c04d
++ "b/src/views/itemLogSet/ProjectEncryptedLog/\345\212\240\345\257\206\346\227\245\345\277\227.md"
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论