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
bead90d6
Commit
bead90d6
authored
Apr 24, 2020
by
renjintao
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'product' of git.mes123.com:zhouyx/mes-ui into product-rjt
parents
8881e90d
ff6e3b4b
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
516 additions
and
279 deletions
+516
-279
iview-reset.less
assets/css/iview-reset.less
+0
-3
api.js
pages/aps/complete/api.js
+16
-13
checkboxList.vue
pages/aps/complete/checkboxList.vue
+2
-2
index.vue
pages/aps/complete/index.vue
+88
-70
api.js
pages/aps/stream/api.js
+23
-14
checkboxList.vue
pages/aps/stream/checkboxList.vue
+149
-67
index.vue
pages/aps/stream/index.vue
+41
-57
set.vue
pages/aps/stream/set.vue
+196
-53
technolog.less
pages/technology/technolog.less
+1
-0
No files found.
assets/css/iview-reset.less
View file @
bead90d6
...
...
@@ -339,9 +339,6 @@
color: #fff;
}
}
.ivu-select-dropdown{
z-index: 910!important;
}
.manyTabs {
.ivu-tabs-bar {
position: absolute;
...
...
pages/aps/complete/api.js
View file @
bead90d6
...
...
@@ -3,19 +3,22 @@ export default {
getpooltypeorderlist
(
params
)
{
return
Api
.
get
(
`
${
PlanUrl
}
/messchedule/getpooltypeorderlist`
,
params
);
//排产池订单数据
},
gettaskseqinfo
(
params
)
{
return
Api
.
get
(
`
${
PlanUrl
}
/aps/gettaskseqinfo`
,
params
);
//根据订单获取全部工序数据
cmonestepschedule
(
params
)
{
return
Api
.
post
(
`
${
PlanUrl
}
/messchedule/cmonestepschedule`
,
params
);
//整机排产--一级排产
},
getlist
(
params
)
{
return
Api
.
get
(
`
${
PlanUrl
}
/mes_sys_shop_info/getlist`
,
params
);
//手工排产:查询所在车间下的所有班组信息
},
getbyshopid
(
params
)
{
return
Api
.
get
(
`
${
PlanUrl
}
/mes_sys_user_info/getuserbyshopid`
,
params
);
//手工排产:根据班组ID,加载人员信息
},
getlistEquip
(
params
)
{
return
Api
.
get
(
`
${
PlanUrl
}
/mes_equip_info/getlist`
,
params
);
//手工排产:获取所在车间的设备
},
getbyequippk
(
params
)
{
return
Api
.
get
(
`
${
PlanUrl
}
/mes_sys_user_info/getuserbyequippk`
,
params
);
//手工排产:根据设备ID,加载人员信息
cmtwostepschedule
(
params
)
{
return
Api
.
post
(
`
${
PlanUrl
}
/messchedule/cmtwostepschedule`
,
params
);
//整机排产--二级排产
},
// getlist(params) {
// return Api.get(`${PlanUrl}/mes_sys_shop_info/getlist`, params); //手工排产:查询所在车间下的所有班组信息
// },
// getbyshopid(params) {
// return Api.get(`${PlanUrl}/mes_sys_user_info/getuserbyshopid`, params); //手工排产:根据班组ID,加载人员信息
// },
// getlistEquip(params) {
// return Api.get(`${PlanUrl}/mes_equip_info/getlist`, params); //手工排产:获取所在车间的设备
// },
// getbyequippk(params) {
// return Api.get(`${PlanUrl}/mes_sys_user_info/getuserbyequippk`, params); //手工排产:根据设备ID,加载人员信息
// },
}
\ No newline at end of file
pages/aps/complete/checkboxList.vue
View file @
bead90d6
...
...
@@ -20,7 +20,7 @@
</div>
</Col>
</Row>
<ul
v-
if
=
"singleList.isClick"
>
<ul
v-
show
=
"singleList.isClick"
>
<li
ref=
"liId"
v-for=
"(item,index) in list"
...
...
@@ -215,7 +215,7 @@ export default {
border-radius: 20px;
margin: 0 5px;
cursor: pointer;
background: rgba(38, 128, 235, 0.1
5
);
background: rgba(38, 128, 235, 0.1);
}
li:hover {
border: 1px solid rgba(38, 128, 235, 0.5);
...
...
pages/aps/complete/index.vue
View file @
bead90d6
...
...
@@ -5,8 +5,8 @@
<Col
:span=
"6"
class=
"chan-chi"
>
排产池
</Col>
<Col
:span=
"18"
class=
"l-ringht"
>
<RadioGroup
v-model=
"status"
type=
"button"
@
on-change=
"changeStatus"
size=
"small"
>
<Radio
label=
"
0
"
>
全部
</Radio>
<Radio
label=
"
1
"
>
未排产
</Radio>
<Radio
label=
"
-1
"
>
全部
</Radio>
<Radio
label=
"
0
"
>
未排产
</Radio>
<Radio
label=
"2"
>
已排查
</Radio>
</RadioGroup>
</Col>
...
...
@@ -15,12 +15,11 @@
class=
"left-body"
v-for=
"(li,index) in list"
:key=
"index"
@
click=
"listData(li.part_task_pk,index)"
:class=
"li.checked == true ? 'addclass' : '' "
>
<Row
class=
"title-i"
>
<Col
:span=
"20"
class=
"order-code"
>
<Checkbox
v-model=
"li.checked"
>
订单号:
{{
li
.
mesCode
}}
</Checkbox>
<Checkbox
v-model=
"li.checked"
@
on-change=
"checkData(li)"
>
订单号:
{{
li
.
mesCode
}}
</Checkbox>
</Col>
<Col
:span=
"4"
class=
"order-ringht"
>
<Icon
type=
"md-close"
@
click=
"close"
/>
...
...
@@ -39,8 +38,9 @@
<FormItem
label=
"工时"
>
<DatePicker
type=
"datetimerange"
format=
"yyyy-MM-dd HH:mm"
format=
"yyyy-MM-dd HH:mm
:ss
"
placeholder=
"请选择工时"
@
on-change=
"changeFormat"
v-model=
"formItem.time"
style=
"width:300px"
></DatePicker>
...
...
@@ -60,8 +60,12 @@
></Dictionary>
</FormItem>
<FormItem
label=
"班组"
v-if=
"formItem.radio==1"
>
<Select
v-model=
"formItem.model1"
style=
"width:300px"
multiple
>
<Option
v-for=
"item in cityList"
:value=
"item.value"
:key=
"item.value"
>
{{
item
.
label
}}
</Option>
<Select
v-model=
"formItem.shopId"
style=
"width:300px"
multiple
>
<Option
v-for=
"item in classList"
:value=
"item.shopId"
:key=
"item.shopId"
>
{{
item
.
label
}}
</Option>
</Select>
</FormItem>
...
...
@@ -84,7 +88,6 @@
<span>
{{
item
.
name
}}
&
nbsp
&
nbsp
{{
item
.
class
}}
</span>
<Icon
type=
"md-close"
@
click=
"closeTag"
/>
</div>
<!--
<Tag
color=
"rgba(38,128,235,0.3)"
closable
...
...
@@ -103,8 +106,8 @@
>
</Input>
</FormItem>
<FormItem>
<Button
style=
"margin-left: 8px"
>
取消
</Button>
<Button
type=
"primary"
>
下发
</Button>
<Button
style=
"margin-left: 8px"
@
click=
"closeOk"
>
取消
</Button>
<Button
type=
"primary"
@
click=
"lowerHair"
>
下发
</Button>
</FormItem>
</Form>
</div>
...
...
@@ -126,24 +129,15 @@ export default {
return
{
// activeindex: 1,
list
:
[],
status
:
"0"
,
//全部排产0,1为未排产;2为已排查;
partTaskPk
:
""
,
//车间
result
:
[],
status
:
"-1"
,
//全部排产-1,0为未排产;2为已排查;
formItem
:
{
resourcesType
:
0
,
input
:
""
,
select
:
""
,
radio
:
"0"
,
checkbox
:
[],
switch
:
true
,
date
:
""
,
time
:
""
,
slider
:
[
20
,
50
]
,
textarea
:
""
,
day
:
0
beginTime
:
""
,
endTime
:
""
,
textarea
:
""
},
tagdata
:
[],
listGroup
:
[
{
equip_name
:
"调试组"
,
...
...
@@ -155,61 +149,59 @@ export default {
],
tagGroup
:
[
{
id
:
1
,
name
:
"张芳"
,
class
:
"1级"
},
{
id
:
2
,
name
:
"张芳"
,
class
:
"1级"
},
{
id
:
4
,
name
:
"张芳"
,
class
:
"1级"
},
{
id
:
5
,
name
:
"张芳"
,
class
:
"1级"
}
],
c
ity
List
:
[
c
lass
List
:
[
{
value
:
"0"
,
shopId
:
"0"
,
label
:
"调试组"
},
{
value
:
"1"
,
shopId
:
"1"
,
label
:
"装配组"
},
{
value
:
"2"
,
shopId
:
"2"
,
label
:
"计划组"
},
{
value
:
"3"
,
shopId
:
"3"
,
label
:
"管理组"
}
]
],
orderIds
:
[]
};
},
created
()
{
this
.
orderlist
();
this
.
orderlist
(
-
1
);
},
methods
:
{
// 过滤条件
changeStatus
(
a
)
{
console
.
log
(
a
);
// this.orderlist(a);
changeStatus
(
name
)
{
this
.
orderlist
(
name
);
},
orderlist
()
{
// if (a == 0) {
// //全部
// } else if (a == 1) {
// //未排产
// } else if (a == 2) {
// //已排产
// }
Api
.
getpooltypeorderlist
({
PoolType
:
2
}).
then
(
r
=>
{
// console.log(r)
//排产池列表
orderlist
(
a
)
{
this
.
status
=
a
;
Api
.
getpooltypeorderlist
({
PoolType
:
2
,
status
:
this
.
status
}).
then
(
r
=>
{
if
(
r
.
success
)
{
r
.
result
.
forEach
(
e
=>
{
return
(
e
.
checked
=
false
);
...
...
@@ -218,31 +210,57 @@ export default {
}
});
},
listData
(
li
,
index
)
{
// this.isactive = index;
},
tagTata
(
name
)
{
if
(
name
==
"all"
)
{
this
.
status
=
""
;
}
if
(
name
==
"yi"
)
{
this
.
status
=
13
;
}
if
(
name
==
"wei"
)
{
this
.
status
=
0
;
//获取订单集
checkData
(
li
)
{
if
(
li
.
checked
)
{
this
.
orderIds
.
push
(
li
.
id
);
}
else
{
if
(
this
.
orderIds
)
{
this
.
orderIds
.
forEach
((
e
,
i
)
=>
{
if
(
this
.
orderIds
[
i
]
==
li
.
id
)
{
this
.
orderIds
.
splice
(
i
,
1
);
}
});
}
}
let
data
=
{
part_task_pk
:
this
.
partTaskPk
,
status
:
this
.
status
};
Api
.
gettaskseqinfo
(
data
).
then
(
r
=>
{
// console.log(r)
if
(
r
.
success
)
{
this
.
result
=
r
.
result
;
},
//工时时间范围
changeFormat
(
val
)
{
this
.
formItem
.
beginTime
=
val
[
0
];
this
.
formItem
.
endTime
=
val
[
1
];
},
lowerHair
()
{
if
(
this
.
formItem
.
radio
==
0
)
{
//一级排产选择人员
let
urseId
=
[];
for
(
var
i
=
0
;
i
<
this
.
tagGroup
.
length
;
i
++
)
{
urseId
.
push
(
this
.
tagGroup
[
i
].
id
);
}
});
let
params1
=
{
orderIds
:
this
.
orderIds
,
userIds
:
urseId
,
beginTime
:
this
.
formItem
.
beginTime
,
endTime
:
this
.
formItem
.
endTime
};
Api
.
cmonestepschedule
(
params1
).
then
(
r
=>
{
if
(
r
.
success
)
{
}
});
}
else
if
(
this
.
formItem
.
radio
==
1
)
{
//二级排产选择班组
let
params2
=
{
orderIds
:
this
.
orderIds
,
shopId
:
this
.
formItem
.
shopId
,
beginTime
:
this
.
formItem
.
beginTime
,
endTime
:
this
.
formItem
.
endTime
};
Api
.
cmtwostepschedule
(
params2
).
then
(
r
=>
{
if
(
r
.
success
)
{
}
});
}
},
closeOk
()
{},
close
()
{
this
.
$Modal
.
confirm
({
title
:
"删除"
,
...
...
@@ -268,9 +286,9 @@ export default {
</
script
>
<
style
lang=
"less"
scoped
>
.addclass {
border-color: rgba(38, 128, 235, 0.
5
) !important;
border-color: rgba(38, 128, 235, 0.
2
) !important;
.title-i {
background: rgba(38, 128, 235, 0.
5
) !important;
background: rgba(38, 128, 235, 0.
2
) !important;
}
}
.scheduling {
...
...
@@ -328,7 +346,7 @@ export default {
}
}
.aps-r {
border: 1px solid rgba(228, 230, 237,
1
);
border: 1px solid rgba(228, 230, 237,
0.5
);
width: 80%;
padding: 15px 15px 15px 30px;
margin-left: 20px;
...
...
@@ -344,7 +362,7 @@ export default {
.tag-list {
width: 100%;
min-height: 50px;
border: 1px solid rgba(228, 230, 237,
1
);
border: 1px solid rgba(228, 230, 237,
0.5
);
.tag-group {
display: inline-block;
text-align: center;
...
...
@@ -353,7 +371,7 @@ export default {
line-height: 30px;
border-radius: 20px;
margin: 5px;
background: rgba(38, 128, 235, 0.2
5
);
background: rgba(38, 128, 235, 0.2);
.ivu-icon {
cursor: pointer;
}
...
...
pages/aps/stream/api.js
View file @
bead90d6
import
Api
from
'@/plugins/request'
export
default
{
get
mesorder
(
params
)
{
return
Api
.
get
(
`
${
apsManualUrl
}
/aps/getmesorder`
,
params
);
//待排产
订单数据
get
pooltypeorderlist
(
params
)
{
return
Api
.
get
(
`
${
PlanUrl
}
/messchedule/getpooltypeorderlist`
,
params
);
//排产池
订单数据
},
get
taskseqinfo
(
params
)
{
return
Api
.
get
(
`
${
apsManualUrl
}
/aps/gettaskseqinfo`
,
params
);
//根据订单获取全部工序数据
get
routingdetails
(
params
)
{
return
Api
.
get
(
`
${
PlanUrl
}
/messchedule/getroutingdetails`
,
params
);
//工序信息
},
getlist
(
params
)
{
return
Api
.
get
(
`
${
apsManualUrl
}
/mes_sys_shop_info/getlist`
,
params
);
//手工排产:查询所在车间下的所有班组信息
flonestepschedule
(
params
)
{
return
Api
.
post
(
`
${
PlanUrl
}
/messchedule/flonestepschedule`
,
params
);
//流水一级
},
getbyshopid
(
params
)
{
return
Api
.
get
(
`
${
apsManualUrl
}
/mes_sys_user_info/getuserbyshopid`
,
params
);
//手工排产:根据班组ID,加载人员信息
},
getlistEquip
(
params
)
{
return
Api
.
get
(
`
${
apsManualUrl
}
/mes_equip_info/getlist`
,
params
);
//手工排产:获取所在车间的设备
},
getbyequippk
(
params
)
{
return
Api
.
get
(
`
${
apsManualUrl
}
/mes_sys_user_info/getuserbyequippk`
,
params
);
//手工排产:根据设备ID,加载人员信息
fltwostepschedule
(
params
)
{
return
Api
.
post
(
`
${
PlanUrl
}
/messchedule/fltwostepschedule`
,
params
);
//流水二级
},
// gettaskseqinfo(params) {
// return Api.get(`${apsManualUrl}/aps/gettaskseqinfo`, params); //根据订单获取全部工序数据
// },
// getlist(params) {
// return Api.get(`${apsManualUrl}/mes_sys_shop_info/getlist`, params); //手工排产:查询所在车间下的所有班组信息
// },
// getbyshopid(params) {
// return Api.get(`${apsManualUrl}/mes_sys_user_info/getuserbyshopid`, params); //手工排产:根据班组ID,加载人员信息
// },
// getlistEquip(params) {
// return Api.get(`${apsManualUrl}/mes_equip_info/getlist`, params); //手工排产:获取所在车间的设备
// },
// getbyequippk(params) {
// return Api.get(`${apsManualUrl}/mes_sys_user_info/getuserbyequippk`, params); //手工排产:根据设备ID,加载人员信息
// },
}
\ No newline at end of file
pages/aps/stream/checkboxList.vue
View file @
bead90d6
<
template
>
<div
class=
"checkbox-list"
>
<Row
style=
"border-bottom: 1px solid #e9e9e9;margin-bottom:6px;
"
>
<Row
class=
"check-title
"
>
<Col
span=
"20"
>
<div>
<!-- :indeterminate="indeterminate" -->
<!-- :label="resourcesType==0?singleList.shop_name:resourcesType==2?singleList.equip_name:''" -->
<Checkbox
:label=
"
resourcesType==0?singleList.shop_name:resourcesType==2?singleList.equip_name:''
"
:label=
"
singleList.equip_name
"
v-model=
"checkAll"
@
click
.
prevent
.
native=
"handleCheckAll(singleList.shop_id)"
>
{{
resourcesType
==
0
?
singleList
.
shop_name
:
resourcesType
==
2
?
singleList
.
equip_name
:
''
}}
</Checkbox>
>
{{
singleList
.
equip_name
}}
</Checkbox>
<!--
{{
resourcesType
==
0
?
singleList
.
shop_name
:
resourcesType
==
2
?
singleList
.
equip_name
:
''
}}
-->
</div>
</Col>
<Col
span=
"4"
>
...
...
@@ -18,112 +20,163 @@
</div>
</Col>
</Row>
<CheckboxGroup
<ul
v-if=
"singleList.isClick"
>
<li
ref=
"liId"
v-for=
"(item,index) in list"
:key=
"index"
@
click=
"onclick(index)"
>
{{
item
.
name
}}
&
nbsp
&
nbsp
{{
item
.
class
}}
</li>
</ul>
<!--
<CheckboxGroup
v-model=
"checkAllGroup"
@
on-change=
"checkAllGroupChange"
v-if=
"singleList.isClick"
>
<Checkbox
:label=
"resourcesType==0?item.user_name:resourcesType==2?item.equip_name:''"
v-for=
"(item,index) in list"
:key=
"item.user_id"
></Checkbox>
</CheckboxGroup>
>
-->
<!-- :label="resourcesType==0?item.user_name:resourcesType==2?item.equip_name:''" -->
<!--
<Checkbox
v-for=
"(item,index) in list"
:key=
"index"
:label=
"item.name"
>
{{
item
.
name
}}
</Checkbox>
</CheckboxGroup>
-->
</div>
</
template
>
<
script
>
import
Api
from
'./api'
import
Api
from
"./api"
;
export
default
{
name
:
'CheckboxList'
,
props
:
[
'singleList'
,
'resourcesType'
],
name
:
"CheckboxList"
,
props
:
[
"singleList"
],
data
()
{
return
{
chooseNum
:
null
,
indeterminate
:
true
,
checkAll
:
false
,
checkAllGroup
:
[],
typeIcon
:
'ios-arrow-down'
,
typeIcon
:
"ios-arrow-down"
,
show
:
-
1
,
list
:
[],
list
:
[
{
name
:
"张芳"
,
class
:
"1级"
},
{
name
:
"张芳"
,
class
:
"1级"
},
{
name
:
"张芳"
,
class
:
"1级"
},
{
name
:
"张芳"
,
class
:
"1级"
}
],
taglistData
:
[]
}
}
;
},
mounted
()
{
// this.checkList()
},
methods
:
{
handleCheckAll
(
id
)
{
// console.log(this.list)
// this.list.map((u) => {
// console.log(u)
// })
// this.checkList(id)
this
.
checkAll
=
!
this
.
checkAll
if
(
this
.
checkAll
)
{
let
listNew
=
[]
this
.
list
.
map
((
u
)
=>
{
if
(
this
.
resourcesType
==
0
)
{
listNew
.
push
(
u
.
user_name
)
}
else
if
(
this
.
resourcesType
==
2
)
{
listNew
.
push
(
u
.
equip_name
)
onclick
(
index
)
{
if
(
this
.
$refs
.
liId
[
index
].
className
.
length
<=
0
)
{
this
.
$refs
.
liId
[
index
].
className
=
"li-focus"
;
// 添加类
let
list
=
[];
this
.
$refs
.
liId
.
forEach
((
element
,
index
)
=>
{
if
(
this
.
$refs
.
liId
[
index
].
className
)
{
list
.
push
(
this
.
$refs
.
liId
[
index
].
className
);
}
})
this
.
checkAllGroup
=
listNew
this
.
$emit
(
'changeData'
,
this
.
checkAllGroup
)
});
if
(
list
.
length
==
this
.
list
.
length
)
{
this
.
checkAll
=
true
;
}
}
else
{
this
.
checkAllGroup
=
[]
this
.
$refs
.
liId
[
index
].
className
=
""
;
// 选中再取消的情况
this
.
checkAll
=
false
;
}
},
checkAllGroupChange
(
data
)
{
console
.
log
(
data
)
console
.
log
(
this
.
list
)
this
.
checkAllGroup
=
data
this
.
$emit
(
'changeData'
,
this
.
checkAllGroup
)
if
(
data
.
length
===
this
.
list
.
length
)
{
this
.
indeterminate
=
false
this
.
checkAll
=
true
}
else
if
(
data
.
length
>
0
)
{
this
.
indeterminate
=
true
this
.
checkAll
=
false
handleCheckAll
(
id
)
{
this
.
checkAll
=
!
this
.
checkAll
;
if
(
this
.
checkAll
)
{
this
.
$refs
.
liId
.
forEach
((
element
,
index
)
=>
{
this
.
$refs
.
liId
[
index
].
className
=
"li-focus"
;
// 添加类
});
}
else
{
this
.
indeterminate
=
false
this
.
checkAll
=
false
this
.
$refs
.
liId
.
forEach
((
element
,
index
)
=>
{
this
.
$refs
.
liId
[
index
].
className
=
""
;
// 选中再取消的情况
});
}
// // console.log(this.list)
// // this.list.map((u) => {
// // console.log(u)
// // })
// // this.checkList(id)
// this.checkAll = !this.checkAll;
// if (this.checkAll) {
// let listNew = [];
// this.list.map(u => {
// if (this.resourcesType == 0) {
// listNew.push(u.user_name);
// } else if (this.resourcesType == 2) {
// listNew.push(u.equip_name);
// }
// });
// this.checkAllGroup = listNew;
// this.$emit("changeData", this.checkAllGroup);
// } else {
// this.checkAllGroup = [];
// }
},
// checkAllGroupChange(data) {
// console.log(data);
// console.log(this.list);
// this.checkAllGroup = data;
// this.$emit("changeData", this.checkAllGroup);
// if (data.length === this.list.length) {
// this.indeterminate = false;
// this.checkAll = true;
// } else if (data.length > 0) {
// this.indeterminate = true;
// this.checkAll = false;
// } else {
// this.indeterminate = false;
// this.checkAll = false;
// }
// },
checkList
(
id
)
{
if
(
this
.
resourcesType
==
0
)
{
//班组
Api
.
getbyshopid
({
shop_id
:
id
}).
then
(
(
r
)
=>
{
Api
.
getbyshopid
({
shop_id
:
id
}).
then
(
r
=>
{
// console.log(r)
if
(
r
.
success
)
{
r
.
result
.
forEach
(
(
e
)
=>
{
e
.
ischeckBox
=
false
})
this
.
list
=
r
.
result
r
.
result
.
forEach
(
e
=>
{
e
.
ischeckBox
=
false
;
})
;
this
.
list
=
r
.
result
;
}
})
})
;
}
else
if
(
this
.
resourcesType
==
2
)
{
//设备
Api
.
getbyequippk
({
equip_pk
:
91
}).
then
(
(
r
)
=>
{
Api
.
getbyequippk
({
equip_pk
:
91
}).
then
(
r
=>
{
// console.log(r)
if
(
r
.
success
)
{
r
.
result
.
forEach
(
(
e
)
=>
{
e
.
ischeckBox
=
false
})
this
.
list
=
r
.
result
r
.
result
.
forEach
(
e
=>
{
e
.
ischeckBox
=
false
;
})
;
this
.
list
=
r
.
result
;
}
})
})
;
}
},
upDown
(
post
)
{
if
(
!
post
.
isClick
)
{
this
.
$set
(
post
,
'isClick'
,
true
)
this
.
checkList
(
post
.
shop_id
)
this
.
$set
(
post
,
"isClick"
,
true
);
this
.
checkList
(
post
.
shop_id
)
;
}
else
{
this
.
$set
(
post
,
'isClick'
,
false
)
this
.
$set
(
post
,
"isClick"
,
false
);
}
}
}
...
...
@@ -135,12 +188,41 @@ export default {
// deep: true
// }
// }
}
}
;
</
script
>
<
style
lang=
"less"
scoped
>
.checkbox-list {
.icon-down {
text-align: right;
cursor: pointer;
}
.check-title {
height: 40px;
line-height: 40px;
padding: 0 10px;
background: rgba(38, 128, 235, 0.5);
}
ul {
min-height: 60px;
padding: 10px 5px;
display: flex;
li {
list-style-type: none;
text-align: center;
width: 100px;
height: 30px;
line-height: 30px;
border-radius: 20px;
margin: 0 5px;
cursor: pointer;
background: rgba(38, 128, 235, 0.1);
}
li:hover {
border: 1px solid rgba(38, 128, 235, 0.5);
}
.li-focus {
border: 1px solid rgba(38, 128, 235, 0.5);
}
}
}
</
style
>
\ No newline at end of file
pages/aps/stream/index.vue
View file @
bead90d6
...
...
@@ -5,8 +5,8 @@
<Col
:span=
"6"
class=
"chan-chi"
>
排产池
</Col>
<Col
:span=
"18"
class=
"l-ringht"
>
<RadioGroup
v-model=
"status"
type=
"button"
@
on-change=
"changeStatus"
size=
"small"
>
<Radio
label=
"
0
"
>
全部
</Radio>
<Radio
label=
"
1
"
>
未排产
</Radio>
<Radio
label=
"
-1
"
>
全部
</Radio>
<Radio
label=
"
0
"
>
未排产
</Radio>
<Radio
label=
"2"
>
已排查
</Radio>
</RadioGroup>
</Col>
...
...
@@ -15,7 +15,7 @@
class=
"left-body"
v-for=
"(li,index) in list"
:key=
"index"
@
click=
"listData(li
.part_task_pk,index
)"
@
click=
"listData(li)"
:class=
"isactive == index ? 'addclass' : '' "
>
<Row
class=
"title-i"
>
...
...
@@ -50,7 +50,7 @@
<TimelineItem
v-for=
"(item, index) in result"
:key=
"index"
>
<Badge
:count=
"index+ 1"
slot=
"dot"
:type=
"type(index)"
></Badge>
<div
class=
"set-name"
>
<span
@
click=
"sets(item.r
esources_Type
)"
>
{{
item
.
taskname
}}
</span>
&
nbsp
<span
@
click=
"sets(item.r
outingHeaderId
)"
>
{{
item
.
taskname
}}
</span>
&
nbsp
<Tooltip
content=
"拆分工序"
placement=
"top"
>
<Icon
type=
"md-bluetooth"
@
click=
"split"
/>
</Tooltip>
...
...
@@ -62,8 +62,14 @@
</TimelineItem>
</Timeline>
<div>
<Drawer
title=
"排产设置盘"
:closable=
"false"
v-model=
"set"
width=
"45%"
>
<Set
:resourcesType=
"resourcesType"
></Set>
<Drawer
title=
"排产设置盘"
:closable=
"false"
v-model=
"set"
width=
"55%"
:mask-closable=
"false"
>
<Set
:group=
"group"
@
closeOk=
"closeOk"
></Set>
</Drawer>
</div>
<!--
<List
:result=
"result"
></List>
-->
...
...
@@ -100,25 +106,13 @@ export default {
},
data
()
{
return
{
group
:
{
orderId
:
0
,
routingHeaderId
:
0
},
activeindex
:
1
,
list
:
[
{
part_task_pk
:
"euuei"
,
order_id
:
"hdhfk"
,
routing_version
:
"fsslllsl"
,
demand_start
:
"2020-3-30"
,
demand_finish
:
"2020-3-30"
},
{
part_task_pk
:
"euuei"
,
order_id
:
"hdhfk"
,
routing_version
:
"fsslllsl"
,
demand_start
:
"2020-3-30"
,
demand_finish
:
"2020-3-30"
}
],
status
:
"0"
,
//全部排产0,1为未排产;2为已排查;
partTaskPk
:
""
,
//车间
list
:
[],
status
:
"-1"
,
//全部排产-1,0为未排产;2为已排查;
result
:
[
{
taskname
:
"工序名称"
,
...
...
@@ -134,7 +128,6 @@ export default {
}
],
isactive
:
0
,
selectName
:
"all"
,
resourcesType
:
null
,
set
:
false
,
chaiNum
:
1
,
//拆分数量
...
...
@@ -142,49 +135,43 @@ export default {
};
},
created
()
{
//
this.orderlist();
this
.
orderlist
();
},
methods
:
{
// 排产池过滤条件
changeStatus
(
a
)
{
this
.
orderlist
(
a
);
},
//排产池列表
orderlist
()
{
Api
.
get
mesorder
({
status
:
2
,
workshop_id
:
3
}).
then
(
r
=>
{
Api
.
get
pooltypeorderlist
({
PoolType
:
3
,
status
:
this
.
status
}).
then
(
r
=>
{
// console.log(r)
if
(
r
.
success
)
{
r
.
result
.
forEach
(
e
=>
{
return
(
e
.
checked
=
false
);
});
this
.
list
=
r
.
result
;
this
.
listData
(
r
.
result
[
0
].
part_task_pk
,
0
);
}
});
},
//点击选中排产订单
listData
(
li
,
index
)
{
// this.status = "";
// this.partTaskPk = li;
// this.tagClick("all");
listData
(
li
)
{
this
.
isactive
=
index
;
this
.
group
.
orderId
=
li
.
id
;
this
.
tagTata
(
li
.
id
);
},
// 排产池过滤条件
changeStatus
(
a
)
{
console
.
log
(
a
);
// this.tagTata(a);
},
//工序排产过滤
changeRodio
(
a
)
{
console
.
log
(
a
);
// this.tagTata(a);
},
tagTata
(
name
)
{
let
data
=
{
part_task_pk
:
this
.
partTaskPk
,
status
:
this
.
status
};
Api
.
gettaskseqinfo
(
data
).
then
(
r
=>
{
// console.log(r)
//工序列表
tagTata
(
id
)
{
Api
.
getroutingdetails
({
id
:
id
}).
then
(
r
=>
{
if
(
r
.
success
)
{
this
.
result
=
r
.
result
;
}
});
},
//工序排产过滤
changeRodio
(
a
)
{
console
.
log
(
a
);
},
//删除排产订单
close
()
{
this
.
$Modal
.
confirm
({
...
...
@@ -213,13 +200,7 @@ export default {
//设置工序
sets
(
name
)
{
this
.
set
=
true
;
// this.resourcesType = name;
// if (this.resourcesType == 0 || this.resourcesType == 2) {
// this.set = true;
// } else {
// this.set = false;
// // this.$Message.info('没有设置盘')
// }
this
.
group
.
routingHeaderId
=
name
;
},
//拆分工序
split
()
{
...
...
@@ -248,6 +229,9 @@ export default {
this
.
$Message
.
info
(
"您已取消删除"
);
}
});
},
closeOk
()
{
this
.
set
=
false
;
}
}
};
...
...
pages/aps/stream/set.vue
View file @
bead90d6
...
...
@@ -6,11 +6,18 @@
type=
"datetimerange"
format=
"yyyy-MM-dd HH:mm"
placeholder=
"请选择工时"
@
on-change=
"changeFormat"
v-model=
"formItem.time"
style=
"width:300px"
></DatePicker>
</FormItem>
<FormItem
label=
"人员分组形式"
>
<FormItem
label=
"类型"
>
<RadioGroup
v-model=
"formItem.radio"
>
<Radio
label=
"0"
>
人员
</Radio>
<Radio
label=
"1"
>
班组
</Radio>
</RadioGroup>
</FormItem>
<FormItem
label=
"人员分组形式"
v-if=
"formItem.radio==0"
>
<Dictionary
disabled
code=
"aps.scheduling.groupingForm"
...
...
@@ -18,64 +25,132 @@
type=
"radio"
></Dictionary>
</FormItem>
<FormItem>
<div
v-for=
"(li,index) in listGroup"
:key=
"index"
>
<FormItem
label=
"班组"
v-if=
"formItem.radio==1"
>
<Select
v-model=
"formItem.shopId"
style=
"width:300px"
multiple
>
<Option
v-for=
"item in classList"
:value=
"item.shopId"
:key=
"item.shopId"
>
{{
item
.
label
}}
</Option>
</Select>
</FormItem>
<FormItem
v-if=
"formItem.radio==0"
>
<!--
<UserSelect
ref=
"userSelected"
v-model=
"formItem.DistributeMainRouting"
/>
-->
<div
class=
"list-check"
>
<Checkbox-List
:single-list=
"li"
ref=
"groups"
@
changeData=
"setData"
:resourcesType=
"resourcesType"
v-for=
"(li,index) in listGroup"
:key=
"index"
></Checkbox-List>
</div>
</FormItem>
<FormItem
label=
"已选择"
>
<Tag
closable
@
on-close=
"handleClose"
:key=
"index"
v-for=
"(val, index) in tagGroup"
>
{{
val
}}
</Tag>
<!-- v-if="tagGroup.lenght>0" -->
<FormItem
label=
"已选择"
v-if=
"formItem.radio==0"
>
<div
class=
"tag-list"
>
<div
v-for=
"(item,index) in tagGroup"
:key=
"index"
class=
"tag-group"
>
<span>
{{
item
.
name
}}
&
nbsp
&
nbsp
{{
item
.
class
}}
</span>
<Icon
type=
"md-close"
@
click=
"closeTag"
/>
</div>
<!--
<Tag
color=
"rgba(38,128,235,0.3)"
closable
@
on-close=
"handleClose"
:key=
"index"
v-for=
"(val, index) in tagGroup"
>
{{
val
.
name
}}
</Tag>
-->
</div>
</FormItem>
<FormItem
label=
"备注"
>
<Input
v-model=
"formItem.textarea"
type=
"textarea"
:autosize=
"
{minRows: 2,maxRows: 5}"
placeholder="
Enter something...
"
placeholder="
请输入备注信息
"
>
</Input>
</FormItem>
<FormItem>
<Button
style=
"margin-left: 8px"
>
取消
</Button>
<Button
type=
"primary"
>
排产
</Button>
<Button
style=
"margin-left: 8px"
@
click=
"closeOk"
>
取消
</Button>
<Button
type=
"primary"
@
click=
"lowerHair"
>
排产
</Button>
</FormItem>
</Form>
</div>
</
template
>
<
script
>
import
CheckboxList
from
'./checkboxList'
import
Api
from
'./api'
import
CheckboxList
from
"./checkboxList"
;
import
Api
from
"./api"
;
export
default
{
name
:
'set'
,
name
:
"set"
,
components
:
{
CheckboxList
},
props
:
{
resourcesType
:
Number
group
:
{
default
:
Object
,
orderId
:
Number
,
routingHeaderId
:
Number
}
},
data
()
{
return
{
orderId
:
0
,
//订单id
routingHeaderId
:
0
,
//工艺规程id
formItem
:
{
resourcesType
:
0
,
input
:
''
,
select
:
''
,
radio
:
'male'
,
checkbox
:
[],
switch
:
true
,
date
:
''
,
time
:
''
,
slider
:
[
20
,
50
],
textarea
:
''
,
day
:
0
radio
:
"0"
,
time
:
""
,
beginTime
:
""
,
endTime
:
""
,
textarea
:
""
},
tagdata
:
[],
listGroup
:
[],
tagGroup
:
[]
}
listGroup
:
[
{
equip_name
:
"调试组"
,
isClick
:
true
},
{
equip_name
:
"装配组"
}
],
tagGroup
:
[
{
id
:
1
,
name
:
"张芳"
,
class
:
"1级"
},
{
id
:
2
,
name
:
"张芳"
,
class
:
"1级"
},
{
id
:
4
,
name
:
"张芳"
,
class
:
"1级"
},
{
id
:
5
,
name
:
"张芳"
,
class
:
"1级"
}
],
classList
:
[
{
shopId
:
"0"
,
label
:
"调试组"
},
{
shopId
:
"1"
,
label
:
"装配组"
},
{
shopId
:
"2"
,
label
:
"计划组"
},
{
shopId
:
"3"
,
label
:
"管理组"
}
]
};
},
mounted
()
{},
// computed: {
...
...
@@ -92,43 +167,111 @@ export default {
// }
// },
methods
:
{
getList
(
v
)
{
if
(
v
==
0
)
{
//班组
Api
.
getlist
({
workshop_pk
:
3
}).
then
((
r
)
=>
{
console
.
log
(
r
)
lowerHair
(
v
)
{
if
(
this
.
formItem
.
radio
==
0
)
{
//一级排产选择人员
let
urseId
=
[];
for
(
var
i
=
0
;
i
<
this
.
tagGroup
.
length
;
i
++
)
{
urseId
.
push
(
this
.
tagGroup
[
i
].
id
);
}
let
items
=
[
{
detailId
:
0
,
userIds
:
urseId
,
quantity
:
0
,
beginTime
:
this
.
formItem
.
beginTime
,
endTime
:
this
.
formItem
.
endTime
}
];
let
params1
=
{
orderIds
:
this
.
group
.
orderId
,
routingHeaderId
:
this
.
group
.
routingHeaderId
,
items
:
items
};
Api
.
flonestepschedule
(
params1
).
then
(
r
=>
{
if
(
r
.
success
)
{
}
});
}
else
if
(
this
.
formItem
.
radio
==
1
)
{
//二级排产选择班组
let
items
=
[
{
detailId
:
0
,
userIds
:
urseId
,
quantity
:
0
,
beginTime
:
this
.
formItem
.
beginTime
,
endTime
:
this
.
formItem
.
endTime
}
];
let
params2
=
{
orderIds
:
this
.
group
.
orderId
,
routingHeaderId
:
this
.
group
.
routingHeaderId
,
items
:
items
};
Api
.
fltwostepschedule
(
params2
).
then
(
r
=>
{
if
(
r
.
success
)
{
r
.
result
.
forEach
((
u
)
=>
{
u
.
isClick
=
false
})
this
.
listGroup
=
r
.
result
}
})
}
else
if
(
v
==
2
)
{
//设备
Api
.
getlistEquip
({
workshop_pk
:
3
}).
then
((
r
)
=>
{
console
.
log
(
r
)
r
.
result
.
forEach
((
u
)
=>
{
u
.
isClick
=
false
})
this
.
listGroup
=
r
.
result
})
});
}
},
closeOk
()
{
this
.
$emit
(
"closeOk"
);
},
handleClose
(
nodeKey
)
{
// this.$refs.users.handleCheck({ checked: false, nodeKey: nodeKey });
},
setData
(
val
)
{
this
.
tagGroup
=
val
}
this
.
tagGroup
=
val
;
},
//工时时间范围
changeFormat
(
val
)
{
this
.
formItem
.
beginTime
=
val
[
0
];
this
.
formItem
.
endTime
=
val
[
1
];
},
closeTag
()
{}
},
watch
:
{
resourcesType
(
v
)
{
if
(
v
!=
null
)
{
this
.
formItem
.
resourcesType
=
v
this
.
getList
(
v
)
// resourcesType(v) {
// if (v != null) {
// this.formItem.resourcesType = v;
// this.getList(v);
// }
// }
}
};
</
script
>
<
style
lang=
"less"
scoped
>
.set {
border: 1px solid rgba(228, 230, 237, 0.5);
width: 100%;
padding: 15px;
margin-left: 10px;
// box-shadow: darkgrey 2px 2px 8px 1px; //边框阴影
.r-title {
font-size: 14px;
font-weight: bold;
margin-bottom: 10px;
}
.list-check {
border: 1px solid rgba(38, 128, 235, 0.5);
}
.tag-list {
width: 100%;
min-height: 50px;
border: 1px solid rgba(228, 230, 237, 0.5);
.tag-group {
display: inline-block;
text-align: center;
width: 100px;
height: 30;
line-height: 30px;
border-radius: 20px;
margin: 5px;
background: rgba(38, 128, 235, 0.2);
.ivu-icon {
cursor: pointer;
}
}
}
}
</
s
cript
>
</
s
tyle
>
pages/technology/technolog.less
View file @
bead90d6
...
...
@@ -86,6 +86,7 @@
line-height: 50px;
border-left: 1px solid #ccc;
background: #f5f7f9;
z-index: 888;
.ivu-menu-item{
width: 140px;
border-right: 1px solid #ccc;
...
...
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