|  |  |  | 
|---|
|  |  |  | return devicePro == null ? throw new Exception() : Communicator.ReadAsObj(devicePro.DeviceProAddress, devicePro.DeviceDataType); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //public bool IsOccupied(string deviceChildCode) | 
|---|
|  |  |  | //{ | 
|---|
|  |  |  | //    if (Communicator.IsConnected) | 
|---|
|  |  |  | //    { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //    } | 
|---|
|  |  |  | //} | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /// <summary> | 
|---|
|  |  |  | /// | 
|---|
|  |  |  | /// </summary> | 
|---|
|  |  |  | 
|---|
|  |  |  | { | 
|---|
|  |  |  | if (Communicator.IsConnected) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | List<DeviceProDTO> devicePros = _deviceProDTOs.Where(x => x.DeviceProParamType == ConveyorLineStatus.IsOccupied.ToString()).ToList(); | 
|---|
|  |  |  | List<DeviceProDTO> devicePros = _deviceProDTOs.Where(x => x.DeviceChildCode == deviceChildCode && x.DeviceProParamName == "InteractiveSignal").ToList(); | 
|---|
|  |  |  | if (devicePros.Count == 0) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | //todo 协议信息未获取到时抛出异常 | 
|---|
|  |  |  | throw new Exception(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | for (int i = 0; i < devicePros.Count; i++) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | object readStatus = Communicator.ReadAsObj(devicePros[i].DeviceProAddress, devicePros[i].DeviceDataType); | 
|---|
|  |  |  | //todo 协议明细信息未获取到时抛出异常 | 
|---|
|  |  |  | DeviceProtocolDetailDTO? deviceProtocolDetail = _deviceProtocolDetailDTOs.FirstOrDefault(x => x.DeviceProParamName == devicePros[i].DeviceProParamName) ?? throw new Exception(); | 
|---|
|  |  |  | deviceProtocolDetail = _deviceProtocolDetailDTOs.FirstOrDefault(x => x.DeviceProParamName == devicePros[i].DeviceProParamType && x.ProtocalDetailValue.Equals(readStatus.ToString())); | 
|---|
|  |  |  | deviceProtocolDetail = _deviceProtocolDetailDTOs.FirstOrDefault(x => x.DeviceProParamName == "InteractiveSignal" && x.ProtocalDetailValue.Equals(readStatus.ToString())); | 
|---|
|  |  |  | if (deviceProtocolDetail != null) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | return true; | 
|---|