wu
2023-11-03 17b8d077f7efe3db20344987cdad9da9d9ab3de6
springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java
@@ -38,6 +38,12 @@
      spianMapper = WebSocketServer.applicationContext.getBean(SpianMapper.class);
      jdbcConnections = WebSocketServer.applicationContext.getBean(JdbcConnections.class);
      spianService.selectout("1145");
      //spianService.selectAll2();
      //增加队列表数据
      //spianMapper.insertqueue("1",1,1500);
      // 根据玻璃id获取订单号,单独数据源
      // try {
@@ -50,18 +56,18 @@
      // }
    
      //判断进片请求
      // List<Short> datas1List = S7control.getinstance().ReadWord("DB106.24", 1);// 获取prc进片请求数据
      // List<Short> datas1ListState = S7control.getinstance().ReadWord("DB106.8", 1);// 获取进片车状态
      // List<Short> datas1ListState2 = S7control.getinstance().ReadWord("DB105.12", 1);// 获取进片车任务是否启动
      List<Short> datas1List = S7control.getinstance().ReadWord("DB106.24", 1);// 获取prc进片请求数据
      List<Short> datas1ListState = S7control.getinstance().ReadWord("DB106.8", 1);// 获取进片车状态
      List<Short> datas1ListState2 = S7control.getinstance().ReadWord("DB105.12", 1);// 获取进片车任务是否启动
      //测试启动自定义prc值
      List<Short> datas1List=new ArrayList<>();
      datas1List.add((short)1);
      List<Short> datas1ListState=new ArrayList<>();
      datas1List.add((short)0);
      List<Short> datas1ListState2=new ArrayList<>();
      datas1List.add((short)0);
      spianMapper.insertqueue("1",1);
      // List<Short> datas1List=new ArrayList<>();
      // datas1List.add((short)1);
      // List<Short> datas1ListState=new ArrayList<>();
      // datas1List.add((short)0);
      // List<Short> datas1ListState2=new ArrayList<>();
      // datas1List.add((short)0);
      if (datas1List != null && datas1ListState != null) {
        // 获取prc进片请求数据
@@ -75,11 +81,11 @@
        StringBuilder strId=new StringBuilder();
         StringBuilder writedstrId=new StringBuilder();
       
       if(!inglassbegin&!exist1)
       if(!inglassbegin&!exist1)//当进片车不空闲时
       {
         inglassbegin=true;
       }
       if(inglassbegin&exist1)
       if(inglassbegin&exist1)//当进片车空闲时
       {
        inglassbegin=false;
        spianMapper.Updatetask(1, 0);//立即结束数据库表中的上片任务
@@ -107,7 +113,13 @@
              }
              if(!writedstrId.toString().equals(strId.toString())) //已经下发的id与plc请求的id不一样时,认为不是重复的任务,才执行下发任务指令
              {
                 spianService.selectAll(strId.toString());
                 int glasslimit=1;//判断是否是多片上片
                 if(glasslimit==1){
                  spianService.selectAll(strId.toString());
                 }else{
                  spianService.selectAll(strId.toString());
                 }
                  S7control.getinstance().WriteByte("DB105.16",datas1ListID);//派发进片id
                  
              }