Example #1
0
 public GPSInfo getGPS(int FlightID, DateTime FileCreatedOn) {
     StringBuilder GPSInfo = new StringBuilder();
   String FromTime = Util.toSQLDate(FileCreatedOn.AddMinutes(-5).ToUniversalTime());
   String ToTime = Util.toSQLDate(FileCreatedOn.AddMinutes(5).ToUniversalTime());
   String ThisTime = Util.toSQLDate(FileCreatedOn.ToUniversalTime());
   String SQL = @"Select TOP 1 
     Latitude,
     Longitude,
     Altitude,
     ABS(DATEDIFF(SECOND, ReadTime,'" + ThisTime + @"')) as SortTime
   from 
     FlightMapData 
   where 
     flightid=" + FlightID + @" AND
     ReadTime >=  '" + FromTime + @"' AND
     ReadTime <=  '" + ToTime + @"'
   ORDER BY
     SortTime ASC,
     ReadTime DESC";
   var Row = Util.getDBRow(SQL);
   var theGPS = new GPSInfo();
   if (Row["hasRows"].ToString() == "True") {
     theGPS.Latitude = Util.toDouble(Row["Latitude"]);
     theGPS.Longitude = Util.toDouble(Row["Longitude"]);
     theGPS.Altitude = Util.toDouble(Row["Altitude"]);
   }
   return theGPS;
 }
Example #2
0
    }//getFlights()

    public void saveTechnicalLog(HttpRequestBase Request) {
      String SQL;
      String[] Index = Request["theFlight.Index"].Split(',');
      foreach (String RowID in Index) {
        if (RowID == "SLNO") continue;
        String FlightID = Request["theFlight[" + RowID + "].ID"];
        String LogTakeOffTime = Request["theFlight[" + RowID + "].FlightDate"] + " " +
                         Request["theFlight[" + RowID + "].LogTakeOffTime"];
        String LogLandingTime = Request["theFlight[" + RowID + "].FlightDate"] + " " +
                         Request["theFlight[" + RowID + "].LogLandingTime"];

        if (FlightID == "0") {
          //create new flight for drone
          SQL =
          "INSERT INTO DroneFlight (\n" +
          "  DroneID,\n" +
          "  PilotID,\n" +
          "  FlightDate,\n" +
          "  CreatedOn,\n" +
          "  CreatedBy,\n" +
          "  [LogFrom],\n" +
          "  [LogTo],\n" +
          "  [LogTakeOffTime],\n" +
          "  [LogLandingTime],\n" +
          "  [LogBattery1ID],\n" +
          "  [LogBattery1StartV],\n" +
          "  [LogBattery1EndV],\n" +
          "  [LogBattery2ID],\n" +
          "  [LogBattery2StartV],\n" +
          "  [LogBattery2EndV],\n" +
          "  [isLogged],\n" +
          "  [LogDateTime],\n" +
          "  [LogCreatedBy],\n" +
          "  [Descrepency],\n" +
          "  [ActionTaken]\n" +
          ") VALUES (" +
          "  " + Util.toInt(Request["DroneID"]) + ",\n" +
          "  " + Util.getLoginUserID() + ",\n" +
          "  '" + Util.toSQLDate(LogTakeOffTime) + "',\n" +
          "  GETDATE(),\n" +
          "  " + Util.getLoginUserID() + ",\n" +
          "  '" + Request["theFlight[" + RowID + "].LogFrom"] + "',\n" +
          "  '" + Request["theFlight[" + RowID + "].LogTo"] + "',\n" +
          "  '" + Util.toSQLDate(LogTakeOffTime) + "',\n" +
          "  '" + Util.toSQLDate(LogLandingTime) + "',\n" +
          "  '" + Request["theFlight[" + RowID + "].LogBattery1ID"] + "',\n" +
          "  " + Util.toDecimal(Request["theFlight[" + RowID + "].LogBattery1StartV"]) + ",\n" +
          "  " + Util.toDecimal(Request["theFlight[" + RowID + "].LogBattery1EndV"]) + ",\n" +
          "  '" + Request["theFlight[" + RowID + "].LogBattery2ID"] + "',\n" +
          "  " + Util.toDecimal(Request["theFlight[" + RowID + "].LogBattery2StartV"]) + ",\n" +
          "  " + Util.toDecimal(Request["theFlight[" + RowID + "].LogBattery2EndV"]) + ",\n" +
          "  1,\n" +
          "  GETDATE(),\n" +
          "  " + Util.getLoginUserID() + ",\n" +
          "  '" + Request["theFlight[" + RowID + "].Descrepency"] + "',\n" +
          "  '" + Request["theFlight[" + RowID + "].ActionTaken"] + "'\n" +
          ")";
          Util.doSQL(SQL);
        } else { //if(FlightID == "0")
                 //Update flight information for technical Log
          SQL =
         "UPDATE\n" +
         "  DroneFlight\n" +
         "SET\n" +
         "  [LogFrom] = '" + Request["theFlight[" + RowID + "].LogFrom"] + "',\n" +
         "  [LogTo] = '" + Request["theFlight[" + RowID + "].LogTo"] + "',\n" +
         "  [LogTakeOffTime] = '" + Util.toSQLDate(LogTakeOffTime) + "',\n" +
         "  [LogLandingTime] = '" + Util.toSQLDate(LogLandingTime) + "',\n" +
         "  [LogBattery1ID] = '" + Request["theFlight[" + RowID + "].LogBattery1ID"] + "',\n" +
         "  [LogBattery1StartV] = " + Util.toDecimal(Request["theFlight[" + RowID + "].LogBattery1StartV"]) + ",\n" +
         "  [LogBattery1EndV] = " + Util.toDecimal(Request["theFlight[" + RowID + "].LogBattery1EndV"]) + ",\n" +
         "  [LogBattery2ID] = '" + Request["theFlight[" + RowID + "].LogBattery2ID"] + "',\n" +
         "  [LogBattery2StartV] = " + Util.toDecimal(Request["theFlight[" + RowID + "].LogBattery2StartV"]) + ",\n" +
         "  [LogBattery2EndV] = " + Util.toDecimal(Request["theFlight[" + RowID + "].LogBattery2EndV"]) + ",\n" +
         "  [isLogged] = 1,\n" +
         "  [LogDateTime] = GETDATE(),\n" +
         "  LogCreatedBy=" + Util.getLoginUserID() + ",\n" +
         "  Descrepency = '" + Request["theFlight[" + RowID + "].Descrepency"] + "',\n" +
         "  ActionTaken = '" + Request["theFlight[" + RowID + "].ActionTaken"] + "'\n" +
         "WHERE\n" +
         "  ID=" + FlightID;
          Util.doSQL(SQL);
        }//if(FlightID == "0")

      }//foreach(Index)
    }//saveTechnicalLog()