|  |  | 
 |  |  |                                         sv.addOrUpdateOftenUseIntake(dto.getOperator(), dto.getIntakeId()) ; | 
 |  |  |                                         //开阀成功,虚拟卡记录上标记已被占用 | 
 |  |  |                                         sv.setVcUsed(vcPo.getId(), dto.getIntakeId()); | 
 |  |  |                                         //记录开阀命令,以备远程关阀 | 
 |  |  |                                         RmCommandOpen comOpen = sv.getCommandOpen(dto.getIntakeId()); | 
 |  |  |                                         if(comOpen == null){ | 
 |  |  |                                             RmCommandOpen po = newRmCommandOpen(comId, ctrlPo.getProtocol(), ComCode, comName, dto.getIntakeId(), ctrlPo.getRtuAddr(), vcPo.getVcNum(), orderNo, dto.getOperator()) ; | 
 |  |  |                                             sv.saveCommandOpen(po); | 
 |  |  |                                         }else{ | 
 |  |  |                                             setRmCommandOpen(comOpen, comId, ctrlPo.getProtocol(), ComCode, comName, dto.getIntakeId(), ctrlPo.getRtuAddr(), vcPo.getVcNum(), orderNo, dto.getOperator()) ; | 
 |  |  |                                             sv.updateCommandOpen(comOpen); | 
 |  |  |                                         } | 
 |  |  |                                     } | 
 |  |  |                                     //记录开阀命令,以备远程关阀 | 
 |  |  |                                     RmCommandOpen comOpen = sv.getCommandOpen(dto.getIntakeId()); | 
 |  |  |                                     if(comOpen == null){ | 
 |  |  |                                         RmCommandOpen po = newRmCommandOpen(comId, ctrlPo.getProtocol(), ComCode, comName, dto.getIntakeId(), ctrlPo.getRtuAddr(), vcPo.getVcNum(), orderNo, dto.getOperator()) ; | 
 |  |  |                                         sv.saveCommandOpen(po); | 
 |  |  |                                     }else{ | 
 |  |  |                                         setRmCommandOpen(comOpen, comId, ctrlPo.getProtocol(), ComCode, comName, dto.getIntakeId(), ctrlPo.getRtuAddr(), vcPo.getVcNum(), orderNo, dto.getOperator()) ; | 
 |  |  |                                         sv.updateCommandOpen(comOpen); | 
 |  |  |                                     } | 
 |  |  |  | 
 |  |  |                                 } | 
 |  |  |                                 @Override | 
 |  |  |                                 public void call(Object... objs) { | 
 
 |  |  | 
 |  |  |                                         sv.addOrUpdateOftenUseIntake(dto.getOperator(), dto.getIntakeId()) ; | 
 |  |  |                                         //开阀成功,虚拟卡记录上标记已被占用 | 
 |  |  |                                         sv.setVcUsed(vcPo.getId(), dto.getIntakeId()); | 
 |  |  |                                     } | 
 |  |  |                                     //记录开阀命令,以备远程关阀 | 
 |  |  |                                     RmCommandOpen comOpen = sv.getCommandOpen(dto.getIntakeId()); | 
 |  |  |                                     if(comOpen == null){ | 
 |  |  |                                         RmCommandOpen po = newRmCommandOpen(comId, ctrlPo.getProtocol(), ComCode, comName, dto.getIntakeId(), ctrlPo.getRtuAddr(), vcPo.getVcNum(), orderNo, dto.getOperator()) ; | 
 |  |  |                                         sv.saveCommandOpen(po); | 
 |  |  |                                     }else{ | 
 |  |  |                                         setRmCommandOpen(comOpen, comId, ctrlPo.getProtocol(), ComCode, comName, dto.getIntakeId(), ctrlPo.getRtuAddr(), vcPo.getVcNum(), orderNo, dto.getOperator()) ; | 
 |  |  |                                         sv.updateCommandOpen(comOpen); | 
 |  |  |                                         //记录开阀命令,以备远程关阀 | 
 |  |  |                                         RmCommandOpen comOpen = sv.getCommandOpen(dto.getIntakeId()); | 
 |  |  |                                         if(comOpen == null){ | 
 |  |  |                                             RmCommandOpen po = newRmCommandOpen(comId, ctrlPo.getProtocol(), ComCode, comName, dto.getIntakeId(), ctrlPo.getRtuAddr(), vcPo.getVcNum(), orderNo, dto.getOperator()) ; | 
 |  |  |                                             sv.saveCommandOpen(po); | 
 |  |  |                                         }else{ | 
 |  |  |                                             setRmCommandOpen(comOpen, comId, ctrlPo.getProtocol(), ComCode, comName, dto.getIntakeId(), ctrlPo.getRtuAddr(), vcPo.getVcNum(), orderNo, dto.getOperator()) ; | 
 |  |  |                                             sv.updateCommandOpen(comOpen); | 
 |  |  |                                         } | 
 |  |  |                                     } | 
 |  |  |                                 } | 
 |  |  |                                 @Override |