public void Inseri_nova_venda_de_discos()
        {
            var venda = new Venda
            {
                Data       = DateUtil.Now(),
                ItensVenda = new List <ItemVenda>
                {
                    new ItemVenda {
                        DiscoId = 1, Valor = 10.0, Cashback = 0.25
                    },
                    new ItemVenda {
                        DiscoId = 10, Valor = 10.0, Cashback = 0.4
                    }
                }
            };
            bool inserido = _vendaRepository.Insert(venda);

            Assert.IsTrue(inserido);

            var expected = 2;
            var actual   = new List <ItemVenda>();

            venda.ItensVenda.ForEach(itemVenda => { if (itemVenda.Id > 0)
                                                    {
                                                        actual.Add(itemVenda);
                                                    }
                                     });
            Assert.AreEqual(expected, actual.Count);
        }
Пример #2
0
        public ActionResult <bool> Post([FromBody] Venda venda)
        {
            var calculadora = new CalculadoraCashback();

            calculadora.Calcula(venda);
            return(_vendaRepository.Insert(venda));
        }
Пример #3
0
        static void Main(string[] args)
        {
            DbContextBFO ctx = new DbContextBFO();

            IVendaRepository vendaRepository = new VendaRepository(ctx);
            var venda = CriarVenda();

            vendaRepository.Insert(venda);

            // IParticipanteRepository participanteRepository = new ParticipanteRepository(ctx);
            // var participante = participanteRepository.GetAll();
        }
Пример #4
0
        public bool GravarVenda(List <Venda> vendas)
        {
            bool ret = true;

            try
            {
                var idVenda = Guid.NewGuid().ToString();

                foreach (var venda in vendas)
                {
                    var vendaGrav = new Venda();

                    decimal preco = _precoService.BuscarPreco(venda.KeyDisc);

                    vendaGrav.IdVenda            = idVenda;
                    vendaGrav.DataVenda          = DateTime.Today;
                    vendaGrav.KeyDisc            = venda.KeyDisc;
                    vendaGrav.Quantidade         = venda.Quantidade;
                    vendaGrav.ValorVenda         = preco;
                    vendaGrav.ValorCashBack      = this.CalcularCashBack(venda.KeyDisc, preco);
                    vendaGrav.ValorVendaTotal    = 0;
                    vendaGrav.ValorCashBackTotal = 0;

                    _vendaRepository.Insert(vendaGrav);
                }

                AtualizarVenda(idVenda);
            }
            catch (Exception ex)
            {
                string msg = ex.Message;
                ret = false;
                throw;
            }

            return(ret);
        }
Пример #5
0
        public VendaModel Insert(VendaModel venda)
        {
            VendaRepository VendaRepository;

            try
            {
                VendaRepository = new VendaRepository(_loggerFactory, _config);

                if (venda.ID == 0)
                {
                    venda = VendaRepository.Insert(venda);
                }
                else
                {
                    throw new Exception("ID diferente de 0, avalie a utilização do PUT");
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(venda);
        }