public DataTable GetReplayData(string string_0, string string_1, string string_2, int int_0, int int_1, int int_2, int int_3, string string_3, string string_4) { DataTable table = this.method_2(); try { new TrackReplay(); int num = int_0; DataTable table2 = this.method_0(string_0, string_1, string_2, num, int_1, int_2, 0); DataView defaultView = table2.DefaultView; int num2 = 0; int num3 = 0; long num4 = 0L; int result = 0; string str = string.Empty; string str2 = string.Empty; CarAlarmType type = new CarAlarmType(); Car car = new Car(); for (int i = 0; i < defaultView.Count; i++) { DataRow row = table.NewRow(); row["CarNum"] = defaultView[i]["carNum"].ToString(); row["CarId"] = defaultView[i]["carid"].ToString(); row["Longitude"] = defaultView[i]["Longitude"].ToString(); row["Latitude"] = defaultView[i]["Latitude"].ToString(); row["Speed"] = defaultView[i]["speed"].ToString(); str = Convert.ToString(defaultView[i]["SimNum"]); num2 = Convert.ToInt32(defaultView[i]["reserved"]); row["Reserved"] = num2; if (num2 == 0x28b) { row["Reserved"] = "是"; } else { row["Reserved"] = "否"; } num3 = Convert.ToInt32(defaultView[i]["CarStatu"]); if (table2.Columns.Contains("CarStatuEx")) { num4 = long.Parse(defaultView[i]["CarStatuEx"].ToString()); } str2 = AlamStatus.GetStatusNameByCarStatu((long) num3) + AlamStatus.GetStatusNameByCarStatuExt(num4) + type.GetCustAlarmName(str, num3); float num7 = float.Parse(defaultView[i]["distanceDiff"].ToString()) / 1000f; if (num7 < 0f) { num7 = 0f; } row["Distance"] = string.Format("{0:F2}", num7); row["GpsTime"] = defaultView[i]["gpstime"].ToString(); row["CarStatusList"] = str2; row["CarStatus"] = AlamStatus.IsAlarmReport(num2) ? 1 : 2; row["AlarmType"] = type.GetAlarmTypeValue(string_2, num3, num4); int.TryParse(defaultView[i]["TransportStatus"].ToString(), out result); row["IsFill"] = (result == 3) ? 1 : 0; row["GpsValid"] = car.isPosStatus(num3) ? 1 : 0; row["AccOn"] = ((num3 & 0x4000) == 0) ? 0 : 1; row["Direct"] = defaultView[i]["Direct"].ToString(); table.Rows.Add(row); } return table; } catch (Exception exception) { ErrorMsg msg = new ErrorMsg("TrackReplay", "GetTrackData", exception.Message); new LogHelper().WriteError(msg); DataRow row2 = table.NewRow(); table.Clear(); row2["Error"] = exception.Message; row2["Hand"] = string_3; table.Rows.Add(row2); return table; } }