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
3ac2c634
Commit
3ac2c634
authored
Oct 26, 2020
by
renjintao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
项目任务......
parent
b642e412
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
114 additions
and
82 deletions
+114
-82
add.vue
pages/project/record/add.vue
+15
-1
index1.vue
pages/project/record/index1.vue
+33
-5
detail.vue
pages/project/task/detail.vue
+19
-10
edit.vue
pages/project/task/edit.vue
+28
-58
index.vue
pages/project/task/index.vue
+19
-8
No files found.
pages/project/record/add.vue
View file @
3ac2c634
...
@@ -17,7 +17,9 @@
...
@@ -17,7 +17,9 @@
</FormItem>
</FormItem>
</Col>
</Col>
<Col
:span=
"12"
>
<Col
:span=
"12"
>
<FormItem
:label=
"l('attachment')"
prop=
"attachment"
>
<Input
v-model=
"entity.attachment"
>
</Input>
<FormItem
:label=
"l('attachment')"
prop=
"attachment"
>
<files
ref=
"refFile"
:parms=
"parms"
files
/>
</Input>
</FormItem>
</FormItem>
</Col>
</Col>
</Row>
</Row>
...
@@ -56,6 +58,12 @@ export default {
...
@@ -56,6 +58,12 @@ export default {
attachment
:
""
,
attachment
:
""
,
taskId
:
""
taskId
:
""
},
},
parms
:
{
app
:
"taskRecord"
,
eid
:
null
,
name
:
""
,
field
:
""
,
},
rules
:
{
rules
:
{
name
:
[{
name
:
[{
required
:
true
,
required
:
true
,
...
@@ -72,12 +80,18 @@ export default {
...
@@ -72,12 +80,18 @@ export default {
mounted
()
{
mounted
()
{
if
(
this
.
eid
!=
""
)
{
if
(
this
.
eid
!=
""
)
{
this
.
load
(
this
.
eid
);
this
.
load
(
this
.
eid
);
this
.
parms
.
eid
=
this
.
$u
.
guid
();
}
}
},
},
methods
:
{
methods
:
{
handleSubmit
()
{
handleSubmit
()
{
this
.
$refs
.
form
.
validate
((
v
)
=>
{
this
.
$refs
.
form
.
validate
((
v
)
=>
{
if
(
v
)
{
if
(
v
)
{
if
(
this
.
$refs
.
refFile
.
nameList
.
length
>
0
)
{
this
.
entity
.
attachment
=
this
.
parms
.
eid
;
}
else
{
this
.
entity
.
attachment
=
""
;
}
this
.
disabled
=
true
;
this
.
disabled
=
true
;
this
.
entity
.
taskId
=
this
.
eid
this
.
entity
.
taskId
=
this
.
eid
Api
.
create
(
this
.
entity
).
then
((
r
)
=>
{
Api
.
create
(
this
.
entity
).
then
((
r
)
=>
{
...
...
pages/project/record/index1.vue
View file @
3ac2c634
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
<Form
ref=
"formInline"
:model=
"easySearch"
inline
>
<Form
ref=
"formInline"
:model=
"easySearch"
inline
>
<FormItem>
<FormItem>
<div
class=
"taskMenu"
>
<div
class=
"taskMenu"
>
<Menu
mode=
"horizontal"
active-name=
"2"
@
on-select=
"onSelect"
>
<Menu
mode=
"horizontal"
active-name=
"2"
>
<MenuItem
name=
"1"
>
<MenuItem
name=
"1"
>
所有
所有
</MenuItem>
</MenuItem>
...
@@ -73,14 +73,28 @@
...
@@ -73,14 +73,28 @@
</Col>
</Col>
<Col
span=
"19"
>
<Col
span=
"19"
>
<div
class=
"boxBoder"
>
<div
class=
"boxBoder"
>
<Timeline>
<Timeline
v-if=
"recordList&&recordList.length>0"
>
<TimelineItem
v-for=
"(item,index) in recordList"
:key=
"index"
>
<TimelineItem
v-for=
"(item,index) in recordList"
:key=
"index"
v-if=
"recordList&&recordList.length>0"
>
<p
class=
"content"
>
{{item.creationTime}}
</p>
<p
class=
"content"
>
{{item.creationTime}}
</p>
<p
class=
"content"
>
<p
class=
"content"
>
<User
:value=
"item.creatorUserId"
></User>
关闭了 任务 1089 测试任务
<User
:value=
"item.creatorUserId"
></User>
新增:{{item.title}}
<!--
<Tooltip max-width="400" v-if="item.note">
<a>详细信息</a>
<div slot="content">
<div v-html=" item.note"></div>
</div>
</Tooltip>
-->
</p>
</p>
<p
v-if=
"item.note"
>
<div
class=
"pl10"
v-html=
"item.note"
></div>
</p>
<p
class=
"pl10"
v-if=
"item.attachment"
><a
@
click=
"viewFiles(item.attachment)"
>
查看附件
</a></p>
</TimelineItem>
</TimelineItem>
</Timeline>
</Timeline>
<p
class=
"content"
v-else
>
暂无数据
</p>
</div>
</div>
</Col>
</Col>
</Row>
</Row>
...
@@ -89,6 +103,9 @@
...
@@ -89,6 +103,9 @@
<Modal
v-model=
"modal"
:title=
"title"
width=
"1200"
footer-hide
>
<Modal
v-model=
"modal"
:title=
"title"
width=
"1200"
footer-hide
>
<component
:is=
"detail"
:eid=
"curId"
@
on-close=
"cancel"
@
on-ok=
"ok"
/>
<component
:is=
"detail"
:eid=
"curId"
@
on-close=
"cancel"
@
on-ok=
"ok"
/>
</Modal>
</Modal>
<Modal
v-model=
"modalFiles"
title=
"查看附件"
width=
"800"
footer-hide
:mask-closable=
"false"
>
<FilesView
ref=
"refFile"
:parms=
"parms"
/>
</Modal>
</div>
</div>
</template>
</template>
...
@@ -117,6 +134,7 @@ export default {
...
@@ -117,6 +134,7 @@ export default {
value
:
null
value
:
null
}
}
},
},
modalFiles
:
false
,
modal
:
false
,
modal
:
false
,
title
:
"新增"
,
title
:
"新增"
,
detail
:
null
,
detail
:
null
,
...
@@ -258,7 +276,13 @@ export default {
...
@@ -258,7 +276,13 @@ export default {
}
}
},
},
],
],
recordList
:
[]
recordList
:
[],
parms
:
{
app
:
"taskRecord"
,
eid
:
null
,
name
:
""
,
field
:
""
,
},
}
}
},
},
mounted
()
{
mounted
()
{
...
@@ -335,6 +359,10 @@ export default {
...
@@ -335,6 +359,10 @@ export default {
this
.
curId
=
0
;
this
.
curId
=
0
;
this
.
modal
=
false
this
.
modal
=
false
},
},
viewFiles
(
val
)
{
this
.
parms
.
eid
=
val
;
this
.
modalFiles
=
true
;
},
l
(
key
)
{
l
(
key
)
{
let
vkey
=
"project_plan_record"
+
"."
+
key
;
let
vkey
=
"project_plan_record"
+
"."
+
key
;
return
this
.
$t
(
vkey
)
||
key
return
this
.
$t
(
vkey
)
||
key
...
...
pages/project/task/detail.vue
View file @
3ac2c634
<
template
>
<
template
>
<div
class=
"detail"
>
<div
class=
"detail"
style=
"width:100%"
>
<Row
style=
"height:
180
px"
>
<Row
style=
"height:
284
px"
>
<Filed
:span=
"6"
:name=
"l('creationTime')"
>
{{
entity
.
creationTime
}}
</Filed>
<Filed
:span=
"6"
:name=
"l('creationTime')"
>
{{
entity
.
creationTime
}}
</Filed>
<Filed
:span=
"6"
:name=
"l('creatorUserId')"
>
<Filed
:span=
"6"
:name=
"l('creatorUserId')"
>
<User
:value=
"entity.creatorUserId"
></User>
<User
:value=
"entity.creatorUserId"
></User>
</Filed>
</Filed>
<Filed
:span=
"6"
:name=
"l('title')"
>
{{
entity
.
title
}}
</Filed>
<Filed
:span=
"6"
:name=
"l('title')"
>
{{
entity
.
title
}}
</Filed>
<Filed
:span=
"6"
:name=
"l('level')"
>
{{
entity
.
level
}}
</Filed>
<Filed
:span=
"6"
:name=
"l('level')"
>
<Filed
:span=
"6"
:name=
"l('status')"
>
{{
entity
.
status
}}
</Filed>
<state
code=
"project.task.level"
:value=
"entity.level"
type=
"text"
></state>
<Filed
:span=
"6"
:name=
"l('projectTitle')"
>
{{
entity
.
projectTitle
}}
</Filed>
</Filed>
<Filed
:span=
"6"
:name=
"l('planTitle')"
>
{{
entity
.
planTitle
}}
</Filed>
<Filed
:span=
"6"
:name=
"l('status')"
>
<state
code=
"project.task.status"
:value=
"entity.status"
type=
"text"
></state>
</Filed>
<Filed
:span=
"6"
:name=
"l('userId')"
>
{{
entity
.
userId
}}
</Filed>
<Filed
:span=
"6"
:name=
"l('userId')"
>
{{
entity
.
userId
}}
</Filed>
<Filed
:span=
"6"
:name=
"l('startDate')"
>
{{
entity
.
startDate
}}
</Filed>
<Filed
:span=
"6"
:name=
"l('endDate')"
>
{{
entity
.
endDate
}}
</Filed>
<Filed
:span=
"6"
:name=
"l('endDate')"
>
{{
entity
.
endDate
}}
</Filed>
<Filed
:span=
"12"
>
</Filed>
<Filed
:span=
"6"
:name=
"l('startDate')"
>
{{
entity
.
startDate
}}
</Filed>
<Filed
:span=
"24"
:name=
"l('note')"
>
{{
entity
.
note
}}
</Filed>
<Filed
:span=
"24"
:name=
"l('note')"
>
<div
style=
"height:200px"
v-html=
"entity.note"
class=
"tex_in10"
></div>
</Filed>
</Row>
</Row>
<component
:is=
"detail"
:eid=
"curId"
/>
<component
:is=
"detail"
:eid=
"curId"
/>
</div>
</div>
...
@@ -81,3 +83,10 @@ export default {
...
@@ -81,3 +83,10 @@ export default {
}
}
}
}
</
script
>
</
script
>
<
style
scoped
>
.tex_in10
{
text-indent
:
12px
;
text-align
:
inherit
!important
;
}
</
style
>
pages/project/task/edit.vue
View file @
3ac2c634
...
@@ -6,74 +6,19 @@
...
@@ -6,74 +6,19 @@
</FormItem>
</FormItem>
</Col>
</Col>
<Col
:span=
"12"
>
<Col
:span=
"12"
>
<FormItem
:label=
"l('planId')"
prop=
"planId"
>
<Input
v-model=
"entity.planId"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('projectId')"
prop=
"projectId"
>
<Input
v-model=
"entity.projectId"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('level')"
prop=
"level"
>
<FormItem
:label=
"l('level')"
prop=
"level"
>
<Dictionary
code=
"project.task.level"
v-model=
"entity.level"
></Dictionary>
<Dictionary
code=
"project.task.level"
v-model=
"entity.level"
></Dictionary>
</FormItem>
</FormItem>
</Col>
</Col>
<Col
:span=
"12"
>
<Col
:span=
"12"
>
<FormItem
:label=
"l('status')"
prop=
"status"
>
<Dictionary
code=
"project.task.status"
v-model=
"entity.status"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('projectTitle')"
prop=
"projectTitle"
>
<Input
v-model=
"entity.projectTitle"
>
</Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('planTitle')"
prop=
"planTitle"
>
<Input
v-model=
"entity.planTitle"
>
</Input>
</FormItem>
</Col>
<Col
:span=
"24"
>
<FormItem
:label=
"l('userIds')"
prop=
"userIds"
>
<Input
v-model=
"entity.userIds"
type=
"textarea"
:rows=
"5"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('userId')"
prop=
"userId"
>
<FormItem
:label=
"l('userId')"
prop=
"userId"
>
<UserSelect
ref=
"userSelected"
v-model=
"entity.userId"
/></Input>
<UserSelect
ref=
"userSelected"
v-model=
"entity.userId"
/></Input>
</FormItem>
</FormItem>
</Col>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('startDate')"
prop=
"startDate"
>
<DatePicker
type=
"date"
v-model=
"entity.startDate"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('endDate')"
prop=
"endDate"
>
<DatePicker
type=
"date"
v-model=
"entity.endDate"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('plansToStartDate')"
prop=
"plansToStartDate"
>
<DatePicker
type=
"date"
v-model=
"entity.plansToStartDate"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('plansToEndTime')"
prop=
"plansToEndTime"
>
<DatePicker
type=
"date"
v-model=
"entity.plansToEndTime"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('completePercentage')"
prop=
"completePercentage"
>
<InputNumber
v-model=
"entity.completePercentage"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"24"
>
<Col
:span=
"24"
>
<FormItem
:label=
"l('note')"
prop=
"note"
>
<Input
v-model=
"entity.note"
>
</Input>
<FormItem
:label=
"l('note')"
prop=
"note"
>
</FormItem>
<i-quill
v-model=
"entity.note"
:height=
"300"
v-paste=
"handleImg"
/></Input>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('upTaskId')"
prop=
"upTaskId"
>
<Input
v-model=
"entity.upTaskId"
></Input>
</FormItem>
</FormItem>
</Col>
</Col>
</Row>
</Row>
...
@@ -89,8 +34,12 @@ import {
...
@@ -89,8 +34,12 @@ import {
replace
replace
}
from
'lodash'
;
}
from
'lodash'
;
import
Api
from
'./api'
import
Api
from
'./api'
import
iQuill
from
'@/components/quill'
export
default
{
export
default
{
name
:
'Edit'
,
name
:
'Edit'
,
components
:
{
iQuill
},
data
()
{
data
()
{
return
{
return
{
disabled
:
false
,
disabled
:
false
,
...
@@ -150,6 +99,27 @@ export default {
...
@@ -150,6 +99,27 @@ export default {
handleClose
()
{
handleClose
()
{
this
.
$emit
(
'on-close'
)
this
.
$emit
(
'on-close'
)
},
},
handleImg
(
e
)
{
console
.
warn
(
e
)
let
file
=
null
if
(
e
.
clipboardData
&&
e
.
clipboardData
.
items
[
0
]
&&
e
.
clipboardData
.
items
[
0
].
type
&&
e
.
clipboardData
.
items
[
0
].
type
.
indexOf
(
'image'
)
>
-
1
)
{
//这里就是判断是否有粘贴进来的文件且文件为图片格式
file
=
e
.
clipboardData
.
items
[
0
].
getAsFile
()
let
reader
=
new
FileReader
()
reader
.
readAsDataURL
(
file
)
setTimeout
(()
=>
{
var
img
=
'<img src="'
+
reader
.
result
+
'" alt=""/>'
this
.
entity
.
note
+=
img
},
1000
)
// new R
}
},
l
(
key
)
{
l
(
key
)
{
key
=
"project_task"
+
"."
+
key
;
key
=
"project_task"
+
"."
+
key
;
return
this
.
$t
(
key
)
return
this
.
$t
(
key
)
...
...
pages/project/task/index.vue
View file @
3ac2c634
...
@@ -108,12 +108,14 @@ export default {
...
@@ -108,12 +108,14 @@ export default {
detail
:
null
,
detail
:
null
,
curId
:
''
,
curId
:
''
,
fullScreen
:
false
,
fullScreen
:
false
,
columns
:
[{
columns
:
[
key
:
"selection"
,
// {
type
:
"selection"
,
// key: "selection",
width
:
50
,
// type: "selection",
align
:
"center"
// width: 50,
},
{
// align: "center"
// },
{
key
:
"id"
,
key
:
"id"
,
title
:
this
.
$t
(
"id"
),
title
:
this
.
$t
(
"id"
),
align
:
"left"
,
align
:
"left"
,
...
@@ -179,14 +181,12 @@ export default {
...
@@ -179,14 +181,12 @@ export default {
title
:
this
.
l
(
"startDate"
),
title
:
this
.
l
(
"startDate"
),
align
:
"center"
,
align
:
"center"
,
high
:
true
,
high
:
true
,
type
:
'date'
},
},
{
{
key
:
"endDate"
,
key
:
"endDate"
,
title
:
this
.
l
(
"endDate"
),
title
:
this
.
l
(
"endDate"
),
align
:
"center"
,
align
:
"center"
,
high
:
true
,
high
:
true
,
type
:
'date'
},
},
{
{
key
:
"note"
,
key
:
"note"
,
...
@@ -252,6 +252,17 @@ export default {
...
@@ -252,6 +252,17 @@ export default {
click
:
()
=>
params
.
row
.
status
!=
0
?
this
.
updatestatus
(
params
.
row
.
id
,
3
)
:
null
click
:
()
=>
params
.
row
.
status
!=
0
?
this
.
updatestatus
(
params
.
row
.
id
,
3
)
:
null
}
}
}),
}),
h
(
'op'
,
{
attrs
:
{
icon
:
"md-add"
,
type
:
"icon"
,
title
:
params
.
row
.
status
!=
3
?
"新增备注"
:
"无法操作"
,
color
:
params
.
row
.
status
!=
3
?
"#19be6b"
:
"#ccc"
,
},
on
:
{
click
:
()
=>
params
.
row
.
status
!=
0
?
this
.
updatestatus
(
params
.
row
.
id
,
3
)
:
null
}
}),
h
(
'op'
,
{
h
(
'op'
,
{
attrs
:
{
attrs
:
{
icon
:
"ios-create-outline"
,
icon
:
"ios-create-outline"
,
...
...
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