from flask import Blueprint, Response, request

from functions.ManualOrders.CsvOrders import csvOrders
from functions.ManualOrders.ManualOrders import manualOrder
from functions.OrderInvoices.Invoices import orderCharge, orderChargeInvoices
from functions.Orders import updateUserOrders
from functions.Response import sendResponse
from functions.Shipments.Main import submitOrderShipment

ordersBlueprint = Blueprint("orders", __name__)


@ordersBlueprint.get("/sync")
def syncOrders():
    return sendResponse(updateUserOrders, request)

@ordersBlueprint.post("/new")
def addManualOrders():
    return sendResponse(manualOrder, request)

@ordersBlueprint.post("/new/csv")
def addCsvOrders():
    return sendResponse(csvOrders, request)

# @ordersBlueprint.post("/<orderId>/charge")
# def orderChargeEndpoint(orderId):
#     return sendResponse(orderCharge, request, id=orderId)

@ordersBlueprint.post("/chargeInvoices")
def orderChargeInvoicesEndpoint():
    return sendResponse(orderChargeInvoices, request, authRequired=False)


@ordersBlueprint.post("/submit-shipment")
def submitOrderShipmentEndpoint():
    return sendResponse(submitOrderShipment, request, authRequired=False)