New file |
| | |
| | | package com.mes.job; |
| | | import cn.hutool.json.JSONObject; |
| | | import com.mes.common.S7object; |
| | | import com.mes.md.entity.Machine; |
| | | import com.mes.md.entity.Tasking; |
| | | import com.mes.md.mapper.MachineMapper; |
| | | import com.mes.md.service.PrimitiveTaskService; |
| | | import com.mes.md.service.TaskingService; |
| | | import com.mes.tools.WebSocketServer; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.scheduling.annotation.Scheduled; |
| | | import org.springframework.stereotype.Component; |
| | | import com.mes.device.PlcParameterObject; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | | * @author SNG-010 |
| | | */ |
| | | @Component |
| | | @Slf4j |
| | | public class PLCScanQrCodesReport { |
| | | |
| | | PlcParameterObject plcParameterObject =null; |
| | | @Autowired |
| | | TaskingService taskingService; |
| | | @Autowired |
| | | MachineMapper machineMapper; |
| | | @Autowired |
| | | PrimitiveTaskService primitiveTaskService; |
| | | //@Scheduled(fixedDelay = 500) |
| | | public void pLCScanQR() { |
| | | //获取当前任务表最新的一块任务状态 |
| | | //扫码线程 |
| | | String scanId = plcParameterObject.getPlcParameter("scanId").getValue(); |
| | | if(!Objects.equals(scanId, "")){ |
| | | boolean result = primitiveTaskService.updateReportCount(scanId); |
| | | if (result){ |
| | | //添加成功时发送过片信号 |
| | | S7object.getinstance().plccontrol.writeWord(plcParameterObject.getPlcParameter("scan").getAddress(), Integer.parseInt("1")); |
| | | } |
| | | log.info("扫描定制二维码:"+scanId); |
| | | }else { |
| | | log.info("标准模式扫描二维码:无"); |
| | | } |
| | | |
| | | } |
| | | //@Scheduled(fixedDelay = 1000) |
| | | public void scanQrCode() { |
| | | //获取当前任务表最新的一块任务状态 |
| | | JSONObject jsonObject = new JSONObject(); |
| | | //获取报警状态 |
| | | Machine machine=machineMapper.selectById(23L); |
| | | List<Tasking> taskingList=taskingService.findMachineTask(machine); |
| | | jsonObject.append("taskingList", taskingList); |
| | | jsonObject.append("machine", machine); |
| | | ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("scanQrCodesReport"); |
| | | if (sendwServer != null) { |
| | | for (WebSocketServer webserver : sendwServer) { |
| | | if (webserver != null) { |
| | | webserver.sendMessage(jsonObject.toString()); |
| | | List<String> messages = webserver.getMessages(); |
| | | if (!messages.isEmpty()) { |
| | | // // 将最后一个消息转换为整数类型的列表 |
| | | webserver.clearMessages(); |
| | | } |
| | | } else { |
| | | log.info("Home is closed"); |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | } |