|
|
@ -45,11 +45,11 @@ |
|
|
<el-form-item :label="'物料编码:'"> |
|
|
<el-form-item :label="'物料编码:'"> |
|
|
<el-input v-model="searchData.partNo" style="width: 120px"></el-input> |
|
|
<el-input v-model="searchData.partNo" style="width: 120px"></el-input> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="'排产情况:'"> |
|
|
|
|
|
|
|
|
<el-form-item :label="'派工情况:'"> |
|
|
<el-select filterable v-model="searchData.planStatus" style="width: 120px"> |
|
|
<el-select filterable v-model="searchData.planStatus" style="width: 120px"> |
|
|
<el-option label="全部" value=""></el-option> |
|
|
<el-option label="全部" value=""></el-option> |
|
|
<el-option label="未派工完" value="ROUND(a.LotSize,3) >ROUND(ISNULL(SL.scheduledQty,0),3)"></el-option> |
|
|
|
|
|
<el-option label="已派工完" value="ROUND(ISNULL(SL.scheduledQty,0),3) >=ROUND(a.LotSize,3)"></el-option> |
|
|
|
|
|
|
|
|
<el-option label="未派工完" value="ROUND(a.OrderQty,3) >ROUND(ISNULL(SL.scheduledQty,0),3)"></el-option> |
|
|
|
|
|
<el-option label="已派工完" value="ROUND(ISNULL(SL.scheduledQty,0),3) >=ROUND(a.OrderQty,3)"></el-option> |
|
|
</el-select> |
|
|
</el-select> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item :label="' '"> |
|
|
<el-form-item :label="' '"> |
|
|
@ -203,19 +203,19 @@ |
|
|
</el-table> |
|
|
</el-table> |
|
|
<el-dialog title="派工" :close-on-click-modal="false" v-drag :visible.sync="scheduledModalFlag" width="720px"> |
|
|
<el-dialog title="派工" :close-on-click-modal="false" v-drag :visible.sync="scheduledModalFlag" width="720px"> |
|
|
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;"> |
|
|
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;"> |
|
|
<el-form-item label="订单号:"> |
|
|
|
|
|
|
|
|
<el-form-item label="日计划号:"> |
|
|
<el-input v-model="schedulingModalData.orderNo" disabled style="width: 120px"></el-input> |
|
|
<el-input v-model="schedulingModalData.orderNo" disabled style="width: 120px"></el-input> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item label="工厂编号:"> |
|
|
<el-form-item label="工厂编号:"> |
|
|
<el-input v-model="schedulingModalData.site" disabled style="width: 120px"></el-input> |
|
|
<el-input v-model="schedulingModalData.site" disabled style="width: 120px"></el-input> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item label="生产订单号:"> |
|
|
|
|
|
<el-input v-model="schedulingModalData.orderRef1" disabled style="width: 120px"></el-input> |
|
|
|
|
|
|
|
|
<el-form-item label="计划日期:"> |
|
|
|
|
|
<el-input v-model="schedulingModalData.orderDate" disabled style="width: 120px"></el-input> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item label="订单数量:"> |
|
|
<el-form-item label="订单数量:"> |
|
|
<el-input v-model="schedulingModalData.lotSize" disabled style="width: 120px"></el-input> |
|
|
<el-input v-model="schedulingModalData.lotSize" disabled style="width: 120px"></el-input> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item label="待排产数:"> |
|
|
|
|
|
|
|
|
<el-form-item label="待派工数:"> |
|
|
<el-input v-model="schedulingModalData.qtyToSchedule" disabled style="width: 120px"></el-input> |
|
|
<el-input v-model="schedulingModalData.qtyToSchedule" disabled style="width: 120px"></el-input> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-form> |
|
|
</el-form> |
|
|
@ -237,30 +237,35 @@ |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-form> |
|
|
</el-form> |
|
|
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;"> |
|
|
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;"> |
|
|
<el-form-item label="排产机台:"> |
|
|
|
|
|
|
|
|
<el-form-item label="派工机台:"> |
|
|
<el-select v-model="schedulingModalData.resourceId" style="width: 120px" |
|
|
<el-select v-model="schedulingModalData.resourceId" style="width: 120px" |
|
|
placeholder="请选择"> |
|
|
placeholder="请选择"> |
|
|
<el-option |
|
|
|
|
|
v-for="(item,index) in availableResourceList" |
|
|
|
|
|
:key="index" |
|
|
|
|
|
:label="item.resourceID" |
|
|
|
|
|
:value="item.resourceID" |
|
|
|
|
|
> |
|
|
|
|
|
|
|
|
<el-option v-for="item in availableResourceList " :key="index" :label="item.ResouceDesc" |
|
|
|
|
|
:value="item.ResourceID"> |
|
|
|
|
|
|
|
|
</el-option> |
|
|
</el-option> |
|
|
</el-select> |
|
|
</el-select> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item label="排产班次:"> |
|
|
|
|
|
|
|
|
<el-form-item label="派工班次:"> |
|
|
<el-select v-model="schedulingModalData.shiftNo" style="width: 120px" |
|
|
<el-select v-model="schedulingModalData.shiftNo" style="width: 120px" |
|
|
placeholder="请选择"> |
|
|
placeholder="请选择"> |
|
|
<el-option label="白班" value="白班"></el-option> |
|
|
<el-option label="白班" value="白班"></el-option> |
|
|
<el-option label="晚班" value="晚班"></el-option> |
|
|
<el-option label="晚班" value="晚班"></el-option> |
|
|
</el-select> |
|
|
</el-select> |
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
<el-form-item label="本次累计排产数量:"> |
|
|
|
|
|
|
|
|
<el-form-item label="派工人员:"> |
|
|
|
|
|
<el-select v-model="schedulingModalData.operatorId" style="width: 120px" |
|
|
|
|
|
placeholder="请选择"> |
|
|
|
|
|
<el-option v-for="item in operatorIdList " :key="index" :label="item.operatorName" |
|
|
|
|
|
:value="item.operatorId"> |
|
|
|
|
|
|
|
|
|
|
|
</el-option> |
|
|
|
|
|
</el-select> |
|
|
|
|
|
</el-form-item> |
|
|
|
|
|
<el-form-item label="本次累计派工数量:"> |
|
|
<el-input v-model="schedulingModalData.sumQty" type="number" disabled style="width: 120px"></el-input> |
|
|
<el-input v-model="schedulingModalData.sumQty" type="number" disabled style="width: 120px"></el-input> |
|
|
<el-button type="primary" @click="addPlans()" style="margin-left: 10px;">添加</el-button> |
|
|
<el-button type="primary" @click="addPlans()" style="margin-left: 10px;">添加</el-button> |
|
|
<el-button type="primary" @click="savePlans()">保存</el-button> |
|
|
<el-button type="primary" @click="savePlans()">保存</el-button> |
|
|
<el-button type="primary" @click="scheduledModalFlag = false">关闭</el-button> |
|
|
|
|
|
</el-form-item> |
|
|
</el-form-item> |
|
|
</el-form> |
|
|
</el-form> |
|
|
<div class="inputTable "> |
|
|
<div class="inputTable "> |
|
|
@ -274,7 +279,7 @@ |
|
|
header-align="center" |
|
|
header-align="center" |
|
|
align="left" |
|
|
align="left" |
|
|
min-width="100" |
|
|
min-width="100" |
|
|
label="排产日期"> |
|
|
|
|
|
|
|
|
label="派工日期"> |
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-date-picker |
|
|
<el-date-picker |
|
|
style="width: 95%" |
|
|
style="width: 95%" |
|
|
@ -292,7 +297,7 @@ |
|
|
header-align="center" |
|
|
header-align="center" |
|
|
align="right" |
|
|
align="right" |
|
|
min-width="80" |
|
|
min-width="80" |
|
|
label="排产数量"> |
|
|
|
|
|
|
|
|
label="派工数量"> |
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-input v-model="scope.row.scheduleQty" type="number" @change="changeSum" placeholder="请输入数量" |
|
|
<el-input v-model="scope.row.scheduleQty" type="number" @change="changeSum" placeholder="请输入数量" |
|
|
style="width:98%"></el-input> |
|
|
style="width:98%"></el-input> |
|
|
@ -303,12 +308,12 @@ |
|
|
header-align="center" |
|
|
header-align="center" |
|
|
align="left" |
|
|
align="left" |
|
|
min-width="80" |
|
|
min-width="80" |
|
|
label="排产机台"> |
|
|
|
|
|
|
|
|
label="派工机台"> |
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-select v-model="scope.row.resourceId" placeholder="请选择" style="height: 12px;padding: 0px " filterable |
|
|
<el-select v-model="scope.row.resourceId" placeholder="请选择" style="height: 12px;padding: 0px " filterable |
|
|
allow-create> |
|
|
allow-create> |
|
|
<el-option v-for="item in availableResourceList " :key="index" :label="item.resourceID" |
|
|
|
|
|
:value="item.resourceID"> |
|
|
|
|
|
|
|
|
<el-option v-for="item in availableResourceList " :key="index" :label="item.ResouceDesc" |
|
|
|
|
|
:value="item.ResourceID"> |
|
|
|
|
|
|
|
|
</el-option> |
|
|
</el-option> |
|
|
</el-select> |
|
|
</el-select> |
|
|
@ -319,7 +324,7 @@ |
|
|
header-align="center" |
|
|
header-align="center" |
|
|
align="left" |
|
|
align="left" |
|
|
min-width="80" |
|
|
min-width="80" |
|
|
label="排产班次"> |
|
|
|
|
|
|
|
|
label="派工班次"> |
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-select v-model="scope.row.shiftNo" placeholder="请选择" style="height: 12px;padding: 0px " filterable |
|
|
<el-select v-model="scope.row.shiftNo" placeholder="请选择" style="height: 12px;padding: 0px " filterable |
|
|
allow-create> |
|
|
allow-create> |
|
|
@ -333,7 +338,7 @@ |
|
|
header-align="center" |
|
|
header-align="center" |
|
|
align="right" |
|
|
align="right" |
|
|
min-width="80" |
|
|
min-width="80" |
|
|
label="排产人员"> |
|
|
|
|
|
|
|
|
label="派工人员"> |
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-select v-model="scope.row.operatorId" placeholder="请选择" style="height: 12px;padding: 0px " filterable |
|
|
<el-select v-model="scope.row.operatorId" placeholder="请选择" style="height: 12px;padding: 0px " filterable |
|
|
allow-create> |
|
|
allow-create> |
|
|
@ -366,7 +371,9 @@ |
|
|
|
|
|
|
|
|
<script> |
|
|
<script> |
|
|
import { |
|
|
import { |
|
|
getSOTastRoutingData |
|
|
|
|
|
|
|
|
getSOTastRoutingData, |
|
|
|
|
|
getWorkCenterOperatorList, |
|
|
|
|
|
getAvailableResourceList, |
|
|
} from "@/api/production.js" |
|
|
} from "@/api/production.js" |
|
|
|
|
|
|
|
|
export default { |
|
|
export default { |
|
|
@ -409,7 +416,7 @@ |
|
|
partNo: '', |
|
|
partNo: '', |
|
|
orderRef1:'', |
|
|
orderRef1:'', |
|
|
site: this.$store.state.user.site, |
|
|
site: this.$store.state.user.site, |
|
|
planStatus: 'ROUND(a.LotSize,3) >ROUND(ISNULL(SL.scheduledQty,0),3)', |
|
|
|
|
|
|
|
|
planStatus: 'ROUND(a.OrderQty,3) >ROUND(ISNULL(SL.scheduledQty,0),3)', |
|
|
itemNo:'', |
|
|
itemNo:'', |
|
|
}, |
|
|
}, |
|
|
schedulingModalData: { |
|
|
schedulingModalData: { |
|
|
@ -428,6 +435,8 @@ |
|
|
resourceId: '', |
|
|
resourceId: '', |
|
|
shiftNo: '', |
|
|
shiftNo: '', |
|
|
sumQty: '', |
|
|
sumQty: '', |
|
|
|
|
|
orderDate:'', |
|
|
|
|
|
operatorId:'', |
|
|
}, |
|
|
}, |
|
|
scheduledModalFlag: false, |
|
|
scheduledModalFlag: false, |
|
|
availableResourceList: [], |
|
|
availableResourceList: [], |
|
|
@ -486,14 +495,17 @@ |
|
|
itemNo: row.itemNo, |
|
|
itemNo: row.itemNo, |
|
|
operationDesc: row.operationDesc, |
|
|
operationDesc: row.operationDesc, |
|
|
workCenterNo: row.workCenterNo, |
|
|
workCenterNo: row.workCenterNo, |
|
|
|
|
|
orderDate: row.orderDate, |
|
|
scheduleDate: '', |
|
|
scheduleDate: '', |
|
|
scheduleQty: '', |
|
|
scheduleQty: '', |
|
|
resourceId: '', |
|
|
resourceId: '', |
|
|
shiftNo: '', |
|
|
shiftNo: '', |
|
|
sumQty: 0, |
|
|
sumQty: 0, |
|
|
|
|
|
operatorId: '', |
|
|
} |
|
|
} |
|
|
this.schedulingModalTableData = [] |
|
|
this.schedulingModalTableData = [] |
|
|
// this.getAvailableResourceList(row) |
|
|
|
|
|
|
|
|
this.getAvailableResourceList(row); |
|
|
|
|
|
this.getWorkCenterOperatorList(row); |
|
|
this.scheduledModalFlag = true |
|
|
this.scheduledModalFlag = true |
|
|
}, |
|
|
}, |
|
|
addPlans () { |
|
|
addPlans () { |
|
|
@ -505,7 +517,7 @@ |
|
|
// return false |
|
|
// return false |
|
|
// } |
|
|
// } |
|
|
// if (this.schedulingModalData.shiftNo == '') { |
|
|
// if (this.schedulingModalData.shiftNo == '') { |
|
|
// this.$alert('请选择排产班次!', '错误', { |
|
|
|
|
|
|
|
|
// this.$alert('请选择派工班次!', '错误', { |
|
|
// confirmButtonText: '确定' |
|
|
// confirmButtonText: '确定' |
|
|
// }) |
|
|
// }) |
|
|
// return false |
|
|
// return false |
|
|
@ -515,7 +527,7 @@ |
|
|
resourceId: this.schedulingModalData.resourceId, |
|
|
resourceId: this.schedulingModalData.resourceId, |
|
|
shiftNo: this.schedulingModalData.shiftNo, |
|
|
shiftNo: this.schedulingModalData.shiftNo, |
|
|
scheduleDate: null, |
|
|
scheduleDate: null, |
|
|
operatorId:'', |
|
|
|
|
|
|
|
|
operatorId:this.schedulingModalData.operatorId, |
|
|
selectList: [] |
|
|
selectList: [] |
|
|
}) |
|
|
}) |
|
|
this.sumQty += this.schedulingModalData.scheduleQty |
|
|
this.sumQty += this.schedulingModalData.scheduleQty |
|
|
@ -532,10 +544,28 @@ |
|
|
this.schedulingModalData.sumQty = sum |
|
|
this.schedulingModalData.sumQty = sum |
|
|
}, |
|
|
}, |
|
|
splitScheduleTable (index) { |
|
|
splitScheduleTable (index) { |
|
|
|
|
|
|
|
|
this.schedulingModalTableData.splice(index, 1) |
|
|
this.schedulingModalTableData.splice(index, 1) |
|
|
this.changeSum() |
|
|
this.changeSum() |
|
|
}, |
|
|
}, |
|
|
|
|
|
getWorkCenterOperatorList(row){ |
|
|
|
|
|
let inData={ |
|
|
|
|
|
site:row.site, |
|
|
|
|
|
workCenterNo:row.workCenterNo, |
|
|
|
|
|
} |
|
|
|
|
|
getWorkCenterOperatorList(inData).then(({data}) => { |
|
|
|
|
|
this.operatorIdList = data.rows; |
|
|
|
|
|
}) |
|
|
|
|
|
}, |
|
|
|
|
|
getAvailableResourceList(row){ |
|
|
|
|
|
let inData={ |
|
|
|
|
|
site:row.site, |
|
|
|
|
|
orderNo:row.orderRef1, |
|
|
|
|
|
itemNo:row.itemNo, |
|
|
|
|
|
} |
|
|
|
|
|
getAvailableResourceList(inData).then(({data}) => { |
|
|
|
|
|
this.availableResourceList = data.rows; |
|
|
|
|
|
}) |
|
|
|
|
|
}, |
|
|
}, |
|
|
}, |
|
|
created() { |
|
|
created() { |
|
|
} |
|
|
} |
|
|
|