コード例 #1
0
        public ActionResult Edit(int id, BusVehicleModel model)
        {
            try
            {
                // TODO: Add update logic here
                // Get all states again
                var times = GetAllTimesPerHour();

                // Set these states on the model. We need to do this because
                // only the selected value from the DropDownList is posted back, not the whole
                // list of states.
                model.DepartureTimes = GetSelectListItems(times);

                BusVehicle busVehicle = context.BusVehicles.Where(some => some.Id == model.Id).Single <BusVehicle>();
                busVehicle.Name          = model.Name;
                busVehicle.AC            = model.AC;
                busVehicle.Fare          = model.Fare;
                busVehicle.DepartureTime = model.DepartureTime;
                busVehicle.RouteID       = model.RouteID;

                context.SubmitChanges();

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
コード例 #2
0
        public ActionResult Delete(int id, BusVehicleModel model)
        {
            try
            {
                // TODO: Add delete logic here
                BusVehicle busVehicle = context.BusVehicles.Where(some => some.Id == model.Id).Single <BusVehicle>();

                context.BusVehicles.DeleteOnSubmit(busVehicle);
                context.SubmitChanges();

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
コード例 #3
0
        public ActionResult Create(BusVehicleModel model)
        {
            try
            {
                // TODO: Add insert logic here

                // Get all states again
                var times   = AppConstants.HOURS;
                var classes = AppConstants.BusClasses;

                // Set these states on the model. We need to do this because
                // only the selected value from the DropDownList is posted back, not the whole
                // list of states.
                //model.DepartureTimes = GetSelectListItems(times.Keys);
                //ViewBag.Hours = times;
                model.Classes = GetSelectListItems(classes);

                BusVehicle busVehicle = new BusVehicle()
                {
                    Name          = model.Name,
                    Class         = model.Class,
                    Capacity      = model.Capacity,
                    Fare          = model.Fare,
                    DepartureTime = DateTime.Parse(model.DepartureTime),
                    RouteID       = model.RouteID
                };

                context.BusVehicles.InsertOnSubmit(busVehicle);
                context.SubmitChanges();

                return(RedirectToAction("Index"));
            }
            catch
            {
                model = new BusVehicleModel();
                PrepareBusVehicle(model);

                // Create a list of SelectListItems so these can be rendered on the page
                //model.DepartureTimes = GetSelectListItems(AppConstants.HOURS);
                //ViewBag.Hours = AppConstants.HOURS;
                model.Classes = GetSelectListItems(AppConstants.BusClasses);

                return(View(model));
            }
        }
コード例 #4
0
        public ActionResult Create(BusVehicleModel model)
        {
            try
            {
                // TODO: Add insert logic here

                // Get all states again
                var times = GetAllTimesPerHour();

                // Set these states on the model. We need to do this because
                // only the selected value from the DropDownList is posted back, not the whole
                // list of states.
                model.DepartureTimes = GetSelectListItems(times);

                BusVehicle busVehicle = new BusVehicle()
                {
                    Name          = model.Name,
                    AC            = model.AC,
                    Fare          = model.Fare,
                    DepartureTime = model.DepartureTime,
                    RouteID       = model.RouteID
                };

                context.BusVehicles.InsertOnSubmit(busVehicle);
                context.SubmitChanges();

                return(RedirectToAction("Index"));
            }
            catch
            {
                model = new BusVehicleModel();
                PrepareBusVehicle(model);

                // Create a list of SelectListItems so these can be rendered on the page
                model.DepartureTimes = GetSelectListItems(GetAllTimesPerHour());

                return(View(model));
            }
        }
コード例 #5
0
        private void BusVehicleSeed()
        {
            OperationDataContext context = new OperationDataContext();

            var bandung = new PlaceModel {
                Name = "Bandung"
            };
            var yogyakarta = new PlaceModel {
                Name = "Yogyakarta"
            };
            var curup = new PlaceModel {
                Name = "Curup"
            };
            var surabaya = new PlaceModel {
                Name = "Surabaya"
            };
            var denpasar = new PlaceModel {
                Name = "Denpasar"
            };

            var places = new List <PlaceModel>()
            {
                bandung, yogyakarta, curup, surabaya, denpasar
            };

            List <RouteModel> busRoutes = new List <RouteModel>();

            // Generate list of busRoute
            foreach (var origin in places)
            {
                foreach (var destination in places)
                {
                    if (origin != destination)
                    {
                        busRoutes.Add(new RouteModel {
                            OriginName = origin.Name, DestinationName = destination.Name
                        });
                    }
                }
            }

            if (context.Places.Count() == 0)
            {
                // Insert all places above to database
                foreach (var item in places)
                {
                    Place place = new Place()
                    {
                        Name = item.Name
                    };

                    context.Places.InsertOnSubmit(place);
                    context.SubmitChanges();
                }

                // Insert all busRoute to database
                foreach (var item in busRoutes)
                {
                    Route route = new Route()
                    {
                        Origin      = item.OriginName,
                        Destination = item.DestinationName
                    };

                    context.Routes.InsertOnSubmit(route);
                    context.SubmitChanges();
                }
            }

            if (context.BusVehicles.Count() == 0)
            {
                var dates  = DateTimeGenerator.GetDaysInRange(DateTime.Today, DateTime.Today.AddDays(60));
                var busses = new List <BusVehicleModel>();

                var busNames = new List <string>()
                {
                    "Primajasa", "MGI", "Budiman", "Putra Raflesia", "Lorena", "Haryanto"
                };
                var busClasses = AppConstants.BusClasses;

                foreach (DateTime date in dates)
                {
                    //var tes = date;
                    for (double i = 0; i < 24; i += 2)
                    {
                        foreach (var route in busRoutes)
                        {
                            int randName  = rand.Next(busNames.Count);
                            int randClass = rand.Next(busClasses.Count);

                            busses.Add(BusGenerator.GenerateBus(route,
                                                                date.AddHours(rand.Next(0, 24)).AddMinutes(rand.Next(0, 60)),
                                                                busNames[randName],
                                                                busClasses[randClass]));
                        }
                    }
                }

                // Insert all busvehicle to database
                // Belum bisa, masih ada errornya
                foreach (var item in busses)
                {
                    BusVehicle busVehicle = new BusVehicle()
                    {
                        Name          = item.Name,
                        Class         = item.Class,
                        DepartureTime = DateTime.Parse(item.DepartureTime),
                        RouteID       = item.RouteID
                    };

                    //context.BusVehicles.InsertOnSubmit(busVehicle);
                    //context.SubmitChanges();
                }
            }
        }