|
|
|
@ -10,7 +10,7 @@ |
|
|
|
<el-col :span="9" style="margin-left: 35px; margin-top: -8px;"> |
|
|
|
<el-form-item class="customer-item" label="总良品数量(PCS):" style="margin-top: -10px;"> |
|
|
|
<el-input v-model="pageData.approvedQty" type="number" @blur="checkValidApprovedQty" |
|
|
|
style="width: 80px;" ></el-input> |
|
|
|
style="width: 80px;"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="9" style="margin-top: -8px;"> |
|
|
|
@ -33,7 +33,7 @@ |
|
|
|
</el-col> |
|
|
|
<el-col :span="5" style="margin-left: 20px; margin-top: -8px;"> |
|
|
|
<el-form-item class="customer-item" label="排产日期:"> |
|
|
|
<el-input v-model="pageData.scheduledDate" disabled="disabled" style="width: 80px;" ></el-input> |
|
|
|
<el-input v-model="pageData.scheduledDate" disabled="disabled" style="width: 80px;"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
<el-col :span="5" style="margin-left: 5px; margin-top: -8px;"> |
|
|
|
@ -50,12 +50,13 @@ |
|
|
|
<el-row style="margin-top: -10px;"> |
|
|
|
<el-col :span="24"> |
|
|
|
<el-form-item label="总调机时间(A1):"> |
|
|
|
<el-input v-model="pageData.totalSetupTime" disabled="disabled" style="width: 200px;" ></el-input> |
|
|
|
<el-input v-model="pageData.totalSetupTime" disabled="disabled" style="width: 200px;"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="总调机过程停机时间(A2):"> |
|
|
|
<el-input v-model="pageData.totalDowntimeTimeSetup" disabled="disabled" style="width: 200px;"></el-input> |
|
|
|
<el-input v-model="pageData.totalDowntimeTimeSetup" disabled="disabled" |
|
|
|
style="width: 200px;"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="净调机时间(A3 = A1 - A2):" > |
|
|
|
<el-form-item label="净调机时间(A3 = A1 - A2):"> |
|
|
|
<el-input v-model="pageData.totalPureSetupTime" disabled="disabled" style="width: 200px;"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
@ -69,7 +70,7 @@ |
|
|
|
<el-form-item label="总生产过程停机时间(B2):"> |
|
|
|
<el-input v-model="pageData.totalDowntimeTimeProd" disabled="disabled" style="width: 200px;"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="净生产时间(B3 = B1 - B2):" > |
|
|
|
<el-form-item label="净生产时间(B3 = B1 - B2):"> |
|
|
|
<el-input v-model="pageData.totalPureProdTime" disabled="disabled" style="width: 200px;"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
@ -81,10 +82,12 @@ |
|
|
|
<el-input v-model="pageData.totalManufactureTime" disabled="disabled" style="width: 200px;"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="总制造过程停机时间(C2 = A2 + B2):"> |
|
|
|
<el-input v-model="pageData.totalManufactureDowntimeTime" disabled="disabled" style="width: 200px;"></el-input> |
|
|
|
<el-input v-model="pageData.totalManufactureDowntimeTime" disabled="disabled" |
|
|
|
style="width: 200px;"></el-input> |
|
|
|
</el-form-item> |
|
|
|
<el-form-item label="净制造时间(C3 = A3 + B3):" > |
|
|
|
<el-input v-model="pageData.totalPureManufactureTime" disabled="disabled" style="width: 200px;"></el-input> |
|
|
|
<el-form-item label="净制造时间(C3 = A3 + B3):"> |
|
|
|
<el-input v-model="pageData.totalPureManufactureTime" disabled="disabled" |
|
|
|
style="width: 200px;"></el-input> |
|
|
|
</el-form-item> |
|
|
|
</el-col> |
|
|
|
</el-row> |
|
|
|
@ -105,7 +108,8 @@ |
|
|
|
<el-row style="height: 55px;"> |
|
|
|
<el-col style="text-align: center"> |
|
|
|
<el-form-item> |
|
|
|
<el-button type="primary" @click="closeDialog" style="margin-left: 10px; margin-bottom: 5px; width: 75px;"> |
|
|
|
<el-button type="primary" @click="closeDialog" |
|
|
|
style="margin-left: 10px; margin-bottom: 5px; width: 75px;"> |
|
|
|
关闭 |
|
|
|
</el-button> |
|
|
|
</el-form-item> |
|
|
|
@ -128,7 +132,7 @@ |
|
|
|
<el-row style="margin-top: -35px; width: 280px;"> |
|
|
|
<el-col :span="6"> |
|
|
|
<el-form-item :label="''" style="margin-left: 15px;"> |
|
|
|
<el-checkbox style="margin-top: 28px;" true-label="Y" false-label="N" |
|
|
|
<el-checkbox style="margin-top: 28px;" true-label="N" false-label="Y" disabled="disabled" |
|
|
|
v-model="pageData.timeFinishedFlag">有记录未结束 |
|
|
|
</el-checkbox> |
|
|
|
</el-form-item> |
|
|
|
@ -171,7 +175,7 @@ |
|
|
|
<el-row style="margin-top: -35px; width: 280px;"> |
|
|
|
<el-col :span="6"> |
|
|
|
<el-form-item :label="''" style="margin-left: 15px;"> |
|
|
|
<el-checkbox style="margin-top: 28px;" true-label="Y" false-label="N" |
|
|
|
<el-checkbox style="margin-top: 28px;" true-label="N" false-label="Y" disabled="disabled" |
|
|
|
v-model="pageData.toolFinishedFlag">有记录未结束 |
|
|
|
</el-checkbox> |
|
|
|
</el-form-item> |
|
|
|
@ -214,7 +218,7 @@ |
|
|
|
<el-row style="margin-top: -35px; width: 280px;"> |
|
|
|
<el-col :span="6"> |
|
|
|
<el-form-item :label="''" style="margin-left: 15px;"> |
|
|
|
<el-checkbox style="margin-top: 28px;" true-label="Y" false-label="N" |
|
|
|
<el-checkbox style="margin-top: 28px;" true-label="N" false-label="Y" disabled="disabled" |
|
|
|
v-model="pageData.materialFinishedFlag">有记录未结束 |
|
|
|
</el-checkbox> |
|
|
|
</el-form-item> |
|
|
|
@ -259,7 +263,7 @@ |
|
|
|
<!-- 异常原因录入的组件 --> |
|
|
|
<comExceptionReason ref="comExceptionReason" :close-on-click-modal="false" |
|
|
|
:visible.sync="showExceptionFlag" |
|
|
|
@initExceptionReason = "initExceptionReason"> |
|
|
|
@initExceptionReason="initExceptionReason"> |
|
|
|
|
|
|
|
</comExceptionReason> |
|
|
|
</div> |
|
|
|
@ -274,8 +278,11 @@ |
|
|
|
getSfdcTimeHistBySeqNo, |
|
|
|
getSfdcToolHistBySeqNo, |
|
|
|
getSfdcMaterialHistBySeqNo, |
|
|
|
checkFinishScheduleWithNoFqc, |
|
|
|
finishScheduleWithNoFqc, |
|
|
|
} from '@/api/yieldReport/com_finish_schedule.js'; |
|
|
|
export default { |
|
|
|
|
|
|
|
export default { |
|
|
|
name: "com_finish_roll", |
|
|
|
data() { |
|
|
|
return { |
|
|
|
@ -293,6 +300,7 @@ export default { |
|
|
|
reportedTime: this.dayjs(new Date()).format('YYYY-MM-DD HH:mm:ss'), |
|
|
|
scheduledDate: '', |
|
|
|
shiftDesc: '', |
|
|
|
shiftNo: '', |
|
|
|
totalSetupTime: 0,//总调机时间 |
|
|
|
totalDowntimeTimeSetup: 0,//总调机过程停机时间 |
|
|
|
totalPureSetupTime: 0,//净调机时间 |
|
|
|
@ -891,7 +899,7 @@ export default { |
|
|
|
this.operatorData = JSON.parse(JSON.stringify(operatorData)); |
|
|
|
//初始化标题 |
|
|
|
this.titleCon = '结束派工单 \ |
|
|
|
派工单号:'+scheduleData.seqNo; |
|
|
|
派工单号:' + scheduleData.seqNo; |
|
|
|
//处理异常的原因 |
|
|
|
this.pageData.exceptionFlag = 'N'; |
|
|
|
this.pageData.exceptionReason = ''; |
|
|
|
@ -900,12 +908,12 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
/*关闭modal*/ |
|
|
|
closeDialog(){ |
|
|
|
closeDialog() { |
|
|
|
this.$emit('update:visible', false); |
|
|
|
}, |
|
|
|
|
|
|
|
/*刷新当前的页面参数*/ |
|
|
|
refreshPageData(){ |
|
|
|
refreshPageData() { |
|
|
|
getFinishSchedulePageData(this.pageData).then(({data}) => { |
|
|
|
this.pageData.approvedQty = data.resultMap.reportedQty;//总良品数量 |
|
|
|
this.pageData.defectedQty = data.resultMap.defectedQty;//总不良品数量 |
|
|
|
@ -924,10 +932,11 @@ export default { |
|
|
|
//班次和时间的数据 |
|
|
|
this.pageData.scheduledDate = data.resultMap.scheduledDate; //排产日期 |
|
|
|
this.pageData.shiftDesc = data.resultMap.shiftDesc; //班次 |
|
|
|
this.pageData.shiftNo = data.resultMap.shiftNo;//班次的编码 |
|
|
|
//设置是否结束的标记 |
|
|
|
this.pageData.timeFinishedFlag = data.resultMap.scheduledDate; //时间记录是否结束 |
|
|
|
this.pageData.toolFinishedFlag = data.resultMap.shiftDesc; //工具记录是否结束 |
|
|
|
this.pageData.materialFinishedFlag = data.resultMap.scheduledDate; //材料记录是否结束 |
|
|
|
this.pageData.timeFinishedFlag = data.resultMap.timeFinishedFlag; //时间记录是否结束 |
|
|
|
this.pageData.toolFinishedFlag = data.resultMap.toolFinishedFlag; //工具记录是否结束 |
|
|
|
this.pageData.materialFinishedFlag = data.resultMap.materialFinishedFlag; //材料记录是否结束 |
|
|
|
//刷新时间的记录 |
|
|
|
this.refreshSfdcTimeHist(); |
|
|
|
//刷新工具的记录 |
|
|
|
@ -939,21 +948,21 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
//刷新当前页面时间的列表 |
|
|
|
refreshSfdcTimeHist(){ |
|
|
|
refreshSfdcTimeHist() { |
|
|
|
getSfdcTimeHistBySeqNo(this.pageData).then(({data}) => { |
|
|
|
this.sfdcTimeList = data.rows; |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//刷新当前页面工具的列表 |
|
|
|
refreshSfdcToolHist(){ |
|
|
|
refreshSfdcToolHist() { |
|
|
|
getSfdcToolHistBySeqNo(this.pageData).then(({data}) => { |
|
|
|
this.sfdcToolList = data.rows; |
|
|
|
}) |
|
|
|
}, |
|
|
|
|
|
|
|
//刷新当前页面材料的列表 |
|
|
|
refreshSfdcMaterialHist(){ |
|
|
|
refreshSfdcMaterialHist() { |
|
|
|
getSfdcMaterialHistBySeqNo(this.pageData).then(({data}) => { |
|
|
|
this.sfdcMaterialList = data.rows; |
|
|
|
}) |
|
|
|
@ -971,10 +980,10 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
/*检验良品的总数量*/ |
|
|
|
checkValidApprovedQty(){ |
|
|
|
checkValidApprovedQty() { |
|
|
|
//首先判断数值是否通过判断 |
|
|
|
let approvedQty = this.pageData.approvedQty; |
|
|
|
if(approvedQty == null || approvedQty == ''){ |
|
|
|
if (approvedQty == null || approvedQty == '') { |
|
|
|
this.$message.error('请输入总良品数量!'); |
|
|
|
this.pageData.approvedQty = 0;//重新赋值 |
|
|
|
return false; |
|
|
|
@ -982,60 +991,108 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
/*结束当前的操作*/ |
|
|
|
finishScheduleBun(){ |
|
|
|
finishScheduleBun() { |
|
|
|
//首先判断数值是否通过判断 |
|
|
|
let approvedQty = this.pageData.approvedQty; |
|
|
|
if(approvedQty == null || approvedQty == ''){ |
|
|
|
if (approvedQty == null || approvedQty == '') { |
|
|
|
this.$message.error('请输入总良品数量!'); |
|
|
|
this.pageData.approvedQty = 0;//重新赋值 |
|
|
|
return false; |
|
|
|
} |
|
|
|
if(approvedQty <= 0){ |
|
|
|
if (approvedQty <= 0) { |
|
|
|
this.$message.error('总良品数量必须大于0!'); |
|
|
|
this.pageData.approvedQty = 0;//重新赋值 |
|
|
|
return false; |
|
|
|
} |
|
|
|
//班次判断 |
|
|
|
if(this.pageData.shiftDesc == '无班次'){ |
|
|
|
if (this.pageData.shiftDesc == '无班次') { |
|
|
|
this.$message.error('该时间段内没有匹配的班次信息,请联系相关人员!!'); |
|
|
|
return false; |
|
|
|
} |
|
|
|
//先判断是否存在未结束的工具记录 |
|
|
|
let countNums = 0; |
|
|
|
let len = this.sfdcToolList.length; |
|
|
|
//循环判断是否存在未结束的 |
|
|
|
for (var i = 0; i < len; i++) { |
|
|
|
let sfdcTool = this.sfdcToolList[i]; |
|
|
|
let finishedFlag = sfdcTool.finishedFlag; |
|
|
|
if ('N' === finishedFlag) { |
|
|
|
//设置加1 |
|
|
|
countNums = countNums + 1; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//判断是否需要自动 |
|
|
|
if (countNums > 0) { |
|
|
|
this.$confirm('该派工单/卷上还有刀模尚未结束处理?请确认是否要自动处理?', '提示', { |
|
|
|
confirmButtonText: '确认', |
|
|
|
celButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(() => { |
|
|
|
//设置自动处理工序的信息 |
|
|
|
this.pageData.autoTool = 'Y'; |
|
|
|
//调用检查方法 |
|
|
|
//先调用检查方法 |
|
|
|
checkFinishScheduleWithNoFqc(this.pageData).then(({data}) => { |
|
|
|
//判断是否成功 |
|
|
|
if(data.code == 500){ |
|
|
|
if (data.code == 500) { |
|
|
|
this.$message.error(data.msg); |
|
|
|
}else if (data.resultMap.resultCode == '201'){ |
|
|
|
} else if (data.resultMap.resultCode == '201') { |
|
|
|
//打开异常原因录入的界面 |
|
|
|
this.$confirm(data.resultMap.resultMsg, '提示', { |
|
|
|
confirmButtonText: '确认', |
|
|
|
celButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(() => { |
|
|
|
//调用检查方法 |
|
|
|
this.showExceptionReasonModal(); |
|
|
|
}); |
|
|
|
}else{ |
|
|
|
//执行结束卷操作 |
|
|
|
this.finishRollOperation(); |
|
|
|
} else { |
|
|
|
//执行结束派工单操作 |
|
|
|
this.finishScheduleOperation(); |
|
|
|
} |
|
|
|
}); |
|
|
|
}).catch(() => { |
|
|
|
this.pageData.autoTool = 'N'; |
|
|
|
}); |
|
|
|
} else { |
|
|
|
//调用检查的方法 |
|
|
|
//先调用检查方法 |
|
|
|
checkFinishScheduleWithNoFqc(this.pageData).then(({data}) => { |
|
|
|
//判断是否成功 |
|
|
|
if (data.code == 500) { |
|
|
|
this.$message.error(data.msg); |
|
|
|
} else if (data.resultMap.resultCode == '201') { |
|
|
|
//打开异常原因录入的界面 |
|
|
|
this.$confirm(data.resultMap.resultMsg, '提示', { |
|
|
|
confirmButtonText: '确认', |
|
|
|
celButtonText: '取消', |
|
|
|
type: 'warning' |
|
|
|
}).then(() => { |
|
|
|
//调用检查方法 |
|
|
|
this.showExceptionReasonModal(); |
|
|
|
}); |
|
|
|
} else { |
|
|
|
//执行结束派工单操作 |
|
|
|
this.finishScheduleOperation(); |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
/*结束卷的具体操作*/ |
|
|
|
finishRollOperation(){ |
|
|
|
//验证通过提交到后台 |
|
|
|
let postData = {'pageData': JSON.stringify(this.pageData), 'materialList': JSON.stringify(this.sfdcMaterialList)}; |
|
|
|
finishScheduleOperation() { |
|
|
|
//处理信息 |
|
|
|
finishRollWithNoFqc(postData).then(({data}) => { |
|
|
|
this.$message.error('qty_reported找不到!'); |
|
|
|
finishScheduleWithNoFqc(this.pageData).then(({data}) => { |
|
|
|
//判断操作是否成功 |
|
|
|
if(data.code == 500){ |
|
|
|
if (data.code == 500) { |
|
|
|
this.$message.error(data.msg); |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
//刷新报工的页面 |
|
|
|
this.$emit('refreshPageData'); |
|
|
|
this.$emit('processFinishScheduleOperation'); |
|
|
|
//关闭当前的页面 |
|
|
|
this.closeDialog(); |
|
|
|
} |
|
|
|
@ -1043,7 +1100,7 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
/*打开异常原因录入页面*/ |
|
|
|
showExceptionReasonModal(){ |
|
|
|
showExceptionReasonModal() { |
|
|
|
//1.首先调用菜单判断方式 打开生产过程的材料的页面 |
|
|
|
//checkProduceButton('produceMaterialFlag'); |
|
|
|
//打开生产过程的工具的页面 |
|
|
|
@ -1054,50 +1111,52 @@ export default { |
|
|
|
}, |
|
|
|
|
|
|
|
/*处理异常的原因*/ |
|
|
|
initExceptionReason(exceptionReason){ |
|
|
|
initExceptionReason(exceptionReason) { |
|
|
|
//处理异常的原因 |
|
|
|
this.pageData.exceptionFlag = 'Y'; |
|
|
|
this.pageData.exceptionReason = exceptionReason; |
|
|
|
//然后提交结束卷的数据 |
|
|
|
this.finishRollOperation(); |
|
|
|
//然后提交结束派工单的数据 |
|
|
|
this.finishScheduleOperation(); |
|
|
|
} |
|
|
|
}, |
|
|
|
created() { |
|
|
|
// this.factoryList() |
|
|
|
// this.getLanguageList() |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
</script> |
|
|
|
|
|
|
|
<style scoped lang="scss"> |
|
|
|
/* 因为放不下 调整下上边距*/ |
|
|
|
.customer-css /deep/ .el-dialog { |
|
|
|
/* 因为放不下 调整下上边距*/ |
|
|
|
.customer-css /deep/ .el-dialog { |
|
|
|
top: 5vh !important; |
|
|
|
margin-top: 0px !important; |
|
|
|
margin-bottom: 10px; |
|
|
|
} |
|
|
|
/*调节页面button和input的上下间距*/ |
|
|
|
.customer-css .customer-button{ |
|
|
|
} |
|
|
|
|
|
|
|
/*调节页面button和input的上下间距*/ |
|
|
|
.customer-css .customer-button { |
|
|
|
margin-top: 25px; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/*调节样式*/ |
|
|
|
.customer-item{ |
|
|
|
/*调节样式*/ |
|
|
|
.customer-item { |
|
|
|
margin-top: -10px; |
|
|
|
} |
|
|
|
/*fieldset下table的样式*/ |
|
|
|
.customer-fieldset /deep/ .el-table__header th.is-leaf{ |
|
|
|
} |
|
|
|
|
|
|
|
/*fieldset下table的样式*/ |
|
|
|
.customer-fieldset /deep/ .el-table__header th.is-leaf { |
|
|
|
line-height: 16px; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/deep/ .customer-tab .el-tabs__content{ |
|
|
|
/deep/ .customer-tab .el-tabs__content { |
|
|
|
padding: 0px !important; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/*table中input*/ |
|
|
|
div.table-input /deep/ input.el-input__inner{ |
|
|
|
/*table中input*/ |
|
|
|
div.table-input /deep/ input.el-input__inner { |
|
|
|
text-align: right; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
</style> |