Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
mes-ui
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
mes
mes-ui
Commits
cd1ce324
Commit
cd1ce324
authored
Jul 22, 2024
by
chenzj
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
领料申请单界面添加新增按钮
parent
3f27c4de
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
347 additions
and
13 deletions
+347
-13
protask.js
src/api/mes/pro/protask.js
+9
-0
taskSelect.vue
src/views/mes/pro/request/components/taskSelect.vue
+281
-0
index.vue
src/views/mes/pro/request/index.vue
+57
-13
No files found.
src/api/mes/pro/protask.js
View file @
cd1ce324
...
@@ -9,6 +9,15 @@ export function listProtask(query) {
...
@@ -9,6 +9,15 @@ export function listProtask(query) {
});
});
}
}
// 查询生产任务列表
export
function
listProtasks
(
query
)
{
return
request
({
url
:
"/mes/pro/protask/lists"
,
method
:
"get"
,
params
:
query
,
});
}
// 查询生产任务列表
// 查询生产任务列表
export
function
listGanttTaskList
(
query
)
{
export
function
listGanttTaskList
(
query
)
{
return
request
({
return
request
({
...
...
src/views/mes/pro/request/components/taskSelect.vue
0 → 100644
View file @
cd1ce324
<
template
>
<el-dialog
title=
"生产任务选择"
v-if=
"showFlag"
:visible
.
sync=
"showFlag"
:modal=
false
width=
"80%"
center
>
<el-form
:model=
"queryParams"
ref=
"queryForm"
size=
"small"
:inline=
"true"
v-show=
"showSearch"
label-width=
"100px"
>
<el-form-item
label=
"所属工作中心编号"
prop=
"workstationCode"
>
<el-input
v-model=
"queryParams.workstationCode"
placeholder=
"请输入工作中心编号"
clearable
@
keyup
.
enter
.
native=
"handleQuery"
/>
</el-form-item>
<el-form-item
label=
"任务编号"
prop=
"taskCode"
>
<el-input
v-model=
"queryParams.taskCode"
placeholder=
"请输入生产任务编号"
clearable
@
keyup
.
enter
.
native=
"handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
搜索
</el-button>
<el-button
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button>
</el-form-item>
</el-form>
<el-table
v-loading=
"loading"
:data=
"protaskList"
@
current-change=
"handleCurrent"
@
row-dblclick=
"handleRowDbClick"
>
<el-table-column
width=
"55"
align=
"center"
>
<template
v-slot=
"scope"
>
<el-radio
v-model=
"selectedTaskId"
:label=
"scope.row.taskWorkunitId"
@
change=
"handleRowChange(scope.row)"
>
{{
""
}}
</el-radio>
</
template
>
</el-table-column>
<el-table-column
label=
"任务编号"
align=
"center"
prop=
"taskCode"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"编排单号"
align=
"center"
prop=
"arrangeCode"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"工作中心编号"
align=
"center"
prop=
"workstationCode"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"工作中心名称"
align=
"center"
prop=
"workstationName"
:show-overflow-tooltip=
"true"
/>
<el-table-column
label=
"工序名称"
align=
"center"
prop=
"processName"
:show-overflow-tooltip=
"true"
/>
<el-table-column
v-if=
"btnShow"
label=
"操作"
align=
"center"
width=
"100px"
class-name=
"small-padding fixed-width"
>
<
template
slot-scope=
"scope"
>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-edit"
@
click=
"handleUpdate(scope.row)"
v-hasPermi=
"['mes:pro:protask:edit']"
>
修改
</el-button>
<el-button
size=
"mini"
type=
"text"
icon=
"el-icon-delete"
@
click=
"handleDelete(scope.row)"
v-hasPermi=
"['mes:pro:protask:remove']"
>
删除
</el-button>
</
template
>
</el-table-column>
</el-table>
<pagination
v-show=
"total>0"
:total=
"total"
:page
.
sync=
"queryParams.pageNum"
:limit
.
sync=
"queryParams.pageSize"
@
pagination=
"getList"
/>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
@
click=
"confirmSelect"
>
确 定
</el-button>
<el-button
@
click=
"showFlag=false"
>
取 消
</el-button>
</div>
</el-dialog>
</template>
<
script
>
import
{
listProtasks
,
getProtask
,
delProtask
,
addProtask
,
updateProtask
}
from
"@/api/mes/pro/protask"
;
import
{
listAllProcess
}
from
"@/api/mes/pro/process"
;
import
WorkstationSelect
from
"@/components/workstationSelect/simpletableSingle.vue"
export
default
{
name
:
"ProtaskSelect"
,
components
:
{
WorkstationSelect
},
props
:
{
workorderId
:
null
,
workorderCode
:
null
,
processId
:
null
,
processCode
:
null
,
workstationId
:
null
,
workstationCode
:
null
,
arrangeCode
:
null
,
btnShow
:
false
},
watch
:
{
workorderId
(
v
){
this
.
queryParams
.
workorderId
=
v
;
},
arrangeCode
(
v
){
this
.
queryParams
.
arrangeCode
=
v
;
this
.
getList
();
}
},
data
()
{
return
{
showFlag
:
false
,
selectedTaskId
:
undefined
,
selectedRow
:
undefined
,
// 遮罩层
loading
:
true
,
// 选中数组
ids
:
[],
// 非单个禁用
single
:
true
,
// 非多个禁用
multiple
:
true
,
// 显示搜索条件
showSearch
:
true
,
// 总条数
total
:
0
,
// 生产任务表格数据
protaskList
:
[],
// 弹出层标题
title
:
""
,
// 是否显示弹出层
open
:
false
,
// 查询参数
queryParams
:
{
arrangeCode
:
null
,
pageNum
:
1
,
pageSize
:
10
,
taskCode
:
null
,
taskName
:
null
,
workorderId
:
this
.
workorderId
,
workorderCode
:
null
,
workorderName
:
null
,
workstationId
:
null
,
workstationCode
:
null
,
workstationName
:
null
,
routeId
:
null
,
processId
:
this
.
processId
,
processCode
:
null
,
processName
:
null
,
itemId
:
null
,
itemCode
:
null
,
itemName
:
null
,
specification
:
null
,
unitOfMeasure
:
null
,
quantity
:
null
,
quantityProduced
:
null
,
quantityChanged
:
null
,
clientId
:
null
,
clientCode
:
null
,
clientName
:
null
,
clientNick
:
null
,
startTime
:
null
,
duration
:
null
,
endTime
:
null
,
colorCode
:
null
,
requestDate
:
null
,
},
// 表单参数
form
:
{},
// 表单校验
rules
:
{
workstationId
:
[
{
required
:
true
,
message
:
"工作中心不能为空"
,
trigger
:
"blur"
}
],
quantity
:
[
{
required
:
true
,
message
:
"排产数量不能为空"
,
trigger
:
"blur"
}
],
startTime
:
[
{
required
:
true
,
message
:
"请选择开始生产日期"
,
trigger
:
"blur"
}
],
duration
:
[
{
required
:
true
,
message
:
"清输入估算的生产用时"
,
trigger
:
"blur"
}
]
}
};
},
created
()
{
this
.
getList
();
this
.
getProcess
();
},
methods
:
{
/** 查询生产任务列表 */
getList
()
{
this
.
loading
=
true
;
listProtasks
(
this
.
queryParams
).
then
(
response
=>
{
this
.
protaskList
=
response
.
rows
;
this
.
total
=
response
.
total
;
this
.
loading
=
false
;
});
},
//查询工序信息
getProcess
(){
listAllProcess
().
then
(
response
=>
{
this
.
processOptions
=
response
.
data
;
});
},
/** 搜索按钮操作 */
handleQuery
()
{
this
.
queryParams
.
pageNum
=
1
;
this
.
getList
();
},
/** 重置按钮操作 */
resetQuery
()
{
this
.
queryParams
=
{
arrangeCode
:
null
,
pageNum
:
1
,
pageSize
:
10
,
taskCode
:
null
,
taskName
:
null
,
workorderId
:
null
,
workorderCode
:
null
,
workorderName
:
null
,
workstationId
:
null
,
workstationCode
:
null
,
workstationName
:
null
,
routeId
:
null
,
processId
:
null
,
processCode
:
null
,
processName
:
null
,
itemId
:
null
,
itemCode
:
null
,
itemName
:
null
,
specification
:
null
,
unitOfMeasure
:
null
,
quantity
:
null
,
quantityProduced
:
null
,
quantityChanged
:
null
,
clientId
:
null
,
clientCode
:
null
,
clientName
:
null
,
clientNick
:
null
,
startTime
:
null
,
duration
:
null
,
endTime
:
null
,
colorCode
:
null
,
requestDate
:
null
,
};
this
.
resetForm
(
"queryForm"
);
this
.
handleQuery
();
},
handleCurrent
(
row
){
if
(
row
){
this
.
selectedRow
=
row
;
}
},
//行双击选中
handleRowDbClick
(
row
){
if
(
row
){
this
.
selectedRow
=
row
;
this
.
$emit
(
'onSelected'
,
this
.
selectedRow
);
this
.
showFlag
=
false
;
}
},
// 单选选中数据
handleRowChange
(
row
)
{
debugger
;
if
(
row
){
this
.
selectedRow
=
row
;
}
},
//确定选中
confirmSelect
(){
if
(
this
.
selectedTaskId
==
null
||
this
.
selectedTaskId
==
0
){
this
.
$notify
({
title
:
'提示'
,
type
:
'warning'
,
message
:
'请至少选择一条数据!'
});
return
;
}
this
.
$emit
(
'onSelected'
,
this
.
selectedRow
);
this
.
showFlag
=
false
;
}
}
};
</
script
>
src/views/mes/pro/request/index.vue
View file @
cd1ce324
...
@@ -277,6 +277,16 @@
...
@@ -277,6 +277,16 @@
</el-date-picker>
</el-date-picker>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"领料方式"
prop=
"materialType"
>
<el-select
:disabled=
"mode == 'make'"
v-model=
"form.materialType"
placeholder=
"请选择领料方式"
>
<el-option
v-for=
"dict in dict.type.pro_material_from"
:key=
"dict.value"
:label=
"dict.label"
:value=
"dict.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col
:span=
"12"
>
<el-col
:span=
"12"
>
<el-form-item
label=
"需求日期"
prop=
"startTime"
>
<el-form-item
label=
"需求日期"
prop=
"startTime"
>
<el-date-picker
clearable
v-model=
"form.startTime"
type=
"datetime"
value-format=
"yyyy-MM-dd HH:mm:ss"
<el-date-picker
clearable
v-model=
"form.startTime"
type=
"datetime"
value-format=
"yyyy-MM-dd HH:mm:ss"
...
@@ -284,11 +294,18 @@
...
@@ -284,11 +294,18 @@
</el-date-picker>
</el-date-picker>
</el-form-item>
</el-form-item>
</el-col>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"预计结束时间"
prop=
"endTime"
>
<el-date-picker
clearable
v-model=
"form.endTime"
type=
"datetime"
value-format=
"yyyy-MM-dd HH:mm:ss"
placeholder=
"请选择需预计结束时间"
disabled
>
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
</el-row>
</el-form>
</el-form>
<el-divider
content-position=
"center"
>
调拨料表体
</el-divider>
<el-divider
content-position=
"center"
>
申请单物料
</el-divider>
<el-card
shadow=
"always"
class=
"box-card"
>
<el-card
shadow=
"always"
class=
"box-card"
>
<requestIndex
v-if=
"opens"
ref=
"
allocationRef"
:quantity=
"form.requestNum"
:id=
"form.toolWarehouse
Id"
<requestIndex
v-if=
"opens"
ref=
"
materialRequestRef"
:quantity=
"form.requestNum"
:id=
"form.materialRequest
Id"
:optType=
"optType"
></requestIndex>
:optType=
"optType"
></requestIndex>
</el-card>
</el-card>
<div
slot=
"footer"
class=
"dialog-footer"
>
<div
slot=
"footer"
class=
"dialog-footer"
>
...
@@ -305,7 +322,7 @@
...
@@ -305,7 +322,7 @@
<
script
>
<
script
>
import
{
listMaterialRequest
,
getMaterialRequest
,
delMaterialRequest
,
addMaterialRequest
,
updateMaterialRequest
}
from
"@/api/mes/pro/request"
;
import
{
listMaterialRequest
,
getMaterialRequest
,
delMaterialRequest
,
addMaterialRequest
,
updateMaterialRequest
}
from
"@/api/mes/pro/request"
;
import
{
genCode
}
from
"@/api/system/autocode/rule"
;
import
{
genCode
}
from
"@/api/system/autocode/rule"
;
import
BrandSelect
from
"
@/components/TaskSelect/sngle
.vue"
;
import
BrandSelect
from
"
./components/taskSelect
.vue"
;
import
arangeSelect
from
"./components/arangeSelect.vue"
;
import
arangeSelect
from
"./components/arangeSelect.vue"
;
import
codeSelect
from
"./components/codeSelect.vue"
;
import
codeSelect
from
"./components/codeSelect.vue"
;
import
workorderSelect
from
"./components/workorderSelect.vue"
;
import
workorderSelect
from
"./components/workorderSelect.vue"
;
...
@@ -343,6 +360,8 @@ export default {
...
@@ -343,6 +360,8 @@ export default {
open
:
false
,
open
:
false
,
opens
:
false
,
opens
:
false
,
itemList
:
[],
// 查询参数
// 查询参数
queryParams
:
{
queryParams
:
{
pageNum
:
1
,
pageNum
:
1
,
...
@@ -365,9 +384,12 @@ export default {
...
@@ -365,9 +384,12 @@ export default {
workstationId
:
null
,
workstationId
:
null
,
workstationCode
:
null
,
workstationCode
:
null
,
workstationName
:
null
,
workstationName
:
null
,
materialType
:
null
,
windCase
:
null
,
windCase
:
null
,
createBy
:
null
,
createBy
:
null
,
grantNum
:
null
,
grantNum
:
null
,
startTime
:
null
,
endTime
:
null
,
},
},
// 表单参数
// 表单参数
form
:
{},
form
:
{},
...
@@ -387,13 +409,15 @@ export default {
...
@@ -387,13 +409,15 @@ export default {
onSelected
(
row
,
type
)
{
onSelected
(
row
,
type
)
{
if
(
row
!=
undefined
&&
row
!=
null
)
{
if
(
row
!=
undefined
&&
row
!=
null
)
{
if
(
type
===
'workorderSelect'
)
{
if
(
type
===
'workorderSelect'
)
{
this
.
form
.
workorderCode
=
row
.
workorderCode
this
.
$set
(
this
.
form
,
'workorderCode'
,
row
.
workorderCode
)
}
else
if
(
type
===
'BrandSelect'
)
{
}
else
if
(
type
===
'BrandSelect'
)
{
this
.
form
.
taskId
=
row
.
taskId
;
this
.
form
.
taskId
=
row
.
taskId
;
this
.
form
.
taskCode
=
row
.
taskCode
;
this
.
form
.
taskCode
=
row
.
taskCode
;
this
.
form
.
arrangeCode
=
row
.
arrangeCode
;
this
.
form
.
arrangeCode
=
row
.
arrangeCode
;
this
.
form
.
workorderCode
=
''
this
.
form
.
workorderCode
=
''
this
.
form
.
taskName
=
row
.
taskName
;
this
.
form
.
taskName
=
row
.
taskName
;
this
.
form
.
startTime
=
row
.
scheduleStartDate
;
this
.
$set
(
this
.
form
,
'endTime'
,
row
.
scheduleEndDate
)
}
else
if
(
type
===
'arangeSelect'
)
{
}
else
if
(
type
===
'arangeSelect'
)
{
this
.
form
.
taskCode
=
''
this
.
form
.
taskCode
=
''
this
.
form
.
taskId
=
''
this
.
form
.
taskId
=
''
...
@@ -506,6 +530,8 @@ export default {
...
@@ -506,6 +530,8 @@ export default {
updateTime
:
null
,
updateTime
:
null
,
windCase
:
null
,
windCase
:
null
,
grantNum
:
null
,
grantNum
:
null
,
startTime
:
null
,
endTime
:
null
,
};
};
this
.
resetForm
(
"form"
);
this
.
resetForm
(
"form"
);
...
@@ -561,19 +587,37 @@ export default {
...
@@ -561,19 +587,37 @@ export default {
submitForm
()
{
submitForm
()
{
this
.
$refs
[
"form"
].
validate
(
valid
=>
{
this
.
$refs
[
"form"
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
valid
)
{
if
(
this
.
form
.
materialRequestId
!=
null
)
{
updateMaterialRequest
(
this
.
form
).
then
(
response
=>
{
{
this
.
$modal
.
msgSuccess
(
"修改成功"
);
const
itemList
=
this
.
$refs
.
materialRequestRef
.
tableData
;
this
.
open
=
false
;
const
params
=
{
this
.
getList
();
...
this
.
form
,
});
itemList
,
}
else
{
}
addMaterialRequest
(
this
.
form
).
then
(
response
=>
{
addMaterialRequest
(
params
).
then
(
response
=>
{
this
.
$modal
.
msgSuccess
(
"新增成功"
);
this
.
$modal
.
msgSuccess
(
"新增成功"
);
this
.
open
=
false
;
this
.
open
s
=
false
;
this
.
getList
();
this
.
getList
();
});
});
}
}
// if (this.form.materialRequestId != null) {
// updateMaterialRequest(this.form).then(response => {
// this.$modal.msgSuccess("修改成功");
// this.open = false;
// this.getList();
// });
// } else {
// addMaterialRequest(this.form).then(response => {
// this.$modal.msgSuccess("新增成功");
// this.open = false;
// this.getList();
// });
// }
}
}
});
});
},
},
...
...
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