Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mes-ui
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
周远喜
mes-ui
Commits
f1a5844e
Commit
f1a5844e
authored
Nov 30, 2020
by
renjintao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bug
parent
f0447fae
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
617 additions
and
522 deletions
+617
-522
bug.js
api/bug.js
+12
-0
index.vue
layouts/basic-layout/header-bug/index.vue
+92
-66
default.vue
layouts/default.vue
+8
-8
index.vue
pages/account/login/index.vue
+2
-2
index.vue
pages/bug/index.vue
+503
-446
No files found.
api/bug.js
View file @
f1a5844e
/*
* @Author: your name
* @Date: 2020-03-30 13:55:31
* @LastEditTime: 2020-11-30 13:54:01
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @FilePath: \mes-ui\api\bug.js
*/
import
Api
from
'@/plugins/request'
export
default
{
index
:
`
${
bugUrl
}
/bugmain/paged`
,
...
...
@@ -31,4 +39,8 @@ export default {
get
(
params
)
{
return
Api
.
get
(
`
${
bugUrl
}
/bugmain/get`
,
params
);
},
//获取当前用户的未解决bug
bugcount
()
{
return
Api
.
post
(
`
${
bugUrl
}
/bugmain/bugcount`
);
},
}
\ No newline at end of file
layouts/basic-layout/header-bug/index.vue
View file @
f1a5844e
<!--
* @Author: your name
* @Date: 2020-03-30 14:07:08
* @LastEditTime: 2020-11-30 15:15:43
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @FilePath: \mes-ui\layouts\basic-layout\header-bug\index.vue
-->
<
template
>
<span
class=
"i-layout-header-trigger i-layout-header-trigger-min"
>
<span
class=
"i-layout-header-trigger i-layout-header-trigger-min"
>
<Dropdown
transfer
trigger=
"hover"
@
on-click=
"handleClickUserDropdown"
>
<span
@
click=
"openModelBugAdd"
>
<Badge
:count=
"bugCount === 0 ? null : bugCount"
:overflow-count=
"99"
:offset=
"[10, 0]"
>
<Badge
:count=
"bugCount === 0 ? null : bugCount"
:overflow-count=
"99"
:offset=
"[10, 0]"
>
<Icon
type=
"ios-bug"
size=
"18"
/>
</Badge>
</span>
...
...
@@ -18,20 +30,21 @@
<Button
type=
"primary"
@
click=
"addSave"
>
确定
</Button>
</div>
</Modal>
</span>
</span>
</
template
>
<
script
>
import
addBugModal
from
"@/pages/bug/component/add"
;
import
{
mapState
}
from
"vuex"
;
export
default
{
name
:
"addBug"
,
components
:
{
addBugModal
addBugModal
,
},
data
()
{
return
{
bugAdd
:
false
,
bugCount
:
this
.
$store
.
state
.
countBug
bugCount
:
this
.
$store
.
state
.
countBug
,
};
},
computed
:
{},
...
...
@@ -39,7 +52,7 @@ export default {
async
handleClickUserDropdown
(
name
)
{
if
(
name
===
"bug"
)
{
this
.
$router
.
push
({
name
:
"bug"
name
:
"bug"
,
});
}
},
...
...
@@ -57,7 +70,7 @@ export default {
//alert(JSON.stringify(param))
if
(
param
.
id
==
null
)
{
//增加确定
this
.
$http
.
bug
.
createorupdate
(
param
).
then
(
res
=>
{
this
.
$http
.
bug
.
createorupdate
(
param
).
then
((
res
)
=>
{
if
(
res
.
result
.
status
)
{
this
.
$Message
.
success
(
"新增成功!"
);
let
newId
=
res
.
result
.
bugId
;
...
...
@@ -71,11 +84,24 @@ export default {
}
else
{
this
.
$Message
.
error
(
"新增失败!"
);
}
}
},
},
created
()
{},
mounted
()
{
this
.
$store
.
commit
(
"setCountBug"
,
66
);
//获取当前用户未解决bug数量
this
.
$http
.
bug
.
bugcount
().
then
((
res
)
=>
{
if
(
res
.
success
)
{
this
.
$store
.
commit
(
"setCountBug"
,
res
.
result
);
this
.
bugCount
=
this
.
$store
.
state
.
countBug
;
}
});
},
watch
:
{
"$store.state.countBug"
(
v
)
{
if
(
v
>=
0
)
{
this
.
bugCount
=
v
;
}
},
},
};
</
script
>
layouts/default.vue
View file @
f1a5844e
...
...
@@ -19,7 +19,7 @@ export default {
components
:
{
MainLayout
},
data
()
{
return
{
menus
:
[]
menus
:
[]
,
};
},
async
fetch
({
store
,
params
})
{
...
...
@@ -66,11 +66,11 @@ export default {
this
.
$store
.
commit
(
"admin/menu/setOpenNames"
,
openNames
);
}
// this.appRouteChange(to, from);
}
}
,
},
methods
:
{
getMenu
()
{
this
.
$http
.
sysUser
.
getusermenu
().
then
(
res
=>
{
this
.
$http
.
sysUser
.
getusermenu
().
then
(
(
res
)
=>
{
if
(
res
.
result
)
{
this
.
menus
=
res
.
result
[
0
].
children
;
this
.
toMenu
(
this
.
menus
);
...
...
@@ -89,7 +89,7 @@ export default {
});
},
toMenu
(
list
)
{
list
.
forEach
(
datas
=>
{
list
.
forEach
(
(
datas
)
=>
{
var
that
=
this
;
var
listObj
=
{};
datas
.
path
=
datas
.
url
;
...
...
@@ -105,7 +105,7 @@ export default {
datas
.
meta
=
{
auth
:
false
,
title
:
datas
.
title
,
closable
:
true
closable
:
true
,
};
datas
.
name
=
name
;
if
(
datas
.
children
!=
null
)
{
...
...
@@ -113,7 +113,7 @@ export default {
}
});
this
.
menusNew
=
list
;
}
}
}
,
}
,
};
</
script
>
\ No newline at end of file
pages/account/login/index.vue
View file @
f1a5844e
pages/bug/index.vue
View file @
f1a5844e
<
template
>
<div
class=
"myBug"
>
<div
class=
"myBug"
>
<Tabs
:animated=
"false"
@
on-click=
"tab"
>
<TabPane
label=
"我的"
></TabPane>
<TabPane
label=
"所有"
></TabPane>
</Tabs>
<DataGrid
:columns=
"columns"
ref=
"grid"
:action=
"action"
:conditions=
"easySearch"
@
on-selection-change=
"selectInfo"
:height=
"gridHeight"
>
<DataGrid
:columns=
"columns"
ref=
"grid"
:action=
"action"
:conditions=
"easySearch"
@
on-selection-change=
"selectInfo"
:height=
"gridHeight"
>
<template
slot=
"easySearch"
>
<Form
inline
>
<FormItem>
<dictionary
code=
"Test.bug.status"
v-model=
"easySearch.status.value"
style=
"width:400px;"
multiple
></dictionary>
<dictionary
code=
"Test.bug.status"
v-model=
"easySearch.status.value"
style=
"width: 400px"
multiple
></dictionary>
</FormItem>
<FormItem>
<Input
search
enter-button
placeholder=
"请输入bug标题或地址"
@
on-search=
"search"
v-model=
"easySearch.keys.value"
/>
<Input
search
enter-button
placeholder=
"请输入bug标题或地址"
@
on-search=
"search"
v-model=
"easySearch.keys.value"
/>
</FormItem>
</Form>
</
template
>
...
...
@@ -19,12 +37,28 @@
<Search
/>
</
template
>
<
template
slot=
"batch"
>
<Form
:model=
"formMyCheck"
:label-width=
"5"
:rules=
"ruleValidate"
inline
ref=
"formValidate"
>
<Form
:model=
"formMyCheck"
:label-width=
"5"
:rules=
"ruleValidate"
inline
ref=
"formValidate"
>
<FormItem>
<dictionary
code=
"Test.but.statusOper"
v-model=
"selectBatch"
type=
"radio"
@
on-change=
"statuChange"
ref=
"dicradio"
></dictionary>
<dictionary
code=
"Test.but.statusOper"
v-model=
"selectBatch"
type=
"radio"
@
on-change=
"statuChange"
ref=
"dicradio"
></dictionary>
</FormItem>
<FormItem
v-if=
"selectBatch == 5"
label
prop=
"selectAlloter"
>
<UserSelect
ref=
"userSelected"
v-model=
"alloter"
@
on-change=
"changeUserSelect"
/>
<UserSelect
ref=
"userSelected"
v-model=
"alloter"
@
on-change=
"changeUserSelect"
/>
</FormItem>
<FormItem>
<Button
type=
"primary"
@
click=
"upChange"
>
确定
</Button>
...
...
@@ -33,14 +67,24 @@
</
template
>
</DataGrid>
<Modal
v-model=
"modalEdit"
fullscreen
title=
"bug编辑"
@
on-cancel=
"canselModal(1)"
>
<Modal
v-model=
"modalEdit"
fullscreen
title=
"bug编辑"
@
on-cancel=
"canselModal(1)"
>
<edit
ref=
"edit"
/>
<div
slot=
"footer"
>
<Button
@
click=
"canselModal(1)"
>
取消
</Button>
<Button
type=
"primary"
@
click=
"addSave"
>
确定
</Button>
</div>
</Modal>
<Modal
v-model=
"modalDetail"
fullscreen
title=
"bug操作"
@
on-cancel=
"canselModal(2)"
>
<Modal
v-model=
"modalDetail"
fullscreen
title=
"bug操作"
@
on-cancel=
"canselModal(2)"
>
<detail
ref=
"detail"
/>
<div
slot=
"footer"
>
<Button
@
click=
"canselModal(2)"
>
取消
</Button>
...
...
@@ -54,7 +98,7 @@
<Button
type=
"primary"
@
click=
"upSave"
>
确定
</Button>
</div>
</Modal>
</div>
</div>
</template>
<
script
>
...
...
@@ -67,7 +111,7 @@ export default {
components
:
{
edit
,
detail
,
Search
Search
,
},
data
()
{
let
userInfo
=
this
.
$store
.
state
.
admin
.
user
.
info
;
...
...
@@ -76,16 +120,16 @@ export default {
easySearch
:
{
keys
:
{
op
:
"title,pagePath"
,
value
:
""
value
:
""
,
},
status
:
{
op
:
"In"
,
value
:
[
1
,
5
,
0
]
value
:
[
1
,
5
,
0
],
},
creatorUserId
:
{
op
:
"Equal"
,
value
:
userInfo
.
userId
}
value
:
userInfo
.
userId
,
},
},
selectList
:
[],
results
:
[],
...
...
@@ -96,20 +140,21 @@ export default {
pageSizeOpts
:
[
20
,
50
,
100
],
pageSize
:
20
,
tabIndex
:
1
,
columns
:
[{
columns
:
[
{
type
:
"selection"
,
width
:
60
,
align
:
"center"
align
:
"center"
,
},
{
key
:
"id"
,
width
:
80
,
title
:
this
.
l
(
"id"
)
title
:
this
.
l
(
"id"
),
},
{
title
:
this
.
l
(
"level"
),
key
:
"level"
,
width
:
100
width
:
100
,
},
{
title
:
this
.
l
(
"title"
),
...
...
@@ -118,16 +163,17 @@ export default {
tooltip
:
true
,
render
:
(
h
,
params
)
=>
h
(
"a"
,
{
"a"
,
{
style
:
{},
on
:
{
click
:
()
=>
{
this
.
detailInfo
(
params
.
row
);
}
}
},
},
},
params
.
row
.
title
)
),
},
{
title
:
this
.
l
(
"pagePath"
),
...
...
@@ -135,50 +181,51 @@ export default {
tooltip
:
true
,
render
:
(
h
,
params
)
=>
h
(
"a"
,
{
"a"
,
{
style
:
{},
on
:
{
click
:
()
=>
{
window
.
open
(
params
.
row
.
pagePath
,
"_blank"
);
}
}
},
},
},
params
.
row
.
pagePath
)
),
},
{
title
:
this
.
l
(
"status"
),
key
:
"status"
,
width
:
100
,
code
:
'Test.bug.status'
,
code
:
"Test.bug.status"
,
},
{
title
:
this
.
l
(
"creationTime"
),
key
:
"creationTime"
,
align
:
"center"
,
width
:
180
width
:
180
,
},
{
title
:
this
.
l
(
"createor"
),
key
:
"createor"
,
width
:
120
width
:
120
,
},
{
title
:
this
.
l
(
"alloter"
),
key
:
"alloter"
,
width
:
120
width
:
120
,
},
{
title
:
this
.
l
(
"lastModificationTime"
),
key
:
"lastModificationTime"
,
align
:
"center"
,
width
:
180
width
:
180
,
},
{
title
:
this
.
l
(
"auditUser"
),
align
:
"center"
,
key
:
"auditUser"
,
width
:
120
width
:
120
,
},
{
key
:
"action"
,
...
...
@@ -188,66 +235,69 @@ export default {
render
:
(
h
,
params
)
=>
h
(
"div"
,
[
h
(
"Button"
,
{
"Button"
,
{
props
:
{
type
:
"text"
,
size
:
"small"
size
:
"small"
,
},
style
:
{
color
:
"green"
color
:
"green"
,
},
on
:
{
click
:
()
=>
{
this
.
detailInfo
(
params
.
row
);
}
}
},
},
},
"解决"
),
h
(
"Button"
,
{
"Button"
,
{
props
:
{
type
:
"text"
,
size
:
"small"
size
:
"small"
,
},
style
:
{
color
:
"green"
color
:
"green"
,
},
on
:
{
click
:
()
=>
{
this
.
editInfo
(
params
.
row
);
}
}
},
},
},
"编辑"
)
])
}
),
]),
},
],
statusList
:
[{
statusList
:
[
{
name
:
"确认"
,
value
:
"1"
value
:
"1"
,
},
{
name
:
"解决"
,
value
:
"2"
value
:
"2"
,
},
{
name
:
"冻结"
,
value
:
"4"
value
:
"4"
,
},
{
name
:
"关闭"
,
value
:
"3"
}
value
:
"3"
,
},
],
modalEdit
:
false
,
modalDetail
:
false
,
searchForm
:
{
Status
:
0
,
PageSize
:
20
,
Current
:
1
Current
:
1
,
},
listBatch
:
{
ids
:
[],
...
...
@@ -256,29 +306,28 @@ export default {
workHours
:
0
,
remark
:
""
,
alloter
:
""
,
alloterId
:
null
alloterId
:
null
,
},
selectBatch
:
100
,
auditUser
:
null
,
alloter
:
{},
formMyCheck
:
{
selectAlloter
:
null
selectAlloter
:
null
,
},
ruleValidate
:
{
selectAlloter
:
[{
selectAlloter
:
[
{
required
:
true
,
message
:
"请选择驳指派人"
,
type
:
"number"
,
trigger
:
"change"
}]
}
trigger
:
"change"
,
},
],
},
};
},
computed
:
{},
async
fetch
({
store
,
params
})
{
async
fetch
({
store
,
params
})
{
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
},
methods
:
{
...
...
@@ -293,7 +342,15 @@ export default {
},
search
()
{
this
.
$refs
.
grid
.
easySearch
(
this
.
easySearch
);
this
.
Api
this
.
getBugCount
();
},
//获取用户未解决bug数量
getBugCount
()
{
this
.
$http
.
bug
.
bugcount
().
then
((
res
)
=>
{
if
(
res
.
success
)
{
this
.
$store
.
commit
(
"setCountBug"
,
res
.
result
);
}
});
},
//打开修改窗口
editInfo
(
value
)
{
...
...
@@ -306,7 +363,7 @@ export default {
param
.
auditUser
=
this
.
$store
.
state
.
userInfo
.
userName
;
if
(
param
.
id
!=
null
)
{
//增加确定
this
.
$http
.
bug
.
createorupdate
(
param
).
then
(
res
=>
{
this
.
$http
.
bug
.
createorupdate
(
param
).
then
((
res
)
=>
{
if
(
res
.
result
.
status
)
{
this
.
$Message
.
success
(
"修改成功!"
);
this
.
search
();
...
...
@@ -331,7 +388,7 @@ export default {
param
.
ids
=
[
param
.
id
];
if
(
param
.
id
!=
null
)
{
//增加确定
this
.
$http
.
bug
.
doaction
(
param
).
then
(
res
=>
{
this
.
$http
.
bug
.
doaction
(
param
).
then
((
res
)
=>
{
if
(
res
.
result
)
{
this
.
$Message
.
success
(
"操作成功!"
);
this
.
search
();
...
...
@@ -357,7 +414,7 @@ export default {
param
.
statusNew
=
6
;
if
(
param
.
id
!=
null
)
{
//增加改变状态为6/查看
this
.
$http
.
bug
.
doaction
(
param
).
then
(
res
=>
{
this
.
$http
.
bug
.
doaction
(
param
).
then
((
res
)
=>
{
if
(
res
.
result
)
{
//this.search(this.searchForm)
}
else
{
...
...
@@ -374,7 +431,7 @@ export default {
this
.
selectList
=
[];
this
.
selectList
=
value
;
let
statueArry
=
[];
value
.
forEach
(
data
=>
{
value
.
forEach
((
data
)
=>
{
var
that
=
this
;
statueArry
.
push
(
data
.
id
);
});
...
...
@@ -404,7 +461,7 @@ export default {
if
(
this
.
selectBatch
!=
100
)
{
if
(
this
.
listBatch
.
ids
.
length
!=
0
)
{
if
(
this
.
selectBatch
==
5
)
{
this
.
$refs
[
"formValidate"
].
validate
(
valid
=>
{
this
.
$refs
[
"formValidate"
].
validate
((
valid
)
=>
{
if
(
valid
)
{
let
alloterInfo
=
this
.
$refs
[
"userSelected"
].
getSelectItems
();
this
.
listBatch
.
alloter
=
alloterInfo
[
0
].
userName
;
...
...
@@ -434,7 +491,7 @@ export default {
},
upSave
()
{
//增加确定
this
.
$http
.
bug
.
doaction
(
this
.
listBatch
).
then
(
res
=>
{
this
.
$http
.
bug
.
doaction
(
this
.
listBatch
).
then
((
res
)
=>
{
if
(
res
.
result
)
{
this
.
$Message
.
success
(
"操作成功!"
);
this
.
search
();
...
...
@@ -465,7 +522,7 @@ export default {
l
(
key
)
{
let
vkey
=
"bug"
+
"."
+
key
;
return
this
.
$t
(
vkey
)
||
key
;
}
},
},
created
()
{
window
.
screenHeight
=
window
.
innerHeight
;
...
...
@@ -479,6 +536,6 @@ export default {
this
.
gridHeight
=
window
.
screenHeight
-
250
;
})();
};
}
},
};
</
script
>
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