Beispiel #1
0
        public async void TestCreate_InvalidOrderDetail_ShouldFail()
        {
            // Arrange
            OrderDetailsController controller = new OrderDetailsController(_context);

            InitializeOrderDetail();
            orderDetail.GameId = 99;

            try
            {
                // Act
                var result = await controller.Create(orderDetail);

                // Assert
                Assert.IsType <ViewResult>(result);
                ViewResult viewResult = (ViewResult)result;
                Assert.NotNull(viewResult.ViewData.ModelState);
                Assert.NotEmpty(viewResult.ViewData.ModelState.Keys);

                foreach (string item in viewResult.ViewData.ModelState.Keys)
                {
                    Assert.Equal("", item);
                }
            }
            catch (Exception ex)
            {
                Assert.Equal("Microsoft.EntityFrameworkCore.DbUpdateException", ex.GetType().ToString());
            }
        }
Beispiel #2
0
        public List <Products> BuscarProducto(int OrderNumber)
        {
            List <Products> ob = null;

            ob = OrderDetailsController.BuscarProducto(OrderNumber);
            return(ob);
        }
Beispiel #3
0
        // THIS METHOD ADD PRODUCTS FROM INVENTORY TO ORDER
        protected void vendorCategoryCatalog_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            // Collect the required data fo the event
            OrderDetailsController sysmgr = new OrderDetailsController();

            // obtain the productid Selected Inventory Item
            int productID = int.Parse(e.CommandArgument.ToString());

            // obtain the CurrentActive Order ID
            int orderID = int.Parse(((Label)OrderDetailsGridView.Rows[0].FindControl("lblOrderID")).Text);
            //txtComments.Text = "Order ID, this is for testing purpose: " + int.Parse(orderID);

            // Qty should be equal to 1 at first
            int qty = 1;

            // Obtain the vendor ID
            int vendorID = int.Parse(VendorDDL.SelectedValue.ToString());

            // Obtain the cost
            decimal itemPrice = 5;

            MessageUserControl.TryRun(() =>
            {
                OrderDetailsController sysm = new OrderDetailsController();
                sysm.Add_ProductToOrder(productID, orderID, qty, itemPrice);

                List <ListVendorOrders> datainfo = sysm.Get_Active_Order(vendorID);
                OrderDetailsGridView.DataSource  = datainfo;
                OrderDetailsGridView.DataBind();
                CalculateTotal(sysm, vendorID);
            }, "Adding to order", $"Product added to the order");
        }
Beispiel #4
0
        protected void btnSelectVendor_Click(object sender, EventArgs e)
        {
            if (VendorDDL.SelectedIndex == 0)
            {
                pnlInventory.Visible     = false;
                pnlVendorResults.Visible = false;
                MessageUserControl.ShowInfo("Missing Data", "Select a vendor from the drop down list");
            }
            else
            {
                MessageUserControl.TryRun(() =>
                {
                    pnlInventory.Visible     = true;
                    pnlVendorResults.Visible = true;
                    txtComments.Text         = "Comments";

                    // Vendors Controller to get orders
                    VendorsController sysmgr          = new VendorsController();
                    OrderDetailsController controller = new OrderDetailsController();
                    int vendorId          = int.Parse(VendorDDL.SelectedValue);
                    var info              = sysmgr.Purchasing_Vendor_Get(vendorId);
                    lblVendorName.Text    = info.Name;
                    lblVendorContact.Text = info.Contact;
                    lblPhone.Text         = info.Phone;
                    //txtComments.Text = info.Orders.Comment;
                    // Calculate Total
                    CalculateTotal(controller, vendorId);


                    var data = controller.Get_Active_Order(int.Parse(VendorDDL.SelectedValue));
                    OrderDetailsGridView.DataSource = data;
                    OrderDetailsGridView.DataBind();
                }, "Vendors Selection", "Active Order Retrieved");
            }
        }
Beispiel #5
0
        public void OrderDetails_DetailsViewReturn()
        {
            // Arrange
            var dbContext  = _serviceProvider.GetRequiredService <ApplicationDbContext>();
            var controller = new OrderDetailsController(dbContext);

            // Act

            var result = controller.Details(null);
            //var result2 = controller.Details(null);
            //var result3 = controller.Details(null);

            // Assert
            var viewResult = Assert.IsType <HttpNotFoundResult>(result);

            //var viewResult2 = Assert.IsType<ViewResult>(result2);
            //var viewResult3 = Assert.IsType<ViewResult>(result3);

            Assert.NotNull(viewResult);
            // Assert.NotNull(viewResult.);
            //Assert.NotNull(viewResult2);
            //Assert.NotNull(viewResult2.ViewData);
            //Assert.NotNull(viewResult3);
            //Assert.NotNull(viewResult3.ViewData);
            //Assert.Same("Your contact page.", viewResult.ViewData["Message"]);
        }
Beispiel #6
0
        public async void TestEdit_InvalidOrderDetail_ShouldFail()
        {
            // Arrange
            OrderDetailsController controller = new OrderDetailsController(_context);

            try
            {
                // Act
                OrderDetail replayOrderDetail = await _context.OrderDetail
                                                .FirstOrDefaultAsync(a => a.OrderId == 20 && a.GameId == 20);

                replayOrderDetail.GameId = 99;

                var result = await controller.Edit(replayOrderDetail.OrderId, replayOrderDetail.GameId, replayOrderDetail);

                // Assert
                Assert.IsType <ViewResult>(result);
                ViewResult viewResult = (ViewResult)result;
                Assert.NotNull(viewResult.ViewData.ModelState);
                Assert.NotEmpty(viewResult.ViewData.ModelState.Keys);

                foreach (string item in viewResult.ViewData.ModelState.Keys)
                {
                    Assert.Equal("", item);
                }
            }
            catch (Exception ex)
            {
                Assert.Equal("System.NullReferenceException", ex.GetType().ToString());
            }
        }
Beispiel #7
0
        public OrderDetailsControllerTests()
        {
            _context = new Dima3APIContext(dbContextOptions);
            DummyDataDBInitializer db = new DummyDataDBInitializer();

            db.Seed(_context);

            _controller = new OrderDetailsController(_context);
        }
        public void TestOrderDetailExist_InvalidOrderIdAndGameId_Rejected(string value)
        {
            int orderId = int.Parse(value.Substring(0, value.IndexOf(",")));
            int gameId  = int.Parse(value.Substring(value.IndexOf(",") + 1,
                                                    value.Length - value.IndexOf(",") - 1));
            OrderDetailsController controller = new OrderDetailsController(_context);
            bool isExist = controller.OrderExists(orderId, gameId);

            Assert.Equal("False", isExist.ToString());
        }
Beispiel #9
0
        public void CalculateTotal(OrderDetailsController controller, int vendorid)
        {
            controller = new OrderDetailsController();
            var countTotal = controller.Get_Active_Order(vendorid);
            var subtotal   = countTotal.Sum(x => x.OrderQuantity * x.UnitCost);
            var tax        = subtotal * (decimal)0.05;
            var total      = subtotal + tax;

            txtSubTotal.Text = subtotal.ToString("c");
            txtTax.Text      = tax.ToString("c");
            txtTotal.Text    = total.ToString("c");
        }
        public OrderItemDetailsView(Guid orderId)
        {
            InitializeComponent();

            _orderId    = orderId;
            _orderItems = new List <OrderItemDTO>();

            _orderDetailsController     = new OrderDetailsController();
            _listAllOrderItemController = new ListOrderItemsController();
            _listProductController      = new ListProductController();
            _addOrderItemController     = new AddOrderItemController();
        }
Beispiel #11
0
        public void Setup()
        {
            _orderDetailsService = A.Fake <IOrderDetailsService>();
            _modifyOrderDetailsViewModelFactory =
                A.Fake <IAsyncViewModelFactory <ModifyOrderDetailsViewModel, ModifyOrderDetailsViewModel> >();
            _mapper = A.Fake <IMapper>();

            _orderDetailsController = new OrderDetailsController(
                _orderDetailsService,
                _modifyOrderDetailsViewModelFactory,
                _mapper);
        }
        public OrderDetailControllerTests()
        {
            var config = new MapperConfiguration(opts =>
            {
                opts.AddProfile <ModelToViewModelProfile>();
                opts.AddProfile <ViewModelToModelProfile>();
            });

            _mapper     = config.CreateMapper();
            _logger     = new Mock <ILoggerManager>();
            _mockrepo   = new Mock <IRepositoryWrapper>();
            _controller = new OrderDetailsController(_mapper, _mockrepo.Object, _logger.Object);
        }
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
                );

            OrdersController.AddRoutes(routes);
            OrderDetailsController.AddRoutes(routes);
        }
Beispiel #14
0
        public void OrderDetails_CreatesView()
        {  // return type is void not async task
            // Arrange
            var dbContext  = _serviceProvider.GetRequiredService <ApplicationDbContext>();
            var controller = new OrderDetailsController(dbContext);

            // Act
            var result = controller.Create(); // controller uses sync methods (not async)

            // Assert
            var viewResult = Assert.IsType <ViewResult>(result);

            Assert.Null(viewResult.ViewName);
            Assert.NotNull(viewResult.ViewData);
        }
Beispiel #15
0
        public void OrderDetails_ReturnView()
        {
            // Arrange
            var dbContext  = _serviceProvider.GetRequiredService <ApplicationDbContext>();
            var controller = new OrderDetailsController(dbContext);

            // Act
            var result = controller.Index();

            // Assert
            var viewResult = Assert.IsType <ViewResult>(result);

            Assert.NotNull(viewResult);
            Assert.NotNull(viewResult.ViewData);
            //Assert.Same("Your contact page.", viewResult.ViewData["Message"]);
        }
Beispiel #16
0
        protected void btnDelete_Click(object sender, EventArgs e)
        {
            int orderID = int.Parse(((Label)OrderDetailsGridView.Rows[0].FindControl("lblOrderID")).Text);

            MessageUserControl.TryRun(() =>
            {
                OrderDetailsController controller = new OrderDetailsController();
                int vendorId = int.Parse(VendorDDL.SelectedValue);
                controller.Delete_ProductItem(orderID);

                List <ListVendorOrders> datainfo = controller.Get_Active_Order(vendorId);
                OrderDetailsGridView.DataSource  = datainfo;
                OrderDetailsGridView.DataBind();
                CalculateTotal(controller, vendorId);
            }, "Deleting Order", "Order Has been Removed");
        }
Beispiel #17
0
        public async void TestDelete_InvalidOrderDetail_ShouldFail()
        {
            // Arrange
            OrderDetailsController controller = new OrderDetailsController(_context);

            try
            {
                // Act
                var result = await controller.DeleteConfirmed(99, 99);
            }
            // Assert
            catch (Exception ex)
            {
                Assert.Equal("System.InvalidOperationException", ex.GetType().ToString());
            }
        }
        protected void ForceClose_Click(object sender, EventArgs e)
        {
            var CloseOrder = new List <OrderList>();
            var OrderID    = int.Parse(VendorDDL.SelectedValue);
            var reason     = ReasonCommentReasonMessage.Text;

            if (string.IsNullOrEmpty(ReasonCommentReasonMessage.Text) || OrderID == 0)
            {
                MessageUserControl.ShowInfo("Must enter a reason for why you would like to close this order and make sure you have a vendor selected");
            }
            else
            {
                var closeorder = new OrderList();

                foreach (GridViewRow row in ReceivingGridView.Rows)
                {
                    var closelist = new OrderList();

                    var ProductID           = row.FindControl("ProductID") as Label;
                    var QuantityOutstanding = row.FindControl("QuantityOutstanding") as Label;

                    closelist.ProductID           = int.Parse(ProductID.Text);
                    closelist.QuantityOutstanding = int.Parse(QuantityOutstanding.Text);
                    closelist.QuantityOutstanding = 0;

                    CloseOrder.Add(closelist);
                }

                ReceivingPanel.Visible = false;

                MessageUserControl.TryRun(() =>
                {
                    var closeordercontroller = new OrderDetailsController();
                    closeordercontroller.Force_Closure(OrderID, reason);
                }, "Closure Message Sucess", "The order is now closed");

                VendorDDL.DataBind();
            }
        }
        public void ParseOrderDetails_Full()
        {
            var controller = new OrderDetailsController(_firebaseService);

            var expectedList = new OrderDetail()
            {
                Id             = 1,
                TrackingNumber = "LB000x000",
                TrackingSteps  = new List <TrackingStep>()
                {
                    new TrackingStep()
                    {
                        Date = new DateTime(2019, 10, 01, 08, 00, 00), Status = Status.Bought
                    },
                    new TrackingStep()
                    {
                        Date = new DateTime(2019, 10, 01, 08, 30, 00), Status = Status.Paid
                    },
                    new TrackingStep()
                    {
                        Date = new DateTime(2019, 10, 01, 16, 00, 00), Status = Status.Sent
                    },
                    new TrackingStep()
                    {
                        Date = new DateTime(2019, 10, 01, 16, 00, 00), Status = Status.InTransit
                    },
                    new TrackingStep()
                    {
                        Date = new DateTime(2019, 10, 06, 10, 00, 00), Status = Status.Delivered
                    }
                }
            };

            var json = JsonConvert.SerializeObject(expectedList);

            var list = controller.ParseOrderDetails(json);

            Assert.Equal(expectedList, list);
        }
Beispiel #20
0
        protected void OrderDetailsGridView_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            OrderDetailsController controller = new OrderDetailsController();
            int vendorId = int.Parse(VendorDDL.SelectedValue);

            if (e.CommandName.Equals("Refresh"))
            {
                int     OrderDetailID = int.Parse(e.CommandArgument.ToString());
                int     qty           = 0;
                decimal unitcost      = 0;
                decimal perItemCost   = 0;
                decimal unitSize      = 0;
                Label   yourlabel     = null;

                for (int rowIndex = 0; rowIndex < OrderDetailsGridView.Rows.Count; rowIndex++)
                {
                    if ((OrderDetailsGridView.Rows[rowIndex].FindControl("lblOrderDetailID") as Label).Text == e.CommandArgument.ToString())
                    {
                        qty = int.Parse((OrderDetailsGridView.Rows[rowIndex].FindControl("txtQuantity") as TextBox).Text);

                        //string z = (OrderDetailsGridView.Rows[rowIndex].FindControl("txtUnitCost") as TextBox).Text;
                        //string zRemove = z.Remove(0, 0);
                        unitcost = decimal.Parse((OrderDetailsGridView.Rows[rowIndex].FindControl("txtUnitCost") as TextBox).Text);

                        string x       = (OrderDetailsGridView.Rows[rowIndex].FindControl("lblPerItemCost") as Label).Text;
                        string xRemove = x.Remove(0, 1);
                        perItemCost = decimal.Parse(xRemove);

                        string y       = (OrderDetailsGridView.Rows[rowIndex].FindControl("lblUnitSize") as Label).Text;
                        string yRemove = y.Remove(2);
                        unitSize = decimal.Parse(yRemove);


                        // For the warning message


                        yourlabel = (OrderDetailsGridView.Rows[rowIndex].FindControl("lblCostWarning") as Label);
                        //bind your label to data here
                    }
                }
                if (qty <= 0)
                {
                    MessageUserControl.ShowInfo("Quantity can not be a negative number");
                }
                else if (perItemCost > (unitcost / unitSize))
                {
                    MessageUserControl.ShowInfo("Per-item cost can not be greater than selling price");
                    yourlabel.Visible = true;
                    CalculateTotal(controller, vendorId);
                }
                else
                {
                    MessageUserControl.TryRun(() =>
                    {
                        controller.Quantity_Refresh(OrderDetailID, qty, unitcost);
                        List <ListVendorOrders> datainfo = controller.Get_Active_Order(vendorId);
                        OrderDetailsGridView.DataSource  = datainfo;
                        OrderDetailsGridView.DataBind();
                        CalculateTotal(controller, vendorId);
                    }, "Refreshing", "Item Quantity Updated");
                }
            }
            else
            {
                int OrderDetailID = int.Parse(e.CommandArgument.ToString());
                MessageUserControl.TryRun(() =>
                {
                    controller.Delete_ProductItem(OrderDetailID);

                    List <ListVendorOrders> datainfo = controller.Get_Active_Order(vendorId);
                    OrderDetailsGridView.DataSource  = datainfo;
                    OrderDetailsGridView.DataBind();
                    CalculateTotal(controller, vendorId);
                }, "Deleting Product", "Item Has been Removed from Order");
            }
        }
Beispiel #21
0
        public IActionResult Get()
        {
            var query = from h in context.Lg00101Orfiche
                        join y in context.Lg00101Orfline on h.Logicalref equals y.Ordficheref
                        join r in context.Lg001Clcard on h.Clientref equals r.Logicalref
                        join x in context.Lg001Items on y.Stockref equals x.Logicalref
                        join q in context.Lg001Unitsetf on y.Usref equals q.Logicalref
                        join z in context.Lg001Unitsetl on y.Uomref equals z.Logicalref
                        join w in context.Lg001Specodes.Where(p => p.Spetyp1 == 1) on x.Specode equals w.Specode into ej
                        from w in ej.DefaultIfEmpty()
                        join e in context.Lg001Specodes.Where(p => p.Spetyp2 == 1) on x.Specode2 equals e.Specode into ed
                        from e in ed.DefaultIfEmpty()

                        join a in context.Lg001Specodes.Where(p => p.Spetyp3 == 1) on x.Specode3 equals a.Specode into ey from a in ey.DefaultIfEmpty()
                        join b in context.Lg001Specodes.Where(p => p.Spetyp4 == 1) on x.Specode4 equals b.Specode into ek
                        from b in ek.DefaultIfEmpty()
                        join g in context.Lg001Specodes.Where(p => p.Spetyp5 == 1) on x.Specode5 equals g.Specode into eo from g in eo.DefaultIfEmpty()


                        select new
            {
                Logicalref = h.Logicalref,
                Sipdetay   = y.Logicalref,
                Main       = new
                {
                    MainCode         = q.Code,
                    MainName         = q.Name,
                    MainLogicalRef   = q.Logicalref,
                    MainCreatedTime  = q.CapiblockCreadeddate,
                    MainModifiedTime = q.CapiblockModifieddate
                },
                Alt = new
                {
                    AltCode   = z.Code,
                    AltName   = z.Name,
                    AltId     = z.Logicalref,
                    AltMainID = z.Unitsetref
                },
                Item = new
                {
                    ItemId           = x.Logicalref,
                    ItemCode         = x.Code,
                    ItemName         = x.Name,
                    ItemColor        = w.Definition,
                    ItemFloor        = e.Definition,
                    ItemPattern      = a.Definition,
                    ItemRope         = b.Definition,
                    ItemStrike       = g.Definition,
                    ItemCreatedTime  = x.CapiblockCreadeddate,
                    ItemModifiedTime = x.CapiblockModifieddate
                },

                Client = new {
                    ClientId   = r.Logicalref,
                    ClientName = r.Definition,
                    ClientCode = r.Code
                },

                Order = new
                {
                    orderId  = h.Logicalref,
                    FicheNo  = h.Ficheno,
                    clientid = r.Logicalref
                },

                Orderdetail = new
                {
                    OrderId   = h.Logicalref,
                    amount    = y.Amount,
                    altunitId = z.Logicalref,
                    itemId    = x.Logicalref
                },



                Ficheno  = h.Ficheno,
                Date     = h.Date,
                Time     = h.Time,
                Stockref = y.Stockref,
                specode1 = w.Definition,
                specode2 = e.Definition,
                specode3 = a.Definition,
                specode4 = b.Definition,
                specode5 = g.Definition,

                Musteri   = h.Clientref,
                musterino = r.Code,
                birim     = y.Usref
            };

            foreach (var item in query)
            {
                //client oluşturma
                ClientsController clientsController = new ClientsController(_context);
                Client            client            = new Client();
                client.Name       = item.Client.ClientName;
                client.ClientCode = item.Client.ClientCode;
                client.Id         = item.Client.ClientId;


                clientsController.PostClient(client);

                //item oluşturma
                ItemsController itemsController = new ItemsController(_context);
                Item            item1           = new Item();
                item1.Id                = item.Item.ItemId;
                item1.Code              = item.Item.ItemCode;
                item1.Name              = item.Item.ItemName;
                item1.Color             = item.Item.ItemColor;
                item1.Floor             = item.Item.ItemFloor;
                item1.Pattern           = item.Item.ItemPattern;
                item1.Rope              = item.Item.ItemRope;
                item1.Strike            = item.Item.ItemStrike;
                item1.LogicCreatedDate  = item.Item.ItemCreatedTime;
                item1.LogicModifiedDate = item.Item.ItemModifiedTime;
                itemsController.PostItem(item1);

                //mainunit
                MainUnitsController mainUnit = new MainUnitsController(_context);
                MainUnit            main     = new MainUnit();
                main.Code              = item.Main.MainCode.ToString();
                main.Name              = item.Main.MainName;
                main.Id                = item.Main.MainLogicalRef;
                main.LogicCreatedDate  = item.Main.MainCreatedTime;
                main.LogicModifiedDate = item.Main.MainModifiedTime;
                mainUnit.PostMainUnit(main);

                //altUnit

                AltUnitsController altUnit = new AltUnitsController(_context);
                AltUnit            alt     = new AltUnit();
                alt.Id   = item.Alt.AltId;
                alt.Code = item.Alt.AltCode;
                alt.Name = item.Alt.AltName;

                alt.MainUnitId = item.Alt.AltMainID;
                //altUnit.PostAltUnit(alt);
                altUnit.PostAltUnit(alt);



                //order

                OrdersController order1 = new OrdersController(_context);
                Order            order  = new Order();
                order.Id       = item.Order.orderId;
                order.FicheNo  = item.Order.FicheNo;
                order.ClientId = item.Order.clientid;
                order.Statu    = 0;
                order1.PostOrder(order);



                //orderdetail

                OrderDetailsController orderDetail = new OrderDetailsController(_context);
                OrderDetail            orderd      = new OrderDetail();
                orderd.OrderId   = item.Orderdetail.OrderId;
                orderd.Amount    = item.Orderdetail.amount;
                orderd.AltUnitId = item.Orderdetail.altunitId;
                orderd.ItemId    = item.Orderdetail.itemId;
                orderDetail.PostOrderDetail(orderd);
            }



            return(Ok(query));
        }