From 1c703617885275090d69c697e82e61f4940c0bdc Mon Sep 17 00:00:00 2001
From: yyt <306727702@qq.com>
Date: 星期二, 28 五月 2024 14:20:29 +0800
Subject: [PATCH] 380新产品,优化

---
 jcdm-ui/src/views/main/kb/engineCheck/index.vue |  140 ++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 128 insertions(+), 12 deletions(-)

diff --git a/jcdm-ui/src/views/main/kb/engineCheck/index.vue b/jcdm-ui/src/views/main/kb/engineCheck/index.vue
index fbcb8b3..198a131 100644
--- a/jcdm-ui/src/views/main/kb/engineCheck/index.vue
+++ b/jcdm-ui/src/views/main/kb/engineCheck/index.vue
@@ -5,7 +5,7 @@
         <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">-->
-              <span style="font-size:22px;color:black"><strong>鍙戝姩鏈烘暟鎹鏌�</strong></span>
+          <el-divider><span style="font-size:22px;color:black"><strong>鍙戝姩鏈烘暟鎹鏌�</strong></span></el-divider>
 <!--            </el-col>-->
 <!--          </el-row>-->
         </div>
@@ -17,7 +17,7 @@
              <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.enter.native="EngineNohandleChange" >
+                 <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>
@@ -44,9 +44,9 @@
 
          <el-row :gutter="10" class="mb8" type="flex" justify="center"  style="text-align: center">
            <el-col :span="1.5">
-             <el-button plain  :disabled="buttondisabled" type="primary" style="width:400px;height:160px" v-hasPermi="['bs:formula:add']" @click="forceOnline">
+             <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>
+               <span style="font-size:45px;color:black" ><strong>寮哄埗涓婄嚎</strong></span>
              </el-button>
            </el-col>
          </el-row>
@@ -54,31 +54,64 @@
      </el-col>
 
      <el-col :span="10"  inline style="margin-top: 5px">
-       <el-tabs type="border-card"  >
-         <el-card class="custom-content"  style="height: 242px;width:800px">
+         <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="margin-top: 10px;height: 242px;width:800px" >
+         <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-tabs>
      </el-col>
    </el-row>
   </div>
 </template>
 <script>
 
-import { listOrderScheduling, getOrderScheduling, delOrderScheduling, addOrderScheduling, updateOrderScheduling } from "@/api/main/bs/orderScheduling/orderScheduling";
+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
+// //鍒ゆ柇褰撳墠娴忚鍣ㄦ槸鍚︽敮鎸乄ebSocket
+// 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)
+//   }
+//
+// }
+// //鐩戝惉绐楀彛鍏抽棴浜嬩欢锛屽綋绐楀彛鍏抽棴鏃讹紝涓诲姩鍘诲叧闂瓀ebsocket杩炴帴锛岄槻姝㈣繛鎺ヨ繕娌℃柇寮�灏卞叧闂獥鍙o紝server绔細鎶涘紓甯搞��
+// window.onbeforeunload = function () {
+//   websocket.close()
+// }
+// //鍏抽棴杩炴帴
+// function closeWebSocket() {
+//   websocket.close()
+// }
+// //鍙戦�佹秷鎭�
+// function send() {
+//   websocket.socket.send({ kk: 123 })
+// }
 
 export default {
   components: { },
@@ -86,11 +119,16 @@
   props: [],
   data() {
     return {
+      websocketUrl: '',
+      websocket: null,
+      result: {},
+      transEngineNo: '',
       options: [],
       total: 0,
       engineCheckList:[],
       showFlag:false,
       buttondisabled:true,
+      mess:'',
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
@@ -117,10 +155,86 @@
     };
   },
   computed: {},
-  watch: {},
-  created() {},
-  mounted() {},
+  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 (){
+      //鍒ゆ柇褰撳墠娴忚鍣ㄦ槸鍚︽敮鎸乄ebSocket
+      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()
+            }
+          }
+        }
+//鐩戝惉绐楀彛鍏抽棴浜嬩欢锛屽綋绐楀彛鍏抽棴鏃讹紝涓诲姩鍘诲叧闂瓀ebsocket杩炴帴锛岄槻姝㈣繛鎺ヨ繕娌℃柇寮�灏卞叧闂獥鍙o紝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,
@@ -134,10 +248,12 @@
       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

--
Gitblit v1.9.3