Ejemplo n.º 1
0
        public async Task <JsonResult> PostMessageSignal(string message)
        {
            var result = new JsonResult();

            if (!string.IsNullOrEmpty(message))
            {
                var chat = await SendSaveMessage(new Chat { Message = message });

                if (chat != null)
                {
                    result.Data = new { success = true, username = chat.UserName, message = chat.Message, timestamp = chat.TimeStamp }
                }
                ;
                else
                {
                    result.Data = new { success = false }
                };
            }
            else
            {
                result.Data = new { success = false }
            };

            return(result);
        }

        async Task <Chat> SendSaveMessage(Chat model)
        {
            if (model.Message.Contains("/stock="))
            {
                var split = model.Message.Split('=');
                await StockController.SendCodeMessage(split[1], User.Identity.Name);

                return(null);
            }
            else
            {
                await SaveModel(model);

                return(model);
            }
        }

        async Task SaveModel(Chat model)
        {
            var db = new ChatModel();

            model.UserName  = User.Identity.Name;
            model.TimeStamp = DateTime.Now.ToFileTime();
            db.Chat.Add(model);
            await db.SaveChangesAsync();
        }

        object GetData()
        {
            var db = new ChatModel();

            return(db.Chat.OrderByDescending(r => r.TimeStamp).Take(50).ToList());
        }
    }
Ejemplo n.º 2
0
        public async Task TestCorrect()
        {
            StockController       controller = ControllerCreator.CreateStockControllerCorrectToken();
            string                dateTime   = Json.Serialize <DateTime>(DateTime.Now.AddDays(-10));
            ActionResult <string> result     = await controller.GetMutations(1, 10, dateTime);

            string resultValue = (result.Result as OkObjectResult).Value as string;

            StockMutation[] mutations = Json.Deserialize <StockMutation[]>(resultValue);

            StockMutation[] expectedMutations = new StockMutation[]
            {
                new StockMutation(1, 1, 1, -2, MutationReason.Sold, DateTime.Now.AddDays(-9)),
                new StockMutation(2, 1, 1, -2, MutationReason.Sold, DateTime.Now.AddDays(-8)),
                new StockMutation(3, 1, 1, -3, MutationReason.Broken, DateTime.Now.AddDays(-7)),
                new StockMutation(4, 1, 1, 10, MutationReason.Bought, DateTime.Now.AddDays(-6)),
                new StockMutation(5, 1, 1, -4, MutationReason.Sold, DateTime.Now.AddDays(-4))
            };

            Assert.Multiple(() =>
            {
                Assert.IsInstanceOf <OkObjectResult>(result.Result);
                Assert.AreEqual(expectedMutations, mutations);
            });
        }
        public StockControllerTests()
        {
            var mockRepository = new MockRepository(MockBehavior.Strict);

            _MissingStockId    = Guid.NewGuid();
            _ValidationErrorId = Guid.NewGuid();

            _Stock = new Stock(Guid.NewGuid());
            _Stock.List("ABC", "ABC Pty Ltd", new Date(2000, 01, 01), false, Domain.Stocks.AssetCategory.AustralianStocks);
            _Stock.ChangeProperties(new Date(2010, 01, 01), "XYZ", "XYZ Pty Ltd", Domain.Stocks.AssetCategory.AustralianStocks);

            _StockPriceHistory = mockRepository.Create <IStockPriceHistory>();
            _StockPriceHistory.Setup(x => x.GetPrice(Date.Today)).Returns(12.25m);
            _StockPriceHistory.Setup(x => x.GetPrices(It.IsAny <DateRange>())).Returns(new[] { new StockPrice(new Date(2010, 01, 01), 0.10m) });

            _Stock.SetPriceHistory(_StockPriceHistory.Object);

            _StockQueryMock = mockRepository.Create <IStockQuery>();
            _StockQueryMock.Setup(x => x.Get(_MissingStockId)).Returns(default(Stock));
            _StockQueryMock.Setup(x => x.Get(_Stock.Id)).Returns(_Stock);

            _StockQueryMock.Setup(x => x.All()).Returns(new[] { _Stock });
            _StockQueryMock.Setup(x => x.All(It.IsAny <Date>())).Returns(new[] { _Stock });

            _StockQueryMock.Setup(x => x.All()).Returns(new[] { _Stock });
            _StockQueryMock.Setup(x => x.All(It.IsAny <Date>())).Returns(new[] { _Stock });
            _StockQueryMock.Setup(x => x.All(It.IsAny <DateRange>())).Returns(new[] { _Stock });

            _StockQueryMock.Setup(x => x.Find(It.IsAny <Func <StockProperties, bool> >())).Returns(new[] { _Stock });
            _StockQueryMock.Setup(x => x.Find(It.IsAny <Date>(), It.IsAny <Func <StockProperties, bool> >())).Returns(new[] { _Stock });
            _StockQueryMock.Setup(x => x.Find(It.IsAny <DateRange>(), It.IsAny <Func <StockProperties, bool> >())).Returns(new[] { _Stock });

            _StockServiceMock = mockRepository.Create <IStockService>();
            _StockServiceMock.Setup(x => x.ChangeDividendRules(_MissingStockId, It.IsAny <Date>(), It.IsAny <decimal>(), It.IsAny <RoundingRule>(), It.IsAny <bool>(), It.IsAny <Domain.Stocks.DrpMethod>())).Returns(ServiceResult.NotFound());
            _StockServiceMock.Setup(x => x.ChangeDividendRules(_ValidationErrorId, It.IsAny <Date>(), It.IsAny <decimal>(), It.IsAny <RoundingRule>(), It.IsAny <bool>(), It.IsAny <Domain.Stocks.DrpMethod>())).Returns(ServiceResult.Error("Dummy Error"));
            _StockServiceMock.Setup(x => x.ChangeDividendRules(_Stock.Id, It.IsAny <Date>(), It.IsAny <decimal>(), It.IsAny <RoundingRule>(), It.IsAny <bool>(), It.IsAny <Domain.Stocks.DrpMethod>())).Returns(ServiceResult.Ok());

            _StockServiceMock.Setup(x => x.ListStock(_MissingStockId, It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Date>(), It.IsAny <bool>(), It.IsAny <Domain.Stocks.AssetCategory>())).Returns(ServiceResult.NotFound());
            _StockServiceMock.Setup(x => x.ListStock(_ValidationErrorId, It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Date>(), It.IsAny <bool>(), It.IsAny <Domain.Stocks.AssetCategory>())).Returns(ServiceResult.Error("Dummy Error"));
            _StockServiceMock.Setup(x => x.ListStock(_Stock.Id, It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Date>(), It.IsAny <bool>(), It.IsAny <Domain.Stocks.AssetCategory>())).Returns(ServiceResult.Ok());

            _StockServiceMock.Setup(x => x.ChangeStock(_MissingStockId, It.IsAny <Date>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Domain.Stocks.AssetCategory>())).Returns(ServiceResult.NotFound());
            _StockServiceMock.Setup(x => x.ChangeStock(_ValidationErrorId, It.IsAny <Date>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Domain.Stocks.AssetCategory>())).Returns(ServiceResult.Error("Dummy Error"));
            _StockServiceMock.Setup(x => x.ChangeStock(_Stock.Id, It.IsAny <Date>(), It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Domain.Stocks.AssetCategory>())).Returns(ServiceResult.Ok());

            _StockServiceMock.Setup(x => x.DelistStock(_MissingStockId, It.IsAny <Date>())).Returns(ServiceResult.NotFound());
            _StockServiceMock.Setup(x => x.DelistStock(_ValidationErrorId, It.IsAny <Date>())).Returns(ServiceResult.Error("Dummy Error"));
            _StockServiceMock.Setup(x => x.DelistStock(_Stock.Id, It.IsAny <Date>())).Returns(ServiceResult.Ok());

            _StockServiceMock.Setup(x => x.UpdateClosingPrices(_MissingStockId, It.IsAny <IEnumerable <StockPrice> >())).Returns(ServiceResult.NotFound());
            _StockServiceMock.Setup(x => x.UpdateClosingPrices(_ValidationErrorId, It.IsAny <IEnumerable <StockPrice> >())).Returns(ServiceResult.Error("Dummy Error"));
            _StockServiceMock.Setup(x => x.UpdateClosingPrices(_Stock.Id, It.IsAny <IEnumerable <StockPrice> >())).Returns(ServiceResult.Ok());

            _StockServiceMock.Setup(x => x.UpdateCurrentPrice(_MissingStockId, It.IsAny <decimal>())).Returns(ServiceResult.NotFound());
            _StockServiceMock.Setup(x => x.UpdateCurrentPrice(_ValidationErrorId, It.IsAny <decimal>())).Returns(ServiceResult.Error("Dummy Error"));
            _StockServiceMock.Setup(x => x.UpdateCurrentPrice(_Stock.Id, It.IsAny <decimal>())).Returns(ServiceResult.Ok());

            _Controller = new StockController(_StockServiceMock.Object, _StockQueryMock.Object);
        }
Ejemplo n.º 4
0
        public static StockController CreateStockControllerCorrectToken()
        {
            var             httpClientFactoryMock = CreateMockClientFactoryOk();
            StockController controller            = new StockController(httpClientFactoryMock);

            AddToken(controller, "token", "token1");
            return(controller);
        }
Ejemplo n.º 5
0
        public static StockController CreateStockControllerWrongToken()
        {
            var             httpClientFactoryMock = CreateMockClientFactoryBadRequest();
            StockController controller            = new StockController(httpClientFactoryMock);

            AddToken(controller, "token", "token1");
            return(controller);
        }
Ejemplo n.º 6
0
        public void StockListJson()
        {
            StockController       controller = new StockController();
            JsonResult            result     = controller.StockListJson() as JsonResult;
            List <stockViewModel> stocks     = new List <stockViewModel>();

            Assert.IsInstanceOfType(result.Data, typeof(List <stockViewModel>));
        }
        public async Task TestWrongToken()
        {
            StockController       controller     = ControllerCreator.CreateStockControllerWrongToken();
            string                dateTimeString = Json.Serialize <DateTime>(DateTime.Now.AddDays(-10));
            ActionResult <string> result         = await controller.GetStockHistory(1, 3, dateTimeString);

            Assert.IsInstanceOf <UnauthorizedObjectResult>(result.Result);
        }
Ejemplo n.º 8
0
 public void GetValueAsBoolTest()
 {
     StockController.GetValueAsBool("true").ShouldBeTrue();
     StockController.GetValueAsBool("false").ShouldBeFalse();
     StockController.GetValueAsBool("false,false").ShouldBeFalse();
     StockController.GetValueAsBool("true,false").ShouldBeTrue();
     StockController.GetValueAsBool("true,true").ShouldBeTrue();
 }
Ejemplo n.º 9
0
        public async Task TestWrongToken()
        {
            StockController       controller = ControllerCreator.CreateStockControllerWrongToken();
            string                dateTime   = Json.Serialize <DateTime>(DateTime.Now);
            ActionResult <string> result     = await controller.GetMutations(1, 10, dateTime);

            Assert.IsInstanceOf <UnauthorizedObjectResult>(result.Result);
        }
Ejemplo n.º 10
0
        public void Get_ReturnsOk()
        {
            var stock = new StockController(_rabbit.Object, _stock.Object);

            var result = stock.Get("a");

            Assert.That(result, Is.TypeOf <OkResult>());
        }
Ejemplo n.º 11
0
        public void GetStocksTest()
        {
            StockController sc = new StockController();

            try
            {
                string       sql = "SELECT * FROM test_products;";
                MySqlCommand cmd = new MySqlCommand(sql, sc.connection);
                sc.connection.Open();
                MySqlDataReader reader = cmd.ExecuteReader();

                while (reader.Read())
                {
                    int               id              = Convert.ToInt32(reader["id"]);
                    string            name            = Convert.ToString(reader["name"]);
                    string            description     = Convert.ToString(reader["description"]);
                    double            price           = Convert.ToDouble(reader["price"]);
                    double            supplyCost      = Convert.ToDouble(reader["supply_cost"]);
                    DateTime          dateOfArrival   = Convert.ToDateTime(reader["date_of_arrival"]);
                    int               quantity        = Convert.ToInt32(reader["quantity"]);
                    int               restockQuantity = Convert.ToInt32(reader["restock_quantity"]);
                    int               timesSold       = Convert.ToInt32(reader["times_sold"]);
                    bool              requested       = Convert.ToBoolean(reader["reqested"]);
                    ProductDepartment dep             = null;
                    foreach (ProductDepartment d in dc.GetDepartments())
                    {
                        if (d.Id == Convert.ToInt32(reader["department"]))
                        {
                            dep = d;
                        }
                    }


                    sc.Stocks.Add(new Stock(id, name, description, price, supplyCost, dateOfArrival, quantity, timesSold, restockQuantity, requested, dep));

                    Stock stock  = new Stock(testId, testName, testDescription, testPrice, testSupplyCost, testDateOfArrival, testQuantity, testTimesSold, testRestockQuantity, testRequested, testDepartment);
                    Stock stock2 = new Stock(2, testName, testDescription, testPrice, testSupplyCost, testDateOfArrival, testQuantity, testTimesSold, testRestockQuantity, testRequested, testDepartment);

                    CollectionAssert.AreEquivalent(new List <Stock> {
                        stock, stock2
                    }, sc.Stocks);
                }
            }
            catch (MySqlException)
            {
                throw new Exception("Fail");
            }
            catch (Exception)
            {
            }
            finally
            {
                if (sc.connection != null)
                {
                    sc.connection.Close();
                }
            }
        }
Ejemplo n.º 12
0
 private void FrmEgreso_Load(object sender, EventArgs e)
 {
     StockController     = new StockController();
     ArticulosController = new ArticulosController();
     if (IdArticulo > 0)
     {
         _CargarDatosArticulo();
     }
 }
Ejemplo n.º 13
0
        private void _CargarDatosArticulo()
        {
            var articulo = ArticulosController.DatosArticuloPorCodigo(IdArticulo);

            codArticulo.Text      = articulo.Codigo;
            nombreArticulo.Text   = articulo.Descripcion;
            txtStockActual.Text   = articulo.Stock.ToString();
            ddlMotivos.DataSource = StockController.ListadoMotivosEgreso();
        }
Ejemplo n.º 14
0
        public async Task TestWrongToken()
        {
            StockController       controller     = ControllerCreator.CreateStockControllerWrongToken();
            StockMutation         mutation       = new StockMutation(null, 1, 1, -1, MutationReason.Sold, DateTime.Now.AddDays(-1));
            string                mutationString = Json.Serialize <StockMutation>(mutation);
            ActionResult <string> result         = await controller.PostMutation(mutationString);

            Assert.IsInstanceOf <UnauthorizedObjectResult>(result.Result);
        }
Ejemplo n.º 15
0
        public StockControllerTest()
        {
            Mock <IStockDataService> mock = new Mock <IStockDataService>();

            mock.Setup(service => service.GetStocksAsync()).ReturnsAsync(() => mockResult);
            _service    = mock.Object;
            _controller = new StockController(_service);
            //_service = new StockDataServiceFake();
            //_controller = new StockController(_service);
        }
Ejemplo n.º 16
0
        private void Command()
        {
            StockManager    stockManager    = new StockManager("iPhone", 200);
            BuyStock        buyStock        = new BuyStock(stockManager);
            SellStock       sellStock       = new SellStock(stockManager);
            StockController stockController = new StockController();

            stockController.TakeOrder(buyStock);
            stockController.TakeOrder(sellStock);
            stockController.TakeOrder(sellStock);
        }
Ejemplo n.º 17
0
        public void SetUp()
        {
            categoryRepository = MockRepository.GenerateStub <IRepository <Category> >();
            sizeRepository     = MockRepository.GenerateStub <IRepository <Size> >();
            productRepository  = MockRepository.GenerateStub <IRepository <Product> >();

            stockController = new StockController(
                categoryRepository,
                sizeRepository,
                productRepository);
        }
Ejemplo n.º 18
0
        /// <summary>
        /// Create report by user
        /// </summary>
        /// <param name="user">User that will reported/param>
        public void CreateReport(User user)
        {
            user.Borrows = ItemController.GetItems(true)
                           .SelectMany(x => x.Borrows.Where(y => y.User_Id.Equals(user.Id))).ToList();
            foreach (var borrow in user.Borrows)
            {
                borrow.Stock = StockController.GetAllStocks().First(y => y.Id.Equals(borrow.Stock_Id));
            }

            ReportUtil.CreateReport(user);
        }
Ejemplo n.º 19
0
        public void UpdateLocalProducts()
        {
            Products.Clear();
            OnStockClear?.Invoke();

            foreach (var product in StockController.GetAllDbProducts().Where(product => product.Number > 0))
            {
                Products.Add(product);
                OnProductAdd?.Invoke(product);
            }
        }
Ejemplo n.º 20
0
 private void ShowAdvanceSUmmary()
 {
     //throw new NotImplementedException();
     if (stock == null)
         stock = new StockController();
     dgvAdvSumm.DataSource = stock.GetAdvanceSummary(rtFilter, accFilter, (int)nCycle.Value);
     foreach ( DataGridViewRow dvr in dgvAdvSumm.Rows)
     {
         nTotalAdvance.Value = nTotalAdvance.Value + decimal.Parse(dvr.Cells["TotalAdvance"].Value.ToString());
     }
 }
Ejemplo n.º 21
0
 private void LoadDefaults()
 {
     advctr = new AdvController();
     sc     = new StockController();
     //selectedRoute.
     cbRoute.SelectedIndex = -1;
     this.RouteList        = sc.GetRoutes().ToList();
     cbRoute.DataSource    = RouteList;
     cbRoute.DisplayMember = "rName";
     cbRoute.ValueMember   = "rName";
 }
Ejemplo n.º 22
0
    public void Initialize(StockController sc, List <StockData> stockDataList)
    {
        this.sc = sc;

        foreach (var datum in stockDataList)
        {
            var item = Instantiate(marketItemPrefab, itemList);
            item.SetUpRow(this, datum);

            marketItems.Add(item);
        }
    }
Ejemplo n.º 23
0
 private void LoadData()
 {
     try
     {
         DataTable dt = StockController.GetStockBfOfDay(dtpPeriodDate.Value);
         gv.DataSource = dt;
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Error LoadData", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
Ejemplo n.º 24
0
        private void FrmStock_Load(object sender, EventArgs e)
        {
            StockController     = new StockController();
            ArticulosController = new ArticulosController();

            var listadoArticulos = ArticulosController.ListarArticulos();

            grdArticulosStock.DataSource         = listadoArticulos.ToDataTable();
            grdArticulosStock.Columns[0].Visible = false;
            grdArticulosStock.Columns[4].Visible = false;
            grdArticulosStock.Columns[5].Visible = false;
        }
Ejemplo n.º 25
0
        private void btnAceptar_Click(object sender, EventArgs e)
        {
            if (String.IsNullOrEmpty(txtCantidad.Text))
            {
                errorProviderRequerido.SetError(txtCantidad, "Ingrese cantidad.");
                return;
            }

            var stockActual = Convert.ToDecimal(txtStockActual.Text);
            var stockEgreso = Convert.ToDecimal(txtCantidad.Text);

            if (stockActual < stockEgreso)
            {
                MessageBox.Show(Constants.ERROR_STOCK_INSUFICIENTE);
                return;
            }

            var egresoArticulo = new Egreso_Stock()
            {
                Cantidad    = stockEgreso,
                FechaEgreso = DateTime.Now,
                Motivo      = ddlMotivos.SelectedText,
                idArticulo  = IdArticulo
            };
            var articulo = new Articulo()
            {
                idArticulo = IdArticulo,
                Stock      = Convert.ToDecimal(txtStockActual.Text) - Convert.ToDecimal(txtCantidad.Text)
            };

            try
            {
                var resultadoArticuloGuardado = ArticulosController.ActualizarStockArticulo(articulo);
                var resultadoEgreso           = StockController.EgresoStockArticulo(egresoArticulo);

                if (resultadoArticuloGuardado && resultadoEgreso)
                {
                    MessageBox.Show(Constants.OK_EGRESO_STOCK);
                    DialogResult = DialogResult.OK;
                    Close();
                }
                else
                {
                    MessageBox.Show(Constants.ERROR_EGRESO_STOCK);
                }
            }
            catch (Exception)
            {
                MessageBox.Show("Ocurrio un error al guardar el egreso de stock, verifique los datos");
                this.Close();
            }
        }
Ejemplo n.º 26
0
        public async Task TestCorrect()
        {
            StockController       controller = ControllerCreator.CreateStockControllerCorrectToken();
            ActionResult <string> result     = await controller.GetCurrentStock(1);

            Assert.Multiple(() =>
            {
                Assert.IsInstanceOf <OkObjectResult>(result.Result);
                int?resultValue = (result.Result as OkObjectResult).Value as int?;
                Assert.NotNull(resultValue);
                Assert.AreEqual(9, resultValue);
            });
        }
Ejemplo n.º 27
0
        public void Low_OutOfBoundsNegativePassed_NotFoundReturned()
        {
            var       context    = new MockStockContext(Data.ProductStocks(), Data.Prices(), null);
            var       controller = new StockController(context, null);
            const int count      = NegativeId;

            var result = controller.Low(count);

            Assert.IsNotNull(result);
            var priceResult = result.Result as NotFoundResult;

            Assert.IsNotNull(priceResult);
        }
Ejemplo n.º 28
0
        public async Task VendorProducts_EmtpySupplierPassed_ReturnNotFound()
        {
            var          context    = new MockStockContext(Data.ProductStocks(), Data.Prices(), null);
            var          controller = new StockController(context, null);
            const string supplier   = "";

            var result = await controller.VendorProducts(supplier);

            Assert.IsNotNull(result);
            var objectResult = result as NotFoundResult;

            Assert.IsNotNull(objectResult);
        }
Ejemplo n.º 29
0
        public void GetStockTest()
        {
            StockController sc = new StockController();

            Stock stock  = new Stock(testId, testName, testDescription, testPrice, testSupplyCost, testDateOfArrival, testQuantity, testTimesSold, testRestockQuantity, testRequested, testDepartment);
            Stock stock2 = new Stock(2, testName, testDescription, testPrice, testSupplyCost, testDateOfArrival, testQuantity, testTimesSold, testRestockQuantity, testRequested, testDepartment);

            sc.Stocks.Add(stock);
            sc.Stocks.Add(stock2);
            Stock actualStock = sc.GetStock(1);

            Assert.AreEqual(stock, actualStock);
        }
Ejemplo n.º 30
0
 private void LoadProductionDate()
 {
     try
     {
         DateTime res = (DateTime)StockController.GetProductionDate();
         dtpPeriodDate.Value = res;
         LoadData();
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Error LoadProductionDate", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }