public static List <OnTimeEntity> GetTruList(int uId, List <string> stationList) { TruList tList = new TruList(); List <OnTimeEntity> onTimeList = new List <OnTimeEntity>(); var options = new List <ChannelOption> { new ChannelOption(ChannelOptions.MaxReceiveMessageLength, int.MaxValue) }; var channel = new Channel(Conf.Config.DB_SERVER_IP, ChannelCredentials.Insecure, options); var client = new BatchService(new gRPCServices.gRPCServicesClient(channel)); tList = client.GetTruMsg(stationList); if (StationHelper.stationInfoList == null || StationHelper.stationInfoList.Count == 0) { StationHelper.getStationInfoList(); } for (int i = 0; i < tList.TruData.Count; i++) { string id = tList.TruData[i].StationId; string state = "正在对时"; bool tru = false; if (tList.TruData[i].Tru == true) { tru = tList.TruData[i].Tru; } if (tru) { state = "√"; } else { state = "对时失败"; } onTimeList.Add(new OnTimeEntity { id = id, stationId = StationHelper.stationInfoDic4[id].stationId, stationName = StationHelper.stationInfoDic4[id].stationName, state = state }); } channel.ShutdownAsync().Wait(); client.StopGrpcClient(); return(onTimeList); }
public TruList BatchTime(StationList list) { CProtocolEventManager.DownForTru += BatchForTru_EventHandler; truReturnList = new List <string>(); TruList truList = new TruList(); m_timer_1.Start(); foreach (var id in list.Ids) { CEntityStation station = CDBDataMgr.Instance.GetStationById(id); CPortDataMgr.Instance.SendAdjustClock(station); } while (true) { // 等待 if (timeDown_1) { foreach (var id in list.Ids) { if (this.truReturnList.Contains(id)) { truList.TruData.Add(new TruData() { StationId = id, Tru = true }); } else { truList.TruData.Add(new TruData() { StationId = id, Tru = false }); } } break; } } m_timer_1.Stop(); CProtocolEventManager.DownForTru -= DownForTru_EventHandler; return(truList); }
public TruList GetTruMsg(List <string> stationList) { try { StationList request = new StationList(); foreach (var v in stationList) { request.Ids.Add(v); } TruList info = grpcClient.BatchTime(request); return(info); } catch (Exception exp) { Debug.WriteLine("RPC failed" + exp); throw; } }