@page @model MoneyMap.Pages.UploadModel @{ ViewData["Title"] = "Upload Transactions"; ViewData["FullWidth"] = Model.PreviewTransactions.Any(); }

Upload Transactions

@if (Model.PreviewTransactions.Any()) {
Preview: Review the transactions below before importing. Duplicates are marked in gray and will be skipped.
All transactions in this file belong to this account
Transaction Preview (@Model.PreviewTransactions.Count(p => !p.IsDuplicate) selected, @Model.PreviewTransactions.Count(p => p.IsDuplicate) duplicates) @if (Model.PreviewTransactions.Count > 100) {
Showing 1-100 of @Model.PreviewTransactions.Count
}
@for (int i = 0; i < Model.PreviewTransactions.Count; i++) { var preview = Model.PreviewTransactions[i]; var displayStyle = i >= 100 ? "display: none;" : ""; }
Date Merchant Memo Amount Category Card Used (optional) Status
@preview.Transaction.Date.ToString("MM/dd/yy") @preview.Transaction.Name @preview.Transaction.Memo @preview.Transaction.Amount.ToString("C") @if (!string.IsNullOrWhiteSpace(preview.SuggestedCategory)) { Auto } @if (preview.IsDuplicate) { Duplicate } else { New }
@foreach (var cat in Model.PreviewTransactions.Select(p => p.Transaction.Category).Where(c => !string.IsNullOrWhiteSpace(c)).Distinct().OrderBy(c => c)) { }
Cancel
} else if (Model.Result != null) {

Import Complete!

@Model.Result.Total total rows processed
@Model.Result.Inserted new transactions imported
@Model.Result.Skipped duplicates skipped

View Transactions Upload More
} else {
@Html.AntiForgeryToken()
Payment Method Assignment
Extracts card info from memo or filename
For checking/savings account transactions
} @section Scripts { }