Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
mes-pad
Project
Project
Details
Activity
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
ximai
mes-pad
Commits
7d2f8a30
Commit
7d2f8a30
authored
Feb 21, 2024
by
李驰骋
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
合并主分支代码,包括布局兼容调整、添加投料检验、反冲料登记、领料申请、退料申请前端交互逻辑
parent
0030240b
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
698 additions
and
362 deletions
+698
-362
config.js
common/config.js
+2
-2
manifest.json
manifest.json
+2
-2
index.vue
pages/mes/prodReport/index.vue
+694
-358
No files found.
common/config.js
View file @
7d2f8a30
...
...
@@ -21,9 +21,9 @@ const config = {
}
// 设置后台接口服务的基础地址
//config.baseUrl = 'http://localhost
:8080';
config
.
baseUrl
=
'http://192.168.25.105
:8080'
;
//config.baseUrl = "http://101.43.244.58:8080/";
//config.baseUrl = "/api";
config
.
baseUrl
=
"http://101.200.162.168:8080"
;
//
config.baseUrl = "http://101.200.162.168:8080";
export
default
config
;
\ No newline at end of file
manifest.json
View file @
7d2f8a30
{
"name"
:
"
ktg-
mes-pad"
,
"appid"
:
"__UNI__
5750C3E
"
,
"name"
:
"mes-pad"
,
"appid"
:
"__UNI__
EA378AB
"
,
"description"
:
"MES-PAD"
,
"versionName"
:
"1.0.0"
,
"versionCode"
:
"100"
,
...
...
pages/mes/prodReport/index.vue
View file @
7d2f8a30
...
...
@@ -67,19 +67,18 @@
</view>
<u-button
type=
"primary"
@
click=
"changeWorkstation"
>
切换工作站
</u-button>
<br/>
<u-button
type=
"warning"
@
click=
"commonClick('KnifeTemp')"
>
刀模
上架
</u-button>
<u-button
type=
"warning"
@
click=
"commonClick('KnifeTemp')"
>
刀模
版上下机
</u-button>
<u-button
type=
"primary"
@
click=
"commonClick('Refresh')"
>
刷新
</u-button>
<u-button
type=
"success"
@
click=
"commonClick('StartTask')"
>
开始作业
</u-button>
<u-button
type=
"warning"
@
click=
"commonClick('StopTask')"
>
暂停作业
</u-button>
<u-button
type=
"success"
@
click=
"commonClick('Prod')"
>
生产报工
</u-button>
<u-button
type=
"primary"
@
click=
"commonClick('FinshTask')"
>
完成作业
</u-button>
<u-button
type=
"primary"
@
click=
"commonClick('abnormal')"
>
异常报告
</u-button>
<!--
<u-button
type=
"error"
@
click=
"commonClick('')"
>
报告异常
</u-button>
-->
<!--
<u-button
type=
"warning"
@
click=
"commonClick('')"
>
检验通知
</u-button>
-->
<!--
<u-button
type=
"primary"
@
click=
"commonClick('')"
>
属性收集
</u-button>
-->
<!--
<u-button
type=
"primary"
@
click=
"commonClick('')"
>
反扣冲减
</u-button>
-->
<!--
<u-button
type=
"primary"
@
click=
"commonClick('')"
>
查看图纸
</u-button>
-->
<!--
<u-button
type=
"warning"
@
click=
"commonClick('')"
>
完成全部
</u-button>
-->
<u-button
type=
"primary"
@
click=
"commonClick('FeedingInspection')"
>
投料检验
</u-button>
<u-button
type=
"primary"
@
click=
"commonClick('RecoilMaterial')"
>
反冲料登记
</u-button>
<u-button
type=
"primary"
@
click=
"commonClick('MaterialRequest')"
>
领料申请
</u-button>
<u-button
type=
"primary"
@
click=
"commonClick('MaterialReturn')"
>
退料申请
</u-button>
<u-button
type=
"success"
@
click=
"commonClick('StockIn')"
>
完工入库申请
</u-button>
</view>
</view>
...
...
@@ -172,9 +171,6 @@
:title-style=
"
{'background-color':'#1E3770','color': '#FFFFFF' ,'line-height': '60px','padding-top': '0px'}"
v-model="aopen" width="1300rpx">
<u-form
label-width=
"90px"
:rules=
"rules"
>
<u-form-item
label=
"异常时间"
prop=
"abnormalTime"
>
<!--
<u-input
:border=
"true"
v-model=
"ExceptionForms.abnormalTime"
></u-input>
-->
<uni-datetime-picker
type=
"date"
:clear-icon=
"false"
v-model=
"ExceptionForms.abnormalTime"
/>
...
...
@@ -207,6 +203,199 @@
</u-form>
</u-modal>
<u-modal
title=
"投料校验"
@
confirm=
"feedingInspectionScan()"
show-cancel-button
confirmText=
"继续扫码"
cancelText=
"关闭"
:title-style=
"
{'background-color':'#1E3770','color': '#FFFFFF' ,'line-height': '37px','padding-top': '0px'}"
v-model="feedingInspectionVisible" width="1300rpx">
<view
class=
"list-bar"
>
<scroll-view
scroll-y=
"true"
scroll-x=
"true"
class=
"scroll-list"
:style=
"
{ 'height': (this.screenHeight -280) + 'px' }">
<uni-table
border
stripe
:loading=
"loading"
emptyText=
"未查询到数据"
>
<uni-tr>
<uni-th
width=
"110px"
align=
"center"
>
产品物料编码
</uni-th>
<uni-th
width=
"110px"
align=
"center"
>
产品物料名称
</uni-th>
<uni-th
width=
"150px"
align=
"center"
>
规格型号
</uni-th>
<uni-th
width=
"60px"
align=
"center"
>
单位
</uni-th>
<uni-th
width=
"80px"
align=
"center"
>
领料数量
</uni-th>
<uni-th
width=
"110px"
align=
"center"
>
批次号
</uni-th>
<uni-th
width=
"100px"
align=
"center"
>
备注
</uni-th>
<uni-th
width=
"65px"
align=
"center"
>
状态
</uni-th>
<uni-th
width=
"100px"
align=
"center"
>
操作
</uni-th>
</uni-tr>
<uni-tr
v-for=
"(line,index) in feedingInspectionList"
:key=
"index"
>
<uni-td
align=
"center"
>
{{
line
.
itemCode
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
itemName
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
specification
}}
</uni-td>
<uni-td>
{{
line
.
unitOfMeasure
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
quantityIssued
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
batchCode
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
remark
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
state
}}
</uni-td>
<uni-td
align=
"center"
>
<view
class=
"uni-group"
>
<button
class=
"uni-button"
size=
"mini"
type=
"primary"
@
click=
"qcLineClick(line)"
>
校验
</button>
</view>
</uni-td>
</uni-tr>
</uni-table>
</scroll-view>
</view>
</u-modal>
<u-modal
title=
"反冲料登记"
@
confirm=
"recoilMaterialScan()"
show-cancel-button
confirmText=
"继续扫码"
cancelText=
"关闭"
:title-style=
"
{'background-color':'#1E3770','color': '#FFFFFF' ,'line-height': '37px','padding-top': '0px'}"
v-model="recoilMaterialVisible" width="1300rpx">
<view
class=
"list-bar"
>
<scroll-view
scroll-y=
"true"
class=
"scroll-list"
:style=
"
{ 'height': (this.screenHeight -280) + 'px' }">
<uni-table
ref=
"qcTable"
border
stripe
:loading=
"loading"
emptyText=
"未查询到数据"
>
<uni-tr>
<uni-th
width=
"100px"
align=
"center"
>
操作
</uni-th>
<uni-th
width=
"110px"
align=
"center"
>
产品物料编码
</uni-th>
<uni-th
width=
"110px"
align=
"center"
>
产品物料名称
</uni-th>
<uni-th
width=
"150px"
align=
"center"
>
规格型号
</uni-th>
<uni-th
width=
"60px"
align=
"center"
>
单位
</uni-th>
<uni-th
width=
"110px"
align=
"center"
>
批次号
</uni-th>
<uni-th
width=
"100px"
align=
"center"
>
备注
</uni-th>
</uni-tr>
<uni-tr
v-for=
"(line,index) in recoilMaterialList"
:key=
"index"
>
<uni-td
align=
"center"
>
<view
class=
"uni-group"
>
<button
class=
"uni-button"
size=
"mini"
type=
"primary"
@
click=
"recoilMaterialDelete(line)"
>
删除
</button>
</view>
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
itemCode
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
itemName
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
specification
}}
</uni-td>
<uni-td>
{{
line
.
unitOfMeasure
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
batchCode
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
remark
}}
</uni-td>
</uni-tr>
</uni-table>
</scroll-view>
</view>
</u-modal>
<u-modal
title=
"领料申请"
@
confirm=
"materialRequestSave()"
show-cancel-button
:title-style=
"
{'background-color':'#1E3770','color': '#FFFFFF' ,'line-height': '37px','padding-top': '0px'}"
v-model="materialRequestVisible" width="1300rpx">
<view
class=
"list-bar"
>
<scroll-view
scroll-y=
"true"
class=
"scroll-list"
:style=
"
{ 'height': (this.screenHeight -280) + 'px' }">
<uni-table
ref=
"qcTable"
border
stripe
:loading=
"loading"
emptyText=
"未查询到数据"
>
<uni-tr>
<uni-th
width=
"100px"
align=
"center"
>
操作
</uni-th>
<uni-th
width=
"110px"
align=
"center"
>
产品物料编码
</uni-th>
<uni-th
width=
"110px"
align=
"center"
>
产品物料名称
</uni-th>
<uni-th
width=
"150px"
align=
"center"
>
规格型号
</uni-th>
<uni-th
width=
"60px"
align=
"center"
>
单位
</uni-th>
<uni-th
width=
"80px"
align=
"center"
>
补料数量
</uni-th>
<uni-th
width=
"110px"
align=
"center"
>
批次号
</uni-th>
<uni-th
width=
"100px"
align=
"center"
>
备注
</uni-th>
<uni-th
width=
"65px"
align=
"center"
>
状态
</uni-th>
</uni-tr>
<uni-tr
v-for=
"(line,index) in materialRequestList"
:key=
"index"
>
<uni-td
align=
"center"
>
<view
class=
"uni-group"
>
<button
class=
"uni-button"
size=
"mini"
type=
"primary"
@
click=
"materialRequestFormShow(line)"
>
补料
</button>
</view>
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
itemCode
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
itemName
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
specification
}}
</uni-td>
<uni-td>
{{
line
.
unitOfMeasure
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
quantityIssued
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
batchCode
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
remark
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
state
}}
</uni-td>
</uni-tr>
</uni-table>
</scroll-view>
</view>
</u-modal>
<u-modal
title=
"领料申请数量"
@
confirm=
"materialRequestSetting()"
show-cancel-button
:title-style=
"
{'background-color':'#1E3770','color': '#FFFFFF' ,'line-height': '37px','padding-top': '0px'}"
v-model="materialRequestFormVisible" width="700rpx">
<view
class=
""
>
<u-form
label-width=
"100px"
>
<u-row>
<u-col>
<u-form-item
label=
"产品物料名称"
>
{{
materialRequestFormData
.
itemName
}}
</u-form-item>
</u-col>
</u-row>
<u-row>
<u-col>
<u-form-item
label=
"领料数量"
>
<u-number-box
v-model=
"materialRequestFormData.applyNum"
:long-press=
"false"
:positive-integer=
"false"
:size=
"50"
:input-width=
"190"
></u-number-box>
</u-form-item>
</u-col>
</u-row>
</u-form>
</view>
</u-modal>
<u-modal
title=
"退料申请"
@
confirm=
"feedback()"
show-cancel-button
:title-style=
"
{'background-color':'#1E3770','color': '#FFFFFF' ,'line-height': '37px','padding-top': '0px'}"
v-model="materialReturnVisible" width="1300rpx">
<view
class=
"list-bar"
>
<scroll-view
scroll-y=
"true"
class=
"scroll-list"
:style=
"
{ 'height': (this.screenHeight -280) + 'px' }">
<uni-table
ref=
"qcTable"
border
stripe
:loading=
"loading"
emptyText=
"未查询到数据"
>
<uni-tr>
<uni-th
width=
"100px"
align=
"center"
>
操作
</uni-th>
<uni-th
width=
"110px"
align=
"center"
>
产品物料编码
</uni-th>
<uni-th
width=
"110px"
align=
"center"
>
产品物料名称
</uni-th>
<uni-th
width=
"150px"
align=
"center"
>
规格型号
</uni-th>
<uni-th
width=
"60px"
align=
"center"
>
单位
</uni-th>
<uni-th
width=
"80px"
align=
"center"
>
领料数量
</uni-th>
<uni-th
width=
"80px"
align=
"center"
>
退料数量
</uni-th>
<uni-th
width=
"110px"
align=
"center"
>
批次号
</uni-th>
<uni-th
width=
"100px"
align=
"center"
>
备注
</uni-th>
</uni-tr>
<uni-tr
v-for=
"(line,index) in materialReturnList"
:key=
"index"
>
<uni-td
align=
"center"
>
<view
class=
"uni-group"
>
<button
class=
"uni-button"
size=
"mini"
type=
"primary"
@
click=
"materialReturnFormShow(line)"
>
退料
</button>
</view>
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
itemCode
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
itemName
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
specification
}}
</uni-td>
<uni-td>
{{
line
.
unitOfMeasure
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
applyNum
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
quantityIssued
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
batchCode
}}
</uni-td>
<uni-td
align=
"center"
>
{{
line
.
remark
}}
</uni-td>
</uni-tr>
</uni-table>
</scroll-view>
</view>
</u-modal>
<u-modal
title=
"退料申请数量"
@
confirm=
"materialReturnSetting()"
show-cancel-button
:title-style=
"
{'background-color':'#1E3770','color': '#FFFFFF' ,'line-height': '37px','padding-top': '0px'}"
v-model="materialReturnFormVisible" width="700rpx">
<view
class=
""
>
<u-form
label-width=
"100px"
>
<u-row>
<u-col>
<u-form-item
label=
"产品物料名称"
>
{{
materialReturnFormData
.
itemName
}}
</u-form-item>
</u-col>
</u-row>
<u-row>
<u-col>
<u-form-item
label=
"退料数量"
>
<u-number-box
v-model=
"materialReturnFormData.applyNum"
:long-press=
"false"
:positive-integer=
"false"
:size=
"50"
:input-width=
"190"
></u-number-box>
</u-form-item>
</u-col>
</u-row>
</u-form>
</view>
</u-modal>
</view>
</
template
>
...
...
@@ -474,9 +663,35 @@ export default {
{
name
:
'areaName'
,
label
:
'库位名称'
,
}]
}],
feedingInspectionVisible
:
false
,
recoilMaterialVisible
:
false
,
materialRequestVisible
:
false
,
materialReturnVisible
:
false
,
stockInVisible
:
false
,
feedingInspectionList
:
[],
recoilMaterialList
:
[],
materialRequestList
:
[],
materialReturnList
:
[],
materialRequestFormData
:
{
itemName
:
null
,
applyNum
:
null
},
materialRequestFormVisible
:
false
,
materialRequestSelected
:{},
materialReturnFormData
:
{
itemName
:
null
,
applyNum
:
null
},
materialReturnFormVisible
:
false
,
materialReturnSelected
:{}
}
},
mounted
()
{
//监听工作站切换事件
uni
.
$on
(
'switchWorkstation'
,
(
station
)
=>
{
this
.
getTaskList
();
})
},
created
()
{
//获取屏幕高度
uni
.
getSystemInfo
({
...
...
@@ -531,7 +746,6 @@ export default {
case
'StopTask'
:
this
.
stopReason
=
''
this
.
stopReasonVisible
=
true
break
;
case
'FinshTask'
:
this
.
tableSelectData
.
forEach
((
item
)
=>
{
...
...
@@ -547,17 +761,31 @@ export default {
break
;
case
'KnifeTemp'
:
this
.
knifeTempShow
()
break
;
case
'abnormal'
:
this
.
doException
()
break
;
case
'FeedingInspection'
:
this
.
feedingInspectionShow
();
break
;
case
'RecoilMaterial'
:
this
.
recoilMaterialShow
();
break
;
case
'MaterialRequest'
:
this
.
materialRequestShow
();
break
;
case
'MaterialReturn'
:
this
.
materialReturnShow
();
break
;
case
'StockIn'
:
this
.
stockInShow
();
break
;
default
:
this
.
$u
.
toast
(
'功能正在开发中!'
);
break
}
},
knifeTempShow
()
{
async
knifeTempShow
()
{
if
(
this
.
tableSelectData
.
length
>
1
)
{
return
...
...
@@ -575,7 +803,6 @@ export default {
}
this
.
addDModelRecord
(
params
)
},
async
upDownGetList
()
{
const
params
=
{
arrangeCode
:
this
.
tableSelectData
[
0
].
arrangeCode
||
''
,
...
...
@@ -646,12 +873,10 @@ export default {
stopReasonChange
(
e
)
{
this
.
stopReason
+=
e
;
},
changeReason
(
abnormalReason
)
{
this
.
ExceptionForms
.
abnormalReason
=
abnormalReason
},
stopReas
(
abnormalType
)
{
this
.
ExceptionForms
.
abnormalType
=
abnormalType
// 查询原因
this
.
$u
.
api
.
abnormal
.
detail
({
...
...
@@ -841,6 +1066,117 @@ export default {
})
this
.
getTaskList
()
this
.
open
=
false
;
},
feedingInspectionShow
(){
this
.
feedingInspectionVisible
=
true
;
this
.
feedingInspectionLoadAndScan
();
},
feedingInspectionLoadAndScan
(){
const
t
=
this
;
this
.
$u
.
api
.
listFeedingInspection
({
"batchNo"
:
""
}).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
t
.
feedingInspectionList
=
res
.
data
;
t
.
feedingInspectionScan
();
}
});
},
feedingInspectionScan
(){
const
t
=
this
;
uni
.
scanCode
({
success
:
function
(
res
)
{
t
.
$u
.
api
.
validateFeedingInspection
({
"batchNo"
:
res
.
result
}).
then
(
res2
=>
{
if
(
res2
.
code
===
200
)
{
t
.
feedingInspectionLoadAndScan
();
}
});
}
});
this
.
feedingInspectionVisible
=
true
;
},
recoilMaterialShow
(){
this
.
recoilMaterialVisible
=
true
;
this
.
recoilMaterialLoadAndScan
();
},
recoilMaterialLoadAndScan
(){
const
t
=
this
;
this
.
$u
.
api
.
recoilMaterialList
({
"batchNo"
:
""
}).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
t
.
recoilMaterialList
=
res
.
data
;
t
.
recoilMaterialScan
();
}
});
},
recoilMaterialScan
(){
const
t
=
this
;
uni
.
scanCode
({
success
:
function
(
res
)
{
t
.
$u
.
toast
(
res
.
result
);
t
.
$u
.
api
.
addRecoilMaterial
({
"batchNo"
:
res
.
result
}).
then
(
res2
=>
{
if
(
res2
.
code
===
200
)
{
t
.
recoilMaterialLoadAndScan
();
}
});
}
});
this
.
recoilMaterialVisible
=
true
;
},
recoilMaterialDelete
(
line
){
const
t
=
this
;
this
.
$u
.
api
.
deleteRecoilMaterial
({
"id"
:
line
.
id
}).
then
(
res2
=>
{
t
.
$u
.
api
.
recoilMaterialList
({
"batchNo"
:
""
}).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
t
.
recoilMaterialList
=
res
.
data
;
}
});
});
},
materialRequestShow
(){
console
.
log
(
this
.
$u
.
config
.
v
);
const
t
=
this
;
this
.
materialRequestVisible
=
true
;
this
.
$u
.
api
.
listMaterialRequest
({
"batchNo"
:
""
}).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
t
.
materialRequestList
=
res
.
data
;
}
});
},
materialRequestFormShow
(
line
){
this
.
materialRequestFormVisible
=
true
;
this
.
materialRequestFormData
=
{
itemName
:
line
.
itemName
};
this
.
materialRequestSelected
=
line
;
},
materialRequestSetting
(){
this
.
materialRequestSelected
.
quantityIssued
=
this
.
materialRequestFormData
.
applyNum
;
this
.
materialRequestFormVisible
=
false
;
},
materialRequestSave
(){
},
materialReturnShow
(){
console
.
log
(
this
.
$u
.
config
.
v
);
const
t
=
this
;
this
.
materialReturnVisible
=
true
;
this
.
$u
.
api
.
listMaterialReturn
({
"batchNo"
:
""
}).
then
(
res
=>
{
if
(
res
.
code
===
200
)
{
t
.
materialReturnList
=
res
.
data
;
}
});
},
materialReturnFormShow
(
line
){
this
.
materialReturnFormVisible
=
true
;
this
.
materialReturnFormData
=
{
itemName
:
line
.
itemName
};
this
.
materialReturnSelected
=
line
;
},
materialReturnSetting
(){
this
.
materialReturnSelected
.
quantityIssued
=
this
.
materialReturnFormData
.
applyNum
;
this
.
materialReturnFormVisible
=
false
;
},
materialReturnSave
(){
},
stockInShow
(){
this
.
stockInVisible
=
true
;
}
}
}
...
...
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