コード例 #1
0
        public static void AddOwnerToRestaurant(RestaurantOwners restaurantOwner)
        {
            var context = new TableReadyContext();

            context.RestaurantOwners.Add(restaurantOwner);
            context.SaveChanges();
        }
コード例 #2
0
        public static void UpdateRestaurantOwner(RestaurantOwners restaurantOwner)
        {
            var context = new TableReadyContext();
            var originalRestaurantOwner = context.RestaurantOwners.SingleOrDefault(p => p.RestaurantId == restaurantOwner.RestaurantId && p.OwnerId == restaurantOwner.OwnerId);

            originalRestaurantOwner.Request       = restaurantOwner.Request;
            originalRestaurantOwner.RequestStatus = restaurantOwner.RequestStatus;
            originalRestaurantOwner.StartDate     = restaurantOwner.StartDate;
            originalRestaurantOwner.EndDate       = restaurantOwner.EndDate;
            originalRestaurantOwner.Active        = restaurantOwner.Active;
            originalRestaurantOwner.Status        = restaurantOwner.Status;
            context.SaveChanges();
        }
コード例 #3
0
        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"));
            }
        }
コード例 #4
0
        public IActionResult RestaurantCreate(RestaurantCreateModelView viewRestaurant)
        {
            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);
            var             authId        = Convert.ToInt32(claims.SingleOrDefault(p => p.Type == "AuthID").Value);
            var             newRestaurant = RestaurantsManager.GetRestaurantIdByName(viewRestaurant.RestaurantName);

            if (newRestaurant == 0)
            {
                var restaurant = new Restaurants
                {
                    RestaurantName = viewRestaurant.RestaurantName,
                };
                if (ownId == 0)
                {
                    var owner = new Owners {
                        UserId = userId
                    };
                    OwnersManager.CreateOwner(owner);
                    ownId    = OwnersManager.GetOwnerIdByUserId(userId);
                    newOwner = true;
                }
                int restId          = RestaurantsManager.CreateRestaurant(restaurant);
                var restaurantOwner = new RestaurantOwners
                {
                    RestaurantId  = restId,
                    OwnerId       = ownId,
                    Status        = "Primary Owner",
                    Active        = true,
                    Request       = false,
                    RequestStatus = "Accepted",
                };
                RestaurantsManager.AddOwnerToRestaurant(restaurantOwner);
                var authMatrix = new AuthenticationMatrix
                {
                    AuthenticationId = authId,
                    RestaurantId     = restId,
                    Role             = "Owner"
                };
                UsersManager.AddOwnerToAuthetication(authMatrix);
                if (newOwner)
                {
                    TempData["Message"]      = "You successfully inserted a restaurant in the system. You need to Login again to upgrade your new credential!!";
                    TempData["ErrorMessage"] = null;
                    return(RedirectToAction("Logout", "Account"));
                }
                else
                {
                    TempData["Message"]      = "You successfully inserted a restaurant!!";
                    TempData["ErrorMessage"] = null;
                    return(RedirectToAction("Profile", "Account"));
                }
            }
            else
            {
                TempData["Message"]      = null;
                TempData["ErrorMessage"] = "Sorry!! The Restaurant's name is already registered. Choose another Restaurant's Name.";
                return(RedirectToAction("RestaurantCreate", "Account"));
            }
        }