From ada5f3072f14e62eeebfced57755b278f2cc0857 Mon Sep 17 00:00:00 2001
From: yyt <306727702@qq.com>
Date: 星期六, 29 六月 2024 20:04:04 +0800
Subject: [PATCH] 更新

---
 jcdm-ui/package.json                    |    2 +
 jcdm-ui/src/views/main/kb/cvt/index.vue |  108 +++++++++++++++++++++++++++++------------------------
 package-lock.json                       |    2 
 3 files changed, 62 insertions(+), 50 deletions(-)

diff --git a/jcdm-ui/package.json b/jcdm-ui/package.json
index 89380e7..93d19ac 100644
--- a/jcdm-ui/package.json
+++ b/jcdm-ui/package.json
@@ -49,6 +49,7 @@
     "js-cookie": "3.0.1",
     "jsencrypt": "3.0.0-rc.1",
     "nprogress": "0.2.0",
+    "qrcode-reader": "^1.0.4",
     "quill": "1.3.7",
     "screenfull": "5.0.2",
     "sortablejs": "1.10.2",
@@ -73,6 +74,7 @@
     "eslint": "7.15.0",
     "eslint-plugin-vue": "7.2.0",
     "lint-staged": "10.5.3",
+    "qrcodejs2": "^0.0.2",
     "runjs": "4.4.2",
     "sass": "1.32.13",
     "sass-loader": "10.1.1",
diff --git a/jcdm-ui/src/views/main/kb/cvt/index.vue b/jcdm-ui/src/views/main/kb/cvt/index.vue
index af3c07e..46f132d 100644
--- a/jcdm-ui/src/views/main/kb/cvt/index.vue
+++ b/jcdm-ui/src/views/main/kb/cvt/index.vue
@@ -24,14 +24,15 @@
    <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  @input="EngineNohandleChange">
-                   <el-button slot="append" plain type="info" @click="EngineNohandleChange" icon="el-icon-search"></el-button>
-                 </el-input>
+         <el-form :model="form" size="large" :inline="true" label-width="68px" @submit.native.prevent>
+               <el-form-item label-width="200" label="鍙戝姩鏈虹爜" :prop="form.engineNo"  style="align-content: center">
+                 <input v-model="form.engineNo"
+                        ref="inputdata"
+                        style="height: 39px; width: 300px"
+                        placeholder="璇疯緭鍏ュ彂鍔ㄦ満鐮�"
+                 />
                </el-form-item>
-             </el-form>
+         </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>
@@ -54,7 +55,7 @@
 
          <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  :disabled="buttondisabled" type="primary" style="width:400px;height:160px" v-hasPermi="['bs:formula:add']">
                <span   class="el-icon-thumb"   style="font-size:40px;color:black"></span>
                <span style="font-size:45px;color:black"><strong>寮哄埗涓婄嚎</strong></span>
              </el-button>
@@ -80,7 +81,7 @@
 import { listOrderScheduling, 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 { setSNCode } from "@/api/main/da/opcuaconfig/opcuaconfig";
+import {setSNCode} from "@/api/main/da/opcuaconfig/opcuaconfig";
 import {getIp, listStationConf} from "@/api/main/sc/stationConf";
 
 export default {
@@ -97,13 +98,8 @@
       locationCode: "鏈厤缃�",
       locationName: "鏈厤缃伐浣�",
 
-      codeValue: "",
-      code: "",
-      lastTime: "",
-      nextTime: "",
-      lastCode: "",
-      nextCode: "",
-      dtmainId: "",
+      scannerFlag: false,
+      barcode: "",
 
       // 鏌ヨ鍙傛暟
       queryParams: {
@@ -132,40 +128,57 @@
   },
   computed: {},
   watch: {},
-  created() {
-    window.document.onkeypress = (e) => {
-      if (window.event) {
-        this.nextCode = e.keyCode;
-      } else if (e.which) {
-        this.nextCode = e.which;
-      }
-      if (e.which === 13) {
-        // 閿洏鍥炶溅浜嬩欢
-        if (this.code.length < 3) return; // 鎵爜鏋殑閫熷害寰堝揩锛屾墜鍔ㄨ緭鍏ョ殑鏃堕棿涓嶄細璁ヽode鐨勯暱搴﹀ぇ浜�2锛屾墍浠ヨ繖閲屼笉浼氬鎵爜鏋湁鏁�
-        this.parseQRCode(this.code); // 鑾峰彇鍒版壂鐮佹灙杈撳叆鐨勫唴瀹癸紝鍋氬埆鐨勬搷浣�
-        this.lastCode = "";
-        this.lastTime = "";
-        return;
-      }
-      this.nextTime = new Date().getTime();
-      if (!this.lastTime && !this.lastCode) {
-        this.code = ""; // 娓呯┖涓婃鐨勬潯褰㈢爜
-        this.code += e.key;
-      }
-      if (this.lastCode && this.lastTime && this.nextTime - this.lastTime > 500) {
-        // 褰撴壂鐮佸墠鏈塳eypress浜嬩欢鏃�,闃叉棣栧瓧缂哄け
-        this.code = e.key;
-      } else if (this.lastCode && this.lastTime) {
-        this.code += e.key;
-      }
-      this.lastCode = this.nextCode;
-      this.lastTime = this.nextTime;
-    };
+
+  beforeDestroy() {
+    this.$refs.inputdata.removeEventListener('keydown',this.handleScannerInput)
   },
   mounted() {
+    this.setFocus()
+    this.$refs.inputdata.addEventListener('keydown',this.handleScannerInput)
     this.getStationConf();
   },
   methods: {
+
+    refresh() {
+      location.reload();
+    },
+    setFocus(){
+      this.$nextTick(()=>{
+        this.$refs.inputdata.focus()
+      })
+    },
+    handleScannerInput(event){
+      if (this.scannerFlag){
+        this.form.engineNo = ''
+        this.$refs.inputdata.value = ''
+        this.scannerFlag = false
+      }
+      const input = event.target
+      const inputValue = input.value
+      this.form.engineNo = inputValue
+      if (event.key === 'Enter'){
+        this.scannerFlag = true
+        console.log("鏉$爜锛�",this.form.engineNo)
+        if(this.form.engineNo !== null && this.form.engineNo !== undefined) {
+          setSNCode(this.form.engineNo, this.locationCode)
+        }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
+          });
+        }
+      }
+    },
+
+
     getStationConf() {
       getIp().then(response => {
         let queryParams = {
@@ -192,6 +205,7 @@
       this.resetForm("form");
     },
     EngineNohandleChange(){
+      console.log('鏉$爜锛�',this.form.engineNo)
       if(this.form.engineNo !== null && this.form.engineNo !== undefined){
         //let OrderSchedulingParam = {engineNo: null}
         setSNCode(this.form.engineNo,this.locationCode)
@@ -242,12 +256,8 @@
       }
     },
 
-    parseQRCode(code) {
-      this.form.engineNo = code;
-    },
   },
   }
-
 
 </script>
 <style scoped>
diff --git a/package-lock.json b/package-lock.json
index a52acb9..f44e3c1 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,5 +1,5 @@
 {
-  "name": "Jcdm-Mes",
+  "name": "Jcdm041-MesCVT",
   "lockfileVersion": 2,
   "requires": true,
   "packages": {}

--
Gitblit v1.9.3