Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
SuperMan
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
1
Issues
1
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
罗超
SuperMan
Commits
9b9a45ab
Commit
9b9a45ab
authored
Jan 31, 2020
by
罗超
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化工作计划
parent
83e1467f
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
171 additions
and
105 deletions
+171
-105
workDetails.vue
src/components/work/workDetails.vue
+156
-104
workManager.vue
src/components/work/workManager.vue
+15
-1
No files found.
src/components/work/workDetails.vue
View file @
9b9a45ab
...
@@ -30,7 +30,7 @@
...
@@ -30,7 +30,7 @@
<div
v-if=
"d.w.ExamineStatus==1"
>
<div
v-if=
"d.w.ExamineStatus==1"
>
<el-card
class=
"work-content green"
>
<el-card
class=
"work-content green"
>
<h4>
主管立项审核通过
</h4>
<h4>
主管立项审核通过
</h4>
<p>
{{
d
.
w
.
Examine
Stat
e
}}
提交于
{{
d
.
w
.
ExamineDate
}}
</p>
<p>
{{
d
.
w
.
Examine
UserNam
e
}}
提交于
{{
d
.
w
.
ExamineDate
}}
</p>
<div
class=
"cont"
>
{{
d
.
w
.
ExamineRemark
}}
</div>
<div
class=
"cont"
>
{{
d
.
w
.
ExamineRemark
}}
</div>
</el-card>
</el-card>
</div>
</div>
...
@@ -56,15 +56,29 @@
...
@@ -56,15 +56,29 @@
</h4>
</h4>
<p
v-if=
"d.w"
>
{{
d
.
w
.
CreateName
}}
提交于
{{
item
.
CreateDate
}}
</p>
<p
v-if=
"d.w"
>
{{
d
.
w
.
CreateName
}}
提交于
{{
item
.
CreateDate
}}
</p>
<div
class=
"cont"
>
{{
item
.
Content
}}
</div>
<div
class=
"cont"
>
{{
item
.
Content
}}
</div>
<div
class=
"attach"
>
<div
class=
"attach"
v-if=
"item.Attach!==''"
>
附件:
<span
@
click=
"openFile(item.Attach)"
style=
"cursor: pointer;"
>
{{
item
.
Attach
!==
""
?
item
.
Attach
:
'无'
}}
</span>
附件:
<span
@
click=
"openFile(item.Attach)"
style=
"cursor: pointer;"
class=
"work-file"
>
{{
item
.
Attach
.
substring
(
item
.
Attach
.
lastIndexOf
(
"/"
)
+
1
,
item
.
Attach
.
length
)
}}
</span>
</div>
<div
class=
"attach"
v-if=
"item.Linker && item.Linker.length>0"
>
相关链接
<span
v-for=
"lik in item.Linker"
:key=
"lik"
@
click=
"openFile(lik)"
style=
"cursor: pointer;display:block;margin-top:10px;"
class=
"work-file"
>
{{
lik
}}
</span>
</div>
</div>
</el-card>
</el-card>
</div>
</div>
<div
v-if=
"d.w.FinishExamineStatus==1"
>
<div
v-if=
"d.w.FinishExamineStatus==1"
>
<el-card
class=
"work-content green"
>
<el-card
class=
"work-content green"
>
<h4>
主管完结审核通过
</h4>
<h4>
主管完结审核通过
</h4>
<p>
{{
d
.
w
.
FinishExamine
Stat
e
}}
提交于
{{
d
.
w
.
FinishExamineDate
}}
</p>
<p>
{{
d
.
w
.
FinishExamine
UserNam
e
}}
提交于
{{
d
.
w
.
FinishExamineDate
}}
</p>
<div
class=
"cont"
>
{{
d
.
w
.
FinishExamineRemark
}}
</div>
<div
class=
"cont"
>
{{
d
.
w
.
FinishExamineRemark
}}
</div>
</el-card>
</el-card>
</div>
</div>
...
@@ -76,72 +90,93 @@
...
@@ -76,72 +90,93 @@
</el-card>
</el-card>
</div>
</div>
</fieldset>
</fieldset>
<fieldset
v-if=
"isEaxmine && d.w && (d.w.ExamineStatus==0 || (d.w.Status>=2 && d.w.FinishExamineStatus==0))"
style=
"border: 1px solid #DDD;padding: 13px;font-size: 12px;margin-top:20px;"
>
<fieldset
v-if=
"isEaxmine && d.w && (d.w.ExamineStatus==0 || (d.w.Status>=2 && d.w.FinishExamineStatus==0))"
style=
"border: 1px solid #DDD;padding: 13px;font-size: 12px;margin-top:20px;"
>
<legend
style=
"padding:0 10px; font-size:14px;"
>
审批
</legend>
<legend
style=
"padding:0 10px; font-size:14px;"
>
审批
</legend>
<div
style=
"margin-bottom:10px"
>
<div
style=
"margin-bottom:10px"
>
<el-radio
v-model=
"radio"
label=
"1"
>
通过
</el-radio>
<el-radio
v-model=
"radio"
label=
"1"
>
通过
</el-radio>
<el-radio
v-model=
"radio"
label=
"-1"
>
驳回
</el-radio>
<el-radio
v-model=
"radio"
label=
"-1"
>
驳回
</el-radio>
</div>
</div>
<div
style=
"margin-bottom:10px"
>
<div
style=
"margin-bottom:10px"
>
<el-input
<el-input
type=
"textarea"
type=
"textarea"
:rows=
"4"
:rows=
"4"
style=
"width:100%"
style=
"width:100%"
placeholder=
"请输入审批意见"
placeholder=
"请输入审批意见"
v-model=
"textarea"
>
v-model=
"textarea"
</el-input>
>
</el-input>
</div>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
<button
class=
"normalBtn"
type=
"primary"
@
click=
"goexamine"
>
确认提交
</button>
class=
"normalBtn"
type=
"primary"
@
click=
"goexamine"
>
确认提交
</button>
</div>
</div>
</fieldset>
</fieldset>
<fieldset
v-if=
"isUpdate && d.w && ((d.w.Status==0 && d.w.ExamineStatus==1) || d.w.Status==1)"
style=
"border: 1px solid #DDD;padding: 13px;font-size: 12px;margin-top:20px;"
>
<fieldset
v-if=
"isUpdate && d.w && ((d.w.Status==0 && d.w.ExamineStatus==1) || d.w.Status==1)"
style=
"border: 1px solid #DDD;padding: 13px;font-size: 12px;margin-top:20px;"
>
<legend
style=
"padding:0 10px; font-size:14px;"
>
提交进度
</legend>
<legend
style=
"padding:0 10px; font-size:14px;"
>
提交进度
</legend>
<div
style=
"margin-bottom:10px;"
>
<el-row
:gutter=
"12"
>
<div
style=
"margin-bottom:10px"
>
<el-col
:span=
"1"
>
当前进度:
</el-col>
进度说明:
<el-col
:span=
"4"
><el-slider
v-model=
"progree"
:min=
"d.w.Progree"
:max=
"100"
:step=
"1"
></el-slider></el-col>
<el-input
</el-row>
type=
"textarea"
:rows=
"4"
style=
"width:100%"
placeholder=
"请输入进度说明"
v-model=
"textarea2"
></el-input>
</div>
</div>
<div
style=
"margin-bottom:10px"
>
<div
style=
"margin-bottom:10px"
>
<el-input
相关链接:
type=
"textarea"
<el-input
:rows=
"4"
type=
"textarea"
style=
"width:100%"
:rows=
"2"
placeholder=
"请输入进度说明"
style=
"width:100%"
v-model=
"textarea2"
>
placeholder=
"请填写相关链接,附件和相关链接必须二选一提交"
</el-input>
v-model=
"linker"
></el-input>
<span
style=
"font-size:12px;color:#aaa;margin:10px 0;"
>
注意,多个URL请使用换行分割
</span>
</div>
</div>
<div
style=
"margin-bottom:10px;width: 29%;"
>
<div
style=
"margin-bottom:10px;width: 29%;"
>
附件上传:
<el-upload
<el-upload
class=
"upload-demo"
class=
"upload-demo"
drag
drag
:http-request=
"uploadFileBtn"
:http-request=
"uploadFileBtn"
:multiple=
"true"
:multiple=
"true"
:show-file-list=
"true"
:show-file-list=
"true"
:on-preview=
"previewFile"
:on-preview=
"previewFile"
:on-remove=
"removeFile"
:on-remove=
"removeFile"
:limit=
"1"
:limit=
"1"
action=
""
>
action
>
<i
class=
"el-icon-upload"
></i>
<i
class=
"el-icon-upload"
></i>
<div
class=
"el-upload__text"
>
将文件拖到此处,或
<em>
点击上传
</em></div>
<div
class=
"el-upload__text"
>
将文件拖到此处,或
<em>
点击上传
</em>
</div>
</el-upload>
</el-upload>
</div>
</div>
<div
style=
"margin-bottom:10px;"
>
<el-row
:gutter=
"12"
>
<el-col
:span=
"4"
>
当前进度:
</el-col>
</el-row>
<el-row
:gutter=
"12"
>
<el-col
:span=
"4"
>
<el-slider
v-model=
"progree"
:min=
"d.w.Progree"
:max=
"100"
:step=
"1"
></el-slider>
</el-col>
</el-row>
</div>
<div
slot=
"footer"
class=
"dialog-footer"
>
<div
slot=
"footer"
class=
"dialog-footer"
>
<button
<button
class=
"normalBtn"
type=
"primary"
@
click=
"setprogress"
>
确认提交
</button>
class=
"normalBtn"
type=
"primary"
@
click=
"setprogress"
>
确认提交
</button>
</div>
</div>
</fieldset>
</fieldset>
</div>
</div>
<viewer
:images=
"images"
:options=
'imageOptions'
@
inited=
"inited"
class=
"viewer"
ref=
"viewer"
>
<viewer
:images=
"images"
:options=
"imageOptions"
@
inited=
"inited"
class=
"viewer"
ref=
"viewer"
>
<img
v-for=
"src in images"
:src=
"src"
:key=
"src"
>
<img
v-for=
"src in images"
:src=
"src"
:key=
"src"
/
>
</viewer>
</viewer>
</div>
</div>
</
template
>
</
template
>
...
@@ -151,56 +186,57 @@ export default {
...
@@ -151,56 +186,57 @@ export default {
data
()
{
data
()
{
return
{
return
{
d
:
{},
d
:
{},
radio
:
"1"
,
radio
:
"1"
,
isEaxmine
:
false
,
isEaxmine
:
false
,
isUpdate
:
false
,
isUpdate
:
false
,
textarea
:
''
,
textarea
:
""
,
textarea2
:
''
,
textarea2
:
""
,
progree
:
0
,
progree
:
0
,
fileList
:
[],
fileList
:
[],
attach
:
''
,
attach
:
""
,
imageOptions
:{
linker
:
""
,
navbar
:
false
,
imageOptions
:
{
title
:
false
navbar
:
false
,
title
:
false
},
},
images
:
[]
,
images
:
[]
};
};
},
},
mounted
()
{
mounted
()
{
let
id
=
this
.
$route
.
query
.
id
;
let
id
=
this
.
$route
.
query
.
id
;
this
.
isEaxmine
=
this
.
$route
.
query
.
examine
?
true
:
false
;
this
.
isEaxmine
=
this
.
$route
.
query
.
examine
?
true
:
false
;
this
.
isUpdate
=
this
.
$route
.
query
.
update
?
true
:
false
;
this
.
isUpdate
=
this
.
$route
.
query
.
update
?
true
:
false
;
this
.
init
(
id
);
this
.
init
(
id
);
},
},
methods
:
{
methods
:
{
openFile
(
file
){
openFile
(
file
)
{
if
(
file
)
{
if
(
file
)
{
window
.
open
(
file
)
window
.
open
(
file
)
;
}
}
},
},
inited
(
viewer
)
{
inited
(
viewer
)
{
this
.
$viewer
=
viewer
this
.
$viewer
=
viewer
;
},
},
removeFile
(
e
){
removeFile
(
e
)
{
this
.
attach
=
''
this
.
attach
=
""
;
},
},
previewFile
(
e
){
previewFile
(
e
)
{
const
link
=
document
.
createElement
(
'a'
);
const
link
=
document
.
createElement
(
"a"
);
let
_loadUrl
=
this
.
domainManager
().
DomainUrl
let
_loadUrl
=
this
.
domainManager
().
DomainUrl
;
let
str
=
window
.
location
.
href
let
str
=
window
.
location
.
href
;
link
.
href
=
this
.
attach
link
.
href
=
this
.
attach
;
document
.
body
.
appendChild
(
link
);
document
.
body
.
appendChild
(
link
);
link
.
click
();
link
.
click
();
},
},
uploadFileBtn
(
file
)
{
uploadFileBtn
(
file
)
{
//上传
//上传
let
newArr
=
[];
let
newArr
=
[];
newArr
.
push
(
file
.
file
)
newArr
.
push
(
file
.
file
)
;
let
path
=
"/Upload/Temporary/"
let
path
=
"/Upload/Temporary/"
;
this
.
$message
.
info
(
this
.
$t
(
'tips.shangchuanzhong'
))
this
.
$message
.
info
(
this
.
$t
(
"tips.shangchuanzhong"
));
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
this
.
UploadSelfFileT
(
path
,
newArr
,
x
=>
{
this
.
attach
=
this
.
domainManager
().
ViittoFileUrl
+
x
.
data
.
FilePath
this
.
attach
=
this
.
domainManager
().
ViittoFileUrl
+
x
.
data
.
FilePath
;
this
.
$message
.
success
(
this
.
$t
(
'tips.scchenggong'
))
this
.
$message
.
success
(
this
.
$t
(
"tips.scchenggong"
));
});
});
},
},
init
(
id
)
{
init
(
id
)
{
...
@@ -210,7 +246,12 @@ export default {
...
@@ -210,7 +246,12 @@ export default {
res
=>
{
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
this
.
d
=
res
.
data
.
data
;
this
.
d
=
res
.
data
.
data
;
this
.
progree
=
this
.
d
.
w
.
Progree
;
this
.
progree
=
this
.
d
.
w
.
Progree
;
this
.
d
.
p
.
forEach
(
x
=>
{
if
(
x
.
Linker
&&
x
.
Linker
!=
''
){
x
.
Linker
=
JSON
.
parse
(
x
.
Linker
);
}
});
}
else
{
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
$message
.
error
(
res
.
data
.
message
);
}
}
...
@@ -218,19 +259,27 @@ export default {
...
@@ -218,19 +259,27 @@ export default {
null
null
);
);
},
},
setprogress
(){
setprogress
()
{
if
(
this
.
textarea2
==
""
){
if
(
this
.
textarea2
==
""
)
{
this
.
$message
.
error
(
"请填写进度说明"
);
this
.
$message
.
error
(
"请填写进度说明"
);
return
;
return
;
}
}
else
if
(
this
.
linker
.
length
==
0
&&
this
.
attach
.
length
==
0
)
{
this
.
apipost
(
this
.
$message
.
error
(
"附件和相关链接必须二选一提交"
);
return
;
}
let
tempLinker
=
''
;
if
(
this
.
linker
.
length
>
0
){
tempLinker
=
JSON
.
stringify
(
this
.
linker
.
split
(
/
[
(
\r\n
)
\r\n]
+/
));
}
this
.
apipost
(
"user_post_SetWorkProcess"
,
"user_post_SetWorkProcess"
,
{
{
pid
:
this
.
$route
.
query
.
id
,
pid
:
this
.
$route
.
query
.
id
,
content
:
this
.
textarea2
,
content
:
this
.
textarea2
,
progree
:
this
.
progree
,
progree
:
this
.
progree
,
attach
:
this
.
attach
attach
:
this
.
attach
,
},
linker
:
tempLinker
},
res
=>
{
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
window
.
location
.
reload
();
window
.
location
.
reload
();
...
@@ -241,21 +290,24 @@ export default {
...
@@ -241,21 +290,24 @@ export default {
null
null
);
);
},
},
goexamine
(){
goexamine
()
{
if
(
this
.
textarea
==
""
)
{
if
(
this
.
textarea
==
""
)
{
this
.
$message
.
error
(
"请填写审批意见"
);
this
.
$message
.
error
(
"请填写审批意见"
);
return
;
return
;
}
}
this
.
apipost
(
this
.
apipost
(
"user_post_SetWorkExamine"
,
"user_post_SetWorkExamine"
,
{
{
id
:
this
.
$route
.
query
.
id
,
id
:
this
.
$route
.
query
.
id
,
content
:
this
.
textarea
,
content
:
this
.
textarea
,
status
:
this
.
radio
status
:
this
.
radio
},
},
res
=>
{
res
=>
{
if
(
res
.
data
.
resultCode
==
1
)
{
if
(
res
.
data
.
resultCode
==
1
)
{
window
.
location
.
reload
();
this
.
$router
.
push
({
name
:
"workManager"
,
query
:
{}
})
}
else
{
}
else
{
this
.
$message
.
error
(
res
.
data
.
message
);
this
.
$message
.
error
(
res
.
data
.
message
);
}
}
...
@@ -318,11 +370,11 @@ export default {
...
@@ -318,11 +370,11 @@ export default {
.work-content
*
{
.work-content
*
{
color
:
#333
;
color
:
#333
;
}
}
.work-content
.attach
{
.work-content
.attach
{
margin-top
:
10px
;
margin-top
:
10px
;
}
}
.work-content
.attach
a
{
.work-content
.attach
.work-file
{
color
:
#409EFF
;
color
:
#409eff
;
text-decoration
:
underline
;
text-decoration
:
underline
;
}
}
</
style
>
</
style
>
\ No newline at end of file
src/components/work/workManager.vue
View file @
9b9a45ab
...
@@ -76,6 +76,19 @@
...
@@ -76,6 +76,19 @@
></el-date-picker>
></el-date-picker>
</span>
</span>
</li>
</li>
<li>
<span>
<em>
任务状态
</em>
<el-select
class=
"w200"
v-model=
"msg.status"
>
<el-option
label=
"不限"
value=
"-2"
></el-option>
<el-option
label=
"未开始"
value=
"-1"
></el-option>
<el-option
label=
"进行中"
value=
"0"
></el-option>
<el-option
label=
"超时进行中"
value=
"1"
></el-option>
<el-option
label=
"超时完成"
value=
"2"
></el-option>
<el-option
label=
"正常完成"
value=
"3"
></el-option>
</el-select>
</span>
</li>
<li>
<li>
<input
<input
type=
"button"
type=
"button"
...
@@ -226,7 +239,8 @@ export default {
...
@@ -226,7 +239,8 @@ export default {
pageSize
:
10
,
pageSize
:
10
,
CreateBy
:
"-1"
,
CreateBy
:
"-1"
,
examineStatus
:
"-1"
,
examineStatus
:
"-1"
,
timeRange
:
[]
timeRange
:
[],
status
:
"-2"
},
},
getCompanyMsg
:
{
getCompanyMsg
:
{
RB_Group_Id
:
"0"
,
RB_Group_Id
:
"0"
,
...
...
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