public ActionResult Index() { _stores = new Stores(); AllStores model = new AllStores(); model.ListOfStores = _stores.GetAllStores(); return(View(model)); }
/// <summary> /// Method for creating new stores and storing them in the database /// </summary> private async void Create() { if (CheckTextFields()) { _store = new Store(Name, Address, Phone, SelectedManager.Id, SelectedStock.ID); var item = AllStores.SingleOrDefault(s => s.Name == Name && s.Address == Address && s.Phone == Phone && s.ManagerID == SelectedManager.Id && s.StockId == SelectedStock.ID); if (item == null) { ErrorText = ""; Store postedStore = await APIHandler <Store> .PostOne("Stores", _store); } else { ErrorText = "Store already exists"; } } }
public async Task <IActionResult> OnGetAsync(int?id) { if (id == null) { return(NotFound()); } Warehouse = await _context.WarehouseStock.AsNoTracking().FirstOrDefaultAsync(m => m.Id == id); Supplier = await _context.Suppliers.AsNoTracking().FirstOrDefaultAsync(s => s.Id == Warehouse.SupplierId); Stores = _context.Stores.AsNoTracking().Where(s => s.StoreName != "Warehouse").Select(n => new SelectListItem { Value = n.Store_ID.ToString(), Text = n.StoreName }).ToList(); AllStores = _context.Stores.AsNoTracking().ToList(); ApplicationUser = await _userManager.GetUserAsync(User); if (await _userManager.IsInRoleAsync(ApplicationUser, "Admin")) { StockTransfers = _context.StockTransfers.AsNoTracking().Where(t => t.StockId == id && t.Approvals == "True" && t.FromStoreId == (AllStores.FirstOrDefault(s => s.StoreName == "Warehouse").Store_ID)).ToList(); } AppMessage = ""; Message = ""; return(Page()); }
public async Task <IActionResult> OnPostDeclinesAsync(int?id) { DbContextOptions <ApplicationDbContext> options = new DbContextOptions <ApplicationDbContext>(); using (var context = new ApplicationDbContext(options)) { Stores = context.Stores.AsNoTracking().Where(s => s.StoreName != "Warehouse").Select(n => new SelectListItem { Value = n.Store_ID.ToString(), Text = n.StoreName }).ToList(); if (await _userManager.IsInRoleAsync(ApplicationUser, "Admin")) { StockTransfers = context.StockTransfers.AsNoTracking().Where(t => t.StockId == id && t.Approvals == "True" && t.FromStoreId == (AllStores.FirstOrDefault(s => s.StoreName == "Warehouse").Store_ID)).ToList(); } StockTransfer st = new StockTransfer(); st = context.StockTransfers.AsNoTracking().FirstOrDefault(t => t.Id == id); Store warehouseStore = context.Stores.AsNoTracking().FirstOrDefault(s => s.StoreName == "Warehouse"); Warehouse = context.WarehouseStock.AsNoTracking().FirstOrDefault(w => w.Id == st.StockId); StockItem = context.Stock.AsNoTracking().FirstOrDefault(s => s.StockName == Warehouse.StockName); Supplier = context.Suppliers.AsNoTracking().FirstOrDefault(s => s.Id == Warehouse.SupplierId); AllStores = context.Stores.AsNoTracking().ToList(); ApplicationUser = await _userManager.GetUserAsync(User); StockTransfer stockTransfer = new StockTransfer { Id = st.Id, StockId = st.StockId, FromStoreId = st.FromStoreId, ToStoreId = st.ToStoreId, TransferDate = st.TransferDate, Quantity = st.Quantity, Approvals = "False", ApprovalStatus = "Declined", Approver = ApplicationUser.UserName, DateApproved = DateTime.Now, Requester = st.Requester }; context.StockTransfers.Update(StockTransfer); try { context.SaveChanges(); AppMessage = "Declined"; Message = ""; List <InternetAddress> toEmailAddresses = new List <InternetAddress>(); List <InternetAddress> fromEmailAddresses = new List <InternetAddress>(); MailboxAddress toAddress = new MailboxAddress("*****@*****.**"); toEmailAddresses.Add(toAddress); MailboxAddress fromAddress = new MailboxAddress("*****@*****.**"); fromEmailAddresses.Add(fromAddress); EmailMessage emailMessage = new EmailMessage() { ToAddresses = toEmailAddresses, FromAddresses = fromEmailAddresses, Subject = "Stock Approved.", Content = string.Format("Stock {0} was declined on {1}", Warehouse.StockName, stockTransfer.DateApproved) }; _emailSender.SendMail(emailMessage); } catch (Exception ex) { } } return(Page()); }
public async Task <IActionResult> OnPostApprovalsAsync(int?id) { Stores = _context.Stores.AsNoTracking().Where(s => s.StoreName != "Warehouse").Select(n => new SelectListItem { Value = n.Store_ID.ToString(), Text = n.StoreName }).ToList(); if (await _userManager.IsInRoleAsync(ApplicationUser, "Admin")) { StockTransfers = _context.StockTransfers.AsNoTracking().Where(t => t.StockId == id && t.Approvals == "True" && t.FromStoreId == (AllStores.FirstOrDefault(s => s.StoreName == "Warehouse").Store_ID)).ToList(); } Store warehouseStore = await _context.Stores.AsNoTracking().FirstOrDefaultAsync(s => s.StoreName == "Warehouse"); Supplier = await _context.Suppliers.AsNoTracking().FirstOrDefaultAsync(s => s.Id == Warehouse.SupplierId); AllStores = _context.Stores.AsNoTracking().ToList(); ApplicationUser = await _userManager.GetUserAsync(User); StockTransfer = _context.StockTransfers.AsNoTracking().FirstOrDefault(st => st.Id == id); StockTransfer.Approver = ApplicationUser.UserName; StockTransfer.ApprovalStatus = "Approved"; StockTransfer.Approvals = "False"; StockTransfer.DateApproved = DateTime.Now; await DoTransfers(StockTransfer); AppMessage = "Approved"; Message = ""; return(Page()); }
public async Task <IActionResult> OnPostAsync(int?id) { Stores = _context.Stores.AsNoTracking().Where(s => s.StoreName != "Warehouse").Select(n => new SelectListItem { Value = n.Store_ID.ToString(), Text = n.StoreName }).ToList(); Store warehouseStore = await _context.Stores.AsNoTracking().FirstOrDefaultAsync(s => s.StoreName == "Warehouse"); Warehouse = await _context.WarehouseStock.AsNoTracking().FirstOrDefaultAsync(m => m.Id == id); Supplier = await _context.Suppliers.AsNoTracking().FirstOrDefaultAsync(s => s.Id == Warehouse.SupplierId); AllStores = _context.Stores.AsNoTracking().ToList(); ApplicationUser = await _userManager.GetUserAsync(User); if (await _userManager.IsInRoleAsync(ApplicationUser, "Admin")) { StockTransfers = _context.StockTransfers.AsNoTracking().Where(t => t.StockId == id && t.Approvals == "True" && t.FromStoreId == (AllStores.FirstOrDefault(s => s.StoreName == "Warehouse").Store_ID)).ToList(); } if (!await _userManager.IsInRoleAsync(ApplicationUser, "Admin")) { StockTransfer stockTransfer = new StockTransfer { StockId = Warehouse.Id, FromStoreId = warehouseStore.Store_ID, ToStoreId = Convert.ToInt32(StoreId), TransferDate = DateTime.Now, Quantity = AmountToTransfer, Requester = ApplicationUser.UserName, DateApproved = DateTime.Now, Approvals = "True", ApprovalStatus = "Waiting Approval" }; Warehouse.TransferApprovals = "True"; _context.WarehouseStock.Update(Warehouse); _context.SaveChanges(); AppMessage = ""; Message = "Waiting Approvals"; List <InternetAddress> toEmailAddresses = new List <InternetAddress>(); List <InternetAddress> fromEmailAddresses = new List <InternetAddress>(); MailboxAddress toAddress = new MailboxAddress("*****@*****.**"); toEmailAddresses.Add(toAddress); MailboxAddress fromAddress = new MailboxAddress("*****@*****.**"); fromEmailAddresses.Add(fromAddress); EmailMessage emailMessage = new EmailMessage() { ToAddresses = toEmailAddresses, FromAddresses = fromEmailAddresses, Subject = "Stock Approval Waiting.", Content = string.Format("Stock {0} is waiting approval since {1}", Warehouse.StockName, stockTransfer.TransferDate) }; _emailSender.SendMail(emailMessage); } else { StockTransfer stockTransfer = new StockTransfer { StockId = Warehouse.Id, FromStoreId = warehouseStore.Store_ID, ToStoreId = Convert.ToInt32(StoreId), TransferDate = DateTime.Now, Quantity = AmountToTransfer, Requester = ApplicationUser.UserName, Approver = ApplicationUser.UserName, DateApproved = DateTime.Now, Approvals = "False", ApprovalStatus = "Approved" }; await DoTransfers(stockTransfer); AppMessage = ""; Message = "Approved"; } return(Page()); }
public async Task DeleteStore(int id) { if (await JS.InvokeAsync <bool>("confirm", "Are you sure you want to mark this store as deleted?")) { if (await JS.InvokeAsync <bool>("exampleJsFunctions.deleteStoreDisplayNumber", AllStores.Where(x => x.Id == id).FirstOrDefault().StoreNumber)) { await StoreInformationDataService.MarkAsDeleted(id); } } //StateHasChanged(); NavigationManager.NavigateTo($"/storeinformation", forceLoad: true); }
protected override async Task OnInitializedAsync() { AllStores = await StoreInformationDataService.GetAllStores(); Columns = Helpers.GetPropertyNames(AllStores.FirstOrDefault()); }