Exemplo n.º 1
0
 public TelaDoacaoProduto()
 {
     InitializeComponent();
     ConfigurarCombobox();
     ConfigurarDatagrid();
     doacaoProduto          = new ProductDonation();
     productService         = new ProductService();
     productDonationService = new ProductDonationService();
 }
        public void Insert(ProductDonation donation)
        {
            ProductService productService = new ProductService();

            if (donation == null)
            {
                throw new Exception("A doação não pode ser nula");
            }

            if (donation.Products == null)
            {
                throw new Exception("A doação precisa ter um produto");
            }

            if (donation.Date == null || donation.Date == DateTime.MinValue)
            {
                throw new Exception("Informe a data da doação");
            }

            productDonationRepository.Insert(donation);

            //atualiza o estoque
            foreach (Product produtoDaDoacao in donation.Products.ToList())
            {
                Product product = productService.GetById(produtoDaDoacao.Id);

                if (product != null)
                {
                    product.Quantity = produtoDaDoacao.Quantity + produtoDaDoacao.QuantBuy;
                    product.Note     = product.Note + Environment.NewLine + " Quantidade atualizada para "
                                       + product.Quantity + " atraves da doacao " + donation.Id;

                    productService.Update(product);
                }
            }
        }
 public void Insert(ProductDonation donation)
 {
     db.ProductDonations.Add(donation);
     Save();
 }