Пример #1
0
        public void Save(Pedido entidade)
        {
            try
            {
                if ((entidade.id > 0) && Get(entidade.id) != null)
                {
                    var    repoCli          = new ClienteRepository();
                    var    cliente          = repoCli.Get(entidade.id_cliente).id;
                    int    vl_volumeTotal   = 0;
                    double vl_descontoTotal = 0;
                    double vl_totalitens    = 0;

                    var repoitem = new PedidoItemRepository();
                    var itens    = repoitem.List(entidade.id);

                    foreach (var item in itens)
                    {
                        vl_totalitens    += item.nr_quantidade * item.vl_Venda;
                        vl_volumeTotal   += item.nr_quantidade;
                        vl_descontoTotal += item.vl_Desconto;
                    }

                    entidade.id_cliente       = cliente;
                    entidade.vl_total         = vl_totalitens;
                    entidade.vl_volume        = vl_volumeTotal;
                    entidade.vl_descontoTotal = vl_descontoTotal;

                    Database.GetConnection().Update(entidade);
                }
                else
                {
                    Database.GetConnection().Insert(entidade);
                }
            }
            catch (Exception e)
            {
                Mensage = $"Falha ao Inserir a entidade {entidade.GetType()}. Erro: {e.Message}";
            }
        }
        public void Delete(TabelaPreco entidade)
        {
            string msgerro = "";

            var clientes           = new ClienteRepository().GetByTabPreco(entidade.id);
            var ProdutoTabelaPreco = new ProdutoTabelaPrecoRepository().GetByTab(entidade.id);

            if (clientes == true)
            {
                msgerro = "Clientes e ";
            }

            if (ProdutoTabelaPreco == true)
            {
                msgerro = msgerro + "Produtos   ";
            }

            if (msgerro.Length > 0)
            {
                throw new Exception($"Tabela de preço não pode ser excluída pois existem {msgerro.Left(msgerro.Length - 3)} vinculados a ela!");
            }

            Database.GetConnection().Delete(entidade);
        }