Exemplo n.º 1
0
        public async Task <IActionResult> OnPostDelete(int?recipeId)
        {
            if (!recipeId.HasValue)
            {
                HasError          = true;
                ViewData["Error"] = "Δεν μπορείτε να περάσετε κενό ID.";
                return(Page());
            }

            RecipeHeader dbRecipeHeader = await recipeRepository.GetRecipeHeader(recipeId.Value);

            if (dbRecipeHeader is null)
            {
                HasError          = true;
                ViewData["Error"] = "Δεν υπάρχει εγγραφή με το ID που δόθηκε.";
                return(Page());
            }

            IEnumerable <RecipeDetail> dbRecipeDetails = await recipeRepository.GetRecipeDetails(dbRecipeHeader.Id);

            foreach (RecipeDetail recipeDetail in dbRecipeDetails)
            {
                if (!await recipeRepository.DeleteRecipeDetail(recipeDetail))
                {
                    HasError          = true;
                    ViewData["Error"] = "Δεν μπορέσαμε να σβήσουμε την εγγραφή σας.";
                    return(Page());
                }
            }

            if (!await recipeRepository.DeleteRecipeHeader(dbRecipeHeader))
            {
                HasError          = true;
                ViewData["Error"] = "Δεν μπορέσαμε να σβήσουμε την εγγραφή σας.";
                return(Page());
            }

            TempData["SuccessMessage"] = "Η διαγραφή του στοιχείου έγινε με επιτυχία.";

            return(RedirectToPage(Url.Content("~/Admin/RecipeList")));
        }
Exemplo n.º 2
0
        public async Task <JsonResult> DeleteDetailItem([FromBody] int recipeDetailId)
        {
            var dbRecipeDetail = await recipeRepository.GetRecipeDetail(recipeDetailId);

            if (dbRecipeDetail is null)
            {
                HasError     = true;
                ErrorMessage = "Το είδος που ζητήσατε να γίνει διαγραφή δεν υπάρχει στη λίστα.";
                return(new JsonResult(new { result = false, message = ErrorMessage }));
            }

            if (!await recipeRepository.DeleteRecipeDetail(dbRecipeDetail))
            {
                HasError     = true;
                ErrorMessage = "Κάτι πήγε στραβά και δεν μπορέσαμε να διαγράψουμε την εγγραφή σας.";
                return(new JsonResult(new { result = false, message = ErrorMessage }));
            }

            HasError       = false;
            SuccessMessage = "Η διαγραφή του είδους έγινε με επιτυχία.";
            return(new JsonResult(new { result = true, message = SuccessMessage }));
        }