@page "/createquotes/{id:int}"
@if (model.Id == 0) {
reply New Quote
} else {
reply Edit Quote
} @*
*@

Quote ID :@random5DigitNumber

main_logo
80 Orville Dr

Bohemia, NY 11716

516-699-2092/631-334-2594

Info@seahavenindustries.com



Address

@*
*@

Line Items
@if (model != null && model.LineItems != null) { int i = 0; foreach (var lineItem in model.LineItems.ToList()) { i++;
$
} }
@if (isloading) {
Loading…
} @using SeaHavenIndustries.Data.IRepository; @inject IWorkOrderRepository _service; @inject IQuotesRepository _service1; @using Microsoft.JSInterop @using global::Data.SeaHavenIndustries @inject IJSRuntime JSRuntime @inject NavigationManager Navigation @code { [Parameter] public int? id { get; set; } private int random5DigitNumber = 0; public bool isloading = true; private Quotes model = new(); private IEnumerable? order { get; set; } private IEnumerable? workorderlist { get; set; } private IEnumerable? contacts { get; set; } private IEnumerable? contactslist { get; set; } protected override async Task OnInitializedAsync() { random5DigitNumber = GenerateRandomNumber(); if (id != null && id != 0) { model = await _service1.GetQuotesById(id.Value); random5DigitNumber = int.Parse(model.QuotId); } else { model.BillingAddress = "Amazon.com Services LLC 410 Terry Ave,North Seattle, Washington, 98109"; } contacts = await _service.GetContacts(); contactslist = contacts; order = await _service.Getworkorder(); workorderlist = order; isloading = false; } protected void LoadworkorderData(LoadDataArgs args) { var query = workorderlist; if (!string.IsNullOrEmpty(args.Filter)) { query = query.Where(c => c.WorkerOrderTitle.ToLower().Contains(args.Filter.ToLower())); } if (query != null) { order = query.ToList(); } InvokeAsync(StateHasChanged); } protected void LoadcontactData(LoadDataArgs args) { var query = contactslist; if (!string.IsNullOrEmpty(args.Filter)) { query = query.Where(c => (c.FirstName + " " + c.LastName).ToLower().Contains(args.Filter.ToLower())); } if (query != null) { contacts = query.ToList(); } InvokeAsync(StateHasChanged); } private void OnWorkOrderChange(dynamic e) { if (e != null) { int selectedWorkOrderId = e; var selectedWorkOrder = order.FirstOrDefault(item => item.Id == selectedWorkOrderId); if (selectedWorkOrder != null) { model.PO = selectedWorkOrder.PO; model.TT = selectedWorkOrder.TT; if (selectedWorkOrder.Locations != null) { model.SiteName = selectedWorkOrder.Locations.Title; model.SiteId = selectedWorkOrder.Locations.Name; } else { model.SiteName = string.Empty; // or any default value model.SiteId = string.Empty; // or any default value } } } } protected async Task SaveData() { model.QuotId = random5DigitNumber.ToString(); var res = await _service1.Addquotes(model); if (res == "success") { await ShowSweetAlert("Sucessfully Saved Data", "success"); Navigation.NavigateTo("quotes"); } else { await ShowSweetAlert(res, "error"); } } private async Task ShowSweetAlert(string title, string icon) { // Display a SweetAlert dialog await JSRuntime.InvokeVoidAsync("Swal.fire", new { toast = true, showConfirmButton = false, timer = 3000, title = title, icon = icon, position = "top-end" }); await JSRuntime.InvokeVoidAsync("closemodal"); } public async Task AddLineItem() { model.LineItems = model.LineItems == null ? new List() : model.LineItems; int nextLineItemNumber = model.LineItems.Count + 1; model.LineItems.Add(new QuotesLineItems { LineitemNumber = nextLineItemNumber, Lineitem = 0 }); } public void RemoveLineItem(QuotesLineItems lineItems) { model.LineItems.Remove(lineItems); } private int GenerateRandomNumber() { Random random = new Random(); return random.Next(100000, 999999); // Generates a random number between 10000 and 99999 } }