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
5727146c
Commit
5727146c
authored
Apr 23, 2021
by
黎博
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增发送进度报告功能
parent
6d60141e
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
104 additions
and
7 deletions
+104
-7
jira.js
src/api/jira.js
+15
-0
Notify.vue
src/views/jira/Notify.vue
+89
-7
No files found.
src/api/jira.js
View file @
5727146c
...
@@ -8,6 +8,13 @@ export function getProjectRobotList(queryInfo) {
...
@@ -8,6 +8,13 @@ export function getProjectRobotList(queryInfo) {
})
})
}
}
export
function
getJiraProjectList
()
{
return
request
({
url
:
'
/jira/list/project
'
,
method
:
'
get
'
})
}
export
function
addProjectRobot
(
data
)
{
export
function
addProjectRobot
(
data
)
{
return
request
({
return
request
({
url
:
'
/jira/add/robot
'
,
url
:
'
/jira/add/robot
'
,
...
@@ -31,3 +38,11 @@ export function delProjectRobot(queryInfo) {
...
@@ -31,3 +38,11 @@ export function delProjectRobot(queryInfo) {
params
:
queryInfo
params
:
queryInfo
})
})
}
}
export
function
sendScheduleReport
(
data
)
{
return
request
({
url
:
'
/jira/send/schedule
'
,
method
:
'
post
'
,
data
})
}
src/views/jira/Notify.vue
View file @
5727146c
...
@@ -9,15 +9,16 @@
...
@@ -9,15 +9,16 @@
<el-table
:data=
"dingRobotList"
border
style=
"width: 100%"
>
<el-table
:data=
"dingRobotList"
border
style=
"width: 100%"
>
<!--
<el-table-column
prop=
"id"
label=
"编号"
width=
"80px"
></el-table-column>
-->
<!--
<el-table-column
prop=
"id"
label=
"编号"
width=
"80px"
></el-table-column>
-->
<el-table-column
type=
"index"
label=
"序号"
width=
"50px"
></el-table-column>
<el-table-column
type=
"index"
label=
"序号"
width=
"50px"
></el-table-column>
<el-table-column
prop=
"projectName"
label=
"项目名"
width=
"2
5
0px"
></el-table-column>
<el-table-column
prop=
"projectName"
label=
"项目名"
width=
"2
2
0px"
></el-table-column>
<el-table-column
prop=
"dingUrl"
label=
"钉钉url"
></el-table-column>
<el-table-column
prop=
"dingUrl"
label=
"钉钉url"
></el-table-column>
<el-table-column
prop=
"creator"
label=
"创建人"
width=
"
10
0px"
>
<el-table-column
prop=
"creator"
label=
"创建人"
width=
"
8
0px"
>
</el-table-column>
</el-table-column>
<el-table-column
prop=
"createTime"
label=
"创建时间"
width=
"180px"
></el-table-column>
<el-table-column
prop=
"createTime"
label=
"创建时间"
width=
"180px"
></el-table-column>
<el-table-column
label=
"操作"
width=
"
2
00px"
>
<el-table-column
label=
"操作"
width=
"
3
00px"
>
<slot
slot-scope=
"scope"
>
<slot
slot-scope=
"scope"
>
<el-button
type=
"primary"
@
click=
"openEditDialog(scope.row)"
>
编辑
</el-button>
<el-button
type=
"primary"
@
click=
"openEditDialog(scope.row)"
>
编辑
</el-button>
<el-button
type=
"danger"
@
click=
"delProjectRobot(scope.row.id)"
>
删除
</el-button>
<el-button
type=
"danger"
@
click=
"delProjectRobot(scope.row.id)"
>
删除
</el-button>
<el-button
type=
"success"
@
click=
"openSendDialog(scope.row)"
>
发送进度
</el-button>
</slot>
</slot>
</el-table-column>
</el-table-column>
<!--
<el-table-column
prop=
"updateTime"
label=
"更新时间"
></el-table-column>
-->
<!--
<el-table-column
prop=
"updateTime"
label=
"更新时间"
></el-table-column>
-->
...
@@ -30,13 +31,19 @@
...
@@ -30,13 +31,19 @@
<!-- 新增对话框 -->
<!-- 新增对话框 -->
<el-dialog
title=
"新增robot"
:visible.sync=
"addDialogVisible"
width=
"60%"
@
close=
"closeAddDialog"
>
<el-dialog
title=
"新增robot"
:visible.sync=
"addDialogVisible"
width=
"60%"
@
close=
"closeAddDialog"
>
<el-form
ref=
"addRobotFormRef"
:rules=
"formRules"
:model=
"robotForm"
label-width=
"150px"
>
<el-form
ref=
"addRobotFormRef"
:rules=
"formRules"
:model=
"robotForm"
label-width=
"150px"
>
<el-form-item
label=
"jira项目"
prop=
"jiraProjectKey"
>
<el-select
v-model=
"robotForm.jiraProjectKey"
placeholder=
"请选择Jira项目"
>
<el-option
v-for=
"item in jiraProjectList"
:key=
"item.key"
:label=
"item.name"
:value=
"item.key"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"项目名称"
prop=
"projectName"
>
<el-form-item
label=
"项目名称"
prop=
"projectName"
>
<el-input
v-model=
"robotForm.projectName"
placeholder=
"请输入项目名称"
></el-input>
<el-input
v-model=
"robotForm.projectName"
placeholder=
"请输入项目名称"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"钉钉通知地址"
prop=
"dingUrl"
>
<el-form-item
label=
"钉钉通知地址"
prop=
"dingUrl"
>
<el-input
v-model=
"robotForm.dingUrl"
placeholder=
"请输入钉钉通知地址"
type=
"textarea"
></el-input>
<el-input
v-model=
"robotForm.dingUrl"
placeholder=
"请输入钉钉通知地址"
type=
"textarea"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"创建人"
>
<el-form-item
label=
"创建人"
prop=
"creator"
>
<el-input
v-model=
"robotForm.creator"
></el-input>
<el-input
v-model=
"robotForm.creator"
></el-input>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
...
@@ -49,13 +56,19 @@
...
@@ -49,13 +56,19 @@
<!-- 编辑对话框 -->
<!-- 编辑对话框 -->
<el-dialog
title=
"编辑"
:visible.sync=
"editDialogVisible"
width=
"60%"
@
close=
"closeEditDialog"
>
<el-dialog
title=
"编辑"
:visible.sync=
"editDialogVisible"
width=
"60%"
@
close=
"closeEditDialog"
>
<el-form
ref=
"editRobotFormRef"
:rules=
"formRules"
:model=
"editRobotForm"
label-width=
"150px"
>
<el-form
ref=
"editRobotFormRef"
:rules=
"formRules"
:model=
"editRobotForm"
label-width=
"150px"
>
<el-form-item
label=
"jira项目"
prop=
"jiraProjectKey"
>
<el-select
v-model=
"editRobotForm.jiraProjectKey"
placeholder=
"请选择Jira项目"
>
<el-option
v-for=
"item in jiraProjectList"
:key=
"item.key"
:label=
"item.name"
:value=
"item.key"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"项目名称"
prop=
"projectName"
>
<el-form-item
label=
"项目名称"
prop=
"projectName"
>
<el-input
v-model=
"editRobotForm.projectName"
placeholder=
"请输入项目名称"
></el-input>
<el-input
v-model=
"editRobotForm.projectName"
placeholder=
"请输入项目名称"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"钉钉通知地址"
prop=
"dingUrl"
>
<el-form-item
label=
"钉钉通知地址"
prop=
"dingUrl"
>
<el-input
v-model=
"editRobotForm.dingUrl"
placeholder=
"请输入钉钉通知地址"
type=
"textarea"
></el-input>
<el-input
v-model=
"editRobotForm.dingUrl"
placeholder=
"请输入钉钉通知地址"
type=
"textarea"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"创建人"
>
<el-form-item
label=
"创建人"
prop=
"creator"
>
<el-input
v-model=
"editRobotForm.creator"
></el-input>
<el-input
v-model=
"editRobotForm.creator"
></el-input>
</el-form-item>
</el-form-item>
</el-form>
</el-form>
...
@@ -64,20 +77,39 @@
...
@@ -64,20 +77,39 @@
<el-button
type=
"primary"
@
click=
"editRobotProject"
>
保 存
</el-button>
<el-button
type=
"primary"
@
click=
"editRobotProject"
>
保 存
</el-button>
</span>
</span>
</el-dialog>
</el-dialog>
<!-- 发送进度对话框 -->
<el-dialog
title=
"发送进度报告"
:visible.sync=
"sendScheduleDialogVisible"
width=
"60%"
@
close=
"closeSendDialog"
>
<el-form
ref=
"sendFormRef"
:rules=
"sendFormRules"
:model=
"sendScheduleForm"
label-width=
"150px"
>
<el-form-item
label=
"测试进度"
prop=
"progress"
>
<el-input
v-model=
"sendScheduleForm.progress"
placeholder=
"请输入测试进度百分比"
></el-input>
</el-form-item>
<el-form-item
label=
"风险点"
prop=
"risk"
>
<el-input
v-model=
"sendScheduleForm.risk"
type=
"textarea"
placeholder=
"请输入测试风险点(非必填)"
></el-input>
</el-form-item>
</el-form>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"sendScheduleDialogVisible = false"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"sendSchedule"
>
发 送
</el-button>
</span>
</el-dialog>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
{
import
{
getJiraProjectList
,
getProjectRobotList
,
getProjectRobotList
,
addProjectRobot
,
addProjectRobot
,
modifyProjectRobot
,
modifyProjectRobot
,
delProjectRobot
delProjectRobot
,
sendScheduleReport
}
from
'
@/api/jira
'
}
from
'
@/api/jira
'
export
default
{
export
default
{
data
()
{
data
()
{
return
{
return
{
dingRobotList
:
[],
dingRobotList
:
[],
jiraProjectList
:
[],
queryInfo
:
{
queryInfo
:
{
pageNum
:
1
,
pageNum
:
1
,
pageSize
:
10
pageSize
:
10
...
@@ -85,21 +117,41 @@ export default {
...
@@ -85,21 +117,41 @@ export default {
totalNum
:
0
,
totalNum
:
0
,
addDialogVisible
:
false
,
addDialogVisible
:
false
,
editDialogVisible
:
false
,
editDialogVisible
:
false
,
sendScheduleDialogVisible
:
false
,
robotForm
:
{
robotForm
:
{
projectName
:
''
,
projectName
:
''
,
dingUrl
:
''
,
dingUrl
:
''
,
creator
:
''
creator
:
''
,
jiraProjectKey
:
''
},
},
editRobotForm
:
{},
editRobotForm
:
{},
sendProjectRobot
:
{},
sendScheduleData
:
{
jiraProject
:
''
,
testProject
:
''
,
progress
:
''
,
risk
:
''
,
webhook
:
''
},
delRobotParams
:
{
delRobotParams
:
{
projectRobotId
:
''
projectRobotId
:
''
},
},
sendScheduleForm
:
{},
formRules
:
{
formRules
:
{
projectName
:
[
projectName
:
[
{
required
:
true
,
message
:
'
请输入项目名称
'
,
trigger
:
'
blur
'
}
{
required
:
true
,
message
:
'
请输入项目名称
'
,
trigger
:
'
blur
'
}
],
],
dingUrl
:
[
dingUrl
:
[
{
required
:
true
,
message
:
'
请输入钉钉机器人url
'
,
trigger
:
'
blur
'
}
{
required
:
true
,
message
:
'
请输入钉钉机器人url
'
,
trigger
:
'
blur
'
}
],
jiraProjectKey
:
[
{
required
:
true
,
message
:
'
请选择对应的Jira项目
'
,
trigger
:
'
blur
'
}
],
creator
:
[{
required
:
true
,
message
:
'
请输入创建人
'
,
trigger
:
'
blur
'
}]
},
sendFormRules
:
{
progress
:
[
{
required
:
true
,
message
:
'
请输入测试进度百分比
'
,
trigger
:
'
blur
'
}
]
]
}
}
}
}
...
@@ -111,6 +163,11 @@ export default {
...
@@ -111,6 +163,11 @@ export default {
this
.
totalNum
=
resp
.
data
.
data
.
total
this
.
totalNum
=
resp
.
data
.
data
.
total
})
})
},
},
getJiraProjectList
()
{
getJiraProjectList
().
then
((
resp
)
=>
{
this
.
jiraProjectList
=
resp
.
data
.
data
})
},
// 新增
// 新增
addRobotProject
()
{
addRobotProject
()
{
this
.
$refs
.
addRobotFormRef
.
validate
((
valid
)
=>
{
this
.
$refs
.
addRobotFormRef
.
validate
((
valid
)
=>
{
...
@@ -173,6 +230,22 @@ export default {
...
@@ -173,6 +230,22 @@ export default {
})
})
})
})
},
},
// 发送进度报告
sendSchedule
()
{
this
.
sendScheduleData
.
jiraProjectKey
=
this
.
sendProjectRobot
.
jiraProjectKey
this
.
sendScheduleData
.
testProjectName
=
this
.
sendProjectRobot
.
projectName
this
.
sendScheduleData
.
progress
=
this
.
sendScheduleForm
.
progress
+
'
%
'
this
.
sendScheduleData
.
risk
=
this
.
sendScheduleForm
.
risk
this
.
sendScheduleData
.
webhook
=
this
.
sendProjectRobot
.
dingUrl
sendScheduleReport
(
this
.
sendScheduleData
).
then
((
resp
)
=>
{
if
(
resp
.
data
.
data
===
true
)
{
this
.
sendScheduleDialogVisible
=
false
return
this
.
$message
.
success
(
'
发送成功!
'
)
}
else
if
(
resp
.
data
.
data
===
false
)
{
return
this
.
$message
.
error
(
'
发送失败!
'
)
}
})
},
handleSizeChange
(
newSize
)
{
handleSizeChange
(
newSize
)
{
this
.
queryInfo
.
pageSize
=
newSize
this
.
queryInfo
.
pageSize
=
newSize
this
.
getProjectRobotList
()
this
.
getProjectRobotList
()
...
@@ -185,14 +258,23 @@ export default {
...
@@ -185,14 +258,23 @@ export default {
this
.
editDialogVisible
=
true
this
.
editDialogVisible
=
true
this
.
editRobotForm
=
projectRobot
this
.
editRobotForm
=
projectRobot
},
},
// 打开发送进度对话框
openSendDialog
(
projectRobot
)
{
this
.
sendScheduleDialogVisible
=
true
this
.
sendProjectRobot
=
projectRobot
},
closeAddDialog
()
{
closeAddDialog
()
{
this
.
$refs
.
addRobotFormRef
.
resetFields
()
this
.
$refs
.
addRobotFormRef
.
resetFields
()
},
},
closeEditDialog
()
{
closeEditDialog
()
{
this
.
$refs
.
editRobotFormRef
.
resetFields
()
this
.
$refs
.
editRobotFormRef
.
resetFields
()
},
closeSendDialog
()
{
this
.
$refs
.
sendFormRef
.
resetFields
()
}
}
},
},
created
()
{
created
()
{
this
.
getJiraProjectList
()
this
.
getProjectRobotList
()
this
.
getProjectRobotList
()
}
}
}
}
...
...
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