Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Q
qa-platform-ui
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
QA
qa-platform-ui
Commits
815f0ac8
Commit
815f0ac8
authored
Jan 05, 2022
by
王晓铜
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加监控sql编辑器
parent
c83536d5
Changes
6
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
384 additions
and
84 deletions
+384
-84
sqlMonitor.js
src/api/sqlMonitor.js
+17
-1
main.js
src/main.js
+9
-7
AddSqlMonitor.vue
src/views/monitor/AddSqlMonitor.vue
+282
-65
SqlMonitorList.vue
src/views/monitor/SqlMonitorList.vue
+75
-9
DetailTestDescription.vue
src/views/qa/DetailTestDescription.vue
+0
-1
TestDescription.vue
src/views/qa/TestDescription.vue
+1
-1
No files found.
src/api/sqlMonitor.js
View file @
815f0ac8
...
...
@@ -2,7 +2,7 @@ import holmesRequest from '@/utils/holmesRequest'
// 获取sql监控列表
export
function
getSqlMonitorList
(
queryInfo
)
{
return
holmesRequest
({
url
:
'
/
monitor/task
/list
'
,
url
:
'
/
sql/monitor
/list
'
,
method
:
'
get
'
,
params
:
queryInfo
})
...
...
@@ -55,3 +55,19 @@ export function getSqlMonitorData(queryInfo) {
params
:
queryInfo
})
}
// 获取执行策略列表
export
function
getMonitorStrategy
(
queryInfo
)
{
return
holmesRequest
({
url
:
'
/sql/monitor/strategy
'
,
method
:
'
get
'
,
params
:
queryInfo
})
}
// 启用、禁用接口
export
function
isEnableSqlMonitor
(
data
)
{
return
holmesRequest
({
url
:
'
/sql/monitor/enable
'
,
method
:
'
post
'
,
data
})
}
src/main.js
View file @
815f0ac8
...
...
@@ -19,7 +19,9 @@ import hljs from 'highlight.js'
import
'
highlight.js/styles/googlecode.css
'
// 引用sql编辑器(2021-12-30)
import
AFTableColumn
from
'
af-table-column
'
import
Plugin
from
'
v-fit-columns
'
import
{
codemirror
}
from
'
vue-codemirror
'
import
'
codemirror/lib/codemirror.css
'
// import Sortable from 'sortablejs'
import
{
...
...
@@ -78,10 +80,11 @@ Vue.directive('highlight', function(el) {
})
// 设置自适应宽度的比率
const
fontRate
=
{
CHAR_RATE
:
0.
1
,
NUM_RATE
:
0.
1
,
OTHER_RATE
:
0.
1
CHAR_RATE
:
0.
4
,
NUM_RATE
:
0.
6
,
OTHER_RATE
:
0.
6
}
const
fontSize
=
16
Vue
.
config
.
productionTip
=
false
...
...
@@ -141,9 +144,8 @@ Vue.use(Checkbox)
Vue
.
use
(
CheckboxGroup
)
Vue
.
use
(
Popover
)
Vue
.
use
(
Alert
)
Vue
.
use
(
AFTableColumn
,
fontRate
)
Vue
.
use
(
Plugin
)
Vue
.
use
(
AFTableColumn
,
{
fontRate
,
fontSize
})
Vue
.
use
(
codemirror
)
// Vue.use(Sortable)
/* eslint-disable no-new */
...
...
src/views/monitor/AddSqlMonitor.vue
View file @
815f0ac8
This diff is collapsed.
Click to expand it.
src/views/monitor/SqlMonitorList.vue
View file @
815f0ac8
...
...
@@ -19,7 +19,13 @@
</
template
>
</el-table-column>
<el-table-column
label=
"监控名称"
prop=
"taskName"
width=
"180px"
></el-table-column>
<el-table-column
label=
"执行策略"
prop=
"taskCron"
width=
"180px"
></el-table-column>
<el-table-column
label=
"执行策略"
prop=
"taskCron"
width=
"180px"
>
<
template
slot-scope=
"scope"
>
<p
v-if=
"scope.row.taskCron==='0 0 * * * ?'"
>
每小时执行一次
</p>
<p
v-if=
"scope.row.taskCron==='0 0 10 * * ?'"
>
每天10点执行一次
</p>
<p
v-if=
"scope.row.taskCron==='0 0 10 ? * 2'"
>
每周一上午10点执行一次
</p>
</
template
>
</el-table-column>
<el-table-column
label=
"sql"
width=
"150px"
>
<
template
slot-scope=
"scope"
>
<el-popover
placement=
"top-start"
title=
"sql"
width=
"50"
trigger=
"hover"
:content=
"scope.row.sql"
>
...
...
@@ -27,7 +33,7 @@
</el-popover>
</
template
>
</el-table-column>
<el-table-column
label=
"服务名称"
prop=
"serviceName"
width=
"1
0
0px"
></el-table-column>
<el-table-column
label=
"服务名称"
prop=
"serviceName"
width=
"1
5
0px"
></el-table-column>
<el-table-column
label=
"数据源"
prop=
"dsName"
width=
"80px"
></el-table-column>
<el-table-column
label=
"负责人"
prop=
"owner"
width=
"80px"
></el-table-column>
<el-table-column
label=
"当前状态"
width=
"80px"
>
...
...
@@ -39,12 +45,17 @@
<el-table-column
label=
"创建时间"
prop=
"createTime"
width=
"180px"
></el-table-column>
<el-table-column
label=
"操作"
>
<slot
slot-scope=
"scope"
>
<el-button
type=
"warning"
icon=
"el-icon-edit"
@
click=
"openEditDialog(scope.row)"
<el-button
type=
"warning"
icon=
"el-icon-edit"
@
click=
"openEdit
Monitor
Dialog(scope.row)"
v-permission=
"('monitor:sql:edit')"
>
编辑
</el-button>
<el-button
type=
"success"
icon=
"el-icon-success"
@
click=
"openEditDialog(scope.row)"
v-permission=
"('monitor:sql:enable')"
style=
"margin-left:1px"
>
启用
</el-button>
<el-button
type=
"info"
icon=
"el-icon-error"
@
click=
"enableDislog(scope.row)"
v-permission=
"('monitor:sql:enable')"
v-if=
"scope.row.status===1"
>
禁用
</el-button>
<el-button
type=
"success"
icon=
"el-icon-success"
@
click=
"unenableDialog(scope.row)"
v-permission=
"('monitor:sql:enable')"
v-if=
"scope.row.status===0"
>
启用
</el-button>
<el-button
type=
"danger"
icon=
"el-icon-delete"
@
click=
"delSqlMonitor(scope.row)"
v-permission=
"('monitor:sql:del')"
style=
"margin-left:1px"
>
删除
</el-button>
v-permission=
"('monitor:sql:del')"
>
删除
</el-button>
</slot>
</el-table-column>
</el-table>
...
...
@@ -56,7 +67,11 @@
</div>
</template>
<
script
>
import
{
getSqlMonitorList
,
delSqlMonitor
}
from
'
@/api/sqlMonitor
'
import
{
getSqlMonitorList
,
delSqlMonitor
,
isEnableSqlMonitor
}
from
'
@/api/sqlMonitor
'
import
{
getGitProjectList
}
from
'
@/api/jira
'
export
default
{
data
()
{
...
...
@@ -72,6 +87,13 @@ export default {
serviceList
:
[]
}
},
// 接收参数
activated
()
{
var
data
=
this
.
$route
.
query
.
data
if
(
data
===
'
refresh
'
)
{
this
.
getSqlMonitorList
()
}
},
created
()
{
this
.
getSqlMonitorList
()
this
.
getServiceList
()
...
...
@@ -82,7 +104,6 @@ export default {
getSqlMonitorList
(
this
.
queryModuleInfo
).
then
((
resp
)
=>
{
this
.
sqlMonitorList
=
resp
.
data
.
data
.
list
this
.
totalNum
=
resp
.
data
.
data
.
total
// console.log('返回信息', resp)
})
},
// 查询按钮
...
...
@@ -92,7 +113,19 @@ export default {
// 添加按钮
addSqlMonitor
()
{
this
.
$router
.
push
({
path
:
`/monitor/addSqlMonitor`
path
:
`/monitor/addSqlMonitor`
,
query
:
{
data
:
'
add
'
}
})
},
// 编辑按钮
openEditMonitorDialog
(
row
)
{
this
.
$router
.
push
({
path
:
`/monitor/addSqlMonitor`
,
query
:
{
data
:
row
}
})
},
// 获取服务列表
...
...
@@ -131,6 +164,39 @@ export default {
})
})
},
// 禁用按钮
enableDislog
(
row
)
{
var
formData
=
new
FormData
()
formData
.
set
(
'
taskId
'
,
row
.
id
)
formData
.
set
(
'
status
'
,
0
)
this
.
openMessage
(
'
是否需要禁用?
'
,
'
确定
'
,
()
=>
{
isEnableSqlMonitor
(
formData
).
then
((
resp
)
=>
{
if
(
resp
.
data
.
businessCode
===
'
0000
'
)
{
this
.
getSqlMonitorList
()
return
this
.
$message
.
success
(
resp
.
data
.
msg
)
}
else
{
return
this
.
$message
.
error
(
resp
.
data
.
msg
)
}
})
})
},
// 启用按钮
unenableDialog
(
row
)
{
this
.
openMessage
(
'
是否需要启用?
'
,
'
确定
'
,
()
=>
{
var
formData
=
new
FormData
()
formData
.
set
(
'
taskId
'
,
row
.
id
)
formData
.
set
(
'
status
'
,
1
)
isEnableSqlMonitor
(
formData
).
then
((
resp
)
=>
{
console
.
log
(
'
999
'
,
resp
)
if
(
resp
.
data
.
businessCode
===
'
0000
'
)
{
this
.
getSqlMonitorList
()
return
this
.
$message
.
success
(
resp
.
data
.
msg
)
}
else
{
return
this
.
$message
.
error
(
resp
.
data
.
msg
)
}
})
})
},
handleSizeChange
(
newSize
)
{
this
.
queryModuleInfo
.
pageSize
=
newSize
...
...
src/views/qa/DetailTestDescription.vue
View file @
815f0ac8
...
...
@@ -176,7 +176,6 @@
</el-form-item>
</el-form>
</div>
</el-card>
</div>
</template>
...
...
src/views/qa/TestDescription.vue
View file @
815f0ac8
...
...
@@ -394,7 +394,7 @@ export default {
)
this
.
addTestDescriptionForm
.
apollo
=
JSON
.
stringify
(
this
.
apolloList
)
this
.
addTestDescriptionForm
.
database
=
JSON
.
stringify
(
this
.
databaseList
)
console
.
log
(
'
88888
'
,
this
.
addTestDescriptionForm
)
//
console.log('88888', this.addTestDescriptionForm)
this
.
$refs
.
addTestDescriptionRef
.
validate
((
valid
)
=>
{
if
(
!
valid
)
{
return
false
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment