Example #1
0
def __create_if_post_method(context, request):
    if request.method == "POST":
        try:
            customer = __get_create_customer_dto_from_request(request)
            fooddelivery_service_container.customer_management_service().create(customer)
            context["saved"] = True
        except Exception as c:
            print(c)
            context["saved"] = False
Example #2
0
def __edit_if_post_method(context, customer_id: int, request: HttpRequest) -> CustomersDetailsDto:
    if request.method == "POST":
        try:
            customer = __get_edit_customer_dto_from_request(customer_id, request)
            fooddelivery_service_container.customer_management_service().edit(customer_id, customer)
            context["saved"] = True
            return __get_customer_details_dto_or_raise_404(customer_id)
        except Exception as c:
            print(c)
            context["saved"] = False
Example #3
0
def home_customer(request):
    customer = fooddelivery_service_container.customer_management_service().list()
    context = {
        "title": "Customer",
        "customer": customer
    }
    return render(request, "fooddelivery/customer/home_customer.html", context)
Example #4
0
def create_meal(request):
    customer = fooddelivery_service_container.customer_management_service(
    ).get_all_for_select_list()
    menuitem = fooddelivery_service_container.menuitem_management_service(
    ).get_all_for_select_list()
    context = {"customer": customer, "menuitem": menuitem}
    __create_if_post_method(context, request)
    if request.method == "POST" and context["saved"]:
        return redirect("home")
    return render(request, "fooddelivery/meal/create_meal.html", context)
Example #5
0
def edit_meal(request, meal_id):
    meal_details_dto = __get_meal_details_dto_or_raise_404(meal_id)
    customer = fooddelivery_service_container.customer_management_service(
    ).get_all_for_select_list()
    menuitem = fooddelivery_service_container.menuitem_management_service(
    ).get_all_for_select_list()
    context = {
        "title": f"Edit Order {meal_details_dto.status}",
        "meal_id": meal_id,
        "order": meal_details_dto,
        "customer": customer,
        "menuitem": menuitem
    }
    new_meal_details_dto = __edit_if_post_method(context, meal_id, request)
    if new_meal_details_dto is not None:
        context["order"] = new_meal_details_dto
    return render(request, "fooddelivery/meal/edit_meal.html", context)
Example #6
0
def __get_customer_details_dto_or_raise_404(customer_id) -> CustomersDetailsDto:
    try:
        customer = fooddelivery_service_container.customer_management_service().get(customer_id=customer_id)
    except Customer.DoesNotExist:
        raise Http404("The requested customer does not exist")
    return customer