public ActionResult Index() { var store = new Microsoft.AspNet.Identity.EntityFramework.UserStore<NetCafeWeb.Models.ApplicationUser>(new NetCafeWeb.Models.ApplicationDbContext()); var manager = new Microsoft.AspNet.Identity.UserManager<NetCafeWeb.Models.ApplicationUser>(store); var a = manager.IsInRoleAsync(User.Identity.GetUserId(), "Admin"); bool isAdmin = a.Result; IRepository<User> userRepository = new UserRepository(); IEnumerable<User> users = userRepository.List; ViewBag.users = users.Cast<User>().ToList(); IRepository<PC> pcRepository = new PCRepository(); IEnumerable<PC> pcs = pcRepository.List; ViewBag.pcs = pcs.Cast<PC>().ToList(); if (isAdmin) { //show het order IRepository<Order> repository = new OrderRepository(); IEnumerable<Order> order = repository.List; ViewBag.orders = order.Cast<Order>().ToList(); //FormsAuthentication.SetAuthCookie("asd", false); return View(); } else //La supervisor { //Lay supervior user String supervisorName = User.Identity.Name; //Lay supervior id UserRepository repo = new UserRepository(); NetCafeRepository netRepo = new NetCafeRepository(); OrderRepository orderRepo = new OrderRepository(); int supervisorId = repo.getIDByUsername(supervisorName); //Lay netcafe id int netID = netRepo.getNetCafeIDByName(supervisorId); //hien thi order cua netcafe id List<Order> orders = orderRepo.getOrderByNetCafe(netID); ViewBag.orders = orders; } return View(); }
public ActionResult Index(int? id) { var store = new Microsoft.AspNet.Identity.EntityFramework.UserStore<NetCafeWeb.Models.ApplicationUser>(new NetCafeWeb.Models.ApplicationDbContext()); var manager = new Microsoft.AspNet.Identity.UserManager<NetCafeWeb.Models.ApplicationUser>(store); var a = manager.IsInRoleAsync(User.Identity.GetUserId(), "Admin"); //var b = manager.IsInRoleAsync(User.Identity.GetUserId(), "Supervisor"); bool isAdmin = a.Result; a = manager.IsInRoleAsync(User.Identity.GetUserId(), "Supervisor"); bool isSupervisor = a.Result; List<PC> PCList = new List<PC>(); List<NetCafe> NetList = new List<NetCafe>(); if (isSupervisor) { string username = User.Identity.Name; NetList = PCService.GetManageNet(username); int selectedNetID = 0; if (NetList != null && NetList.Count > 0) { foreach (NetCafe netCafe in NetList) { PCList = PCService.FindByNetID(netCafe.NetCafeID); selectedNetID = netCafe.NetCafeID; } } var query = PCList.OrderBy(p => p.PCStatus).ThenBy(p => p.PCName).ThenBy(p => p.Price); ViewBag.PCList = query.ToList(); ViewBag.NetList = NetList; ViewBag.Role = "Supervisor"; return View(); } else { if (id != null && id > 0) { PCList = PCService.FindByNetID(id.Value); ViewBag.pcList = PCList; ViewBag.SelectedNetcafe = PCService.GetNetCafeByID(id.Value); } else { PCList = PCService.GetPCList(); ViewBag.pcList = PCList; } var query = PCList.OrderBy(p => p.NetCafeID).ThenBy(p => p.PCStatus).ThenBy(p => p.PCName).ThenBy(p => p.Price); ViewBag.PCList = query.ToList(); ViewBag.NetList = PCService.GetNetList(); ViewBag.Role = "Admin"; return View(); } }