コード例 #1
0
ファイル: TrackReplay.cs プロジェクト: lexzh/Myproject
 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;
     }
 }