Beispiel #1
0
        public ActionResult FinalizarPedido([FromBody] PedidoVO pedido)
        {
            PedidoBE pedidoBE = null;

            try
            {
                pedidoBE = new PedidoBE();

                pedidoBE.FinalizarPedido(new PedidoVO {
                    Id = pedido.Id, Efetuado = true
                });

                return(NoContent());
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (pedidoBE != null)
                {
                    pedidoBE.FecharConexao();
                }
            }
        }
Beispiel #2
0
        public void Deletar(PedidoVO objVO)
        {
            try
            {
                objSbDelete = new StringBuilder();

                objSbDelete.AppendLine(@" DELETE FROM DBPedidosNet.dbo.Pedido WHERE IdPedido = @IdPedido ");

                GetSqlCommand().CommandText = "";
                GetSqlCommand().CommandText = objSbDelete.ToString();
                GetSqlCommand().Parameters.Clear();
                GetSqlCommand().Parameters.Add("IdPedido", SqlDbType.Int).Value = objVO.Id;
                GetSqlCommand().ExecuteNonQuery();
            }
            catch (SqlException e)
            {
                throw e;
            }
            finally
            {
                if (objSbDelete != null)
                {
                    objSbDelete = null;
                }
            }
        }
Beispiel #3
0
        public void InserirPedido(PedidoVO pedido)
        {
            string insertTexto =
                @"insert into PEDIDO(ID_CLIENTE, DESCRICAO_PEDIDO, VALOR_PEDIDO)
                    values(@idCliente, @descricaoPedido, @valorPedido)";

            SqlCommand insertComando = new SqlCommand(insertTexto, this.conexao);

            insertComando.Parameters.AddWithValue("@idCliente", pedido.IdCliente);
            insertComando.Parameters.AddWithValue("@descricaoPedido", pedido.Descricao);
            insertComando.Parameters.AddWithValue("@valorPedido", pedido.Valor);

            this.conexao.Open();
            insertComando.Transaction = this.conexao.BeginTransaction();

            try
            {
                insertComando.ExecuteNonQuery();

                insertComando.Transaction.Commit();
            }
            catch
            {
                insertComando.Transaction.Rollback();
            }
            finally
            {
                this.conexao.Close();
            }
        }
Beispiel #4
0
 public PedidoVO Consultar(PedidoVO objVO)
 {
     try
     {
         List <PedidoVO> lst = Selecionar(objVO);
         return(lst.Count > 0 ? (PedidoVO)lst.ToArray().GetValue(0) : null);
     }
     catch (Exception e)
     {
         throw e;
     }
 }
Beispiel #5
0
        public PedidoVO BuscarPedido(int id)
        {
            string selectTexto =
                @"select
                    ID_PEDIDO, P.ID_CLIENTE as ID_CLIENTE, DATA_PEDIDO, DESCRICAO_PEDIDO, VALOR_PEDIDO, NOME_CLIENTE
                  from
                    PEDIDO P join CLIENTE C on P.ID_CLIENTE = C.ID_CLIENTE
                  where
                    ID_PEDIDO = @idPedido";

            this.conexao.Open();

            SqlCommand selectComando = new SqlCommand(selectTexto, this.conexao);

            selectComando.Parameters.AddWithValue("@idPedido", id);
            selectComando.Transaction = this.conexao.BeginTransaction();

            SqlDataReader pedidoReader = null;
            PedidoVO      pedido       = new PedidoVO();

            try
            {
                pedidoReader = selectComando.ExecuteReader();

                pedidoReader.Read();

                pedido = this.CriaPedido(pedidoReader);

                if (pedidoReader != null)
                {
                    pedidoReader.Close();
                }

                selectComando.Transaction.Commit();
            }
            catch
            {
                // caso não tenha fechado no try
                if (pedidoReader != null)
                {
                    pedidoReader.Close();
                }

                selectComando.Transaction.Rollback();
            }
            finally
            {
                this.conexao.Close();
            }

            return(pedido);
        }
        protected void Salvar_ServerClick(object sender, EventArgs e)
        {
            int id = Convert.ToInt32(Request.QueryString["id"]);

            PedidoVO pedido = this.gerenciadorPedidos.BuscarPedido(id);

            pedido.Valor     = Convert.ToDecimal(this.valorTxt.Value);
            pedido.Descricao = this.descricaoTxt.Value;

            this.gerenciadorPedidos.EditarPedido(pedido);

            // Remove o atributo que estava escondendo a mensagem
            this.msgConfirmacaoSalvar.Attributes.Remove("style");
        }
Beispiel #7
0
        public PedidoVO Consultar(PedidoVO objVO)
        {
            PedidoDAO dao = null;

            try
            {
                dao = new PedidoDAO(GetSqlCommand());
                return(dao.Consultar(objVO));
            }
            catch (Exception e)
            {
                throw e;
            }
        }
Beispiel #8
0
        private PedidoVO CriaPedido(SqlDataReader pedidoReader)
        {
            int       idPedido      = Convert.ToInt32(pedidoReader["ID_PEDIDO"]);
            DateTime  dtPedido      = Convert.ToDateTime(pedidoReader["DATA_PEDIDO"]);
            ClienteVO clientePedido = new ClienteVO(Convert.ToInt32(pedidoReader["ID_CLIENTE"]));

            clientePedido.Nome = pedidoReader["NOME_CLIENTE"].ToString();
            PedidoVO pedido = new PedidoVO(idPedido, dtPedido, clientePedido);

            pedido.Descricao = pedidoReader["DESCRICAO_PEDIDO"].ToString();
            pedido.Valor     = Convert.ToDecimal(pedidoReader["VALOR_PEDIDO"]);

            return(pedido);
        }
Beispiel #9
0
        public List <PedidoVO> Selecionar(PedidoVO objVO = null)
        {
            PedidoDAO dao = null;

            try
            {
                dao = new PedidoDAO(GetSqlCommand());
                return(dao.Selecionar(objVO));
            }
            catch (Exception e)
            {
                throw e;
            }
        }
        protected void Cadastrar_ServerClick(object sender, EventArgs e)
        {
            int clienteId = Convert.ToInt32(this.clienteSel.Value);

            PedidoVO pedido = new PedidoVO(new ClienteVO(clienteId));

            pedido.Descricao = this.descricaoTxt.Value;
            pedido.Valor     = Convert.ToDecimal(this.valorTxt.Value);

            this.gerenciadorPedidos.CadastrarPedido(pedido);

            this.descricaoTxt.Value = string.Empty;
            this.valorTxt.Value     = string.Empty;

            // Remove o atributo que estava escondendo a mensagem
            this.msgConfirmacao.Attributes.Remove("style");
        }
Beispiel #11
0
        public void Deletar(PedidoVO objVO)
        {
            PedidoDAO dao = null;

            try
            {
                dao = new PedidoDAO(GetSqlCommand());
                BeginTransaction();
                dao.Deletar(objVO);
                Commit();
            }
            catch (Exception ex)
            {
                Rollback();
                throw ex;
            }
        }
Beispiel #12
0
        public long FinalizarPedido(PedidoVO objVO)
        {
            PedidoDAO dao = null;

            try
            {
                dao = new PedidoDAO(GetSqlCommand());
                BeginTransaction();
                var id = dao.FinalizarPedido(objVO);
                Commit();
                return(id);
            }
            catch (Exception ex)
            {
                Rollback();
                throw ex;
            }
        }
Beispiel #13
0
        public long InserirPedidoProduto(PedidoProdutoVO objVO)
        {
            PedidoDAO        pDao            = null;
            PedidoProdutoDAO ppDao           = null;
            PedidoVO         pedidoVo        = null;
            PedidoProdutoVO  pedidoProdutoVO = null;

            try
            {
                pDao  = new PedidoDAO(GetSqlCommand());
                ppDao = new PedidoProdutoDAO(GetSqlCommand());

                objVO.ValorUnitario = objVO.Produto.ValorUnitario;

                BeginTransaction();

                //Se houver pedido em aberto insere apenas o produto no pedido
                if (objVO.Pedido.Id > 0)
                {
                    ppDao.Inserir(objVO);
                }
                //Senao insere um novo pedido e o primeiro produto
                else
                {
                    pDao.Inserir(objVO.Pedido);
                    pedidoVo = pDao.ConsultarMax();

                    if (pedidoVo != null)
                    {
                        objVO.Pedido.Id = pedidoVo.Id;
                        ppDao.Inserir(objVO);
                    }
                }

                Commit();
                pedidoProdutoVO = ppDao.ConsultarMax();
                return(pedidoProdutoVO.Id);
            }
            catch (Exception ex)
            {
                Rollback();
                throw ex;
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            IPedidoDAO pedidoDAO = new PedidoDAOSQLServer(ConexaoSingleton.Conexao);

            this.gerenciadorPedidos = new PedidoBLL(pedidoDAO);

            // Não seta os campos no PostBack para não perder as alterações do usuário
            if (!Page.IsPostBack)
            {
                int id = Convert.ToInt32(Request.QueryString["id"]);

                PedidoVO pedido = this.gerenciadorPedidos.BuscarPedido(id);

                this.clientTxt.Value    = pedido.NomeCliente;
                this.dataTxt.Value      = pedido.Data.ToShortDateString();
                this.valorTxt.Value     = pedido.Valor.ToString();
                this.descricaoTxt.Value = pedido.Descricao;
            }
        }
Beispiel #15
0
        public void Inserir(PedidoVO objVO)
        {
            try
            {
                objSbInsert = new StringBuilder();

                objSbInsert.AppendLine(@"
                                        INSERT INTO DBPedidosNet.dbo.Pedido    
                                        (                                              
                                                     IdCliente                          
                                                   , DataPedido
                                                   , Efetuado
                                        )                                              
                                        VALUES                                    
                                        (                                              
                                                     @IdCliente                         
                                                   , GETDATE()
                                                   , @Efetuado
                                        )                                              
                ");


                GetSqlCommand().CommandText = "";
                GetSqlCommand().CommandText = objSbInsert.ToString();
                GetSqlCommand().Parameters.Clear();
                GetSqlCommand().Parameters.Add("IdCliente", SqlDbType.VarChar).Value = objVO.Cliente.Id;
                GetSqlCommand().Parameters.Add("Efetuado", SqlDbType.Bit).Value      = objVO.Efetuado;

                GetSqlCommand().ExecuteNonQuery();
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                if (objSbInsert != null)
                {
                    objSbInsert = null;
                }
            }
        }
Beispiel #16
0
        public long Inserir(PedidoVO objVO)
        {
            PedidoDAO dao       = null;
            PedidoVO  produtoVO = null;

            try
            {
                dao = new PedidoDAO(GetSqlCommand());
                BeginTransaction();
                dao.Inserir(objVO);
                Commit();
                produtoVO = dao.ConsultarMax();
                return(produtoVO.Id);
            }
            catch (Exception ex)
            {
                Rollback();
                throw ex;
            }
        }
Beispiel #17
0
        public long Alterar(PedidoVO objVO)
        {
            try
            {
                objSbUpdate = new StringBuilder();
                objSbUpdate.AppendLine(@"
                                         UPDATE DBPedidosNet.dbo.Pedido                       
                                            SET                                                  
                                                  IdCliente = @IdCliente                          
                                                , Efetuado = @Efetuado

                                            WHERE IdPedido = @IdPedido 
                ");


                if (objVO != null)
                {
                    GetSqlCommand().CommandText = "";
                    GetSqlCommand().CommandText = objSbUpdate.ToString();
                    GetSqlCommand().Parameters.Clear();
                    GetSqlCommand().Parameters.Add("IdPedido", SqlDbType.Int).Value      = objVO.Id;
                    GetSqlCommand().Parameters.Add("IdCliente", SqlDbType.VarChar).Value = objVO.Cliente.Id;
                    GetSqlCommand().Parameters.Add("Efetuado", SqlDbType.Bit).Value      = objVO.Efetuado;

                    GetSqlCommand().ExecuteNonQuery();
                }
                return(objVO.Id);
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                if (objSbUpdate != null)
                {
                    objSbUpdate = null;
                }
            }
        }
Beispiel #18
0
        public PedidoVO ConsultarMax()
        {
            PedidoVO PedidoVO = null;

            try
            {
                PedidoVO = new PedidoVO();

                objSbSelect = new StringBuilder();

                objSbSelect.AppendLine(@" SELECT MAX(IdPedido) IdPedido FROM DBPedidosNet.dbo.Pedido");

                GetSqlCommand().CommandText = "";
                GetSqlCommand().CommandText = objSbSelect.ToString();

                while (GetSqlDataReader().Read())
                {
                    PedidoVO = new PedidoVO();

                    if (!(GetSqlDataReader().IsDBNull(GetSqlDataReader().GetOrdinal("IdPedido"))))
                    {
                        PedidoVO.Id = Convert.ToInt64(GetSqlDataReader()["IdPedido"]);
                    }
                }

                return(PedidoVO);
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                if (objSbSelect != null)
                {
                    objSbSelect = null;
                }
                Close();
            }
        }
Beispiel #19
0
        public ActionResult Insert([FromBody] PedidoVO pedido)
        {
            PedidoBE pedidoBE = null;

            try
            {
                pedidoBE = new PedidoBE();

                var id = pedidoBE.Inserir(pedido);

                return(CreatedAtRoute("GetPedido", new { id = id }, pedido));
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (pedidoBE != null)
                {
                    pedidoBE.FecharConexao();
                }
            }
        }
Beispiel #20
0
        public void AtualizarPedido(PedidoVO pedido)
        {
            // não atualiza data, cliente nem id
            string updateTexto =
                @"update
                    PEDIDO
                  set
                    DESCRICAO_PEDIDO = @descricao,
                    VALOR_PEDIDO = @valor
                  where
                    ID_PEDIDO = @idPedido";

            SqlCommand updateComando = new SqlCommand(updateTexto, this.conexao);

            updateComando.Parameters.AddWithValue("@descricao", pedido.Descricao);
            updateComando.Parameters.AddWithValue("@valor", pedido.Valor);
            updateComando.Parameters.AddWithValue("@idPedido", pedido.Id);

            this.conexao.Open();
            updateComando.Transaction = this.conexao.BeginTransaction();

            try
            {
                updateComando.ExecuteNonQuery();

                updateComando.Transaction.Commit();
            }
            catch
            {
                updateComando.Transaction.Rollback();
            }
            finally
            {
                this.conexao.Close();
            }
        }
Beispiel #21
0
 public void CadastrarPedido(PedidoVO pedido)
 {
     this.pedidoDAO.InserirPedido(pedido);
 }
Beispiel #22
0
        public List <PedidoVO> BuscarPedidos(string nomeCliente, DateTime?dtInicialPedido, DateTime?dtFinalPedido)
        {
            string selectTexto =
                @"select
                    ID_PEDIDO, P.ID_CLIENTE as ID_CLIENTE, DATA_PEDIDO, DESCRICAO_PEDIDO, VALOR_PEDIDO, NOME_CLIENTE
                  from
                    PEDIDO P join CLIENTE C on P.ID_CLIENTE = C.ID_CLIENTE
                  ";

            if ((!string.IsNullOrEmpty(nomeCliente)) || (dtInicialPedido != null) || (dtFinalPedido != null))
            {
                selectTexto +=
                    @"where
                        ";
            }

            List <SqlParameter> parametros = new List <SqlParameter>();

            bool jaTemWhere = false;

            if (!string.IsNullOrEmpty(nomeCliente))
            {
                nomeCliente  = string.Format("{0}{1}{0}", "%", nomeCliente);
                selectTexto += "C.NOME_CLIENTE LIKE @nomeCliente ";
                parametros.Add(new SqlParameter("@nomeCliente", nomeCliente));
                jaTemWhere = true;
            }

            if (dtInicialPedido.HasValue)
            {
                if (jaTemWhere)
                {
                    selectTexto += "and ";
                }
                else
                {
                    jaTemWhere = true;
                }
                // usando funções para pegar apenas a data (desprezar a hora)
                // e garantir que ambas datas estão no mesmo formato
                selectTexto +=
                    @"CONVERT(DATETIME, CAST(P.DATA_PEDIDO AS DATE), 103) >= 
                        CONVERT(DATETIME, CAST(@dtInicialPedido AS DATE), 103)";
                parametros.Add(new SqlParameter("@dtInicialPedido", dtInicialPedido.Value));
            }

            if (dtFinalPedido.HasValue)
            {
                if (jaTemWhere)
                {
                    selectTexto += "and ";
                }
                else
                {
                    jaTemWhere = true;
                }
                // usando funções para pegar apenas a data (desprezar a hora)
                // e garantir que ambas datas estão no mesmo formato
                selectTexto +=
                    @" CONVERT(DATETIME, CAST(P.DATA_PEDIDO AS DATE), 103) <= 
                        CONVERT(DATETIME, CAST(@dtFinalPedido AS DATE), 103)";
                parametros.Add(new SqlParameter("@dtFinalPedido", dtFinalPedido.Value));
            }

            SqlCommand selectComando = new SqlCommand(selectTexto, this.conexao);

            selectComando.Parameters.AddRange(parametros.ToArray());

            this.conexao.Open();
            selectComando.Transaction = this.conexao.BeginTransaction();
            SqlDataReader   pedidosReader = null;
            List <PedidoVO> pedidos       = new List <PedidoVO>();

            try
            {
                pedidosReader = selectComando.ExecuteReader();

                while (pedidosReader.Read())
                {
                    PedidoVO pedido = this.CriaPedido(pedidosReader);

                    pedidos.Add(pedido);
                }

                if (pedidosReader != null)
                {
                    pedidosReader.Close();
                }

                selectComando.Transaction.Commit();
            }
            catch
            {
                // caso não tenha fechado no try
                if (pedidosReader != null)
                {
                    pedidosReader.Close();
                }

                selectComando.Transaction.Rollback();
            }
            finally
            {
                this.conexao.Close();
            }

            return(pedidos);
        }
Beispiel #23
0
 public void EditarPedido(PedidoVO pedido)
 {
     this.pedidoDAO.AtualizarPedido(pedido);
 }
Beispiel #24
0
        public List <PedidoVO> Selecionar(PedidoVO objVO = null)
        {
            PedidoVO        PedidoVO    = null;
            List <PedidoVO> lstPedidoVO = null;

            try
            {
                lstPedidoVO = new List <PedidoVO>();

                objSbSelect = new StringBuilder();

                objSbSelect.AppendLine(@"
                                         SELECT                                                         
                                                Pedido.IdPedido                                               
                                              , Pedido.IdCliente                                               
                                              , Pedido.DataPedido
                                              , Pedido.Efetuado
                                              , Cliente.Cpf
                                              , Cliente.Nome
                                              , Cliente.Telefone
                                              , (SELECT SUM(PP.ValorUnitario) 
											       FROM DBPedidosNet.dbo.PedidoProduto PP 
												  WHERE PP.IdPedido = Pedido.IdPedido) AS ValorPedido
                                           FROM DBPedidosNet.dbo.Pedido 
                                     INNER JOIN DBPedidosNet.dbo.Cliente ON Cliente.IdCliente = Pedido.IdCliente
                                          WHERE 1 = 1                      
                ");

                if (objVO != null)
                {
                    GetSqlCommand().Parameters.Clear();

                    if (objVO.Id > 0)
                    {
                        objSbSelect.AppendLine(@" AND Pedido.IdPedido = @IdPedido");
                        GetSqlCommand().Parameters.Add("IdCliente", SqlDbType.Int).Value = objVO.Id;
                    }
                    if (objVO.Efetuado != null)
                    {
                        objSbSelect.AppendLine(@" AND Pedido.Efetuado = @Efetuado");
                        GetSqlCommand().Parameters.Add("Efetuado", SqlDbType.VarChar).Value = objVO.Efetuado;
                    }
                    if (objVO.Cliente.Id > 0)
                    {
                        objSbSelect.AppendLine(@" AND Cliente.IdCliente = @IdCliente");
                        GetSqlCommand().Parameters.Add("IdCliente", SqlDbType.VarChar).Value = objVO.Cliente.Id;
                    }
                    if (!string.IsNullOrEmpty(objVO.Cliente.Nome))
                    {
                        objSbSelect.AppendLine(@" AND Cliente.Nome = @Nome");
                        GetSqlCommand().Parameters.Add("Nome", SqlDbType.VarChar).Value = objVO.Cliente.Nome;
                    }
                }

                GetSqlCommand().CommandText = "";
                GetSqlCommand().CommandText = objSbSelect.ToString();

                while (GetSqlDataReader().Read())
                {
                    PedidoVO = new PedidoVO();

                    if (!(GetSqlDataReader().IsDBNull(GetSqlDataReader().GetOrdinal("IdPedido"))))
                    {
                        PedidoVO.Id = Convert.ToInt64(GetSqlDataReader()["IdPedido"]);
                    }

                    if (!(GetSqlDataReader().IsDBNull(GetSqlDataReader().GetOrdinal("IdCliente"))))
                    {
                        PedidoVO.Cliente.Id = Convert.ToInt64(GetSqlDataReader()["IdCliente"]);
                    }

                    if (!(GetSqlDataReader().IsDBNull(GetSqlDataReader().GetOrdinal("DataPedido"))))
                    {
                        PedidoVO.DataPedido = Convert.ToDateTime(GetSqlDataReader()["DataPedido"]);
                    }

                    if (!(GetSqlDataReader().IsDBNull(GetSqlDataReader().GetOrdinal("Efetuado"))))
                    {
                        PedidoVO.Efetuado = Convert.ToBoolean(GetSqlDataReader()["Efetuado"]);
                    }

                    if (!(GetSqlDataReader().IsDBNull(GetSqlDataReader().GetOrdinal("Cpf"))))
                    {
                        PedidoVO.Cliente.Cpf = Convert.ToString(GetSqlDataReader()["Cpf"]);
                    }

                    if (!(GetSqlDataReader().IsDBNull(GetSqlDataReader().GetOrdinal("Nome"))))
                    {
                        PedidoVO.Cliente.Nome = Convert.ToString(GetSqlDataReader()["Nome"]);
                    }

                    if (!(GetSqlDataReader().IsDBNull(GetSqlDataReader().GetOrdinal("Telefone"))))
                    {
                        PedidoVO.Cliente.Telefone = Convert.ToDecimal(GetSqlDataReader()["Telefone"]);
                    }

                    if (!(GetSqlDataReader().IsDBNull(GetSqlDataReader().GetOrdinal("ValorPedido"))))
                    {
                        PedidoVO.ValorPedido = Convert.ToDecimal(GetSqlDataReader()["ValorPedido"]);
                    }

                    lstPedidoVO.Add(PedidoVO);
                }
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                if (objSbSelect != null)
                {
                    objSbSelect = null;
                }
                Close();
            }

            return(lstPedidoVO);
        }