public ViewerObject(ProductPosition prod) { Id = prod.product.Id; name = prod.product.name; current_number = prod.NumberOfProduct; number_to = 0; number_from = 0; }
void GetPosition() { ProductPosition listModul = new ProductPosition(); DdlPosition.Items.Clear(); for (int i = 0; i < listModul.Text.Length; i++) { DdlPosition.Items.Add(new ListItem(listModul.Text[i], listModul.Values[i])); } }
private void CloseTrip_Click(object sender, RoutedEventArgs e) { if (NumberArea.Text != "") { try { int trip_id = Convert.ToInt32(NumberArea.Text); //Получить слоты Trip trip = controller.GetTrips().Where(t => t.Id == trip_id).FirstOrDefault(); if (trip == null) throw new Exception("Не найден объект, с указанным Id. Проверьте правильность введенных данных"); if (trip.Status.Equals("Завершён")) throw new Exception("Нельзя завершить завершённый рейс"); if (trip.Status.Equals("Ожидает отправки")) throw new Exception("Нельзя завершить рейс, ожидающий отправки"); ObservableCollection<TruckSlot> slots = controller.GetSlotsForTrip(trip); //Прибывить к наименованию на складе кол-во со слотов Center centerTo = trip.To; foreach (TruckSlot slot in slots) { ProductPosition position = controller.GetDBCenterProductsPosition(centerTo).Where(p => p.product.Id == slot.product.Id).FirstOrDefault(); position.numberOfProduct += slot.total_umber; } //Отнять с отбывшего склада Center centerFrom = trip.From; foreach (TruckSlot slot in slots) { ProductPosition position = controller.GetDBCenterProductsPosition(centerFrom).Where(p => p.product.Id == slot.product.Id).FirstOrDefault(); position.numberOfProduct -= slot.total_umber; } //Удалить заказы или отнять кол-во foreach (TruckSlot slot in slots) { Require require = controller.GetDBRequiers().Where(r => r.FromCenter.Id == centerFrom.Id && r.ToCenter.Id == centerTo.Id && r.product.Id == slot.product.Id).FirstOrDefault(); if (require != null) { if (require.Number == slot.total_umber) controller.DelateRequier(require.Id); else require.Number -= slot.total_umber; } } //Удалить слоты controller.DelateTripsSlots(trip_id); //Завершить рейс trip.CloseTrip(); trip.truck.closeTrip(centerTo); TripsWorkingArea.Content = AdminTripsTable.GetInstance(); } catch (Exception ex) { MessageBox.Show(ex.Message); } } else MessageBox.Show("Укажите Id рейса, над которым хотите совершить операцию"); }
public static ContainableItem CreateOreoItem() { var oreoCategory = new ProductCategory(categoryName: "Biscuits", description: "Biscuits with cream"); var oreoProduct = new Product(name: "Oreo", price: 5.59m, category: oreoCategory); var oreoPosition = new ProductPosition(row: 3, column: 7); var oreoItem = new ContainableItem(productPosition: oreoPosition, size: 5, product: oreoProduct); return(oreoItem); }
public static ContainableItem CreateSkittlesProduct() { var skittlesCategory = new ProductCategory(categoryName: "Biscuits", description: "Biscuits with cream"); var skittlesProduct = new Product(name: "Oreo", price: 5.59m, category: skittlesCategory); var skittlesPosition = new ProductPosition(row: 2, column: 5); var skittlesItem = new ContainableItem(productPosition: skittlesPosition, size: 2, product: skittlesProduct); return(skittlesItem); }
public static ContainableItem CreatePringlesProduct() { var pringlesCategory = new ProductCategory(categoryName: "Snacks", description: "Snacks with salt"); var pringlesProduct = new Product(name: "Pringles", price: 7.9m, category: pringlesCategory); var pringlesPosition = new ProductPosition(row: 2, column: 5); var pringlesItem = new ContainableItem(productPosition: pringlesPosition, size: 3, product: pringlesProduct); return(pringlesItem); }
public static ContainableItem CreateTwixProduct() { var twixCategory = new ProductCategory(categoryName: "Chocolate", description: "Two bars of chocolate"); var twixProduct = new Product(name: "Twix", price: 3, category: twixCategory); var twixPosition = new ProductPosition(row: 1, column: 7); var twixItem = new ContainableItem(productPosition: twixPosition, size: 2, product: twixProduct); return(twixItem); }
public static ContainableItem CreateSnickersProduct() { var snickersCategory = new ProductCategory(categoryName: "Chocolate", description: "Chocolate with caramel"); var snickersProduct = new Product(name: "Snickers", price: 2.5m, category: snickersCategory); var snickersPosition = new ProductPosition(row: 1, column: 1); var snickersItem = new ContainableItem(productPosition: snickersPosition, size: 2, product: snickersProduct); return(snickersItem); }
string SetPosition(string value) { string s = "_"; ProductPosition listModul = new ProductPosition(); for (int i = 0; i < listModul.Values.Length; i++) { if (listModul.Values[i] == value) { s = listModul.Text[i]; break; } } return(s); }
public void Execute() { try { int id = Convert.ToInt32(observer.IdForDelateProductPosition.Text); ProductPosition prod = ReductProducts.ProductsOnStorage.Where(p => p.Id == id).FirstOrDefault(); ReductProducts.ProductsOnStorage.Remove(prod); IRepController controller = new RepositoryController(); controller.DeleteProductPositionFromDB(prod); } catch (Exception ex) { MessageBox.Show("Товар не найден. Проверьте правильность введенного индекса"); } }
public void Execute() { try { Product product = new Product( Name, (float)Convert.ToDouble(Length), (float)Convert.ToDouble(Width), (float)Convert.ToDouble(Height), (float)Convert.ToDouble(Cost), (float)Convert.ToDouble(Weight), Convert.ToInt32(Min_num), Unit ); ProductPosition productPosition = new ProductPosition(product, employee.center, Convert.ToInt32(Number)); controller.AddProductPositionInDB(productPosition); MessageBox.Show("Товар добавлен"); //controller.AddProductInDB(product); } catch (Exception e) { MessageBox.Show("Неверный формат введенных данных. Ячейки могут содержать только целочисленные, положительные значения. Все измерения в единицах СИ"); } }
public ContainableItem(ProductPosition productPosition, int size, Product product) { _productPosition = productPosition; _size = size; _product = product; }
private void CloseTrip_Click(object sender, RoutedEventArgs e) { if (NumberArea.Text != "") { try { int trip_id = Convert.ToInt32(NumberArea.Text); //Получить слоты Trip trip = controller.GetTrips().Where(t => t.Id == trip_id).FirstOrDefault(); if (trip == null) { throw new Exception("Не найден объект, с указанным Id. Проверьте правильность введенных данных"); } if (trip.Status.Equals("Завершён")) { throw new Exception("Нельзя завершить завершённый рейс"); } if (trip.Status.Equals("Ожидает отправки")) { throw new Exception("Нельзя завершить рейс, ожидающий отправки"); } if (trip.To.Id != employee.center.Id) { throw new Exception("Завершить рейс может только сотрудник центра назначения или администратор"); } ObservableCollection <TruckSlot> slots = controller.GetSlotsForTrip(trip); //Прибывить к наименованию на складе кол-во со слотов Center centerTo = trip.To; foreach (TruckSlot slot in slots) { ProductPosition position = controller.GetDBCenterProductsPosition(centerTo).Where(p => p.product.Id == slot.product.Id).FirstOrDefault(); if (position != null) { position.numberOfProduct += slot.total_umber; } else { ICommand command = new AddProductCommand( employee, Convert.ToString(slot.product.Name), Convert.ToString(slot.product.Length), Convert.ToString(slot.product.Height), Convert.ToString(slot.product.Height), Convert.ToString(slot.product.Weight), Convert.ToString(slot.product.Cost), slot.product.Unit_of_measurment, Convert.ToString(slot.product.Mominal_number), Convert.ToString(slot.total_umber) ); if (command.ifExecute()) { command.Execute(); } } } //Отнять с отбывшего склада Center centerFrom = trip.From; foreach (TruckSlot slot in slots) { ProductPosition position = controller.GetDBCenterProductsPosition(centerFrom).Where(p => p.product.Id == slot.product.Id).FirstOrDefault(); position.numberOfProduct -= slot.total_umber; } //Удалить заказы или отнять кол-во foreach (TruckSlot slot in slots) { Require require = controller.GetDBRequiers().Where(r => r.FromCenter.Id == centerFrom.Id && r.ToCenter.Id == centerTo.Id && r.product.Id == slot.product.Id).FirstOrDefault(); if (require != null) { if (require.Number == slot.total_umber) { controller.DelateRequier(require.Id); } else { require.Number -= slot.total_umber; } } } //Удалить слоты controller.DelateTripsSlots(trip_id); //Завершить рейс trip.CloseTrip(); trip.truck.closeTrip(centerTo); TripsWorkingArea.Content = EmployeeTripsTable.GetInstance(employee); } catch (Exception ex) { MessageBox.Show(ex.Message); } } else { MessageBox.Show("Укажите Id рейса, над которым хотите совершить операцию"); } }