wuyouming666
2023-12-15 0795daf740782f708968e9fe12f4d034fcd6488d
更新测试后的
12个文件已修改
313 ■■■■ 已修改文件
CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CanadaMes-ui/src/views/Electrical/ManualJog.vue 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CanadaMes-ui/src/views/Electrical/ManualonePosition.vue 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue 41 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CanadaMes-ui/src/views/Electrical/Parameter2.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
CanadaMes-ui/src/views/Electrical/Positioning1.vue 74 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CanadaMes-ui/src/views/Electrical/ServoManualone.vue 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springboot-vue3/src/main/java/com/example/springboot/component/PLCAutomaticParameterSetting.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springboot-vue3/src/main/java/com/example/springboot/component/PLCManualJog.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
springboot-vue3/src/main/java/com/example/springboot/component/S7control.java 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
springboot-vue3/src/main/resources/config.properties 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
CanadaMes-ui/src/views/Electrical/AutomaticParameterSetting.vue
@@ -181,7 +181,19 @@
        };
        // 收到消息
        socket.onmessage = (msg) => {
        let isMouseInInputBox = false; // 标记鼠标是否在输入框内
const inputBox = document.querySelectorAll('.input-box');
inputBox.forEach(box => {
  box.addEventListener('mouseenter', () => {
    isMouseInInputBox = true;
  });
  box.addEventListener('mouseleave', () => {
    isMouseInInputBox = false;
  });
});
socket.onmessage = (msg) => {
  if (!msg.data) {
    return; // 如果收到空数据,则直接返回,不执行后续逻辑
  }
@@ -189,17 +201,7 @@
  let obj = JSON.parse(msg.data);
  const jsonData2 = this.jsonData;
  const handleMouseMove = (event) => {
    if (!event || !event.target) {
      return; // 如果 event 或 event.target 不存在,则直接返回,不执行后续逻辑
    }
    const inputBox = document.querySelectorAll('.input-box');
    const target = event.target;
    const isMouseInInput = Array.from(inputBox).some(box => box.contains(target));
    if (!isMouseInInput) {
      const parms = obj.params;
  const parms = obj.params;
      const fanzhuan = obj.fanzhuan;
      const xiaoche = obj.xiaoche;
      const dache = obj.dache1;
@@ -207,6 +209,9 @@
      const parms2 = obj.params2;
      const fanzhuan2 = obj.fanzhuan2;
      const xiaoche2 = obj.xiaoche2;
  if(parms && !isMouseInInputBox){
      let index = 0;
      for (let i = 0; i < jsonData2.length - 1; i++) {
@@ -234,10 +239,10 @@
      let index2 = 0;
      for (let i = 5; i < jsonData2.length; i++) {
        let arr = jsonData2[i];
        let arr2 = jsonData2[i];
        for (let j = 0; j < arr.length; j++) {
          let obj2 = arr[j];
        for (let j = 0; j < arr2.length; j++) {
          let obj2 = arr2[j];
          if (obj2.type === '0' && Object.prototype.hasOwnProperty.call(obj2, 'value')) {
            if (Array.isArray(parms2) && Array.isArray(parms2[0]) && parms2[0][index2] !== undefined) {
              obj2.value = parms2[0][index2];
@@ -246,6 +251,23 @@
          }
        }
      }
              for (let i = 0; i < jsonData2.length; i++) {
                let arr = jsonData2[i];
                for (let j = 0; j < arr.length; j++) {
                  let obj = arr[j];
                  if (obj.type === '0' && Object.prototype.hasOwnProperty.call(obj, 'value')) {
                    if (Array.isArray(parms) && Array.isArray(parms[0]) && parms[0][index] !== undefined) {
                      obj.value = parms[0][index];
                      index++;
                    }
                  }
                }
              }
      if (Array.isArray(fanzhuan2) && Array.isArray(fanzhuan2[0]) && fanzhuan2[0][0] !== undefined) {
        jsonData2[8][0]['value'] = fanzhuan2[0][0];
      }
@@ -253,11 +275,9 @@
        jsonData2[9][0]['value'] = xiaoche2[0][0];
      }
    }
  };
  setInterval(() => handleMouseMove(event), 1000); // 每隔 1000ms 检测一次鼠标位置
document.addEventListener('mousemove', event => handleMouseMove(event));
};
CanadaMes-ui/src/views/Electrical/ManualJog.vue
@@ -219,7 +219,7 @@
          const jsonData2 = this.jsonData;
          const parms = obj.params;
//  console.log(obj)
// console.log(obj)
//console.log(this.jsonData)
          if(parms){
          // 如果鼠标不在输入框内,更新输入框的值
@@ -232,13 +232,18 @@
            for (let j = 0; j < arr.length; j++) {
              let obj = arr[j];
              obj.button.value = parms[0][j];
              obj.button.value2 =obj.button.value;
              // obj.button.value2 = parms[0][j];
             // obj.button.value2 =obj.button.value;
            }
          }
          jsonData2[1][0].button.value = obj.params[0][26];
          jsonData2[1][1].button.value = obj.params[0][27];
CanadaMes-ui/src/views/Electrical/ManualonePosition.vue
@@ -431,31 +431,31 @@
        };
        // 收到消息
        socket.onmessage = (msg) => {
          if (!msg.data) {
            return; // 如果收到空数据,则直接返回,不执行后续逻辑
          }
        let isMouseInInputBox = false; // 标记鼠标是否在输入框内
const inputBox = document.querySelectorAll('.input-box');
inputBox.forEach(box => {
  box.addEventListener('mouseenter', () => {
    isMouseInInputBox = true;
  });
  box.addEventListener('mouseleave', () => {
    isMouseInInputBox = false;
  });
});
socket.onmessage = (msg) => {
  if (!msg.data) {
    return; // 如果收到空数据,则直接返回,不执行后续逻辑
  }
          let obj = JSON.parse(msg.data);
          const jsonData2 = this.jsonData;
          const weihuiling = obj.weihuiling;
          const handleMouseMove = (event) => {
    if (!event || !event.target) {
      return; // 如果 event 或 event.target 不存在,则直接返回,不执行后续逻辑
    }
    const inputBox = document.querySelectorAll('.input-box');
    const target = event.target;
    // console.log(obj);
    const isMouseInInput = Array.from(inputBox).some(box => box.contains(target));
    if (!isMouseInInput) {
  if(obj.zuhe1){
  if(obj.zuhe1&& !isMouseInInputBox){
// console.log(obj);
  
              // 执行更新逻辑
              for (let i = 0; i < 4; i++) {
@@ -467,14 +467,8 @@
              }
            }
            }
        }
              // console.log(jsonData2);
              setInterval(() => handleMouseMove(event), 1000); // 每隔 1000ms 检测一次鼠标位置
document.addEventListener('mousemove', event => handleMouseMove(event));
if(obj.zuhe1){
CanadaMes-ui/src/views/Electrical/ManualonePosition2.vue
@@ -318,10 +318,22 @@
        };
        // 收到消息
        socket.onmessage = (msg) => {
          if (!msg.data) {
            return; // 如果收到空数据,则直接返回,不执行后续逻辑
          }
        let isMouseInInputBox = false; // 标记鼠标是否在输入框内
const inputBox = document.querySelectorAll('.input-box');
inputBox.forEach(box => {
  box.addEventListener('mouseenter', () => {
    isMouseInInputBox = true;
  });
  box.addEventListener('mouseleave', () => {
    isMouseInInputBox = false;
  });
});
socket.onmessage = (msg) => {
  if (!msg.data) {
    return; // 如果收到空数据,则直接返回,不执行后续逻辑
  }
          let obj = JSON.parse(msg.data);
@@ -329,21 +341,11 @@
          // console.log(obj)
          const jsonData2 = this.jsonData;
          const weihuiling = obj.weihuiling;
            const handleMouseMove = (event) => {
    if (!event || !event.target) {
      return; // 如果 event 或 event.target 不存在,则直接返回,不执行后续逻辑
    }
    const inputBox = document.querySelectorAll('.input-box');
    const target = event.target;
    // console.log(obj);
    const isMouseInInput = Array.from(inputBox).some(box => box.contains(target));
if (!isMouseInInput) {
            
            if (obj.zuhe1 ) {
            if (obj.zuhe1&& !isMouseInInputBox ) {
              // 执行更新逻辑
              for (let i = 0; i < 2; i++) {
                jsonData2[i].forEach((item, index) => {
@@ -378,13 +380,8 @@
            }
         
          }
        }
              // console.log(jsonData2);
              setInterval(() => handleMouseMove(event), 1000); // 每隔 1000ms 检测一次鼠标位置
document.addEventListener('mousemove', event => handleMouseMove(event));
          if(obj.zuhe1){
CanadaMes-ui/src/views/Electrical/Parameter2.vue
@@ -358,7 +358,7 @@
          const parms = obj.params;
         // console.log(obj);
        // console.log(obj);
          // const handleMouseMove = throttle(function(event) {
          // const inputBox = document.querySelectorAll('.id');
CanadaMes-ui/src/views/Electrical/Positioning1.vue
@@ -236,7 +236,19 @@
        };
        // 收到消息
        socket.onmessage = (msg) => {
        let isMouseInInputBox = false; // 标记鼠标是否在输入框内
const inputBox = document.querySelectorAll('.input-box');
inputBox.forEach(box => {
  box.addEventListener('mouseenter', () => {
    isMouseInInputBox = true;
  });
  box.addEventListener('mouseleave', () => {
    isMouseInInputBox = false;
  });
});
socket.onmessage = (msg) => {
  if (!msg.data) {
    return; // 如果收到空数据,则直接返回,不执行后续逻辑
  }
@@ -244,50 +256,26 @@
  let obj = JSON.parse(msg.data);
  const jsonData2 = this.jsonData;
  const handleMouseMove = (event) => {
    if (!event || !event.target) {
      return; // 如果 event 或 event.target 不存在,则直接返回,不执行后续逻辑
    }
  const parms = obj.params;
    const inputBox = document.querySelectorAll('.input-box');
    const target = event.target;
    const isMouseInInput = Array.from(inputBox).some(box => box.contains(target));
    if (!isMouseInInput) {
            const parms = obj.params;
              // 如果鼠标不在输入框内,更新输入框的值
              // this.submitDataToBackend()
              // console.log(parms)
if(parms){
              let index = 0;
              for (let i = 0; i < jsonData2.length; i++) {
                let arr = jsonData2[i];
                for (let j = 0; j < arr.length; j++) {
                  let obj = arr[j];
                  if (
                    obj.type === "0" &&
                    Object.prototype.hasOwnProperty.call(obj, "value")
                  ) {
                    obj.value = parms[0][index];
                    index++;
                  }
                }
              }
            }
          }
  if(parms && !isMouseInInputBox){ // 只有在鼠标不在输入框内时才更新数据
  //  console.log(parms)
    let index = 0;
    for (let i = 0; i < jsonData2.length; i++) {
      let arr = jsonData2[i];
      for (let j = 0; j < arr.length; j++) {
        let obj = arr[j];
        if (
          obj.type === "0" &&
          Object.prototype.hasOwnProperty.call(obj, "value")
        ) {
          obj.value = parms[0][index];
          index++;
        }
              // console.log(jsonData2);
              setInterval(() => handleMouseMove(event), 1000); // 每隔 1000ms 检测一次鼠标位置
document.addEventListener('mousemove', event => handleMouseMove(event));
      }
    }
  }
};
CanadaMes-ui/src/views/Electrical/ServoManualone.vue
@@ -424,12 +424,23 @@
          console.log("websocket已打开");
        };
        // 收到消息
        socket.onmessage = (msg) => {
        let isMouseInInputBox = false; // 标记鼠标是否在输入框内
const inputBox = document.querySelectorAll('.input-box');
inputBox.forEach(box => {
  box.addEventListener('mouseenter', () => {
    isMouseInInputBox = true;
  });
  box.addEventListener('mouseleave', () => {
    isMouseInInputBox = false;
  });
});
socket.onmessage = (msg) => {
  if (!msg.data) {
    return; // 如果收到空数据,则直接返回,不执行后续逻辑
  }
  let obj = JSON.parse(msg.data);
@@ -438,21 +449,11 @@
// console.log(obj)
const weihuiling=obj.weihuiling;
  const jsonData2 = this.jsonData;
  const handleMouseMove = (event) => {
    if (!event || !event.target) {
      return; // 如果 event 或 event.target 不存在,则直接返回,不执行后续逻辑
    }
    const inputBox = document.querySelectorAll('.input-box');
    const target = event.target;
    // console.log(obj);
    const isMouseInInput = Array.from(inputBox).some(box => box.contains(target));
    if (!isMouseInInput) {
  if (obj.zuhe1) {
  if (obj.zuhe1 && !isMouseInInputBox) {
    
    //启动按钮
 
@@ -488,18 +489,9 @@
  }
}
      }
            // console.log(jsonData2);
            setInterval(() => handleMouseMove(event), 1000); // 每隔 1000ms 检测一次鼠标位置
document.addEventListener('mousemove', event => handleMouseMove(event));
  if (obj.qidong){
springboot-vue3/src/main/java/com/example/springboot/component/PLCAutomaticParameterSetting.java
@@ -42,6 +42,8 @@
      List<String> addresses = Arrays.asList(config.getProperty("Auto.addresses").split(","));
      List<Short> arraylist2 = S7control.getinstance().readWords(addresses);
      //System.out.println("lastMessage:" + arraylist2);
//翻转
      List<Short> fanzhuan2 = S7control.getinstance().ReadWord("DB100.8", 1);
      List<Short> xiaoche2 = S7control.getinstance().ReadWord("DB100.12", 1);
springboot-vue3/src/main/java/com/example/springboot/component/PLCManualJog.java
@@ -54,7 +54,7 @@
                boolean value = arraylist.get(i);
                params[i] = value ? (short) 1 : (short) 0;
            }
          //  System.out.println("messageValue:"+ arraylist  );
            jsonObject.append("params", params);
//      System.out.println("messageValue:" + arraylist +"messageValue2:" + arraylist2 );
springboot-vue3/src/main/java/com/example/springboot/component/S7control.java
@@ -216,19 +216,25 @@
        return s7PLC.readBoolean(addresslist);
    }
//读取不连续地址bit
    public List<Boolean> readBits(List<String> addressList) {
        if (s7PLC == null || addressList.isEmpty()) {
            return null;
        }
public List<Boolean> readBits(List<String> addressList) {
    if (s7PLC == null || addressList.isEmpty()) {
        return null;
    }
        List<Boolean> values = new ArrayList<>();
        for (String address : addressList) {
    List<Boolean> values = new ArrayList<>();
    for (String address : addressList) {
        try {
            boolean value = s7PLC.readBoolean(address);
            values.add(value);
        } catch (Exception e) {
            // 处理异常
            System.out.println("读取 " + address + " 失败:" + e.getMessage());
        }
        return values;
    }
    return values;
}
//读取String
    public List<String> readStrings(List<String> addressList) {
@@ -307,15 +313,20 @@
        List<Short> data = new ArrayList<>();
        for (String address : addresses) {
            try {
            // 单个地址
            Short value = s7PLC.readInt16(address);
            data.add(value);
                // 单个地址
                Short value = s7PLC.readInt16(address);
                data.add(value);
            } catch (Exception e) {
                System.out.println("读取 " + address + " 失败:" + e.getMessage());
            }
        }
        return data;
    }
//读取时间
    public Long readtime(String address) {
        if (s7PLC==null)
springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java
@@ -17,7 +17,7 @@
        //
        System.out.println("启动完成");
     // new PlcHold().start();
      new PlcHold().start();
        new Plchome().start();
@@ -25,7 +25,7 @@
         new Plcsign().start();
         new Plcstate().start();
         new PlcPositioning1().start();
springboot-vue3/src/main/resources/config.properties
@@ -153,7 +153,7 @@
#addresses.add("DB100.36");
#addresses.add("DB100.38");
#addresses.add("DB100.40");
Auto.addresses=DB100.0,DB100.2,DB100.4,DB100.6,DB100.26,DB100.28,DB100.30,DB100.32,DB100.36,DB100.38,DB100.40
Auto.addresses=DB100.0,DB100.2,DB100.4,DB100.6,DB100.26,DB100.28,DB100.30,DB100.32,DB100.34,DB100.36,DB100.38,DB100.40
#List<String> waddresses1 = new ArrayList<>();
#waddresses1.add("DB100.0");