1 | <!DOCTYPE html>
|
---|
2 | <html>
|
---|
3 | <head>
|
---|
4 | <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.5/dist/css/bootstrap.min.css" rel="stylesheet"
|
---|
5 | integrity="sha384-SgOJa3DmI69IUzQ2PVdRZhwQ+dy64/BUtbMJw1MZ8t5HZApcHrRKUc4W0kG879m7" crossorigin="anonymous">
|
---|
6 | <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.5/dist/js/bootstrap.bundle.min.js"
|
---|
7 | integrity="sha384-k6d4wzSIapyDyv1kpU366/PK5hCdSbCRGRCMv+eplOQJWyd1fbcAu9OCUj5zNLiq"
|
---|
8 | crossorigin="anonymous"></script>
|
---|
9 | <title>Number of Tracks per Customer</title>
|
---|
10 | </head>
|
---|
11 | <body class="d-flex bg-light">
|
---|
12 | {% include 'sidebar.html' %}
|
---|
13 | <div class="container mt-5">
|
---|
14 | <h1 class="mb-4 text-center">Invoice Created by Customer</h1>
|
---|
15 |
|
---|
16 | <form method="GET" action="" class="row g-3 mb-4">
|
---|
17 | <div class="col-md-4">
|
---|
18 | <label for="customer_id" class="form-label">Select Customer:</label>
|
---|
19 | <select name="customer_id" id="customer_id" class="form-select">
|
---|
20 | <option value="">All Customers</option>
|
---|
21 | {% for customer in customers %}
|
---|
22 | <option value="{{ customer.customer_id }}"
|
---|
23 | {% if request.GET.customer_id == customer.0|stringformat:'s' %}selected{% endif %}>
|
---|
24 | {{ customer.first_name }} {{ customer.last_name }}
|
---|
25 | </option>
|
---|
26 | {% endfor %}
|
---|
27 | </select>
|
---|
28 | </div>
|
---|
29 |
|
---|
30 | <div class="col-md-4">
|
---|
31 | <label for="invoice_date" class="form-label">Select Date:</label>
|
---|
32 | <input type="date" id="invoice_date" name="invoice_date" value="{{ request.GET.invoice_date }}"
|
---|
33 | class="form-control">
|
---|
34 | </div>
|
---|
35 |
|
---|
36 | <div class="col-md-4 d-flex align-items-end">
|
---|
37 | <button type="submit" class="btn btn-primary w-100">Filter</button>
|
---|
38 | </div>
|
---|
39 | </form>
|
---|
40 |
|
---|
41 | {% if not selected_customer_id %}
|
---|
42 | <div class="alert alert-warning" role="alert">
|
---|
43 | Please select a customer to see the results.
|
---|
44 | </div>
|
---|
45 | {% elif not data %}
|
---|
46 | <div class="alert alert-danger" role="alert">
|
---|
47 | No invoice found.
|
---|
48 | </div>
|
---|
49 | {% else %}
|
---|
50 | <div class="container">
|
---|
51 | <div class="row col-3 justify-content-between mb-3">
|
---|
52 | <div class="col-6 font-weight-bold">
|
---|
53 | Date of Invoice
|
---|
54 | </div>
|
---|
55 | <div class="col-6 text-end font-weight-bold px-4">
|
---|
56 | Price
|
---|
57 | </div>
|
---|
58 | </div>
|
---|
59 | <ul class="row list-group col-3">
|
---|
60 | {% for row in data %}
|
---|
61 | <li class="list-group-item d-flex justify-content-between align-items-center">
|
---|
62 | <div class="col-6">
|
---|
63 | {{ row.invoice_date }}
|
---|
64 | </div>
|
---|
65 | <div class="col-6 text-end ">
|
---|
66 | <span class="badge bg-success rounded-pill">${{ row.total }}</span>
|
---|
67 | </div>
|
---|
68 | </li>
|
---|
69 | {% empty %}
|
---|
70 | <li class="list-group-item">No invoices found for this customer and date.</li>
|
---|
71 | {% endfor %}
|
---|
72 | </ul>
|
---|
73 | </div>
|
---|
74 | <div class="col-3 my-3">
|
---|
75 | <div class="alert alert-success" role="alert">
|
---|
76 | Total money spend: ${{ total_sum }}
|
---|
77 | </div>
|
---|
78 | </div>
|
---|
79 | {% endif %}
|
---|
80 | </div>
|
---|
81 |
|
---|
82 | </body>
|
---|
83 | </html>
|
---|