public async Task <OrderPresentationModel> GetOrderPresentationModel(int orderId) { OrderPresentationModel orderPresentationModel = await DbSet .Where(o => o.Id == orderId) .Include(o => o.Customer) .Select(o => new OrderPresentationModel { Id = o.Id, CustomerName = o.Customer.Name, CustomerAddress = o.Customer.Address, CustomerId = o.CustomerId, Comment = o.Comment, OrderStatus = o.OrderStatus, TotalCost = o.TotalCost, OrderProducts = Context.OrderProducts.Where(op => op.OrderId == o.Id) .Include(op => op.Product) .Select(op => new OrderProductPresentationModel { ProductId = op.ProductId, ProductName = op.Product.Name, ProductCategory = op.Product.ProductCategory, Quantity = op.Quantity, Price = op.Price, ProductPrice = op.Product.Price }).ToList() }).FirstOrDefaultAsync(); return(orderPresentationModel); }
public OrderForm(CreditCardPaymentForm creditCardPaymentFormData, OrderPresentationModel orderPresentationModelData, OrderModel orderModelData, Model modelData) { InitializeComponent(); _creditCardPaymentForm = creditCardPaymentFormData; _orderPresentationModel = orderPresentationModelData; _orderModel = orderModelData; _model = modelData; InitializeProductTabPageButtonsContainers(); // Observers _model.OrderChanged += UpdateCartSectionViewOnOrderChanged; _model.OrderCleared += UpdateViewOnOrderCleared; _model.OrderAdded += (orderItem) => _cartDataGridView.Rows.Add(null, orderItem.Name, orderItem.Type, orderItem.Price.GetCurrencyFormat(), orderItem.OrderQuantity, orderItem.GetTotalPrice().GetCurrencyFormat()); _model.OrderRemoved += (orderItemIndex, removedProduct) => _cartDataGridView.Rows.RemoveAt(orderItemIndex); _model.OrderItemQuantityChanged += (orderItemIndex, orderItemTotalPrice) => _cartDataGridView.Rows[orderItemIndex].Cells[CART_PRODUCT_TOTAL_PRICE_COLUMN_INDEX].Value = orderItemTotalPrice; _model.OrderItemQuantityIsExceededStorageQuantity += UpdateViewOnOrderItemQuantityIsExceededStorageQuantity; _orderPresentationModel.AddButtonEnabledChanged += () => _addButton.Enabled = _orderPresentationModel.AddButton.Enabled; _orderPresentationModel.OrderFormProductStorageQuantityTextChanged += () => _productStorageQuantity.Text = _orderPresentationModel.ProductStorageQuantity.Text; // UI _cartDataGridView.CellPainting += (sender, eventArguments) => DataGridViewHelper.InitializeButtonImageOfButtonColumn(eventArguments, CART_DELETE_BUTTON_COLUMN_INDEX, Resources.img_trash_bin); _cartDataGridView.CellContentClick += ClickCartDataGridViewCellContent; _cartDataGridView.CellValueChanged += ChangeCartDataGridViewCellValue; _leftArrowButton.Click += (sender, events) => GoToPreviousProductPage(); _rightArrowButton.Click += (sender, events) => GoToNextProductPage(); _addButton.Click += (sender, eventArguments) => _orderPresentationModel.AddCurrentSelectedProductToOrderIfProductIsNotInOrder(); _orderButton.Click += ClickOrderButton; _productTabControl.SelectedIndexChanged += (sender, events) => SelectProductTabPage(_productTabControl.SelectedIndex); InitializeProductTabPages(); // Initial UI States SelectProductTabPage(AppDefinition.MOTHER_BOARD_INDEX); UpdateCartSectionViewOnOrderChanged(); RefreshControls(); }
public void TestOrderPresentationModel() { Assert.ThrowsException <ArgumentNullException>(() => new OrderPresentationModel(null)); var orderPresentationModel = new OrderPresentationModel(new Model(TestDefinition.DUMP_STRING)); var target = new PrivateObject(orderPresentationModel); Assert.IsNotNull(target.GetFieldOrProperty(MEMBER_VARIABLE_NAME_MODEL)); }
static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Model model = new Model(Resources.ProductsTable); OrderPresentationModel orderPresentationModel = new OrderPresentationModel(model); CreditCardPaymentForm creditCardPaymentForm = new CreditCardPaymentForm(model); MainForm mainForm = new MainForm(creditCardPaymentForm, orderPresentationModel, new ProductsManagementTabPagePresentationModel(model), new ProductTypesManagementTabPagePresentationModel(model), model); Application.Run(mainForm); }
static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Model model = new Model(); OrderPresentationModel orderPresentationModel = new OrderPresentationModel(model); CreditCardPaymentForm creditCardPaymentForm = new CreditCardPaymentForm(model); MainForm mainForm = new MainForm(creditCardPaymentForm, new InventoryPresentationModel(model), new MainPresentationModel(), orderPresentationModel, new ProductManagementPresentationModel(model), model); Application.Run(mainForm); }
public MainForm(CreditCardPaymentForm creditCardPaymentFormData, OrderPresentationModel orderPresentationModelData, ProductsManagementTabPagePresentationModel productsManagementTabPagePresentationModelData, ProductTypesManagementTabPagePresentationModel productTypesManagementTabPagePresentationModelData, Model modelData) { InitializeComponent(); _creditCardPaymentForm = creditCardPaymentFormData; _orderPresentationModel = orderPresentationModelData; _productsManagementTabPagePresentationModel = productsManagementTabPagePresentationModelData; _productTypesManagementTabPagePresentationModel = productTypesManagementTabPagePresentationModelData; _model = modelData; _orderSystemButton.Click += ClickOrderSystemButton; _inventorySystemButton.Click += ClickInventorySystemButton; _productManageSystemButton.Click += ClickProductManageSystemButton; _exitButton.Click += ClickExitButton; }
public MainForm(CreditCardPaymentForm creditCardPaymentFormData, MainPresentationModel mainPresentationModelData, OrderPresentationModel orderPresentationModelData, OrderModel orderModelData, Model modelData) { InitializeComponent(); _creditCardPaymentForm = creditCardPaymentFormData; _mainPresentationModel = mainPresentationModelData; _orderPresentationModel = orderPresentationModelData; _orderModel = orderModelData; _model = modelData; _orderSystemButton.Click += ClickOrderSystemButton; _inventorySystemButton.Click += ClickInventorySystemButton; _exitButton.Click += ClickExitButton; RefreshControls(); }
public void Initialize() { _model.AddCategory("category"); _model.AddProduct(6, "name", _info); _model.UpdateProductStock(6, 0, 15); _presentationModel = new OrderPresentationModel(_model); _presentationModel._presentationModelChanged += Notify; _target = new PrivateObject(_presentationModel); _isNotify = false; for (int count = 0; count < 7; count++) { _presentationModel.CreatePage(); } }
public async Task <DataResult <OrderPresentationModel> > GetOrderById(int orderId) { OrderPresentationModel orderPresentationModel = await _orderRepository.GetOrderPresentationModel(orderId); if (orderPresentationModel == null) { return(new DataResult <OrderPresentationModel> { ResponseMessageType = ResponseMessageType.Error }); } return(new DataResult <OrderPresentationModel> { Data = orderPresentationModel, ResponseMessageType = ResponseMessageType.Success }); }
public OrderForm(CreditCardPaymentForm creditCardPaymentFormData, OrderPresentationModel orderPresentationModelData, OrderModel orderModelData, Model modelData) { InitializeComponent(); // [Automatically generated by Windows Form Designer] _creditCardPaymentForm = creditCardPaymentFormData; _orderPresentationModel = orderPresentationModelData; _orderModel = orderModelData; _model = modelData; _products = _model.Products; InitializeProductTabPageItemsContainers(); // UI _creditCardPaymentForm.FormClosed += CloseCreditCardPaymentForm; _cartDataGridView.CellPainting += CartDataGridViewCellPainting; _cartDataGridView.CellContentClick += CartDataGridViewCellContentClick; _leftArrowButton.Click += (sender, events) => GoToPreviousPage(); _rightArrowButton.Click += (sender, events) => GoToNextPage(); _addButton.Click += ClickAddButton; _orderButton.Click += ClickOrderButton; _productTabControl.SelectedIndexChanged += (sender, events) => SelectProductTabPage(_productTabControl.SelectedIndex); InitializeProductTabPages(); // Initial UI States SelectProductTabPage(AppDefinition.MOTHER_BOARD_INDEX); RefreshControls(); }
public OrderForm(CreditCardPaymentForm creditCardPaymentFormData, OrderPresentationModel orderPresentationModelData, Model modelData) { InitializeComponent(); _creditCardPaymentForm = creditCardPaymentFormData; _orderPresentationModel = orderPresentationModelData; _model = modelData; this.Disposed += RemoveEvents; // Observers _model.OrderChanged += UpdateCartSectionViewOnOrderChanged; _model.OrderCleared += ClearCartDataGridViewOnOrderCleared; _model.OrderAdded += AddOrderItemToCartDataGridView; _model.OrderRemoved += RemoveOrderItemAtFromCartDataGridView; _model.OrderItemQuantityChanged += UpdateOrderItemTotalPriceAtInCartDataGridView; _model.OrderItemQuantityIsExceededStorageQuantity += ShowMessageBoxAndSetOrderItemQuantityToStorageQuantityOnOrderItemQuantityIsExceededStorageQuantity; _model.ProductInfoChanged += UpdateViewOnProductInfoChanged; _model.ProductAdded += UpdateViewOnProductAdded; _model.ProductTypeAdded += UpdateViewOnProductTypeAdded; _orderPresentationModel.AddButtonEnabledChanged += UpdateAddButtonView; _orderPresentationModel.CurrentProductInfoChanged += UpdateProductInfoView; _orderPresentationModel.CurrentProductPageIndexChanged += UpdatePageLabelAndLeftRightArrowButtonsView; // UI _cartDataGridView.CellPainting += (sender, eventArguments) => DataGridViewHelper.InitializeButtonImageOfButtonColumn(eventArguments, CART_DELETE_BUTTON_COLUMN_INDEX, Resources.img_trash_bin); _cartDataGridView.CellContentClick += ClickCartDataGridViewCellContent; _cartDataGridView.CellValueChanged += ChangeCartDataGridViewCellValue; _leftArrowButton.Click += (sender, eventArguments) => GoToPreviousProductPage(); _rightArrowButton.Click += (sender, eventArguments) => GoToNextProductPage(); _addButton.Click += (sender, eventArguments) => _orderPresentationModel.AddCurrentSelectedProductToOrderIfProductIsNotInOrder(); _orderButton.Click += ClickOrderButton; _productTabControl.SelectedIndexChanged += HandleSelectedIndexChanged; // Initial UI States InitializeProductTabPageButtonsContainers(); InitializeTabPages(); InitializeProductTabPages(); SelectProductTabPage(FIRST_PRODUCT_TAB_PAGE_INDEX); InitializeCartDataGridView(); UpdateCartSectionViewOnOrderChanged(); }
public void Initialize() { _orderPresentationModel = new OrderPresentationModel(new Model(Resources.ProductsTableTest)); _target = new PrivateObject(_orderPresentationModel); _model = ( Model )_target.GetFieldOrProperty(MEMBER_VARIABLE_NAME_MODEL); }