public IActionResult RestaurantOwnersShow() { LogRestaurant(); ClaimsPrincipal cp = this.User; var claims = cp.Claims.ToList(); var restId = Convert.ToInt32(claims.SingleOrDefault(p => p.Type == "RestaurantID").Value); var restaurantOwners = RestaurantsManager.GetRestauranOwnersByID(restId); List <OwnerModelView> viewRestaurantOwners = new List <OwnerModelView>(); foreach (RestaurantOwners rowner in restaurantOwners) { if (rowner.Request == false) { var ownerUser = UsersManager.GetUserByUserId(rowner.Owner.UserId); string fullName = $"{ownerUser.FirstName} {ownerUser.LastName}"; var viewOwner = new OwnerModelView { RestaurantId = rowner.RestaurantId, OwnerId = rowner.OwnerId, UserId = ownerUser.UserId, OwnerFullName = fullName, Active = rowner.Active, Status = rowner.Status, StartDate = (DateTime)rowner.StartDate, EndDate = rowner.EndDate, RequestFlag = rowner.Request, RequestStatus = rowner.RequestStatus }; viewRestaurantOwners.Add(viewOwner); } } ViewBag.RestaurantID = restId; return(View(viewRestaurantOwners)); }
//Edit Owner's details public IActionResult OwnerEdit(int id) { LogRestaurant(); ClaimsPrincipal cp = this.User; var claims = cp.Claims.ToList(); var restId = Convert.ToInt32(claims.SingleOrDefault(p => p.Type == "RestaurantID").Value); var restaurantOwner = RestaurantsManager.RestaurantByOwnerId(restId, id); var ownerUser = UsersManager.GetUserByUserId(restaurantOwner.Owner.UserId); string fullName = $"{ownerUser.FirstName} {ownerUser.LastName}"; var viewOwner = new OwnerModelView { RestaurantId = restaurantOwner.RestaurantId, OwnerId = restaurantOwner.OwnerId, UserId = ownerUser.UserId, OwnerFullName = fullName, Active = restaurantOwner.Active, Status = restaurantOwner.Status, StartDate = (DateTime)restaurantOwner.StartDate, EndDate = restaurantOwner.EndDate, RequestFlag = restaurantOwner.Request, RequestStatus = restaurantOwner.RequestStatus }; ViewBag.OwnerStatus = GetOwnerStatus(); return(View(viewOwner)); }
public async Task <IViewComponentResult> InvokeAsync(int id) { var restaurantOwners = RestaurantsManager.GetRestauranOwnersByID(id); List <OwnerModelView> viewRestaurantOwners = new List <OwnerModelView>(); foreach (RestaurantOwners rowner in restaurantOwners) { if (rowner.Request == true) { var ownerUser = UsersManager.GetUserByUserId(rowner.Owner.UserId); string fullName = $"{ownerUser.FirstName} {ownerUser.LastName}"; var viewOwner = new OwnerModelView { RestaurantId = rowner.RestaurantId, OwnerId = rowner.OwnerId, UserId = ownerUser.UserId, OwnerFullName = fullName, Active = rowner.Active, Status = rowner.Status, StartDate = (DateTime)rowner.StartDate, EndDate = rowner.EndDate, RequestFlag = rowner.Request, RequestStatus = rowner.RequestStatus }; viewRestaurantOwners.Add(viewOwner); } } return(View(viewRestaurantOwners)); }
public IActionResult OwnerEdit(OwnerModelView viewOwner) { LogRestaurant(); var userId = OwnersManager.GetUserIdByOwnerId(viewOwner.OwnerId); var authId = UsersManager.GetAuthIdByUserId(userId); var restaurantOwner = RestaurantsManager.RestaurantByOwnerId(viewOwner.RestaurantId, viewOwner.OwnerId); var authMatrix = UsersManager.GetAuthenticationMatrixByIDs(viewOwner.RestaurantId, authId); viewOwner.Status = GetOwnerStatusValue(viewOwner.Status); if (restaurantOwner.Active == false && viewOwner.Active == true) { if (viewOwner.Status == "Owner" || viewOwner.Status == "Primary Owner") { restaurantOwner.RequestStatus = "Approved"; if (authMatrix != null) { authMatrix.Role = "Owner"; UsersManager.UpdateAuthenticationMatrixByIDs(authMatrix); } else { var newAuthMatrix = new AuthenticationMatrix { AuthenticationId = authId, RestaurantId = viewOwner.RestaurantId, Role = "Owner" }; UsersManager.AddOwnerToAuthetication(newAuthMatrix); } } } else { if (restaurantOwner.Active == true && viewOwner.Active == false) { if (viewOwner.Status == "Owner" || viewOwner.Status == "Primary Owner") { authMatrix.Role = "OwnerLeave"; UsersManager.UpdateAuthenticationMatrixByIDs(authMatrix); } else { UsersManager.DeleteAuthMatrixByIds(viewOwner.RestaurantId, authId); } } } restaurantOwner.Status = viewOwner.Status; restaurantOwner.EndDate = viewOwner.EndDate; restaurantOwner.Active = viewOwner.Active; RestaurantsManager.UpdateRestaurantOwner(restaurantOwner); return(RedirectToAction("RestaurantOwnersShow")); }
public IActionResult OwnerDetails(int id) { LogRestaurant(); int restId = id; ClaimsPrincipal cp = this.User; var claims = cp.Claims.ToList(); var ownId = Convert.ToInt32(claims.SingleOrDefault(p => p.Type == "OwnerID").Value); var ownerRestaurant = RestaurantsManager.RestaurantByOwnerId(restId, ownId); var viewOwnerRestaurant = new OwnerModelView { Restaurant = ownerRestaurant.Restaurant.RestaurantName, RestaurantId = ownerRestaurant.RestaurantId, OwnerId = ownerRestaurant.OwnerId, Status = ownerRestaurant.Status, StartDate = (DateTime)ownerRestaurant.StartDate, EndDate = ownerRestaurant.EndDate, Active = ownerRestaurant.Active, RequestFlag = ownerRestaurant.Request, RequestStatus = ownerRestaurant.RequestStatus }; return(View(viewOwnerRestaurant)); }
public IActionResult OwnerApply(OwnerModelView viewOwner) { LogRestaurant(); bool newOwner = false; ClaimsPrincipal cp = this.User; var claims = cp.Claims.ToList(); var userId = Convert.ToInt32(claims.SingleOrDefault(p => p.Type == "UserID").Value); var ownId = Convert.ToInt32(claims.SingleOrDefault(p => p.Type == "OwnerID").Value); if (ownId == 0) { var owner = new Owners { UserId = userId }; OwnersManager.CreateOwner(owner); ownId = OwnersManager.GetOwnerIdByUserId(userId); newOwner = true; } var restaurants = RestaurantsManager.RestaurantsByOwnerId(ownId); bool newRestaurant = true; bool requestFlag = true; string status; string request; foreach (RestaurantOwners rest in restaurants) { if (viewOwner.RestaurantId == rest.RestaurantId) { newRestaurant = false; status = rest.Status; request = rest.RequestStatus; requestFlag = (bool)rest.Request; } } if (newRestaurant) { var restaurantOwner = new RestaurantOwners { OwnerId = ownId, RestaurantId = viewOwner.RestaurantId, RequestStatus = "on Hold", Request = true, Status = "Applicant", Active = false, }; RestaurantsManager.AddOwnerToRestaurant(restaurantOwner); if (newOwner) { TempData["Message"] = "You successfully applied for an Onwership. You need to Login again to upgrade your new credential!!"; TempData["ErrorMessage"] = null; return(RedirectToAction("Logout", "Account")); } else { TempData["Message"] = "You successfully applied for an Onwership!!"; TempData["ErrorMessage"] = null; return(RedirectToAction("Profile", "Account")); } } else { TempData["Message"] = null; TempData["ErrorMessage"] = "Sorry!! Your already applied to the Restaurant's ownership or you are one of the Restaurant's owners."; return(RedirectToAction("Profile", "Account")); } }