コード例 #1
0
 public void Setup()
 {
     _testProduct = TestCommon.TestProduct1;
     TestDbContext.ClearData();
     _viewMock  = new ProductPageMock();
     _presenter = new ProductPresenter(_viewMock, TestDbContext.Instance);
 }
コード例 #2
0
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            // Application.Run(new OrdersF());
            //Application.Run(new ProductsF());
            // Application.Run(new UsersF());
            //Application.Run(new LoginForm());

            var uD = new UserData();
            var pD = new ProductData();
            var oD = new OrderData();
            var lF = new LoginForm();
            var oF = new OrderForm();
            var pF = new ProductForm();
            var uF = new UserForm();
            var uO = new UserOperations();
            var rD = new ReportData();

            var uP = new UserPresenter(uF, uD, rD);
            var oP = new OrderPresenter(oF, oD, rD);
            var pP = new ProductPresenter(pF, pD);
            var lP = new LoginPresenter(lF, uD, oF, pF, uF, uO);

            Application.Run(lF);
        }
コード例 #3
0
 public frmAddProduct(ProductPresenter preProduct, Form beforeForm)
 {
     this.preProduct = preProduct;
     this.beforeForm = beforeForm;
     InitializeComponent();
     setSource();
 }
コード例 #4
0
 public frmAddEditProduct()
 {
     InitializeComponent();
     productPresenter       = new ProductPresenter(this);
     categorysPresenter     = new CategoriesPresenter(this);
     productGroupsPresenter = new ProductGroupsPresenter(this);
 }
コード例 #5
0
ファイル: ProductList.xaml.cs プロジェクト: windygu/CCSys
 public ProductList()
 {
     InitializeComponent();
     presenter      = new ProductPresenter(this);
     CurrentProduct = new Product();
     GridProductDetails.DataContext = CurrentProduct;
 }
コード例 #6
0
        public void Should_Initialize_View()
        {
            var sut = new ProductPresenter(this.mockProductView.Object, this.mockProductRepo.Object, this.mockOpenFileDialog.Object);

            mockProductView.Verify(p => p.Initialize(sut), Times.Once());

            Assert.Same(this.mockProductView.Object, sut.View);
        }
コード例 #7
0
        private void priceTab_Enter(object sender, EventArgs e)
        {
            promoComboBox.Items.Clear();
            productComboBox.Items.Clear();

            promoComboBox.Items.AddRange(PromoPresenter.GetPromotions().ToArray());
            productComboBox.Items.AddRange(ProductPresenter.GetProducts().ToArray());
        }
コード例 #8
0
        public void Should_Set_FileName()
        {
            var sut = new ProductPresenter(mockProductView.Object, mockProductRepo.Object, mockOpenFileDialog.Object);

            mockOpenFileDialog.Setup(o => o.ShowDialog()).Returns(DialogResult.OK);
            sut.BrowseForFileName();
            mockProductView.Verify(x => x.SetFileName(It.IsAny <string>()), Times.Once());
        }
コード例 #9
0
 protected virtual void SetupContext()
 {
     // Arrange
     this.repository = new Mock<IProductRepository>();
     this.view = new Mock<IProductView>();
     this.dialog = new Mock<IOpenFileDialog>();
     this.presenter = new ProductPresenter(this.view.Object, this.repository.Object, this.dialog.Object);
 }
コード例 #10
0
 protected virtual void SetupContext()
 {
     // Arrange
     this.repository = new Mock <IProductRepository>();
     this.view       = new Mock <IProductView>();
     this.dialog     = new Mock <IOpenFileDialog>();
     this.presenter  = new ProductPresenter(this.view.Object, this.repository.Object, this.dialog.Object);
 }
コード例 #11
0
        public void ExpectToCallGetAllProductsOnAppropriateEventReceived()
        {
            IProductView       view       = Substitute.For <IProductView>();
            IProductDataAccess dataAccess = Substitute.For <IProductDataAccess>();
            ProductPresenter   presenter  = new ProductPresenter(view, dataAccess);

            view.ViewLoad += Raise.EventWith(view, new EventArgs());
            dataAccess.Received().GetAllProducts();
        }
コード例 #12
0
        public ProductQuickAddView(string rawBarcode = "", string rawName = "")
        {
            InitializeComponent();

            _presenter = new ProductPresenter(this);

            _model.Barcode = rawBarcode;
            _model.Name    = rawName;
        }
コード例 #13
0
 public Products()
 {
     InitializeComponent();
     productPresenter            = new ProductPresenter(this, new RequestService());
     this.Load                  += ViewLoad;
     this.btnAddNew.Click       += BtnAddNew_Click;
     this.btnSave.Click         += BtnSave_Click;
     this.dgvProducts.CellClick += DgvProducts_CellClick;
 }
コード例 #14
0
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            var presenter = new ProductPresenter();

            Application.Run((Form)presenter.View);
            //Application.Run(new FirstRefactorForm());
        }
コード例 #15
0
        public async Task GetStoreInformation(string id)
        {
            Guid StoreId = Guid.Parse(id);

            var store = await StoreDataStore.GetAvailableStoreInformation(StoreId);

            StoreImg         = store.StoreImage;
            StoreName        = store.StoreName;
            Title            = store.StoreName;
            StoreDescription = store.StoreDescription;

            if (StoreProducts.Count > 0)
            {
                StoreProducts.Clear();
            }


            foreach (var product in store.Products)
            {
                var productPresenter = new ProductPresenter(product);
                if (StoreProducts.Where(p => p.ProductId == productPresenter.ProductId).FirstOrDefault() == null)
                {
                    StoreProducts.Add(productPresenter);
                }
            }

            await GroupByProductCategory(StoreProducts);

            //if (ProductCategoryPresenters.Count() > 0)
            //{
            //    ProductCategoryPresenters.Clear();
            //}

            //var group = StoreProducts.GroupBy(p => p.ProductType);

            //foreach (var item in group)
            //{
            //    var _productCategory = new ProductCategoryPresenter(item.Key.ToString());

            //    ProductCategoryPresenters.Add(_productCategory);
            //}


            if (StoreWorkoutHours.Count() == 0)
            {
                foreach (var workhour in store.WorkHours)
                {
                    if (workhour.Day == DateTime.Today.DayOfWeek.ToString())
                    {
                        WorkHour = workhour;
                    }

                    StoreWorkoutHours.Add(workhour);
                }
            }
        }
コード例 #16
0
 public ProductController() // Constructor
 {
     pp            = new ProductPresenter();
     model         = new ProductCategoryViewModel();
     prolist       = new List <ProductCategoryViewModel>();
     scp           = new ShoppingCartPresenter();
     op            = new OrderPresenter();
     orderlist     = new List <OrderViewModel>();
     listcartmodel = new List <CartViewModel>();
 }
コード例 #17
0
ファイル: frmDelete.cs プロジェクト: vuquyhau9420/PRN-Project
 public frmDelete()
 {
     InitializeComponent();
     categoriesPresenter    = new CategoriesPresenter(this);
     productGroupsPresenter = new ProductGroupsPresenter(this);
     productPresenter       = new ProductPresenter(this);
     productsPresenter      = new ProductsPresenter(this);
     productGroupPresenter  = new ProductGroupPresenter(this);
     categoryPresenter      = new CategoryPresenter(this);
 }
コード例 #18
0
        private void buttonCancel_Click(object sender, EventArgs e)
        {
            ProductForm productForm = new ProductForm();

            ProductPresenter presenter = new ProductPresenter(productForm);

            productForm.Show();

            this.Hide();
        }
コード例 #19
0
        private void seeAllProducts_Click(object sender, EventArgs e)
        {
            ProductForm productForm = new ProductForm();

            ProductPresenter presenter = new ProductPresenter(productForm);

            productForm.Show();

            this.Hide();

            //this.Dispose();
        }
        public void ExpectToCallGetAllProductOnAppropriateEventReceived()
        {
            IProductView     view           = Substitute.For <IProductView>();
            IRequestService  requestService = Substitute.For <IRequestService>();
            ProductPresenter presenter      = new ProductPresenter(view, requestService);

            view.ViewLoad += Raise.EventWith(view, new EventArgs());
            Received.InOrder(async() =>
            {
                await requestService.Received().GetAllProductsAsync();
            });
        }
コード例 #21
0
 public PriceModel(Ceny price)
 {
     Id            = price.Id;
     RealPrice     = price.Cena;
     Discount      = price.Rabat;
     DiscountPrice = Discount == null ?
                     RealPrice : RealPrice * (1 - (decimal)Discount / 100);
     Promotion = price.CennikId == null ?
                 null : PromoPresenter.GetPromotionById(price.CennikId);
     Product = price.TowarId == null ?
               null : ProductPresenter.GetProductById(price.TowarId);
 }
コード例 #22
0
        public void ExpectToCallDeleteProductOnAppropriateEventReceived()
        {
            IProductView       view       = Substitute.For <IProductView>();
            IProductDataAccess dataAccess = Substitute.For <IProductDataAccess>();
            ProductPresenter   presenter  = new ProductPresenter(view, dataAccess);



            view.DeleteProduct += Raise.Event <EventHandler <int> >(view, 2);

            dataAccess.Received().DeleteProduct(2);
        }
コード例 #23
0
        public frmProduct()
        {
            InitializeComponent();
            preProduct = new ProductPresenter(this);

            GridView gridView = gridProduct.FocusedView as GridView;

            foreach (GridColumn col in gridView.Columns)
            {
                col.OptionsFilter.AutoFilterCondition = AutoFilterCondition.Contains;
            }
            gridView.GroupPanelText = "Thả một tiêu đề ở đây để nhóm thông tin";
            gridView.Columns["PRODUCT_CODE"].SortOrder = DevExpress.Data.ColumnSortOrder.Descending;
        }
        public void ExpectToCallDeleteProductOnAppropriateEventReceived()
        {
            IProductView     view           = Substitute.For <IProductView>();
            IRequestService  requestService = Substitute.For <IRequestService>();
            ProductPresenter presenter      = new ProductPresenter(view, requestService);



            view.DeleteProduct += Raise.Event <EventHandler <int> >(view, 2);
            Received.InOrder(async() =>
            {
                await requestService.Received().DeleteProductAsync(2);
            });
        }
コード例 #25
0
        public static async Task <GrpcProduct> GetProductData(GrpcIdMessage grpcRequest)
        {
            try
            {
                var id      = grpcRequest.Id;
                var product = await ProductUseCaseController.GetProductDataAsync(id);

                return(ProductPresenter.PresentProduct(product));
            }
            catch (Exception e)
            {
                throw e;
            }
        }
コード例 #26
0
        public void ExpectToCallEditProductOnAppropriateEventReceived()
        {
            IProductView       view       = Substitute.For <IProductView>();
            IProductDataAccess dataAccess = Substitute.For <IProductDataAccess>();
            ProductPresenter   presenter  = new ProductPresenter(view, dataAccess);

            ProductViewModel viewModel = new ProductViewModel()
            {
                NameText  = "Test",
                PriceText = "2"
            };

            view.ModifyProduct += Raise.Event <EventHandler <ProductViewModel> >(view, viewModel);
            dataAccess.Received().EditProduct(Arg.Any <int>(), Arg.Is <Product>(x => x.Price == 2 && x.Name == "Test"));
        }
コード例 #27
0
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            var prodTabView   = new ProductTabUC();
            var prodPresenter = new ProductPresenter(prodTabView);

            var promoTabView   = new PromoTabUC();
            var promoPresenter = new PromoPresenter(promoTabView);

            var priceTabView   = new PriceTabUC();
            var pricePresenter = new PricePresenter(priceTabView);

            Application.Run(new MainForm(prodTabView, promoTabView, priceTabView));
        }
コード例 #28
0
        async Task LoadInventory(string selectedproductType)
        {
            StoreProducts.Clear();

            ProductType _productType = (ProductType)Enum.Parse(typeof(ProductType), selectedproductType);

            //Guid guidStoreId = Guid.Parse(StoreId);

            var data = await productDataStore.GetSpecificProductTypeFromStore(App.CurrentStore.StoreId, _productType);

            foreach (var item in data)
            {
                var productPresenter = new ProductPresenter(item);
                StoreProducts.Add(productPresenter);
            }
        }
コード例 #29
0
        public List <CartViewModel> CartActions(Basket b, List <CartViewModel> ses)
        {
            List <CartViewModel>     model;
            ProductCategoryViewModel pc  = new ProductCategoryViewModel();
            CartViewModel            cvm = new CartViewModel();
            ProductPresenter         pm  = new ProductPresenter();

            pc.PC3_Id = Convert.ToInt16(b.PC3_Id);
            cvm       = pm.GetCartProduct(pc);
            if (ses == null)
            {
                model = new List <CartViewModel>();
            }
            else
            {
                model = ses;
            }
            if (b.Action == "Add")
            {
                if (!model.Any(x => x.PC3_Id == Convert.ToInt16(b.PC3_Id)))
                {
                    model.Add(new CartViewModel()
                    {
                        PC3_Id        = Convert.ToInt16(b.PC3_Id),
                        PC3_Name      = cvm.PC3_Name,
                        OD_ProductQty = b.OD_ProductQty,
                        ProImg_Path   = cvm.ProImg_Path,
                        Vendor_Price  = cvm.Vendor_Price,
                    });
                }
                else
                {
                    model.FirstOrDefault(x => x.PC3_Id == b.PC3_Id).OD_ProductQty += b.OD_ProductQty;
                }
            }
            else if (b.Action == "Qty")
            {
                model.FirstOrDefault(x => x.PC3_Id == b.PC3_Id).OD_ProductQty = b.OD_ProductQty;
            }

            else if (b.Action == "Remove")
            {
                var pro = model.Find(x => x.PC3_Id == Convert.ToInt16(b.PC3_Id));
                model.Remove(pro);
            }
            return(model);
        }
コード例 #30
0
        public ActionResult AddNewProduct(ProductCategoryViewModel data)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    string vname = Session["US_Name"] as string;
                    model.DropDownPets     = pp.GetPets();
                    model.DropDownCategory = pp.GetProductCategory();

                    int bytecount = data.ImageFileProduct.ContentLength;
                    if (bytecount <= 5000000)
                    {
                        string fileName  = Path.GetFileNameWithoutExtension(data.ImageFileProduct.FileName);
                        string extension = Path.GetExtension(data.ImageFileProduct.FileName);
                        if (extension == ".jpg" || extension == ".jpeg" || extension == ".png" || extension == ".JPG" || extension == ".JPEG" || extension == ".PNG")
                        {
                            fileName         = fileName + DateTime.Now.ToString("yymmssfff") + extension;
                            data.ProImg_Name = fileName;
                            data.ProImg_Path = "~/Content/Pictures/VendorProductImages/" + fileName;
                            fileName         = Path.Combine(Server.MapPath("~/Content/Pictures/VendorProductImages/"), fileName);
                            data.ImageFileProduct.SaveAs(fileName);

                            ProductPresenter.VendorProductSubmission(data, vname);
                            TempData["ProRegMsg"] = "Product Entered Successfully.";
                            ModelState.Clear();
                            return(RedirectToAction("newProduct", "Product"));
                        }
                        else
                        {
                            TempData["extension"] = "Only .jpg , .jpeg & .png file supported.";
                            return(RedirectToAction("newProduct", "Product"));
                        }
                    }
                    else
                    {
                        TempData["extension"] = "File size must be less than 5MB.";
                        return(RedirectToAction("newProduct", "Product"));
                    }
                }
            }
            catch (Exception ex)
            {
                TempData["ProRegMsg"] = "Product Insertion Failed - " + ex.Message;
            }
            return(RedirectToAction("newProduct", "Product"));
        }
コード例 #31
0
        void SetProducts()
        {
            foreach (var item in OrderDetail.OrderProducts)
            {
                var productPresenter = new ProductPresenter(item);

                if (OrderDetail.OrderStatus == Status.Submited || OrderDetail.OrderStatus == Status.Completed)
                {
                    productPresenter.AreVisible = false;
                }
                else
                {
                    productPresenter.AreVisible = true;
                }
                ProductPresenters.Add(productPresenter);
            }
        }
コード例 #32
0
ファイル: Solution.cs プロジェクト: bbraithwaite/TDDMistakes
            public MockProductPresenter(IProductView view)
            {
                var productService = Mock.Create<IProductService>();
                var navigationService = Mock.Create<INavigationService>();
                var basketService = Mock.Create<IBasketService>();

                // Setup for private methods
                Mock.Arrange(() => productService.GetByID("spr-product")).Returns(new Product());
                Mock.Arrange(() => basketService.ProductExists("spr-product")).Returns(true);
                Mock.Arrange(() => navigationService.GoTo("/not-found")).OccursOnce();

                Presenter = new ProductPresenter(
                                                view,
                                                navigationService,
                                                productService,
                                                basketService);
            }
コード例 #33
0
ファイル: ProductUI.cs プロジェクト: ravishankar54/Practice
 private void InitlizaPresenter()
 {
     Presenter = CreatePresenter<ProductPresenter>();
     Presenter.View = this;
 }