Ejemplo n.º 1
0
 public ActionResult Add(CVehicle vehicle) // Quand on valide le formulaire pour ajouter le véhicule
 {
     if (!(Session["User"] is CDriver))
     {
         return(Redirect("../Home/Index"));
     }
     if (ModelState.IsValid)                      // Si les champs sont valides
     {
         CDriver user = (CDriver)Session["User"]; // On charge les variables du conducteur dans user
         if (user.AddVehicle(vehicle) == true)    // Si il a bien pu ajouter le véhicule
         {
             ViewBag.Message     = "Vous avez enregistré un nouveau véhicule ! (Modèle : " + vehicle.Model + " places : " + vehicle.Seat + " Autorisé à fumer : " + vehicle.CanSmoke + ")";
             Session["vehicles"] = user.Vehicles; // Pour l'afficher directe dans la liste
             Session["User"]     = user;
             return(View("Manage"));              // Affichage de la liste
         }
         else // Sinon il existe déjà
         {
             ViewBag.Vehicles = user.Vehicles; // Pour l'afficher directe dans la liste
             ViewBag.Message  = "Vous avez déjà ajouté ce véhicule parmis vos véhicules !";
             return(View("Manage"));           // Affichage de la liste
         }
     }
     return(View("Add")); // les champs sont pas valides
 }
Ejemplo n.º 2
0
        public ActionResult Create(CRide ride)
        {
            if (!(Session["User"] is CDriver))
            {
                return(Redirect("../Home/Index"));
            }
            ride.Vehicle = CVehicle.GetVehicle(Int32.Parse(ride.VehicleId));
            if (DateTime.Compare(ride.DepartureTime, DateTime.Now) < 0)
            {
                ViewBag.Message = "Il est trop tard pour ajouter un trajet !";
                return(View("Create"));
            }
            if (DateTime.Compare(ride.DepartureTime, ride.ArrivalTime) > 0)
            {
                if (ride.Vehicle.Model.ToString() != "Delorean DMC12")
                {
                    ViewBag.Message = "Tu ne voyages pas dans le temps il me semble !";
                    return(View("Create"));
                }
            }

            CDriver driver = new CDriver();

            driver      = (CDriver)Session["User"]; // On charge les variables du conducteur dans user
            ride.Driver = driver;
            ride.AddRide();
            Session["persoRides"] = CRide.GetAll((CDriver)Session["User"]);;
            ViewBag.Message       = "Vous avez bien enregistré un nouveau trajet";
            return(View("Index"));
        }
Ejemplo n.º 3
0
 public ActionResult Register(CDriver driver) // Réponse du formulaire de connexion
 {
     ViewBag.Message = "";                    // On nettoie le message d'erreur
     if (Session["User"] != null)             // Si la session n'est pas vide mais qu'il arrive quand même sur ce controller
     {
         ViewBag.Message = "Vous êtes déjà connecté !";
         return(Redirect("/Driver/Index"));
     }
     if (ModelState.IsValid)                                  // Les champs sont remplis correctement
     {
         if (!driver.IsRegistered())                          // Si il n'a pas trouvé le pseudo dans la BDD, on en crée un
         {
             driver.Register();                               // Fonction pour enregistrer le conducteur
             Session["User"] = CUser.LoadUser(driver.Pseudo); // On ajoute l'objet récupérer de la BDD de l'utilisateur dans la session
             return(Redirect("../Driver/Connect"));
         }
         else
         {
             ViewBag.Message = "Ce pseudo existe déjà dans notre base de donnée !";
             return(View("Register"));
         }
     }
     else
     {
         return(View("Register"));
     }
 }
Ejemplo n.º 4
0
 private void Sock_ConnectionStateChanged(CDriver driver, LGCNS.ezControl.Common.enumConnectionState connectionState)
 {
     if (connectionState == LGCNS.ezControl.Common.enumConnectionState.Connected)
     {
         OnConnect?.Invoke(driver.Name, true);
     }
     else if (connectionState == LGCNS.ezControl.Common.enumConnectionState.Disconnected)
     {
         OnConnect?.Invoke(driver.Name, false);
     }
 }
Ejemplo n.º 5
0
        /////////////////////////////////////////////////////////////////////////////////
        ///                               ManageVehicle                               ///
        /////////////////////////////////////////////////////////////////////////////////
        public ActionResult Manage() // Quand on clique sur le bouton gérer ses véhicules
        {
            if (!(Session["User"] is CDriver))
            {
                return(Redirect("../Home/Index"));
            }
            ViewBag.Message = "";
            CDriver user = (CDriver)Session["User"];

            Session["vehicles"] = user.Vehicles; // On stock les véhicules du conducteur dans un Viewbag
            return(View("Manage"));              // On affiche la vue Manage pour gérer la liste des véhicules
        }
Ejemplo n.º 6
0
        private List <CSource> FindDevices()
        {
            var sources = new List <CSource>();

            try
            {
                //var app = new CMedApplication();

                // init driver
                var driver = new CDriver();

                driver.Ports.Update();              // enable all the ports
                foreach (COMlib.CPort port in driver.Ports)
                {
                    if (port.Type != COMlib.CPort.EType.iTunesBackup)
                    {
                        port.Enabled = true;
                    }
                    else
                    {
                        port.Enabled = false;
                    }
                }
                driver.Ports.Push();

                driver.Models.Update();             // enable all the models
                foreach (CModel model in driver.Models)
                {
                    model.Enabled = true;
                }
                driver.Models.Push();

                // find all sources
                driver.Sources.Update();
                foreach (CSource source in driver.Sources)
                {
                    if (source.Online)
                    {
                        sources.Add(source);
                    }
                }
            }
            catch (Exception e)
            {
                Log("查找设备时发生了错误: " + e.Message + "\n");
            }

            return(sources);
        }
Ejemplo n.º 7
0
        /////////////////////////////////////////////////////////////////////////////////
        ///                               Create                                      ///
        /////////////////////////////////////////////////////////////////////////////////
        ///            Ajoute un nouveau trajet dans la liste des trajets            ////
        public ActionResult Create()
        {
            if (!(Session["User"] is CDriver))
            {
                return(Redirect("../Home/Index"));
            }
            CDriver user = new CDriver();

            user = (CDriver)Session["User"];    // On charge les variables du conducteur dans user
            if (user.Vehicles == null)
            {
                ViewBag.Message = "Vous n'avez aucun véhicule pour proposer un trajet !";
                return(View("Index"));
            }
            Session["listVehicle"] = ToSelectList(user.Vehicles); // On stock dans une session ainsi si il y a une erreur dans le formulaire, la liste de se vide pas
            return(View());
        }
Ejemplo n.º 8
0
        /////////////////////////////////////////////////////////////////////////////////
        ///                               Delete                                      ///
        /////////////////////////////////////////////////////////////////////////////////
        ///                 Supprime un véhicule dans la liste de l'utilisateur      ////
        public ActionResult Delete(int id)
        {
            if (!(Session["User"] is CDriver))
            {
                return(Redirect("../Home/Index"));
            }
            CDriver  user = (CDriver)Session["User"];
            CVehicle veh  = CVehicle.GetVehicle(id);

            if (!veh.ExistInAnyRide())
            {
                user.RemoveVehicle(veh);
            }
            else
            {
                ViewBag.Message     = "Ce véhicule est présent dans un trajet, il ne peut donc pas être supprimé !";
                Session["vehicles"] = user.Vehicles; // On stock les véhicules du conducteur dans un Viewbag
                return(View("Manage"));              // On affiche la vue Manage pour gérer la liste des véhicules
            }

            return(RedirectToAction("Manage"));
        }
Ejemplo n.º 9
0
        public IClassDriver <Local, Parameter, Method, Field, Property, Event, Type, Attribute, Assembly, Expression, Variable, LogOptions, MethodResult> ClassDriver(Type type, bool inferInvariantsJustForReadonlyFields = true)
        {
            WeakReference reference;
            CDriver       result;

            if (mCDrivers.TryGetValue(type, out reference) && reference != null && reference.IsAlive)
            {
                result = reference.Target as CDriver;
                return(result);
            }
            else
            {
                if (!inferInvariantsJustForReadonlyFields || this.MetaDataDecoder.Fields(type).Where(this.MetaDataDecoder.IsReadonly).Any())
                {
                    var cd = new CDriver(this, MetaDataDecoder, type);
                    mCDrivers[type]            = new WeakReference(cd);
                    this.mMaxClassDriversCount = Math.Max(mCDriversCount, this.mMaxClassDriversCount);

#if DEBUG && false
                    var old = Console.ForegroundColor;
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("-- ADD CLASS DRIVER -- Max Class Drivers Count is: {0} ; class drivers count is: {1}", this.mMaxClassDriversCount, mCDriversCount); // DEBUG
                    Console.ForegroundColor = old;
#endif

                    return(cd);
                }
                else
                {
#if DEBUG && false
                    this.Output.WriteLine("The type {0} does not contain any readonly field. As a consequence we do not need a class driver", MetaDataDecoder.Name(type));
#endif
                    return(null);
                }
            }
        }
Ejemplo n.º 10
0
        static void Main(string[] args)
        {
            var app = new CMedApplication();

            // init driver
            var driver = new CDriver();

            try
            {
                driver.Ports.Update();              // enable all the ports
                foreach (COMlib.CPort port in driver.Ports)
                {
                    if (port.Type != COMlib.CPort.EType.iTunesBackup)
                    {
                        port.Enabled = true;
                    }
                    else
                    {
                        port.Enabled = false;
                    }
                }

                driver.Ports.Push();
            }
            catch (Exception e)
            {
                Console.WriteLine("error updating port: " + e.Message);
            }

            try
            {
                driver.Models.Update();             // enable all the models
                foreach (CModel model in driver.Models)
                {
                    model.Enabled = true;
                }
                driver.Models.Push();
            }
            catch (Exception e)
            {
                Console.WriteLine("error updating model: " + e.Message);
            }

            // find all sources
            driver.Sources.Update();
            var sources = new List <CSource>();

            foreach (CSource source in driver.Sources)
            {
                if (source.Online)
                {
                    sources.Add(source);
                }
            }

            foreach (var source in sources)
            {
                if (source is CSource.CMobilePhone)
                {
                    Console.WriteLine("found one phone");
                    CSource.CMobilePhone phone = source as CSource.CMobilePhone;
                    if (phone != null && phone.IsConnectorRequired)
                    {
                        //Form_Progress installConnectorProgress = new Form_Progress();
                        //installConnectorProgress.Text = "Installing connector";
                        //installConnectorProgress.Show();
                        //phone.InstallConnector(installConnectorProgress.Progress);
                        //installConnectorProgress.Close();
                        Console.WriteLine("installing connector");
                        phone.InstallConnector();
                        Console.WriteLine("finished installing connector");
                        //System.Windows.Forms.MessageBox.Show("Connector was installed, please wait until the device is connected");
                        //return;
                    }

                    try
                    {
                        Console.WriteLine("process device: " + source.Label);
                        Console.WriteLine("reading sms...");
                        var sms = ReadSms(source);
                        Console.WriteLine("finished reading sms");
                        Console.WriteLine("reading phone book...");
                        var contacts = ReadPhoneBook(source);
                        Console.WriteLine("finished reading phone book");
                        Console.WriteLine("reading call history...");
                        var calls = ReadCalls(source);
                        Console.WriteLine("finished reading call history");
                        Console.WriteLine("saving to db...");
                        SaveToDB(phone, contacts, calls, sms);
                        Console.WriteLine("finished saving to db");
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine("Oops, some error occured: " + ex.Message);
                    }
                }
                else if (source is CSource.CSIMCard)
                {
                    Console.WriteLine("process device: " + source.Label);
                    Console.WriteLine("reading file system...");
                    //string rootFolder = ReadFS(source);
                    string root       = @"G:\data\";
                    string rootFolder = Path.Combine(root, source.UniqueIdentifier);
                    Console.WriteLine("finished reading file system");
                    Console.WriteLine("saving to db...");
                    SaveToDB(source, rootFolder);
                    Console.WriteLine("finished saving to db");
                }
            }

            Console.ReadLine();
        }
Ejemplo n.º 11
0
 public void Save(CDriver user)
 {
     bdd.Entry(user).State = EntityState.Modified;
     bdd.SaveChanges();
 }
Ejemplo n.º 12
0
 /// <summary>
 /// Find键值
 /// </summary>
 /// <returns></returns>
 public void MoveKey(string xpath, string key) => CDriver.FindElement(By.XPath(xpath)).SendKeys(key);
Ejemplo n.º 13
0
 public List <CRide> GetAll(CDriver driver)
 {
     return(bdd.T_CRide.Where(p => p.Driver.Id == driver.Id).ToList());
 }
Ejemplo n.º 14
0
 public List <CRide> GetAllOfDay(CDriver driver)
 {
     return(bdd.T_CRide.Where(p => p.Driver.Id == driver.Id && DbFunctions.TruncateTime(p.ArrivalTime) >= DbFunctions.TruncateTime(DateTime.Now)).ToList());
 }
Ejemplo n.º 15
0
 public CRide GetDriverRide(CDriver driver)
 {
     return(bdd.T_CRide.Where(p => p.Driver == driver).SingleOrDefault());
 }