懒羊羊
2024-03-21 32483a44c0ee1c4d605730ef6f894d43f76b3048
jcdm-ui/src/views/main/kb/stationTerminal/index.vue
@@ -107,7 +107,7 @@
           <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" prop="stepSort">
               <el-table-column label="排序" width="60" align="center" type="index">
               </el-table-column>
               <el-table-column label="操作内容" :show-overflow-tooltip='true' align="center" prop="operationSteps">
               </el-table-column>
@@ -306,7 +306,8 @@
import {
  addBasicParameters,
  addParamCollection,
  addTighteningParameters
  addTighteningParameters,
  saveCampaignTimeParameters
} from "@/api/main/da/paramCollection/paramCollection";
export default {
@@ -359,7 +360,7 @@
      },
      content: '',
      activeName: 'first',
      url: "ws://192.168.11.76:8080/websocket/message/",
      url: "ws://192.168.10.21:8080/websocket/message/",
      message: "",
      text_content: "",
      ws: null,
@@ -490,11 +491,11 @@
    },
    /** 查询配方配置子信息列表 */
    getListFormulaChild() {
      // this.formulaChildList = []
      this.formulaChildParams.productCode = this.workpieceInformation.productCode
      this.formulaChildParams.processesCode = this.headContent.processesCode
      listFormulaChild(this.formulaChildParams).then(response => {
        this.formulaChildList = response.rows;
        console.log(this.formulaChildList)
      });
    },
@@ -541,52 +542,12 @@
        locationCode: this.headContent.processesCode,
        model: this.workpieceInformation.productModel,
        productBarcode: this.headContent.sfcCode,
        sfcCode: this.headContent.sfcCode,
        inboundTime: new Date()
      }
      addPassingStationCollection(this.passingStationForm).then(response => {});
      addBasicParameters(this.passingStationForm).then(response => {});
    },
    allowRelease(){
      clearInterval(this.timer);
      this.$message('保存节拍为'+this.workpieceInformation.beat+'秒');
    },
    /** 查询工位终端配置列表 */
    // async getStationConfList() {
    //   await getIpv4().then(response => {
    //     this.StationConfQueryParams.ipAddress = response.msg
    //     console.log('查询到本工位IP为'+this.StationConfQueryParams.ipAddress)
    //   });
    //   listStationConf(this.StationConfQueryParams).then(response => {
    //     let rows = response.rows[0]
    //     if(response.rows.length===0){
    //       this.$message('该工位没有配置IP,请联系管理员配置IP');
    //       return
    //     }
    //     this.headContent.processesName = rows.processesName
    //     this.headContent.processesCode = rows.processesCode
    //     console.log('设置工位编码'+this.headContent.processesCode)
    //
    //   });
    // },
    // connectWebsocket() {
    //   console.log('websocket连接工位为'+this.headContent.processesCode)
    //   const wsuri = this.url + this.headContent.processesCode;
    //   this.ws = new WebSocket(wsuri);
    //   const self = this;
    //   this.ws.onopen = function (event) {
    //     // self.text_content = self.text_content + "已经打开连接!" + "\n";
    //     this.$message('websocket连接成功!');
    //   };
    //   this.ws.onmessage = function (event) {
    //     self.text_content = event.data + "\n";
    //     console.log(event.data)
    //     if(event.data === "IN"){
    //       self.cakeLamp.InPlace = "1"
    //     }else if(event.data === "OUT"){
    //       self.cakeLamp.outRsSign = "1"
    //     }
    //   };
    // },
    exit() {
      if (this.ws) {
        this.ws.close();
@@ -631,32 +592,28 @@
          self.cakeLamp.InPlace = 0;
        } else if (event.data === "OUT") {
          self.cakeLamp.release = 1;
          setTimeout(() => {
            self.cakeLamp.InPlace = 0;
            self.cakeLamp.release = 0;
            self.cakeLamp.startWork = 0;
            self.cakeLamp.scanFinish = 0;
            self.Release();
          }, DELAY_TIME);
        } else if (event.data === "TIGHTEN") {
          this.formulaChildList = [];
          self.getListFormulaChild();
        } else if (event.data === "END") {
          const param = {
            workOrderNo: self.workpieceInformation.workOrderNo,
            productCode: self.workpieceInformation.productCode,
            locationCode: self.headContent.processesCode,
            productBarcode: self.headContent.sfcCode,
          }
          saveCampaignTimeParameters(param).then(response => {});
        } else if (event.data.includes("[")) {
          // console.log('event.data'+event.data)
          // let eventArr = event.data.split("[")[1].split("]")[0].split(", ");
          // let eventArr1 = event.data.replace('[', '').replace(']', '').trim().split(', ');
          // console.log(eventArr1)
          // console.log(Array.isArray(eventArr))
          let formulaChilds = "";
          self.formulaChildList.forEach((formulaChild) => {
            let operationType = formulaChild.operationType;
          self.formulaChildList.sort((a, b) => a.stepSort - b.stepSort);
          self.formulaChildList
            .filter((formulaChild) => formulaChild.operationType === '1');
          for (let i = 0; i < self.formulaChildList.length; i++) {
            let formulaChild = self.formulaChildList[i];
            let results = formulaChild.results;
            if(operationType === '1' && (results === '' || results === null || results === 'NG')){
            if (results === '' || results === null || results === 'NG') {
              formulaChilds = formulaChild;
              return; // 使用return代替break
              break;
            }
            // 执行其他操作
          });
          }
          const param = {
            tightenTheArray: event.data,
            paramCode: formulaChilds.paramCode,
@@ -667,8 +624,10 @@
          }
          addTighteningParameters(param).then(response => {});
          updateTighteningFormula(param).then(response => {
            self.getListFormulaChild()
          }).catch(error =>{
            self.getListFormulaChild()
          });
          self.getListFormulaChild()
        }
      };
    },
@@ -678,19 +637,22 @@
      if (this.form1.isShowHistory) this.form1.desc = this.readLi().join("");
      else {
        const scanValue = this.myserialport.hex2atostr(value).replace(/[\r\n]/g, '');
        this.$message('扫码完成'+this.content);
        if(this.headContent.sfcCode !== ''){
          console.log(scanValue)
          this.serialPortMethod(scanValue)
        }else {
          this.headContent.sfcCode = scanValue;
          this.queryParams.productNum = scanValue;
          this.getList()
          // this.getListFormulaChild()
          this.cakeLamp.scanFinish = 1
          this.cakeLamp.startWork = 1
        }
        console.log("串口收到数据-------------------"+scanValue)
        // if(this.cakeLamp.InPlace=== 1){
          if(this.headContent.sfcCode !== ''){
            console.log(scanValue)
            this.serialPortMethod(scanValue)
          }else {
            this.headContent.sfcCode = scanValue;
            this.queryParams.productNum = scanValue;
            this.getList()
            // this.getListFormulaChild()
            this.cakeLamp.scanFinish = 1
            this.cakeLamp.startWork = 1
          }
        // }else {
        //   this.$message('工件未到位禁止扫码!');
        // }
      }
    },
    clearHistory() {
@@ -749,6 +711,7 @@
          this.myserialport.state.parity = this.form1.parity;
          this.myserialport.state.flowControl = this.form1.flowControl;
          await this.myserialport.openPort(this.form1.port, true, this.callBack);
          console.log(this.form1.port)
        } catch (error) {
          this.$message.error("串口连接失败!请检查串口是否已被占用");
        }