wuyouming666
2023-12-12 fb32fb5bb4be336171dca41e62d3d6c6c5803f34
CanadaMes-ui/src/views/Electrical/ServoManualone.vue
@@ -11,34 +11,41 @@
        }}</router-link> -->
        <router-link to="/Electrical/Sign" tag="el-button" type="text" active-class="blue-button">{{ $t('Sign')
        }}</router-link>
         <router-link to="/Electrical/Servomanual" tag="el-button" type="text" active-class="blue-button">{{ $t('Servo Manual')
         <router-link to="/Electrical/Servomanual" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter')
        }}</router-link>
      </el-breadcrumb>
      <el-breadcrumb separator-class="el-icon-arrow-right" class="el-breadcrumb">
        <router-link to="/Electrical/Servomanualone" tag="el-button" type="text" active-class="blue-button">{{ $t('Servomanualone')
      }}</router-link>
        <router-link to="/Electrical/Parameter1" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter1')
        }}</router-link>
           <router-link to="/Electrical/Parameter2" tag="el-button" type="text"  @click="closeSocket()" active-class="blue-button">{{ $t('Parameter2')
        }}</router-link>
          <router-link to="/Electrical/Positioning1" tag="el-button" type="text" active-class="blue-button">{{ $t('Positioning1')
          }}</router-link>
            <router-link to="/Electrical/Positioning2" tag="el-button" type="text" active-class="blue-button">{{ $t('Positioning2')
          }}</router-link>
           <router-link to="/Electrical/ManualonePosition" tag="el-button" type="text" active-class="blue-button">{{
        $t('ManualonePosition')
      }}</router-link>
      <router-link to="/Electrical/ManualonePosition2" tag="el-button" type="text" active-class="blue-button">{{
        $t('ManualonePosition2')
      }}</router-link>
      <router-link to="/Electrical/AutomaticParameterSetting" tag="el-button" type="text" active-class="blue-button">{{
        $t('AutomaticParameterSetting')
      <router-link to="/Electrical/Parameter2" tag="el-button" type="text" active-class="blue-button">{{ $t('Automatic State')
      }}</router-link>
      <router-link to="/Electrical/ManualJog" tag="el-button" type="text" active-class="blue-button">{{
        $t('ManualJog')
      }}</router-link>
       <router-link to="/Electrical/ManualonePosition" tag="el-button" type="text" active-class="blue-button">{{
        $t('ManualonePosition')
      }}</router-link>
<router-link to="/Electrical/Servomanualone" tag="el-button" type="text" active-class="blue-button">{{
        $t('Servomanualone')
      }}</router-link>
      <!-- <router-link to="/Electrical/Parameter1" tag="el-button" type="text" active-class="blue-button">{{ $t('Parameter1')
      }}</router-link> -->
      <router-link to="/Electrical/Positioning1" tag="el-button" type="text" active-class="blue-button">{{
        $t('Address parameter settings')
      }}</router-link>
      <!-- <router-link to="/Electrical/Positioning2" tag="el-button" type="text" active-class="blue-button">{{
        $t('Positioning2')
      }}</router-link> -->
      <!-- <router-link to="/Electrical/ManualonePosition2" tag="el-button" type="text" active-class="blue-button">{{
        $t('ManualonePosition2')
      }}</router-link> -->
      <router-link to="/Electrical/AutomaticParameterSetting" tag="el-button" type="text" active-class="blue-button">{{
        $t('Speed parameter settings')
      }}</router-link>
    </el-breadcrumb>
    <el-row :gutter="26">
@@ -49,15 +56,18 @@
          <div class="item-container">
            <div class="item-row">
              <span class="name" style='width:230px;'>{{ item.name }}</span>
              <el-input v-if="item.type === '0'" v-model="item.value"   class='input-box' :class="{ 'special-class': groupIndex === 0,'special-class2': groupIndex === 1 }" v-show="groupIndex !== 0 && groupIndex !== 1"  ></el-input>
              <el-input v-if="item.type === '0' && groupIndex === 0" v-model="item.value"  @keyup.enter.native="zuhe1"  class='input-box' :class="{ 'special-class': groupIndex === 0,'special-class2': groupIndex === 1 }" v-show="groupIndex !== 0 && groupIndex !== 1"  ></el-input>
              <el-input v-else-if="item.type === '0' && groupIndex === 1" v-model="item.value"  @keyup.enter.native="zuhe2"  class='input-box' :class="{ 'special-class': groupIndex === 0,'special-class2': groupIndex === 1 }" v-show="groupIndex !== 0 && groupIndex !== 1"  ></el-input>
              <el-input v-else-if="item.type === '0' " v-model="item.value"   class='input-box' :class="{ 'special-class': groupIndex === 0,'special-class2': groupIndex === 1 }" v-show="groupIndex !== 0 && groupIndex !== 1"  ></el-input>
            </div>
          </div>
        </el-col>
      </el-row>
      <div class="button-row" style="display: flex; justify-content: space-between;">
        <div v-for="(item, itemIndex) in dataGroup" :key="itemIndex">
          <el-button v-if="item.button && language === 'en-US' " :name="item.button.name" v-model="item.button.value" :class="{'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1,'error-button2': item.button.name === 'NotZero' && item.button.value === 0,'fuwei': item.button.name === 'Reset' && item.button.value === 1,'huiling': item.button.name === 'Home' && item.button.value === 1,'qidong': item.button.name === 'A01 Semi-Auto' && item.button.value === 1,'qidong2': item.button.name === 'A02 Semi-Auto' && item.button.value === 1,'qidong3': item.button.name === 'A01 Semi-Auto Start' && item.button.value === 1,'qidong4': item.button.name === 'A02 Semi-Auto Start' && item.button.value === 1,'qidong5': item.button.name === 'A02 Semi-Auto Start' && item.button.value === 1}" @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{ item.button.name }}</el-button>
          <el-button v-if="item.button && language === 'zh-CN' " :name="item.button.name" v-model="item.button.value" :class="{'action-button': true, 'error-button': item.button.name === '故障' && item.button.value === 1,'error-button2': item.button.name === '未回零' && item.button.value === 0,'fuwei': item.button.name === '复位' && item.button.value === 1,'huiling': item.button.name === '回零' && item.button.value === 1,'qidong': item.button.name === 'A01半自动' && item.button.value === 1,'qidong2': item.button.name === 'A02半自动' && item.button.value === 1,'qidong3': item.button.name === 'A01半自动启动' && item.button.value === 1,'qidong4': item.button.name === 'A02半自动启动' && item.button.value === 1,'qidong5': item.button.name === 'A02半自动' && item.button.value === 1  }" @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{ item.button.name }}</el-button>
          <el-button v-if="item.button && language === 'en-US' " :name="item.button.name" v-model="item.button.value" :class="{'action-button': true, 'error-button': item.button.name === 'Fault' && item.button.value === 1,'error-button2': item.button.name === 'NotZero' && item.button.value === 0,'error-button3': item.button.name === 'NotZero' && item.button.value === 1,'fuwei': item.button.name === 'Reset' && item.button.value === 1,'huiling': item.button.name === 'Home' && item.button.value === 1,'qidong': item.button.name === 'A01 Semi-Auto' && item.button.value === 1,'qidong2': item.button.name === 'A02 Semi-Auto' && item.button.value === 1,'qidong3': item.button.name === 'A01 Semi-Auto Start' && item.button.value === 1,'qidong4': item.button.name === 'A02 Semi-Auto Start' && item.button.value === 1,'qidong5': item.button.name === 'A02 Semi-Auto' && item.button.value === 1,'jiting': item.button.name === 'Abort/ResumeTasks' && item.button.value === 1,'yihuiling': item.button.name === 'Zero' && item.button.value === 1}" @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{ item.button.name }}</el-button>
          <el-button v-if="item.button && language === 'zh-CN' " :name="item.button.name" v-model="item.button.value" :class="{'action-button': true, 'error-button': item.button.name === '故障' && item.button.value === 1,'error-button3': item.button.name === '未回零' && item.button.value === 1,'error-button2': item.button.name === '未回零' && item.button.value === 0,'fuwei': item.button.name === '复位' && item.button.value === 1,'huiling': item.button.name === '回零' && item.button.value === 1,'qidong': item.button.name === 'A01半自动' && item.button.value === 1,'qidong2': item.button.name === 'A02半自动' && item.button.value === 1,'qidong3': item.button.name === 'A01半自动启动' && item.button.value === 1,'qidong4': item.button.name === 'A02半自动启动' && item.button.value === 1,'qidong5': item.button.name === 'A02半自动' && item.button.value === 1,'jiting': item.button.name === '急停后中止/继续选择' && item.button.value === 1,'yihuiling': item.button.name === '已回零' && item.button.value === 1  }" @click="updateButtonValue(dataGroup, itemIndex); submitDataToBackend(item.button.name);">{{ item.button.name }}</el-button>
        </div>
      </div>
    </el-card>
@@ -120,11 +130,9 @@
    this.$set(dataGroup[itemIndex].button, 'value', 1);
  }
},
submitDataToBackend(currentButtonName) {
zuhe1(){
//A01半自动启动提交
  if (currentButtonName === 'A01半自动启动' ||currentButtonName === 'A01 Semi-Auto Start') {
    const data = [];
  const data = [];
for (let i = 0; i < 1; i++) {
  const inputData = this.jsonData[i].filter(item => item.type === '0' && item.read !== 9999).map(item => {
@@ -150,7 +158,69 @@
  data.push(values);
 
}
data.push([],[], [],);
data.push([], [],[]);
const jsonObject = { data };
// 提交数据到后端
const jsonString = JSON.stringify(jsonObject);
console.log('所有Type为0的value:', jsonString);
socket?.send(jsonString);
},
zuhe2(){
  const data2 = [];
for (let i = 1; i < 2; i++) {
  const inputData = this.jsonData[i].filter(item => item.type === '0' && item.read !== 8888).map(item => {
    return { value: item.value };
  });
  const values2 = inputData.map(item => item.value);
  data2.push(values2);
}
data2.unshift([]);
data2.push([], [],[]);
for (let i = 1; i < 2; i++) {
  const inputData = this.jsonData[i].filter(item => item.type === '0' && item.read == 8888).map(item => {
    return { value: item.value };
  });
  const values2 = inputData.map(item => item.value);
  data2.push(values2);
  data2.push( [],[], []);
}
const jsonObject = { data:data2 };
// 提交数据到后端
const jsonString = JSON.stringify(jsonObject);
console.log('所有Type为0的value:', jsonString);
socket?.send(jsonString);
},
submitDataToBackend(currentButtonName) {
//A01半自动启动提交
  if (currentButtonName === 'A01半自动启动' ||currentButtonName === 'A01 Semi-Auto Start') {
    const data = [];
  const values = [this.jsonData[0][10].button.value]
  data.push(values);
data.unshift([], [],[],[], [],[],[], []);
const jsonObject = { data };
@@ -166,31 +236,15 @@
  if (currentButtonName === 'A02半自动启动' ||currentButtonName === 'A02 Semi-Auto Start') {
    const data2 = [];
for (let i = 1; i < 2; i++) {
  const inputData = this.jsonData[i].filter(item => item.type === '0' && item.read !== 8888).map(item => {
    return { value: item.value };
  });
  const values2 = inputData.map(item => item.value);
    const values2 = [this.jsonData[1][8].button.value]
  data2.push(values2);
}
data2.unshift([]);
data2.push([], []);
  data2.unshift([],[], [],[],[], [],[],[], []);
for (let i = 1; i < 2; i++) {
  const inputData = this.jsonData[i].filter(item => item.type === '0' && item.read == 8888).map(item => {
    return { value: item.value };
  });
  const values2 = inputData.map(item => item.value);
  data2.push(values2);
  data2.push([], [],[], []);
}
const jsonObject = { data:data2 };
@@ -259,6 +313,8 @@
  //   window.location.reload(),2000
  // )
}
//A01半自动提交
@@ -434,7 +490,7 @@
  }
  let obj = JSON.parse(msg.data);
  // console.log(obj)
   console.log(obj)
const weihuiling=obj.weihuiling;
  const jsonData2 = this.jsonData;
@@ -444,29 +500,10 @@
  if (obj.zuhe1 && inputBox && Array.from(inputBox).every(box => !box.contains(target))) {
    
    //启动按钮
 
    jsonData2[0][9].button.value = obj.qidong[0][0];  // 第一个子数组中第一个 type=66 的 button
jsonData2[0][10].button.value = obj.qidong[0][1]; // 第一个子数组中第二个 type=66 的 button
jsonData2[1][7].button.value = obj.qidong[0][2];  // 第二个子数组中第一个 type=66 的 button
jsonData2[1][8].button.value = obj.qidong[0][3];
// 输出更新后的 jsonData2
    
    // 执行更新逻辑
    for (let i = 0; i < 6; i++) {
@@ -477,8 +514,44 @@
  });
}
//进片id
jsonData2.forEach((item) => {
  item.forEach((subItem) => {
    if (subItem.read === 9999) {
      subItem.value = obj.jinpianid[0];
    }
  });
});
//取片id
jsonData2.forEach((item) => {
  item.forEach((subItem) => {
    if (subItem.read === 8888) {
      subItem.value = obj.qupianid[0];
    }
  });
});
//故障更新
  }
}, 50);
  document.addEventListener('mouseover', handleMouseMove);
  if (obj.qidong){
  jsonData2[0][9].button.value = obj.qidong[0][0];  // 第一个子数组中第一个 type=66 的 button
jsonData2[0][10].button.value = obj.qidong[0][1]; // 第一个子数组中第二个 type=66 的 button
jsonData2[1][7].button.value = obj.qidong[0][2];  // 第二个子数组中第一个 type=66 的 button
jsonData2[1][8].button.value = obj.qidong[0][3];
  //故障更新
for (let i = 0; i < jsonData2.length; i++) {
  let arr = jsonData2[i];
@@ -508,73 +581,59 @@
}
//未回零更新
for (let i = 3; i < jsonData2.length; i++) {
  let arr2 = jsonData2[i];
  for (let j = 3; j < arr2.length; j++) {
    let obj3 = arr2[j];
    if(obj3.button){
      if (obj3.button && (obj3.button.name === "未回零" || obj3.button.name === "NotZero" )) {
      obj3.button.value = weihuiling[0][i];
      //  console.log(obj3.button.value)
    }
jsonData2[2][3].button.value = weihuiling[0][0];
jsonData2[3][3].button.value = weihuiling[0][1];
jsonData2[4][4].button.value = weihuiling[0][2];
jsonData2[5][4].button.value = weihuiling[0][3];
    }
  }
// if(jsonData2[2][3].button.value===1){
//   jsonData2[2][3].button.name.replace("未回零","回零") ;
// }
// console.log(jsonData2[5][4].button.value)
if(jsonData2[2][3].button.value===1 &&  (jsonData2[2][3].button.name==="NotZero" ||jsonData2[2][3].button.name==="未回零")){
  jsonData2[2][3].button.name=jsonData2[2][3].button.name.replace("未回零","已回零") ;
  jsonData2[2][3].button.name=jsonData2[2][3].button.name.replace("NotZero","Zero") ;
}
// console.log(jsonData2)
//进片id
jsonData2.forEach((item) => {
  item.forEach((subItem) => {
    if (subItem.read === 9999) {
      subItem.value = obj.jinpianid[0];
    }
  });
});
//取片id
jsonData2.forEach((item) => {
  item.forEach((subItem) => {
    if (subItem.read === 8888) {
      subItem.value = obj.qupianid[0];
    }
  });
});
//急停
for (let i = 0; i < jsonData2.length; i++) {
  let arr2 = jsonData2[i];
  for (let j = 0; j < arr2.length; j++) {
    let obj3 = arr2[j];
    if(obj3.button){
      if (obj3.button && (obj3.button.name === "急停后中止/继续选择" || obj3.button.name === "Abort/ResumeTasks" )) {
      obj3.button.value = obj.resumeTasks[0][i];
     console.log(obj3.button.value)
    }
    }
  }
if(jsonData2[3][3].button.value===1 &&  (jsonData2[3][3].button.name==="NotZero" ||jsonData2[3][3].button.name==="未回零")){
  jsonData2[3][3].button.name=jsonData2[3][3].button.name.replace("未回零","已回零") ;
  jsonData2[3][3].button.name=jsonData2[3][3].button.name.replace("NotZero","Zero") ;
}
if(jsonData2[4][4].button.value===1 &&  (jsonData2[4][4].button.name==="NotZero" ||jsonData2[4][4].button.name==="未回零")){
  jsonData2[4][4].button.name=jsonData2[4][4].button.name.replace("未回零","已回零") ;
  jsonData2[4][4].button.name=jsonData2[4][4].button.name.replace("NotZero","Zero") ;
}
if(jsonData2[5][4].button.value===1 &&  (jsonData2[5][4].button.name==="NotZero" ||jsonData2[5][4].button.name==="未回零")){
  jsonData2[5][4].button.name=jsonData2[5][4].button.name.replace("未回零","已回零") ;
  jsonData2[5][4].button.name=jsonData2[5][4].button.name.replace("NotZero","Zero") ;
}
  }
}, 50);
if(jsonData2[2][3].button.value===0 && (jsonData2[2][3].button.name==="Zero" ||jsonData2[2][3].button.name==="已回零")){
  jsonData2[2][3].button.name=jsonData2[2][3].button.name.replace("已回零","未回零") ;
  jsonData2[2][3].button.name=jsonData2[2][3].button.name.replace("Zero","NotZero") ;
}
if(jsonData2[3][3].button.value===0 && (jsonData2[3][3].button.name==="Zero" ||jsonData2[3][3].button.name==="已回零")){
  jsonData2[3][3].button.name=jsonData2[3][3].button.name.replace("已回零","未回零") ;
  jsonData2[3][3].button.name=jsonData2[3][3].button.name.replace("Zero","NotZero") ;
}
if(jsonData2[4][4].button.value===0 && (jsonData2[4][4].button.name==="Zero" ||jsonData2[4][4].button.name==="已回零")){
  jsonData2[4][4].button.name=jsonData2[4][4].button.name.replace("已回零","未回零") ;
  jsonData2[4][4].button.name=jsonData2[4][4].button.name.replace("Zero","NotZero") ;
}
if(jsonData2[5][4].button.value===0  && (jsonData2[5][4].button.name==="Zero" ||jsonData2[5][4].button.name==="已回零")){
  jsonData2[5][4].button.name=jsonData2[5][4].button.name.replace("已回零","未回零") ;
  jsonData2[5][4].button.name=jsonData2[5][4].button.name.replace("Zero","NotZero") ;
}
  document.addEventListener('mouseover', handleMouseMove);
}
   
};
@@ -687,4 +746,17 @@
.huiling {
  background-color: green;
}
.jiting{
  background-color: green;
}
.error-button3{
  background-color: green;
}
.yihuiling{
  background-color: green;
}
</style>