public SelectionResult Add(ISelectedBarCodesViewModel model) { if (model.SelectedPackages == null) { model.SelectedPackages = new List <SelectedPackage>(); } var result = new SelectionResult(); var packageService = GetPackageService(); var package = packageService.Retrieve(model.BarCode); var currentEmployee = GetCurrentEmployee(); if (package == null) { result.Succeeded = false; result.ErrorMessage = "BarCode does not exist"; } else if (model.SelectedPackages.FirstOrDefault(p => p.BarCode == model.BarCode) != null) { result.Succeeded = false; result.ErrorMessage = "BarCode already selected"; } else { result = ValidatePackage(package); } if (result.Succeeded) { var selectedPackage = new SelectedPackage() { BarCode = model.BarCode, ExpirationDate = package.ExpirationDate, PackageId = package.PackageId, PackageTypeDescription = package.PackageType.Description, PackageTypeId = package.PackageTypeId, CentreId = package.CurrentLocation == null ? 0 : package.CurrentLocation.CentreId, CurrentEmployeeUserName = currentEmployee.UserName }; model.SelectedPackages.Add(selectedPackage); model.BarCode = string.Empty; } return(result); }
public void Remove(ISelectedBarCodesViewModel model, string buttonValue) { int id = -1; var splits = buttonValue.Replace(" Id: ", " ").Split(' '); if (splits.Count() > 1) { id = int.Parse(splits[1]); } var deletePackage = model.SelectedPackages.FirstOrDefault(m => m.PackageId == id); if (deletePackage != null) { model.SelectedPackages.Remove(deletePackage); } }