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
fe3dbe01
Commit
fe3dbe01
authored
Oct 27, 2020
by
renjintao
Browse files
Options
Browse Files
Download
Plain Diff
my edit
parents
8f3deafa
8986812c
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
444 additions
and
384 deletions
+444
-384
base.less
assets/css/base.less
+13
-36
dtSpan.vue
components/page/dtSpan.vue
+2
-2
opration.vue
components/page/opration.vue
+67
-37
userGroup.vue
components/page/userGroup.vue
+84
-0
index.vue
pages/project/group/index.vue
+1
-5
detail.vue
pages/project/groupUser/detail.vue
+73
-62
index1.vue
pages/project/groupUser/index1.vue
+55
-106
add.vue
pages/project/plan/add.vue
+1
-1
edit.vue
pages/project/plan/edit.vue
+1
-1
index.vue
pages/project/plan/index.vue
+16
-19
detail.vue
pages/project/project/detail.vue
+35
-78
index.vue
pages/project/task/index.vue
+94
-37
iview.js
plugins/iview.js
+2
-0
No files found.
assets/css/base.less
View file @
fe3dbe01
...
@@ -1085,7 +1085,6 @@ html [type=button] {
...
@@ -1085,7 +1085,6 @@ html [type=button] {
}
}
i {
i {
font-size: 16px;
padding: 4px;
padding: 4px;
border-radius: 3px;
border-radius: 3px;
}
}
...
@@ -1094,7 +1093,6 @@ html [type=button] {
...
@@ -1094,7 +1093,6 @@ html [type=button] {
background: #1890FF;
background: #1890FF;
color: #fff;
color: #fff;
}
}
background: transparent;
background: transparent;
}
}
...
@@ -1105,66 +1103,45 @@ html [type=button] {
...
@@ -1105,66 +1103,45 @@ html [type=button] {
a.add {
a.add {
color: #249E91;
color: #249E91;
}
}
// a.add:hover {
// // color: #27AB9D;
// }
a.edit {
a.edit {
// color: #32B187;
color: rgb(6, 147, 212)
color: rgb(6, 147, 212)
}
}
// a.edit:hover {
// color: #35BD90
// }
a.remove,
a.remove,
a.delete {
a.delete {
color: #FF7A8B;
i:hover {
i:hover {
background:
#FF7A8B
;
background:
orange
;
color: #fff;
color: #fff;
}
}
}
}
a.delete {
color: #FF7A8B;
}
a.empower {
a.empower {
color: #FFBD59;
color: #FFBD59;
}
}
a.disable {
color: #CAD1D9;
}
a.icon {
a.icon {
display: inline-block;
display: inline-block;
width: 2
8
px;
width: 2
2
px;
height: 2
8
px;
height: 2
2
px;
line-height: 2
8
px;
line-height: 2
2
px;
margin: 0px 0 0 0;
margin: 0px 0 0 0;
border-radius: 50%;
border-radius: 50%;
color: #515A6E;
color: #515A6E;
background: #F5F6FA;
background: #F5F6FA;
.ivu-icon {
.ivu-icon {
font-weight: bold;
font-weight: bold;
font-size: 18px;
font-size: 20px;
}
}
a.disable {
color: #CAD1D9;
cursor: help;
i:hover {
background:#CAD1D9;
}
}
}
}
// a.icon:hover {
// background: #27AB9D;
// color: #fff;
// }
// a.icon:active {
// background: #229185;
// color: #fff;
// }
}
}
...
...
components/page/dtSpan.vue
View file @
fe3dbe01
...
@@ -11,7 +11,7 @@ export default {
...
@@ -11,7 +11,7 @@ export default {
name
:
'dtSpan'
,
name
:
'dtSpan'
,
data
()
{
data
()
{
return
{
return
{
date
:
"
33333
"
date
:
""
}
}
},
},
props
:
{
props
:
{
...
@@ -21,7 +21,7 @@ export default {
...
@@ -21,7 +21,7 @@ export default {
},
},
value
:
{
value
:
{
type
:
String
,
type
:
String
,
default
:
'
2001-01-01 00:00:00
'
default
:
''
},
},
},
},
created
()
{
created
()
{
...
...
components/page/opration.vue
View file @
fe3dbe01
...
@@ -52,13 +52,25 @@ export default {
...
@@ -52,13 +52,25 @@ export default {
titles
:
this
.
title
titles
:
this
.
title
};
};
},
},
disalbe
:
{
// 0 启用 1 禁用 2权限不足
type
:
Number
,
default
:
0
,
},
},
data
()
{
return
{
text
:
""
,
css
:
"detail"
,
};
},
created
()
{
created
()
{
var
oprates
=
{
var
oprates
=
{
detail
:
"查看"
,
detail
:
"查看"
,
edit
:
"编辑"
,
edit
:
"编辑"
,
add
:
"添加"
,
add
:
"添加"
,
delete
:
"删除"
,
delete
:
"删除"
,
remove
:
"删除"
remove
:
"删除"
,
};
};
if
(
oprates
[
this
.
oprate
])
{
if
(
oprates
[
this
.
oprate
])
{
...
@@ -69,58 +81,76 @@ export default {
...
@@ -69,58 +81,76 @@ export default {
}
else
if
(
this
.
type
==
"icon"
)
{
}
else
if
(
this
.
type
==
"icon"
)
{
this
.
css
=
"icon"
;
this
.
css
=
"icon"
;
}
}
if
(
this
.
disalbe
)
{
},
this
.
css
=
"disable"
mounted
()
{
if
(
this
.
disable
)
{
this
.
colors
=
"#ccc"
;
this
.
titles
=
''
}
}
},
},
methods
:
{
methods
:
{
handler
()
{
handler
()
{
if
(
!
this
.
disable
)
{
if
(
this
.
disalbe
==
0
)
{
if
(
this
.
oprate
==
"delete"
||
this
.
oprate
==
"remove"
)
{
if
(
this
.
oprate
==
"delete"
||
this
.
oprate
==
"remove"
)
{
this
.
$Modal
.
confirm
({
this
.
$Modal
.
confirm
({
title
:
this
.
title
,
title
:
this
.
title
,
content
:
"<p>"
+
this
.
msg
+
"</p>"
,
content
:
"<p>"
+
this
.
msg
+
"</p>"
,
onOk
:
()
=>
{
onOk
:
()
=>
{
this
.
$emit
(
"click"
,
event
);
this
.
$emit
(
"click"
,
event
);
}
}
,
});
});
}
else
{
}
else
{
this
.
$emit
(
"click"
,
event
);
this
.
$emit
(
"click"
,
event
);
}
}
}
}
},
watch
:
{
v
()
{},
disable
(
v
)
{
if
(
v
)
{
this
.
colors
=
"#ccc"
;
this
.
titles
=
''
;
}
else
{
this
.
colors
=
this
.
color
;
this
.
titles
=
this
.
title
;
}
},
this
.
disable
=
v
mounted
()
{
},
color
(
v
)
{
if
(
v
&&
v
!=
''
)
{
this
.
colors
=
v
}
},
if
(
this
.
disable
)
{
title
(
v
)
{
this
.
colors
=
"#ccc"
;
if
(
v
&&
v
!=
''
)
{
this
.
titles
=
''
this
.
titles
=
v
}
}
},
},
methods
:
{
},
handler
()
{
};
if
(
!
this
.
disable
)
{
if
(
this
.
oprate
==
"delete"
||
this
.
oprate
==
"remove"
)
{
this
.
$Modal
.
confirm
({
title
:
this
.
title
,
content
:
"<p>"
+
this
.
msg
+
"</p>"
,
onOk
:
()
=>
{
this
.
$emit
(
"click"
,
event
);
}
});
}
else
{
this
.
$emit
(
"click"
,
event
);
}
}
}
},
watch
:
{
v
()
{},
disable
(
v
)
{
if
(
v
)
{
this
.
colors
=
"#ccc"
;
this
.
titles
=
''
;
}
else
{
this
.
colors
=
this
.
color
;
this
.
titles
=
this
.
title
;
}
this
.
disable
=
v
},
color
(
v
)
{
if
(
v
&&
v
!=
''
)
{
this
.
colors
=
v
}
},
title
(
v
)
{
if
(
v
&&
v
!=
''
)
{
this
.
titles
=
v
}
},
},
};
</
script
>
</
script
>
<
style
lang=
"less"
>
<
style
lang=
"less"
>
...
...
components/page/userGroup.vue
0 → 100644
View file @
fe3dbe01
<
template
>
<div>
<Select
:placeholder=
"placeholder"
v-model=
"name"
@
on-change=
"change"
:multiple=
"multiple"
clearable
filterable
transfer
>
<Option
v-for=
"item in users"
:value=
"item.userId"
:key=
"item.userId"
:disabled=
"item.status==1"
>
<div
class=
"user"
>
<State
v-show=
"item.authority"
code=
"project.group.authority"
:value=
"item.authority"
class=
"mr10"
/>
{{
item
.
note
}}
<User
:value=
"item.userId"
/></span><Tag>
{{
item
.
role
}}
</Tag>
</div>
</Option>
</Select>
</div>
</
template
>
<
script
>
export
default
{
model
:
{
prop
:
"value"
,
event
:
"on-change"
,
},
data
()
{
return
{
name
:
this
.
value
,
users
:
this
.
data
,
};
},
created
()
{
this
.
load
();
},
props
:
{
value
:
[
String
,
Number
,
Array
],
placeholder
:
{
type
:
String
,
default
:
"请选择人员"
,
},
multiple
:{
type
:
Boolean
,
default
:
false
,
},
projectId
:{
type
:
String
}
},
methods
:
{
load
()
{
var
params
=
{
// codition:[{fieldName: "groupId", fieldValue: "b9d6fa9e-e033-4a3e-9925-c1f4437d970c", conditionalType: "Equal"}]
codition
:[{
fieldName
:
"projectId"
,
fieldValue
:
this
.
projectId
,
conditionalType
:
"Equal"
}]
}
this
.
$api
.
post
(
`
${
material
}
/projectplan/list`
,
params
).
then
(
r
=>
{
this
.
users
=
r
.
result
;
})
},
change
(
event
)
{
let
name
=
""
;
this
.
data
.
forEach
((
e
)
=>
{
if
(
e
.
id
==
event
)
{
name
=
e
.
label
;
}
});
this
.
$emit
(
"on-change"
,
event
,
name
);
},
// 加载人员
},
};
</
script
>
<
style
lang=
"less"
>
@import "../../assets/css/custom.less";
.userGroup {
}
</
style
>
pages/project/group/index.vue
View file @
fe3dbe01
...
@@ -93,7 +93,6 @@ export default {
...
@@ -93,7 +93,6 @@ export default {
click
:
()
=>
this
.
view
(
params
.
row
.
id
)
click
:
()
=>
this
.
view
(
params
.
row
.
id
)
}
}
},
'查看'
),
},
'查看'
),
//h('op', { attrs: { oprate: 'copy' }, on: { click: () => this.copy(params.row.id) } }, '克隆'),
h
(
'op'
,
{
h
(
'op'
,
{
attrs
:
{
attrs
:
{
oprate
:
'edit'
oprate
:
'edit'
...
@@ -111,13 +110,10 @@ export default {
...
@@ -111,13 +110,10 @@ export default {
}
}
},
'删除'
),
},
'删除'
),
h
(
'op'
,
{
h
(
'op'
,
{
attrs
:
{
oprate
:
'edit'
},
on
:
{
on
:
{
click
:
()
=>
this
.
openGroupUser
(
params
.
row
)
click
:
()
=>
this
.
openGroupUser
(
params
.
row
)
}
}
},
'
项目团队
'
),
},
'
成员
'
),
])
])
}
}
},
},
...
...
pages/project/groupUser/detail.vue
View file @
fe3dbe01
<
template
>
<
template
>
<div
class=
"detail"
>
<div
class=
"detail"
>
<Row>
<Row>
<Filed
:span=
"12"
:name=
"l('userId')"
>
<Filed
:span=
"12"
:name=
"l('userId')"
>
<User
:value=
"entity.userId"
></User>
<User
:value=
"entity.userId"
></User>
</Filed>
</Filed>
<Filed
:span=
"12"
:name=
"l('role')"
>
{{
entity
.
role
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('role')"
>
<Filed
:span=
"12"
:name=
"l('note')"
>
{{
entity
.
note
}}
</Filed>
<State
code=
"project.group.role"
:value=
"entity.role"
/>
<Filed
:span=
"12"
:name=
"l('status')"
>
{{
entity
.
status
}}
</Filed>
</Filed>
<Filed
:span=
"12"
:name=
"l('creationTime')"
>
{{
entity
.
creationTime
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('authority')"
>
<Filed
:span=
"12"
:name=
"l('creatorUserId')"
>
<State
code=
"project.group.authority"
:value=
"entity.authority"
/>
<User
:value=
"entity.creatorUserId"
></User>
</Filed>
</Filed>
<!--
<Filed
:span=
"12"
name=
"姓名"
>
{{
entity
.
note
}}
</Filed>
-->
<Filed
:span=
"12"
:name=
"l('status')"
>
<State
code=
"project.group.status"
:value=
"entity.status"
/></Filed>
<Filed
:span=
"12"
:name=
"l('creationTime')"
>
{{
entity
.
creationTime
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('creatorUserId')"
>
<User
:value=
"entity.creatorUserId"
></User>
</Filed>
</Row>
</Row>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
Api
from
'./api'
import
Api
from
"./api"
;
export
default
{
export
default
{
name
:
'Add'
,
name
:
"Add"
,
data
()
{
data
()
{
return
{
return
{
entity
:
{},
entity
:
{},
rules
:
{
rules
:
{
name
:
[{
name
:
[
required
:
true
,
{
message
:
'必填'
,
required
:
true
,
trigger
:
'blur'
message
:
"必填"
,
}],
trigger
:
"blur"
,
code
:
[{
},
required
:
true
,
],
message
:
'必填'
,
code
:
[
trigger
:
'blur'
{
}]
required
:
true
,
}
message
:
"必填"
,
}
trigger
:
"blur"
,
},
],
},
};
},
props
:
{
eid
:
String
,
},
mounted
()
{
if
(
this
.
eid
!=
""
&&
this
.
eid
!=
null
)
{
this
.
load
(
this
.
eid
);
}
},
methods
:
{
load
(
v
)
{
Api
.
get
({
id
:
v
,
}).
then
((
r
)
=>
{
this
.
entity
=
r
.
result
;
this
.
$emit
(
"on-load"
);
});
},
},
props
:
{
handleClose
()
{
eid
:
String
this
.
$emit
(
"on-close"
);
},
},
mounted
()
{
l
(
key
)
{
if
(
this
.
eid
!=
''
&&
this
.
eid
!=
null
)
{
key
=
"project_group_user"
+
"."
+
key
;
this
.
load
(
this
.
eid
);
return
this
.
$t
(
key
);
}
},
},
methods
:
{
},
load
(
v
)
{
watch
:
{
Api
.
get
({
eid
(
v
)
{
id
:
v
if
(
v
!=
""
&&
v
!=
null
)
{
}).
then
(
r
=>
{
this
.
load
(
v
);
this
.
entity
=
r
.
result
;
}
this
.
$emit
(
'on-load'
)
})
},
handleClose
()
{
this
.
$emit
(
'on-close'
)
},
l
(
key
)
{
key
=
"project_group_user"
+
"."
+
key
;
return
this
.
$t
(
key
)
}
},
},
watch
:
{
},
eid
(
v
)
{
};
if
(
v
!=
''
&&
v
!=
null
)
{
this
.
load
(
v
);
}
}
}
}
</
script
>
</
script
>
pages/project/groupUser/index1.vue
View file @
fe3dbe01
This diff is collapsed.
Click to expand it.
pages/project/plan/add.vue
View file @
fe3dbe01
...
@@ -95,7 +95,7 @@
...
@@ -95,7 +95,7 @@
></Col>
></Col>
<Col
:span=
"12"
<Col
:span=
"12"
><FormItem
:label=
"l('executor')"
prop=
"executor"
>
><FormItem
:label=
"l('executor')"
prop=
"executor"
>
<User
Select
v-model=
"entity.executor"
multiple
></UserSelect
>
<User
Group
v-model=
"entity.executor"
multiple
:projectId=
"v.projectId"
></UserGroup
>
</FormItem>
</FormItem>
</Col
</Col
>
>
...
...
pages/project/plan/edit.vue
View file @
fe3dbe01
...
@@ -95,7 +95,7 @@
...
@@ -95,7 +95,7 @@
></Col>
></Col>
<Col
:span=
"12"
<Col
:span=
"12"
><FormItem
:label=
"l('executor')"
prop=
"executor"
>
><FormItem
:label=
"l('executor')"
prop=
"executor"
>
<User
Select
v-model=
"entity.executor"
multiple
></UserSelect
>
<User
Group
v-model=
"entity.executor"
multiple
:projectId=
"entity.projectId"
></UserGroup
>
</FormItem>
</FormItem>
</Col
</Col
>
>
...
...
pages/project/plan/index.vue
View file @
fe3dbe01
...
@@ -158,12 +158,13 @@ export default {
...
@@ -158,12 +158,13 @@ export default {
},
},
},
},
{
{
key
:
"type"
,
attrs
:
{
icon
:
"md-arrow-dropright-circle"
,
width
:
90
,
type
:
"icon"
,
title
:
this
.
l
(
"type"
),
title
:
"派发"
,
align
:
"left"
,
oprate
:
"edit"
,
high
:
true
,
disalbe
:
1
,
code
:
"mes.project_plan.Type"
,
},
on
:
{
click
:
()
=>
this
.
copy
(
params
.
row
.
id
)
},
},
},
{
{
key
:
"title"
,
key
:
"title"
,
...
@@ -174,19 +175,15 @@ export default {
...
@@ -174,19 +175,15 @@ export default {
high
:
true
,
high
:
true
,
},
},
{
{
key
:
"status"
,
attrs
:
{
icon
:
"md-create"
,
title
:
this
.
l
(
"status"
),
type
:
"icon"
,
align
:
"left"
,
title
:
"编辑"
,
high
:
true
,
oprate
:
"edit"
,
},
code
:
"mes.project_plan.Status"
,
on
:
{
click
:
()
=>
this
.
edit
(
params
.
row
.
id
)
},
},
}
{
),
key
:
"startDate"
,
h
(
title
:
this
.
l
(
"startDate"
),
"op"
,
align
:
"left"
,
high
:
true
,
type
:
"date"
},
{
{
key
:
"endDate"
,
key
:
"endDate"
,
title
:
this
.
l
(
"endDate"
),
title
:
this
.
l
(
"endDate"
),
...
...
pages/project/project/detail.vue
View file @
fe3dbe01
...
@@ -14,45 +14,33 @@
...
@@ -14,45 +14,33 @@
<Filed
:span=
"12"
:name=
"l('endDate') + ':'"
>
{{
<Filed
:span=
"12"
:name=
"l('endDate') + ':'"
>
{{
entity
.
endDate
entity
.
endDate
}}
</Filed>
}}
</Filed>
</Row>
</Row>
</div>
</div>
<ul>
<ul>
<li>
<li>
<a
@
click=
"details"
>
<a
@
click=
"details"
>
<Icon
type=
"ios-log-in"
/>
详情
</a>
<Icon
type=
"ios-log-in"
/>
详情
</a>
<span>
|
</span>
</li>
<span>
|
</span>
<li>
</li>
<a
@
click=
"template"
>
<Icon
type=
"ios-photos"
/>
模版
</a>
<li>
<a
@
click=
"template"
>
<span>
|
</span>
<Icon
type=
"ios-photos"
/>
模版
</li>
</a>
<li>
<a
@
click=
"task"
>
<Icon
type=
"md-create"
/>
任务
</a>
<span>
|
</span>
</li>
<span>
|
</span>
<li>
</li>
<a
@
click=
"task"
>
<li>
<Icon
type=
"md-create"
/>
任务
<a
@
click=
"group"
>
<Icon
type=
"md-create"
/>
成员
</a>
</a>
<span>
|
</span>
</li>
<span>
|
</span>
<li>
</li>
<a
@
click=
"task"
>
<Icon
type=
"md-create"
/>
动态
</a>
<li>
<span>
|
</span>
<a
@
click=
"groupUser"
>
</li>
<Icon
type=
"md-create"
/>
成员
</ul>
</a>
<span>
|
</span>
</li>
<li>
<a
@
click=
"task"
>
<Icon
type=
"md-create"
/>
动态
</a>
<span>
|
</span>
</li>
</ul>
</div>
</div>
<div
class=
"body-document"
>
<div
class=
"body-document"
>
<h4
v-text=
"title"
></h4>
<h4
v-text=
"title"
></h4>
...
@@ -103,45 +91,14 @@ export default {
...
@@ -103,45 +91,14 @@ export default {
}
}
this
.
detail
=
()
=>
import
(
"./details"
);
this
.
detail
=
()
=>
import
(
"./details"
);
},
},
methods
:
{
group
()
{
load
(
v
)
{
// this.curId = this.eid;
Api
.
get
({
this
.
title
=
"成员管理"
;
id
:
v
this
.
detail
=
()
=>
import
(
"../groupUser/index1"
);
}).
then
((
r
)
=>
{
},
this
.
entity
=
r
.
result
;
l
(
key
)
{
// this.$emit("on-load");
key
=
"project_main"
+
"."
+
key
;
});
return
this
.
$t
(
key
);
},
details
()
{
this
.
title
=
"详细信息"
;
this
.
detail
=
()
=>
import
(
"./details"
);
},
template
()
{
// this.curId = this.eid;
this
.
title
=
"项目模板"
;
this
.
detail
=
()
=>
import
(
"../plan"
);
},
task
()
{
this
.
curId
=
this
.
eid
;
this
.
title
=
"任务"
;
//this.detail = () => import("../task/index");
this
.
$router
.
push
({
name
:
"project-task"
,
params
:
{
id
:
this
.
curId
}
});
},
groupUser
()
{
// this.curId = this.eid;
this
.
title
=
"任务"
;
// this.detail = () => import("./add");
},
l
(
key
)
{
key
=
"project_main"
+
"."
+
key
;
return
this
.
$t
(
key
);
},
},
},
watch
:
{
watch
:
{
eid
(
v
)
{
eid
(
v
)
{
...
...
pages/project/task/index.vue
View file @
fe3dbe01
...
@@ -349,45 +349,105 @@ export default {
...
@@ -349,45 +349,105 @@ export default {
this
.
detail
=
()
=>
import
(
'./add'
)
this
.
detail
=
()
=>
import
(
'./add'
)
this
.
modal
=
true
;
this
.
modal
=
true
;
},
},
productSearch
(
id
,
item
,
planIds
)
{
this
.
planId
=
item
.
selected
?
id
:
''
;
this
.
planIdsCur
=
item
.
selected
?
planIds
:
[]
let
where
=
{
planId
:
{
op
:
"In"
,
value
:
item
.
selected
?
planIds
:
[]
},
projectId
:
{
op
:
"Equal"
,
value
:
this
.
$route
.
params
.
id
},
};
this
.
$refs
.
grid
.
reload
(
where
);
},
updatepart
(
valId
,
valStatus
)
{
let
params
=
{
id
:
valId
,
status
:
valStatus
,
}
Api
.
updatepart
(
params
).
then
(
r
=>
{
if
(
r
.
success
)
{
this
.
$refs
.
grid
.
load
();
this
.
$Message
.
success
(
'操作成功'
)
}
else
{
this
.
$Message
.
error
(
'操作失败'
)
}
}).
catch
(
err
=>
{
this
.
disabled
=
false
;
this
.
$Message
.
error
(
'操作失败'
)
console
.
warn
(
err
)
})
},
},
mounted
()
{
console
.
log
(
this
);
},
async
fetch
({
store
,
params
})
{
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
},
methods
:
{
ok
()
{
this
.
$refs
.
grid
.
load
();
this
.
modal
=
false
;
this
.
curId
=
0
;
},
search
()
{
this
.
$refs
.
grid
.
reload
(
this
.
easySearch
);
},
add
()
{
this
.
curId
=
0
;
this
.
title
=
"新增"
;
this
.
fullScreen
=
false
;
this
.
detail
=
()
=>
import
(
"./add"
);
this
.
modal
=
true
;
},
highSearch
()
{
highSearch
()
{
this
.
curId
=
0
;
this
.
curId
=
0
;
this
.
title
=
"高级搜索"
;
this
.
title
=
"高级搜索"
;
this
.
fullScreen
=
false
;
this
.
fullScreen
=
false
;
this
.
detail
=
()
=>
import
(
'./search'
)
this
.
detail
=
()
=>
import
(
"./search"
);
this
.
modal
=
true
;
this
.
modal
=
true
;
},
},
copy
(
id
)
{
copy
(
id
)
{
this
.
curId
=
id
;
this
.
curId
=
id
;
this
.
title
=
"克隆"
;
this
.
title
=
"克隆"
;
this
.
fullScreen
=
false
;
this
.
fullScreen
=
false
;
this
.
detail
=
()
=>
import
(
'./add'
)
this
.
detail
=
()
=>
import
(
"./add"
);
this
.
modal
=
true
;
this
.
modal
=
true
;
},
},
view
(
id
)
{
view
(
id
)
{
this
.
curId
=
id
;
this
.
curId
=
id
;
this
.
title
=
"详情"
;
this
.
title
=
"详情"
;
this
.
fullScreen
=
false
;
this
.
fullScreen
=
false
;
this
.
detail
=
()
=>
import
(
'./detail'
)
this
.
detail
=
()
=>
import
(
"./detail"
);
this
.
modal
=
true
;
this
.
modal
=
true
;
},
},
edit
(
id
)
{
edit
(
id
)
{
this
.
curId
=
id
;
this
.
curId
=
id
;
this
.
title
=
"编辑"
;
this
.
title
=
"编辑"
;
this
.
fullScreen
=
false
;
this
.
fullScreen
=
false
;
this
.
detail
=
()
=>
import
(
'./edit'
)
this
.
detail
=
()
=>
import
(
"./edit"
);
this
.
modal
=
true
;
this
.
modal
=
true
;
},
},
remove
(
id
)
{
remove
(
id
)
{
Api
.
delete
(
id
).
then
((
r
)
=>
{
Api
.
delete
(
id
).
then
((
r
)
=>
{
if
(
r
.
success
)
{
if
(
r
.
success
)
{
this
.
$refs
.
grid
.
load
();
this
.
$refs
.
grid
.
load
();
this
.
$Message
.
success
(
'删除成功'
)
this
.
$Message
.
success
(
"删除成功"
);
}
}
})
})
;
},
},
cancel
()
{
cancel
()
{
this
.
curId
=
0
;
this
.
curId
=
0
;
this
.
modal
=
false
this
.
modal
=
false
;
},
},
onHide
()
{
onHide
()
{
// this.$Message.info("收起左侧树")
// this.$Message.info("收起左侧树")
...
@@ -397,62 +457,59 @@ export default {
...
@@ -397,62 +457,59 @@ export default {
//this.$Message.info("展开左侧树")
//this.$Message.info("展开左侧树")
this
.
showMenu
=
true
;
this
.
showMenu
=
true
;
},
},
productSearch
(
id
,
item
,
planIds
)
{
productSearch
(
id
,
item
,
productIds
,
ids
)
{
this
.
planId
=
item
.
selected
?
id
:
''
;
this
.
planIdsCur
=
item
.
selected
?
planIds
:
[]
let
where
=
{
let
where
=
{
plan
Id
:
{
bom
Id
:
{
op
:
"In"
,
op
:
"In"
,
value
:
item
.
selected
?
planIds
:
[]
value
:
ids
,
},
projectId
:
{
op
:
"Equal"
,
value
:
this
.
$route
.
params
.
id
},
},
};
};
this
.
$refs
.
grid
.
reload
(
where
);
this
.
$refs
.
grid
.
reload
(
where
);
},
},
update
part
(
valId
,
valStatus
)
{
update
status
(
valId
,
valStatus
)
{
let
params
=
{
let
params
=
{
id
:
valId
,
id
:
valId
,
status
:
valStatus
,
status
:
valStatus
,
}
detail
:
""
,
Api
.
updatepart
(
params
).
then
(
r
=>
{
};
if
(
r
.
success
)
{
Api
.
updatestatus
(
params
)
this
.
$refs
.
grid
.
load
();
.
then
((
r
)
=>
{
this
.
$Message
.
success
(
'操作成功'
)
if
(
r
.
success
)
{
}
else
{
this
.
$refs
.
grid
.
load
();
this
.
$Message
.
error
(
'操作失败'
)
this
.
$Message
.
success
(
"操作成功"
);
}
}
else
{
}).
catch
(
err
=>
{
this
.
$Message
.
error
(
"操作失败"
);
this
.
disabled
=
false
;
}
this
.
$Message
.
error
(
'操作失败'
)
})
console
.
warn
(
err
)
.
catch
((
err
)
=>
{
})
this
.
disabled
=
false
;
this
.
$Message
.
error
(
"操作失败"
);
console
.
warn
(
err
);
});
},
},
onSelect
(
val
)
{
onSelect
(
val
)
{
this
.
$refs
.
grid
.
reload
(
this
.
easySearch
)
this
.
$refs
.
grid
.
reload
(
this
.
easySearch
)
;
},
},
viewRecord
(
id
)
{
viewRecord
(
id
)
{
this
.
curId
=
id
;
this
.
curId
=
id
;
this
.
title
=
"查看记录"
;
this
.
title
=
"查看记录"
;
this
.
fullScreen
=
true
;
this
.
fullScreen
=
true
;
this
.
detail
=
()
=>
import
(
'./detail'
)
this
.
detail
=
()
=>
import
(
"./detail"
);
this
.
modal
=
true
;
this
.
modal
=
true
;
},
},
addRecord
(
id
)
{
addRecord
(
id
)
{
this
.
curId
=
id
;
this
.
curId
=
id
;
this
.
title
=
"新增记录"
;
this
.
title
=
"新增记录"
;
this
.
fullScreen
=
true
;
this
.
fullScreen
=
true
;
this
.
detail
=
()
=>
import
(
'../record/add'
)
this
.
detail
=
()
=>
import
(
"../record/add"
);
this
.
modal
=
true
;
this
.
modal
=
true
;
},
},
l
(
key
)
{
l
(
key
)
{
let
vkey
=
"project_task"
+
"."
+
key
;
let
vkey
=
"project_task"
+
"."
+
key
;
return
this
.
$t
(
vkey
)
||
key
return
this
.
$t
(
vkey
)
||
key
;
}
}
,
}
}
,
}
}
;
</
script
>
</
script
>
<
style
lang=
"less"
>
<
style
lang=
"less"
>
...
...
plugins/iview.js
View file @
fe3dbe01
...
@@ -26,6 +26,7 @@ import Tools from '@/components/page/tool.vue'
...
@@ -26,6 +26,7 @@ import Tools from '@/components/page/tool.vue'
import
State
from
'@/components/page/state.vue'
import
State
from
'@/components/page/state.vue'
import
Dictionary
from
'@/components/page/dictionary.vue'
import
Dictionary
from
'@/components/page/dictionary.vue'
import
UserSelect
from
'@/components/page/userSelect.vue'
import
UserSelect
from
'@/components/page/userSelect.vue'
import
UserGroup
from
'@/components/page/userGroup.vue'
import
Materiel
from
'@/components/page/materiel.vue'
import
Materiel
from
'@/components/page/materiel.vue'
import
RoleSelect
from
'@/components/page/roleSelect.vue'
import
RoleSelect
from
'@/components/page/roleSelect.vue'
import
UserExamSelect
from
'@/components/page/userExamSelect.vue'
import
UserExamSelect
from
'@/components/page/userExamSelect.vue'
...
@@ -130,6 +131,7 @@ Vue.component("WorkShopSelect", WorkShopSelect)
...
@@ -130,6 +131,7 @@ Vue.component("WorkShopSelect", WorkShopSelect)
Vue
.
component
(
"WorkShopName"
,
WorkShopName
)
Vue
.
component
(
"WorkShopName"
,
WorkShopName
)
Vue
.
component
(
"workShopDefault"
,
workShopDefault
)
Vue
.
component
(
"workShopDefault"
,
workShopDefault
)
Vue
.
component
(
"WorkShop"
,
WorkShop
)
Vue
.
component
(
"WorkShop"
,
WorkShop
)
Vue
.
component
(
"UserGroup"
,
UserGroup
)
Vue
.
component
(
"EquipSelect"
,
EquipSelect
)
Vue
.
component
(
"EquipSelect"
,
EquipSelect
)
Vue
.
component
(
"EquipTypeSelect"
,
EquipTypeSelect
)
Vue
.
component
(
"EquipTypeSelect"
,
EquipTypeSelect
)
Vue
.
component
(
"ResourceSelect"
,
ResourceSelect
)
Vue
.
component
(
"ResourceSelect"
,
ResourceSelect
)
...
...
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