source: StockMaster/Views/Details.cshtml@ dfe03b8

main
Last change on this file since dfe03b8 was dfe03b8, checked in by Ceyda <ceyda.huseini@…>, 4 days ago

Initialize StockMaster project

  • Property mode set to 100644
File size: 8.5 KB
Line 
1@model StockMaster.Models.Sale
2@{
3 ViewData["Title"] = "Sale Details";
4}
5
6<div class="row mb-4">
7 <div class="col-12">
8 <h2><i class="fas fa-receipt"></i> Sale Details</h2>
9 <nav aria-label="breadcrumb">
10 <ol class="breadcrumb">
11 <li class="breadcrumb-item"><a href="/">Home</a></li>
12 <li class="breadcrumb-item"><a href="/Sale/Index">Sales</a></li>
13 <li class="breadcrumb-item active">Sale #@Model.SaleId</li>
14 </ol>
15 </nav>
16 </div>
17</div>
18
19<div class="row">
20 <div class="col-md-8">
21 <div class="card mb-4">
22 <div class="card-header">
23 <i class="fas fa-info-circle"></i> Sale Information
24 </div>
25 <div class="card-body">
26 <div class="row mb-3">
27 <div class="col-md-6">
28 <label class="text-muted small mb-1">Sale Number</label>
29 <h5><strong>#@Model.SaleId</strong></h5>
30 </div>
31 <div class="col-md-6">
32 <label class="text-muted small mb-1">Date & Time</label>
33 <h5>
34 <i class="fas fa-calendar me-2"></i>
35 @Model.DateTime.ToString("dd.MM.yyyy HH:mm")
36 </h5>
37 </div>
38 </div>
39
40 <div class="row mb-3">
41 <div class="col-md-6">
42 <label class="text-muted small mb-1">Customer</label>
43 <h5>
44 @if (Model.Customer != null)
45 {
46 <span>
47 <i class="fas fa-user me-2"></i>
48 @Model.Customer.Name
49 </span>
50 }
51 else
52 {
53 <span class="text-muted">Not specified</span>
54 }
55 </h5>
56 </div>
57 <div class="col-md-6">
58 <label class="text-muted small mb-1">Warehouse</label>
59 <h5>
60 <i class="fas fa-warehouse me-2"></i>
61 @Model.Warehouse.Name
62 </h5>
63 </div>
64 </div>
65
66 <div class="row">
67 <div class="col-md-6">
68 <label class="text-muted small mb-1">Sold By</label>
69 <h5>
70 @if (Model.User != null)
71 {
72 <span class="badge bg-info fs-6">
73 @Model.User.FullName
74 </span>
75 }
76 else
77 {
78 <span class="text-muted">Not specified</span>
79 }
80 </h5>
81 </div>
82 </div>
83 </div>
84 </div>
85
86 <div class="card">
87 <div class="card-header">
88 <i class="fas fa-list"></i> Sale Items
89 </div>
90 <div class="card-body">
91 <div class="table-responsive">
92 <table class="table table-bordered">
93 <thead class="table-light">
94 <tr>
95 <th>Product</th>
96 <th class="text-center">Quantity</th>
97 <th class="text-end">Unit Price</th>
98 <th class="text-end">Total</th>
99 </tr>
100 </thead>
101 <tbody>
102 @foreach (var item in Model.SaleItems)
103 {
104 <tr>
105 <td>
106 <strong>@item.Product.Name</strong>
107 <br>
108 <small class="text-muted">SKU: @item.Product.Sku</small>
109 </td>
110 <td class="text-center">
111 <span class="badge bg-primary">@item.Quantity</span>
112 </td>
113 <td class="text-end">
114 @item.UnitPriceAtSale.ToString("N2") MKD
115 </td>
116 <td class="text-end">
117 <strong>@((item.Quantity * item.UnitPriceAtSale).ToString("N2")) MKD</strong>
118 </td>
119 </tr>
120 }
121 </tbody>
122 <tfoot>
123 <tr class="table-light">
124 <td colspan="3" class="text-end">
125 <strong>TOTAL:</strong>
126 </td>
127 <td class="text-end">
128 <h5 class="mb-0 text-success">
129 <strong>@Model.TotalAmount.ToString("N2") MKD</strong>
130 </h5>
131 </td>
132 </tr>
133 </tfoot>
134 </table>
135 </div>
136 </div>
137 </div>
138 </div>
139
140 <div class="col-md-4">
141 <div class="card mb-3">
142 <div class="card-header">
143 <i class="fas fa-calculator"></i> Summary
144 </div>
145 <div class="card-body">
146 <div class="d-flex justify-content-between mb-2">
147 <span>Product Types:</span>
148 <strong>@Model.SaleItems.Count</strong>
149 </div>
150 <div class="d-flex justify-content-between mb-2">
151 <span>Total Quantity:</span>
152 <strong>@Model.SaleItems.Sum(i => i.Quantity)</strong>
153 </div>
154 <hr>
155 <div class="d-flex justify-content-between">
156 <h5>Total Amount:</h5>
157 <h5 class="text-success">
158 <strong>@Model.TotalAmount.ToString("N2") MKD</strong>
159 </h5>
160 </div>
161 </div>
162 </div>
163
164 @if (Model.Customer != null)
165 {
166 <div class="card mb-3">
167 <div class="card-header">
168 <i class="fas fa-user"></i> Customer Information
169 </div>
170 <div class="card-body">
171 <p class="mb-2">
172 <strong>Name:</strong><br>
173 @Model.Customer.Name
174 </p>
175 <p class="mb-2">
176 <strong>Email:</strong><br>
177 <a href="mailto:@Model.Customer.Email">@Model.Customer.Email</a>
178 </p>
179 <p class="mb-2">
180 <strong>Phone:</strong><br>
181 @Model.Customer.Phone
182 </p>
183 <p class="mb-0">
184 <strong>Address:</strong><br>
185 @Model.Customer.Address
186 </p>
187 </div>
188 </div>
189 }
190
191 <div class="card">
192 <div class="card-header">
193 <i class="fas fa-tools"></i> Actions
194 </div>
195 <div class="card-body">
196 <div class="d-grid gap-2">
197 <button class="btn btn-primary" onclick="window.print()">
198 <i class="fas fa-print"></i> Print
199 </button>
200 <a href="/Sale/Index" class="btn btn-secondary">
201 <i class="fas fa-arrow-left"></i> Back
202 </a>
203 </div>
204 </div>
205 </div>
206 </div>
207</div>
208
209@section Styles {
210 <style>
211 @@media print {
212 .navbar, .breadcrumb, .card:last-child, button {
213 display: none !important;
214 }
215 .card {
216 border: 1px solid #000 !important;
217 box-shadow: none !important;
218 }
219 }
220 </style>
221}
Note: See TracBrowser for help on using the repository browser.