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
f3998490
Commit
f3998490
authored
Apr 28, 2020
by
周远喜
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'product' of
http://git.mes123.com/zhouyx/mes-ui
into product
parents
2d161fd2
06efd5a7
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
2618 additions
and
816 deletions
+2618
-816
zh-CN.js
i18n/locale/zh-CN.js
+91
-27
api.js
pages/aps/complete/api.js
+3
-12
index.vue
pages/aps/complete/index.vue
+198
-141
api.js
pages/aps/stream/api.js
+4
-15
checkboxList.vue
pages/aps/stream/checkboxList.vue
+0
-228
index.vue
pages/aps/stream/index.vue
+319
-145
list.vue
pages/aps/stream/list.vue
+0
-72
set.vue
pages/aps/stream/set.vue
+119
-173
details.vue
pages/technology/details.vue
+4
-3
add.vue
pages/technology/details/routingqccard/add.vue
+284
-0
api.js
pages/technology/details/routingqccard/api.js
+29
-0
detail.vue
pages/technology/details/routingqccard/detail.vue
+114
-0
edit.vue
pages/technology/details/routingqccard/edit.vue
+224
-0
index.vue
pages/technology/details/routingqccard/index.vue
+308
-0
search.vue
pages/technology/details/routingqccard/search.vue
+175
-0
add.vue
pages/technology/details/routingsupporting/add.vue
+195
-0
api.js
pages/technology/details/routingsupporting/api.js
+26
-0
detail.vue
pages/technology/details/routingsupporting/detail.vue
+79
-0
edit.vue
pages/technology/details/routingsupporting/edit.vue
+171
-0
index.vue
pages/technology/details/routingsupporting/index.vue
+143
-0
search.vue
pages/technology/details/routingsupporting/search.vue
+132
-0
No files found.
i18n/locale/zh-CN.js
View file @
f3998490
...
...
@@ -1165,33 +1165,33 @@ export default {
changeMethod
:
'更改办法'
,
taskType
:
'任务类型'
,
},
routingHeader
:{
classId
:
'类id'
,
unicode
:
'unicode'
,
name
:
'工艺名称'
,
code
:
'工艺编号'
,
productId
:
'产品id'
,
version
:
'版本'
,
author
:
'编制人'
,
departmentId
:
'主制车间'
,
isMain
:
'主工艺'
,
upId
:
'父工艺'
,
upDetailId
:
'上级工序'
,
routingType
:
'工艺类型'
,
status
:
'状态'
,
approvalStatus
:
'审批状态'
,
remark
:
'备注'
,
approvalStatusRemark
:
'审批备注'
,
auditUserId1
:
'审批人'
,
auditUserId2
:
'审批人'
,
isDeleted
:
'是否删除'
,
platesnum
:
'板数'
,
isEffect
:
'生效'
,
versionnotes
:
'版本'
,
phase
:
'阶段'
,
versionid
:
'版本ID'
,
isSendPpm
:
'发送PPM'
,
},
routingHeader
:
{
classId
:
'类id'
,
unicode
:
'unicode'
,
name
:
'工艺名称'
,
code
:
'工艺编号'
,
productId
:
'产品id'
,
version
:
'版本'
,
author
:
'编制人'
,
departmentId
:
'主制车间'
,
isMain
:
'主工艺'
,
upId
:
'父工艺'
,
upDetailId
:
'上级工序'
,
routingType
:
'工艺类型'
,
status
:
'状态'
,
approvalStatus
:
'审批状态'
,
remark
:
'备注'
,
approvalStatusRemark
:
'审批备注'
,
auditUserId1
:
'审批人'
,
auditUserId2
:
'审批人'
,
isDeleted
:
'是否删除'
,
platesnum
:
'板数'
,
isEffect
:
'生效'
,
versionnotes
:
'版本'
,
phase
:
'阶段'
,
versionid
:
'版本ID'
,
isSendPpm
:
'发送PPM'
,
},
routing_detail
:
{
id
:
''
,
creationTime
:
'创建时间'
,
...
...
@@ -1327,5 +1327,69 @@ export default {
holidayCalName
:
'加班日历名称'
,
isimportant
:
'关重'
,
capabilityValue
:
'能力值'
,
},
routing_qc_card
:
{
//智控卡
id
:
''
,
creationTime
:
'创建时间'
,
creatorUserId
:
'创建人'
,
lastModificationTime
:
'最近修改时间'
,
lastModifierUserId
:
'最近修改人'
,
isDeleted
:
'是否删除'
,
deleterUserId
:
'删除人'
,
deletionTime
:
'删除时间'
,
routingHeaderId
:
'工艺ID'
,
routingHeaderName
:
'工艺'
,
routingDetailId
:
'工序ID'
,
routingDetailName
:
'工序'
,
routingStepId
:
'工步ID'
,
checkContent
:
'检测内容'
,
checkType
:
'检测类型'
,
checkParams
:
'检测要求'
,
measurementUnit
:
'测量单位'
,
fillintype
:
'填报类型'
,
qualityTemplate
:
'模板'
,
isphotograph
:
'是否拍照'
,
status
:
'状态'
,
extend
:
'扩展字段'
,
remark
:
'备注'
,
productionRequirement
:
'生产要求'
,
standard
:
'标准指标'
,
qualityTemplateName
:
'模板名称'
,
isImportant
:
'关键检验'
,
firstCheck
:
'首件检验'
,
inspection
:
'巡检'
,
inspectionTime
:
'巡查间隔时间'
,
sampling
:
'抽检'
,
samplingBatch
:
'抽检批次'
,
},
routingsupporting
:
{
//工艺BOM
id
:
''
,
creationTime
:
'创建时间'
,
creatorUserId
:
'创建人'
,
lastModificationTime
:
'更新时间'
,
lastModifierUserId
:
'更新人'
,
isDeleted
:
'删除人'
,
deletionTime
:
'删除时间'
,
deleterUserId
:
'删除人'
,
routingHeaderId
:
'工艺ID'
,
routingHeaderName
:
'工艺'
,
routingDetailId
:
'工序ID'
,
routingDetailName
:
'工序'
,
routingStepId
:
'工步ID'
,
quantity
:
'数量'
,
materialId
:
'物料id'
,
materialType
:
'物料类型'
,
materialNumber
:
'物料编号'
,
nameMaterial
:
'物料名称'
,
brand
:
'牌号'
,
specifications
:
'规格'
,
xhgg
:
'型号规格'
,
texture
:
'材质'
,
procurementStandards
:
'采购标准'
,
qualityGrade
:
'质量等级'
,
state
:
'状态'
,
extend
:
'扩展字段'
,
remark
:
'备注'
,
drawNum
:
'产品图号'
,
}
}
pages/aps/complete/api.js
View file @
f3998490
...
...
@@ -9,16 +9,7 @@ export default {
cmtwostepschedule
(
params
)
{
return
Api
.
post
(
`
${
PlanUrl
}
/messchedule/cmtwostepschedule`
,
params
);
//整机排产--二级排产
},
// getlist(params) {
// return Api.get(`${PlanUrl}/mes_sys_shop_info/getlist`, params); //手工排产:查询所在车间下的所有班组信息
// },
// getbyshopid(params) {
// return Api.get(`${PlanUrl}/mes_sys_user_info/getuserbyshopid`, params); //手工排产:根据班组ID,加载人员信息
// },
// getlistEquip(params) {
// return Api.get(`${PlanUrl}/mes_equip_info/getlist`, params); //手工排产:获取所在车间的设备
// },
// getbyequippk(params) {
// return Api.get(`${PlanUrl}/mes_sys_user_info/getuserbyequippk`, params); //手工排产:根据设备ID,加载人员信息
// },
shiftoutofcmorflpool
(
params
)
{
return
Api
.
post
(
`
${
PlanUrl
}
/messchedule/shiftoutofcmorflpool`
,
params
);
//删除订单
},
}
\ No newline at end of file
pages/aps/complete/index.vue
View file @
f3998490
This diff is collapsed.
Click to expand it.
pages/aps/stream/api.js
View file @
f3998490
...
...
@@ -12,19 +12,8 @@ export default {
fltwostepschedule
(
params
)
{
return
Api
.
post
(
`
${
PlanUrl
}
/messchedule/fltwostepschedule`
,
params
);
//流水二级
},
// gettaskseqinfo(params) {
// return Api.get(`${apsManualUrl}/aps/gettaskseqinfo`, params); //根据订单获取全部工序数据
// },
// getlist(params) {
// return Api.get(`${apsManualUrl}/mes_sys_shop_info/getlist`, params); //手工排产:查询所在车间下的所有班组信息
// },
// getbyshopid(params) {
// return Api.get(`${apsManualUrl}/mes_sys_user_info/getuserbyshopid`, params); //手工排产:根据班组ID,加载人员信息
// },
// getlistEquip(params) {
// return Api.get(`${apsManualUrl}/mes_equip_info/getlist`, params); //手工排产:获取所在车间的设备
// },
// getbyequippk(params) {
// return Api.get(`${apsManualUrl}/mes_sys_user_info/getuserbyequippk`, params); //手工排产:根据设备ID,加载人员信息
// },
shiftoutofcmorflpool
(
params
)
{
return
Api
.
post
(
`
${
PlanUrl
}
/messchedule/shiftoutofcmorflpool`
,
params
);
//删除订单
},
}
\ No newline at end of file
pages/aps/stream/checkboxList.vue
deleted
100644 → 0
View file @
2d161fd2
<
template
>
<div
class=
"checkbox-list"
>
<Row
class=
"check-title"
>
<Col
span=
"20"
>
<div>
<!-- :indeterminate="indeterminate" -->
<!-- :label="resourcesType==0?singleList.shop_name:resourcesType==2?singleList.equip_name:''" -->
<Checkbox
:label=
"singleList.equip_name"
v-model=
"checkAll"
@
click
.
prevent
.
native=
"handleCheckAll(singleList.shop_id)"
>
{{
singleList
.
equip_name
}}
</Checkbox>
<!--
{{
resourcesType
==
0
?
singleList
.
shop_name
:
resourcesType
==
2
?
singleList
.
equip_name
:
''
}}
-->
</div>
</Col>
<Col
span=
"4"
>
<div
class=
"icon-down"
>
<Icon
type=
"ios-arrow-down"
v-if=
"!singleList.isClick"
@
click=
"upDown(singleList)"
></Icon>
<Icon
type=
"ios-arrow-up"
v-if=
"singleList.isClick"
@
click=
"upDown(singleList)"
></Icon>
</div>
</Col>
</Row>
<ul
v-if=
"singleList.isClick"
>
<li
ref=
"liId"
v-for=
"(item,index) in list"
:key=
"index"
@
click=
"onclick(index)"
>
{{
item
.
name
}}
&
nbsp
&
nbsp
{{
item
.
class
}}
</li>
</ul>
<!--
<CheckboxGroup
v-model=
"checkAllGroup"
@
on-change=
"checkAllGroupChange"
v-if=
"singleList.isClick"
>
-->
<!-- :label="resourcesType==0?item.user_name:resourcesType==2?item.equip_name:''" -->
<!--
<Checkbox
v-for=
"(item,index) in list"
:key=
"index"
:label=
"item.name"
>
{{
item
.
name
}}
</Checkbox>
</CheckboxGroup>
-->
</div>
</
template
>
<
script
>
import
Api
from
"./api"
;
export
default
{
name
:
"CheckboxList"
,
props
:
[
"singleList"
],
data
()
{
return
{
chooseNum
:
null
,
indeterminate
:
true
,
checkAll
:
false
,
checkAllGroup
:
[],
typeIcon
:
"ios-arrow-down"
,
show
:
-
1
,
list
:
[
{
name
:
"张芳"
,
class
:
"1级"
},
{
name
:
"张芳"
,
class
:
"1级"
},
{
name
:
"张芳"
,
class
:
"1级"
},
{
name
:
"张芳"
,
class
:
"1级"
}
],
taglistData
:
[]
};
},
mounted
()
{
// this.checkList()
},
methods
:
{
onclick
(
index
)
{
if
(
this
.
$refs
.
liId
[
index
].
className
.
length
<=
0
)
{
this
.
$refs
.
liId
[
index
].
className
=
"li-focus"
;
// 添加类
let
list
=
[];
this
.
$refs
.
liId
.
forEach
((
element
,
index
)
=>
{
if
(
this
.
$refs
.
liId
[
index
].
className
)
{
list
.
push
(
this
.
$refs
.
liId
[
index
].
className
);
}
});
if
(
list
.
length
==
this
.
list
.
length
)
{
this
.
checkAll
=
true
;
}
}
else
{
this
.
$refs
.
liId
[
index
].
className
=
""
;
// 选中再取消的情况
this
.
checkAll
=
false
;
}
},
handleCheckAll
(
id
)
{
this
.
checkAll
=
!
this
.
checkAll
;
if
(
this
.
checkAll
)
{
this
.
$refs
.
liId
.
forEach
((
element
,
index
)
=>
{
this
.
$refs
.
liId
[
index
].
className
=
"li-focus"
;
// 添加类
});
}
else
{
this
.
$refs
.
liId
.
forEach
((
element
,
index
)
=>
{
this
.
$refs
.
liId
[
index
].
className
=
""
;
// 选中再取消的情况
});
}
// // console.log(this.list)
// // this.list.map((u) => {
// // console.log(u)
// // })
// // this.checkList(id)
// this.checkAll = !this.checkAll;
// if (this.checkAll) {
// let listNew = [];
// this.list.map(u => {
// if (this.resourcesType == 0) {
// listNew.push(u.user_name);
// } else if (this.resourcesType == 2) {
// listNew.push(u.equip_name);
// }
// });
// this.checkAllGroup = listNew;
// this.$emit("changeData", this.checkAllGroup);
// } else {
// this.checkAllGroup = [];
// }
},
// checkAllGroupChange(data) {
// console.log(data);
// console.log(this.list);
// this.checkAllGroup = data;
// this.$emit("changeData", this.checkAllGroup);
// if (data.length === this.list.length) {
// this.indeterminate = false;
// this.checkAll = true;
// } else if (data.length > 0) {
// this.indeterminate = true;
// this.checkAll = false;
// } else {
// this.indeterminate = false;
// this.checkAll = false;
// }
// },
checkList
(
id
)
{
if
(
this
.
resourcesType
==
0
)
{
//班组
Api
.
getbyshopid
({
shop_id
:
id
}).
then
(
r
=>
{
// console.log(r)
if
(
r
.
success
)
{
r
.
result
.
forEach
(
e
=>
{
e
.
ischeckBox
=
false
;
});
this
.
list
=
r
.
result
;
}
});
}
else
if
(
this
.
resourcesType
==
2
)
{
//设备
Api
.
getbyequippk
({
equip_pk
:
91
}).
then
(
r
=>
{
// console.log(r)
if
(
r
.
success
)
{
r
.
result
.
forEach
(
e
=>
{
e
.
ischeckBox
=
false
;
});
this
.
list
=
r
.
result
;
}
});
}
},
upDown
(
post
)
{
if
(
!
post
.
isClick
)
{
this
.
$set
(
post
,
"isClick"
,
true
);
this
.
checkList
(
post
.
shop_id
);
}
else
{
this
.
$set
(
post
,
"isClick"
,
false
);
}
}
}
// watch: {
// list: {
// handler(newVal, oldVal) {
// console.log('深度监听', newVal, oldVal)
// },
// deep: true
// }
// }
};
</
script
>
<
style
lang=
"less"
scoped
>
.checkbox-list {
.icon-down {
text-align: right;
cursor: pointer;
}
.check-title {
height: 40px;
line-height: 40px;
padding: 0 10px;
background: rgba(38, 128, 235, 0.5);
}
ul {
min-height: 60px;
padding: 10px 5px;
display: flex;
li {
list-style-type: none;
text-align: center;
width: 100px;
height: 30px;
line-height: 30px;
border-radius: 20px;
margin: 0 5px;
cursor: pointer;
background: rgba(38, 128, 235, 0.1);
}
li:hover {
border: 1px solid rgba(38, 128, 235, 0.5);
}
.li-focus {
border: 1px solid rgba(38, 128, 235, 0.5);
}
}
}
</
style
>
\ No newline at end of file
pages/aps/stream/index.vue
View file @
f3998490
This diff is collapsed.
Click to expand it.
pages/aps/stream/list.vue
deleted
100644 → 0
View file @
2d161fd2
<
template
>
<div
class=
"list"
>
<Timeline>
<TimelineItem
v-for=
"(item, index) in result"
:key=
"index"
>
<Badge
:count=
"index+ 1"
slot=
"dot"
:type=
"type(index)"
></Badge>
<div
@
click=
"sets(item.resources_Type)"
class=
"set-name"
>
{{
item
.
taskname
}}
</div>
<div>
{{
item
.
equip_id
}}
</div>
<div>
{{
item
.
equip_type
}}
</div>
<div>
{{
item
.
resources_Type_Name
}}
</div>
</TimelineItem>
</Timeline>
<div>
<Drawer
title=
"排产设置盘"
:closable=
"false"
v-model=
"set"
width=
"45%"
>
<Set
:resourcesType=
"resourcesType"
></Set>
</Drawer>
</div>
</div>
</
template
>
<
script
>
import
Set
from
'./set'
import
Api
from
'./api'
export
default
{
name
:
'set'
,
components
:
{
Set
},
props
:
{
result
:
Array
},
data
()
{
return
{
set
:
false
,
dataList
:
[],
resourcesType
:
null
}
},
methods
:
{
type
(
i
)
{
if
(
i
==
0
)
{
return
'normal'
}
else
if
(
i
==
1
)
{
return
'normal'
}
else
if
(
i
==
2
)
{
return
'normal'
}
else
if
(
i
===
this
.
result
.
length
)
{
return
'success'
}
},
sets
(
name
)
{
this
.
resourcesType
=
name
if
(
this
.
resourcesType
==
0
||
this
.
resourcesType
==
2
)
{
this
.
set
=
true
}
else
{
this
.
set
=
false
// this.$Message.info('没有设置盘')
}
}
}
}
</
script
>
<
style
lang=
"less"
scoped
>
.list {
padding-left: 10px;
.set-name {
font-weight: bold;
}
.set-name:hover {
cursor: pointer;
}
}
</
style
>
\ No newline at end of file
pages/aps/stream/set.vue
View file @
f3998490
<
template
>
<div
class=
"set"
>
<Form
:model=
"formItem"
:label-width=
"100"
>
<FormItem
label=
"工时"
>
<Form
:model=
"formItem"
:label-width=
"100"
:rules=
"ruleValidate"
ref=
"formItem"
>
<FormItem
label=
"工时"
prop=
"time"
>
<DatePicker
type=
"datetimerange"
format=
"yyyy-MM-dd HH:mm"
format=
"yyyy-MM-dd HH:mm
:ss
"
placeholder=
"请选择工时"
@
on-change=
"changeFormat"
v-model=
"formItem.time"
style=
"width:300px"
></DatePicker>
</FormItem>
<FormItem
label=
"类型"
>
<
!--
<
FormItem
label=
"类型"
>
<RadioGroup
v-model=
"formItem.radio"
>
<Radio
label=
"0"
>
人员
</Radio>
<Radio
label=
"1"
>
班组
</Radio>
</RadioGroup>
</FormItem>
-->
<FormItem
label=
"人员"
v-if=
"mode==1"
prop=
"userIds"
>
<UserSelect
ref=
"userSelected"
v-model=
"formItem.userIds"
style=
"width:300px"
:multiple=
"true"
/>
</FormItem>
<FormItem
label=
"人员分组形式"
v-if=
"formItem.radio==0"
>
<Dictionary
disabled
code=
"aps.scheduling.groupingForm"
v-model=
"formItem.resourcesType"
type=
"radio"
></Dictionary>
</FormItem>
<FormItem
label=
"班组"
v-if=
"formItem.radio==1"
>
<Select
v-model=
"formItem.shopId"
style=
"width:300px"
multiple
>
<Option
v-for=
"item in classList"
:value=
"item.shopId"
:key=
"item.shopId"
>
{{
item
.
label
}}
</Option>
</Select>
</FormItem>
<FormItem
v-if=
"formItem.radio==0"
>
<!--
<UserSelect
ref=
"userSelected"
v-model=
"formItem.DistributeMainRouting"
/>
-->
<div
class=
"list-check"
>
<Checkbox-List
:single-list=
"li"
ref=
"groups"
@
changeData=
"setData"
v-for=
"(li,index) in listGroup"
<FormItem
label=
"班组"
v-if=
"mode==2"
prop=
"shopId"
>
<Select
v-model=
"formItem.shopId"
placeholder=
"请选择"
style=
"width:300px"
>
<Option
v-for=
"(item,index) in listClass"
:key=
"index"
></Checkbox-List>
</div>
</FormItem>
<!-- v-if="tagGroup.lenght>0" -->
<FormItem
label=
"已选择"
v-if=
"formItem.radio==0"
>
<div
class=
"tag-list"
>
<div
v-for=
"(item,index) in tagGroup"
:key=
"index"
class=
"tag-group"
>
<span>
{{
item
.
name
}}
&
nbsp
&
nbsp
{{
item
.
class
}}
</span>
<Icon
type=
"md-close"
@
click=
"closeTag"
/>
</div>
<!--
<Tag
color=
"rgba(38,128,235,0.3)"
closable
@
on-close=
"handleClose"
:key=
"index"
v-for=
"(val, index) in tagGroup"
>
{{
val
.
name
}}
</Tag>
-->
</div>
:value=
"item.value"
:label=
"item.label"
style=
"display:none"
></Option>
<Tree
key=
"mytree"
:data=
"workShop"
ref=
"mytree"
:render=
"renderContent"
></Tree>
</Select>
</FormItem>
<FormItem
label=
"备注"
>
<Input
v-model=
"formItem.
textarea
"
v-model=
"formItem.
remark
"
type=
"textarea"
:autosize=
"
{minRows: 2,maxRows: 5}"
placeholder="请输入备注信息"
...
...
@@ -69,157 +47,90 @@
</FormItem>
<FormItem>
<Button
style=
"margin-left: 8px"
@
click=
"closeOk"
>
取消
</Button>
<Button
type=
"primary"
@
click=
"
lowerHair"
>
排产
</Button>
<Button
type=
"primary"
@
click=
"
Determine('formItem')"
>
确定
</Button>
</FormItem>
</Form>
</div>
</
template
>
<
script
>
import
CheckboxList
from
"./checkboxList"
;
import
Api
from
"./api"
;
export
default
{
name
:
"set"
,
components
:
{
CheckboxList
},
props
:
{
group
:
{
default
:
Object
,
orderId
:
Number
,
routingHeaderId
:
Number
}
detailId
:
Number
,
indexId
:
Number
,
mode
:
Number
},
data
()
{
return
{
orderId
:
0
,
//订单id
routingHeaderId
:
0
,
//工艺规程id
formItem
:
{
resourcesType
:
0
,
radio
:
"0"
,
time
:
""
,
beginTime
:
""
,
endTime
:
""
,
textarea
:
""
remark
:
""
,
departmentTitle
:
""
,
shopId
:
""
,
shopName
:
""
},
listGroup
:
[
{
equip_name
:
"调试组"
,
isClick
:
true
},
{
equip_name
:
"装配组"
}
],
tagGroup
:
[
{
id
:
1
,
name
:
"张芳"
,
class
:
"1级"
},
{
id
:
2
,
name
:
"张芳"
,
class
:
"1级"
},
{
id
:
4
,
name
:
"张芳"
,
class
:
"1级"
},
{
id
:
5
,
name
:
"张芳"
,
class
:
"1级"
}
],
classList
:
[
{
shopId
:
"0"
,
label
:
"调试组"
},
{
shopId
:
"1"
,
label
:
"装配组"
},
{
shopId
:
"2"
,
label
:
"计划组"
},
{
shopId
:
"3"
,
label
:
"管理组"
}
]
};
},
mounted
()
{},
// computed: {
// tagList() {
// if (this.tagdata.length > 0) {
// let items = this.tagdata.filter((u) => {
// return
// })
// return items
// } else {
// return []
// }
// }
// },
methods
:
{
lowerHair
(
v
)
{
if
(
this
.
formItem
.
radio
==
0
)
{
//一级排产选择人员
let
urseId
=
[];
for
(
var
i
=
0
;
i
<
this
.
tagGroup
.
length
;
i
++
)
{
urseId
.
push
(
this
.
tagGroup
[
i
].
id
);
}
let
items
=
[
workShop
:
[],
listClass
:
[],
ruleValidate
:
{
time
:
[
{
detailId
:
0
,
userIds
:
urseId
,
quantity
:
0
,
beginTime
:
this
.
formItem
.
beginTime
,
endTime
:
this
.
formItem
.
endTime
}
];
let
params1
=
{
orderIds
:
this
.
group
.
orderId
,
routingHeaderId
:
this
.
group
.
routingHeaderId
,
items
:
items
};
Api
.
flonestepschedule
(
params1
).
then
(
r
=>
{
if
(
r
.
success
)
{
required
:
true
,
type
:
"date"
,
message
:
"请选择时间"
,
trigger
:
"change"
}
});
}
else
if
(
this
.
formItem
.
radio
==
1
)
{
//二级排产选择班组
let
items
=
[
],
userIds
:
[
{
detailId
:
0
,
userIds
:
urseId
,
quantity
:
0
,
beginTime
:
this
.
formItem
.
beginTime
,
endTime
:
this
.
formItem
.
endTime
required
:
true
,
message
:
"请选择人员"
,
trigger
:
"change"
}
];
let
params2
=
{
orderIds
:
this
.
group
.
orderId
,
routingHeaderId
:
this
.
group
.
routingHeaderId
,
items
:
items
};
Api
.
fltwostepschedule
(
params2
).
then
(
r
=>
{
if
(
r
.
success
)
{
],
shopId
:
[
{
required
:
true
,
message
:
"请选择班组"
,
trigger
:
"change"
}
});
]
}
};
},
mounted
()
{
this
.
getWorkshop
();
},
methods
:
{
//确定
Determine
(
name
)
{
if
(
this
.
formItem
.
time
==
""
)
{
this
.
$Message
.
error
(
"工时不能为空"
);
return
false
;
}
else
if
(
this
.
mode
==
1
)
{
if
(
!
this
.
formItem
.
userIds
)
{
this
.
$Message
.
error
(
"人员不能为空"
);
return
false
;
}
}
else
if
(
this
.
mode
==
2
)
{
if
(
!
this
.
formItem
.
shopId
)
{
this
.
$Message
.
error
(
"班组不能为空"
);
return
false
;
}
}
this
.
formItem
.
detailId
=
this
.
detailId
;
this
.
$emit
(
"on-DetermineOk"
,
this
.
formItem
,
this
.
indexId
);
},
closeOk
()
{
this
.
$emit
(
"closeOk"
);
},
handleClose
(
nodeKey
)
{
// this.$refs.users.handleCheck({ checked: false, nodeKey: nodeKey });
},
setData
(
val
)
{
this
.
tagGroup
=
val
;
},
...
...
@@ -228,15 +139,50 @@ export default {
this
.
formItem
.
beginTime
=
val
[
0
];
this
.
formItem
.
endTime
=
val
[
1
];
},
closeTag
()
{}
closeTag
()
{},
//部门(班组)
getWorkshop
()
{
let
url
=
`
${
systemUrl
}
/user/userdepartmentsofworkshop`
;
this
.
$api
.
get
(
url
).
then
(
r
=>
{
if
(
r
.
result
)
{
this
.
workShop
=
r
.
result
;
}
});
},
renderContent
(
h
,
{
root
,
node
,
data
})
{
//渲染树的样式
return
h
(
"span"
,
{
style
:
{
cursor
:
"pointer"
},
on
:
{
click
:
()
=>
{
this
.
handleSelect
(
data
);
//手动选择树节点
}
}
},
data
.
title
);
},
handleSelect
(
data
)
{
let
obj
=
{
label
:
data
.
title
,
value
:
data
.
value
};
this
.
listClass
=
[];
this
.
listClass
.
push
(
obj
);
this
.
formItem
.
shopId
=
this
.
listClass
[
0
].
value
;
this
.
formItem
.
shopName
=
this
.
listClass
[
0
].
label
;
}
},
watch
:
{
// resourcesType(v) {
// if (v != null) {
// this.formItem.resourcesType = v;
// this.getList(v);
// }
// }
"formItem.radio"
(
v
)
{
if
(
v
==
1
)
{
this
.
getWorkshop
();
}
}
}
};
</
script
>
...
...
pages/technology/details.vue
View file @
f3998490
...
...
@@ -11,14 +11,14 @@
<div
class=
"details_body"
>
<Menu
mode=
"horizontal"
theme=
"light"
active-name=
"1"
>
<MenuItem
name=
"1"
to=
"/technology/details/working"
>
工序
</MenuItem>
<MenuItem
name=
"2"
to=
"/technology/details/
control
card"
>
质控卡
</MenuItem>
<MenuItem
name=
"3"
to=
"/technology/details/
process
"
>
工艺BOM
</MenuItem>
<MenuItem
name=
"2"
to=
"/technology/details/
routingqc
card"
>
质控卡
</MenuItem>
<MenuItem
name=
"3"
to=
"/technology/details/
routingsupporting
"
>
工艺BOM
</MenuItem>
<MenuItem
name=
"4"
to=
"/technology/details/setup/setupDetails"
>
生产准备
</MenuItem>
</Menu>
</div>
</Header>
<Layout
class=
"bottom_box"
>
<nuxt-child
keep-alive
></nuxt-child>
<nuxt-child
keep-alive
></nuxt-child>
</Layout>
</Layout>
</
template
>
...
...
@@ -35,6 +35,7 @@ export default {
},
created
()
{
this
.
treeHeight
=
window
.
innerHeight
-
140
},
async
fetch
({
store
,
params
})
{
await
store
.
dispatch
(
'loadDictionary'
)
// 加载数据字典
...
...
pages/technology/details/routingqccard/add.vue
0 → 100644
View file @
f3998490
<
template
>
<Form
ref=
"form"
:model=
"entity"
:rules=
"rules"
:label-width=
"100"
>
<Row>
<!--
<Col
:span=
"12"
>
<FormItem
:label=
"l('creationTime')"
prop=
"creationTime"
>
<DatePicker
type=
"date"
v-model=
"entity.creationTime"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('creatorUserId')"
prop=
"creatorUserId"
>
<InputNumber
v-model=
"entity.creatorUserId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('lastModificationTime')"
prop=
"lastModificationTime"
>
<DatePicker
type=
"date"
v-model=
"entity.lastModificationTime"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('lastModifierUserId')"
prop=
"lastModifierUserId"
>
<InputNumber
v-model=
"entity.lastModifierUserId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('isDeleted')"
prop=
"isDeleted"
>
<Input
v-model=
"entity.isDeleted"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('deleterUserId')"
prop=
"deleterUserId"
>
<InputNumber
v-model=
"entity.deleterUserId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('deletionTime')"
prop=
"deletionTime"
>
<DatePicker
type=
"date"
v-model=
"entity.deletionTime"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('extend')"
prop=
"extend"
>
<Input
v-model=
"entity.extend"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingStepId')"
prop=
"routingStepId"
>
<InputNumber
v-model=
"entity.routingStepId"
></InputNumber>
</FormItem>
</Col>
-->
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingHeaderName')"
prop=
"routingHeaderId"
>
<!--
<InputNumber
v-model=
"entity.routingHeaderId"
></InputNumber>
-->
181
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingDetailName')"
prop=
"routingDetailId"
>
<Select
v-model=
"entity.routingDetailId"
>
<Option
v-for=
"(item,index) in routingDetailList"
:value=
"item.value"
:key=
"index"
>
{{
item
.
label
}}
</Option>
</Select>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('checkContent')"
prop=
"checkContent"
>
<Input
v-model=
"entity.checkContent"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('measurementUnit')"
prop=
"measurementUnit"
>
<Input
v-model=
"entity.measurementUnit"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('checkType')"
prop=
"checkType"
>
<Dictionary
code=
"QC.checktype"
v-model=
"entity.checkType"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('fillintype')"
prop=
"fillintype"
>
<Dictionary
code=
"QC.fillintype"
v-model=
"entity.fillintype"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('checkParams')"
prop=
"checkParams"
>
<Input
v-model=
"entity.checkParams"
type=
"textarea"
:rows=
"2"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('qualityTemplate')"
prop=
"qualityTemplate"
>
<Input
v-model=
"entity.qualityTemplate"
type=
"textarea"
:rows=
"2"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('isphotograph')"
prop=
"isphotograph"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.isphotograph"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('status')"
prop=
"status"
>
<Dictionary
code=
"Process.Status"
v-model=
"entity.status"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"24"
>
<FormItem
:label=
"l('remark')"
prop=
"remark"
>
<Input
v-model=
"entity.remark"
type=
"textarea"
:rows=
"2"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('productionRequirement')"
prop=
"productionRequirement"
>
<Input
v-model=
"entity.productionRequirement"
type=
"textarea"
:rows=
"2"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('standard')"
prop=
"standard"
>
<Input
v-model=
"entity.standard"
type=
"textarea"
:rows=
"2"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('qualityTemplateName')"
prop=
"qualityTemplateName"
>
<Input
v-model=
"entity.qualityTemplateName"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('isImportant')"
prop=
"isImportant"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.isImportant"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('firstCheck')"
prop=
"firstCheck"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.firstCheck"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('inspection')"
prop=
"inspection"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.inspection"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('inspectionTime')"
prop=
"inspectionTime"
>
<InputNumber
v-model=
"entity.inspectionTime"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('sampling')"
prop=
"sampling"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.sampling"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('samplingBatch')"
prop=
"samplingBatch"
>
<Input
v-model=
"entity.samplingBatch"
></Input>
</FormItem>
</Col>
</Row>
<FormItem>
<Button
type=
"primary"
@
click=
"handleSubmit"
:disabled=
"disabled"
>
保存
</Button>
<Button
@
click=
"handleClose"
class=
"ml20"
>
取消
</Button>
</FormItem>
</Form>
</
template
>
<
script
>
import
Api
from
"./api"
;
export
default
{
name
:
"Add"
,
data
()
{
return
{
disabled
:
false
,
entity
:
{
creationTime
:
null
,
creatorUserId
:
null
,
lastModificationTime
:
null
,
lastModifierUserId
:
null
,
isDeleted
:
null
,
deleterUserId
:
null
,
deletionTime
:
null
,
routingHeaderId
:
null
,
routingDetailId
:
null
,
routingStepId
:
null
,
checkContent
:
""
,
checkType
:
null
,
checkParams
:
""
,
measurementUnit
:
""
,
fillintype
:
null
,
qualityTemplate
:
""
,
isphotograph
:
null
,
status
:
null
,
extend
:
""
,
remark
:
""
,
productionRequirement
:
""
,
standard
:
""
,
qualityTemplateName
:
""
,
isImportant
:
null
,
firstCheck
:
null
,
inspection
:
null
,
inspectionTime
:
null
,
sampling
:
null
,
samplingBatch
:
""
},
rules
:
{
name
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}]
},
routingDetailList
:
[]
};
},
props
:
{
v
:
Object
,
eid
:
Number
},
mounted
()
{
this
.
loadDetails
();
if
(
this
.
eid
>
0
)
{
this
.
load
(
this
.
eid
);
}
},
methods
:
{
handleSubmit
()
{
this
.
$refs
.
form
.
validate
(
v
=>
{
if
(
v
)
{
this
.
disabled
=
true
;
Api
.
create
(
this
.
entity
)
.
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
()
{
this
.
$emit
(
"on-close"
);
},
load
(
v
)
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
this
.
entity
=
r
.
result
;
this
.
entity
.
id
=
0
;
});
},
loadDetails
()
{
//获取工序列表
let
parms
=
{
headerID
:
181
};
Api
.
pagedDetails
(
parms
).
then
(
r
=>
{
let
tempDetails
=
r
.
result
;
let
tempD
=
[];
tempDetails
.
forEach
(
data
=>
{
let
tempObj
=
{};
tempObj
.
value
=
data
.
id
;
tempObj
.
label
=
data
.
name
;
tempD
.
push
(
tempObj
);
});
this
.
routingDetailList
=
tempD
;
});
},
l
(
key
)
{
key
=
"routing_qc_card"
+
"."
+
key
;
return
this
.
$t
(
key
);
}
},
watch
:
{
v
()
{
this
.
entity
=
this
.
$u
.
clone
(
this
.
v
);
},
eid
(
v
)
{
if
(
v
>
0
)
{
this
.
load
(
v
);
}
}
}
};
</
script
>
pages/technology/details/routingqccard/api.js
0 → 100644
View file @
f3998490
import
Api
from
'@/plugins/request'
export
default
{
index
:
`
${
technologyUrl
}
routingqccard/paged`
,
paged
(
params
)
{
return
Api
.
post
(
`
${
technologyUrl
}
routingqccard/paged`
,
params
);
},
get
(
params
)
{
return
Api
.
get
(
`
${
technologyUrl
}
routingqccard/get`
,
params
);
},
create
(
params
)
{
return
Api
.
post
(
`
${
technologyUrl
}
routingqccard/create`
,
params
);
},
update
(
params
)
{
return
Api
.
put
(
`
${
technologyUrl
}
routingqccard/update`
,
params
);
},
delete
(
id
)
{
return
Api
.
delete
(
`
${
technologyUrl
}
routingqccard/delete`
,
{
params
:
{
id
:
id
}
});
},
deletes
(
params
)
{
return
Api
.
post
(
`
${
technologyUrl
}
routingqccard/batchdelete`
,
params
);
},
pagedDetails
(
params
)
{
//获取工序列表
return
Api
.
get
(
`
${
technologyUrl
}
routingdetail/getlistbyheaderid`
,
params
);
},
}
pages/technology/details/routingqccard/detail.vue
0 → 100644
View file @
f3998490
<
template
>
<div
class=
"detail"
>
<Row>
<Filed
:span=
"12"
:name=
"l('routingHeaderName')"
>
{{
entity
.
routingHeaderId
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('routingDetailName')"
>
{{
entity
.
routingDetailId
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('routingStepId')"
v-if=
"false"
>
{{
entity
.
routingStepId
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('checkContent')"
>
{{
entity
.
checkContent
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('checkType')"
>
<state
code=
"QC.checktype"
:value=
"entity.checkType+''"
type=
"text"
></state>
</Filed>
<Filed
:span=
"24"
:name=
"l('checkParams')"
>
{{
entity
.
checkParams
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('measurementUnit')"
>
{{
entity
.
measurementUnit
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('fillintype')"
>
<state
code=
"QC.fillintype"
:value=
"entity.fillintype+''"
type=
"text"
></state>
</Filed>
<Filed
:span=
"24"
:name=
"l('qualityTemplate')"
>
{{
entity
.
qualityTemplate
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('isphotograph')"
>
{{
entity
.
isphotograph
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('status')"
><state
code=
"Process.state"
:value=
"entity.status+''"
type=
"text"
></state></Filed>
<Filed
:span=
"12"
:name=
"l('extend')"
v-if=
"false"
>
{{
entity
.
extend
}}
</Filed>
<Filed
:span=
"24"
:name=
"l('remark')"
>
{{
entity
.
remark
}}
</Filed>
<Filed
:span=
"24"
:name=
"l('productionRequirement')"
>
{{
entity
.
productionRequirement
}}
</Filed>
<Filed
:span=
"24"
:name=
"l('standard')"
>
{{
entity
.
standard
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('qualityTemplateName')"
>
{{
entity
.
qualityTemplateName
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('isImportant')"
><state
code=
"Process.state"
:value=
"entity.isImportant+''"
type=
"text"
></state></Filed>
<Filed
:span=
"12"
:name=
"l('firstCheck')"
><state
code=
"Process.state"
:value=
"entity.firstCheck+''"
type=
"text"
></state></Filed>
<Filed
:span=
"12"
:name=
"l('inspection')"
><state
code=
"Process.state"
:value=
"entity.inspection+''"
type=
"text"
></state></Filed>
<Filed
:span=
"12"
:name=
"l('inspectionTime')"
>
{{
entity
.
inspectionTime
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('sampling')"
>
<state
code=
"Process.state"
:value=
"entity.sampling+''"
type=
"text"
></state></Filed>
<Filed
:span=
"12"
:name=
"l('samplingBatch')"
>
{{
entity
.
samplingBatch
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('creationTime')"
>
{{
entity
.
creationTime
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('creatorUserId')"
><User
:value=
"entity.creatorUserId"
></User></Filed>
<Filed
:span=
"12"
:name=
"l('lastModificationTime')"
>
{{
entity
.
lastModificationTime
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('lastModifierUserId')"
><User
v-model=
"entity.lastModifierUserId"
></User></Filed>
<!--
<Filed
:span=
"12"
:name=
"l('isDeleted')"
>
{{
entity
.
isDeleted
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('deleterUserId')"
>
{{
entity
.
deleterUserId
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('deletionTime')"
>
{{
entity
.
deletionTime
}}
</Filed>
-->
</Row>
</div>
</
template
>
<
script
>
import
Api
from
"./api"
;
export
default
{
name
:
"Add"
,
data
()
{
return
{
entity
:
{},
rules
:
{
name
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}],
code
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}]
}
};
},
props
:
{
eid
:
Number
},
mounted
()
{
if
(
this
.
eid
>
0
)
{
this
.
load
(
this
.
eid
);
}
},
methods
:
{
load
(
v
)
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
this
.
entity
=
r
.
result
;
this
.
$emit
(
"on-load"
);
});
},
handleClose
()
{
this
.
$emit
(
"on-close"
);
},
l
(
key
)
{
key
=
"routing_qc_card"
+
"."
+
key
;
return
this
.
$t
(
key
);
}
},
watch
:
{
eid
(
v
)
{
if
(
v
>
0
)
{
this
.
load
(
v
);
}
}
}
};
</
script
>
pages/technology/details/routingqccard/edit.vue
0 → 100644
View file @
f3998490
<
template
>
<Form
ref=
"form"
:model=
"entity"
:rules=
"rules"
:label-width=
"100"
>
<Row>
<!--
<Col
:span=
"12"
>
<FormItem
:label=
"l('creationTime')"
prop=
"creationTime"
>
<DatePicker
type=
"date"
v-model=
"entity.creationTime"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('creatorUserId')"
prop=
"creatorUserId"
>
<InputNumber
v-model=
"entity.creatorUserId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('lastModificationTime')"
prop=
"lastModificationTime"
>
<DatePicker
type=
"date"
v-model=
"entity.lastModificationTime"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('lastModifierUserId')"
prop=
"lastModifierUserId"
>
<InputNumber
v-model=
"entity.lastModifierUserId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('isDeleted')"
prop=
"isDeleted"
>
<Input
v-model=
"entity.isDeleted"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('deleterUserId')"
prop=
"deleterUserId"
>
<InputNumber
v-model=
"entity.deleterUserId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('deletionTime')"
prop=
"deletionTime"
>
<DatePicker
type=
"date"
v-model=
"entity.deletionTime"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingStepId')"
prop=
"routingStepId"
>
<InputNumber
v-model=
"entity.routingStepId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('extend')"
prop=
"extend"
>
<Input
v-model=
"entity.extend"
></Input>
</FormItem>
</Col>
-->
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingHeaderId')"
prop=
"routingHeaderId"
>
<InputNumber
v-model=
"entity.routingHeaderId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingDetailId')"
prop=
"routingDetailId"
>
<InputNumber
v-model=
"entity.routingDetailId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('checkContent')"
prop=
"checkContent"
>
<Input
v-model=
"entity.checkContent"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('measurementUnit')"
prop=
"measurementUnit"
>
<Input
v-model=
"entity.measurementUnit"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('checkType')"
prop=
"checkType"
>
<Dictionary
code=
"QC.checktype"
v-model=
"entity.checkType"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('fillintype')"
prop=
"fillintype"
>
<Dictionary
code=
"QC.fillintype"
v-model=
"entity.fillintype"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('checkParams')"
prop=
"checkParams"
>
<Input
v-model=
"entity.checkParams"
type=
"textarea"
:rows=
"2"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('qualityTemplate')"
prop=
"qualityTemplate"
>
<Input
v-model=
"entity.qualityTemplate"
type=
"textarea"
:rows=
"2"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('isphotograph')"
prop=
"isphotograph"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.isphotograph"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('status')"
prop=
"status"
>
<Dictionary
code=
"Process.Status"
v-model=
"entity.status"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"24"
>
<FormItem
:label=
"l('remark')"
prop=
"remark"
>
<Input
v-model=
"entity.remark"
type=
"textarea"
:rows=
"2"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('productionRequirement')"
prop=
"productionRequirement"
>
<Input
v-model=
"entity.productionRequirement"
type=
"textarea"
:rows=
"2"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('standard')"
prop=
"standard"
>
<Input
v-model=
"entity.standard"
type=
"textarea"
:rows=
"2"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('qualityTemplateName')"
prop=
"qualityTemplateName"
>
<Input
v-model=
"entity.qualityTemplateName"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('isImportant')"
prop=
"isImportant"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.isImportant"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('firstCheck')"
prop=
"firstCheck"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.firstCheck"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('inspection')"
prop=
"inspection"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.inspection"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('inspectionTime')"
prop=
"inspectionTime"
>
<InputNumber
v-model=
"entity.inspectionTime"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('sampling')"
prop=
"sampling"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.sampling"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('samplingBatch')"
prop=
"samplingBatch"
>
<Input
v-model=
"entity.samplingBatch"
></Input>
</FormItem>
</Col>
</Row>
<FormItem>
<Button
type=
"primary"
@
click=
"handleSubmit"
:disabled=
"disabled"
>
保存
</Button>
<Button
@
click=
"handleClose"
class=
"ml20"
>
取消
</Button>
</FormItem>
</Form>
</
template
>
<
script
>
import
Api
from
"./api"
;
export
default
{
name
:
"Edit"
,
data
()
{
return
{
disabled
:
false
,
entity
:
{},
rules
:
{
name
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}]
}
};
},
props
:
{
eid
:
Number
},
mounted
()
{
if
(
this
.
eid
>
0
)
{
this
.
load
(
this
.
eid
);
}
},
methods
:
{
load
(
v
)
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
this
.
entity
=
r
.
result
;
});
},
handleSubmit
()
{
this
.
$refs
.
form
.
validate
(
v
=>
{
if
(
v
)
{
this
.
disabled
=
true
;
Api
.
update
(
this
.
entity
)
.
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
()
{
this
.
$emit
(
"on-close"
);
},
l
(
key
)
{
key
=
"routing_qc_card"
+
"."
+
key
;
return
this
.
$t
(
key
);
}
},
watch
:
{
eid
(
v
)
{
if
(
v
!=
0
)
{
this
.
load
(
v
);
}
}
}
};
</
script
>
pages/technology/details/routingqccard/index.vue
0 → 100644
View file @
f3998490
<
template
>
<div>
<DataGrid
:columns=
"columns"
ref=
"grid"
:action=
"action"
>
<template
slot=
"easySearch"
>
<Form
ref=
"formInline"
:model=
"easySearch"
inline
>
<FormItem
prop=
"keys"
>
<Input
placeholder=
"请输入关键字检测要求/测量单位/模板/备注/生产要求/标准指标/模板名称/抽检批次"
v-model=
"easySearch.keys.value"
/>
</FormItem>
<FormItem>
<Button
type=
"primary"
@
click=
"search"
>
查询
</Button>
</FormItem>
</Form>
</
template
>
<
template
slot=
"searchForm"
>
<Search
/>
</
template
>
<
template
slot=
"buttons"
>
<Button
type=
"primary"
@
click=
"add"
>
新增
</Button>
</
template
>
</DataGrid>
<Modal
v-model=
"modal"
:title=
"title"
width=
"1200"
footer-hide
>
<component
:is=
"detail"
:eid=
"curId"
@
on-close=
"cancel"
@
on-ok=
"ok"
/>
</Modal>
</div>
</template>
<
script
>
import
Api
from
"./api"
;
import
Search
from
"./search"
;
export
default
{
name
:
"list"
,
components
:
{
Search
},
head
:
{
title
:
"质检卡"
,
author
:
"henq"
,
description
:
"routing_qc_card 4/27/2020 10:31:00 AM"
},
data
()
{
return
{
action
:
Api
.
index
,
easySearch
:
{
keys
:
{
op
:
"checkParams,measurementUnit,qualityTemplate,remark,productionRequirement,standard,qualityTemplateName,samplingBatch"
,
value
:
null
}
},
modal
:
false
,
title
:
"新增"
,
detail
:
null
,
curId
:
0
,
columns
:
[
{
key
:
"id"
,
title
:
this
.
l
(
"id"
),
hide
:
true
,
align
:
"left"
},
{
key
:
"creationTime"
,
title
:
this
.
l
(
"creationTime"
),
align
:
"left"
,
high
:
true
},
{
key
:
"creatorUserId"
,
title
:
this
.
l
(
"creatorUserId"
),
align
:
"left"
,
high
:
true
},
{
key
:
"lastModificationTime"
,
title
:
this
.
l
(
"lastModificationTime"
),
align
:
"left"
,
high
:
true
},
{
key
:
"lastModifierUserId"
,
title
:
this
.
l
(
"lastModifierUserId"
),
align
:
"left"
,
high
:
true
},
{
key
:
"routingHeaderId"
,
title
:
this
.
l
(
"routingHeaderId"
),
align
:
"left"
,
high
:
true
},
{
key
:
"routingDetailId"
,
title
:
this
.
l
(
"routingDetailId"
),
align
:
"left"
,
high
:
true
},
{
key
:
"routingStepId"
,
title
:
this
.
l
(
"routingStepId"
),
align
:
"left"
,
high
:
true
},
{
key
:
"checkType"
,
title
:
this
.
l
(
"checkType"
),
align
:
"left"
,
high
:
true
,
code
:
"QC.checktype"
},
{
key
:
"checkParams"
,
title
:
this
.
l
(
"checkParams"
),
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"measurementUnit"
,
title
:
this
.
l
(
"measurementUnit"
),
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"fillintype"
,
title
:
this
.
l
(
"fillintype"
),
align
:
"left"
,
high
:
true
,
code
:
"QC.fillintype"
},
{
key
:
"qualityTemplate"
,
title
:
this
.
l
(
"qualityTemplate"
),
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"isphotograph"
,
title
:
this
.
l
(
"isphotograph"
),
align
:
"left"
,
high
:
true
,
code
:
"Process.state"
},
{
key
:
"status"
,
title
:
this
.
l
(
"status"
),
align
:
"left"
,
high
:
true
,
code
:
"Process.Status"
},
{
key
:
"productionRequirement"
,
title
:
this
.
l
(
"productionRequirement"
),
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"standard"
,
title
:
this
.
l
(
"standard"
),
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"qualityTemplateName"
,
title
:
this
.
l
(
"qualityTemplateName"
),
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"isImportant"
,
title
:
this
.
l
(
"isImportant"
),
align
:
"left"
,
high
:
true
,
code
:
"Process.state"
},
{
key
:
"firstCheck"
,
title
:
this
.
l
(
"firstCheck"
),
align
:
"left"
,
high
:
true
,
code
:
"Process.state"
},
{
key
:
"inspection"
,
title
:
this
.
l
(
"inspection"
),
align
:
"left"
,
high
:
true
,
code
:
"Process.state"
},
{
key
:
"inspectionTime"
,
title
:
this
.
l
(
"inspectionTime"
),
align
:
"left"
,
high
:
true
},
{
key
:
"sampling"
,
title
:
this
.
l
(
"sampling"
),
align
:
"left"
,
high
:
true
,
code
:
"Process.state"
},
{
key
:
"samplingBatch"
,
title
:
this
.
l
(
"samplingBatch"
),
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
title
:
"操作"
,
key
:
"action"
,
width
:
140
,
align
:
"center"
,
render
:
(
h
,
params
)
=>
{
return
h
(
"div"
,
{
class
:
"action"
},
[
h
(
"op"
,
{
attrs
:
{
oprate
:
"detail"
},
on
:
{
click
:
()
=>
this
.
view
(
params
.
row
.
id
)
}
},
"查看"
),
//h('op', { attrs: { oprate: 'copy' }, on: { click: () => this.copy(params.row.id) } }, '克隆'),
h
(
"op"
,
{
attrs
:
{
oprate
:
"edit"
},
on
:
{
click
:
()
=>
this
.
edit
(
params
.
row
.
id
)
}
},
"编辑"
),
h
(
"op"
,
{
attrs
:
{
oprate
:
"delete"
},
on
:
{
click
:
()
=>
this
.
remove
(
params
.
row
.
id
)
}
},
"删除"
)
]);
}
}
]
};
},
mounted
()
{
console
.
log
(
this
);
},
async
fetch
({
store
,
params
})
{
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
},
methods
:
{
ok
()
{
this
.
$refs
.
grid
.
load
();
this
.
modal
=
false
;
this
.
curId
=
0
;
},
search
()
{
this
.
$refs
.
grid
.
reload
(
this
.
easySearch
);
},
add
()
{
this
.
curId
=
0
;
this
.
title
=
"新增"
;
this
.
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
;
},
edit
(
id
)
{
this
.
curId
=
id
;
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
=
"routing_qc_card"
+
"."
+
key
;
return
this
.
$t
(
vkey
)
||
key
;
}
}
};
</
script
>
<
style
lang=
"less"
>
</
style
>
\ No newline at end of file
pages/technology/details/routingqccard/search.vue
0 → 100644
View file @
f3998490
<
template
>
<Form
ref=
"form"
:model=
"condition"
:label-width=
"100"
>
<Row>
<Col
:span=
"12"
v-if=
"condition.routingHeaderId.show"
>
<FormItem
:label=
"l('routingHeaderId')"
prop=
"routingHeaderId"
>
<Input
v-model=
"condition.routingHeaderId.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.routingDetailId.show"
>
<FormItem
:label=
"l('routingDetailId')"
prop=
"routingDetailId"
>
<Input
v-model=
"condition.routingDetailId.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.checkType.show"
>
<FormItem
:label=
"l('checkType')"
prop=
"checkType"
>
<Dictionary
code=
"QC.checktype"
v-model=
"condition.checkType.value"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"24"
v-if=
"condition.checkParams.show"
>
<FormItem
:label=
"l('checkParams')"
prop=
"checkParams"
>
<Input
v-model=
"condition.checkParams.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.measurementUnit.show"
>
<FormItem
:label=
"l('measurementUnit')"
prop=
"measurementUnit"
>
<Input
v-model=
"condition.measurementUnit.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.fillintype.show"
>
<FormItem
:label=
"l('fillintype')"
prop=
"fillintype"
>
<Dictionary
code=
"QC.fillintype"
v-model=
"condition.fillintype.value"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"24"
v-if=
"condition.qualityTemplate.show"
>
<FormItem
:label=
"l('qualityTemplate')"
prop=
"qualityTemplate"
>
<Input
v-model=
"condition.qualityTemplate.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.isphotograph.show"
>
<FormItem
:label=
"l('isphotograph')"
prop=
"isphotograph"
>
<Dictionary
code=
"Process.state"
v-model=
"condition.isphotograph.value"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.status.show"
>
<FormItem
:label=
"l('status')"
prop=
"status"
>
<Dictionary
code=
"Process.Status"
v-model=
"condition.status.value"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"24"
v-if=
"condition.remark.show"
>
<FormItem
:label=
"l('remark')"
prop=
"remark"
>
<Input
v-model=
"condition.remark.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"24"
v-if=
"condition.productionRequirement.show"
>
<FormItem
:label=
"l('productionRequirement')"
prop=
"productionRequirement"
>
<Input
v-model=
"condition.productionRequirement.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"24"
v-if=
"condition.standard.show"
>
<FormItem
:label=
"l('standard')"
prop=
"standard"
>
<Input
v-model=
"condition.standard.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.qualityTemplateName.show"
>
<FormItem
:label=
"l('qualityTemplateName')"
prop=
"qualityTemplateName"
>
<Input
v-model=
"condition.qualityTemplateName.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.isImportant.show"
>
<FormItem
:label=
"l('isImportant')"
prop=
"isImportant"
>
<Dictionary
code=
"Process.state"
v-model=
"condition.isImportant.value"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.firstCheck.show"
>
<FormItem
:label=
"l('firstCheck')"
prop=
"firstCheck"
>
<Dictionary
code=
"Process.state"
v-model=
"condition.firstCheck.value"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.inspection.show"
>
<FormItem
:label=
"l('inspection')"
prop=
"inspection"
>
<Dictionary
code=
"Process.state"
v-model=
"condition.inspection.value"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.inspectionTime.show"
>
<FormItem
:label=
"l('inspectionTime')"
prop=
"inspectionTime"
>
<Input
v-model=
"condition.inspectionTime.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.sampling.show"
>
<FormItem
:label=
"l('sampling')"
prop=
"sampling"
>
<Dictionary
code=
"Process.state"
v-model=
"condition.sampling.value"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.samplingBatch.show"
>
<FormItem
:label=
"l('samplingBatch')"
prop=
"samplingBatch"
>
<Input
v-model=
"condition.samplingBatch.value"
></Input>
</FormItem>
</Col>
</Row>
<Row>
<Col
:span=
"12"
v-if=
"condition.creationTime.show"
>
<FormItem
:label=
"l('creationTime')"
prop=
"creationTime"
>
<DatePicker
type=
"daterange"
v-model=
"condition.creationTime.value"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.creatorUserId.show"
>
<FormItem
:label=
"l('creatorUserId')"
prop=
"creatorUserId"
>
<Input
v-model=
"condition.creatorUserId.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.lastModificationTime.show"
>
<FormItem
:label=
"l('lastModificationTime')"
prop=
"lastModificationTime"
>
<DatePicker
type=
"daterange"
v-model=
"condition.lastModificationTime.value"
></DatePicker>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.lastModifierUserId.show"
>
<FormItem
:label=
"l('lastModifierUserId')"
prop=
"lastModifierUserId"
>
<Input
v-model=
"condition.lastModifierUserId.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.deletionTime.show"
>
<FormItem
:label=
"l('deletionTime')"
prop=
"deletionTime"
>
<DatePicker
type=
"daterange"
v-model=
"condition.deletionTime.value"
></DatePicker>
</FormItem>
</Col>
</Row>
</Form>
</
template
>
<
script
>
import
Api
from
"./api"
;
export
default
{
name
:
"Add"
,
data
()
{
return
{
condition
:
{
creationTime
:
{
op
:
"Range"
,
value
:
null
,
show
:
true
},
creatorUserId
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
lastModificationTime
:
{
op
:
"Range"
,
value
:
null
,
show
:
true
},
lastModifierUserId
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
deletionTime
:
{
op
:
"Range"
,
value
:
null
,
show
:
false
},
routingHeaderId
:
{
op
:
"Equal"
,
value
:
null
,
show
:
false
},
routingDetailId
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
routingStepId
:
{
op
:
"Equal"
,
value
:
null
,
show
:
false
},
checkType
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
checkParams
:
{
op
:
"Equal"
,
value
:
null
,
show
:
false
},
measurementUnit
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
fillintype
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
qualityTemplate
:
{
op
:
"Equal"
,
value
:
null
,
show
:
false
},
isphotograph
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
status
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
remark
:
{
op
:
"Equal"
,
value
:
null
,
show
:
false
},
productionRequirement
:
{
op
:
"Equal"
,
value
:
null
,
show
:
false
},
standard
:
{
op
:
"Equal"
,
value
:
null
,
show
:
false
},
qualityTemplateName
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
isImportant
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
firstCheck
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
inspection
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
inspectionTime
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
sampling
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
samplingBatch
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
}
}
};
},
methods
:
{
handleClose
()
{
this
.
$emit
(
"on-close"
);
},
l
(
key
)
{
key
=
"routing_qc_card"
+
"."
+
key
;
return
this
.
$t
(
key
);
}
}
};
</
script
>
pages/technology/details/routingsupporting/add.vue
0 → 100644
View file @
f3998490
<
template
>
<Form
ref=
"form"
:model=
"entity"
:rules=
"rules"
:label-width=
"90"
>
<Row>
<!--
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingStepId')"
prop=
"routingStepId"
>
<InputNumber
v-model=
"entity.routingStepId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('materialId')"
prop=
"materialId"
>
<InputNumber
v-model=
"entity.materialId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('extend')"
prop=
"extend"
>
<Input
v-model=
"entity.extend"
></Input>
</FormItem>
</Col>
-->
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingHeaderId')"
prop=
"routingHeaderId"
>
<InputNumber
v-model=
"entity.routingHeaderId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingDetailId')"
prop=
"routingDetailId"
>
<InputNumber
v-model=
"entity.routingDetailId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('materialType')"
prop=
"materialType"
>
<Dictionary
code=
"mes_xingchi_resource.material.materialReType"
v-model=
"entity.materialType"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('materialNumber')"
prop=
"materialNumber"
>
<Input
v-model=
"entity.materialNumber"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('nameMaterial')"
prop=
"nameMaterial"
>
<Input
v-model=
"entity.nameMaterial"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('quantity')"
prop=
"quantity"
>
<InputNumber
v-model=
"entity.quantity"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('brand')"
prop=
"brand"
>
<Input
v-model=
"entity.brand"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('specifications')"
prop=
"specifications"
>
<Input
v-model=
"entity.specifications"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('xhgg')"
prop=
"xhgg"
>
<Input
v-model=
"entity.xhgg"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('texture')"
prop=
"texture"
>
<Input
v-model=
"entity.texture"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('procurementStandards')"
prop=
"procurementStandards"
>
<Input
v-model=
"entity.procurementStandards"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('qualityGrade')"
prop=
"qualityGrade"
>
<Input
v-model=
"entity.qualityGrade"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('drawNum')"
prop=
"drawNum"
>
<Input
v-model=
"entity.drawNum"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('state')"
prop=
"state"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.state"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"24"
>
<FormItem
:label=
"l('remark')"
prop=
"remark"
>
<Input
v-model=
"entity.remark"
></Input>
</FormItem>
</Col>
</Row>
<FormItem>
<Button
type=
"primary"
@
click=
"handleSubmit"
:disabled=
"disabled"
>
保存
</Button>
<Button
@
click=
"handleClose"
class=
"ml20"
>
取消
</Button>
</FormItem>
</Form>
</
template
>
<
script
>
import
Api
from
"./api"
;
export
default
{
name
:
"Add"
,
data
()
{
return
{
disabled
:
false
,
entity
:
{
routingHeaderId
:
null
,
routingDetailId
:
null
,
routingStepId
:
null
,
quantity
:
null
,
materialId
:
null
,
materialType
:
""
,
materialNumber
:
""
,
nameMaterial
:
""
,
brand
:
""
,
specifications
:
""
,
xhgg
:
""
,
texture
:
""
,
procurementStandards
:
""
,
qualityGrade
:
""
,
state
:
null
,
extend
:
""
,
remark
:
""
,
drawNum
:
""
},
rules
:
{
name
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}]
}
};
},
props
:
{
v
:
Object
,
eid
:
Number
},
mounted
()
{
if
(
this
.
eid
>
0
)
{
this
.
load
(
this
.
eid
);
}
},
methods
:
{
handleSubmit
()
{
this
.
$refs
.
form
.
validate
(
v
=>
{
if
(
v
)
{
this
.
disabled
=
true
;
Api
.
create
(
this
.
entity
)
.
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
()
{
this
.
$emit
(
"on-close"
);
},
load
(
v
)
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
this
.
entity
=
r
.
result
;
this
.
entity
.
id
=
0
;
});
},
l
(
key
)
{
key
=
"routingsupporting"
+
"."
+
key
;
return
this
.
$t
(
key
);
}
},
watch
:
{
v
()
{
this
.
entity
=
this
.
$u
.
clone
(
this
.
v
);
},
eid
(
v
)
{
if
(
v
>
0
)
{
this
.
load
(
v
);
}
}
}
};
</
script
>
pages/technology/details/routingsupporting/api.js
0 → 100644
View file @
f3998490
import
Api
from
'@/plugins/request'
export
default
{
index
:
`
${
technologyUrl
}
routingsupporting/paged`
,
paged
(
params
)
{
return
Api
.
post
(
`
${
technologyUrl
}
routingsupporting/paged`
,
params
);
},
get
(
params
)
{
return
Api
.
get
(
`
${
technologyUrl
}
routingsupporting/get`
,
params
);
},
create
(
params
)
{
return
Api
.
post
(
`
${
technologyUrl
}
routingsupporting/create`
,
params
);
},
update
(
params
)
{
return
Api
.
put
(
`
${
technologyUrl
}
routingsupporting/update`
,
params
);
},
delete
(
id
)
{
return
Api
.
delete
(
`
${
technologyUrl
}
routingsupporting/delete`
,
{
params
:
{
id
:
id
}
});
},
deletes
(
params
)
{
return
Api
.
post
(
`
${
technologyUrl
}
routingsupporting/batchdelete`
,
params
);
}
}
pages/technology/details/routingsupporting/detail.vue
0 → 100644
View file @
f3998490
<
template
>
<div
class=
"detail"
>
<Row>
<Filed
:span=
"12"
:name=
"l('routingHeaderId')"
>
{{
entity
.
routingHeaderId
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('routingDetailId')"
>
{{
entity
.
routingDetailId
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('routingStepId')"
>
{{
entity
.
routingStepId
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('quantity')"
>
{{
entity
.
quantity
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('materialId')"
>
{{
entity
.
materialId
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('materialType')"
><state
code=
"mes_xingchi_resource.material.materialReType"
:value=
"entity.materialType+''"
type=
"text"
></state></Filed>
<Filed
:span=
"12"
:name=
"l('materialNumber')"
>
{{
entity
.
materialNumber
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('nameMaterial')"
>
{{
entity
.
nameMaterial
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('brand')"
>
{{
entity
.
brand
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('specifications')"
>
{{
entity
.
specifications
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('xhgg')"
>
{{
entity
.
xhgg
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('texture')"
>
{{
entity
.
texture
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('procurementStandards')"
>
{{
entity
.
procurementStandards
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('qualityGrade')"
>
{{
entity
.
qualityGrade
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('state')"
>
<state
code=
"Process.state"
:value=
"entity.state+''"
type=
"text"
></state>
</Filed>
<Filed
:span=
"12"
:name=
"l('extend')"
v-if=
"false"
>
{{
entity
.
extend
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('remark')"
>
{{
entity
.
remark
}}
</Filed>
<Filed
:span=
"12"
:name=
"l('drawNum')"
>
{{
entity
.
drawNum
}}
</Filed>
</Row>
</div>
</
template
>
<
script
>
import
Api
from
"./api"
;
export
default
{
name
:
"Add"
,
data
()
{
return
{
entity
:
{},
rules
:
{
name
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}],
code
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}]
}
};
},
props
:
{
eid
:
Number
},
mounted
()
{
if
(
this
.
eid
>
0
)
{
this
.
load
(
this
.
eid
);
}
},
methods
:
{
load
(
v
)
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
this
.
entity
=
r
.
result
;
this
.
$emit
(
"on-load"
);
});
},
handleClose
()
{
this
.
$emit
(
"on-close"
);
},
l
(
key
)
{
key
=
"routingsupporting"
+
"."
+
key
;
return
this
.
$t
(
key
);
}
},
watch
:
{
eid
(
v
)
{
if
(
v
>
0
)
{
this
.
load
(
v
);
}
}
}
};
</
script
>
pages/technology/details/routingsupporting/edit.vue
0 → 100644
View file @
f3998490
<
template
>
<Form
ref=
"form"
:model=
"entity"
:rules=
"rules"
:label-width=
"90"
>
<Row>
<!--
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingStepId')"
prop=
"routingStepId"
>
<InputNumber
v-model=
"entity.routingStepId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('materialId')"
prop=
"materialId"
>
<InputNumber
v-model=
"entity.materialId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('extend')"
prop=
"extend"
>
<Input
v-model=
"entity.extend"
></Input>
</FormItem>
</Col>
-->
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingHeaderId')"
prop=
"routingHeaderId"
>
<InputNumber
v-model=
"entity.routingHeaderId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('routingDetailId')"
prop=
"routingDetailId"
>
<InputNumber
v-model=
"entity.routingDetailId"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('materialType')"
prop=
"materialType"
>
<Dictionary
code=
"mes_xingchi_resource.material.materialReType"
v-model=
"entity.materialType"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('materialNumber')"
prop=
"materialNumber"
>
<Input
v-model=
"entity.materialNumber"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('nameMaterial')"
prop=
"nameMaterial"
>
<Input
v-model=
"entity.nameMaterial"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('quantity')"
prop=
"quantity"
>
<InputNumber
v-model=
"entity.quantity"
></InputNumber>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('brand')"
prop=
"brand"
>
<Input
v-model=
"entity.brand"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('specifications')"
prop=
"specifications"
>
<Input
v-model=
"entity.specifications"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('xhgg')"
prop=
"xhgg"
>
<Input
v-model=
"entity.xhgg"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('texture')"
prop=
"texture"
>
<Input
v-model=
"entity.texture"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('procurementStandards')"
prop=
"procurementStandards"
>
<Input
v-model=
"entity.procurementStandards"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('qualityGrade')"
prop=
"qualityGrade"
>
<Input
v-model=
"entity.qualityGrade"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('state')"
prop=
"state"
>
<Dictionary
code=
"Process.state"
v-model=
"entity.state"
type=
"radio"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
>
<FormItem
:label=
"l('drawNum')"
prop=
"drawNum"
>
<Input
v-model=
"entity.drawNum"
></Input>
</FormItem>
</Col>
<Col
:span=
"24"
>
<FormItem
:label=
"l('remark')"
prop=
"remark"
>
<Input
v-model=
"entity.remark"
></Input>
</FormItem>
</Col>
</Row>
<FormItem>
<Button
type=
"primary"
@
click=
"handleSubmit"
:disabled=
"disabled"
>
保存
</Button>
<Button
@
click=
"handleClose"
class=
"ml20"
>
取消
</Button>
</FormItem>
</Form>
</
template
>
<
script
>
import
Api
from
"./api"
;
export
default
{
name
:
"Edit"
,
data
()
{
return
{
disabled
:
false
,
entity
:
{},
rules
:
{
name
:
[{
required
:
true
,
message
:
"必填"
,
trigger
:
"blur"
}]
}
};
},
props
:
{
eid
:
Number
},
mounted
()
{
if
(
this
.
eid
>
0
)
{
this
.
load
(
this
.
eid
);
}
},
methods
:
{
load
(
v
)
{
Api
.
get
({
id
:
v
}).
then
(
r
=>
{
this
.
entity
=
r
.
result
;
});
},
handleSubmit
()
{
this
.
$refs
.
form
.
validate
(
v
=>
{
if
(
v
)
{
this
.
disabled
=
true
;
Api
.
update
(
this
.
entity
)
.
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
()
{
this
.
$emit
(
"on-close"
);
},
l
(
key
)
{
key
=
"routingsupporting"
+
"."
+
key
;
return
this
.
$t
(
key
);
}
},
watch
:
{
eid
(
v
)
{
if
(
v
!=
0
)
{
this
.
load
(
v
);
}
}
}
};
</
script
>
pages/technology/details/routingsupporting/index.vue
0 → 100644
View file @
f3998490
<
template
>
<div>
<DataGrid
:columns=
"columns"
ref=
"grid"
:action=
"action"
><template
slot=
"easySearch"
><Form
ref=
"formInline"
:model=
"easySearch"
inline
><FormItem
prop=
"keys"
><Input
placeholder=
"请输入关键字物料类型/物料编号/物料名称/牌号/规格/型号规格/材质/采购标准/质量等级/备注/产品图号"
v-model=
"easySearch.keys.value"
/>
</FormItem>
<FormItem><Button
type=
"primary"
@
click=
"search"
>
查询
</Button></FormItem>
</Form></
template
>
<
template
slot=
"searchForm"
>
<Search
/>
</
template
>
<
template
slot=
"buttons"
>
<Button
type=
"primary"
@
click=
"add"
>
新增
</Button>
</
template
>
</DataGrid>
<Modal
v-model=
"modal"
:title=
"title"
width=
"1200"
footer-hide
>
<component
:is=
"detail"
:eid=
"curId"
@
on-close=
"cancel"
@
on-ok=
"ok"
/>
</Modal>
</div>
</template>
<
script
>
import
Api
from
'./api'
import
Search
from
'./search'
export
default
{
name
:
'list'
,
components
:{
Search
},
head
:
{
title
:
"工艺配套表"
,
author
:
"henq"
,
description
:
"routingsupporting 4/27/2020 10:35:33 AM"
,
},
data
()
{
return
{
action
:
Api
.
index
,
easySearch
:
{
keys
:{
op
:
"materialType,materialNumber,nameMaterial,brand,specifications,xhgg,texture,procurementStandards,qualityGrade,remark,drawNum"
,
value
:
null
}
},
modal
:
false
,
title
:
"新增"
,
detail
:
null
,
curId
:
0
,
columns
:
[
{
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"
,
title
:
this
.
l
(
"routingHeaderId"
)
,
align
:
"left"
,
high
:
true
},
{
key
:
"routingDetailId"
,
title
:
this
.
l
(
"routingDetailId"
)
,
align
:
"left"
,
high
:
true
},
{
key
:
"routingStepId"
,
title
:
this
.
l
(
"routingStepId"
)
,
align
:
"left"
,
high
:
true
},
{
key
:
"quantity"
,
title
:
this
.
l
(
"quantity"
)
,
align
:
"left"
,
high
:
true
},
{
key
:
"materialId"
,
title
:
this
.
l
(
"materialId"
)
,
align
:
"left"
,
high
:
true
},
{
key
:
"materialType"
,
title
:
this
.
l
(
"materialType"
)
,
align
:
"left"
,
easy
:
true
,
high
:
true
,
code
:
'mes_xingchi_resource.material.materialReType'
},
{
key
:
"materialNumber"
,
title
:
this
.
l
(
"materialNumber"
)
,
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"nameMaterial"
,
title
:
this
.
l
(
"nameMaterial"
)
,
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"brand"
,
title
:
this
.
l
(
"brand"
)
,
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"specifications"
,
title
:
this
.
l
(
"specifications"
)
,
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"xhgg"
,
title
:
this
.
l
(
"xhgg"
)
,
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"texture"
,
title
:
this
.
l
(
"texture"
)
,
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"procurementStandards"
,
title
:
this
.
l
(
"procurementStandards"
)
,
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"qualityGrade"
,
title
:
this
.
l
(
"qualityGrade"
)
,
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"state"
,
title
:
this
.
l
(
"state"
)
,
align
:
"left"
,
high
:
true
,
code
:
'Process.Status'
},
{
key
:
"remark"
,
title
:
this
.
l
(
"remark"
)
,
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
key
:
"drawNum"
,
title
:
this
.
l
(
"drawNum"
)
,
align
:
"left"
,
easy
:
true
,
high
:
true
},
{
title
:
'操作'
,
key
:
'action'
,
width
:
140
,
align
:
'center'
,
render
:
(
h
,
params
)
=>
{
return
h
(
'div'
,
{
class
:
"action"
},
[
h
(
'op'
,
{
attrs
:
{
oprate
:
'detail'
},
on
:
{
click
:
()
=>
this
.
view
(
params
.
row
.
id
)
}
},
'查看'
),
//h('op', { attrs: { oprate: 'copy' }, on: { click: () => this.copy(params.row.id) } }, '克隆'),
h
(
'op'
,
{
attrs
:
{
oprate
:
'edit'
},
on
:
{
click
:
()
=>
this
.
edit
(
params
.
row
.
id
)
}
},
'编辑'
),
h
(
'op'
,
{
attrs
:
{
oprate
:
'delete'
},
on
:
{
click
:
()
=>
this
.
remove
(
params
.
row
.
id
)
}
},
'删除'
)
])
}
},
]
}
},
mounted
(){
console
.
log
(
this
);
},
async
fetch
({
store
,
params
})
{
await
store
.
dispatch
(
'loadDictionary'
)
// 加载数据字典
},
methods
:{
ok
()
{
this
.
$refs
.
grid
.
load
()
this
.
modal
=
false
this
.
curId
=
0
;
},
search
()
{
this
.
$refs
.
grid
.
reload
(
this
.
easySearch
)
},
add
()
{
this
.
curId
=
0
;
this
.
title
=
"新增"
;
this
.
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
;
},
edit
(
id
)
{
this
.
curId
=
id
;
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
=
"routingsupporting"
+
"."
+
key
;
return
this
.
$t
(
vkey
)
||
key
}
}
}
</
script
>
<
style
lang=
"less"
>
</
style
>
\ No newline at end of file
pages/technology/details/routingsupporting/search.vue
0 → 100644
View file @
f3998490
<
template
>
<Form
ref=
"form"
:model=
"condition"
:label-width=
"90"
>
<Row>
<Col
:span=
"12"
v-if=
"condition.routingHeaderId.show"
>
<FormItem
:label=
"l('routingHeaderId')"
prop=
"routingHeaderId"
>
<Input
v-model=
"condition.routingHeaderId.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.routingDetailId.show"
>
<FormItem
:label=
"l('routingDetailId')"
prop=
"routingDetailId"
>
<Input
v-model=
"condition.routingDetailId.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.routingStepId.show"
>
<FormItem
:label=
"l('routingStepId')"
prop=
"routingStepId"
>
<Input
v-model=
"condition.routingStepId.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.materialId.show"
>
<FormItem
:label=
"l('materialId')"
prop=
"materialId"
>
<Input
v-model=
"condition.materialId.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.materialType.show"
>
<FormItem
:label=
"l('materialType')"
prop=
"materialType"
>
<Dictionary
code=
"mes_xingchi_resource.material.materialReType"
v-model=
"condition.materialType.value"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.materialNumber.show"
>
<FormItem
:label=
"l('materialNumber')"
prop=
"materialNumber"
>
<Input
v-model=
"condition.materialNumber.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.nameMaterial.show"
>
<FormItem
:label=
"l('nameMaterial')"
prop=
"nameMaterial"
>
<Input
v-model=
"condition.nameMaterial.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.quantity.show"
>
<FormItem
:label=
"l('quantity')"
prop=
"quantity"
>
<Input
v-model=
"condition.quantity.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.brand.show"
>
<FormItem
:label=
"l('brand')"
prop=
"brand"
>
<Input
v-model=
"condition.brand.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.specifications.show"
>
<FormItem
:label=
"l('specifications')"
prop=
"specifications"
>
<Input
v-model=
"condition.specifications.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.xhgg.show"
>
<FormItem
:label=
"l('xhgg')"
prop=
"xhgg"
>
<Input
v-model=
"condition.xhgg.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.texture.show"
>
<FormItem
:label=
"l('texture')"
prop=
"texture"
>
<Input
v-model=
"condition.texture.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.procurementStandards.show"
>
<FormItem
:label=
"l('procurementStandards')"
prop=
"procurementStandards"
>
<Input
v-model=
"condition.procurementStandards.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.qualityGrade.show"
>
<FormItem
:label=
"l('qualityGrade')"
prop=
"qualityGrade"
>
<Input
v-model=
"condition.qualityGrade.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.state.show"
>
<FormItem
:label=
"l('state')"
prop=
"state"
>
<Dictionary
code=
"Process.state"
v-model=
"condition.state.value"
></Dictionary>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.remark.show"
>
<FormItem
:label=
"l('remark')"
prop=
"remark"
>
<Input
v-model=
"condition.remark.value"
></Input>
</FormItem>
</Col>
<Col
:span=
"12"
v-if=
"condition.drawNum.show"
>
<FormItem
:label=
"l('drawNum')"
prop=
"drawNum"
>
<Input
v-model=
"condition.drawNum.value"
></Input>
</FormItem>
</Col>
</Row>
</Form>
</
template
>
<
script
>
import
Api
from
"./api"
;
export
default
{
name
:
"Add"
,
data
()
{
return
{
condition
:
{
routingHeaderId
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
routingDetailId
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
routingStepId
:
{
op
:
"Equal"
,
value
:
null
,
show
:
false
},
quantity
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
materialId
:
{
op
:
"Equal"
,
value
:
null
,
show
:
false
},
materialType
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
materialNumber
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
nameMaterial
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
brand
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
specifications
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
xhgg
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
texture
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
procurementStandards
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
qualityGrade
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
state
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
},
remark
:
{
op
:
"Equal"
,
value
:
null
,
show
:
false
},
drawNum
:
{
op
:
"Equal"
,
value
:
null
,
show
:
true
}
}
};
},
methods
:
{
handleClose
()
{
this
.
$emit
(
"on-close"
);
},
l
(
key
)
{
key
=
"routingsupporting"
+
"."
+
key
;
return
this
.
$t
(
key
);
}
}
};
</
script
>
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