public void Delete(WarehouseBindingModel model) { for (int i = 0; i < source.Warehouses.Count; ++i) { if (source.Warehouses[i].Id == model.Id.Value) { source.Warehouses.RemoveAt(i); return; } } throw new Exception("Элемент не найден"); }
public void Delete(WarehouseBindingModel model) { var element = _warehouseStorage.GetElement(new WarehouseBindingModel { Id = model.Id }); if (element == null) { throw new Exception("Склад не найден"); } _warehouseStorage.Delete(model); }
public List <WarehouseViewModel> Read(WarehouseBindingModel model) { if (model == null) { return(_warehouseStorage.GetFullList()); } if (model.Id.HasValue) { return(new List <WarehouseViewModel> { _warehouseStorage.GetElement(model) }); } return(_warehouseStorage.GetFilteredList(model)); }
public void Insert(WarehouseBindingModel model) { Warehouse tempWarehouse = new Warehouse { Id = 1 }; foreach (var warehouse in source.Warehouses) { if (warehouse.Id >= tempWarehouse.Id) { tempWarehouse.Id = warehouse.Id + 1; } } source.Warehouses.Add(CreateModel(model, tempWarehouse)); }
public void UpdElement(WarehouseBindingModel model) { Warehouse element = source.Warehouses.FirstOrDefault(rec => rec.WarehouseName == model.WarehouseName && rec.Id != model.Id); if (element != null) { throw new Exception("Уже есть склад с таким названием"); } element = source.Warehouses.FirstOrDefault(rec => rec.Id == model.Id); if (element == null) { throw new Exception("Элемент не найден"); } element.WarehouseName = model.WarehouseName; }
public void AddElement(WarehouseBindingModel model) { Warehouse element = source.Warehouses.FirstOrDefault(rec => rec.WarehouseName == model.WarehouseName); if (element != null) { throw new Exception("Уже есть склад с таким названием"); } int maxId = source.Warehouses.Count > 0 ? source.Warehouses.Max(rec => rec.Id) : 0; source.Warehouses.Add(new Warehouse { Id = maxId + 1, WarehouseName = model.WarehouseName }); }
public WarehouseViewModel GetElement(WarehouseBindingModel model) { if (model == null) { return(null); } foreach (var warehouse in source.Warehouses) { if (warehouse.Id == model.Id || warehouse.Name == model.Name) { return(CreateModel(warehouse)); } } return(null); }
public void Update(WarehouseBindingModel model) { Warehouse tempWarehouse = null; foreach (var warehouse in source.Warehouses) { if (warehouse.Id == model.Id) { tempWarehouse = warehouse; } } if (tempWarehouse == null) { throw new Exception("Элемент не найден"); } CreateModel(model, tempWarehouse); }
public List <WarehouseViewModel> GetFilteredList(WarehouseBindingModel model) { if (model == null) { return(null); } List <WarehouseViewModel> result = new List <WarehouseViewModel>(); foreach (var warehouse in source.Warehouses) { if (warehouse.Name.Contains(model.Name)) { result.Add(CreateModel(warehouse)); } } return(result); }
public void CreateOrUpdate(WarehouseBindingModel model) { var element = _warehouseStorage.GetElement(new WarehouseBindingModel { Name = model.Name }); if (element != null && element.Id != model.Id) { throw new Exception("Уже есть склад с таким названием"); } if (model.Id.HasValue) { _warehouseStorage.Update(model); } else { _warehouseStorage.Insert(model); } }
private Warehouse CreateModel(WarehouseBindingModel model, Warehouse warehouse) { warehouse.Name = model.Name; warehouse.Surname = model.Surname; warehouse.DateCreate = model.DateCreate; warehouse.WerehouseComponents = new Dictionary <int, int>(); foreach (var component in model.WerehouseComponents) { if (warehouse.WerehouseComponents.ContainsKey(component.Key)) { warehouse.WerehouseComponents[component.Key] = model.WerehouseComponents[component.Key].Item2; } else { warehouse.WerehouseComponents.Add(component.Key, model.WerehouseComponents[component.Key].Item2); } } return(warehouse); }