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
400f53be
Commit
400f53be
authored
Sep 29, 2020
by
骆瑛
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
表格修改相关页面
parent
73641eca
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
665 additions
and
601 deletions
+665
-601
custom.less
assets/css/custom.less
+2
-2
deepBlank.less
assets/css/themes/deepBlank.less
+1
-1
default.less
assets/css/themes/default.less
+1
-1
green.less
assets/css/themes/green.less
+1
-1
index.vue
pages/technology/index.vue
+656
-585
index.vue
pages/theme/index.vue
+4
-11
No files found.
assets/css/custom.less
View file @
400f53be
//定义变量
// @import './themes/deepBlank.less';
//
@import './themes/green.less';
@import './themes/default.less';
@import './themes/green.less';
//
@import './themes/default.less';
assets/css/themes/deepBlank.less
View file @
400f53be
...
...
@@ -142,7 +142,7 @@
@table-bottom-border:#ffffff;
@action-buttons_col:#106FFE;
@add_col:#ffffff;
@buttons_bg:rgba(47, 47, 87,
0.6
);
@buttons_bg:rgba(47, 47, 87,
1
);
@add_border-right:rgba(255, 255, 255, 0.06);
//工单列表等背景色
@part_body_backcolor:#2F2F57;
...
...
assets/css/themes/default.less
View file @
400f53be
...
...
@@ -141,7 +141,7 @@
@table-bottom_line:#dcdee2;
@table-bottom-border:#ffffff;
@action-buttons_col:#515a6e;
@buttons_bg:
rgba(186, 232, 238, 0.06)
;
@buttons_bg:
#ebf7ff
;
@add_border-right:rgba(98, 97, 102, 0.06);
@add_col:#5f6470;
//工单列表等背景色
...
...
assets/css/themes/green.less
View file @
400f53be
...
...
@@ -138,7 +138,7 @@
@part_top_border:1px solid #ffffff;
@table_border-bg:transparent;
@table_line: #ffffff;
@buttons_bg:rgba(255, 255, 255,
0.6
);
@buttons_bg:rgba(255, 255, 255,
1
);
@table-bottom_line:transparent;
@table-bottom-border:#ffffff;
@action-buttons_col:#04BB8C;
...
...
pages/technology/index.vue
View file @
400f53be
<
style
lang=
"less"
>
@import "./technolog.less";
.fullWindow {
position: fixed;
width: 100%;
left: 0;
top: 50px;
bottom: 0;
right: 0;
// bottom:100%;
// right: 100%;
z-index: 100;
background-color: white;
position: fixed;
width: 100%;
left: 0;
top: 50px;
bottom: 0;
right: 0;
// bottom:100%;
// right: 100%;
z-index: 100;
background-color: white;
// background: red;
.top {
height: 42px;
line-height: 42px;
background: #f5f7f9;
}
// background: red;
.top {
height: 42px;
line-height: 42px;
background: #f5f7f9;
}
}
</
style
>
<
template
>
<Layout
class=
"lay100"
>
<Layout
class=
"lay100"
>
<Sider
hide-trigger
v-if=
"showMenu"
class=
"menu_side"
width=
"300"
>
<ProductTree
@
on-hide=
"onHide"
@
on-select=
"productSearch"
/>
<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>
<a
class=
"menu_play fr"
@
click=
"showMenuFn"
title=
"展开"
>
<Icon
type=
"ios-arrow-forward"
size=
"24"
/>
</a>
</div>
<Content
class=
"con"
:class=
"!showMenu?'con_bord':''"
>
<DataGrid
:columns=
"columns"
ref=
"grid"
:action=
"action"
exportTitle=
"工艺规程"
>
<template
slot=
"easySearch"
>
<Form
ref=
"formInline"
:model=
"easySearch"
inline
>
<FormItem
prop=
"keys"
>
<Input
placeholder=
"请输入工艺名称/工艺编号"
v-width=
"200"
v-model=
"easySearch.keys.value"
clearable
/>
<Button
type=
"primary"
class=
"search_icon"
@
click=
"search"
icon=
"ios-search"
></Button>
</FormItem>
<FormItem>
<Button
type=
"text"
class=
"search_text"
@
click=
"search"
>
高级搜索
</Button>
</FormItem>
</Form>
</
template
>
<
template
slot=
"searchForm"
>
<Search
/>
</
template
>
<
template
slot=
"buttons"
>
<Button
type=
"text"
@
click=
"add"
class=
"search_text"
icon=
"icon iconfont iconxinzeng"
>
新增
</Button>
<Dropdown
class=
"dropIcon"
@
on-click=
"changeMenu"
>
<a
href=
"javascript:void(0)"
>
<Icon
type=
"icon iconfont iconshezhi-liebiaozhanshi"
class=
"zhanshi"
/>
<Icon
type=
"ios-arrow-down"
class=
"arrow_down"
></Icon>
</a>
<DropdownMenu
slot=
"list"
>
<DropdownItem
name=
'导入'
>
<Icon
type=
"icon iconfont icondaoru"
/>
导入
</DropdownItem>
<DropdownItem
name=
'导出'
>
<Icon
type=
"icon iconfont icondaochu"
/>
导出
</DropdownItem>
</DropdownMenu>
</Dropdown>
<Button
@
click=
"openModalIm"
icon=
"icon iconfont icondaoru"
class=
"search_text"
type=
"text"
>
导入
</Button>
</
template
>
</DataGrid>
<Modal
v-model=
"modal"
:title=
"title"
width=
"1120"
footer-hide
>
<component
:is=
"detail"
:eid=
"curId"
:uid=
"uId"
:title=
"title"
:headid=
"hid"
@
on-close=
"cancel"
@
on-ok=
"ok"
/>
</Modal>
<Modal
v-model=
"documentShow"
title=
"送审"
:mask-closable=
"false"
:scrollable=
"true"
ok-text=
"确定"
cancel-text=
"取消"
fullscreen
>
<sendAudit
ref=
"sendAudit"
></sendAudit>
<Content
class=
"con"
:class=
"!showMenu ? 'con_bord' : ''"
>
<DataGrid
:columns=
"columns"
ref=
"grid"
:action=
"action"
exportTitle=
"工艺规程"
>
<template
slot=
"easySearch"
>
<Form
ref=
"formInline"
:model=
"easySearch"
inline
>
<FormItem
prop=
"keys"
>
<Input
placeholder=
"请输入工艺名称/工艺编号"
v-width=
"200"
v-model=
"easySearch.keys.value"
clearable
/>
<Button
type=
"primary"
class=
"search_icon"
@
click=
"search"
icon=
"ios-search"
></Button>
</FormItem>
<FormItem>
<Button
type=
"text"
class=
"search_text"
@
click=
"search"
>
高级搜索
</Button
>
</FormItem>
</Form>
</
template
>
<
template
slot=
"searchForm"
>
<Search
/>
</
template
>
<
template
slot=
"buttons"
>
<Button
type=
"text"
@
click=
"add"
class=
"yuan_add"
>
新增
</Button>
</
template
>
</DataGrid>
<Modal
v-model=
"modal"
:title=
"title"
width=
"1120"
footer-hide
>
<component
:is=
"detail"
:eid=
"curId"
:uid=
"uId"
:title=
"title"
:headid=
"hid"
@
on-close=
"cancel"
@
on-ok=
"ok"
/>
</Modal>
<Modal
v-model=
"documentShow"
title=
"送审"
:mask-closable=
"false"
:scrollable=
"true"
ok-text=
"确定"
cancel-text=
"取消"
fullscreen
>
<sendAudit
ref=
"sendAudit"
></sendAudit>
<div
slot=
"footer"
>
<Button
@
click=
"documentShow = false"
>
取消
</Button>
<Button
type=
"primary"
@
click=
"passDocument"
>
工艺规程送审
</Button>
</div>
</Modal>
<!-- 工艺更改弹框 -->
<routingchangeorder
ref=
"routingchangeorder"
></routingchangeorder>
<!-- 工艺更改表弹框 -->
<changelist
ref=
"changelist"
></changelist>
<div
class=
"fullWindow flex fd"
v-if=
"viewModal"
>
<div
class=
"top flex"
>
<div
v-width=
"200"
>
<a
class=
"back_href"
@
click=
"viewClose"
>
<Icon
type=
"ios-undo-outline"
size=
"24"
/>
返回工艺规程
</a>
</div>
<div
class=
"fg tc f14 fwBold blueTitle"
style=
"padding-right:200px;"
>
{{l('code')}}:
<span
class=
"grayTitle mr10"
>
{{titleObj.code}}
</span>
{{l('name')}}:
<span
class=
"grayTitle mr10"
>
{{titleObj.name}}
</span>
{{l('routingType')}}:
<span
class=
"grayTitle mr10"
>
<state
code=
"Process.Routing.routingType"
:value=
"titleObj.routingType"
type=
"text"
></state>
</span>
{{l('version')}}:
<span
class=
"grayTitle"
>
{{titleObj.version}}
</span>
{{l('departmentName')}}:
<span
class=
"grayTitle"
>
{{titleObj.departmentName}}
</span>
</div>
</div>
<div
class=
"fg"
>
<iframe
width=
"100%"
id=
"infoFrame"
height=
"100%"
frameborder=
"0"
:src=
"src"
></iframe>
</div>
<div
slot=
"footer"
>
<Button
@
click=
"documentShow = false"
>
取消
</Button>
<Button
type=
"primary"
@
click=
"passDocument"
>
工艺规程送审
</Button>
</div>
</Modal>
<!-- 工艺更改弹框 -->
<routingchangeorder
ref=
"routingchangeorder"
></routingchangeorder>
<!-- 工艺更改表弹框 -->
<changelist
ref=
"changelist"
></changelist>
<div
class=
"fullWindow flex fd"
v-if=
"viewModal"
>
<div
class=
"top flex"
>
<div
v-width=
"200"
>
<a
class=
"back_href"
@
click=
"viewClose"
>
<Icon
type=
"ios-undo-outline"
size=
"24"
/>
返回工艺规程
</a>
</div>
<div
class=
"fg tc f14 fwBold blueTitle"
style=
"padding-right: 200px"
>
{{ l("code") }}:
<span
class=
"grayTitle mr10"
>
{{ titleObj.code }}
</span>
{{ l("name") }}:
<span
class=
"grayTitle mr10"
>
{{ titleObj.name }}
</span>
{{ l("routingType") }}:
<span
class=
"grayTitle mr10"
>
<state
code=
"Process.Routing.routingType"
:value=
"titleObj.routingType"
type=
"text"
></state>
</span>
{{ l("version") }}:
<span
class=
"grayTitle"
>
{{ titleObj.version }}
</span>
{{ l("departmentName") }}:
<span
class=
"grayTitle"
>
{{ titleObj.departmentName }}
</span>
</div>
</div>
<div
class=
"fg"
>
<iframe
width=
"100%"
id=
"infoFrame"
height=
"100%"
frameborder=
"0"
:src=
"src"
></iframe>
</div>
<ImportExcel
ref=
"importExcel"
@
on-get-data=
"getData"
:modalTitle=
"temTitle"
:columns=
"columns"
:open=
"ModalIm"
@
on-cancel=
"ModalImCancel"
@
on-ok=
"ok"
/>
</div>
<ImportExcel
ref=
"importExcel"
@
on-get-data=
"getData"
:modalTitle=
"temTitle"
:columns=
"columns"
:open=
"ModalIm"
@
on-cancel=
"ModalImCancel"
@
on-ok=
"ok"
/>
</Content>
</Layout>
</Layout>
</template>
<
script
>
...
...
@@ -115,523 +155,545 @@ import ProductTree from "@/components/page/productTree.vue";
import
sendAudit
from
"./sendAudit.vue"
;
import
routingchangeorder
from
"../processDesign/Process/routingchangeorder.vue"
;
import
changelist
from
"../processDesign/Process/changelist.vue"
;
import
theme
from
'../theme'
import
theme
from
"../theme"
;
export
default
{
components
:
{
ProductTree
,
Search
,
sendAudit
,
routingchangeorder
,
changelist
,
},
head
:
{
title
:
"工艺规程"
,
author
:
"henq"
,
description
:
"routing_header 4/26/2020 10:12:38 AM"
},
data
()
{
return
{
showMenu
:
true
,
treeHeight
:
""
,
action
:
Api
.
index
,
easySearch
:
{
keys
:
{
op
:
"unicode,name,code"
,
value
:
null
}
},
hid
:
0
,
modal
:
false
,
title
:
"新增"
,
info
:
null
,
viewModal
:
false
,
src
:
null
,
detail
:
null
,
curId
:
0
,
uId
:
""
,
documentShow
:
false
,
columns
:
[{
key
:
"code"
,
title
:
this
.
l
(
"code"
),
align
:
"left"
,
width
:
200
,
easy
:
true
,
high
:
true
},
{
key
:
"name"
,
title
:
this
.
l
(
"name"
),
align
:
"left"
,
easy
:
true
,
high
:
true
,
tooltip
:
true
,
},
{
key
:
"phase"
,
title
:
this
.
l
(
"phase"
),
align
:
"center"
,
high
:
true
,
width
:
100
,
code
:
"Process.Routing.phase"
},
{
key
:
"versionid"
,
title
:
this
.
l
(
"version"
),
align
:
"center"
,
high
:
true
,
width
:
100
,
code
:
"Process.Routing.version"
},
{
title
:
this
.
l
(
"approvalStatus"
),
key
:
"approvalStatus"
,
align
:
"center"
,
width
:
"120"
,
code
:
"process.RoutingStatus"
},
{
key
:
"routingType"
,
title
:
this
.
l
(
"routingType"
),
align
:
"center"
,
width
:
100
,
high
:
true
,
code
:
"Process.Routing.routingType"
},
{
key
:
"drawingNo"
,
title
:
this
.
l
(
"drawingNo"
),
align
:
"left"
,
high
:
true
},
{
key
:
"productName"
,
title
:
this
.
l
(
"productName"
),
align
:
"left"
,
high
:
true
,
tooltip
:
true
,
},
{
key
:
"productId"
,
title
:
this
.
l
(
"productId"
),
align
:
"left"
,
import
:
true
,
hide
:
true
,
},
{
key
:
"productBomId"
,
title
:
this
.
l
(
"productBomId"
),
align
:
"left"
,
import
:
true
,
hide
:
true
,
},
{
key
:
"departmentName"
,
title
:
this
.
l
(
"departmentName"
),
width
:
100
,
align
:
"left"
,
high
:
true
,
tooltip
:
true
,
},
{
key
:
"departmentId"
,
title
:
this
.
l
(
"departmentId"
),
align
:
"left"
,
import
:
true
,
hide
:
true
,
},
{
key
:
"isEffect"
,
title
:
this
.
l
(
"isEffect"
),
align
:
"center"
,
width
:
80
,
high
:
true
,
code
:
"Process.Status"
},
//{ key: "id", title: this.$t("id"), hide: true, align: "left" },
// { key:"upId",title:this.l("upId") ,align:"left" ,high:true },
// { key:"upDetailId",title:this.l("upDetailId") ,hide:true ,align:"left" ,high:true },
//{ key: "classId", title: this.l("classId"), align: "left", hide: true },
//{ key: "unicode", title: this.l("unicode"),align: "left",easy: false,hide: true},
// { key:"approvalStatus",title:this.l("approvalStatus") ,align:"left" ,high:true ,code:'process.RoutingStatus' },
// { key:"approvalStatusRemark",title:this.l("approvalStatusRemark") ,align:"left" ,high:true },
// { key:"auditUserId1",title:this.l("auditUserId1") ,align:"left" ,high:true },
// { key:"auditUserId2",title:this.l("auditUserId2") ,align:"left" ,high:true },
// { key:"platesnum",title:this.l("platesnum") ,align:"left" ,high:true },
// { key: "isMain", title: this.l("isMain"),align: "center",width: 80,high: true,code: "Process.state"},
//{key: "creatorUserId",title: this.l("author"),align: "left", high: true,type: "user",hide: true},
//{key: "versionnotes",title: this.l("versionnotes"),align: "left", high: true,hide: true},
//{key: "versionid", title: this.l("versionid"), align: "left", hide: true, code: "Process.Routing.version"},
{
key
:
"creationTime"
,
title
:
this
.
$t
(
"creationTime"
),
align
:
"left"
,
hide
:
true
},
{
key
:
"creatorUserId"
,
title
:
this
.
$t
(
"creatorUserId"
),
align
:
"left"
,
hide
:
true
,
type
:
"user"
},
{
key
:
"lastModificationTime"
,
title
:
this
.
$t
(
"lastModificationTime"
),
align
:
"left"
,
hide
:
true
},
{
key
:
"lastModifierUserId"
,
title
:
this
.
$t
(
"lastModifierUserId"
),
align
:
"left"
,
hide
:
true
,
type
:
"user"
},
{
title
:
"操作"
,
key
:
"action"
,
width
:
260
,
align
:
"left"
,
render
:
(
h
,
params
)
=>
{
return
h
(
"div"
,
{
class
:
"action"
},
[
h
(
"op"
,
{
attrs
:
{
oprate
:
"detail"
},
on
:
{
click
:
()
=>
this
.
viewprocess
(
params
.
row
)
}
},
"预览"
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"detail"
},
on
:
{
click
:
()
=>
this
.
view
(
params
.
row
)
}
},
"查看"
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"copy"
},
on
:
{
click
:
()
=>
this
.
copy
(
params
.
row
.
id
)
}
},
"克隆"
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"edit"
},
on
:
{
click
:
()
=>
this
.
edit
(
params
.
row
)
}
},
'编辑'
// params.row.approvalStatus == 4||params.row.approvalStatus == 0 ? "编辑" : ""
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"delete"
},
on
:
{
click
:
()
=>
this
.
remove
(
params
.
row
.
id
)
}
},
params
.
row
.
approvalStatus
==
4
||
params
.
row
.
approvalStatus
==
0
?
"删除"
:
""
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"detail"
},
on
:
{
click
:
()
=>
this
.
TechnologyChange
(
params
.
row
)
}
},
params
.
row
.
approvalStatus
==
1
?
"新增更改单"
:
""
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"detail"
},
on
:
{
click
:
()
=>
this
.
sendAuditFun
(
params
.
row
)
}
},
params
.
row
.
approvalStatus
==
4
?
"送审"
:
""
)
]);
}
}
],
titleObj
:
{
code
:
""
,
//工艺编号
name
:
""
,
//工艺名称
routingType
:
0
,
//工艺类型
version
:
""
,
//工艺版本
departmentName
:
null
//车间
},
processviewModal
:
false
,
ModalIm
:
false
,
temTitle
:
"工艺规程"
,
};
},
created
()
{
this
.
treeHeight
=
window
.
innerHeight
-
120
;
},
async
fetch
({
store
,
params
})
{
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
},
mounted
()
{
window
.
onresize
=
()
=>
{
///浏览器窗口大小变化
return
(()
=>
{
this
.
treeHeight
=
window
.
innerHeight
-
120
;
})();
};
},
computed
:
{},
methods
:
{
onHide
()
{
// this.$Message.info("收起左侧树")
this
.
showMenu
=
false
;
components
:
{
ProductTree
,
Search
,
sendAudit
,
routingchangeorder
,
changelist
,
},
head
:
{
title
:
"工艺规程"
,
author
:
"henq"
,
description
:
"routing_header 4/26/2020 10:12:38 AM"
,
},
data
()
{
return
{
showMenu
:
true
,
treeHeight
:
""
,
action
:
Api
.
index
,
easySearch
:
{
keys
:
{
op
:
"unicode,name,code"
,
value
:
null
,
},
showMenuFn
()
{
//this.$Message.info("展开左侧树")
this
.
showMenu
=
true
;
},
hid
:
0
,
modal
:
false
,
title
:
"新增"
,
info
:
null
,
viewModal
:
false
,
src
:
null
,
detail
:
null
,
curId
:
0
,
uId
:
""
,
documentShow
:
false
,
columns
:
[
{
key
:
"code"
,
title
:
this
.
l
(
"code"
),
align
:
"left"
,
width
:
200
,
easy
:
true
,
high
:
true
,
},
productSearch
(
id
,
item
,
ids
)
{
let
where
=
{
productId
:
{
op
:
"In"
,
value
:
ids
}
};
this
.
$refs
.
grid
.
reload
(
where
);
{
key
:
"name"
,
title
:
this
.
l
(
"name"
),
align
:
"left"
,
easy
:
true
,
high
:
true
,
tooltip
:
true
,
},
// 详情页面
view
(
row
)
{
this
.
viewModal
=
true
;
this
.
titleObj
=
{
code
:
row
.
code
,
name
:
row
.
name
,
routingType
:
row
.
routingType
,
version
:
row
.
version
,
departmentName
:
row
.
departmentName
};
// this.info=()=>import("./details")
this
.
src
=
"/technology/details?id="
+
row
.
id
+
"&headerStatus="
+
row
.
approvalStatus
+
"&productBomId="
+
row
.
productBomId
;
},
viewClose
()
{
this
.
viewModal
=
false
;
this
.
src
=
null
;
{
key
:
"phase"
,
title
:
this
.
l
(
"phase"
),
align
:
"center"
,
high
:
true
,
width
:
100
,
code
:
"Process.Routing.phase"
,
},
ok
()
{
this
.
$refs
.
grid
.
load
();
this
.
modal
=
false
;
this
.
curId
=
0
;
{
key
:
"versionid"
,
title
:
this
.
l
(
"version"
),
align
:
"center"
,
high
:
true
,
width
:
100
,
code
:
"Process.Routing.version"
,
},
search
()
{
this
.
$refs
.
grid
.
reload
(
this
.
easySearch
);
{
title
:
this
.
l
(
"approvalStatus"
),
key
:
"approvalStatus"
,
align
:
"center"
,
width
:
"120"
,
code
:
"process.RoutingStatus"
,
},
add
()
{
this
.
curId
=
0
;
this
.
title
=
"新增"
;
this
.
detail
=
()
=>
import
(
"./add"
);
this
.
modal
=
true
;
{
key
:
"routingType"
,
title
:
this
.
l
(
"routingType"
),
align
:
"center"
,
width
:
100
,
high
:
true
,
code
:
"Process.Routing.routingType"
,
},
copy
(
id
)
{
this
.
curId
=
id
;
this
.
title
=
"克隆"
;
this
.
detail
=
()
=>
import
(
"./add"
);
this
.
modal
=
true
;
{
key
:
"drawingNo"
,
title
:
this
.
l
(
"drawingNo"
),
align
:
"left"
,
high
:
true
,
},
// view(id) {
// this.curId = id;
// this.title = "详情";
// this.detail = () => import("./detail");
// this.modal = true;
// },
viewprocess
(
row
)
{
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
.
detail
=
()
=>
import
(
"./edit"
);
this
.
modal
=
true
;
{
key
:
"productName"
,
title
:
this
.
l
(
"productName"
),
align
:
"left"
,
high
:
true
,
tooltip
:
true
,
},
remove
(
id
)
{
Api
.
delete
(
id
).
then
(
r
=>
{
if
(
r
.
success
)
{
this
.
$refs
.
grid
.
load
();
this
.
$Message
.
success
(
"删除成功"
);
}
});
{
key
:
"productId"
,
title
:
this
.
l
(
"productId"
),
align
:
"left"
,
import
:
true
,
hide
:
true
,
},
cancel
()
{
this
.
curId
=
0
;
this
.
modal
=
false
;
{
key
:
"productBomId"
,
title
:
this
.
l
(
"productBomId"
),
align
:
"left"
,
import
:
true
,
hide
:
true
,
},
l
(
key
)
{
let
vkey
=
"routingHeader"
+
"."
+
key
;
return
this
.
$t
(
vkey
)
||
key
;
{
key
:
"departmentName"
,
title
:
this
.
l
(
"departmentName"
),
width
:
100
,
align
:
"left"
,
high
:
true
,
tooltip
:
true
,
},
//送审
sendAuditFun
(
row
)
{
this
.
documentShow
=
true
;
this
.
$refs
.
sendAudit
.
intData
(
row
);
{
key
:
"departmentId"
,
title
:
this
.
l
(
"departmentId"
),
align
:
"left"
,
import
:
true
,
hide
:
true
,
},
saveDocument
()
{
this
.
documentShow
=
true
;
this
.
$refs
.
sendAudit
.
intData
(
this
.
headerInfo
);
{
key
:
"isEffect"
,
title
:
this
.
l
(
"isEffect"
),
align
:
"center"
,
width
:
80
,
high
:
true
,
code
:
"Process.Status"
,
},
passDocument
()
{
this
.
dataListRetrun
=
[];
this
.
dataListRetrun
=
this
.
$refs
.
sendAudit
.
returnDataList
();
this
.
$http
.
order
.
batchstart
(
this
.
dataListRetrun
).
then
(
res
=>
{
if
(
res
.
success
)
{
this
.
$Message
.
success
(
"工艺规程送审成功!"
);
this
.
loaddata
();
//this.easySearch('')
}
else
{
this
.
$Message
.
error
(
"工艺规程送审失败!"
);
}
});
this
.
documentShow
=
false
;
//{ key: "id", title: this.$t("id"), hide: true, align: "left" },
// { key:"upId",title:this.l("upId") ,align:"left" ,high:true },
// { key:"upDetailId",title:this.l("upDetailId") ,hide:true ,align:"left" ,high:true },
//{ key: "classId", title: this.l("classId"), align: "left", hide: true },
//{ key: "unicode", title: this.l("unicode"),align: "left",easy: false,hide: true},
// { key:"approvalStatus",title:this.l("approvalStatus") ,align:"left" ,high:true ,code:'process.RoutingStatus' },
// { key:"approvalStatusRemark",title:this.l("approvalStatusRemark") ,align:"left" ,high:true },
// { key:"auditUserId1",title:this.l("auditUserId1") ,align:"left" ,high:true },
// { key:"auditUserId2",title:this.l("auditUserId2") ,align:"left" ,high:true },
// { key:"platesnum",title:this.l("platesnum") ,align:"left" ,high:true },
// { key: "isMain", title: this.l("isMain"),align: "center",width: 80,high: true,code: "Process.state"},
//{key: "creatorUserId",title: this.l("author"),align: "left", high: true,type: "user",hide: true},
//{key: "versionnotes",title: this.l("versionnotes"),align: "left", high: true,hide: true},
//{key: "versionid", title: this.l("versionid"), align: "left", hide: true, code: "Process.Routing.version"},
{
key
:
"creationTime"
,
title
:
this
.
$t
(
"creationTime"
),
align
:
"left"
,
hide
:
true
,
},
//工艺更改
TechnologyChange
(
row
)
{
this
.
hid
=
row
.
id
;
this
.
title
=
"新增"
;
this
.
detail
=
()
=>
import
(
"./details/routinghcorder/add"
);
this
.
modal
=
true
;
{
key
:
"creatorUserId"
,
title
:
this
.
$t
(
"creatorUserId"
),
align
:
"left"
,
hide
:
true
,
type
:
"user"
,
},
Main
(
data
)
{
// this.eid1 = ''
this
.
seleId
=
data
.
row
.
id
;
this
.
$refs
.
changelist
.
seleId
=
data
.
row
.
id
;
let
url
=
`
${
designUrl
}
/routingheaderchangeorder/getpaged`
;
service
.
get
(
`
${
url
}
`
,
{
routing_header_id
:
this
.
seleId
}).
then
(
res
=>
{
//console.log(res)
this
.
$refs
.
changelist
.
data2
=
res
.
result
.
items
;
this
.
$refs
.
changelist
.
myloading
=
false
;
if
(
this
.
$refs
.
changelist
.
data2
.
length
==
0
)
{
this
.
$Message
.
error
(
"该工艺规程没有更改单!"
);
this
.
$refs
.
changelist
.
show3
=
false
;
return
;
}
this
.
$refs
.
changelist
.
show3
=
true
;
});
{
key
:
"lastModificationTime"
,
title
:
this
.
$t
(
"lastModificationTime"
),
align
:
"left"
,
hide
:
true
,
},
//批量导入start
//导入功能
openModalIm
()
{
this
.
ModalIm
=
true
{
key
:
"lastModifierUserId"
,
title
:
this
.
$t
(
"lastModifierUserId"
),
align
:
"left"
,
hide
:
true
,
type
:
"user"
,
},
ModalImCancel
()
{
this
.
ModalIm
=
false
{
title
:
"操作"
,
key
:
"action"
,
width
:
260
,
align
:
"left"
,
render
:
(
h
,
params
)
=>
{
return
h
(
"div"
,
{
class
:
"action"
,
},
[
h
(
"op"
,
{
attrs
:
{
oprate
:
"detail"
,
},
on
:
{
click
:
()
=>
this
.
viewprocess
(
params
.
row
),
},
},
"预览"
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"detail"
,
},
on
:
{
click
:
()
=>
this
.
view
(
params
.
row
),
},
},
"查看"
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"copy"
,
},
on
:
{
click
:
()
=>
this
.
copy
(
params
.
row
.
id
),
},
},
"克隆"
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"edit"
,
},
on
:
{
click
:
()
=>
this
.
edit
(
params
.
row
),
},
},
"编辑"
// params.row.approvalStatus == 4||params.row.approvalStatus == 0 ? "编辑" : ""
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"delete"
,
},
on
:
{
click
:
()
=>
this
.
remove
(
params
.
row
.
id
),
},
},
params
.
row
.
approvalStatus
==
4
||
params
.
row
.
approvalStatus
==
0
?
"删除"
:
""
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"detail"
,
},
on
:
{
click
:
()
=>
this
.
TechnologyChange
(
params
.
row
),
},
},
params
.
row
.
approvalStatus
==
1
?
"新增更改单"
:
""
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"detail"
,
},
on
:
{
click
:
()
=>
this
.
sendAuditFun
(
params
.
row
),
},
},
params
.
row
.
approvalStatus
==
4
?
"送审"
:
""
),
]
);
},
},
getData
(
val
)
{
let
url
=
`
${
technologyUrl
}
routingheaderimportservice/import`
;
this
.
$refs
.
importExcel
.
deelData
(
url
,
this
.
columns
,
this
.
formatMethod
(
val
))
],
titleObj
:
{
code
:
""
,
//工艺编号
name
:
""
,
//工艺名称
routingType
:
0
,
//工艺类型
version
:
""
,
//工艺版本
departmentName
:
null
,
//车间
},
processviewModal
:
false
,
ModalIm
:
false
,
temTitle
:
"工艺规程"
,
};
},
created
()
{
this
.
treeHeight
=
window
.
innerHeight
-
120
;
},
async
fetch
({
store
,
params
})
{
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
},
mounted
()
{
window
.
onresize
=
()
=>
{
///浏览器窗口大小变化
return
(()
=>
{
this
.
treeHeight
=
window
.
innerHeight
-
120
;
})();
};
},
computed
:
{},
methods
:
{
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
,
},
//根据页面二次处理数据
formatMethod
(
val
)
{
let
tempData
=
this
.
$u
.
clone
(
val
);
let
tempList
=
[];
tempData
.
forEach
((
ele
)
=>
{
let
obj
=
{
classId
:
null
,
unicode
:
""
,
name
:
ele
.
name
?
ele
.
name
:
''
,
code
:
ele
.
code
?
ele
.
code
:
''
,
productId
:
ele
.
productId
?
ele
.
productId
:
''
,
//?
productName
:
ele
.
productName
?
ele
.
productName
:
""
,
//?
productBomId
:
ele
.
productBomId
?
ele
.
productBomId
:
""
,
//?
drawingNo
:
ele
.
drawingNo
?
ele
.
drawingNo
:
""
,
//?
version
:
""
,
versionid
:
ele
.
versionid
?
ele
.
versionid
:
""
,
author
:
null
,
departmentId
:
ele
.
departmentId
?
ele
.
departmentId
:
null
,
//?
departmentName
:
ele
.
departmentName
?
ele
.
departmentName
:
""
,
//?
isMain
:
1
,
upId
:
null
,
upDetailId
:
null
,
routingType
:
ele
.
routingType
?
ele
.
routingType
:
null
,
status
:
0
,
approvalStatus
:
4
,
//?
remark
:
""
,
approvalStatusRemark
:
""
,
auditUserId1
:
""
,
auditUserId2
:
""
,
platesnum
:
null
,
versionnotes
:
""
,
isSendPpm
:
1
,
fileId
:
""
,
phase
:
ele
.
phase
?
ele
.
phase
:
null
,
isEffect
:
ele
.
isEffect
?
ele
.
isEffect
:
1
};
if
(
ele
.
name
&&
ele
.
name
!=
''
)
{
obj
.
ico
=
false
}
else
{
obj
.
ico
=
true
}
tempList
.
push
(
obj
);
};
this
.
$refs
.
grid
.
reload
(
where
);
},
// 详情页面
view
(
row
)
{
this
.
viewModal
=
true
;
this
.
titleObj
=
{
code
:
row
.
code
,
name
:
row
.
name
,
routingType
:
row
.
routingType
,
version
:
row
.
version
,
departmentName
:
row
.
departmentName
,
};
});
return
tempList
},
//批量导入end
//下拉菜单事件导入
changeMenu
(
name
){
if
(
name
==
'导入'
){
openModalIm
();
}
if
(
name
==
'导出'
){
}
// this.info=()=>import("./details")
this
.
src
=
"/technology/details?id="
+
row
.
id
+
"&headerStatus="
+
row
.
approvalStatus
+
"&productBomId="
+
row
.
productBomId
;
},
viewClose
()
{
this
.
viewModal
=
false
;
this
.
src
=
null
;
},
ok
()
{
this
.
$refs
.
grid
.
load
();
this
.
modal
=
false
;
this
.
curId
=
0
;
},
search
()
{
this
.
$refs
.
grid
.
reload
(
this
.
easySearch
);
},
add
()
{
this
.
curId
=
0
;
this
.
title
=
"新增"
;
this
.
detail
=
()
=>
import
(
"./add"
);
this
.
modal
=
true
;
},
copy
(
id
)
{
this
.
curId
=
id
;
this
.
title
=
"克隆"
;
this
.
detail
=
()
=>
import
(
"./add"
);
this
.
modal
=
true
;
},
// view(id) {
// this.curId = id;
// this.title = "详情";
// this.detail = () => import("./detail");
// this.modal = true;
// },
viewprocess
(
row
)
{
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
.
detail
=
()
=>
import
(
"./edit"
);
this
.
modal
=
true
;
},
remove
(
id
)
{
Api
.
delete
(
id
).
then
((
r
)
=>
{
if
(
r
.
success
)
{
this
.
$refs
.
grid
.
load
();
this
.
$Message
.
success
(
"删除成功"
);
}
});
},
cancel
()
{
this
.
curId
=
0
;
this
.
modal
=
false
;
},
l
(
key
)
{
let
vkey
=
"routingHeader"
+
"."
+
key
;
return
this
.
$t
(
vkey
)
||
key
;
},
//送审
sendAuditFun
(
row
)
{
this
.
documentShow
=
true
;
this
.
$refs
.
sendAudit
.
intData
(
row
);
},
saveDocument
()
{
this
.
documentShow
=
true
;
this
.
$refs
.
sendAudit
.
intData
(
this
.
headerInfo
);
},
passDocument
()
{
this
.
dataListRetrun
=
[];
this
.
dataListRetrun
=
this
.
$refs
.
sendAudit
.
returnDataList
();
this
.
$http
.
order
.
batchstart
(
this
.
dataListRetrun
).
then
((
res
)
=>
{
if
(
res
.
success
)
{
this
.
$Message
.
success
(
"工艺规程送审成功!"
);
this
.
loaddata
();
//this.easySearch('')
}
else
{
this
.
$Message
.
error
(
"工艺规程送审失败!"
);
}
}
});
this
.
documentShow
=
false
;
},
//工艺更改
TechnologyChange
(
row
)
{
this
.
hid
=
row
.
id
;
this
.
title
=
"新增"
;
this
.
detail
=
()
=>
import
(
"./details/routinghcorder/add"
);
this
.
modal
=
true
;
},
Main
(
data
)
{
// this.eid1 = ''
this
.
seleId
=
data
.
row
.
id
;
this
.
$refs
.
changelist
.
seleId
=
data
.
row
.
id
;
let
url
=
`
${
designUrl
}
/routingheaderchangeorder/getpaged`
;
service
.
get
(
`
${
url
}
`
,
{
routing_header_id
:
this
.
seleId
,
})
.
then
((
res
)
=>
{
//console.log(res)
this
.
$refs
.
changelist
.
data2
=
res
.
result
.
items
;
this
.
$refs
.
changelist
.
myloading
=
false
;
if
(
this
.
$refs
.
changelist
.
data2
.
length
==
0
)
{
this
.
$Message
.
error
(
"该工艺规程没有更改单!"
);
this
.
$refs
.
changelist
.
show3
=
false
;
return
;
}
this
.
$refs
.
changelist
.
show3
=
true
;
});
},
//批量导入start
//导入功能
openModalIm
()
{
this
.
ModalIm
=
true
;
},
ModalImCancel
()
{
this
.
ModalIm
=
false
;
},
getData
(
val
)
{
let
url
=
`
${
technologyUrl
}
routingheaderimportservice/import`
;
this
.
$refs
.
importExcel
.
deelData
(
url
,
this
.
columns
,
this
.
formatMethod
(
val
)
);
},
//根据页面二次处理数据
formatMethod
(
val
)
{
let
tempData
=
this
.
$u
.
clone
(
val
);
let
tempList
=
[];
tempData
.
forEach
((
ele
)
=>
{
let
obj
=
{
classId
:
null
,
unicode
:
""
,
name
:
ele
.
name
?
ele
.
name
:
""
,
code
:
ele
.
code
?
ele
.
code
:
""
,
productId
:
ele
.
productId
?
ele
.
productId
:
""
,
//?
productName
:
ele
.
productName
?
ele
.
productName
:
""
,
//?
productBomId
:
ele
.
productBomId
?
ele
.
productBomId
:
""
,
//?
drawingNo
:
ele
.
drawingNo
?
ele
.
drawingNo
:
""
,
//?
version
:
""
,
versionid
:
ele
.
versionid
?
ele
.
versionid
:
""
,
author
:
null
,
departmentId
:
ele
.
departmentId
?
ele
.
departmentId
:
null
,
//?
departmentName
:
ele
.
departmentName
?
ele
.
departmentName
:
""
,
//?
isMain
:
1
,
upId
:
null
,
upDetailId
:
null
,
routingType
:
ele
.
routingType
?
ele
.
routingType
:
null
,
status
:
0
,
approvalStatus
:
4
,
//?
remark
:
""
,
approvalStatusRemark
:
""
,
auditUserId1
:
""
,
auditUserId2
:
""
,
platesnum
:
null
,
versionnotes
:
""
,
isSendPpm
:
1
,
fileId
:
""
,
phase
:
ele
.
phase
?
ele
.
phase
:
null
,
isEffect
:
ele
.
isEffect
?
ele
.
isEffect
:
1
,
};
if
(
ele
.
name
&&
ele
.
name
!=
""
)
{
obj
.
ico
=
false
;
}
else
{
obj
.
ico
=
true
;
}
tempList
.
push
(
obj
);
});
return
tempList
;
},
//批量导入end
//下拉菜单事件导入
changeMenu
(
name
)
{
if
(
name
==
"导入"
)
{
openModalIm
();
}
if
(
name
==
"导出"
)
{
}
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
.order-quotation {
height: 100vh !important;
}
...
...
@@ -651,5 +713,14 @@ export default {
.single-page-con {
overflow-y: hidden !important;
}
.yuan_add {
color: #747b8b;
background-color: #ffffff;
border-color: #e3e5e8;
}
.yuan_add:hover {
color: #57a3f3;
background-color: white;
border-color: #57a3f3;
}
</
style
>
pages/theme/index.vue
View file @
400f53be
...
...
@@ -7,8 +7,7 @@
placeholder=
"请输入工艺名称/工艺编号"
v-width=
"280"
v-model=
"formInline.value"
clearable
/>
clearable
/>
<Button
type=
"primary"
class=
"search_icon"
icon=
"ios-search"
></Button>
<Button
type=
"text"
class=
"search_text"
>
高级搜索
</Button>
</Form>
...
...
@@ -46,7 +45,7 @@
<Table
:border=
"false"
stripe
:columns=
"columns1"
:data=
"data1"
>
<template
slot=
"action"
slot-scope=
"
{ row, index }"
slot-scope=
"
{ row
, index }"
style="width: 100%; height: 100%"
>
<a
href=
""
class=
"action-buttons"
...
...
@@ -62,10 +61,6 @@
<Icon
type=
"icon iconfont iconshanchu"
/>
删除
</a
>
<!--
<a
class=
"add mr20"
>
<Icon
type=
"icon iconfont iconshanchu"
/>
分解
</a
>
-->
</div>
</a>
</
template
>
...
...
@@ -78,8 +73,7 @@
type=
"flex"
justify=
"center"
align=
"end"
class=
"page_index"
>
class=
"page_index"
>
<Page
:total=
"100"
show-elevator
/>
</Col>
</Row>
...
...
@@ -343,7 +337,6 @@ export default {
font-size: 22px;
}
.ivu-select-dropdown {
background-color: #222341 !important;
.ivu-dropdown-item {
color: #ffffff !important;
...
...
@@ -402,7 +395,7 @@ export default {
position: absolute;
display: none;
right: -58px;
top: -2
2
px;
top: -2
1
px;
width: -webkit-max-content; // 兼容
width: -moz-max-content; // 兼容
width: max-content;
...
...
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