|  |  | 
 |  |  | import com.dy.pipIrrGlobal.command.enums.LastOperateENUM; | 
 |  |  | import com.dy.pipIrrGlobal.command.result.CommandResultCode; | 
 |  |  | import com.dy.pipIrrGlobal.daoBa.BaSettingsMapper; | 
 |  |  | import com.dy.pipIrrGlobal.daoIr.IrIntakeOperateMapper; | 
 |  |  | import com.dy.pipIrrGlobal.daoPr.PrCommonIntakesMapper; | 
 |  |  | import com.dy.pipIrrGlobal.daoPr.PrControllerMapper; | 
 |  |  | import com.dy.pipIrrGlobal.daoRm.RmCommandHistoryMapper; | 
 |  |  | 
 |  |  | import java.text.SimpleDateFormat; | 
 |  |  | import java.time.LocalDateTime; | 
 |  |  | import java.time.format.DateTimeFormatter; | 
 |  |  | import java.util.*; | 
 |  |  | import java.util.Date; | 
 |  |  | import java.util.HashMap; | 
 |  |  | import java.util.Map; | 
 |  |  | import java.util.Random; | 
 |  |  | import java.util.concurrent.CompletableFuture; | 
 |  |  | import java.util.concurrent.ExecutionException; | 
 |  |  | import java.util.concurrent.TimeUnit; | 
 |  |  | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private PrCommonIntakesMapper prCommonIntakesMapper; | 
 |  |  |  | 
 |  |  |     @Autowired | 
 |  |  |     private IrIntakeOperateMapper irIntakeOperateMapper; | 
 |  |  |  | 
 |  |  |     public static ComSupport comSupport; | 
 |  |  |  | 
 |  |  | 
 |  |  |         Object param = po.getParam(); | 
 |  |  |         String rtuResultSendWebUrl = po.getRtuResultSendWebUrl(); | 
 |  |  |         Long operator = po.getOperator(); | 
 |  |  |         Byte openType = po.getOpenType(); | 
 |  |  |  | 
 |  |  |         // 构造命令 | 
 |  |  |         Command com = command(comId, commandCode, rtuAddr, protocol, rtuResultSendWebUrl, param); | 
 |  |  | 
 |  |  |             rmCommandHistory.setResult((byte) 0); | 
 |  |  |             rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory); | 
 |  |  |             //return BaseResponseUtils.buildErrorMsg(response_CallBack.getContent().toString()); | 
 |  |  |             irIntakeOperateMapper.updateByCommandId(comId, (byte)2, response_CallBack.getMsg()); | 
 |  |  |             return BaseResponseUtils.buildErrorMsg(response_CallBack.getMsg()); | 
 |  |  |         } | 
 |  |  |  | 
 |  |  | 
 |  |  |             rmCommandHistory.setComId(comId); | 
 |  |  |             rmCommandHistory.setResult((byte) 0); | 
 |  |  |             rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory); | 
 |  |  |             irIntakeOperateMapper.updateByCommandId(comId, (byte)2, "回调超时"); | 
 |  |  |             return BaseResponseUtils.buildErrorMsg(CommandResultCode.GET_RESULT_IN_ONE_MINUTE.getMessage()); | 
 |  |  |         } | 
 |  |  |  | 
 |  |  | 
 |  |  |                 rmCommandHistory.setResult((byte) 0); | 
 |  |  |                 rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory); | 
 |  |  |  | 
 |  |  |                 if(openType != null && openType == 1 ) { | 
 |  |  |                     irIntakeOperateMapper.updateByCommandId(comId, (byte)2, "开阀失败"); | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 // 开阀失败则解除占用,关阀失败则占用 | 
 |  |  |                 if (comType != null) { | 
 |  |  |                     SeVirtualCard virtualCard = new SeVirtualCard(); | 
 |  |  | 
 |  |  |                 rmCommandHistory.setResult((byte) 1); | 
 |  |  |                 rmCommandHistoryMapper.updateByPrimaryKeySelective(rmCommandHistory); | 
 |  |  |  | 
 |  |  |                 if(openType != null && openType == 1) { | 
 |  |  |                     irIntakeOperateMapper.updateByCommandId(comId, (byte)1, null); | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 // 开阀成功则占用,关阀成功不占用 | 
 |  |  |                 if (comType != null) { | 
 |  |  |                     SeVirtualCard virtualCard = new SeVirtualCard(); |