Exemplo n.º 1
0
        public Collection <T> Select()
        {
            RouteFactory       routeFactory  = new RouteFactory();
            RouteTable <Route> instanceRoute = (RouteTable <Route>)routeFactory.GetRouteInstance();

            DriverFactory        driverFactory  = new DriverFactory();
            DriverTable <Driver> instanceDriver = (DriverTable <Driver>)driverFactory.GetDriverInstance();

            VehicleFactory         vehicleFactory  = new VehicleFactory();
            VehicleTable <Vehicle> instanceVehicle = (VehicleTable <Vehicle>)vehicleFactory.GetVehicleInstance();


            XDocument      xDoc       = XDocument.Load(Configuration.XMLFILEPATH);
            Collection <T> timetables = new Collection <T>();

            List <XElement> elements = xDoc.Descendants("Timetables").Descendants("Timetable").ToList();

            foreach (var element in elements)
            {
                Timetable timetable = new Timetable();
                timetable.id        = int.Parse(element.Attribute("id").Value);
                timetable.name      = element.Attribute("name").Value;
                timetable.departure = DateTime.Parse(element.Attribute("departure").Value);
                timetable.arrival   = DateTime.Parse(element.Attribute("arrival").Value);
                timetable.route     = instanceRoute.Select(int.Parse(element.Attribute("routeId").Value));
                timetable.driver    = instanceDriver.Select(int.Parse(element.Attribute("driverId").Value));
                timetable.vehicle   = instanceVehicle.Select(int.Parse(element.Attribute("vehicleId").Value));

                timetables.Add((T)timetable);
            }

            return(timetables);
        }
Exemplo n.º 2
0
        public IEnumerable <Driver> Get()
        {
            DriverFactory        driverFactory  = new DriverFactory();
            DriverTable <Driver> instanceDriver = (DriverTable <Driver>)driverFactory.GetDriverInstance();

            return(instanceDriver.Select());
        }
Exemplo n.º 3
0
        public Driver Get(int id)
        {
            DriverFactory        driverFactory  = new DriverFactory();
            DriverTable <Driver> instanceDriver = (DriverTable <Driver>)driverFactory.GetDriverInstance();

            return(instanceDriver.Select(id));
        }
Exemplo n.º 4
0
        public Overview Get()
        {
            SessionFactory          sessionsFactory = new SessionFactory();
            SessionsTable <Session> instance        = (SessionsTable <Session>)sessionsFactory.GetSessionInstance();
            var list  = Request.Headers.ToList();
            var token = list.Where(a => a.Key == "token")?.FirstOrDefault().Value.FirstOrDefault()?.Replace("\"", string.Empty);

            if (token == null)
            {
                return(new Overview());
            }
            var dispatcher = instance.SelectDispatcherSession(token);
            var driver     = instance.SelectDriverSession(token);
            var manager    = instance.SelectManagerSession(token);

            if (dispatcher == null && driver == null && manager == null)
            {
                return(new Overview());
            }

            Overview obj = new Overview();

            RequestFactory         requestFactory  = new RequestFactory();
            RequestTable <Request> instanceRequest = (RequestTable <Request>)requestFactory.GetRequestInstance();
            var requests = instanceRequest.Select();

            obj.acceptedRequests = requests.Where(r => r.state == RequestState.ACCEPTED).Count();
            obj.declinedRequests = requests.Where(r => r.state == RequestState.DECLINED).Count();
            obj.newRequests      = requests.Where(r => r.state == RequestState.NEW).Count();


            decimal              salary         = 0;
            DriverFactory        driverFactory  = new DriverFactory();
            DriverTable <Driver> instanceDriver = (DriverTable <Driver>)driverFactory.GetDriverInstance();
            var listDrivers = instanceDriver.Select();

            obj.driverCount = listDrivers.Count();
            salary         += listDrivers.Sum(dr => dr.salary);

            DispatcherFactory            dispatcherFactory  = new DispatcherFactory();
            DispatcherTable <Dispatcher> instanceDispatcher = (DispatcherTable <Dispatcher>)dispatcherFactory.GetDispatcherInstance();
            var listDispatchers = instanceDispatcher.Select();

            obj.dispatcherCount = listDispatchers.Count();
            salary += listDispatchers.Sum(dis => dis.salary);

            obj.monthSalary = salary;


            VehicleFactory vehicleFactory  = new VehicleFactory();
            var            instanceVehicle = vehicleFactory.GetVehicleInstance();

            obj.vehicleCount = instanceVehicle.Select().Count();

            FailureFactory         failureFactory  = new FailureFactory();
            FailureTable <Failure> instanceFailure = (FailureTable <Failure>)failureFactory.GetFailureInstance();
            var      listFailures = instanceFailure.Select();
            DateTime lastMonth    = DateTime.Now.AddMonths(-1);

            obj.failurestInLastMonth = listFailures.Where(d => d.created > lastMonth).Count();
            obj.failures             = listFailures.Count();
            return(obj);
        }