<template>
|
<div class="app-container">
|
<el-card class="box-card" style="height: 60px" >
|
<template>
|
<div class="container" type="flex" justify="center" style="text-align:center">
|
<!-- <el-row type="flex" justify="center" style="text-align:center;height: 12px" >-->
|
<!-- <el-col type="flex" justify="center" :span="14" style="text-align:center">-->
|
<el-divider><span style="font-size:22px;color:black"><strong>发动机数据检查</strong></span></el-divider>
|
<!-- </el-col>-->
|
<!-- </el-row>-->
|
</div>
|
</template>
|
</el-card>
|
<el-row :gutter="0" >
|
<el-col :span="14">
|
<el-card class="box-card" style="margin-top: 5px" >
|
<el-form ref="form" :model="form" label-width="25%" >
|
<el-form-item prop="engineNo" style="margin-top: 16px">
|
<span slot="label" style="font-size:22px;color:black;"><strong>发动机号</strong></span>
|
<el-input style="font-size:20px" v-model="form.engineNo" placeholder="请输入发动机号" clearable @keyup.space.native="EngineNohandleChange" >
|
<el-button slot="append" plain type="info" @click="EngineNohandleChange(form.engineNo)" icon="el-icon-search"></el-button>
|
</el-input>
|
</el-form-item>
|
</el-form>
|
<el-form ref="form" :model="form" label-width="25%" >
|
<el-form-item prop="productType"style="margin-top: 30px" >
|
<span slot="label" style="font-size:22px;color:black"><strong>机型</strong></span>
|
<el-input disabled style="font-size:20px" value="form.productType" v-model="form.productType" placeholder="" />
|
</el-form-item>
|
</el-form>
|
<el-form ref="form" :model="form" label-width="25%" >
|
<el-form-item prop="orderNo" style="margin-top: 30px">
|
<span slot="label" style="font-size:22px;color:black"><strong>工单编号</strong></span>
|
<el-input disabled style="font-size:20px" v-model="form.orderNo" placeholder="" />
|
</el-form-item>
|
</el-form>
|
<el-form ref="form" :model="form" label-width="25%" >
|
<el-form-item prop="currentWorkstation" style="margin-top: 30px">
|
<span slot="label" style="font-size:22px;color:black"><strong>质量状态</strong></span>
|
<el-input disabled style="font-size:20px" v-model:value="form.add" placeholder="" />
|
</el-form-item>
|
</el-form>
|
<el-divider></el-divider>
|
|
<el-row :gutter="10" class="mb8" type="flex" justify="center" style="text-align: center">
|
<el-col :span="1.5">
|
<el-button plain type="primary" style="width:400px;height:160px" v-hasPermi="['bs:formula:add']" @click="forceUpload">
|
<span class="el-icon-thumb" style="font-size:40px;color:black"></span>
|
<span style="font-size:45px;color:black" ><strong>强制上线</strong></span>
|
</el-button>
|
</el-col>
|
</el-row>
|
</el-card>
|
</el-col>
|
|
<el-col :span="10" inline style="margin-top: 5px">
|
<el-card class="custom-content" style="height: 264px">
|
<el-col :span="14">
|
<span style="font-size:25px"><strong>质量状态</strong></span>
|
<el-divider></el-divider>
|
{{this.form.engineCheckList}}
|
</el-col>
|
</el-card>
|
<el-card class="custom-content" style="height: 264px" >
|
<el-col :span="14"style=" ">
|
<span style="font-size:25px"><strong>最终结果</strong></span>
|
<el-divider></el-divider>
|
{{queryParams.productType}}
|
</el-col>
|
</el-card>
|
</el-col>
|
</el-row>
|
</div>
|
</template>
|
<script>
|
|
import { listOrderScheduling, forceUploadMethod, getUrl, getOrderScheduling, delOrderScheduling, addOrderScheduling, updateOrderScheduling } from "@/api/main/bs/orderScheduling/orderScheduling";
|
import { listPassingStationCollection, getPassingStationCollection, delPassingStationCollection, addPassingStationCollection, updatePassingStationCollection } from "@/api/main/da/passingStationCollection/passingStationCollection";
|
import {listLineInfo} from "@/api/main/bs/lineInfo/lineInfo";
|
import WebSocketReconnect from "@/utils/WebsocketTool";
|
|
// let websocket = null
|
// //判断当前浏览器是否支持WebSocket
|
// if ('WebSocket' in window) {
|
// //连接WebSocket节点
|
// websocket = new WebSocketReconnect('ws://127.0.0.1:8086/websocket/111122')
|
// } else {
|
// alert('浏览器不支持webSocket')
|
// }
|
// //接收到消息的回调方法
|
// websocket.socket.onmessage = function (event) {
|
// let data = event.data
|
// console.log('后端传递的数据:' + data)
|
// if (data != null && data !== ''){
|
// this.result = JSON.parse(data)
|
// console.log('this.result',this.result)
|
// // this.form.engineNo = this.result.server_message
|
// this.transEngineNo = this.result.server_message
|
// console.log('this.transEngineNo11111111111',this.transEngineNo)
|
// }
|
//
|
// }
|
// //监听窗口关闭事件,当窗口关闭时,主动去关闭websocket连接,防止连接还没断开就关闭窗口,server端会抛异常。
|
// window.onbeforeunload = function () {
|
// websocket.close()
|
// }
|
// //关闭连接
|
// function closeWebSocket() {
|
// websocket.close()
|
// }
|
// //发送消息
|
// function send() {
|
// websocket.socket.send({ kk: 123 })
|
// }
|
|
export default {
|
components: { },
|
options: [],
|
props: [],
|
data() {
|
return {
|
websocketUrl: '',
|
websocket: null,
|
result: {},
|
transEngineNo: '',
|
options: [],
|
total: 0,
|
engineCheckList:[],
|
showFlag:false,
|
buttondisabled:true,
|
mess:'',
|
// 查询参数
|
queryParams: {
|
pageNum: 1,
|
pageSize: 10,
|
engineNo: null,
|
productType:null,
|
orderNo:null,
|
qualityStatus:null,
|
currentWorkstation: null,
|
add: null,
|
engineCheckList:'暂无数据',
|
},
|
// 表单参数
|
form: {
|
engineNo: null,
|
productType:null,
|
orderNo:null,
|
qualityStatus:null,
|
currentWorkstation: null,
|
add: null,
|
engineCheckList:'暂无数据',
|
},
|
add: null,
|
};
|
},
|
computed: {},
|
watch: {
|
// transEngineNo:{
|
// handler(newVal,oldVal) {
|
// console.log('newVal',newVal)
|
// console.log('oldVal',oldVal)
|
// this.form.engineNo = newVal
|
// console.log('11111111111111')
|
// console.log('this.form.engineNo',this.form.engineNo)
|
// },
|
// immediate:true
|
// }
|
},
|
created() {
|
|
},
|
mounted() {
|
this.getWebUrl()
|
|
},
|
methods: {
|
getWebUrl(){
|
console.log("1111")
|
getUrl().then(res=>{
|
console.log("res",res)
|
this.websocketUrl = res+"OP120"
|
this.initWebSocket()
|
})
|
},
|
forceUpload() {
|
console.log('0000', this.form.engineNo)
|
if (this.form.engineNo !== null) {
|
forceUploadMethod(this.form.engineNo).then(res => {
|
|
})
|
} else {
|
this.$message({
|
message: '请输入发动机条码',
|
type: 'error',
|
offset: 300
|
})
|
}
|
},
|
initWebSocket: function (){
|
//判断当前浏览器是否支持WebSocket
|
if ('WebSocket' in window) {
|
//连接WebSocket节点
|
console.log("9999",this.websocketUrl)
|
this.websocket = new WebSocketReconnect(this.websocketUrl)
|
|
//接收到消息的回调方法
|
this.websocket.socket.onmessage = (event) => {
|
let data = event.data
|
console.log('后端传递的数据:' + data)
|
if (data != null && data !== ''){
|
this.result = JSON.parse(data)
|
console.log('this.result',this.result)
|
this.form.engineNo = this.result.server_message
|
// this.transEngineNo = this.result.server_message
|
console.log('this.transEngineNo11111111111',this.form.engineNo)
|
if (this.form.engineNo !== null && this.form.engineNo !== ''){
|
this.EngineNohandleChange()
|
}
|
}
|
}
|
//监听窗口关闭事件,当窗口关闭时,主动去关闭websocket连接,防止连接还没断开就关闭窗口,server端会抛异常。
|
window.onbeforeunload = function () {
|
this.websocket.close()
|
}
|
//关闭连接
|
function closeWebSocket() {
|
this.websocket.close()
|
}
|
//发送消息
|
function send() {
|
this.websocket.socket.send({ kk: 123 })
|
}
|
} else {
|
alert('浏览器不支持webSocket')
|
}
|
},
|
reset() {
|
this.form = {
|
engineNo:null,
|
productType:null,
|
orderNo:null,
|
qualityStatus:null,
|
currentWorkstation: null,
|
add: null,
|
engineCheckList:'暂无数据',
|
};
|
this.resetForm("form");
|
},
|
EngineNohandleChange(){
|
console.log("EngineNohandleChange")
|
if(this.form.engineNo !== null && this.form.engineNo !== undefined){
|
let OrderSchedulingParam = {engineNo: null}
|
OrderSchedulingParam.engineNo = this.form.engineNo;
|
listOrderScheduling(OrderSchedulingParam).then(response => {
|
console.log(response)
|
if(response.total === 1 ){
|
this.form.productType = response.rows[0].model
|
this.form.orderNo = response.rows[0].orderNo
|
this.form.qualityStatus = response.rows[0].qualityStatus
|
this.form.currentWorkstation = response.rows[0].currentWorkstation
|
this.form.add= response.rows[0].currentWorkstation+ response.rows[0].qualityStatus
|
if(this.form.qualityStatus ==='不合格'){
|
this.buttondisabled = false;
|
}
|
else{
|
this.buttondisabled = true;
|
}
|
}
|
else{
|
this.reset();
|
this.buttondisabled = true
|
const h = this.$createElement;
|
this.$message({
|
message: h('p',null, [
|
h('span', null, '警告 '),
|
h('i', { style: 'color: black' }, '输入的发动机号有误'),
|
h()]),
|
type: 'error',
|
center: true,
|
offset:300
|
});
|
}
|
});
|
let PassingStationCollectionParam = {sfcCode: null}
|
PassingStationCollectionParam.sfcCode = this.form.engineNo;
|
listPassingStationCollection(PassingStationCollectionParam).then(ponse =>{
|
this.engineCheckList = ponse.rows.locationCode ;
|
if(ponse.rows.length >= 1 && this.form.engineNo !== undefined){
|
this.form.engineCheckList = ''
|
for (let i = 0; i < ponse.rows.length; i++) {
|
this.form.engineCheckList += ' 工位:'+ ponse.rows[i].locationCode+'['+ponse.rows[i].outRsSign+']'
|
}
|
}
|
else{
|
this.form.engineCheckList = '暂无数据'
|
}
|
});
|
}
|
},
|
|
|
},
|
}
|
|
|
</script>
|
<style scoped>
|
::v-deep .el-input__inner{
|
height: 40px;
|
}
|
::v-deep .el-form-item__label {
|
line-height: 40px;
|
}
|
.custom-content {
|
height: 50%; /* 设置高度为50% */
|
}
|
/*.my-custom-modal .el-dialog__wrapper {*/
|
/* width: 400px; !* 设置宽度 *!*/
|
/* height: 200px; !* 设置高度 *!*/
|
/* top: 50px; !* 设置距离页面顶部的位置 *!*/
|
/* left: 50px; !* 设置距离页面左侧的位置 *!*/
|
/*}*/
|
</style>
|