4ec55e7290
The HTML entity sweep script had a bug where it wrote empty files for any
view that contained no target Unicode characters, zeroing out 215 view files.
All views restored from the pre-sweep commit (cefdf3e).
Bulk gift certificate feature:
- BulkCreateGiftCertificateDto with Quantity (1-500), Amount, Reason, Expiry, Notes
- GenerateBulkGiftCertificatePdfAsync on IPdfService / PdfService: one Letter page
per cert, reusing the same purple/gold branded ComposeGiftCertificateContent helper
- GiftCertificatesController: BulkCreate GET/POST, BulkResult GET, BulkDownloadPdf POST
- Views: BulkCreate.cshtml (form with live total preview), BulkResult.cshtml (table +
Download All PDF button that POSTs cert IDs to avoid URL length limits)
- gift-certificate-bulk.js: live preview + spinner/disable on submit
- Index.cshtml: Bulk Create button added alongside New Certificate
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
49 lines
2.3 KiB
Plaintext
49 lines
2.3 KiB
Plaintext
@model PowderCoating.Core.Entities.BankReconciliation
|
|
@{
|
|
ViewData["Title"] = "Start Bank Reconciliation";
|
|
var accounts = ViewBag.AccountSelectList as List<Microsoft.AspNetCore.Mvc.Rendering.SelectListItem> ?? new();
|
|
}
|
|
|
|
<div class="d-flex align-items-center mb-3 gap-2">
|
|
<a asp-action="Index" class="btn btn-sm btn-outline-secondary">
|
|
<i class="bi bi-arrow-left me-1"></i>Back
|
|
</a>
|
|
<h4 class="mb-0 fw-semibold ms-2">Start Bank Reconciliation</h4>
|
|
</div>
|
|
|
|
<div class="card shadow-sm" style="max-width:600px">
|
|
<div class="card-body">
|
|
<form asp-action="Create" method="post">
|
|
@Html.AntiForgeryToken()
|
|
<div class="mb-3">
|
|
<label class="form-label fw-semibold">Bank Account <span class="text-danger">*</span></label>
|
|
<select asp-for="AccountId" asp-items="accounts" class="form-select" required>
|
|
<option value="">— select account —</option>
|
|
</select>
|
|
<div class="form-text">Only Checking, Savings, and Cash accounts are listed.</div>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label class="form-label fw-semibold">Statement Date <span class="text-danger">*</span></label>
|
|
<input asp-for="StatementDate" type="date" class="form-control"
|
|
value="@Model.StatementDate.ToString("yyyy-MM-dd")" required />
|
|
</div>
|
|
<div class="mb-3">
|
|
<label class="form-label fw-semibold">Statement Ending Balance <span class="text-danger">*</span></label>
|
|
<div class="input-group">
|
|
<span class="input-group-text">$</span>
|
|
<input asp-for="EndingBalance" type="number" step="0.01" class="form-control" required />
|
|
</div>
|
|
<div class="form-text">Enter the closing balance from your bank statement.</div>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label class="form-label fw-semibold">Notes</label>
|
|
<textarea asp-for="Notes" class="form-control" rows="2"></textarea>
|
|
</div>
|
|
<div class="d-flex gap-2">
|
|
<button type="submit" class="btn btn-primary">Start Reconciliation</button>
|
|
<a asp-action="Index" class="btn btn-outline-secondary">Cancel</a>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|