private void CheckBoxCheckOutIn_OnChecked(object sender, RoutedEventArgs e) { _checkBox = (CheckBox)sender; int toolId = (int)_checkBox.Tag; _checkBox.IsEnabled = false; _isOnChecked = true; backgroundWorkerUpdateToolIssued = new BackgroundWorker(); backgroundWorkerUpdateToolIssued.DoWork += BackgroundWorkerUpdateToolIssued_DoWork; backgroundWorkerUpdateToolIssued.RunWorkerCompleted += BackgroundWorkerUpdateToolIssued_RunWorkerCompleted; _checkOutInTool = ToolTrackerService.CheckOutInTools.FirstOrDefault(t => t.ToolId == toolId); if (_checkOutInTool == null) { return; } _newToolIssued = new ToolIssued { ToolId = _checkOutInTool.ToolId, DateTimeOut = DateTime.Now, ReceivedByInmateId = _checkOutInTool.InmateId, IssuedByOfficerId = ToolTrackerService.Officer.Id, ToolReturned = false }; // Update db on separate thread backgroundWorkerUpdateToolIssued.RunWorkerAsync(); //StopLoaderAnimation(); }
private static void MapToolIssuedToViewModel(ToolIssued toolIssued, UnitOfWork db) { var tool = db.ToolsRepo.FindById(toolIssued.ToolId); var issuedByOfficer = db.OfficersRepo.FindById(toolIssued.IssuedByOfficerId); var receivedByInmate = db.InmatesRepo.FindById(toolIssued.ReceivedByInmateId); var receivedByOfficer = db.OfficersRepo.FindById(toolIssued.ReceivedByOfficerId); var returnedByInmate = db.InmatesRepo.FindById(toolIssued.ReturnedByInmateId); ToolsIssued.Add(new ToolIssuedViewModel { ToolNumber = tool?.ToolNumber, ToolDescription = tool?.Description, DateTimeIn = toolIssued.DateTimeIn, DateTimeOut = toolIssued.DateTimeOut, ReceivedByInmateFirstName = receivedByInmate?.FirstName, ReceivedByInmateLastName = receivedByInmate?.LastName, ReturnedByInmateFirstName = returnedByInmate?.FirstName, ReturnedByInmateLastName = returnedByInmate?.LastName, Shop = tool?.AssignedShop, IssuedByName = issuedByOfficer.Name, ReceivedByName = receivedByOfficer?.Name, }); }