From 8cfe20288690f2ba46c804f41f39e8aa48c2dea0 Mon Sep 17 00:00:00 2001
From: admin <15939171744@163.com>
Date: 星期六, 15 六月 2024 09:08:30 +0800
Subject: [PATCH] 上传逻辑大版本更新

---
 jcdm-ui/src/views/main/kb/stationTerminal/index.vue |  306 ++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 230 insertions(+), 76 deletions(-)

diff --git a/jcdm-ui/src/views/main/kb/stationTerminal/index.vue b/jcdm-ui/src/views/main/kb/stationTerminal/index.vue
index 2ddddc1..ab5af44 100644
--- a/jcdm-ui/src/views/main/kb/stationTerminal/index.vue
+++ b/jcdm-ui/src/views/main/kb/stationTerminal/index.vue
@@ -85,19 +85,21 @@
            </el-col>
 
          </el-row>
-<!--         <el-row style="margin-top: 20px">-->
-<!--           <el-col :span="12">-->
-<!--             <el-input v-model="serialPortContent" style="width: 150px;" placeholder="璇疯緭鍏ュ唴瀹�"></el-input>-->
-
-<!--           </el-col>-->
-<!--           <el-col :span="12">-->
-<!--             <el-button @click="serialPortMethod" type="primary">涓插彛鑾峰彇鏁版嵁</el-button>-->
-
-<!--           </el-col>-->
-<!--         </el-row>-->
-         <el-row style="margin-top: 20px">
-             <el-button @click="Release" type="primary">鏀捐</el-button>
+         <el-row v-show="showInput" style="margin-top: 20px">
+           <el-col></el-col>
+             <span style="width: 130px;" class="head-font">棰勮鎬绘垚鍙� : {{headContent.yzSfcCode}}</span>
          </el-row>
+<!--         <el-row v-show="showInput" style="margin-top: 20px">-->
+<!--           <el-button @click="bindYzSfc" type="primary">缁戝畾</el-button>-->
+<!--         </el-row>-->
+
+         <el-row v-show="onLineBinDing" style="margin-top: 20px">
+           <el-col></el-col>
+           <span style="width: 130px;" class="head-font">灏忚溅鐮� : {{headContent.cardCode}}</span>
+         </el-row>
+<!--         <el-row v-show="onLineBinDing" style="margin-top: 20px">-->
+<!--           <el-button @click="bindcardCode" type="primary">缁戝畾</el-button>-->
+<!--         </el-row>-->
        </el-card>
 
      </el-col>
@@ -106,17 +108,23 @@
          <el-tab-pane name="first">
            <span slot="label"> <a class="el-icon-date"></a>棣栭〉</span>
            <el-col :span="24">
-             <el-table :cell-style="rowStyle" :data="formulaChildList">
-               <el-table-column label="鎺掑簭" width="60" align="center" type="index">
+             <el-table height="500" :cell-style="rowStyle" :data="formulaChildList">
+<!--               <el-table-column label="鎺掑簭" width="60" align="center" type="index">-->
+<!--               </el-table-column>-->
+               <el-table-column label="鎷х揣姝ュ彿" align="center" prop="stepSort">
                </el-table-column>
-               <el-table-column label="鎿嶄綔鍐呭" :show-overflow-tooltip='true' align="center" prop="operationSteps">
+<!--               <el-table-column label="鎿嶄綔鍐呭" :show-overflow-tooltip='true' align="center" prop="operationSteps">-->
+               <el-table-column label="鎿嶄綔鍐呭" align="center" prop="operationSteps">
                </el-table-column>
                <el-table-column label="浜у搧缂栧彿" align="center" prop="productCode">
+               </el-table-column>
+               <el-table-column label="鐗╂枡缂栫爜" align="center" prop="materialCode">
                </el-table-column>
                <el-table-column label="閲囬泦鍊�" align="center" prop="collectData">
                </el-table-column>
                <el-table-column label="缁撴灉" align="center" prop="results">
                </el-table-column>
+
              </el-table>
            </el-col>
 <!--           <el-col :span="14">-->
@@ -293,7 +301,10 @@
 import {listWorkReport} from "@/api/main/om/workReport/workReport";
 import {listStationConf,getIpv4} from "@/api/main/sc/stationConf";
 import {
+  clearWorkpieceRelease,
+  fistSetpNumber,
   listFormulaChild,
+  noPageListFormulaChild,
   releaseCheck,
   updateResults,
   updateTighteningFormula,
@@ -301,19 +312,31 @@
 } from "@/api/main/bs/formulaChild/formulaChild";
 import MySerialPort from "@/utils/MySerialPort";
 import USBDevice from "@/utils/usb.json";
-import {listProductionOrde} from "@/api/main/om/productionOrde/productionOrde";
+import {
+  bindYzSfcFlag,
+  checkCarCode, checkYzSfcCode,
+  findBytrolleyYardGetOne,
+  listProductionOrde,
+  receivingWorkOrders,
+  trolleyYardBinDing
+} from "@/api/main/om/productionOrde/productionOrde";
 import {addPassingStationCollection} from "@/api/main/da/passingStationCollection/passingStationCollection";
 import {
   addBasicParameters,
   addParamCollection,
   addTighteningParameters,
-  saveCampaignTimeParameters
+  saveCampaignTimeParameters,
+  replaceAssemblyCode, checkRecordDataDone,
 } from "@/api/main/da/paramCollection/paramCollection";
 
 export default {
   name: "stationTerminal",
   data() {
     return {
+      carCode: '',
+      showInput: false,
+      onLineBinDing: false,
+
       serialPortContent: '',
       // 鏌ヨ鍙傛暟
       formulaChildParams: {
@@ -330,6 +353,8 @@
         processesCode: 'OP1010',
         processesName: '璐存爣鏈�-璐寸爜',
         sfcCode: '',
+        yzSfcCode: '',
+        cardCode: '',
       },
       workpieceInformation: {
         workOrderNo: null,
@@ -360,7 +385,7 @@
       },
       content: '',
       activeName: 'first',
-      url: "ws://192.168.10.198:8080/websocket/message/",
+      url: "ws://192.168.2.76:8080/websocket/message/",
       message: "",
       text_content: "",
       ws: null,
@@ -370,7 +395,7 @@
       input: "",
       keepReading: true,
       form1: {
-        baudRate: "9600",
+        baudRate: "115200",
         dataBits: "8",
         stopBits: "1",
         parity: "none",
@@ -389,6 +414,7 @@
 
       passingStationForm: {},
       originalArray: [],
+      yzSfcFlag: 1,
     }
   },
   beforeDestroy() {
@@ -425,8 +451,36 @@
     },
   },
   methods: {
+    bindcardCode(){
+      this.$message('缁戝畾鎴愬姛锛�');
+      let param = {
+        productNum: this.headContent.sfcCode,
+        trolleyYard: this.headContent.cardCode,
+      }
+      trolleyYardBinDing(param).then(response => {
+      });
+
+    },
     serialLink() {
       this.open1 = true
+    },
+    bindYzSfc(){
+      if(this.headContent.sfcCode!==""&&this.headContent.yzSfcCode!==""){
+        let param = {
+          sfcCode: this.headContent.sfcCode,
+          locationCode: this.headContent.processesCode,
+          yzSfcCode: this.headContent.yzSfcCode
+        }
+        const orderParam = {
+          productNum: this.headContent.sfcCode,
+        }
+        replaceAssemblyCode(param).then(response => {
+          this.$message('缁戝畾鎴愬姛锛�');
+          bindYzSfcFlag(orderParam).then(response => {
+            this.yzSfcFlag = 1
+          });
+        });
+      }
     },
     Release(){
       // this.$message('portsList锛�'+this.portsList.length);
@@ -437,38 +491,8 @@
         this.$message('mei杩炴帴浜嗭紒');
 
       }
-
-      // //鍒ゆ柇鏄惁鍙互閲婃斁
-      // let formulaChildParams = {
-      //   productCode: this.workpieceInformation.productCode,
-      //   processesCode: this.headContent.processesCode
-      // }
-      // releaseCheck(formulaChildParams).then(response => {
-      //   if(response.data === 0){
-      //     //鏀瑰彉鐘舵��
-      //     workpieceRelease(formulaChildParams).then(response => {
-      //     });
-      //     this.$message('鏀捐鎴愬姛锛�');
-      //     this.formulaChildList = []
-      //     this.getListFormulaChild()
-      //     // this.resetting()
-      //   }else {
-      //     this.$message('姝ラ鏈畬鎴愪笉璁告斁琛岋紒');
-      //   }
-      // });
     },
     serialPortMethod(value){
-      // let formulaChilds = "";
-      // this.formulaChildList.forEach((formulaChild) => {
-      //   let operationType = formulaChild.operationType;
-      //   let results = formulaChild.results;
-      //   let materialCode = formulaChild.materialCode;
-      //   if(operationType === '2' && value.includes(materialCode) && (results === "" || results === null || results === 'NG')){
-      //     formulaChilds = formulaChild;
-      //     return; // 浣跨敤return浠f浛break
-      //   }
-      // });
-      // console.log(formulaChilds)
       let formulaChildParams = {
         scanBarcode: value,
         sfcBarcode: this.headContent.sfcCode,
@@ -478,6 +502,10 @@
         collectionTime: new Date()
       }
       updateResults(formulaChildParams).then(response => {
+        console.log(response)
+        if(response.msg === "3"){
+          this.cakeLamp.release= 1 //鍏佽鏀捐
+        }
         this.getListFormulaChild()
       });
     },
@@ -495,8 +523,28 @@
       this.formulaChildParams.productCode = this.workpieceInformation.productCode
       this.formulaChildParams.processesCode = this.headContent.processesCode
       console.log(this.formulaChildParams)
-      listFormulaChild(this.formulaChildParams).then(response => {
+      noPageListFormulaChild(this.formulaChildParams).then(response => {
         this.formulaChildList = response.rows;
+        if (this.formulaChildList.length >0){
+          let pos = 0
+          const tempArr = this.formulaChildList.filter(x=> 'OK' === x.results)
+          if (tempArr.length>0){
+            pos = tempArr.length
+            this.$nextTick(() => {
+              let temp33 = document.getElementsByClassName('el-table__row')
+              console.log('temp33',temp33)
+              console.log('len',temp33.item(pos))
+              if (temp33.length > 0){
+                console.log('1111111111111111')
+                let arr = temp33[pos-1]
+                console.log('srr',arr)
+                arr.scrollIntoView({ block: 'center' })
+              }
+            })
+          }
+
+        }
+
       });
     },
     endClear(){
@@ -506,14 +554,28 @@
       this.cakeLamp.release= 0 //鍏佽鏀捐
 
       this.formulaChildList = []
-      this.headContent.sfcCode = null
+      this.workpieceInformation.productCode = null;
+      this.workpieceInformation.workOrderNo = null;
+      this.workpieceInformation.productModel = null;
+      this.workpieceInformation.productName = null;
+      this.headContent.sfcCode = '';
+      this.headContent.yzSfcCode = '';
+      this.headContent.cardCode = '';
     },
     changeMenu(tab, event) {
       console.log(tab, event);
     },
     clearClick(){
-      this.$message('杩欐槸涓�鏉℃竻闄ゆ秷鎭彁绀�');
-      this.headContent.sfcCode = null
+      const param = {
+        workOrderNo: this.workpieceInformation.workOrderNo,
+        productCode: this.workpieceInformation.productCode,
+        locationCode: this.headContent.processesCode,
+        productBarcode: this.headContent.sfcCode,
+      }
+      this.endClear()
+      clearWorkpieceRelease(param).then(response => {});
+      this.headContent.sfcCode = ''
+      this.$message('娓呮鎴愬姛锛�');
     },
     scanCompleted(){
       this.$message('鎵爜瀹屾垚'+this.content);
@@ -534,12 +596,16 @@
         this.workpieceInformation.productCode = rowsData.productCode;
         this.workpieceInformation.productModel = rowsData.productModel;
         this.workpieceInformation.productName = rowsData.productName;
-        this.timer = setInterval(() => {
-          this.workpieceInformation.beat++;
-        }, 1000);
+        // this.timer = setInterval(() => {
+        //   this.workpieceInformation.beat++;
+        // }, 1000);
       });
       this.getListFormulaChild()
       this.addOverStationCollection()
+    },
+
+    addBaseData(){
+      addBasicParameters(this.passingStationForm).then(response => {});
     },
 
     /** 鍏ョ珯澧炲姞杩囩珯閲囬泦璁板綍 **/
@@ -555,7 +621,7 @@
         inboundTime: new Date()
       }
       addPassingStationCollection(this.passingStationForm).then(response => {});
-      addBasicParameters(this.passingStationForm).then(response => {});
+      // addBasicParameters(this.passingStationForm).then(response => {});
     },
     exit() {
       if (this.ws) {
@@ -584,6 +650,13 @@
         }
         this.headContent.processesName = rows.processesName
         this.headContent.processesCode = rows.processesCode
+        if(this.headContent.processesCode === 'OP240'){
+          this.onLineBinDing = true
+        }
+        if(this.headContent.processesCode === 'OP260'){
+          this.showInput = true
+        }
+
         console.log('璁剧疆宸ヤ綅缂栫爜' + this.headContent.processesCode)
 
       });
@@ -594,11 +667,16 @@
       const self = this;
       this.ws.onopen = function (event) {
         this.$message('websocket杩炴帴鎴愬姛锛�');
+
       };
       this.ws.onmessage = function (event) {
-        const DELAY_TIME = 2000;
         if (event.data === "IN") {
           self.cakeLamp.InPlace = 1;
+          console.log(self.headContent.processesCode);
+          const param = {
+            processesCode: self.headContent.processesCode,
+          }
+          fistSetpNumber(param).then(response => {});
         } else if (event.data === "IN0") {
           self.cakeLamp.InPlace = 0;
         } else if (event.data === "OUT") {
@@ -610,10 +688,54 @@
             locationCode: self.headContent.processesCode,
             productBarcode: self.headContent.sfcCode,
           }
-          saveCampaignTimeParameters(param).then(response => {});
-          self.cakeLamp.release = 1;
-          self.endClear()
 
+          const orderParam = {
+            productNum: self.headContent.sfcCode,
+          }
+
+          if(self.headContent.sfcCode=== ''||self.headContent.sfcCode=== null){
+            self.$message('鎬绘垚鐮佷负绌猴紝璇锋鏌ワ紒')
+            return
+          }
+
+          checkCarCode(orderParam).then(response => {
+            console.log(response.data)
+            if(response.data === 1){
+              if(self.headContent.processesCode === "OP260"){
+                checkYzSfcCode(orderParam).then(response => {
+                  if(response.data === 1){
+                    saveCampaignTimeParameters(param).then(response => {
+                      checkRecordDataDone(param).then(response => {
+                        if(response.msg === "21"){
+                          self.cakeLamp.release = 1;
+                          self.endClear()
+                          workpieceRelease(param).then(response => {});
+                        }else {
+                          self.$message('鏈仛瀹屽伐搴忕姝㈡斁琛�');
+                        }
+                      });
+                    });
+                  }else {
+                    self.$message('璇峰厛缁戝畾棰勮鎬绘垚');
+                  }
+                });
+              }else {
+                saveCampaignTimeParameters(param).then(response => {
+                  checkRecordDataDone(param).then(response => {
+                    if(response.msg === "21"){
+                      self.cakeLamp.release = 1;
+                      self.endClear()
+                      workpieceRelease(param).then(response => {});
+                    }else {
+                      self.$message('鏈仛瀹屽伐搴忕姝㈡斁琛�');
+                    }
+                  });
+                });
+              }
+            }else {
+              self.$message('鏈粦瀹氬皬杞︾爜绂佹鏀捐');
+            }
+          });
         } else if (event.data.includes("[")) {
           let formulaChilds = "";
           self.formulaChildList.sort((a, b) => a.stepSort - b.stepSort);
@@ -635,12 +757,18 @@
             locationCode: self.headContent.processesCode,
             productBarcode: self.headContent.sfcCode,
           }
-          addTighteningParameters(param).then(response => {});
-          updateTighteningFormula(param).then(response => {
-            self.getListFormulaChild()
-          }).catch(error =>{
-            self.getListFormulaChild()
-          });
+          if(formulaChilds.paramCode === null||formulaChilds.paramCode ===''){
+            self.$message('鏈壘鍒板弬鏁扮爜锛岃妫�鏌ュ弬鏁扮爜鏄惁姝g‘');
+            return;
+          }
+          if(self.headContent.sfcCode!==null||self.headContent.sfcCode!==''){
+            addTighteningParameters(param).then(response => {});
+            updateTighteningFormula(param).then(response => {
+              self.getListFormulaChild()
+            }).catch(error =>{
+              self.getListFormulaChild()
+            });
+          }
         }
       };
     },
@@ -653,23 +781,49 @@
       else {
         const scanValue = this.myserialport.hex2atostr(value).replace(/[\r\n]/g, '');
         console.log("涓插彛鏀跺埌鏁版嵁-------------------"+scanValue)
-        // if(this.cakeLamp.InPlace=== 1){
-          if(this.headContent.sfcCode !== ''){
-            this.$message('鎵弿鐗╂枡缂栫爜'+scanValue);
+
+        if(this.headContent.sfcCode !== ''){
+          if(scanValue.includes("P9900173252")){
+            this.headContent.yzSfcCode = scanValue
+            this.bindYzSfc();
+          }else if(scanValue.includes("0RSP1TE")){
+            this.headContent.cardCode = scanValue
+            this.bindcardCode();
+          }else {
+            this.$message('宸ヤ綅缁堢鎵弿鐗╂枡缂栫爜'+scanValue);
             console.log(scanValue)
             this.serialPortMethod(scanValue)
-          }else {
-            this.$message('鎵爜璇嗗埆浜у搧搴忓垪鍙�'+scanValue);
+          }
+        } else {
+          if(this.headContent.processesCode === 'OP240'){
             this.headContent.sfcCode = scanValue;
             this.queryParams.productNum = scanValue;
             this.getList()
-            // this.getListFormulaChild()
             this.cakeLamp.scanFinish = 1
             this.cakeLamp.startWork = 1
+          }else {
+            let param = {
+              trolleyYard: scanValue
+            }
+            findBytrolleyYardGetOne(param).then(response => {
+              if(response.msg !== '2'){
+                this.headContent.sfcCode = response.msg;
+                this.queryParams.productNum = response.msg;
+                this.$message('鎵爜璇嗗埆浜у搧搴忓垪鍙�'+scanValue);
+                // this.headContent.sfcCode = scanValue;
+                // this.queryParams.productNum = scanValue;
+                this.getList()
+                this.cakeLamp.scanFinish = 1
+                this.cakeLamp.startWork = 1
+              }else {
+                this.$message('娌℃湁搴忓垪鍙�'+scanValue);
+                return
+              }
+            });
           }
-        // }else {
-        //   this.$message('宸ヤ欢鏈埌浣嶇姝㈡壂鐮侊紒');
-        // }
+
+        }
+
       }
     },
     clearHistory() {

--
Gitblit v1.9.3