Пример #1
0
        public List <string> ProcessDrive([FromBody] KomentarVozacPrenos k)
        {
            Drive             por         = new Drive();
            string            ss1         = System.Web.Hosting.HostingEnvironment.MapPath("~/App_Data/Drives.xml");
            string            drv         = System.Web.Hosting.HostingEnvironment.MapPath("~/App_Data/Drivers.xml");
            string            adm         = System.Web.Hosting.HostingEnvironment.MapPath("~/App_Data/Admins.xml");
            List <Dispatcher> dispatchers = xml.ReadDispatcher(adm);
            List <Drive>      drives      = xml.ReadDrives(ss1);
            List <Driver>     drivers     = xml.ReadDrivers(drv);

            ClosestDistance cd = new ClosestDistance();

            Driver     driver   = new Driver();
            Dispatcher dispacer = new Dispatcher();

            List <Tuple <Point, string> > proslediListu = new List <Tuple <Point, string> >();


            foreach (Driver d in drivers)
            {
                if (!d.Blocked && !d.Zauzet && (d.Car.CarType == k.voz.CarType))
                {
                    Point poi = new Point();
                    poi.X = Double.Parse(d.Location.X);
                    poi.Y = Double.Parse(d.Location.Y);
                    proslediListu.Add(new Tuple <Point, string>(poi, d.UserName));
                }
            }

            List <string> najblizi = new List <string>();

            if (proslediListu.Any())
            {
                Point ip = new Point();
                ip.X     = Double.Parse(k.voz.Arrival.X);
                ip.Y     = Double.Parse(k.voz.Arrival.Y);
                najblizi = cd.OrderByDistance(proslediListu, ip);
            }

            return(najblizi);
        }
Пример #2
0
        public bool Comment([FromBody] KomentarVozacPrenos k)
        {
            bool   por = false;
            string ss1 = System.Web.Hosting.HostingEnvironment.MapPath("~/App_Data/Drives.xml");
            string drv = System.Web.Hosting.HostingEnvironment.MapPath("~/App_Data/Drivers.xml");

            List <Drive>  drives  = xml.ReadDrives(ss1);
            List <Driver> drivers = xml.ReadDrivers(drv);

            foreach (Drive dri in drives)
            {
                if (dri.Driver.UserName == k.voz.Driver.UserName && DateTime.Parse(dri.DataAndTime) == DateTime.Parse(k.voz.DataAndTime))
                {
                    dri.Comment.Date        = DateTime.Parse(String.Format("{0:F}", DateTime.Now));
                    dri.Comment.Description = k.KommOpis;
                    dri.Comment.Rating      = 0;
                    dri.Comment.user        = k.voz.Driver.UserName;
                    dri.Driver.Zauzet       = false;
                    dri.Status = Enums.DriveStatus.Unsuccessful;
                    por        = true;
                    break;
                }
            }
            if (por)
            {
                foreach (Driver kp in drivers)
                {
                    if (kp.UserName == k.voz.Driver.UserName)
                    {
                        kp.Zauzet = false;
                        break;
                    }
                }
            }
            xml.WriteDrives(drives, ss1);
            xml.WriteDrivers(drivers, drv);
            return(por);
        }