示例#1
0
 public void Save(TrackingModel model)
 {
     vmsServerLinqDataContext datacontext = new vmsServerLinqDataContext();
     Tracking objTracking = new Tracking();
     objTracking.TrackingID = GetLongID();
     objTracking.ModuleID = model.ModuleNumber;
     objTracking.Longtitude = model.Longtitude;
     objTracking.Latitude = model.Latitude;
     objTracking.Speed = model.Speed;
     objTracking.FuelLevel = model.FuelLevel;
     objTracking.Time = DateTime.Now;
     datacontext.Trackings.InsertOnSubmit(objTracking);
     datacontext.SubmitChanges();
 }
示例#2
0
 public TrackingModel GetModule(long id)
 {
     vmsServerLinqDataContext datacontext = new vmsServerLinqDataContext();
     var query = (from t in datacontext.Trackings
                 where t.TrackingID == id
                 select t).SingleOrDefault();
     TrackingModel model = new TrackingModel();
     try
     {
         model.TrackingID = query.TrackingID;
         model.ModuleNumber = query.ModuleID;
         model.Longtitude = Convert.ToDouble(query.Longtitude);
         model.Latitude = Convert.ToDouble(query.Latitude);
         model.Speed = Convert.ToDouble(query.Speed);
         model.FuelLevel = Convert.ToDouble(query.FuelLevel);
         model.Time = Convert.ToDateTime(query.Time);
         return model;
     }
     catch
     {
         return null;
     }
 }
示例#3
0
        private void DataReceived(string sData)
        {
            try
            {
                log4net.Info("Save Data:" + sData);
                if (checkDataCorrectFormat(sData))
                {
                    string moduleNumber = sData.Substring(0, 11);
                    double longtitude = Convert.ToDouble(sData.Substring(11, LongLength));
                    double latitude = Convert.ToDouble(sData.Substring(11 + LongLength, LatLength));
                    double speed = Convert.ToDouble(sData.Substring(11 + LongLength + LatLength, SpeedLength));
                    double fuel = Convert.ToDouble(sData.Substring(11 + LongLength + LatLength + SpeedLength, FuelLength));
                    ModuleModel module = moduleAccess.GetModule(moduleNumber);
                    if (module == null)
                    {
                        module.ModuleNumber = moduleNumber;
                        module.ModuleType = "Module Sensor";
                        module.IsActive = true;
                        moduleAccess.Save(module);
                    }

                    TrackingModel track = new TrackingModel();
                    track.ModuleNumber = module.ModuleNumber;
                    track.Longtitude = longtitude;
                    track.Latitude = latitude;
                    track.Speed = speed;
                    track.FuelLevel = fuel;
                    track.Time = DateTime.Now;
                    trackingAccess.Save(track);
                    log4net.Info("Save Data Completed");
                }
                else
                {
                    log4net.Error("string received incorrect format");
                }
            }
            catch (Exception ex)
            {
                log4net.Error("Cannot save data. Reason:" + ex.Message);
            }
        }