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
8ab46640
Commit
8ab46640
authored
May 07, 2020
by
佟礼
Browse files
Options
Browse Files
Download
Plain Diff
工艺规程设置
parents
aac022b3
13a642ab
Show whitespace changes
Inline
Side-by-side
Showing
36 changed files
with
2269 additions
and
750 deletions
+2269
-750
base.less
assets/css/base.less
+67
-1
files.vue
components/page/files.vue
+9
-4
productTree.vue
components/page/productTree.vue
+1
-1
userSelect.vue
components/page/userSelect.vue
+307
-62
zh-CN.js
i18n/locale/zh-CN.js
+7
-4
product.vue
layouts/basic-layout/product.vue
+2
-1
package-lock.json
package-lock.json
+4
-2
index.vue
pages/aps/complete/index.vue
+10
-25
index.vue
pages/aps/dispatch/index.vue
+22
-64
index.vue
pages/aps/stream/index.vue
+7
-6
set.vue
pages/aps/stream/set.vue
+26
-21
table.less
pages/implement/table.less
+169
-167
index.vue
pages/mesPlan/index.vue
+26
-4
index.vue
pages/order/quotation/index.vue
+26
-4
index.vue
pages/processManage/setProcess/index.vue
+68
-52
processMain.vue
pages/processManage/setProcess/processMain.vue
+4
-4
newEquipment.vue
...Management/deviceManagementCP/components/newEquipment.vue
+13
-33
index.vue
pages/resourceManagement/deviceManagementCP/index.vue
+26
-21
index.vue
pages/resourceManagement/productionResources/index.vue
+23
-4
set.vue
pages/resourceManagement/productionResources/set.vue
+22
-3
add.vue
pages/technology/add.vue
+60
-21
api.js
pages/technology/api.js
+7
-0
add.vue
pages/technology/details/add.vue
+1
-0
edit.vue
pages/technology/details/edit.vue
+1
-1
index.vue
pages/technology/details/index.vue
+15
-57
edit.vue
pages/technology/details/routingStep/edit.vue
+1
-0
index.vue
pages/technology/details/routingqccard/index.vue
+91
-57
index.vue
pages/technology/details/routingsupporting/index.vue
+83
-61
edit.vue
pages/technology/edit.vue
+14
-2
index.vue
pages/technology/index.vue
+104
-51
menu.less
pages/technology/menu.less
+225
-0
processview.vue
pages/technology/processview.vue
+351
-0
test.vue
pages/test.vue
+7
-13
user.vue
pages/test/user.vue
+5
-4
menu.css
src/assets/css/menu.css
+212
-0
table.css
src/assets/css/table.css
+253
-0
No files found.
assets/css/base.less
View file @
8ab46640
...
@@ -15,6 +15,25 @@ html body {
...
@@ -15,6 +15,25 @@ html body {
ul,li{
ul,li{
list-style: none;
list-style: none;
}
}
div::-webkit-scrollbar{
width:10px;
height:10px;
/**/
}
div::-webkit-scrollbar-track{
background: rgb(239, 239, 239);
border-radius:2px;
}
div::-webkit-scrollbar-thumb{
background:rgba(38,128,235,0.5);
border-radius:10px;
}
div::-webkit-scrollbar-thumb:hover{
background: rgba(38,128,235,0.8);
}
div::-webkit-scrollbar-corner{
background: rgba(38,128,235,1);
}
/*flex*/
/*flex*/
.flex{
.flex{
display: flex;
display: flex;
...
@@ -23,6 +42,9 @@ ul,li{
...
@@ -23,6 +42,9 @@ ul,li{
.fc-m{
.fc-m{
justify-content: center;
justify-content: center;
}
}
.fa-m{
align-items: center;
}
.fc-e{
.fc-e{
justify-content: flex-end;
justify-content: flex-end;
}
}
...
@@ -38,6 +60,9 @@ ul,li{
...
@@ -38,6 +60,9 @@ ul,li{
.fg{
.fg{
flex-grow: 1;
flex-grow: 1;
}
}
.fs{
flex-shrink: 0;
}
.fg2{
.fg2{
flex-grow: 2;
flex-grow: 2;
}
}
...
@@ -1271,3 +1296,44 @@ html [type=button] {
...
@@ -1271,3 +1296,44 @@ html [type=button] {
.detail .ivu-row .filed-col p .html p{
.detail .ivu-row .filed-col p .html p{
margin: 0 10px 0 0;
margin: 0 10px 0 0;
}
}
.lay100 {
height: calc(100vh - 105px);
background-color: #f5f6fa;
.con {
padding: 5px 5px 0px 10px;
}
.con_bord {
// margin: 15px 32px;
box-shadow: #c7c7c7 1px 2px 7px 3px;
}
background: rgba(245, 246, 250, 1);
}
.menu_side{
background: #fff!important;
margin: 5px 0 0 0!important;
border: 1px solid #dcdee2!important;
}
.show_menu{
width: 30px;
height: 30px;
position: fixed;
top: 100px;
left: 0;
z-index: 9;
.menu_play{
width: 30px;
height: 30px;
line-height: 34px;
font-size: 14px;
text-align: center;
color: #515A6E;
border-top-right-radius: 5px;
border-bottom-right-radius: 5px;
background: #ffffff;
box-shadow: #ccc 2px 2px 4px 1px;
}
.menu_play:hover{
background-color: #2d8cf0;
color: white;
}
}
\ No newline at end of file
components/page/files.vue
View file @
8ab46640
...
@@ -20,6 +20,7 @@
...
@@ -20,6 +20,7 @@
<p>
将文件拖到此处,或点击上传
</p>
<p>
将文件拖到此处,或点击上传
</p>
</div>
</div>
<Button
icon=
"ios-cloud-upload-outline"
v-if=
"!cloudIco"
>
上传文件
</Button>
<Button
icon=
"ios-cloud-upload-outline"
v-if=
"!cloudIco"
>
上传文件
</Button>
<span
style=
"font-size:10px;color:#aaa"
v-if=
"fileFormat"
>
文件格式:
{{
JSON
.
stringify
(
formatList
).
replace
(
'['
,
''
).
replace
(
']'
,
''
).
replace
(
/
\"
/g
,
''
)
}}
;文件最大:
{{
maxSize
}}
k
</span>
</Upload>
</Upload>
<Progress
:percent=
"per"
:stroke-width=
"5"
v-show=
"vshowPro"
/>
<Progress
:percent=
"per"
:stroke-width=
"5"
v-show=
"vshowPro"
/>
<Tag
<Tag
...
@@ -47,7 +48,7 @@ export default {
...
@@ -47,7 +48,7 @@ export default {
fileUrlPath
:
""
,
fileUrlPath
:
""
,
nameList
:
[],
nameList
:
[],
hbaseFileListNew
:
[],
hbaseFileListNew
:
[],
formatList
:
[
"
png"
,
"jpg"
,
"gif
"
],
formatList
:
[
"
jpg"
,
"gif"
,
"png
"
],
multiple
:
true
,
multiple
:
true
,
postUrl
:
""
,
postUrl
:
""
,
style
:
""
,
style
:
""
,
...
@@ -81,6 +82,10 @@ export default {
...
@@ -81,6 +82,10 @@ export default {
cloudIco
:
{
cloudIco
:
{
type
:
Boolean
,
type
:
Boolean
,
default
:
false
default
:
false
},
fileFormat
:{
type
:
Boolean
,
default
:
false
}
}
},
},
methods
:
{
methods
:
{
...
@@ -155,15 +160,15 @@ export default {
...
@@ -155,15 +160,15 @@ export default {
formatL
()
{
formatL
()
{
if
(
this
.
files
)
{
if
(
this
.
files
)
{
this
.
formatList
=
[
this
.
formatList
=
[
"jpg"
,
"gif"
,
"png"
,
"pdf"
,
"pdf"
,
"docx"
,
"docx"
,
"doc"
,
"doc"
,
"xls"
,
"xls"
,
"xlsx"
,
"xlsx"
,
"txt"
,
"txt"
,
"png"
,
"jpg"
,
"gif"
];
];
}
}
return
this
.
formatList
;
return
this
.
formatList
;
...
...
components/page/productTree.vue
View file @
8ab46640
...
@@ -132,7 +132,7 @@ export default {
...
@@ -132,7 +132,7 @@ export default {
padding-left: 10px;
padding-left: 10px;
}
}
.tree {
.tree {
height: calc(100vh - 2
00
px);
height: calc(100vh - 2
15
px);
overflow: auto;
overflow: auto;
}
}
}
}
...
...
components/page/userSelect.vue
View file @
8ab46640
<
template
>
<
template
>
<div>
<div
v-if=
"theme=='list'"
class=
"flex fd userSelect"
>
<div
class=
"fg1 users"
>
<dl
v-for=
"(g,i) in group"
>
<dt
:class=
"
{checked:g.opened}" class="flex fc-b">
<div
class=
"ib fg"
>
<Checkbox
v-model=
"g.checked"
@
on-change=
"checkAll(g,i)"
>
<span
class=
"ml10"
>
{{
g
.
departmentTitle
}}
</span>
</Checkbox>
<!--
<span
class=
"ml20"
>
(
<span
v-text=
"g.children | vvv"
></span>
/
{{
g
.
children
.
length
}}
人)
</span></div>
-->
<span
class=
"ml20"
>
(
{{
g
.
children
.
length
}}
人)
</span>
</div>
<a
class=
"op"
@
click=
"toggle(i)"
>
<Icon
:type=
"g.opened?'ios-arrow-up':'ios-arrow-down'"
size=
"24"
/>
</a>
</dt>
<dd
v-show=
"g.opened"
v-for=
"(li,j) in g.children"
@
click=
"checkItem(i,j,li)"
:class=
"
{checked:li.checked}"
>
{{
li
.
userName
}}
</dd>
</dl>
</div>
<div
class=
"footer flex"
>
<div
v-width=
"50"
class=
"fa-m fs"
>
<span>
已选项
</span>
</div>
<div
class=
"fg"
>
<dl>
<dd
v-for=
"(li,i) in checkedItems"
>
<div
class=
"flex"
>
<span
class=
"fg"
>
{{
li
.
userName
}}
</span>
<a
@
click=
"removeItem(li)"
>
<Icon
type=
"md-close"
size=
"16"
/>
</a>
</div>
</dd>
</dl>
</div>
</div>
</div>
<Select
<Select
v-else
:placeholder=
"placeholder"
:placeholder=
"placeholder"
v-model=
"name"
v-model=
"name"
@
on-change=
"change"
@
on-change=
"change"
...
@@ -8,50 +53,53 @@
...
@@ -8,50 +53,53 @@
clearable
clearable
filterable
filterable
>
>
<Option
<Option
v-for=
"item in dic"
:value=
"item.value"
:key=
"item.value"
:label=
"item.label"
>
v-for=
"item in dic"
:value=
"item.value"
:key=
"item.value"
:label=
"item.label"
>
<div>
<div>
<Icon
:type=
"item.gender == 1 ? 'ios-man' : 'ios-woman'"
/>
<Icon
:type=
"item.gender == 1 ? 'ios-man' : 'ios-woman'"
/>
{{
item
.
label
}}
(
<span
style=
"color:#c3c3c3"
>
{{
item
.
cardNo
}}
</span
{{
item
.
label
}}
(
>
)
<br
/><span
style=
"color:#c3c3c3"
>
{{
item
.
departmentTitle
}}
</span>
<span
style=
"color:#c3c3c3"
>
{{
item
.
cardNo
}}
</span>
)
<br
/>
<span
style=
"color:#c3c3c3"
>
{{
item
.
departmentTitle
}}
</span>
</div>
</div>
</Option>
</Option>
</Select>
</Select>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
export
default
{
export
default
{
model
:
{
model
:
{
prop
:
'value'
,
prop
:
"value"
,
event
:
'on-change'
event
:
"on-change"
},
},
data
()
{
data
()
{
return
{
return
{
name
:
this
.
value
,
name
:
this
.
value
,
data
:
[],
data
:
[],
departId
:
''
departId
:
""
,
}
group
:
[]
};
},
},
created
()
{
created
()
{
// let url = `${systemUrl}/user/getfordispatch_x`
// let url = `${systemUrl}/user/getfordispatch_x`
// this.$api.get(url).then((r) => {
// this.$api.get(url).then((r) => {
// this.data = r.result
// this.data = r.result
// })
// })
this
.
getselectuser
()
this
.
getselectuser
()
;
},
},
props
:
{
props
:
{
value
:
[
String
,
Number
,
Array
],
value
:
[
String
,
Number
,
Array
],
placeholder
:
{
placeholder
:
{
type
:
String
,
type
:
String
,
default
:
'请选择人员'
default
:
"请选择人员"
},
},
multiple
:
{
multiple
:
{
type
:
Boolean
,
type
:
Boolean
,
default
:
false
default
:
false
},
},
theme
:
{
type
:
String
,
default
:
"select"
},
type
:
{
type
:
{
type
:
Number
,
type
:
Number
,
default
:
0
default
:
0
...
@@ -60,87 +108,284 @@ export default {
...
@@ -60,87 +108,284 @@ export default {
type
:
Number
,
type
:
Number
,
default
:
0
default
:
0
},
},
roleTitle
:{
roleTitle
:
{
type
:
String
,
type
:
String
,
default
:
''
default
:
""
}
}
},
},
methods
:
{
methods
:
{
change
(
event
)
{
change
(
event
)
{
// console.log(event)
// console.log(event)
this
.
$emit
(
'on-change'
,
event
)
this
.
$emit
(
"on-change"
,
event
);
},
},
// 加载人员
// 加载人员
getselectuser
(
id
)
{
getselectuser
(
id
)
{
let
url
=
`
${
systemUrl
}
/user/getselectuser`
let
url
=
`
${
systemUrl
}
/user/getselectuser`
;
this
.
$api
this
.
$api
.
post
(
url
,
{
.
post
(
url
,
{
// pageIndex: 1,
// pageIndex: 1,
departmentId
:
id
,
departmentId
:
id
,
type
:
this
.
type
,
type
:
this
.
type
,
roleTitle
:
this
.
roleTitle
,
roleTitle
:
this
.
roleTitle
// pageSize: 0
// pageSize: 0
})
})
.
then
((
r
)
=>
{
.
then
(
r
=>
{
this
.
data
=
r
.
result
this
.
data
=
r
.
result
;
if
(
this
.
theme
==
"list"
){
this
.
departmentGroup
();
}
});
},
departmentGroup
()
{
var
group
=
[];
var
users
=
this
.
$u
.
clone
(
this
.
data
);
if
(
this
.
name
&&
this
.
name
.
length
>
0
){
users
.
map
(
u
=>
{
u
.
checked
=
this
.
name
.
indexOf
(
u
.
id
)
>-
1
;
})
})
}
group
=
this
.
$u
.
group
(
users
,
u
=>
{
return
u
.
departmentId
;
});
var
deps
=
[];
group
.
map
((
u
,
i
)
=>
{
deps
.
push
({
departmentTitle
:
u
[
0
].
departmentTitle
,
departmentId
:
u
[
0
].
departmentId
,
children
:
u
,
opened
:
(
i
=
0
),
checked
:
false
});
});
this
.
group
=
deps
;
},
toggle
(
i
)
{
this
.
group
[
i
].
opened
=
!
this
.
group
[
i
].
opened
;
// this.$set(this.group,i,this.group[i])
},
checkItem
(
i
,
j
,
item
)
{
item
.
checked
=
!
item
.
checked
;
this
.
group
[
i
][
j
]
=
item
;
this
.
$set
(
this
.
group
,
i
,
this
.
group
[
i
]);
this
.
listSetValue
();
},
removeItem
(
item
)
{
this
.
group
.
map
((
u
,
i
)
=>
{
if
(
u
.
departmentId
==
item
.
departmentId
)
{
u
.
children
.
map
(
p
=>
{
if
(
p
.
id
==
item
.
id
)
{
p
.
checked
=
false
;
}
});
this
.
$set
(
this
.
group
,
i
,
u
);
}
});
this
.
listSetValue
();
},
//list 时,设置值。
listSetValue
(){
var
ids
=
[];
this
.
checkedItems
.
map
(
u
=>
{
ids
.
push
(
u
.
id
)
})
this
.
$emit
(
"on-change"
,
ids
);
},
checkAll
(
item
,
i
)
{
item
.
children
.
map
(
u
=>
{
u
.
checked
=
item
.
checked
;
});
this
.
$set
(
this
.
group
,
i
,
this
.
group
[
i
]);
this
.
listSetValue
();
},
},
//获取所有的选中项
//获取所有的选中项
getSelectItems
()
{
getSelectItems
()
{
var
items
=
[]
var
items
=
[];
if
(
this
.
theme
==
"list"
)
{
this
.
checkedItems
.
map
(
u
=>
{
items
.
push
(
u
);
});
}
else
{
if
(
!
this
.
multiple
)
{
if
(
!
this
.
multiple
)
{
//单选时返回信息
//单选时返回信息
var
item1
=
this
.
dic
.
filter
((
u
)
=>
u
.
value
==
this
.
value
)
var
item1
=
this
.
dic
.
filter
(
u
=>
u
.
value
==
this
.
value
);
if
(
item1
&&
item1
[
0
])
{
if
(
item1
&&
item1
[
0
])
{
items
.
push
(
item1
[
0
])
items
.
push
(
item1
[
0
]);
}
}
}
else
{
}
else
{
//复选时返回
//复选时返回
this
.
value
.
forEach
((
v
)
=>
{
this
.
value
.
forEach
(
v
=>
{
var
item
=
this
.
dic
.
filter
((
u
)
=>
u
.
value
==
v
)
var
item
=
this
.
dic
.
filter
(
u
=>
u
.
value
==
v
);
if
(
item
&&
item
[
0
])
{
if
(
item
&&
item
[
0
])
{
items
.
push
(
item
[
0
])
items
.
push
(
item
[
0
]);
}
});
}
}
})
}
}
return
items
return
items
;
},
},
//获取所有选中项的名称
//获取所有选中项的名称
getSelectNames
()
{
getSelectNames
()
{
var
names
=
[]
var
names
=
[];
this
.
getSelectItems
().
forEach
((
v
)
=>
{
if
(
this
.
theme
==
"list"
)
{
names
.
push
(
v
.
label
)
this
.
checkedItems
.
map
(
u
=>
{
})
items
.
push
(
u
.
userName
);
return
names
});
}
else
{
this
.
getSelectItems
().
forEach
(
v
=>
{
names
.
push
(
v
.
label
);
});
}
return
names
;
}
}
},
},
computed
:
{
computed
:
{
dic
()
{
dic
()
{
let
result
=
[]
let
result
=
[]
;
this
.
data
.
forEach
(
(
u
)
=>
{
this
.
data
.
forEach
(
u
=>
{
// result.push({
// result.push({
// value: u.id,
// value: u.id,
// label: u.userName
// label: u.userName
// })
// })
;(
u
.
value
=
u
.
id
),
(
u
.
label
=
u
.
userName
)
(
u
.
value
=
u
.
id
),
(
u
.
label
=
u
.
userName
);
result
.
push
(
u
)
result
.
push
(
u
);
})
});
return
result
return
result
;
},
checkedItems
()
{
var
items
=
[];
this
.
group
.
map
(
u
=>
{
u
.
children
.
map
(
l
=>
{
if
(
l
.
checked
)
{
items
.
push
(
l
);
}
});
});
return
items
;
}
},
filters
:
{
vvv
:
lis
=>
{
return
3
;
// return lis.filter(u=>{
// return u.checked==true
// }).lenght;
}
}
},
},
watch
:
{
watch
:
{
value
:
{
value
:
{
handler
(
v
,
o
)
{
handler
(
v
,
o
)
{
this
.
name
=
v
this
.
name
=
v
;
},
},
deep
:
true
deep
:
true
},
},
departmentId
:
{
departmentId
:
{
handler
(
v
,
o
)
{
handler
(
v
,
o
)
{
this
.
getselectuser
(
v
)
this
.
getselectuser
(
v
)
;
},
},
deep
:
true
deep
:
true
}
}
}
}
}
}
;
</
script
>
</
script
>
<
style
lang=
"less"
>
.userSelect {
.users {
width: 100%;
border: 1px solid #2680eb;
max-height: 420px;
overflow: auto;
font-size: 14px;
}
dl {
width: 100%;
margin-bottom: 2px;
dt,
dd {
list-style: none;
padding: 0 15px;
}
dt {
width: 100%;
background: rgba(38, 128, 235, 0.1);
height: 48px;
font-weight: bold;
line-height: 48px;
color: rgba(81, 90, 110, 1);
a.op {
height: 26px;
width: 26px;
text-align: center;
display: inline-block;
padding-top: -15px;
line-height: 100%;
margin-top: 12px;
}
a.op:hover {
color: white;
background: rgba(38, 128, 235, 1.5);
border-radius: 4px;
}
}
dt.checked {
background: rgba(38, 128, 235);
color: white;
a.op {
color: white;
}
a.op:hover {
background: white;
color: rgba(38, 128, 235);
}
}
dd {
min-width: 120px;
line-height: 32px;
height: 36px;
border-radius: 18px;
display: inline-block;
background: rgba(38, 128, 235, 0.1);
border: 2px solid transparent;
color: #515a6e;
margin: 10px;
a {
display: inline-flex;
width: 20px;
height: 20px;
border-radius: 4px;
border: 1px solid transparent;
justify-items: center;
align-items: center;
margin-top: 5px;
}
a:hover {
background: rgb(241, 14, 14);
color: white;
}
}
dd:hover {
// background: rgba(38, 128, 235, 1);
// border:1px solid rgba(38,128,235,0.1);
background: rgba(38, 128, 235, 0.1);
border: 2px solid rgba(38, 128, 235, 1);
// color: white;
cursor: pointer;
}
dd.checked {
border: 2px solid rgba(38, 128, 235, 1);
}
}
.footer {
margin-top: 5px;
min-height: 68px;
dl {
background: rgba(245, 246, 250, 1);
border: 1px solid rgba(220, 223, 230, 1);
opacity: 1;
border-radius: 4px;
min-height: 48px;
flex-wrap: wrap;
}
}
}
</
style
>
\ No newline at end of file
i18n/locale/zh-CN.js
View file @
8ab46640
...
@@ -1187,7 +1187,7 @@ export default {
...
@@ -1187,7 +1187,7 @@ export default {
isDeleted
:
'是否删除'
,
isDeleted
:
'是否删除'
,
platesnum
:
'板数'
,
platesnum
:
'板数'
,
isEffect
:
'生效'
,
isEffect
:
'生效'
,
versionnotes
:
'版本'
,
versionnotes
:
'版本
说明
'
,
phase
:
'阶段'
,
phase
:
'阶段'
,
versionid
:
'版本ID'
,
versionid
:
'版本ID'
,
isSendPpm
:
'发送PPM'
,
isSendPpm
:
'发送PPM'
,
...
@@ -1251,7 +1251,8 @@ export default {
...
@@ -1251,7 +1251,8 @@ export default {
routingStepId
:
'工步ID'
,
routingStepId
:
'工步ID'
,
quantity
:
'数量'
,
quantity
:
'数量'
,
singlequantity
:
'总计数量'
,
singlequantity
:
'总计数量'
,
routingDetailName
:
'工序名称'
,
routingDetailNo
:
'工序号'
,
materialId
:
'物料id'
,
materialId
:
'物料id'
,
materialType
:
'物料类型'
,
materialType
:
'物料类型'
,
materialNumber
:
'物料编号'
,
materialNumber
:
'物料编号'
,
...
@@ -1323,7 +1324,8 @@ export default {
...
@@ -1323,7 +1324,8 @@ export default {
routingHeaderId
:
'工艺ID'
,
routingHeaderId
:
'工艺ID'
,
routingHeaderName
:
'工艺'
,
routingHeaderName
:
'工艺'
,
routingDetailId
:
'工序ID'
,
routingDetailId
:
'工序ID'
,
routingDetailName
:
'工序'
,
routingDetailName
:
'工序名称'
,
routingDetailNo
:
'工序号'
,
routingStepId
:
'工步ID'
,
routingStepId
:
'工步ID'
,
checkContent
:
'检测内容'
,
checkContent
:
'检测内容'
,
checkType
:
'检测类型'
,
checkType
:
'检测类型'
,
...
@@ -1357,7 +1359,8 @@ export default {
...
@@ -1357,7 +1359,8 @@ export default {
routingHeaderId
:
'工艺ID'
,
routingHeaderId
:
'工艺ID'
,
routingHeaderName
:
'工艺'
,
routingHeaderName
:
'工艺'
,
routingDetailId
:
'工序ID'
,
routingDetailId
:
'工序ID'
,
routingDetailName
:
'工序'
,
routingDetailName
:
'工序名称'
,
routingDetailNo
:
'工序号'
,
routingStepId
:
'工步ID'
,
routingStepId
:
'工步ID'
,
quantity
:
'数量'
,
quantity
:
'数量'
,
materialId
:
'物料id'
,
materialId
:
'物料id'
,
...
...
layouts/basic-layout/product.vue
View file @
8ab46640
...
@@ -399,7 +399,8 @@ export default {
...
@@ -399,7 +399,8 @@ export default {
z-index: 99999;
z-index: 99999;
left: 56%;
left: 56%;
top: 57%;
top: 57%;
min-width: 1084px;
// min-width: 1084px;
min-width: 777px;
min-height: 300px;
min-height: 300px;
box-shadow: 0px 5px 17px 5px rgba(0, 0, 0, 0.28);
box-shadow: 0px 5px 17px 5px rgba(0, 0, 0, 0.28);
background: #f5f6fa;
background: #f5f6fa;
...
...
package-lock.json
View file @
8ab46640
...
@@ -9538,7 +9538,8 @@
...
@@ -9538,7 +9538,8 @@
"dependencies"
:
{
"dependencies"
:
{
"deepmerge"
:
{
"deepmerge"
:
{
"version"
:
"2.2.1"
,
"version"
:
"2.2.1"
,
"bundled"
:
true
"resolved"
:
"https://registry.npmjs.org/deepmerge/-/deepmerge-2.2.1.tgz"
,
"integrity"
:
"sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA=="
}
}
}
}
},
},
...
@@ -19890,7 +19891,8 @@
...
@@ -19890,7 +19891,8 @@
"version"
:
"4.0.8"
,
"version"
:
"4.0.8"
,
"resolved"
:
"https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz"
,
"resolved"
:
"https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz"
,
"integrity"
:
"sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ="
,
"integrity"
:
"sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ="
,
"dev"
:
true
"dev"
:
true
,
"optional"
:
true
},
},
"rx-lite-aggregates"
:
{
"rx-lite-aggregates"
:
{
"version"
:
"4.0.8"
,
"version"
:
"4.0.8"
,
...
...
pages/aps/complete/index.vue
View file @
8ab46640
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
<Col
:span=
"10"
class=
"chan-chi"
>
整机排产-排产池
</Col>
<Col
:span=
"10"
class=
"chan-chi"
>
整机排产-排产池
</Col>
<Col
:span=
"14"
class=
"l-ringht"
>
<Col
:span=
"14"
class=
"l-ringht"
>
<!--
<RadioGroup
v-model=
"status"
type=
"button"
@
on-change=
"changeStatus"
size=
"small"
>
<!--
<RadioGroup
v-model=
"status"
type=
"button"
@
on-change=
"changeStatus"
size=
"small"
>
<Radio
label=
"0"
>
未排产
</Radio>
-->
<Radio
label=
"0"
>
未排产
</Radio>
-->
<!--
<Radio
label=
"2"
>
已排查
</Radio>
-->
<!--
<Radio
label=
"2"
>
已排查
</Radio>
-->
<!--
<Radio
label=
"-1"
>
全部
</Radio>
-->
<!--
<Radio
label=
"-1"
>
全部
</Radio>
-->
<!--
</RadioGroup>
-->
<!--
</RadioGroup>
-->
...
@@ -58,19 +58,8 @@
...
@@ -58,19 +58,8 @@
<Radio
label=
"1"
>
班组
</Radio>
<Radio
label=
"1"
>
班组
</Radio>
</RadioGroup>
</RadioGroup>
</FormItem>
</FormItem>
<FormItem
label=
"人员"
v-if=
"formItem.radio==0"
>
<FormItem
v-if=
"formItem.radio==0"
>
<UserSelect
<UserSelect
v-model=
"user"
:multiple=
"true"
theme=
"list"
/>
ref=
"userSelected"
v-model=
"formItem.userIds"
style=
"width:300px"
:multiple=
"true"
/>
<!--
<Dictionary
disabled
code=
"aps.scheduling.groupingForm"
v-model=
"formItem.resourcesType"
type=
"radio"
></Dictionary>
-->
</FormItem>
</FormItem>
<FormItem
label=
"班组"
v-if=
"formItem.radio==1"
>
<FormItem
label=
"班组"
v-if=
"formItem.radio==1"
>
<Select
v-model=
"formItem.shopId"
placeholder=
"请选择"
style=
"width:300px"
>
<Select
v-model=
"formItem.shopId"
placeholder=
"请选择"
style=
"width:300px"
>
...
@@ -122,14 +111,10 @@
...
@@ -122,14 +111,10 @@
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
import
CheckboxList
from
"./checkboxList"
;
import
Api
from
"./api"
;
import
Api
from
"./api"
;
export
default
{
export
default
{
name
:
"list"
,
name
:
"list"
,
components
:
{
CheckboxList
},
async
fetch
({
store
,
params
})
{
async
fetch
({
store
,
params
})
{
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
},
},
...
@@ -202,8 +187,8 @@ export default {
...
@@ -202,8 +187,8 @@ export default {
if
(
r
.
success
)
{
if
(
r
.
success
)
{
r
.
result
.
map
(
e
=>
{
r
.
result
.
map
(
e
=>
{
e
.
checked
=
false
;
e
.
checked
=
false
;
e
.
demandFinishDate
=
e
.
demandFinishDate
.
substr
(
0
,
10
)
e
.
demandFinishDate
=
e
.
demandFinishDate
.
substr
(
0
,
10
);
e
.
demandStartDate
=
e
.
demandStartDate
.
substr
(
0
,
10
)
e
.
demandStartDate
=
e
.
demandStartDate
.
substr
(
0
,
10
);
});
});
this
.
list
=
r
.
result
;
this
.
list
=
r
.
result
;
}
}
...
@@ -243,7 +228,7 @@ export default {
...
@@ -243,7 +228,7 @@ export default {
// }
// }
let
params1
=
{
let
params1
=
{
orderIds
:
this
.
orderIds
,
orderIds
:
this
.
orderIds
,
userIds
:
this
.
formItem
.
userIds
,
userIds
:
this
.
user
,
beginTime
:
this
.
formItem
.
beginTime
,
beginTime
:
this
.
formItem
.
beginTime
,
endTime
:
this
.
formItem
.
endTime
,
endTime
:
this
.
formItem
.
endTime
,
remark
:
this
.
formItem
.
remark
remark
:
this
.
formItem
.
remark
...
...
pages/aps/dispatch/index.vue
View file @
8ab46640
...
@@ -66,7 +66,6 @@
...
@@ -66,7 +66,6 @@
</p>
</p>
<p>
{{
li
.
beginTime
}}
--
{{
li
.
endTime
}}
</p>
<p>
{{
li
.
beginTime
}}
--
{{
li
.
endTime
}}
</p>
<p>
人员 :
{{
li
.
userNames
}}
</p>
<p>
人员 :
{{
li
.
userNames
}}
</p>
<!--
<p>
设备 :
{{
item
.
equipCode
}}
</p>
-->
</div>
</div>
</Card>
</Card>
</Col>
</Col>
...
@@ -105,7 +104,6 @@
...
@@ -105,7 +104,6 @@
v-else-if=
"item.dispatchStatus!=2 && item.pid != 0"
v-else-if=
"item.dispatchStatus!=2 && item.pid != 0"
@
click=
"removeDetail(item,index)"
@
click=
"removeDetail(item,index)"
></op>
></op>
<!-- -->
</p>
</p>
<p>
{{
item
.
beginTime
}}
--
{{
item
.
endTime
}}
</p>
<p>
{{
item
.
beginTime
}}
--
{{
item
.
endTime
}}
</p>
<p>
人员 :
{{
item
.
userNames
}}
</p>
<p>
人员 :
{{
item
.
userNames
}}
</p>
...
@@ -135,7 +133,8 @@
...
@@ -135,7 +133,8 @@
</span>
</span>
</p>
</p>
<div
class=
"dispatch_part_body"
:style=
"
{height:byheight}">
<div
class=
"dispatch_part_body"
:style=
"
{height:byheight}">
<h4
class=
"tc"
v-if=
"listMan.length==0 || listSheBei.length==0"
>
暂无数据
</h4>
<h4
class=
"tc"
v-if=
"listSheBei.length==0 && button2 == '设备'"
>
暂无数据
</h4>
<h4
class=
"tc"
v-else-if=
"listMan.length==0 && button2 == '人员'"
>
暂无数据
</h4>
<div
class=
"shebei"
v-if=
"button2 == '设备'"
>
<div
class=
"shebei"
v-if=
"button2 == '设备'"
>
<Row
:gutter=
"15"
>
<Row
:gutter=
"15"
>
<!--
{{
shebeiId
}}
-->
<!--
{{
shebeiId
}}
-->
...
@@ -200,8 +199,7 @@
...
@@ -200,8 +199,7 @@
:mask-closable=
"false"
:mask-closable=
"false"
ok-text=
"拆分"
ok-text=
"拆分"
@
on-ok=
"okChai()"
@
on-ok=
"okChai()"
>
>
拆分数量:
拆分数量:
<Tag>
{{
chaiNum
}}
</Tag>
<Tag>
{{
chaiNum
}}
</Tag>
<Slider
v-model=
"chaiNum"
:max=
"maxnum"
show-stops
:min=
"1"
></Slider>
<Slider
v-model=
"chaiNum"
:max=
"maxnum"
show-stops
:min=
"1"
></Slider>
</Modal>
</Modal>
...
@@ -232,8 +230,7 @@
...
@@ -232,8 +230,7 @@
v-model=
"entity.userIds"
v-model=
"entity.userIds"
:multiple=
"true"
:multiple=
"true"
style=
"width: 500px"
style=
"width: 500px"
/>
/>
<!-- :type="3" -->
<!-- :type="3" -->
</FormItem>
</FormItem>
</Col>
</Col>
<Col
span=
"24"
class=
"drawer_midell"
>
<Col
span=
"24"
class=
"drawer_midell"
>
...
@@ -268,12 +265,9 @@
...
@@ -268,12 +265,9 @@
<FormItem
label=
"工时"
prop=
"taskTime"
>
<FormItem
label=
"工时"
prop=
"taskTime"
>
<DatePicker
<DatePicker
v-model=
"pentity.taskTime"
v-model=
"pentity.taskTime"
type=
"datetimerange"
type=
"datetimerange"
placement=
"bottom-start"
placement=
"bottom-start"
:options=
"dateRange"
@
on-change=
"handleChange"
:options=
"dateRange"
placeholder=
"请选择时间段"
style=
"width: 330px"
@
on-change=
"handleChange"
placeholder=
"请选择时间段"
style=
"width: 330px"
></DatePicker>
></DatePicker>
</FormItem>
</FormItem>
</Col>
</Col>
...
@@ -285,13 +279,9 @@
...
@@ -285,13 +279,9 @@
<Col
span=
"24"
>
<Col
span=
"24"
>
<FormItem
label=
"备注"
style=
"width:100%"
>
<FormItem
label=
"备注"
style=
"width:100%"
>
<Input
<Input
maxlength=
"200"
maxlength=
"200"
v-model=
"pentity.remark"
v-model=
"pentity.remark"
type=
"textarea"
:autosize=
"
{minRows: 3,maxRows: 5}"
type=
"textarea"
show-word-limit class="drawer_row_textarea"/>
:autosize=
"
{minRows: 3,maxRows: 5}"
show-word-limit
class="drawer_row_textarea"
/>
</FormItem>
</FormItem>
</Col>
</Col>
</Row>
</Row>
...
@@ -317,8 +307,7 @@ export default {
...
@@ -317,8 +307,7 @@ export default {
listShow
:
"订单"
,
listShow
:
"订单"
,
shebei
:
""
,
shebei
:
""
,
curTask
:
null
,
curTask
:
null
,
dateRange
:
{
dateRange
:
{
//禁选工时时间区间
//禁选工时时间区间
disabledDate
(
date
)
{
disabledDate
(
date
)
{
return
date
&&
date
.
valueOf
()
<
Date
.
now
()
-
86400000
;
return
date
&&
date
.
valueOf
()
<
Date
.
now
()
-
86400000
;
}
}
...
@@ -454,9 +443,7 @@ export default {
...
@@ -454,9 +443,7 @@ export default {
res
.
result
.
map
(
u
=>
{
res
.
result
.
map
(
u
=>
{
if
(
u
.
pid
)
{
if
(
u
.
pid
)
{
pid
=
u
.
pid
;
pid
=
u
.
pid
;
}
else
{
}
else
{
pid
=
0
;}
pid
=
0
;
}
let
detailnew
=
{
let
detailnew
=
{
beginTime
:
u
.
beginTime
,
//开始时间
beginTime
:
u
.
beginTime
,
//开始时间
dispatchStatus
:
u
.
dispatchStatus
,
//
dispatchStatus
:
u
.
dispatchStatus
,
//
...
@@ -499,7 +486,6 @@ export default {
...
@@ -499,7 +486,6 @@ export default {
},
},
// 过滤条件
// 过滤条件
changeStatus
(
a
)
{
changeStatus
(
a
)
{
// console.log(a)
this
.
getUserInfoFn
();
this
.
getUserInfoFn
();
},
},
// 打开抽屉
// 打开抽屉
...
@@ -509,7 +495,6 @@ export default {
...
@@ -509,7 +495,6 @@ export default {
let
timebegin
=
formData
[
0
].
beginTime
;
let
timebegin
=
formData
[
0
].
beginTime
;
let
timend
=
formData
[
0
].
endTime
;
let
timend
=
formData
[
0
].
endTime
;
this
.
newList
=
[];
this
.
newList
=
[];
// console.log("选中的id",chekids)
chekids
.
forEach
(
v
=>
{
chekids
.
forEach
(
v
=>
{
var
item
=
formData
.
filter
(
u
=>
{
var
item
=
formData
.
filter
(
u
=>
{
return
u
.
id
==
v
;
return
u
.
id
==
v
;
...
@@ -523,24 +508,12 @@ export default {
...
@@ -523,24 +508,12 @@ export default {
this
.
facilityModal
=
true
;
this
.
facilityModal
=
true
;
}
else
{
}
else
{
this
.
pentity
.
taskTime
=
[
timebegin
,
timend
];
this
.
pentity
.
taskTime
=
[
timebegin
,
timend
];
// if (
// formData.map(t => {
// this.newList.filter(m => {
// if ((m.id = t.id)) {
// console.log(m.checked);
// }
// });
// })
// ) {
// }
this
.
manModal
=
true
;
this
.
manModal
=
true
;
}
}
// console.log("选中的数据", this.newList);
// console.log("选中的数据", this.newList);
},
},
// 设备派工
// 设备派工
sendSheBei
()
{
sendSheBei
()
{
let
item
=
this
.
newList
;
let
item
=
this
.
newList
;
// console.log(item)
item
.
map
(
u
=>
{
item
.
map
(
u
=>
{
u
.
userIds
=
this
.
entity
.
userIds
;
u
.
userIds
=
this
.
entity
.
userIds
;
u
.
remark
=
this
.
entity
.
remark
;
u
.
remark
=
this
.
entity
.
remark
;
...
@@ -569,7 +542,6 @@ export default {
...
@@ -569,7 +542,6 @@ export default {
// 人员派工
// 人员派工
sendUser
()
{
sendUser
()
{
let
item
=
this
.
newList
;
let
item
=
this
.
newList
;
// console.log("派工的数据",item)
item
.
map
(
u
=>
{
item
.
map
(
u
=>
{
u
.
userIds
=
this
.
peploeId
;
u
.
userIds
=
this
.
peploeId
;
u
.
remark
=
this
.
pentity
.
remark
;
u
.
remark
=
this
.
pentity
.
remark
;
...
@@ -596,14 +568,12 @@ export default {
...
@@ -596,14 +568,12 @@ export default {
},
},
// 拆分方法
// 拆分方法
setChai
(
item
,
index
)
{
setChai
(
item
,
index
)
{
// console.log(item, index)
this
.
curTask
=
item
;
this
.
curTask
=
item
;
this
.
chaiModal
=
true
;
this
.
chaiModal
=
true
;
this
.
chaiNum
=
1
;
this
.
chaiNum
=
1
;
this
.
maxnum
=
item
.
quantity
-
1
;
this
.
maxnum
=
item
.
quantity
-
1
;
this
.
rowIndex
=
index
;
this
.
rowIndex
=
index
;
},
},
// 拆分保存
// 拆分保存
okChai
()
{
okChai
()
{
var
old
=
this
.
$u
.
clone
(
this
.
curTask
);
var
old
=
this
.
$u
.
clone
(
this
.
curTask
);
...
@@ -636,14 +606,9 @@ export default {
...
@@ -636,14 +606,9 @@ export default {
this
.
$Message
.
error
(
"拆分项删除失败!"
);
this
.
$Message
.
error
(
"拆分项删除失败!"
);
}
}
});
});
// let oldList = this.listTask;
// let clickRow = oldList.filter(listRow=>listRow.process_name===item.process_name)[0];
// clickRow.quantity += this.chaiNum
// this.listTask.splice(index, 1)
// this.$Message.success('拆分项已删除。')
},
},
cancle
()
{
//取消
//取消
cancle
()
{
this
.
facilityModal
=
false
;
this
.
facilityModal
=
false
;
this
.
manModal
=
false
;
this
.
manModal
=
false
;
this
.
footerToolbar
=
false
;
this
.
footerToolbar
=
false
;
...
@@ -653,20 +618,15 @@ export default {
...
@@ -653,20 +618,15 @@ export default {
ids
()
{
ids
()
{
let
ids
=
[];
let
ids
=
[];
this
.
listTask
.
map
(
u
=>
{
this
.
listTask
.
map
(
u
=>
{
if
(
u
.
checked
)
{
if
(
u
.
checked
)
{
ids
.
push
(
u
.
id
);}
ids
.
push
(
u
.
id
);
}
});
});
if
(
ids
.
length
>
0
)
{
if
(
ids
.
length
>
0
)
{
this
.
footerToolbar
=
true
;}
this
.
footerToolbar
=
true
;
}
return
ids
;
return
ids
;
},
},
listOrder
()
{
listOrder
()
{
let
orders
=
this
.
$u
.
group
(
this
.
listTask
,
u
=>
{
let
orders
=
this
.
$u
.
group
(
this
.
listTask
,
u
=>
{
return
u
.
mesCode
;
return
u
.
mesCode
;
});
});
// console.warn("listOrder", orders);
// console.warn("listOrder", orders);
return
orders
;
return
orders
;
},
},
peploeId
()
{
peploeId
()
{
...
@@ -688,5 +648,3 @@ export default {
...
@@ -688,5 +648,3 @@ export default {
watch
:
{}
watch
:
{}
};
};
</
script
>
</
script
>
\ No newline at end of file
<
style
lang=
"less"
>
</
style
>
\ No newline at end of file
pages/aps/stream/index.vue
View file @
8ab46640
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
<Col
:span=
"9"
class=
"chan-chi"
>
流水排产-排产池
</Col>
<Col
:span=
"9"
class=
"chan-chi"
>
流水排产-排产池
</Col>
<Col
:span=
"15"
class=
"l-ringht"
>
<Col
:span=
"15"
class=
"l-ringht"
>
<!--
<RadioGroup
v-model=
"status"
type=
"button"
@
on-change=
"changeStatus"
size=
"small"
>
<!--
<RadioGroup
v-model=
"status"
type=
"button"
@
on-change=
"changeStatus"
size=
"small"
>
<Radio
label=
"0"
>
未排产
</Radio>
-->
<Radio
label=
"0"
>
未排产
</Radio>
-->
<!--
<Radio
label=
"2"
>
已排查
</Radio>
-->
<!--
<Radio
label=
"2"
>
已排查
</Radio>
-->
<!--
<Radio
label=
"-1"
>
全部
</Radio>
-->
<!--
<Radio
label=
"-1"
>
全部
</Radio>
-->
<!--
</RadioGroup>
-->
<!--
</RadioGroup>
-->
...
@@ -190,8 +190,8 @@ export default {
...
@@ -190,8 +190,8 @@ export default {
if
(
r
.
result
)
{
if
(
r
.
result
)
{
r
.
result
.
map
(
u
=>
{
r
.
result
.
map
(
u
=>
{
u
.
aps
=
0
;
u
.
aps
=
0
;
u
.
demandFinishDate
=
u
.
demandFinishDate
.
substr
(
0
,
10
)
u
.
demandFinishDate
=
u
.
demandFinishDate
.
substr
(
0
,
10
);
u
.
demandStartDate
=
u
.
demandStartDate
.
substr
(
0
,
10
)
u
.
demandStartDate
=
u
.
demandStartDate
.
substr
(
0
,
10
);
});
});
this
.
list
=
r
.
result
;
this
.
list
=
r
.
result
;
// if (r.result[0]) {
// if (r.result[0]) {
...
@@ -268,7 +268,7 @@ export default {
...
@@ -268,7 +268,7 @@ export default {
this
.
indexId
=
index
;
this
.
indexId
=
index
;
this
.
detailId
=
item
.
detailId
;
this
.
detailId
=
item
.
detailId
;
this
.
active
=
index
;
this
.
active
=
index
;
this
.
$refs
.
setObj
.
formItem
=
{}
this
.
$refs
.
setObj
.
formItem
=
{};
// this.group.orderId = item.orderId;
// this.group.orderId = item.orderId;
// this.group.routingHeaderId = item.routingHeaderId;
// this.group.routingHeaderId = item.routingHeaderId;
// this.$refs.setObj.formItem = {};
// this.$refs.setObj.formItem = {};
...
@@ -335,6 +335,7 @@ export default {
...
@@ -335,6 +335,7 @@ export default {
if
(
r
.
result
)
{
if
(
r
.
result
)
{
this
.
$Message
.
success
(
"下发成功"
);
this
.
$Message
.
success
(
"下发成功"
);
this
.
orderlist
(
this
.
status
);
this
.
orderlist
(
this
.
status
);
this
.
result
=
[];
}
else
{
}
else
{
this
.
$Message
.
info
(
"下发失败"
);
this
.
$Message
.
info
(
"下发失败"
);
}
}
...
...
pages/aps/stream/set.vue
View file @
8ab46640
...
@@ -18,12 +18,13 @@
...
@@ -18,12 +18,13 @@
</RadioGroup>
</RadioGroup>
</FormItem>
-->
</FormItem>
-->
<FormItem
label=
"人员"
v-if=
"mode==1"
prop=
"userIds"
>
<FormItem
label=
"人员"
v-if=
"mode==1"
prop=
"userIds"
>
<UserSelect
<
!--
<
UserSelect
ref=
"userSelected"
ref=
"userSelected"
v-model=
"formItem.userIds"
v-model=
"formItem.userIds"
style=
"width:300px"
style=
"width:300px"
:multiple=
"true"
:multiple=
"true"
/>
/>
-->
<UserSelect
v-model=
"formItem.userIds"
:multiple=
"true"
theme=
"list"
/>
</FormItem>
</FormItem>
<FormItem
label=
"班组"
v-if=
"mode==2"
prop=
"shopId"
>
<FormItem
label=
"班组"
v-if=
"mode==2"
prop=
"shopId"
>
<Select
v-model=
"formItem.shopId"
placeholder=
"请选择"
style=
"width:300px"
>
<Select
v-model=
"formItem.shopId"
placeholder=
"请选择"
style=
"width:300px"
>
...
@@ -73,7 +74,8 @@ export default {
...
@@ -73,7 +74,8 @@ export default {
remark
:
""
,
remark
:
""
,
departmentTitle
:
""
,
departmentTitle
:
""
,
shopId
:
""
,
shopId
:
""
,
shopName
:
""
shopName
:
""
,
userIds
:
[]
},
},
workShop
:
[],
workShop
:
[],
listClass
:
[],
listClass
:
[],
...
@@ -90,14 +92,14 @@ export default {
...
@@ -90,14 +92,14 @@ export default {
}
}
}
}
],
],
userIds
:
[
// user
: [
{
//
{
required
:
true
,
//
required: true,
message
:
"请选择人员"
,
//
message: "请选择人员",
type
:
"array"
,
//
type: "array",
trigger
:
"change"
//
trigger: "change"
}
//
}
],
//
],
shopId
:
[
shopId
:
[
{
{
required
:
true
,
required
:
true
,
...
@@ -115,14 +117,18 @@ export default {
...
@@ -115,14 +117,18 @@ export default {
methods
:
{
methods
:
{
//确定
//确定
Determine
()
{
Determine
()
{
if
(
this
.
formItem
.
userIds
.
length
==
0
)
{
this
.
$Message
.
error
(
"人员不能为空"
);
}
else
{
this
.
$refs
[
"formItem"
].
validate
(
valid
=>
{
this
.
$refs
[
"formItem"
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
valid
)
{
this
.
formItem
.
detailId
=
this
.
detailId
;
this
.
formItem
.
detailId
=
this
.
detailId
;
this
.
$emit
(
"on-DetermineOk"
,
this
.
formItem
,
this
.
indexId
);
this
.
$emit
(
"on-DetermineOk"
,
this
.
formItem
,
this
.
indexId
);
}
else
{
}
else
{
this
.
$Message
.
error
(
"Fail!
"
);
this
.
$Message
.
error
(
"请填写完整
"
);
}
}
});
});
}
},
},
closeOk
()
{
closeOk
()
{
this
.
$emit
(
"closeOk"
);
this
.
$emit
(
"closeOk"
);
...
@@ -172,8 +178,7 @@ export default {
...
@@ -172,8 +178,7 @@ export default {
this
.
listClass
.
push
(
obj
);
this
.
listClass
.
push
(
obj
);
this
.
formItem
.
shopId
=
this
.
listClass
[
0
].
value
;
this
.
formItem
.
shopId
=
this
.
listClass
[
0
].
value
;
this
.
formItem
.
shopName
=
this
.
listClass
[
0
].
label
;
this
.
formItem
.
shopName
=
this
.
listClass
[
0
].
label
;
},
}
},
},
watch
:
{
watch
:
{
"formItem.radio"
(
v
)
{
"formItem.radio"
(
v
)
{
...
...
pages/implement/table.less
View file @
8ab46640
...
@@ -12,72 +12,72 @@
...
@@ -12,72 +12,72 @@
.transmit_content {
.transmit_content {
padding: 20px 0 0 0;
padding: 20px 0 0 0;
height
: calc(100% - 108px);
height
: calc(100% - 108px);
}
}
.select {
.select {
color
: #a7b8cc;
color
: #a7b8cc;
font-size: 22px;
font-size: 22px;
}
}
.wuliao_left {
.wuliao_left {
float
: left;
float
: left;
width
: 310px;
width
: 310px;
margin-right: 15px;
margin-right: 15px;
// height : calc(100% - 16px);
// height : calc(100% - 16px);
height: 500px;
height: 500px;
border
: 1px solid #e4e6ed;
border
: 1px solid #e4e6ed;
overflow-y
: auto;
overflow-y
: auto;
overflow-x
: hidden;
overflow-x
: hidden;
}
}
.wuliao_right {
.wuliao_right {
width
: calc(100% - 325px);
width
: calc(100% - 325px);
height
: calc(100% - 16px);
height
: calc(100% - 16px);
border
: 1px solid #e4e6ed;
border
: 1px solid #e4e6ed;
overflow-y: auto;
overflow-y: auto;
overflow-x: hidden;
overflow-x: hidden;
}
}
.card_title {
.card_title {
background
: #f8f8f9;
background
: #f8f8f9;
padding
: 8px 15px;
padding
: 8px 15px;
border-bottom: 1px solid #e4e6ed;
border-bottom: 1px solid #e4e6ed;
position
: relative;
position
: relative;
height: 46px;
height: 46px;
}
}
.state {
.state {
float
: right;
float
: right;
color
: #515a6e;
color
: #515a6e;
padding: 5px 5px;
padding: 5px 5px;
}
}
.transmit_cont {
.transmit_cont {
position
: absolute;
position
: absolute;
top
: 28px;
top
: 28px;
right
: 0px;
right
: 0px;
border-radius: 4px;
border-radius: 4px;
width
: 105px;
width
: 105px;
height
: 155px;
height
: 155px;
background
: #fff;
background
: #fff;
box-shadow
: 0px 0px 6px rgba(0, 0, 0, 0.2);
box-shadow
: 0px 0px 6px rgba(0, 0, 0, 0.2);
}
}
.state_body {
.state_body {
padding
: 10px 0px;
padding
: 10px 0px;
text-align
: center;
text-align
: center;
line-height: 24px;
line-height: 24px;
}
}
.state_footer {
.state_footer {
border-top: 1px solid #e4e6ed;
border-top: 1px solid #e4e6ed;
padding
: 3px;
padding
: 3px;
}
}
.title_btn02 {
.title_btn02 {
padding: 0px 9px;
padding: 0px 9px;
border
: none;
border
: none;
}
}
.color02 {
.color02 {
...
@@ -86,34 +86,34 @@
...
@@ -86,34 +86,34 @@
.card_box {
.card_box {
cursor: pointer;
cursor: pointer;
width
: 270px;
width
: 270px;
height: 116px;
height: 116px;
border: 1px solid #e4e6ed;
border: 1px solid #e4e6ed;
margin: 20px auto;
margin: 20px auto;
}
}
.hover {
.hover {
cursor
: pointer;
cursor
: pointer;
width
: 270px;
width
: 270px;
height
: 116px;
height
: 116px;
border
: 1px solid #e4e6ed;
border
: 1px solid #e4e6ed;
margin
: 20px auto;
margin
: 20px auto;
background: #f5f7fd;
background: #f5f7fd;
}
}
.card_body {
.card_body {
width
: 230px;
width
: 230px;
float
: left;
float
: left;
padding: 10px 0 0 10px;
padding: 10px 0 0 10px;
}
}
.card_right {
.card_right {
cursor
: pointer;
cursor
: pointer;
background: #e4e6ed;
background: #e4e6ed;
height
: 114px;
height
: 114px;
text-align: center;
text-align: center;
float
: left;
float
: left;
width
: 38px;
width
: 38px;
}
}
.yellow {
.yellow {
...
@@ -133,11 +133,11 @@
...
@@ -133,11 +133,11 @@
}
}
.list_item {
.list_item {
height
: 24px;
height
: 24px;
line-height: 24px;
line-height: 24px;
img {
img {
width
: 16px;
width
: 16px;
height: 16px;
height: 16px;
}
}
}
}
...
@@ -148,14 +148,14 @@
...
@@ -148,14 +148,14 @@
.new_box {
.new_box {
.photo {
.photo {
float
: left;
float
: left;
margin
: 0 20px 0 0;
margin
: 0 20px 0 0;
width
: calc(40% - 20px);
width
: calc(40% - 20px);
border-right: solid 1px #bebcbc;
border-right: solid 1px #bebcbc;
text-align
: center;
text-align
: center;
img {
img {
width
: 350px !important;
width
: 350px !important;
height: 300px !important;
height: 300px !important;
}
}
...
@@ -173,26 +173,28 @@
...
@@ -173,26 +173,28 @@
// height : 658px;
// height : 658px;
overflow-y: auto;
overflow-y: auto;
overflow-x: hidden;
overflow-x: hidden;
padding
: 0 10px;
padding
: 0 10px;
}
}
// 工艺文件
// 工艺文件
.outP {
.outP {
.iviewimg {
.iviewimg {
width
: 100%;
width
: 100%;
height
: 70px;
height
: 70px;
text-align: center;
text-align: center;
margin
: 0 0 60px;
margin
: 0 0 60px;
}
}
}
}
.table_box {
.table_box {
border: 1px solid #000;
border: 1px solid #000;
.row_title{
height : 40px;
.row_title {
height: 40px;
}
}
.table_row {
.table_row {
line-height
: 40px;
line-height
: 40px;
border-bottom: 1px solid #000;
border-bottom: 1px solid #000;
div {
div {
...
@@ -200,8 +202,8 @@
...
@@ -200,8 +202,8 @@
}
}
.box {
.box {
width
: 100%;
width
: 100%;
height
: 40px;
height
: 40px;
border-bottom: 1px solid #fff;
border-bottom: 1px solid #fff;
}
}
}
}
...
@@ -212,17 +214,17 @@
...
@@ -212,17 +214,17 @@
.iview_cont {
.iview_cont {
border-right: 1px solid #000;
border-right: 1px solid #000;
width
: 100%;
width
: 100%;
height
: 40px;
height
: 40px;
}
}
.table_row02 {
.table_row02 {
border-top
: 1px solid #000;
border-top
: 1px solid #000;
border-bottom: 1px solid #000;
border-bottom: 1px solid #000;
height
: 42px;
height
: 42px;
line-height
: 40px;
line-height
: 40px;
text-align
: center;
text-align
: center;
margin-top
: 10px;
margin-top
: 10px;
}
}
}
}
...
@@ -231,14 +233,14 @@
...
@@ -231,14 +233,14 @@
}
}
.title_cont {
.title_cont {
margin
: 10px auto;
margin
: 10px auto;
width
: auto;
width
: auto;
display: inline-block;
display: inline-block;
}
}
.iview_cont01 {
.iview_cont01 {
display
: inline-block;
display
: inline-block;
margin
: 0 6px;
margin
: 0 6px;
font-weight: bold;
font-weight: bold;
}
}
...
@@ -247,18 +249,18 @@
...
@@ -247,18 +249,18 @@
}
}
.h1 {
.h1 {
font-size
: 36px;
font-size
: 36px;
display
: inline-block;
display
: inline-block;
width
: auto;
width
: auto;
padding
: 0 8px;
padding
: 0 8px;
height
: 46px;
height
: 46px;
border-bottom: 1px solid #000;
border-bottom: 1px solid #000;
margin
: 40px auto;
margin
: 40px auto;
}
}
.outP table thead tr th,
.outP table thead tr th,
.outP table tbody tr td {
.outP table tbody tr td {
padding
: 2px 0;
padding
: 2px 0;
// height : 30px;
// height : 30px;
line-height: 28px;
line-height: 28px;
}
}
...
...
pages/mesPlan/index.vue
View file @
8ab46640
<
template
>
<
template
>
<Layout
class=
"full"
>
<Layout
class=
"full"
>
<Sider
hide-trigger
:style=
"
{background: '#fff'}" width="260">
<
!--
<
Sider
hide-trigger
:style=
"
{background: '#fff'}" width="260">
<div
class=
"zh-tree"
:style=
"
{height:treeHeight+'px'}">
<div
class=
"zh-tree"
:style=
"
{height:treeHeight+'px'}">
<h3
class=
"zh-title"
>
产品结构
</h3>
<h3
class=
"zh-title"
>
产品结构
</h3>
<div
class=
"zh-box"
>
<div
class=
"zh-box"
>
...
@@ -13,8 +13,16 @@
...
@@ -13,8 +13,16 @@
>
</Tree>
>
</Tree>
</div>
</div>
</div>
</div>
</Sider>
-->
<Sider
hide-trigger
v-if=
"showMenu"
class=
"menu_side"
width=
"300"
>
<ProductTree
@
on-hide=
"onHide"
@
on-select=
"productSearch"
/>
</Sider>
</Sider>
<Content
class=
"content"
>
<div
v-if=
"!showMenu"
class=
"show_menu"
>
<a
class=
"menu_play fr"
@
click=
"showMenuFn"
title=
"展开"
>
<Icon
type=
"ios-arrow-forward"
size=
"24"
/>
</a>
</div>
<Content
class=
"content"
:class=
"!showMenu?'con_bord':''"
>
<!--:data="dataT"-->
<!--:data="dataT"-->
<DataGrid
<DataGrid
:action=
"action"
:action=
"action"
...
@@ -100,6 +108,7 @@ import Detail from "./detail";
...
@@ -100,6 +108,7 @@ import Detail from "./detail";
import
Search
from
"./search"
;
import
Search
from
"./search"
;
import
Split
from
"./split"
;
import
Split
from
"./split"
;
import
Send
from
"./send"
;
import
Send
from
"./send"
;
import
ProductTree
from
"@/components/page/productTree.vue"
;
export
default
{
export
default
{
name
:
"list"
,
name
:
"list"
,
components
:
{
components
:
{
...
@@ -108,11 +117,12 @@ export default {
...
@@ -108,11 +117,12 @@ export default {
Detail
,
Detail
,
Search
,
Search
,
Split
,
Split
,
Send
Send
,
ProductTree
,
},
},
data
()
{
data
()
{
return
{
return
{
action
:
Api
.
index
,
action
:
Api
.
index
,
showMenu
:
true
,
easySearch
:
{
easySearch
:
{
keys
:
{
keys
:
{
op
:
"mesCode,productName"
,
op
:
"mesCode,productName"
,
...
@@ -763,6 +773,18 @@ export default {
...
@@ -763,6 +773,18 @@ export default {
this
.
$Message
.
error
(
"数量为1,不能进行分解"
);
this
.
$Message
.
error
(
"数量为1,不能进行分解"
);
}
}
},
},
onHide
()
{
// this.$Message.info("收起左侧树")
this
.
showMenu
=
false
;
},
showMenuFn
()
{
//this.$Message.info("展开左侧树")
this
.
showMenu
=
true
;
},
productSearch
(
id
,
item
,
ids
)
{
let
where
=
{
productId
:
{
op
:
"In"
,
value
:
ids
}
};
this
.
$refs
.
grid
.
reload
(
where
);
},
//确定分解
//确定分解
orderSplitOk
()
{
orderSplitOk
()
{
let
returnDatalist
=
this
.
$refs
.
orderSplit
.
returnDataList
();
let
returnDatalist
=
this
.
$refs
.
orderSplit
.
returnDataList
();
...
...
pages/order/quotation/index.vue
View file @
8ab46640
<
template
>
<
template
>
<Layout
class=
"quotation"
>
<Layout
class=
"quotation"
>
<!-- 左侧树 -->
<!-- 左侧树 -->
<Sider
hide-trigger
:style=
"
{background: '#fff'}" width="260">
<
!--
<
Sider
hide-trigger
:style=
"
{background: '#fff'}" width="260">
<Tree-Type
@
func=
"getMsgFormSon"
:style=
"
{ height: treeHeight + 'px' }">
</Tree-Type>
<Tree-Type
@
func=
"getMsgFormSon"
:style=
"
{ height: treeHeight + 'px' }">
</Tree-Type>
</Sider>
-->
<Sider
hide-trigger
v-if=
"showMenu"
class=
"menu_side"
width=
"300"
>
<ProductTree
@
on-hide=
"onHide"
@
on-select=
"productSearch"
/>
</Sider>
</Sider>
<div
v-if=
"!showMenu"
class=
"show_menu"
>
<a
class=
"menu_play fr"
@
click=
"showMenuFn"
title=
"展开"
>
<Icon
type=
"ios-arrow-forward"
size=
"24"
/>
</a>
</div>
<!-- 右侧内容 -->
<!-- 右侧内容 -->
<Content
class=
"content"
>
<Content
class=
"content"
:class=
"!showMenu?'con_bord':''"
>
<Tabs
v-model=
"selectName"
@
on-click=
"handleClick"
>
<Tabs
v-model=
"selectName"
@
on-click=
"handleClick"
>
<TabPane
label=
"订单报价"
key=
"offer"
name=
"offer"
>
<TabPane
label=
"订单报价"
key=
"offer"
name=
"offer"
>
<div
class=
"search-form"
>
<div
class=
"search-form"
>
...
@@ -140,7 +148,7 @@ import MetalQuotation from "./components/metalQuotation.vue"; //订单报价弹
...
@@ -140,7 +148,7 @@ import MetalQuotation from "./components/metalQuotation.vue"; //订单报价弹
import
Photosensitive
from
"./components/photosensitive.vue"
;
//订单报价弹框光敏
import
Photosensitive
from
"./components/photosensitive.vue"
;
//订单报价弹框光敏
import
MetalDetails
from
"./components/metalDetails.vue"
;
//报价历史记录铺粉详情弹框
import
MetalDetails
from
"./components/metalDetails.vue"
;
//报价历史记录铺粉详情弹框
import
PhotosensitiveDetails
from
"./components/photosensitiveDetails.vue"
;
//报价历史记录光敏详情弹框
import
PhotosensitiveDetails
from
"./components/photosensitiveDetails.vue"
;
//报价历史记录光敏详情弹框
import
ProductTree
from
"@/components/page/productTree.vue"
;
//左侧树列表
import
MetalQuotationGeneration
from
"./components/metalQuotationGeneration.vue"
;
//生成报价单弹框
import
MetalQuotationGeneration
from
"./components/metalQuotationGeneration.vue"
;
//生成报价单弹框
import
PhotosensitiveGeneration
from
"./components/photosensitiveGeneration.vue"
;
//生成报价单弹框
import
PhotosensitiveGeneration
from
"./components/photosensitiveGeneration.vue"
;
//生成报价单弹框
export
default
{
export
default
{
...
@@ -152,7 +160,7 @@ export default {
...
@@ -152,7 +160,7 @@ export default {
MetalQuotation
,
MetalQuotation
,
Photosensitive
,
Photosensitive
,
MetalDetails
,
MetalDetails
,
PhotosensitiveDetails
,
PhotosensitiveDetails
,
ProductTree
,
MetalQuotationGeneration
,
MetalQuotationGeneration
,
PhotosensitiveGeneration
PhotosensitiveGeneration
},
},
...
@@ -162,6 +170,7 @@ export default {
...
@@ -162,6 +170,7 @@ export default {
result
:
[]
result
:
[]
},
},
userId
:
0
,
userId
:
0
,
showMenu
:
true
,
model1
:
""
,
model1
:
""
,
rows
:
{},
rows
:
{},
modalDai
:
false
,
//待审核
modalDai
:
false
,
//待审核
...
@@ -381,10 +390,23 @@ export default {
...
@@ -381,10 +390,23 @@ export default {
};
};
},
},
methods
:
{
methods
:
{
onHide
()
{
this
.
showMenu
=
false
;
},
showMenuFn
()
{
this
.
showMenu
=
true
;
},
productSearch
(
id
,
item
,
ids
)
{
// console.log(item)
this
.
getMsgFormSon
(
ids
)
// let where = { productId: { op: "In", value: ids } };
// this.$refs.grid.reload(where);
},
update
()
{
update
()
{
this
.
tableTata
(
this
.
selectName
);
this
.
tableTata
(
this
.
selectName
);
},
},
getMsgFormSon
(
data
)
{
getMsgFormSon
(
data
)
{
// console.log(data)
this
.
productId
=
data
.
join
(
","
);
this
.
productId
=
data
.
join
(
","
);
this
.
tableTata
(
this
.
selectName
);
this
.
tableTata
(
this
.
selectName
);
},
},
...
...
pages/processManage/setProcess/index.vue
View file @
8ab46640
<
template
>
<
template
>
<div>
<Layout
class=
"lay100"
>
<!--
<div>
-->
<!-- 左侧树 -->
<!-- 左侧树 -->
<div
class=
"zh-tree"
:style=
"
{height:treeHeight+'px'}">
<!--
<Sider
hide-trigger
v-if=
"showMenu"
class=
"menu_side"
width=
"300"
>
-->
<h3
class=
"zh-title"
>
产品结构
</h3>
<!--
<div
class=
"zh-tree"
:style=
"
{height:treeHeight+'px'}"> -->
<!--
<h3
class=
"zh-title"
>
产品结构
</h3>
<div
class=
"zh-box"
>
<div
class=
"zh-box"
>
<Input
search
placeholder=
"请输入查询条件"
v-model=
"treeInputSearch"
/>
<Input
search
placeholder=
"请输入查询条件"
v-model=
"treeInputSearch"
/>
...
@@ -13,9 +15,18 @@
...
@@ -13,9 +15,18 @@
@on-select-change="selectTreeNode"
@on-select-change="selectTreeNode"
>
</Tree>
>
</Tree>
</div>
</div>
</Sider>
-->
<!--
</div>
-->
<Sider
hide-trigger
v-if=
"showMenu"
class=
"menu_side"
width=
"300"
>
<ProductTree
@
on-hide=
"onHide"
@
on-select=
"productSearch"
/>
</Sider>
<div
v-if=
"!showMenu"
class=
"show_menu"
>
<a
class=
"menu_play fr"
@
click=
"showMenuFn"
title=
"展开"
>
<Icon
type=
"ios-arrow-forward"
size=
"24"
/>
</a>
</div>
</div>
<!-- 右侧内容 -->
<!-- 右侧内容 -->
<
div
class=
"content-right
"
>
<
Content
class=
"con"
:class=
"!showMenu?'con_bord':''
"
>
<div
class=
"title_box"
>
<div
class=
"title_box"
>
<div
class=
"table_title"
>
<div
class=
"table_title"
>
<div
style=
"width:100px; float:left"
>
<div
style=
"width:100px; float:left"
>
...
@@ -235,7 +246,7 @@
...
@@ -235,7 +246,7 @@
@
on-page-size-change=
"pageSizeChange"
@
on-page-size-change=
"pageSizeChange"
/>
/>
</div>
</div>
</
div
>
</
Content
>
<Modal
<Modal
v-model=
"modal1"
v-model=
"modal1"
:title=
"gymodaltitle"
:title=
"gymodaltitle"
...
@@ -339,19 +350,18 @@
...
@@ -339,19 +350,18 @@
>
>
<processview
ref=
"processview"
></processview>
<processview
ref=
"processview"
></processview>
</Modal>
</Modal>
</
div
>
</
Layout
>
</template>
</template>
<
script
>
<
script
>
import
DrawerSet
from
"./components/drawerSet.vue"
;
//抽屉列表
import
DrawerSet
from
"./components/drawerSet.vue"
;
//抽屉列表
import
TreeType
from
"./components/treeType.vue"
;
//左侧树列表
import
orderMaterial
from
"./components/orderMaterial.vue"
;
//料单
import
orderMaterial
from
"./components/orderMaterial.vue"
;
//料单
import
processMain
from
"./processMain.vue"
;
import
processMain
from
"./processMain.vue"
;
import
processNew
from
"../Process/processNew.vue"
;
import
processNew
from
"../Process/processNew.vue"
;
import
service
from
"@/plugins/request"
;
import
service
from
"@/plugins/request"
;
import
ProductTree
from
"@/components/page/productTree.vue"
;
//左侧树列表
import
OrderSendReview
from
"./components/orderSendReview"
;
//送审页面
import
OrderSendReview
from
"./components/orderSendReview"
;
//送审页面
import
processview
from
"../Process/processview.vue"
;
import
processview
from
"../Process/processview.vue"
;
import
sendAudit
from
"../Process/sendAudit.vue"
;
import
sendAudit
from
"../Process/sendAudit.vue"
;
...
@@ -359,7 +369,7 @@ import QS from "querystring";
...
@@ -359,7 +369,7 @@ import QS from "querystring";
export
default
{
export
default
{
components
:
{
components
:
{
DrawerSet
,
DrawerSet
,
TreeTyp
e
,
ProductTre
e
,
processMain
,
processMain
,
processNew
,
processNew
,
orderMaterial
,
orderMaterial
,
...
@@ -369,6 +379,7 @@ export default {
...
@@ -369,6 +379,7 @@ export default {
},
},
data
()
{
data
()
{
return
{
return
{
showMenu
:
true
,
isview
:
false
,
isview
:
false
,
isdview
:
false
,
isdview
:
false
,
ismview
:
false
,
ismview
:
false
,
...
@@ -687,7 +698,7 @@ export default {
...
@@ -687,7 +698,7 @@ export default {
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
},
},
mounted
()
{
mounted
()
{
this
.
initTree
();
//
this.initTree();
window
.
onresize
=
()
=>
{
window
.
onresize
=
()
=>
{
///浏览器窗口大小变化
///浏览器窗口大小变化
return
(()
=>
{
return
(()
=>
{
...
@@ -698,7 +709,7 @@ export default {
...
@@ -698,7 +709,7 @@ export default {
};
};
},
},
computed
:
{
computed
:
{
searchList
()
{
searchList
()
{
//产品树左侧
let
nodeList
=
this
.
treeData
;
let
nodeList
=
this
.
treeData
;
var
text
=
this
.
treeInputSearch
;
var
text
=
this
.
treeInputSearch
;
var
newNodeList
=
[];
var
newNodeList
=
[];
...
@@ -720,6 +731,21 @@ export default {
...
@@ -720,6 +731,21 @@ export default {
}
}
},
},
methods
:
{
methods
:
{
onHide
()
{
this
.
showMenu
=
false
;
},
showMenuFn
()
{
this
.
showMenu
=
true
;
},
productSearch
(
id
,
item
,
ids
)
{
if
(
ids
.
length
>
0
)
{
this
.
orderSearchForm
.
productId
=
ids
.
join
(
","
);
}
else
{
this
.
orderSearchForm
.
productId
=
"-1"
;
this
.
orderSearchForm
.
productName
=
""
;
}
this
.
easySearch
(
this
.
orderSearchForm
);
},
// tab切换
// tab切换
tabChange
(
name
)
{
tabChange
(
name
)
{
this
.
tabstatus
=
name
;
this
.
tabstatus
=
name
;
...
@@ -765,12 +791,9 @@ export default {
...
@@ -765,12 +791,9 @@ export default {
deleted
()
{},
deleted
()
{},
// 分页
// 分页
pageChange
(
num
)
{
pageChange
(
num
)
{
//console.log(num);
this
.
page
=
num
;
this
.
page
=
num
;
this
.
orderSearchForm
.
SkipCount
=
(
num
-
1
)
*
this
.
orderSearchForm
.
MaxResultCount
;
this
.
orderSearchForm
.
SkipCount
=
// console.log(this.orderSearchForm.SkipCount);
(
num
-
1
)
*
this
.
orderSearchForm
.
MaxResultCount
;
console
.
log
(
this
.
orderSearchForm
.
SkipCount
);
this
.
loaddata
(
this
.
orderSearchForm
);
this
.
loaddata
(
this
.
orderSearchForm
);
},
},
pageSizeChange
(
limit
)
{
pageSizeChange
(
limit
)
{
...
@@ -781,22 +804,14 @@ console.log(this.orderSearchForm.SkipCount);
...
@@ -781,22 +804,14 @@ console.log(this.orderSearchForm.SkipCount);
},
},
loaddata
(
params
)
{
loaddata
(
params
)
{
var
url
=
""
;
var
url
=
""
;
// if(params==1||params==2){
// url =
// `${PlanUrl}/mesorder/getpagedmesordersforpdefm?ProcessUserType=` + params
// }else{
this
.
orderSearchForm
.
simpleSearch
=
typeof
params
==
"string"
?
params
:
params
.
simpleSearch
,
//快速搜索
this
.
orderSearchForm
.
simpleSearch
=
typeof
params
==
"string"
?
params
:
params
.
simpleSearch
,
//快速搜索
this
.
orderSearchForm
.
ProcessUserType
=
this
.
tabstatus
,
this
.
orderSearchForm
.
ProcessUserType
=
this
.
tabstatus
,
this
.
orderSearchForm
.
ProductingPreparation
=
this
.
ProductingPreparationPeople
,
this
.
orderSearchForm
.
ProductingPreparation
=
this
.
ProductingPreparationPeople
,
this
.
orderSearchForm
.
RoutingSetStatus
=
this
.
orderSearchForm
.
RoutingSetStatus
this
.
orderSearchForm
.
RoutingSetStatus
=
this
.
orderSearchForm
.
RoutingSetStatus
url
=
url
=
`
${
PlanUrl
}
/mesorder/getpagedmesordersforpdefm?`
+
`
${
PlanUrl
}
/mesorder/getpagedmesordersforpdefm?`
+
QS
.
stringify
(
this
.
orderSearchForm
);
QS
.
stringify
(
this
.
orderSearchForm
);
// }
service
.
get
(
`
${
url
}
`
).
then
(
response
=>
{
service
.
get
(
`
${
url
}
`
).
then
(
response
=>
{
// console.log(response)
// console.log(response)
...
@@ -847,33 +862,34 @@ console.log(this.orderSearchForm.SkipCount);
...
@@ -847,33 +862,34 @@ console.log(this.orderSearchForm.SkipCount);
}
}
}
}
},
},
initTree
()
{
// initTree() {
var
sumData
=
[];
// var sumData = [];
this
.
$http
.
order
.
getallselecttree
().
then
(
res
=>
{
// this.$http.order.getallselecttree().then(res => {
if
(
res
.
result
)
{
// if (res.result) {
for
(
var
i
=
0
;
i
<
res
.
result
.
length
;
i
++
)
{
// for (var i = 0; i
<
res
.
result
.
length
;
i
++
)
{
sumData
=
sumData
.
concat
(
res
.
result
[
i
]);
// sumData = sumData.concat(res.result[i]);
}
// }
this
.
treeData
=
sumData
;
// this.treeData = sumData;
this
.
data2
=
JSON
.
parse
(
JSON
.
stringify
(
sumData
));
// this.data2 = JSON.parse(JSON.stringify(sumData));
}
else
{
// } else {
this
.
$Message
.
error
(
"加载产品树失败!"
);
// this.$Message.error("加载产品树失败!");
}
// }
});
// });
},
// },
selectTreeNode
(
value
)
{
// selectTreeNode(value) {
if
(
value
.
length
>
0
)
{
// console.log(value)
this
.
ids
=
[];
// if (value.length > 0) {
this
.
getAllIds
(
value
);
// this.ids = [];
if
(
this
.
ids
.
length
>
0
)
{
// this.getAllIds(value);
this
.
orderSearchForm
.
productId
=
this
.
ids
.
join
(
","
);
// if (this.ids.length > 0) {
}
else
{
// this.orderSearchForm.productId = this.ids.join(",");
this
.
orderSearchForm
.
productId
=
"-1"
;
// } else {
this
.
orderSearchForm
.
productName
=
""
;
// this.orderSearchForm.productId = "-1";
}
// this.orderSearchForm.productName = "";
this
.
easySearch
(
this
.
orderSearchForm
);
// }
}
// this.easySearch(this.orderSearchForm);
},
// }
// },
getAllIds
(
trees
)
{
getAllIds
(
trees
)
{
trees
.
forEach
((
data
,
index
)
=>
{
trees
.
forEach
((
data
,
index
)
=>
{
var
that
=
this
;
var
that
=
this
;
...
...
pages/processManage/setProcess/processMain.vue
View file @
8ab46640
...
@@ -457,6 +457,7 @@ export default {
...
@@ -457,6 +457,7 @@ export default {
this
.
formValidate
.
mydate
=
date
;
this
.
formValidate
.
mydate
=
date
;
},
},
onchange_createtype
()
{
onchange_createtype
()
{
if
(
this
.
createtype
==
1
)
{
if
(
this
.
createtype
==
1
)
{
this
.
isshow_selectpdefm
=
false
;
this
.
isshow_selectpdefm
=
false
;
this
.
clearModal2
();
this
.
clearModal2
();
...
@@ -530,9 +531,8 @@ export default {
...
@@ -530,9 +531,8 @@ export default {
},
},
setparentcreatetype
(
type
,
headerid
)
{
setparentcreatetype
(
type
,
headerid
)
{
this
.
$parent
.
$parent
.
createtype
=
type
this
.
$parent
.
$parent
.
$parent
.
createtype
=
type
this
.
$parent
.
$parent
.
headerid
=
headerid
this
.
$parent
.
$parent
.
$parent
.
headerid
=
headerid
},
},
...
...
pages/resourceManagement/deviceManagementCP/components/newEquipment.vue
View file @
8ab46640
<
template
>
<
template
>
<div
class=
"new-equipment"
>
<div
class=
"new-equipment"
>
<Modal
v-model=
"modalShow"
title=
"新增设备
"
width=
"1000"
:mask-closable=
"false"
>
<Modal
v-model=
"modalShow"
:title=
"title
"
width=
"1000"
:mask-closable=
"false"
>
<Form
:model=
"formItem"
:label-width=
"100"
style=
"margin:10px;"
:rules=
"ruleValidate"
>
<Form
:model=
"formItem"
:label-width=
"100"
style=
"margin:10px;"
:rules=
"ruleValidate"
>
<Row
:gutter=
"16"
>
<Row
:gutter=
"16"
>
<Col
span=
"11"
>
<Col
span=
"11"
>
...
@@ -55,39 +55,19 @@
...
@@ -55,39 +55,19 @@
<inputFile
ref=
"refqcFile"
v-model=
"imgName"
:parms=
"qcfileparms"
files
/>
<inputFile
ref=
"refqcFile"
v-model=
"imgName"
:parms=
"qcfileparms"
files
/>
</FormItem>
</FormItem>
</Col>
</Col>
<Col
span=
"11"
offset=
"1"
>
<Col
:span=
"12"
>
<FormItem
label=
"是否关重"
prop=
"isimportant"
>
<FormItem
label=
"属性"
>
<Select
v-model=
"isimportant"
>
<Checkbox
v-model=
"property"
>
排产资源
</Checkbox>
<Option
:value=
"1"
>
是
</Option>
<Option
:value=
"2"
>
否
</Option>
</Select>
</FormItem>
</FormItem>
</Col>
</Col>
</Row>
</Row>
<Row
:gutter=
"16"
>
<Row
:gutter=
"16"
>
<Col
span=
"11"
>
<Col
span=
"12"
>
<FormItem
label=
"能力系数"
>
<InputNumber
:min=
"0"
v-model=
"formItem.capability_value"
size=
"large"
style=
"width:240px"
></InputNumber>
</FormItem>
</Col>
<Col
span=
"11"
offset=
"1"
>
<FormItem
label=
"位置"
prop=
"location"
>
<FormItem
label=
"位置"
prop=
"location"
>
<Input
v-model=
"formItem.location"
placeholder=
"请输入位置"
></Input>
<Input
v-model=
"formItem.location"
placeholder=
"请输入位置"
></Input>
</FormItem>
</FormItem>
</Col>
</Col>
</Row>
</Row>
<Row
:gutter=
"16"
>
<Col
:span=
"12"
>
<FormItem
label=
"属性"
>
<Checkbox
v-model=
"property"
>
排产资源
</Checkbox>
</FormItem>
</Col>
</Row>
</Form>
</Form>
<div
slot=
"footer"
>
<div
slot=
"footer"
>
<!-- class="footers" -->
<!-- class="footers" -->
...
@@ -132,12 +112,12 @@ export default {
...
@@ -132,12 +112,12 @@ export default {
equip_ip
:
""
,
equip_ip
:
""
,
shop_id
:
""
,
shop_id
:
""
,
shop_name
:
""
,
shop_name
:
""
,
isimportant
:
2
,
//
isimportant: 2,
location
:
""
,
location
:
""
capability_value
:
1
//
capability_value: 1
},
},
property
:
true
,
property
:
true
,
isimportant
:
2
,
//
isimportant: 2,
ruleValidate
:
{
ruleValidate
:
{
equip_id
:
[
equip_id
:
[
{
{
...
@@ -234,9 +214,9 @@ export default {
...
@@ -234,9 +214,9 @@ export default {
equip_ip
:
this
.
formItem
.
equip_ip
,
equip_ip
:
this
.
formItem
.
equip_ip
,
shop_id
:
this
.
formItem
.
shop_id
,
shop_id
:
this
.
formItem
.
shop_id
,
eqstyle
:
str
,
eqstyle
:
str
,
isimportant
:
this
.
isimportant
,
//
isimportant: this.isimportant,
location
:
this
.
formItem
.
location
,
location
:
this
.
formItem
.
location
,
capability_value
:
this
.
formItem
.
capability_value
,
//
capability_value: this.formItem.capability_value,
property
:
this
.
property
,
property
:
this
.
property
,
shop_name
:
this
.
formItem
.
shop_name
shop_name
:
this
.
formItem
.
shop_name
};
};
...
@@ -277,9 +257,9 @@ export default {
...
@@ -277,9 +257,9 @@ export default {
equip_ip
:
this
.
formItem
.
equip_ip
,
equip_ip
:
this
.
formItem
.
equip_ip
,
shop_id
:
this
.
formItem
.
shop_id
,
shop_id
:
this
.
formItem
.
shop_id
,
eqstyle
:
str
,
eqstyle
:
str
,
isimportant
:
this
.
isimportant
,
//
isimportant: this.isimportant,
location
:
this
.
formItem
.
location
,
location
:
this
.
formItem
.
location
,
capability_value
:
this
.
formItem
.
capability_value
,
//
capability_value: this.formItem.capability_value,
property
:
this
.
property
,
property
:
this
.
property
,
shop_name
:
this
.
formItem
.
shop_name
shop_name
:
this
.
formItem
.
shop_name
};
};
...
...
pages/resourceManagement/deviceManagementCP/index.vue
View file @
8ab46640
...
@@ -5,10 +5,12 @@
...
@@ -5,10 +5,12 @@
<h3
class=
"zh-title"
>
组织架构
</h3>
<h3
class=
"zh-title"
>
组织架构
</h3>
<div
class=
"zh-box"
>
<div
class=
"zh-box"
>
<Input
search
placeholder=
"请输入查询条件"
clearable
v-model=
"treeInputSearch"
/>
<Input
search
placeholder=
"请输入查询条件"
clearable
v-model=
"treeInputSearch"
/>
<Tree
:data=
"searchList"
<Tree
:data=
"searchList"
:style=
"
{height:(treeHeight-115)+'px'}"
:style=
"
{height:(treeHeight-115)+'px'}"
style="overflow-y:auto;overflow-x:hiden;width:215px;"
style="overflow-y:auto;overflow-x:hiden;width:215px;"
@on-select-change="selectTreeNode">
</Tree>
@on-select-change="selectTreeNode"
>
</Tree>
</div>
</div>
</div>
</div>
<!-- 右侧内容 -->
<!-- 右侧内容 -->
...
@@ -535,23 +537,23 @@ export default {
...
@@ -535,23 +537,23 @@ export default {
title
:
"所属部门"
,
title
:
"所属部门"
,
key
:
"shop_name"
key
:
"shop_name"
},
},
{
//
{
title
:
"是否关重"
,
//
title: "是否关重",
key
:
"isimportant"
,
//
key: "isimportant",
render
:
(
h
,
params
)
=>
{
//
render: (h, params) => {
let
statuse
=
params
.
row
.
isimportant
;
//
let statuse = params.row.isimportant;
let
text
=
statuse
==
1
?
"是"
:
statuse
==
2
?
"否"
:
""
;
//
let text = statuse == 1 ? "是" : statuse == 2 ? "否" : "";
return
h
(
"span"
,
{},
text
);
//
return h("span", {}, text);
}
//
}
},
//
},
{
{
title
:
"位置"
,
title
:
"位置"
,
key
:
"location"
key
:
"location"
},
},
{
//
{
title
:
"能力系数"
,
//
title: "能力系数",
key
:
"capability_value"
//
key: "capability_value"
},
//
},
{
{
title
:
"操作"
,
title
:
"操作"
,
key
:
"action"
,
key
:
"action"
,
...
@@ -591,7 +593,8 @@ export default {
...
@@ -591,7 +593,8 @@ export default {
"op"
,
"op"
,
{
{
attrs
:
{
attrs
:
{
oprate
:
"delete"
,
title
:
"删除"
oprate
:
"delete"
,
title
:
"删除"
},
},
style
:
{
style
:
{
color
:
"red"
color
:
"red"
...
@@ -608,7 +611,8 @@ export default {
...
@@ -608,7 +611,8 @@ export default {
"op"
,
"op"
,
{
{
attrs
:
{
attrs
:
{
oprate
:
"detail"
,
title
:
"保养"
oprate
:
"detail"
,
title
:
"保养"
},
},
on
:
{
on
:
{
click
:
()
=>
{
click
:
()
=>
{
...
@@ -622,7 +626,8 @@ export default {
...
@@ -622,7 +626,8 @@ export default {
"op"
,
"op"
,
{
{
attrs
:
{
attrs
:
{
oprate
:
"detail"
,
title
:
"维修"
oprate
:
"detail"
,
title
:
"维修"
},
},
on
:
{
on
:
{
click
:
()
=>
{
click
:
()
=>
{
...
...
pages/resourceManagement/productionResources/index.vue
View file @
8ab46640
...
@@ -23,8 +23,8 @@
...
@@ -23,8 +23,8 @@
<Col
span=
"8"
>
<Col
span=
"8"
>
<FormItem
:label=
"l('isimportant')"
prop=
"isimportant"
>
<FormItem
:label=
"l('isimportant')"
prop=
"isimportant"
>
<RadioGroup
v-model=
"entity.isimportant"
>
<RadioGroup
v-model=
"entity.isimportant"
>
<Radio
label=
"
0
"
>
是
</Radio>
<Radio
label=
"
1
"
>
是
</Radio>
<Radio
label=
"
1
"
>
否
</Radio>
<Radio
label=
"
2
"
>
否
</Radio>
</RadioGroup>
</RadioGroup>
</FormItem>
</FormItem>
</Col>
</Col>
...
@@ -132,6 +132,23 @@ export default {
...
@@ -132,6 +132,23 @@ export default {
easy
:
true
,
easy
:
true
,
high
:
true
high
:
true
},
},
{
key
:
"isimportant"
,
title
:
this
.
l
(
"isimportant"
),
align
:
"left"
,
render
:
(
h
,
params
)
=>
{
let
statuse
=
params
.
row
.
isimportant
;
let
text
=
statuse
==
1
?
"是"
:
statuse
==
2
?
"否"
:
""
;
return
h
(
"span"
,
{},
text
);
}
},
{
key
:
"capabilityValue"
,
title
:
this
.
l
(
"capabilityValue"
),
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
{
key
:
"calId"
,
key
:
"calId"
,
title
:
this
.
l
(
"calId"
),
title
:
this
.
l
(
"calId"
),
...
@@ -173,12 +190,12 @@ export default {
...
@@ -173,12 +190,12 @@ export default {
attrs
:
{
oprate
:
"edit"
},
attrs
:
{
oprate
:
"edit"
},
on
:
{
click
:
()
=>
this
.
edit
(
params
.
row
.
id
)
}
on
:
{
click
:
()
=>
this
.
edit
(
params
.
row
.
id
)
}
},
},
"设置
日历
"
"设置"
),
),
h
(
h
(
"op"
,
"op"
,
{
{
attrs
:
{
oprate
:
"remove"
,
title
:
"删除"
},
attrs
:
{
oprate
:
"remove"
,
title
:
"删除"
},
on
:
{
click
:
()
=>
this
.
remove
(
params
.
row
.
id
)
}
on
:
{
click
:
()
=>
this
.
remove
(
params
.
row
.
id
)
}
},
},
"删除"
"删除"
...
@@ -257,6 +274,8 @@ export default {
...
@@ -257,6 +274,8 @@ export default {
this
.
disabled
=
false
;
this
.
disabled
=
false
;
if
(
r
.
success
)
{
if
(
r
.
success
)
{
this
.
$Message
.
success
(
"保存成功"
);
this
.
$Message
.
success
(
"保存成功"
);
this
.
$refs
.
grid
.
load
();
this
.
$refs
.
grid
.
footerToolbar
=
false
;
}
else
{
}
else
{
this
.
$Message
.
error
(
"保存失败"
);
this
.
$Message
.
error
(
"保存失败"
);
}
}
...
...
pages/resourceManagement/productionResources/set.vue
View file @
8ab46640
<
template
>
<
template
>
<Form
ref=
"form"
:model=
"
entity
"
:rules=
"rules"
:label-width=
"90"
>
<Form
ref=
"form"
:model=
"
formItem
"
:rules=
"rules"
:label-width=
"90"
>
<Row>
<Row>
<Col
span=
"12"
>
<Col
span=
"12"
>
<FormItem
label=
"资源名称"
prop=
"equip_name"
>
<FormItem
label=
"资源名称"
prop=
"equip_name"
>
...
@@ -29,6 +29,19 @@
...
@@ -29,6 +29,19 @@
</Select>
</Select>
</FormItem>
</FormItem>
</Col>
</Col>
<Col
:span=
"12"
>
<FormItem
label=
"是否关重"
prop=
"isimportant"
>
<RadioGroup
v-model=
"formItem.isimportant"
>
<Radio
label=
"1"
>
是
</Radio>
<Radio
label=
"2"
>
否
</Radio>
</RadioGroup>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
label=
"能力值"
prop=
"capabilityValue"
>
<Input
v-model=
"formItem.capabilityValue"
placeholder=
"请输入能力值"
></Input>
</FormItem>
</Col>
</Row>
</Row>
<FormItem>
<FormItem>
<Button
type=
"primary"
@
click=
"handleSubmit"
:disabled=
"disabled"
>
保存
</Button>
<Button
type=
"primary"
@
click=
"handleSubmit"
:disabled=
"disabled"
>
保存
</Button>
...
@@ -47,7 +60,9 @@ export default {
...
@@ -47,7 +60,9 @@ export default {
overtimeList
:
[],
overtimeList
:
[],
formItem
:
{
formItem
:
{
equip_name
:
""
,
equip_name
:
""
,
equip_id
:
""
equip_id
:
""
,
isimportant
:
""
,
capabilityValue
:
""
},
},
formItem1
:
{
formItem1
:
{
id
:
0
,
id
:
0
,
...
@@ -97,6 +112,8 @@ export default {
...
@@ -97,6 +112,8 @@ export default {
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
this
.
formItem
.
equip_name
=
r
.
result
.
title
;
this
.
formItem
.
equip_name
=
r
.
result
.
title
;
this
.
formItem
.
equip_id
=
r
.
result
.
code
;
this
.
formItem
.
equip_id
=
r
.
result
.
code
;
this
.
formItem
.
capabilityValue
=
r
.
result
.
capabilityValue
;
this
.
formItem
.
isimportant
=
r
.
result
.
isimportant
+
""
;
this
.
formItem1
.
calendarwork_pk
=
r
.
result
.
calKey
;
this
.
formItem1
.
calendarwork_pk
=
r
.
result
.
calKey
;
this
.
formItem2
.
calendarovertime_pk
=
r
.
result
.
holidayKey
;
this
.
formItem2
.
calendarovertime_pk
=
r
.
result
.
holidayKey
;
this
.
formItem1
.
equip_pk
=
r
.
result
.
id
;
this
.
formItem1
.
equip_pk
=
r
.
result
.
id
;
...
@@ -109,7 +126,9 @@ export default {
...
@@ -109,7 +126,9 @@ export default {
this
.
disabled
=
true
;
this
.
disabled
=
true
;
Api
.
update
({
Api
.
update
({
equipCalendarWork
:
this
.
formItem1
,
equipCalendarWork
:
this
.
formItem1
,
equipCalendarOverTime
:
this
.
formItem2
equipCalendarOverTime
:
this
.
formItem2
,
isimportant
:
this
.
formItem
.
isimportant
,
capabilityValue
:
this
.
formItem
.
capabilityValue
})
})
.
then
(
r
=>
{
.
then
(
r
=>
{
this
.
disabled
=
false
;
this
.
disabled
=
false
;
...
...
pages/technology/add.vue
View file @
8ab46640
...
@@ -17,8 +17,11 @@
...
@@ -17,8 +17,11 @@
</FormItem>
</FormItem>
</Col>
</Col>
<Col
:span=
"8"
>
<Col
:span=
"8"
>
<
FormItem
:label=
"l('code')"
prop=
"code"
>
<
!--
<FormItem
v-if=
"title=='新增'"
:label=
"l('code')"
prop=
"code"
>
<Input
v-model=
"entity.code"
></Input>
<Input
v-model=
"entity.code"
></Input>
</FormItem>
v-else-if="title=='克隆'"-->
<FormItem
:label=
"l('code')"
prop=
"code"
>
<Input
disabled
v-model=
"entity.code"
></Input>
</FormItem>
</FormItem>
</Col>
</Col>
<Col
:span=
"8"
>
<Col
:span=
"8"
>
...
@@ -129,7 +132,7 @@
...
@@ -129,7 +132,7 @@
<Col
:span=
"24"
>
<Col
:span=
"24"
>
<FormItem
label=
"多媒体附件"
prop=
"files"
>
<FormItem
label=
"多媒体附件"
prop=
"files"
>
<files
ref=
"refFile"
:parms=
"parms"
file
s
/>
<files
ref=
"refFile"
:parms=
"parms"
file
Format
/>
</FormItem>
</FormItem>
</Col>
</Col>
</Row>
</Row>
...
@@ -175,7 +178,8 @@ export default {
...
@@ -175,7 +178,8 @@ export default {
versionnotes
:
""
,
versionnotes
:
""
,
phase
:
null
,
phase
:
null
,
versionid
:
null
,
versionid
:
null
,
isSendPpm
:
1
isSendPpm
:
1
,
fileId
:
""
},
},
rules
:
{
rules
:
{
name
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}],
name
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}],
...
@@ -191,32 +195,33 @@ export default {
...
@@ -191,32 +195,33 @@ export default {
},
},
props
:
{
props
:
{
v
:
Object
,
v
:
Object
,
eid
:
Number
eid
:
Number
,
title
:
String
},
},
mounted
()
{
mounted
()
{
this
.
parms
.
eid
=
this
.
$u
.
guid
();
this
.
parms
.
eid
=
this
.
$u
.
guid
();
this
.
$refs
.
refFile
.
intFiles
();
this
.
$refs
.
refFile
.
intFiles
();
if
(
this
.
eid
>
0
)
{
this
.
load
(
this
.
eid
);
}
else
{
this
.
getCodNumber
();
}
},
},
methods
:
{
methods
:
{
handleSubmit
()
{
handleSubmit
()
{
this
.
$refs
.
form
.
validate
(
v
=>
{
this
.
$refs
.
form
.
validate
(
v
=>
{
if
(
v
)
{
if
(
v
)
{
this
.
disabled
=
true
;
this
.
disabled
=
true
;
// this.entity.qualityTemplateName = ''
if
(
this
.
title
==
'克隆'
){
// this.entity.qualityTemplate=''
this
.
$Message
.
success
(
"克隆"
);
// if (this.$refs.refFile.nameList.length > 0) {
this
.
getcloneData
()
// let nameList=this.$refs.refFile.nameList
}
else
{
// let names=[]
if
(
this
.
$refs
.
refFile
.
nameList
.
length
>
0
)
{
// let url=[]
this
.
entity
.
fileId
=
this
.
parms
.
eid
;
// nameList.forEach(e => {
}
else
{
// names.push(e.fileName)
this
.
entity
.
fileId
=
""
;
// url.push(e.filePath)
}
// });
Api
.
create
(
this
.
entity
).
then
(
r
=>
{
// this.entity.qualityTemplateName = JSON.stringify(names).replace('[','').replace(']','').replace(/\"/g,'')//附件本地库暂存文件名称
// this.entity.qualityTemplate=JSON.stringify(url).replace('[','').replace(']','').replace(/\"/g,'')
// }
Api
.
create
(
this
.
entity
)
.
then
(
r
=>
{
this
.
disabled
=
false
;
this
.
disabled
=
false
;
if
(
r
.
success
)
{
if
(
r
.
success
)
{
this
.
$Message
.
success
(
"保存成功"
);
this
.
$Message
.
success
(
"保存成功"
);
...
@@ -231,6 +236,28 @@ export default {
...
@@ -231,6 +236,28 @@ export default {
console
.
warn
(
err
);
console
.
warn
(
err
);
});
});
}
}
}
});
},
// 克隆工艺
getcloneData
(){
let
parmese
=
{
headerId
:
this
.
eid
,
code
:
this
.
entity
.
code
};
Api
.
getCloneHeader
(
parmese
).
then
(
r
=>
{
this
.
disabled
=
false
;
if
(
r
.
success
)
{
this
.
$Message
.
success
(
"克隆成功"
);
this
.
$emit
(
"on-ok"
);
}
else
{
this
.
$Message
.
error
(
"克隆失败"
);
}
})
.
catch
(
err
=>
{
this
.
disabled
=
false
;
this
.
$Message
.
error
(
"克隆失败"
);
console
.
warn
(
err
);
});
});
},
},
handleClose
()
{
handleClose
()
{
...
@@ -260,8 +287,19 @@ export default {
...
@@ -260,8 +287,19 @@ export default {
load
(
v
)
{
load
(
v
)
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
this
.
entity
=
r
.
result
;
this
.
entity
=
r
.
result
;
this
.
entity
.
isEffect
=
parseInt
(
r
.
result
.
isEffect
);
this
.
entity
.
id
=
0
;
this
.
entity
.
id
=
0
;
});
});
this
.
getCodNumber
();
},
getCodNumber
(){
Api
.
getCodeNumber
({
code
:
'GY'
,
count
:
'1'
}).
then
(
r
=>
{
if
(
r
.
success
){
this
.
entity
.
code
=
r
.
result
[
0
]
}
else
{
this
.
$Message
.
error
(
"生成编号失败"
);
}
})
},
},
l
(
key
)
{
l
(
key
)
{
key
=
"routingHeader"
+
"."
+
key
;
key
=
"routingHeader"
+
"."
+
key
;
...
@@ -273,10 +311,11 @@ export default {
...
@@ -273,10 +311,11 @@ export default {
this
.
entity
=
this
.
$u
.
clone
(
this
.
v
);
this
.
entity
=
this
.
$u
.
clone
(
this
.
v
);
},
},
eid
(
v
)
{
eid
(
v
)
{
if
(
v
>
0
)
{
// console.log("id:",v)
if
(
v
!=
0
)
{
this
.
load
(
v
);
this
.
load
(
v
);
}
}
}
}
,
}
}
};
};
</
script
>
</
script
>
\ No newline at end of file
pages/technology/api.js
View file @
8ab46640
...
@@ -13,6 +13,13 @@ export default {
...
@@ -13,6 +13,13 @@ export default {
update
(
params
)
{
update
(
params
)
{
return
Api
.
put
(
`
${
technologyUrl
}
routingheader/update`
,
params
);
return
Api
.
put
(
`
${
technologyUrl
}
routingheader/update`
,
params
);
},
},
getCloneHeader
(
params
){
return
Api
.
post
(
`
${
technologyUrl
}
routingheader/cloneheader`
,
params
);
},
getCodeNumber
(
params
){
return
Api
.
post
(
`
${
systemUrl
}
/cache/generate_serialcode`
,
params
);
},
delete
(
id
)
{
delete
(
id
)
{
return
Api
.
delete
(
`
${
technologyUrl
}
routingheader/delete`
,
{
return
Api
.
delete
(
`
${
technologyUrl
}
routingheader/delete`
,
{
params
:
{
params
:
{
...
...
pages/technology/details/add.vue
View file @
8ab46640
...
@@ -154,6 +154,7 @@
...
@@ -154,6 +154,7 @@
v-model=
"entity.taskContent"
v-model=
"entity.taskContent"
:height=
"200"
:height=
"200"
v-paste=
"handleImg"
v-paste=
"handleImg"
border
/>
/>
</FormItem>
</FormItem>
</Col>
</Col>
...
...
pages/technology/details/edit.vue
View file @
8ab46640
...
@@ -84,7 +84,7 @@
...
@@ -84,7 +84,7 @@
</Col>
</Col>
<Col
:span=
"24"
>
<Col
:span=
"24"
>
<FormItem
:label=
"l('taskContent')"
prop=
"taskContent"
>
<FormItem
:label=
"l('taskContent')"
prop=
"taskContent"
>
<i-quill
v-model=
"entity.taskContent"
:height=
"200"
v-paste=
"handleImg"
/>
<i-quill
v-model=
"entity.taskContent"
:height=
"200"
border
v-paste=
"handleImg"
/>
</FormItem>
</FormItem>
</Col>
</Col>
</Row>
</Row>
...
...
pages/technology/details/index.vue
View file @
8ab46640
...
@@ -37,7 +37,7 @@ export default {
...
@@ -37,7 +37,7 @@ export default {
action
:
Api
.
index
,
action
:
Api
.
index
,
easySearch
:
{
easySearch
:
{
keys
:
{
keys
:
{
op
:
"name
,description,remark,resourceCode,equipType,note
"
,
op
:
"name"
,
value
:
null
value
:
null
},
},
routingHeaderId
:
{
op
:
"Equal"
,
value
:
-
1
}
routingHeaderId
:
{
op
:
"Equal"
,
value
:
-
1
}
...
@@ -70,17 +70,18 @@ export default {
...
@@ -70,17 +70,18 @@ export default {
});
});
}
}
},
},
{
key
:
"taskSeq"
,
title
:
this
.
l
(
"taskSeq"
),
align
:
"left"
},
{
key
:
"taskSeq"
,
title
:
this
.
l
(
"taskSeq"
),
align
:
"left"
,
width
:
80
},
{
{
key
:
"name"
,
key
:
"name"
,
title
:
this
.
l
(
"name"
),
title
:
this
.
l
(
"name"
),
align
:
"left"
align
:
"left"
,
},
},
{
{
key
:
"equipType"
,
key
:
"equipType"
,
title
:
this
.
l
(
"equipType"
),
title
:
this
.
l
(
"equipType"
),
align
:
"left"
,
align
:
"left"
,
easy
:
true
easy
:
true
,
hide
:
true
,
},
},
{
{
key
:
"resourceType"
,
key
:
"resourceType"
,
...
@@ -117,32 +118,36 @@ export default {
...
@@ -117,32 +118,36 @@ export default {
key
:
"isParticipateIntime"
,
key
:
"isParticipateIntime"
,
title
:
this
.
l
(
"isParticipateIntime"
),
title
:
this
.
l
(
"isParticipateIntime"
),
align
:
"center"
,
align
:
"center"
,
code
:
"Process.state"
code
:
"Process.state"
,
hide
:
true
,
},
},
{
{
key
:
"isImportant"
,
key
:
"isImportant"
,
title
:
this
.
l
(
"isImportant"
),
title
:
this
.
l
(
"isImportant"
),
align
:
"center"
,
align
:
"center"
,
code
:
"Process.state"
code
:
"Process.state"
,
width
:
100
,
hide
:
true
,
},
},
{
{
key
:
"isOutside"
,
key
:
"isOutside"
,
title
:
this
.
l
(
"isOutside"
),
title
:
this
.
l
(
"isOutside"
),
align
:
"
left
"
,
align
:
"
center
"
,
hide
:
true
,
hide
:
true
,
code
:
"Process.state"
code
:
"Process.state"
,
width
:
100
},
},
{
{
key
:
"efficiencyValue"
,
key
:
"efficiencyValue"
,
title
:
this
.
l
(
"efficiencyValue"
),
title
:
this
.
l
(
"efficiencyValue"
),
align
:
"
lef
t"
,
align
:
"
righ
t"
,
hide
:
true
hide
:
true
},
},
{
{
key
:
"singleOut"
,
key
:
"singleOut"
,
title
:
this
.
l
(
"singleOut"
),
title
:
this
.
l
(
"singleOut"
),
align
:
"
lef
t"
,
align
:
"
righ
t"
,
hide
:
true
hide
:
true
},
},
...
@@ -394,53 +399,6 @@ export default {
...
@@ -394,53 +399,6 @@ export default {
this
.
load
();
this
.
load
();
},
},
l
(
key
)
{
l
(
key
)
{
/*
routing_detail:{
id:'',
creationTime:'创建时间',
creatorUserId:'创建人',
lastModificationTime:'最近修改时间',
lastModifierUserId:'最近修改人',
isDeleted:'是否删除',
deleterUserId:'删除人',
deletionTime:'删除时间',
classId:'',
routingHeaderId:'工艺规程id',
name:'工序名称',
taskSeq:'工序号',
description:'备注',
taskContent:'工序内容',
resourceId:'资源ID',
resourceType:'资源类型',
runtime:'单件排产工时',
setupTime:'工序准备工时',
transportTime:'转运工时',
checkTime:'检验工时',
checkFlag:'检验标识',
efficiencyValue:'效率系数',
singleOut:'单件产出',
isOutside:'是否外协',
departmentId:'工序的承制车间',
isImportant:'是否关键工序',
milestoneId:'里程碑',
phaseId:'阶段id',
status:'状态',
remark:'备注',
extend:'扩展字段',
outsideTime:'外协工期',
performanceHours:'绩效工时',
resourceCode:'资源编号',
isImportantResources:'关重资源',
schedulingWorkingHours:'排产准结工时',
realWorkingHours:'实作准结工时',
realRuntime:'实作单件工时',
performanceWorkingHours:'绩效准结工时',
isParticipateIntime:'是否参与工时分配',
equipType:'设备类型',
equipTypeId:'设备类型ID',
note:'备注',
}
*/
let
vkey
=
"routing_detail"
+
"."
+
key
;
let
vkey
=
"routing_detail"
+
"."
+
key
;
return
this
.
$t
(
vkey
)
||
key
;
return
this
.
$t
(
vkey
)
||
key
;
}
}
...
...
pages/technology/details/routingStep/edit.vue
View file @
8ab46640
...
@@ -17,6 +17,7 @@
...
@@ -17,6 +17,7 @@
<i-quill
<i-quill
v-model=
"entity.stepContent"
v-model=
"entity.stepContent"
:height=
"260"
:height=
"260"
border
v-paste=
"handleImg"
v-paste=
"handleImg"
/>
/>
<!--
<Input
v-model=
"entity.stepContent"
type=
"textarea"
:rows=
"5"
></Input>
-->
<!--
<Input
v-model=
"entity.stepContent"
type=
"textarea"
:rows=
"5"
></Input>
-->
...
...
pages/technology/details/routingqccard/index.vue
View file @
8ab46640
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
<Form
ref=
"formInline"
:model=
"easySearch"
inline
>
<Form
ref=
"formInline"
:model=
"easySearch"
inline
>
<FormItem
prop=
"keys"
>
<FormItem
prop=
"keys"
>
<Input
<Input
placeholder=
"请输入
关键字检测要求/测量单位/模板/备注/生产要求/标准指标/模板名称/抽检批次
"
placeholder=
"请输入
检测要求/标准指标
"
v-model=
"easySearch.keys.value"
v-model=
"easySearch.keys.value"
/>
/>
</FormItem>
</FormItem>
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
</Form>
</Form>
</
template
>
</
template
>
<
template
slot=
"searchForm"
>
<
template
slot=
"searchForm"
>
<Search
:headid=
"hid"
/>
<Search
:headid=
"hid"
/>
</
template
>
</
template
>
<
template
slot=
"buttons"
>
<
template
slot=
"buttons"
>
<Button
type=
"primary"
@
click=
"add"
>
新增
</Button>
<Button
type=
"primary"
@
click=
"add"
>
新增
</Button>
...
@@ -46,7 +46,7 @@ export default {
...
@@ -46,7 +46,7 @@ export default {
easySearch
:
{
easySearch
:
{
keys
:
{
keys
:
{
op
:
op
:
"checkParams,
measurementUnit,qualityTemplate,remark,productionRequirement,standard,qualityTemplateName,samplingBatch
"
,
"checkParams,
standard
"
,
value
:
null
value
:
null
},
},
routingHeaderId
:
{
op
:
"Equal"
,
value
:
-
1
}
routingHeaderId
:
{
op
:
"Equal"
,
value
:
-
1
}
...
@@ -55,42 +55,34 @@ export default {
...
@@ -55,42 +55,34 @@ export default {
title
:
"新增"
,
title
:
"新增"
,
detail
:
null
,
detail
:
null
,
curId
:
0
,
curId
:
0
,
hid
:
0
,
hid
:
0
,
columns
:
[
columns
:
[
{
key
:
"id"
,
title
:
this
.
l
(
"id"
),
hide
:
true
,
align
:
"left"
},
{
key
:
"id"
,
title
:
this
.
l
(
"id"
),
hide
:
true
,
align
:
"left"
},
{
{
key
:
"creationTime"
,
key
:
"routingHeaderId"
,
title
:
this
.
l
(
"creationTime"
),
title
:
this
.
l
(
"routingHeaderId"
),
align
:
"left"
,
high
:
true
},
{
key
:
"creatorUserId"
,
title
:
this
.
l
(
"creatorUserId"
),
align
:
"left"
,
high
:
true
},
{
key
:
"lastModificationTime"
,
title
:
this
.
l
(
"lastModificationTime"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
high
:
true
,
hide
:
true
},
},
{
{
key
:
"
lastModifierUser
Id"
,
key
:
"
routingDetail
Id"
,
title
:
this
.
l
(
"
lastModifierUser
Id"
),
title
:
this
.
l
(
"
routingDetail
Id"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
high
:
true
,
hide
:
true
},
},
{
{
key
:
"routing
HeaderId
"
,
key
:
"routing
DetailNo
"
,
title
:
this
.
l
(
"routing
HeaderId
"
),
title
:
this
.
l
(
"routing
DetailNo
"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
high
:
true
,
width
:
80
},
},
{
{
key
:
"routingDetail
Id
"
,
key
:
"routingDetail
Name
"
,
title
:
this
.
l
(
"routingDetail
Id
"
),
title
:
this
.
l
(
"routingDetail
Name
"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
high
:
true
},
},
...
@@ -98,14 +90,16 @@ export default {
...
@@ -98,14 +90,16 @@ export default {
key
:
"routingStepId"
,
key
:
"routingStepId"
,
title
:
this
.
l
(
"routingStepId"
),
title
:
this
.
l
(
"routingStepId"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
high
:
true
,
hide
:
true
},
},
{
{
key
:
"checkType"
,
key
:
"checkType"
,
title
:
this
.
l
(
"checkType"
),
title
:
this
.
l
(
"checkType"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
,
high
:
true
,
code
:
"QC.checktype"
code
:
"QC.checktype"
,
width
:
100
,
},
},
{
{
key
:
"checkParams"
,
key
:
"checkParams"
,
...
@@ -119,48 +113,54 @@ export default {
...
@@ -119,48 +113,54 @@ export default {
title
:
this
.
l
(
"measurementUnit"
),
title
:
this
.
l
(
"measurementUnit"
),
align
:
"left"
,
align
:
"left"
,
easy
:
true
,
easy
:
true
,
high
:
true
high
:
true
,
hide
:
true
,
},
},
{
{
key
:
"fillintype"
,
key
:
"fillintype"
,
title
:
this
.
l
(
"fillintype"
),
title
:
this
.
l
(
"fillintype"
),
align
:
"
left
"
,
align
:
"
center
"
,
high
:
true
,
high
:
true
,
code
:
"QC.fillintype"
code
:
"QC.fillintype"
,
width
:
140
,
},
},
{
{
key
:
"isphotograph"
,
key
:
"isphotograph"
,
title
:
this
.
l
(
"isphotograph"
),
title
:
this
.
l
(
"isphotograph"
),
align
:
"
left
"
,
align
:
"
center
"
,
high
:
true
,
high
:
true
,
code
:
"Process.state"
code
:
"Process.state"
,
width
:
100
,
},
},
{
{
key
:
"status"
,
key
:
"status"
,
title
:
this
.
l
(
"status"
),
title
:
this
.
l
(
"status"
),
align
:
"
left
"
,
align
:
"
center
"
,
high
:
true
,
high
:
true
,
code
:
"Process.Status"
code
:
"Process.Status"
,
width
:
80
,
},
},
{
{
key
:
"productionRequirement"
,
key
:
"productionRequirement"
,
title
:
this
.
l
(
"productionRequirement"
),
title
:
this
.
l
(
"productionRequirement"
),
align
:
"left"
,
align
:
"left"
,
easy
:
true
,
easy
:
true
,
high
:
true
high
:
true
,
hide
:
true
},
},
{
{
key
:
"standard"
,
key
:
"standard"
,
title
:
this
.
l
(
"standard"
),
title
:
this
.
l
(
"standard"
),
align
:
"left"
,
align
:
"left"
,
easy
:
true
,
easy
:
true
,
high
:
true
high
:
true
,
},
},
{
{
key
:
"qualityTemplateName"
,
key
:
"qualityTemplateName"
,
title
:
this
.
l
(
"qualityTemplateName"
),
title
:
this
.
l
(
"qualityTemplateName"
),
align
:
"left"
,
align
:
"left"
,
easy
:
true
,
easy
:
true
,
hide
:
true
,
high
:
true
,
high
:
true
,
render
:
(
h
,
params
)
=>
{
render
:
(
h
,
params
)
=>
{
return
h
(
"div"
,
{
class
:
"action"
},
[
return
h
(
"div"
,
{
class
:
"action"
},
[
...
@@ -178,43 +178,77 @@ export default {
...
@@ -178,43 +178,77 @@ export default {
{
{
key
:
"isImportant"
,
key
:
"isImportant"
,
title
:
this
.
l
(
"isImportant"
),
title
:
this
.
l
(
"isImportant"
),
align
:
"
left
"
,
align
:
"
center
"
,
high
:
true
,
high
:
true
,
code
:
"Process.state"
code
:
"Process.state"
,
width
:
100
,
},
},
{
{
key
:
"firstCheck"
,
key
:
"firstCheck"
,
title
:
this
.
l
(
"firstCheck"
),
title
:
this
.
l
(
"firstCheck"
),
align
:
"
left
"
,
align
:
"
center
"
,
high
:
true
,
high
:
true
,
code
:
"Process.state"
code
:
"Process.state"
,
width
:
100
,
},
},
{
{
key
:
"inspection"
,
key
:
"inspection"
,
title
:
this
.
l
(
"inspection"
),
title
:
this
.
l
(
"inspection"
),
align
:
"
left
"
,
align
:
"
center
"
,
high
:
true
,
high
:
true
,
code
:
"Process.state"
code
:
"Process.state"
,
width
:
80
,
},
},
{
{
key
:
"inspectionTime"
,
key
:
"inspectionTime"
,
title
:
this
.
l
(
"inspectionTime"
),
title
:
this
.
l
(
"inspectionTime"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
high
:
true
,
hide
:
true
},
},
{
{
key
:
"sampling"
,
key
:
"sampling"
,
title
:
this
.
l
(
"sampling"
),
title
:
this
.
l
(
"sampling"
),
align
:
"
left
"
,
align
:
"
center
"
,
high
:
true
,
high
:
true
,
code
:
"Process.state"
code
:
"Process.state"
,
width
:
80
,
},
},
{
{
key
:
"samplingBatch"
,
key
:
"samplingBatch"
,
title
:
this
.
l
(
"samplingBatch"
),
title
:
this
.
l
(
"samplingBatch"
),
align
:
"left"
,
align
:
"left"
,
easy
:
true
,
easy
:
true
,
high
:
true
high
:
true
,
hide
:
true
},
{
key
:
"creationTime"
,
title
:
this
.
l
(
"creationTime"
),
align
:
"left"
,
high
:
true
,
hide
:
true
},
{
key
:
"creatorUserId"
,
title
:
this
.
l
(
"creatorUserId"
),
align
:
"left"
,
high
:
true
,
hide
:
true
},
{
key
:
"lastModificationTime"
,
title
:
this
.
l
(
"lastModificationTime"
),
align
:
"left"
,
high
:
true
,
hide
:
true
},
{
key
:
"lastModifierUserId"
,
title
:
this
.
l
(
"lastModifierUserId"
),
align
:
"left"
,
high
:
true
,
hide
:
true
},
},
{
{
title
:
"操作"
,
title
:
"操作"
,
...
@@ -257,16 +291,16 @@ export default {
...
@@ -257,16 +291,16 @@ export default {
};
};
},
},
created
()
{
created
()
{
if
(
this
.
headerid
!=-
1
)
{
if
(
this
.
headerid
!=
-
1
)
{
this
.
easySearch
.
routingHeaderId
.
value
=
this
.
headerid
;
this
.
easySearch
.
routingHeaderId
.
value
=
this
.
headerid
;
}
else
{
}
else
{
this
.
easySearch
.
routingHeaderId
.
value
=
this
.
$route
.
query
.
id
;
this
.
easySearch
.
routingHeaderId
.
value
=
this
.
$route
.
query
.
id
;
}
}
this
.
hid
=
Number
(
this
.
easySearch
.
routingHeaderId
.
value
)
this
.
hid
=
Number
(
this
.
easySearch
.
routingHeaderId
.
value
);
},
},
mounted
()
{
mounted
()
{
console
.
log
(
this
);
console
.
log
(
this
);
this
.
search
()
this
.
search
()
;
},
},
async
fetch
({
store
,
params
})
{
async
fetch
({
store
,
params
})
{
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
...
@@ -318,7 +352,7 @@ export default {
...
@@ -318,7 +352,7 @@ export default {
},
},
openTemplate
(
url
)
{
openTemplate
(
url
)
{
this
.
fileUrlPath
=
this
.
downUrl
+
path
;
this
.
fileUrlPath
=
this
.
downUrl
+
path
;
alert
(
this
.
fileUrlPath
)
alert
(
this
.
fileUrlPath
)
;
},
},
l
(
key
)
{
l
(
key
)
{
let
vkey
=
"routing_qc_card"
+
"."
+
key
;
let
vkey
=
"routing_qc_card"
+
"."
+
key
;
...
...
pages/technology/details/routingsupporting/index.vue
View file @
8ab46640
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
<Form
ref=
"formInline"
:model=
"easySearch"
inline
>
<Form
ref=
"formInline"
:model=
"easySearch"
inline
>
<FormItem
prop=
"keys"
>
<FormItem
prop=
"keys"
>
<Input
<Input
placeholder=
"请输入关键字物料
类型/物料编号/物料名称/牌号/规格/型号规格/材质/采购标准/质量等级/备注/产品图号
"
placeholder=
"请输入关键字物料
名称
"
v-model=
"easySearch.keys.value"
v-model=
"easySearch.keys.value"
/>
/>
</FormItem>
</FormItem>
...
@@ -46,7 +46,7 @@ export default {
...
@@ -46,7 +46,7 @@ export default {
easySearch
:
{
easySearch
:
{
keys
:
{
keys
:
{
op
:
op
:
"
materialType,materialNumber,nameMaterial,brand,specifications,xhgg,texture,procurementStandards,qualityGrade,remark,drawNum
"
,
"
nameMaterial
"
,
value
:
null
value
:
null
},
},
routingHeaderId
:
{
op
:
"Equal"
,
value
:
-
1
}
routingHeaderId
:
{
op
:
"Equal"
,
value
:
-
1
}
...
@@ -58,85 +58,63 @@ export default {
...
@@ -58,85 +58,63 @@ export default {
hid
:
0
,
hid
:
0
,
columns
:
[
columns
:
[
{
key
:
"id"
,
title
:
this
.
l
(
"id"
),
hide
:
true
,
align
:
"left"
},
{
key
:
"id"
,
title
:
this
.
l
(
"id"
),
hide
:
true
,
align
:
"left"
},
{
key
:
"creationTime"
,
title
:
this
.
l
(
"creationTime"
),
hide
:
true
,
align
:
"left"
},
{
key
:
"creatorUserId"
,
title
:
this
.
l
(
"creatorUserId"
),
hide
:
true
,
align
:
"left"
},
{
key
:
"lastModificationTime"
,
title
:
this
.
l
(
"lastModificationTime"
),
hide
:
true
,
align
:
"left"
},
{
key
:
"lastModifierUserId"
,
title
:
this
.
l
(
"lastModifierUserId"
),
hide
:
true
,
align
:
"left"
},
{
key
:
"isDeleted"
,
title
:
this
.
l
(
"isDeleted"
),
hide
:
true
,
align
:
"left"
},
{
key
:
"deletionTime"
,
title
:
this
.
l
(
"deletionTime"
),
hide
:
true
,
align
:
"left"
},
{
key
:
"deleterUserId"
,
title
:
this
.
l
(
"deleterUserId"
),
hide
:
true
,
align
:
"left"
},
{
{
key
:
"routingHeaderId"
,
key
:
"routingHeaderId"
,
title
:
this
.
l
(
"routingHeaderId"
),
title
:
this
.
l
(
"routingHeaderId"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
high
:
true
,
hide
:
true
,
},
},
{
{
key
:
"routingDetailId"
,
key
:
"routingDetailId"
,
title
:
this
.
l
(
"routingDetailId"
),
title
:
this
.
l
(
"routingDetailId"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
,
hide
:
true
,
},
{
key
:
"routingDetailNo"
,
title
:
this
.
l
(
"routingDetailNo"
),
align
:
"left"
,
high
:
true
,
width
:
80
},
{
key
:
"routingDetailName"
,
title
:
this
.
l
(
"routingDetailName"
),
align
:
"left"
,
high
:
true
high
:
true
},
},
{
{
key
:
"routingStepId"
,
key
:
"routingStepId"
,
title
:
this
.
l
(
"routingStepId"
),
title
:
this
.
l
(
"routingStepId"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
high
:
true
,
hide
:
true
,
},
},
{
{
key
:
"quantity"
,
key
:
"quantity"
,
title
:
this
.
l
(
"quantity"
),
title
:
this
.
l
(
"quantity"
),
align
:
"left"
,
align
:
"right"
,
high
:
true
high
:
true
,
width
:
80
,
},
},
{
{
key
:
"materialId"
,
key
:
"materialId"
,
title
:
this
.
l
(
"materialId"
),
title
:
this
.
l
(
"materialId"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
high
:
true
,
hide
:
true
,
},
},
{
{
key
:
"materialType"
,
key
:
"materialType"
,
title
:
this
.
l
(
"materialType"
),
title
:
this
.
l
(
"materialType"
),
align
:
"
left
"
,
align
:
"
center
"
,
easy
:
true
,
easy
:
true
,
high
:
true
,
high
:
true
,
code
:
"mes_xingchi_resource.material.materialReType"
code
:
"mes_xingchi_resource.material.materialReType"
,
width
:
100
,
},
},
{
{
key
:
"materialNumber"
,
key
:
"materialNumber"
,
...
@@ -150,7 +128,7 @@ export default {
...
@@ -150,7 +128,7 @@ export default {
title
:
this
.
l
(
"nameMaterial"
),
title
:
this
.
l
(
"nameMaterial"
),
align
:
"left"
,
align
:
"left"
,
easy
:
true
,
easy
:
true
,
high
:
true
high
:
true
,
},
},
{
{
key
:
"brand"
,
key
:
"brand"
,
...
@@ -171,7 +149,8 @@ export default {
...
@@ -171,7 +149,8 @@ export default {
title
:
this
.
l
(
"xhgg"
),
title
:
this
.
l
(
"xhgg"
),
align
:
"left"
,
align
:
"left"
,
easy
:
true
,
easy
:
true
,
high
:
true
high
:
true
,
hide
:
true
,
},
},
{
{
key
:
"texture"
,
key
:
"texture"
,
...
@@ -197,23 +176,66 @@ export default {
...
@@ -197,23 +176,66 @@ export default {
{
{
key
:
"state"
,
key
:
"state"
,
title
:
this
.
l
(
"state"
),
title
:
this
.
l
(
"state"
),
align
:
"
left
"
,
align
:
"
center
"
,
high
:
true
,
high
:
true
,
code
:
"Process.Status"
code
:
"Process.Status"
,
width
:
80
,
},
},
{
{
key
:
"
remark
"
,
key
:
"
drawNum
"
,
title
:
this
.
l
(
"
remark
"
),
title
:
this
.
l
(
"
drawNum
"
),
align
:
"left"
,
align
:
"left"
,
easy
:
true
,
easy
:
true
,
high
:
true
high
:
true
},
},
{
{
key
:
"drawNum"
,
key
:
"creationTime"
,
title
:
this
.
l
(
"drawNum"
),
title
:
this
.
l
(
"creationTime"
),
hide
:
true
,
align
:
"left"
,
align
:
"left"
,
easy
:
true
,
hide
:
true
,
high
:
true
},
{
key
:
"creatorUserId"
,
title
:
this
.
l
(
"creatorUserId"
),
hide
:
true
,
align
:
"left"
,
hide
:
true
,
},
{
key
:
"lastModificationTime"
,
title
:
this
.
l
(
"lastModificationTime"
),
hide
:
true
,
align
:
"left"
,
hide
:
true
,
},
{
key
:
"lastModifierUserId"
,
title
:
this
.
l
(
"lastModifierUserId"
),
hide
:
true
,
align
:
"left"
,
hide
:
true
,
},
{
key
:
"isDeleted"
,
title
:
this
.
l
(
"isDeleted"
),
hide
:
true
,
align
:
"left"
,
hide
:
true
,
},
{
key
:
"deletionTime"
,
title
:
this
.
l
(
"deletionTime"
),
hide
:
true
,
align
:
"left"
,
hide
:
true
,
},
{
key
:
"deleterUserId"
,
title
:
this
.
l
(
"deleterUserId"
),
hide
:
true
,
align
:
"left"
,
hide
:
true
,
},
},
{
{
title
:
"操作"
,
title
:
"操作"
,
...
...
pages/technology/edit.vue
View file @
8ab46640
...
@@ -129,7 +129,7 @@
...
@@ -129,7 +129,7 @@
<Col
:span=
"24"
>
<Col
:span=
"24"
>
<FormItem
label=
"多媒体附件"
prop=
"files"
>
<FormItem
label=
"多媒体附件"
prop=
"files"
>
<files
/>
<files
ref=
"refFile"
:parms=
"parms"
fileFormat
/>
</FormItem>
</FormItem>
</Col>
</Col>
</Row>
</Row>
...
@@ -154,11 +154,18 @@ export default {
...
@@ -154,11 +154,18 @@ export default {
entity
:
{},
entity
:
{},
rules
:
{
rules
:
{
name
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}]
name
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}]
},
parms
:
{
app
:
"technology"
,
eid
:
this
.
uid
,
name
:
""
,
field
:
""
}
}
};
};
},
},
props
:
{
props
:
{
eid
:
Number
eid
:
Number
,
uid
:
String
,
},
},
mounted
()
{
mounted
()
{
if
(
this
.
eid
>
0
)
{
if
(
this
.
eid
>
0
)
{
...
@@ -168,6 +175,8 @@ export default {
...
@@ -168,6 +175,8 @@ export default {
methods
:
{
methods
:
{
load
(
v
)
{
load
(
v
)
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
this
.
$refs
.
refFile
.
intFilesClone
();
this
.
parms
.
eid
=
this
.
uid
;
this
.
entity
=
r
.
result
;
this
.
entity
=
r
.
result
;
});
});
},
},
...
@@ -175,6 +184,7 @@ export default {
...
@@ -175,6 +184,7 @@ export default {
this
.
$refs
.
form
.
validate
(
v
=>
{
this
.
$refs
.
form
.
validate
(
v
=>
{
if
(
v
)
{
if
(
v
)
{
this
.
disabled
=
true
;
this
.
disabled
=
true
;
this
.
entity
.
fileId
=
this
.
uid
;
Api
.
update
(
this
.
entity
)
Api
.
update
(
this
.
entity
)
.
then
(
r
=>
{
.
then
(
r
=>
{
this
.
disabled
=
false
;
this
.
disabled
=
false
;
...
@@ -227,6 +237,8 @@ export default {
...
@@ -227,6 +237,8 @@ export default {
if
(
v
!=
0
)
{
if
(
v
!=
0
)
{
this
.
load
(
v
);
this
.
load
(
v
);
}
}
},
uid
(
v
)
{
}
}
}
}
};
};
...
...
pages/technology/index.vue
View file @
8ab46640
<
style
lang=
"less"
>
<
style
lang=
"less"
>
@import "./technolog.less";
@import "./technolog.less";
.lay100 {
height: calc(100vh - 105px);
background-color: #f5f6fa;
.con {
padding: 5px 5px 0px 10px;
}
.con_bord{
// margin: 15px 32px;
box-shadow: #c7c7c7 1px 2px 7px 3px;
}
background: rgba(245,246,250,1);
}
.fullWindow {
.fullWindow {
position: fixed;
position: fixed;
width: 100%;
width: 100%;
...
@@ -65,8 +54,15 @@
...
@@ -65,8 +54,15 @@
<Button
type=
"primary"
@
click=
"add"
>
新增
</Button>
<Button
type=
"primary"
@
click=
"add"
>
新增
</Button>
</
template
>
</
template
>
</DataGrid>
</DataGrid>
<Modal
v-model=
"modal"
:title=
"title"
width=
"1200"
footer-hide
>
<Modal
v-model=
"modal"
:title=
"title"
width=
"1120"
footer-hide
>
<component
:is=
"detail"
:eid=
"curId"
@
on-close=
"cancel"
@
on-ok=
"ok"
/>
<component
:is=
"detail"
:eid=
"curId"
:uid=
"uId"
:title=
"title"
@
on-close=
"cancel"
@
on-ok=
"ok"
/>
</Modal>
</Modal>
<div
class=
"fullWindow flex fd"
v-if=
"viewModal"
>
<div
class=
"fullWindow flex fd"
v-if=
"viewModal"
>
<div
class=
"top flex"
>
<div
class=
"top flex"
>
...
@@ -85,7 +81,7 @@
...
@@ -85,7 +81,7 @@
{{l('version')}}:
{{l('version')}}:
<span
class=
"grayTitle"
>
{{titleObj.version}}
</span>
<span
class=
"grayTitle"
>
{{titleObj.version}}
</span>
<!-- {{l('departmentId')}}:
<!-- {{l('departmentId')}}:
<span class="grayTitle">{{titleObj.departmentId}}</span>
-->
<span class="grayTitle">{{titleObj.departmentId}}</span>-->
</div>
</div>
</div>
</div>
<div
class=
"fg"
>
<div
class=
"fg"
>
...
@@ -122,6 +118,7 @@ export default {
...
@@ -122,6 +118,7 @@ export default {
src
:
null
,
src
:
null
,
detail
:
null
,
detail
:
null
,
curId
:
0
,
curId
:
0
,
uId
:
""
,
columns
:
[
columns
:
[
{
key
:
"id"
,
title
:
this
.
$t
(
"id"
),
hide
:
true
,
align
:
"left"
},
{
key
:
"id"
,
title
:
this
.
$t
(
"id"
),
hide
:
true
,
align
:
"left"
},
{
{
...
@@ -190,7 +187,7 @@ export default {
...
@@ -190,7 +187,7 @@ export default {
{
{
key
:
"isMain"
,
key
:
"isMain"
,
title
:
this
.
l
(
"isMain"
),
title
:
this
.
l
(
"isMain"
),
align
:
"
left
"
,
align
:
"
center
"
,
width
:
80
,
width
:
80
,
high
:
true
,
high
:
true
,
code
:
"Process.state"
code
:
"Process.state"
...
@@ -214,7 +211,8 @@ export default {
...
@@ -214,7 +211,8 @@ export default {
{
{
key
:
"isEffect"
,
key
:
"isEffect"
,
title
:
this
.
l
(
"isEffect"
),
title
:
this
.
l
(
"isEffect"
),
align
:
"left"
,
align
:
"center"
,
width
:
80
,
high
:
true
,
high
:
true
,
code
:
"Process.Status"
code
:
"Process.Status"
},
},
...
@@ -222,7 +220,8 @@ export default {
...
@@ -222,7 +220,8 @@ export default {
key
:
"versionnotes"
,
key
:
"versionnotes"
,
title
:
this
.
l
(
"versionnotes"
),
title
:
this
.
l
(
"versionnotes"
),
align
:
"left"
,
align
:
"left"
,
high
:
true
high
:
true
,
hide
:
true
},
},
{
{
key
:
"phase"
,
key
:
"phase"
,
...
@@ -241,18 +240,26 @@ export default {
...
@@ -241,18 +240,26 @@ export default {
{
{
key
:
"isSendPpm"
,
key
:
"isSendPpm"
,
title
:
this
.
l
(
"isSendPpm"
),
title
:
this
.
l
(
"isSendPpm"
),
align
:
"
left
"
,
align
:
"
center
"
,
width
:
1
8
0
,
width
:
1
4
0
,
high
:
true
,
high
:
true
,
code
:
"Process.Status"
code
:
"Process.Status"
},
},
{
{
title
:
"操作"
,
title
:
"操作"
,
key
:
"action"
,
key
:
"action"
,
width
:
1
4
0
,
width
:
1
8
0
,
align
:
"center"
,
align
:
"center"
,
render
:
(
h
,
params
)
=>
{
render
:
(
h
,
params
)
=>
{
return
h
(
"div"
,
{
class
:
"action"
},
[
return
h
(
"div"
,
{
class
:
"action"
},
[
h
(
"op"
,
{
attrs
:
{
oprate
:
"detail"
},
on
:
{
click
:
()
=>
this
.
viewprocess
(
params
.
row
)
}
},
"预览"
),
h
(
h
(
"op"
,
"op"
,
{
{
...
@@ -261,12 +268,19 @@ export default {
...
@@ -261,12 +268,19 @@ export default {
},
},
"查看"
"查看"
),
),
//h('op', { attrs: { oprate: 'copy' }, on: { click: () => this.copy(params.row.id) } }, '克隆'),
h
(
"op"
,
{
attrs
:
{
oprate
:
"copy"
},
on
:
{
click
:
()
=>
this
.
copy
(
params
.
row
.
id
)
}
},
"克隆"
),
h
(
h
(
"op"
,
"op"
,
{
{
attrs
:
{
oprate
:
"edit"
},
attrs
:
{
oprate
:
"edit"
},
on
:
{
click
:
()
=>
this
.
edit
(
params
.
row
.
id
)
}
on
:
{
click
:
()
=>
this
.
edit
(
params
.
row
)
}
},
},
"编辑"
"编辑"
),
),
...
@@ -288,7 +302,8 @@ export default {
...
@@ -288,7 +302,8 @@ export default {
routingType
:
0
,
//工艺类型
routingType
:
0
,
//工艺类型
version
:
""
,
//工艺版本
version
:
""
,
//工艺版本
departmentId
:
null
//车间
departmentId
:
null
//车间
}
},
processviewModal
:
false
};
};
},
},
created
()
{
created
()
{
...
@@ -364,8 +379,25 @@ export default {
...
@@ -364,8 +379,25 @@ export default {
// this.detail = () => import("./detail");
// this.detail = () => import("./detail");
// this.modal = true;
// this.modal = true;
// },
// },
edit
(
id
)
{
viewprocess
(
row
)
{
this
.
curId
=
id
;
this
.
curId
=
row
.
id
;
if
(
row
.
fileId
)
{
this
.
uId
=
row
.
fileId
;
}
else
{
this
.
uId
=
this
.
$u
.
guid
();
//未上传过文件
}
this
.
title
=
"预览"
;
this
.
detail
=
()
=>
import
(
"./processview"
);
this
.
modal
=
true
;
},
edit
(
row
)
{
this
.
curId
=
row
.
id
;
if
(
row
.
fileId
)
{
this
.
uId
=
row
.
fileId
;
}
else
{
this
.
uId
=
this
.
$u
.
guid
();
//未上传过文件
}
this
.
title
=
"编辑"
;
this
.
title
=
"编辑"
;
this
.
detail
=
()
=>
import
(
"./edit"
);
this
.
detail
=
()
=>
import
(
"./edit"
);
this
.
modal
=
true
;
this
.
modal
=
true
;
...
@@ -389,3 +421,24 @@ export default {
...
@@ -389,3 +421,24 @@ export default {
}
}
};
};
</
script
>
</
script
>
<
style
lang=
"less"
scoped
>
.order-quotation {
height: 100vh !important;
}
.table {
margin-top: 15px;
}
.topTitle {
height: 30px;
.table_title {
float: left;
width: 340px;
}
.title_btn {
margin-top: 1px;
}
}
.single-page-con {
overflow-y: hidden !important;
}
</
style
>
pages/technology/menu.less
0 → 100644
View file @
8ab46640
.iview_cont{
border-right: 1px solid #000;
width: 100%;
// height: 60px;
// line-height: 60px;
}
.iview_cont6{
height: 60px;
line-height: 60px;
}
.title_cont{
margin: 10px auto;
width: auto;
display: inline-block;
}
.iview_cont01{
display: inline-block;
margin: 5px 6px;
font-weight: bold;
span{
display: inline;
}
.min120{
min-width: 120px;
}
}
.box{
width: 100%;
height: 40px;
border-bottom: 1px solid #fff;
}
.h1{
font-size: 36px;
display:inline-block;
width: auto;
padding: 0 8px;
height: 46px;
border-bottom: 1px solid #000;
margin: 40px auto;
}
.table_row02{
border-top: 1px solid #000;
border-bottom: 1px solid #000;
height:62px;
line-height: 60px;
text-align: center;
margin-top: 10px;
}
.row03{
.tex_in10{
text-indent: 12px;
text-align: inherit!important;
}
}
.auto_row {
min-height: 60px!important;
height: auto!important;
padding: 5px;
}
.outP table thead tr th,.outP table tbody tr td{
padding: 2px 0;
// height: 30px;
line-height: 28px;
}
.outP table tbody tr td{
padding: 0 5px;
}
.tit01{ min-width: 70px; }
.tit02{ min-width: 100px; }
.tit03{ min-width: 300px; }
.tit04{ min-width: 100px; }
.tit05{ min-width: 100px; }
.title01{ min-width: 110px; }
.title02{ min-width: 300px; }
.title03{ min-width: 100px; }
.title04{ min-width: 100px; }
.title05{ min-width: 100px; }
.title06{ min-width: 100px; }
.outPdf table, .outPdf table tr th, .outPdf table tr td {
border-color: #000;
}
// 工艺文件
.outP {
.iviewimg {
width: 100%;
height: 70px;
text-align: center;
margin: 0 0 60px;
}
}
.table_box {
border: 1px solid #000;
.row_title {
height: 40px;
}
.table_row {
line-height: 40px;
border-bottom: 1px solid #000;
div {
text-align: center;
}
.box {
width: 100%;
height: 40px;
border-bottom: 1px solid #fff;
}
}
.row_label {
border-right: 1px solid #000;
}
.iview_cont {
border-right: 1px solid #000;
width: 100%;
height: 40px;
}
.table_row02 {
border-top: 1px solid #000;
border-bottom: 1px solid #000;
height: 42px;
line-height: 40px;
text-align: center;
margin-top: 10px;
}
}
.center {
text-align: center;
}
.title_cont {
margin: 10px auto;
width: auto;
display: inline-block;
}
.iview_cont01 {
display: inline-block;
margin: 0 6px;
font-weight: bold;
}
.f16 {
font-size: 16px;
}
.h1 {
font-size: 36px;
display: inline-block;
width: auto;
padding: 0 8px;
height: 46px;
border-bottom: 1px solid #000;
margin: 40px auto;
}
.outP table thead tr th,
.outP table tbody tr td {
padding: 2px 0;
// height : 30px;
line-height: 28px;
}
.outP table tbody tr td {
padding: 0 5px;
}
.tit01 {
min-width: 70px;
}
.tit02 {
min-width: 100px;
}
.tit03 {
min-width: 300px;
}
.tit04 {
min-width: 100px;
}
.tit05 {
min-width: 100px;
}
.title01 {
min-width: 110px;
}
.title02 {
min-width: 300px;
}
.title03 {
min-width: 100px;
}
.title04 {
min-width: 100px;
}
.title05 {
min-width: 100px;
}
.title06 {
min-width: 100px;
}
.outPdf table,
.outPdf table tr th,
.outPdf table tr td {
border-color: #000;
}
\ No newline at end of file
pages/technology/processview.vue
0 → 100644
View file @
8ab46640
<
style
lang=
"less"
>
@import "./menu.less";
</
style
>
<
template
>
<div>
<Row
v-show=
"circleModal"
style=
"height:300px"
>
<Col
class=
"demo-spin-col"
span=
"24"
>
<Spin
fix
style=
"margin-top:80px"
>
<Icon
type=
"ios-loading"
size=
"36"
class=
"demo-spin-icon-load"
></Icon>
<div>
数据加载中......
</div>
</Spin>
</Col>
</Row>
<Row
v-show=
"!circleModal&&!dataSatus"
>
<Col
span=
"24"
>
<div
class=
"out"
>
<Row
class=
"table_row"
style=
"width:100%"
>
<Button
class=
"fr"
v-if=
"isoutpdf"
type=
"primary"
@
click=
"$u.outPdf('.outP','工艺规程')"
>
导出pdf
</Button>
</Row>
</div>
<div
class=
"outP"
>
<div
class=
"table_box part01"
style=
"min-height:400px"
>
<Row
class=
"table_row"
style=
"width:100%"
>
<Col
span=
"3"
>
<div
class=
"row_label"
>
工艺文件编号
</div>
</Col>
<Col
span=
"9"
>
<div
class=
"iview_cont"
>
<label
v-text=
"formValidate.code"
></label>
</div>
</Col>
<Col
span=
"3"
>
<div
class=
"row_label"
>
任务类型
</div>
</Col>
<Col
span=
"9"
>
<div
class=
"iview_cont border_none"
>
<label
v-text=
"formValidate.task_type_str"
></label>
</div>
</Col>
</Row>
<Row
class=
"table_row"
>
<Col
span=
"3"
>
<div
class=
"row_label"
>
工艺文件版本
</div>
</Col>
<Col
span=
"9"
>
<div
class=
"iview_cont"
>
<label
v-text=
"formValidate.versiondesc"
></label>
</div>
</Col>
<Col
span=
"3"
>
<div
class=
"row_label"
>
研制方式
</div>
</Col>
<Col
span=
"9"
>
<div
class=
"iview_cont border_none"
>
<label
v-text=
"formValidate.development_mode_str"
></label>
</div>
</Col>
</Row>
<Row
class=
"center"
>
<div
class=
"h1"
v-text=
"formValidate.name"
></div>
</Row>
<Row
class=
"center"
>
<div
class=
"title_cont f16"
>
<div
class=
"iview_cont01"
>
<span>
产品名称:
</span>
<label
class=
"table_row"
v-text=
"formValidate.productName"
></label>
</div>
<div
class=
"iview_cont01"
>
<span>
产品代号:
</span>
<label
class=
"table_row"
v-text=
"formValidate.productCode"
></label>
</div>
</div>
</Row>
<Row
class=
"center f16"
>
<div
class=
"iview_cont01"
>
<span>
编 制:
</span>
<label
class=
"table_row min120"
v-text=
"formValidate.authorName"
></label>
</div>
</Row>
<Row
class=
"center f16"
>
<div
class=
"iview_cont01"
>
<span>
校 对:
</span>
<label
class=
"table_row min120"
v-text=
"formValidate.proofreader"
></label>
</div>
</Row>
<Row
class=
"center f16"
>
<div
class=
"iview_cont01"
>
<span>
批 准:
</span>
<label
class=
"table_row min120"
v-text=
"formValidate.approver"
></label>
</div>
</Row>
<Row
class=
"table_row02"
>
<Col
span=
"3"
>
<div
class=
"iview_cont"
>
更改单编号
</div>
</Col>
<Col
span=
"5"
>
<div
class=
"iview_cont iview_cont6"
>
<label
v-text=
"formValidate.change_order_code"
></label>
</div>
</Col>
<Col
span=
"3"
>
<div
class=
"iview_cont"
>
更改单日期
</div>
</Col>
<Col
span=
"5"
>
<div
class=
"iview_cont iview_cont6"
>
<label
v-text=
"formValidate.change_order_date"
></label>
</div>
</Col>
<Col
span=
"3"
>
<div
class=
"iview_cont"
>
更改办法
</div>
</Col>
<Col
span=
"5"
>
<div
class=
"iview_cont iview_cont6 border_none"
>
<label
v-text=
"formValidate.change_method"
></label>
</div>
</Col>
</Row>
</div>
<div
class=
"table_box part01"
>
<Row
class=
"table_row center row_title"
>
<h2>
工艺内容
</h2>
</Row>
<Row
class=
"table_row row03 auto_row"
>
<div
style=
"min-height:300px"
v-html=
"formValidate.remark"
class=
"tex_in10"
></div>
</Row>
<Row
class=
"table_row center row_title"
>
<h2>
工艺附图
</h2>
</Row>
<Row
class=
"table_row row03 auto_row"
>
<div
style=
"min-height:300px"
class=
"tex_in10"
>
<img
v-for=
"(item2,index2) in formValidate.files"
:key=
"index2"
:src=
" downUrl +item2.url"
style=
"max-width:1000px"
/>
</div>
</Row>
</div>
<Row
class=
"center f16"
>
<h2>
工艺过程卡
</h2>
</Row>
<div
class=
"body-box part01"
>
<table>
<thead>
<tr>
<th
class=
"tit01"
>
序号
</th>
<th
class=
"tit02"
>
工序
</th>
<th
class=
"tit03"
>
工序内容及要求
</th>
<th
class=
"tit04"
>
操作者
</th>
<th
class=
"tit05"
>
检验者
</th>
</tr>
</thead>
<tbody>
<template
v-for=
"(item5,index5) in formValidate.details"
>
<tr>
<td
class=
"tl"
>
{{
item5
.
taskseq
}}
</td>
<td
class=
"tl"
>
{{
item5
.
name
}}
</td>
<td
class=
"tl"
>
<div
v-html=
"item5.task_content"
class=
"html"
></div>
</td>
<td
class=
"tl"
>
{{
item5
.
operator
}}
</td>
<td
class=
"tl"
>
{{
item5
.
proofreader
}}
</td>
</tr>
<tr
v-for=
"(item6,index6) in item5.step"
>
<td
class=
"tl"
>
{{
item6
.
taskseq
}}
</td>
<td
class=
"tl"
>
{{
item6
.
name
}}
</td>
<td
class=
"tl"
>
<div
v-html=
"item6.task_content"
class=
"html"
></div>
</td>
<td
class=
"tl"
>
{{
item6
.
operator
}}
</td>
<td
class=
"tl"
>
{{
item6
.
proofreader
}}
</td>
</tr>
<tr>
<td
class=
"tl"
></td>
<td
class=
"tl"
></td>
<td
class=
"tl"
></td>
<td
class=
"tl"
></td>
<td
class=
"tl"
></td>
</tr>
</
template
>
</tbody>
</table>
</div>
<Row
class=
"center f16"
>
<h2>
检测记录表
</h2>
</Row>
<div
class=
"body-box part01"
>
<table>
<thead>
<tr>
<th
class=
"title01"
>
检测工序号
</th>
<th
class=
"title02"
>
检测项目内容
</th>
<th
class=
"title03"
>
检测结果
</th>
<th
class=
"title04"
>
合格判定
</th>
<th
class=
"title05"
>
检验员
</th>
<th
class=
"title06"
>
备注
</th>
</tr>
</thead>
<tbody>
<
template
v-for=
"(item7,index7) in formValidate.qcards"
>
<tr>
<td
class=
"tl"
>
{{
item7
.
taskseq
}}
</td>
<td
class=
"tl"
>
{{
item7
.
check_content
}}
</td>
<td
class=
"tl"
>
{{
item7
.
checkresult
}}
</td>
<td
class=
"tl"
>
{{
item7
.
result
}}
</td>
<td
class=
"tl"
>
{{
item7
.
checker
}}
</td>
<td
class=
"tl"
>
{{
item7
.
remarks
}}
</td>
</tr>
</
template
>
</tbody>
</table>
</div>
</div>
</Col>
</Row>
<Row
style=
"height:300px"
v-show=
"!circleModal&&dataSatus"
>
<Col
span=
"24"
class=
"tc"
>
<div
style=
"margin-top:80px"
>
数据加载失败!
</div>
</Col>
</Row>
</div>
</template>
<
script
>
import
service
from
"@/plugins/request"
;
export
default
{
name
:
"processview"
,
data
()
{
return
{
filesurl
:
""
,
downUrl
:
fileUrlDown
,
formValidate
:
{
files
:
[],
details
:
[],
qcards
:
[]
},
circleModal
:
true
,
dataSatus
:
false
,
nameList
:
[],
parms
:
{
app
:
"technology"
,
eid
:
this
.
uid
,
name
:
""
,
field
:
""
}
};
},
props
:
{
//设置工艺、创建工艺
isoutpdf
:
{
type
:
Boolean
,
default
:
true
},
eid
:
Number
,
uid
:
String
},
mounted
()
{
if
(
this
.
eid
>
0
)
{
this
.
load
(
this
.
eid
);
}
},
methods
:
{
load
(
v
)
{
this
.
circleModal
=
true
;
this
.
dataSatus
=
false
;
var
url
=
`
${
designUrl
}
/routingheader/getprocessinfo?headerid=`
+
v
;
service
.
get
(
`
${
url
}
`
)
.
then
(
response
=>
{
this
.
circleModal
=
false
;
this
.
formValidate
=
response
.
result
;
this
.
loadImg
();
if
(
this
.
formValidate
.
change_order_code
==
""
||
typeof
this
.
formValidate
.
change_order_code
==
"undefined"
)
{
this
.
formValidate
.
change_order_date
=
""
;
}
if
(
typeof
this
.
formValidate
.
production_batch
==
"undefined"
)
{
this
.
formValidate
.
production_batch
=
" "
;
}
if
(
typeof
this
.
formValidate
.
print_data_name
==
"undefined"
)
{
this
.
formValidate
.
print_data_name
=
" "
;
}
})
.
catch
(
err
=>
{
this
.
circleModal
=
false
;
this
.
dataSatus
=
true
;
});
},
loadImg
()
{
this
.
nameList
=
[];
this
.
formValidate
.
files
=
[];
//查询上传到文件服务器上的文件
this
.
$http
.
sysUser
.
getFile
(
this
.
parms
).
then
(
res
=>
{
if
(
res
.
data
!=
[]
&&
res
.
data
.
length
>
0
)
{
res
.
data
.
forEach
(
data
=>
{
let
objImag
=
{};
objImag
.
fileName
=
data
.
fileName
;
objImag
.
url
=
data
.
downloadPath
;
objImag
.
id
=
data
.
id
;
this
.
nameList
.
push
(
objImag
);
});
this
.
formValidate
.
files
=
this
.
nameList
;
}
});
}
},
watch
:
{
eid
(
v
)
{
if
(
v
!=
0
)
{
this
.
load
(
v
);
}
}
}
};
</
script
>
<
style
type=
"less"
scoped
>
.demo-spin-icon-load
{
animation
:
ani-demo-spin
1s
linear
infinite
;
}
@keyframes
ani-demo-spin
{
from
{
transform
:
rotate
(
0deg
);
}
50
%
{
transform
:
rotate
(
180deg
);
}
to
{
transform
:
rotate
(
360deg
);
}
}
.demo-spin-col
{
height
:
100px
;
position
:
relative
;
border
:
0px
solid
#eee
;
}
</
style
>
pages/test.vue
View file @
8ab46640
<
style
lang=
"less"
>
<
style
lang=
"less"
>
.test_layout {
.test_layout {
height:
5
0%;
height:
10
0%;
.bg1{
.bg1{
background:#fefefe ;
background:#fefefe ;
}
}
.fg {
// &.fg {
background-color: rgba(234,45,198, 1);
// // overflow: auto;
overflow: auto;
// }
}
}
}
.layout-copy {
.layout-copy {
text-align: center;
text-align: center;
...
@@ -20,19 +19,14 @@
...
@@ -20,19 +19,14 @@
<div>
<div>
<Menu
mode=
"horizontal"
active-name=
"1"
>
<Menu
mode=
"horizontal"
active-name=
"1"
>
<div
class=
"layout-assistant"
>
<div
class=
"layout-assistant"
>
<MenuItem
name=
"1"
>
Option 1
</MenuItem>
<MenuItem
name=
"1"
to=
"/test/user"
>
人员选择
</MenuItem>
<MenuItem
name=
"2"
>
Option 2
</MenuItem>
<MenuItem
name=
"2"
>
Option 2
</MenuItem>
<MenuItem
name=
"3"
>
Option 3
</MenuItem>
<MenuItem
name=
"3"
>
Option 3
</MenuItem>
</div>
</div>
</Menu>
</Menu>
</div>
</div>
<div
class=
"fg"
>
<div
class=
"fg"
>
<h4
v-for=
"i in 200"
>
<nuxt-child></nuxt-child>
{{
i
}}
内容部分
</h4>
</div>
<div>
这是一个问题
</div>
</div>
</div>
</div>
</
template
>
</
template
>
...
...
pages/test/user.vue
View file @
8ab46640
<
template
>
<
template
>
<div>
<div
style=
"padding:50px;"
>
<UserSelect
v-model=
"user"
:multiple=
"true"
:type=
"1"
/>
<UserSelect
v-model=
"user"
:multiple=
"true"
theme=
"list"
/>
<DepartmentSelect
v-model=
"dep"
/>
<!--
<DepartmentSelect
v-model=
"dep"
/>
<Button
@
click=
"setUser"
>
Set
</Button>
{{
dep
}}
-->
{{
user
}}
{{
user
}}
<Button
@
click=
"setUser"
>
Set
</Button>
{{
dep
}}
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
...
...
src/assets/css/menu.css
0 → 100644
View file @
8ab46640
.iview_cont
{
border-right
:
1px
solid
#000
;
width
:
100%
;
}
.iview_cont6
{
height
:
60px
;
line-height
:
60px
;
}
.title_cont
{
margin
:
10px
auto
;
width
:
auto
;
display
:
inline-block
;
}
.iview_cont01
{
display
:
inline-block
;
margin
:
5px
6px
;
font-weight
:
bold
;
}
.iview_cont01
span
{
display
:
inline
;
}
.iview_cont01
.min120
{
min-width
:
120px
;
}
.box
{
width
:
100%
;
height
:
40px
;
border-bottom
:
1px
solid
#fff
;
}
.h1
{
font-size
:
36px
;
display
:
inline-block
;
width
:
auto
;
padding
:
0
8px
;
height
:
46px
;
border-bottom
:
1px
solid
#000
;
margin
:
40px
auto
;
}
.table_row02
{
border-top
:
1px
solid
#000
;
border-bottom
:
1px
solid
#000
;
height
:
62px
;
line-height
:
60px
;
text-align
:
center
;
margin-top
:
10px
;
}
.row03
.tex_in10
{
text-indent
:
12px
;
text-align
:
inherit
!important
;
}
.auto_row
{
min-height
:
60px
!important
;
height
:
auto
!important
;
padding
:
5px
;
}
.outP
table
thead
tr
th
,
.outP
table
tbody
tr
td
{
padding
:
2px
0
;
line-height
:
28px
;
}
.outP
table
tbody
tr
td
{
padding
:
0
5px
;
}
.tit01
{
min-width
:
70px
;
}
.tit02
{
min-width
:
100px
;
}
.tit03
{
min-width
:
300px
;
}
.tit04
{
min-width
:
100px
;
}
.tit05
{
min-width
:
100px
;
}
.title01
{
min-width
:
110px
;
}
.title02
{
min-width
:
300px
;
}
.title03
{
min-width
:
100px
;
}
.title04
{
min-width
:
100px
;
}
.title05
{
min-width
:
100px
;
}
.title06
{
min-width
:
100px
;
}
.outPdf
table
,
.outPdf
table
tr
th
,
.outPdf
table
tr
td
{
border-color
:
#000
;
}
.outP
.iviewimg
{
width
:
100%
;
height
:
70px
;
text-align
:
center
;
margin
:
0
0
60px
;
}
.table_box
{
border
:
1px
solid
#000
;
}
.table_box
.row_title
{
height
:
40px
;
}
.table_box
.table_row
{
line-height
:
40px
;
border-bottom
:
1px
solid
#000
;
}
.table_box
.table_row
div
{
text-align
:
center
;
}
.table_box
.table_row
.box
{
width
:
100%
;
height
:
40px
;
border-bottom
:
1px
solid
#fff
;
}
.table_box
.row_label
{
border-right
:
1px
solid
#000
;
}
.table_box
.iview_cont
{
border-right
:
1px
solid
#000
;
width
:
100%
;
height
:
40px
;
}
.table_box
.table_row02
{
border-top
:
1px
solid
#000
;
border-bottom
:
1px
solid
#000
;
height
:
42px
;
line-height
:
40px
;
text-align
:
center
;
margin-top
:
10px
;
}
.center
{
text-align
:
center
;
}
.title_cont
{
margin
:
10px
auto
;
width
:
auto
;
display
:
inline-block
;
}
.iview_cont01
{
display
:
inline-block
;
margin
:
0
6px
;
font-weight
:
bold
;
}
.f16
{
font-size
:
16px
;
}
.h1
{
font-size
:
36px
;
display
:
inline-block
;
width
:
auto
;
padding
:
0
8px
;
height
:
46px
;
border-bottom
:
1px
solid
#000
;
margin
:
40px
auto
;
}
.outP
table
thead
tr
th
,
.outP
table
tbody
tr
td
{
padding
:
2px
0
;
line-height
:
28px
;
}
.outP
table
tbody
tr
td
{
padding
:
0
5px
;
}
.tit01
{
min-width
:
70px
;
}
.tit02
{
min-width
:
100px
;
}
.tit03
{
min-width
:
300px
;
}
.tit04
{
min-width
:
100px
;
}
.tit05
{
min-width
:
100px
;
}
.title01
{
min-width
:
110px
;
}
.title02
{
min-width
:
300px
;
}
.title03
{
min-width
:
100px
;
}
.title04
{
min-width
:
100px
;
}
.title05
{
min-width
:
100px
;
}
.title06
{
min-width
:
100px
;
}
.outPdf
table
,
.outPdf
table
tr
th
,
.outPdf
table
tr
td
{
border-color
:
#000
;
}
src/assets/css/table.css
0 → 100644
View file @
8ab46640
.transmit_box
{
height
:
100%
;
}
.transmit_title
{
padding-top
:
10px
;
}
.border_bottom
{
border-bottom
:
1px
solid
#e4e6ed
;
}
.transmit_content
{
padding
:
20px
0
0
0
;
height
:
calc
(
100%
-
108px
);
}
.select
{
color
:
#a7b8cc
;
font-size
:
22px
;
}
.wuliao_left
{
float
:
left
;
width
:
310px
;
margin-right
:
15px
;
height
:
500px
;
border
:
1px
solid
#e4e6ed
;
overflow-y
:
auto
;
overflow-x
:
hidden
;
}
.wuliao_right
{
width
:
calc
(
100%
-
325px
);
height
:
calc
(
100%
-
16px
);
border
:
1px
solid
#e4e6ed
;
overflow-y
:
auto
;
overflow-x
:
hidden
;
}
.card_title
{
background
:
#f8f8f9
;
padding
:
8px
15px
;
border-bottom
:
1px
solid
#e4e6ed
;
position
:
relative
;
height
:
46px
;
}
.state
{
float
:
right
;
color
:
#515a6e
;
padding
:
5px
5px
;
}
.transmit_cont
{
position
:
absolute
;
top
:
28px
;
right
:
0px
;
border-radius
:
4px
;
width
:
105px
;
height
:
155px
;
background
:
#fff
;
box-shadow
:
0px
0px
6px
rgba
(
0
,
0
,
0
,
0.2
);
}
.state_body
{
padding
:
10px
0px
;
text-align
:
center
;
line-height
:
24px
;
}
.state_footer
{
border-top
:
1px
solid
#e4e6ed
;
padding
:
3px
;
}
.title_btn02
{
padding
:
0px
9px
;
border
:
none
;
}
.color02
{
color
:
#249e91
;
}
.card_box
{
cursor
:
pointer
;
width
:
270px
;
height
:
116px
;
border
:
1px
solid
#e4e6ed
;
margin
:
20px
auto
;
}
.hover
{
cursor
:
pointer
;
width
:
270px
;
height
:
116px
;
border
:
1px
solid
#e4e6ed
;
margin
:
20px
auto
;
background
:
#f5f7fd
;
}
.card_body
{
width
:
230px
;
float
:
left
;
padding
:
10px
0
0
10px
;
}
.card_right
{
cursor
:
pointer
;
background
:
#e4e6ed
;
height
:
114px
;
text-align
:
center
;
float
:
left
;
width
:
38px
;
}
.yellow
{
background
:
#ffc000
;
}
.pink
{
background
:
#ff7a8b
;
}
.green
{
background
:
#27c149
;
}
.card_right
>
img
{
margin-top
:
48px
;
}
.list_item
{
height
:
24px
;
line-height
:
24px
;
}
.list_item
img
{
width
:
16px
;
height
:
16px
;
}
.table01
{
padding
:
0
10px
;
}
.new_box
.photo
{
float
:
left
;
margin
:
0
20px
0
0
;
width
:
calc
(
40%
-
20px
);
border-right
:
solid
1px
#bebcbc
;
text-align
:
center
;
}
.new_box
.photo
img
{
width
:
350px
!important
;
height
:
300px
!important
;
}
.new_box
.table
{
float
:
left
;
width
:
calc
(
60%
-
20px
);
}
.fixed_box
{
overflow-y
:
auto
;
overflow-x
:
hidden
;
padding
:
0
10px
;
}
.outP
.iviewimg
{
width
:
100%
;
height
:
70px
;
text-align
:
center
;
margin
:
0
0
60px
;
}
.table_box
{
border
:
1px
solid
#000
;
}
.table_box
.row_title
{
height
:
40px
;
}
.table_box
.table_row
{
line-height
:
40px
;
border-bottom
:
1px
solid
#000
;
}
.table_box
.table_row
div
{
text-align
:
center
;
}
.table_box
.table_row
.box
{
width
:
100%
;
height
:
40px
;
border-bottom
:
1px
solid
#fff
;
}
.table_box
.row_label
{
border-right
:
1px
solid
#000
;
}
.table_box
.iview_cont
{
border-right
:
1px
solid
#000
;
width
:
100%
;
height
:
40px
;
}
.table_box
.table_row02
{
border-top
:
1px
solid
#000
;
border-bottom
:
1px
solid
#000
;
height
:
42px
;
line-height
:
40px
;
text-align
:
center
;
margin-top
:
10px
;
}
.center
{
text-align
:
center
;
}
.title_cont
{
margin
:
10px
auto
;
width
:
auto
;
display
:
inline-block
;
}
.iview_cont01
{
display
:
inline-block
;
margin
:
0
6px
;
font-weight
:
bold
;
}
.f16
{
font-size
:
16px
;
}
.h1
{
font-size
:
36px
;
display
:
inline-block
;
width
:
auto
;
padding
:
0
8px
;
height
:
46px
;
border-bottom
:
1px
solid
#000
;
margin
:
40px
auto
;
}
.outP
table
thead
tr
th
,
.outP
table
tbody
tr
td
{
padding
:
2px
0
;
line-height
:
28px
;
}
.outP
table
tbody
tr
td
{
padding
:
0
5px
;
}
.tit01
{
min-width
:
70px
;
}
.tit02
{
min-width
:
100px
;
}
.tit03
{
min-width
:
300px
;
}
.tit04
{
min-width
:
100px
;
}
.tit05
{
min-width
:
100px
;
}
.title01
{
min-width
:
110px
;
}
.title02
{
min-width
:
300px
;
}
.title03
{
min-width
:
100px
;
}
.title04
{
min-width
:
100px
;
}
.title05
{
min-width
:
100px
;
}
.title06
{
min-width
:
100px
;
}
.outPdf
table
,
.outPdf
table
tr
th
,
.outPdf
table
tr
td
{
border-color
:
#000
;
}
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