public IActionResult UpdateAssignedDriver(int id)
        {
            if (HttpContext.Session.GetString("UserRole") == "1")
            {
                var assignDriver = _context.AssignedDrivers.
                                   AsNoTracking().Where(s => s.AssignedDriverId == id).
                                   FirstOrDefault();

                var driver = _context.Drivers.AsNoTracking().ToList();
                ViewBag.Driver = new SelectList(driver, "DriverId", "Name");
                var bus = _context.Buses.AsNoTracking().ToList();
                ViewBag.Bus = new SelectList(bus, "BusId", "CoachName");


                AssignedDriverVm a = new AssignedDriverVm()
                {
                    DriverId         = assignDriver.DriverId,
                    BusId            = assignDriver.BusId,
                    AssignedDriverId = assignDriver.AssignedDriverId
                };
                return(View(a));
            }
            else
            {
                return(RedirectToAction("Index", "Home"));
            }
        }
        public IActionResult DeleteAssignedDriver(int id)
        {
            if (HttpContext.Session.GetString("UserRole") == "1")
            {
                var assignDriver = _context.AssignedDrivers.
                                   AsNoTracking().Include(s => s.Bus).
                                   Include(s => s.Driver).Where(s => s.AssignedDriverId == id).
                                   FirstOrDefault();


                AssignedDriverVm a = new AssignedDriverVm()
                {
                    DriverName       = assignDriver.Driver.Name,
                    CoachName        = assignDriver.Bus.CoachName,
                    BusNumber        = assignDriver.Bus.BusNumber,
                    DriverMobile     = assignDriver.Driver.Mobile,
                    TotalSeat        = assignDriver.Bus.TotalSeat,
                    AssignedDriverId = assignDriver.AssignedDriverId
                };


                return(View(a));
            }
            else
            {
                return(RedirectToAction("Index", "Home"));
            }
        }
 public IActionResult AssignBusList()
 {
     if (HttpContext.Session.GetString("UserRole") != null)
     {
         var assignDriverList = _context.AssignedDrivers.
                                AsNoTracking().Include(s => s.Bus).
                                Include(s => s.Driver).ToList();
         var sent = new List <AssignedDriverVm>();
         int c    = 1;
         foreach (var item in assignDriverList)
         {
             AssignedDriverVm a = new AssignedDriverVm()
             {
                 DriverName       = item.Driver.Name,
                 CoachName        = item.Bus.CoachName,
                 AssignedDriverId = item.AssignedDriverId,
                 Serial           = c
             };
             c++;
             sent.Add(a);
         }
         return(View(sent));
     }
     else
     {
         return(RedirectToAction("Index", "Home"));
     }
 }
        public IActionResult DeleteAssignedDriver(AssignedDriverVm id2)
        {
            var assignDriver = _context.AssignedDrivers.
                               AsNoTracking().Where(s => s.AssignedDriverId == id2.AssignedDriverId).
                               FirstOrDefault();

            _context.AssignedDrivers.Remove(assignDriver);
            _context.SaveChanges();
            return(RedirectToAction("AssignBusList"));
        }
        public IActionResult UpdateAssignedDriver(AssignedDriverVm ab)
        {
            AssignedDriver a = new AssignedDriver()
            {
                DriverId         = ab.DriverId,
                BusId            = ab.BusId,
                AssignedDriverId = ab.AssignedDriverId
            };

            _context.AssignedDrivers.Update(a);
            _context.SaveChanges();

            return(RedirectToAction("AssignBusList"));
        }
        public IActionResult AssignBus(AssignedDriverVm a)
        {
            var sa = _context.AssignedDrivers.AsNoTracking().
                     Where(s => s.BusId == a.BusId && s.DriverId == a.DriverId).FirstOrDefault();

            if (sa != null)
            {
                ViewBag.SMS = "You have Already Asssigned  driver for this bus";
                return(View());
            }

            AssignedDriver ab = new AssignedDriver()
            {
                AssignedDriverId = 0,
                BusId            = a.BusId,
                DriverId         = a.DriverId
            };

            _context.AssignedDrivers.Add(ab);
            _context.SaveChanges();
            return(RedirectToAction("AssignBusList"));
        }