public void Execute()
        {
            Produto p = PromptUserToBuildProduct();

            using (ProdutoSession s = new ProdutoSession())
            {
                using (var das = s.CreateDataAccessScope(true))
                {
                    IMapperProduto map = s.CreateMapperProduto();
                    map.Create(p);
                    das.Commit();
                }
            }
            ProdVendidoPorFranqueado pvpf = PromptUserToBuildProdVendidoPorFranqueado();

            using (ProdVendidoPorFranqueadoSession s = new ProdVendidoPorFranqueadoSession())
            {
                using (var das = s.CreateDataAccessScope(true))
                {
                    IMapperProdVendidoPorFranqueado map = s.CreateMapperProdVendidoPorFranqueado();
                    map.Create(pvpf);
                    das.Commit();
                }
            }
        }
        private void RefreshProductsCache()
        {
            List <ProdVendidoPorFranqueado> prodsVendidosPorFranqueado;

            using (ProdVendidoPorFranqueadoSession s = new ProdVendidoPorFranqueadoSession())
            {
                using (var das = s.CreateDataAccessScope(true))
                {
                    IMapperProdVendidoPorFranqueado map = s.CreateMapperProdVendidoPorFranqueado();

                    prodsVendidosPorFranqueado = map.GetAllInFranchisee(franqId).ToList();
                }
            }
            using (ProdutoSession s = new ProdutoSession())
            {
                using (var das = s.CreateDataAccessScope(true))
                {
                    IMapperProduto map = s.CreateMapperProduto();
                    productsCache = map
                                    .GetAll()
                                    .Zip(prodsVendidosPorFranqueado, (p, pvpf) => ProdutoViewInStore.Parse(p, pvpf))
                                    .ToList();
                }
            }
        }
Beispiel #3
0
        public void Execute()
        {
            Console.WriteLine("Choose Prod Id to obtain Average");
            int prodId;

            while (!int.TryParse(Console.ReadLine(), out prodId))
            {
                Console.WriteLine("Invalid number, please try again!");
            }


            using (ProdVendidoPorFranqueadoSession s = new ProdVendidoPorFranqueadoSession())
            {
                using (var das = s.CreateDataAccessScope(true))
                {
                    IMapperProdVendidoPorFranqueado map      = s.CreateMapperProdVendidoPorFranqueado();
                    IEnumerable <AvgSale>           avgSales = map.AvgSalesInPresentYear(prodId);
                    if (avgSales.Count() == 0)
                    {
                        Console.WriteLine("Product with id = {0} did not sell any units this year", prodId);
                    }
                    foreach (AvgSale avg in avgSales)
                    {
                        Console.WriteLine("Product {0} sold on average {1} units during this year", avg.ProdId, avg.Avg);
                    }
                    Console.WriteLine("Press any key to continue");
                    Console.ReadKey();
                }
            }
        }
 private void RemoveFranchiseeFromProdVendidoPorFranqueado(int franqId)
 {
     using (ProdVendidoPorFranqueadoSession s = new ProdVendidoPorFranqueadoSession())
     {
         using (var das = s.CreateDataAccessScope(false))
         {
             IMapperProdVendidoPorFranqueado map = s.CreateMapperProdVendidoPorFranqueado();
             map.DeleteAllWithFranqId(franqId);
         }
     }
 }
Beispiel #5
0
 private void RemoveProdutoVendFranqueado(int key)
 {
     using (ProdVendidoPorFranqueadoSession s = new ProdVendidoPorFranqueadoSession())
     {
         using (var das = s.CreateDataAccessScope(false))
         {
             IMapperProdVendidoPorFranqueado prodMap = s.CreateMapperProdVendidoPorFranqueado();
             prodMap.DeleteAllWithProdId(key);
         }
     }
 }
 private void UpdateStock(List <ProdutoViewInStore> sale)
 {
     using (ProdVendidoPorFranqueadoSession s = new ProdVendidoPorFranqueadoSession())
     {
         using (var das = s.CreateDataAccessScope(true))
         {
             IMapperProdVendidoPorFranqueado map = s.CreateMapperProdVendidoPorFranqueado();
             map.UpdateInBulk(franqId, sale);
             das.Commit();
         }
     }
 }
        public void Execute()
        {
            using (ProdVendidoPorFranqueadoSession s = new ProdVendidoPorFranqueadoSession())
            {
                using (var das = s.CreateDataAccessScope(false))
                {
                    IMapperProdVendidoPorFranqueado map = s.CreateMapperProdVendidoPorFranqueado();
                    IEnumerable <TopSales>          totalByFranchisee = map.SalesByFranchiseeThisYear();

                    foreach (TopSales ts in totalByFranchisee)
                    {
                        Console.WriteLine("Franchisee nº {0} sold {1} EUR this year!", ts.FranqId, ts.VendasAnoCorrente);
                    }
                }
            }
        }
        public void TestShouldDelete()
        {
            ProdVendidoPorFranqueado pvpf = new ProdVendidoPorFranqueado(1, 10, 1.20m, 20, 10, 30, DateTime.Parse("2019-05-26"), 30);

            using (ProdVendidoPorFranqueadoSession s = new ProdVendidoPorFranqueadoSession())
            {
                using (var das = s.CreateDataAccessScope(true))
                {
                    IMapperProdVendidoPorFranqueado map = s.CreateMapperProdVendidoPorFranqueado();
                    map.Create(pvpf);
                    map.Delete(pvpf);

                    map.Read(pvpf.FranqId, pvpf.ProdId);
                }
            }
        }
        private void TestCreateAndRead()
        {
            ProdVendidoPorFranqueado pvpf = new ProdVendidoPorFranqueado(1, 10, 1.20m, 20, 10, 30, DateTime.Parse("2019-05-26"), 30);

            using (ProdVendidoPorFranqueadoSession s = new ProdVendidoPorFranqueadoSession())
            {
                using (var das = s.CreateDataAccessScope(true))
                {
                    IMapperProdVendidoPorFranqueado map = s.CreateMapperProdVendidoPorFranqueado();
                    map.Create(pvpf);
                    ProdVendidoPorFranqueado actual = map.Read(pvpf.FranqId, pvpf.ProdId);

                    Assert.IsTrue(AreEqual(pvpf, actual));
                }
            }
        }
        public void TestShouldUpdate()
        {
            ProdVendidoPorFranqueado pvpf = new ProdVendidoPorFranqueado(1, 10, 1.20m, 20, 10, 30, DateTime.Parse("2019-05-26"), 30);

            using (ProdVendidoPorFranqueadoSession s = new ProdVendidoPorFranqueadoSession())
            {
                using (var das = s.CreateDataAccessScope(true))
                {
                    IMapperProdVendidoPorFranqueado map = s.CreateMapperProdVendidoPorFranqueado();
                    map.Create(pvpf);
                    pvpf.QtdVendas = 35;
                    map.Update(pvpf);

                    ProdVendidoPorFranqueado actual = map.Read(pvpf.FranqId, pvpf.ProdId);

                    Assert.AreEqual(pvpf.QtdVendas, actual.QtdVendas);
                }
            }
        }
Beispiel #11
0
        public void Execute()
        {
            Console.WriteLine("What percentage relative to maxStock should be considered as running out of stock? (0-100)");
            double percentagemRutura = Double.Parse(Console.ReadLine());

            Console.WriteLine("Which franchisee is making the order?");
            int fid;

            while (!int.TryParse(Console.ReadLine(), out fid))
            {
                Console.WriteLine("Invalid number, please try again!");
            }

            List <Entrega> produtosEmRutura;

            using (ProdVendidoPorFranqueadoSession s = new ProdVendidoPorFranqueadoSession())
            {
                using (var das = s.CreateDataAccessScope(true))
                {
                    IMapperProdVendidoPorFranqueado map = s.CreateMapperProdVendidoPorFranqueado();

                    IEnumerable <ProdVendidoPorFranqueado> lpvpf = map.GetOutOfStock(percentagemRutura, fid);
                    produtosEmRutura = lpvpf.Select(pvpf => ToEntrega(pvpf)).ToList();
                    das.Commit();
                }
            }

            using (EntregaSession s = new EntregaSession())
            {
                using (var das = s.CreateDataAccessScope(true))
                {
                    IMapperEntrega map = s.CreateMapperEntrega();
                    map.OrderOutOfStock(produtosEmRutura);
                    das.Commit();
                }
            }
        }