show sales & subscriptions

This commit is contained in:
vinchent 2024-08-22 09:56:14 +02:00
parent 1984024394
commit 1bedaaeecf
4 changed files with 38 additions and 2 deletions

View File

@ -381,7 +381,25 @@ func (app *application) AllSubscriptions(w http.ResponseWriter, r *http.Request)
}
func (app *application) ShowSale(w http.ResponseWriter, r *http.Request) {
if err := app.renderTemplate(w, r, "sale", &templateData{}); err != nil {
stringMap := make(map[string]string)
stringMap["title"] = "Sale"
stringMap["cancel"] = "/admin/all-sales"
if err := app.renderTemplate(w, r, "sale", &templateData{
StringMap: stringMap,
}); err != nil {
app.errorLog.Println(err)
}
}
func (app *application) ShowSubscriptions(w http.ResponseWriter, r *http.Request) {
stringMap := make(map[string]string)
stringMap["title"] = "Subscriptions"
stringMap["cancel"] = "/admin/all-subscriptions"
if err := app.renderTemplate(w, r, "sale", &templateData{
StringMap: stringMap,
}); err != nil {
app.errorLog.Println(err)
}
}

View File

@ -18,6 +18,7 @@ func (app *application) routes() http.Handler {
mux.Get("/all-sales", app.AllSales)
mux.Get("/all-subscriptions", app.AllSubscriptions)
mux.Get("/sales/{id}", app.ShowSale)
mux.Get("/subscriptions/{id}", app.ShowSubscriptions)
})
// mux.Post("/virtual-terminal-payment-succeeded", app.VirtualTerminalPaymentSucceeded)

View File

@ -1,11 +1,21 @@
{{template "base" .}}
{{define "title"}}
Sale
{{index .StringMap "title"}}
{{end}}
{{define "content"}}
<h2 class="mt-5">Sale</h2>
<hr>
<div>
<strong>Order No:</strong> <span id="order-no"></span><br>
<strong>Customer:</strong> <span id="customer"></span><br>
<strong>Product:</strong> <span id="product"></span><br>
<strong>Quantity:</strong> <span id="quantity"></span><br>
<strong>Total Sale:</strong> <span id="amount"></span><br>
</div>
<hr>
<a href='{{index .StringMap "cancel"}}' class="btn btn-info">Cancel</a>
<a href="#!" class="btn btn-warning">Refund Order</a>
{{end}}
{{define "js"}}

View File

@ -15,6 +15,13 @@ export function showInfo(api) {
.then(response => response.json())
.then(function (data) {
console.log(data);
if (data) {
document.getElementById("order-no").innerHTML = data.id
document.getElementById("customer").innerHTML = data.customer.first_name + " " + data.customer.last_name
document.getElementById("product").innerHTML = data.widget.name
document.getElementById("quantity").innerHTML = data.quantity
document.getElementById("amount").innerHTML = formatCurrency(data.transaction.amount)
}
});
}