Beispiel #1
0
 public Pedidos(int pedidosId, int clienteId, Cliente cliente, double valorPedido, SituacaoPedido situacao)
 {
     PedidosId   = pedidosId;
     ClienteId   = clienteId;
     Cliente     = cliente;
     ValorPedido = valorPedido;
     Situacao    = situacao;
 }
Beispiel #2
0
        static void Main(string[] args)
        {
            //Dados do Cliente
            Console.WriteLine("DADOS DO CLIENTE");
            Console.Write("Nome: ");
            string nomeCliente = Console.ReadLine();

            Console.Write("E-mail: ");
            string emailCliente = Console.ReadLine();

            Console.Write("Data de Nascimentos: ");
            DateTime dataNascimento = DateTime.Parse(Console.ReadLine());

            Console.WriteLine("DADOS DO PEDIDO");
            Console.Write("Situação: ");
            SituacaoPedido status = Enum.Parse <SituacaoPedido>(Console.ReadLine());

            Cliente cliente = new Cliente(nomeCliente, emailCliente, dataNascimento);
            Pedido  pedido  = new Pedido(DateTime.Now, status, cliente);

            //Escolhendo a quantidade de Item que deseja comprar
            Console.WriteLine("Quantos item você deseja comprar?");
            int numeroItens = int.Parse(Console.ReadLine());

            for (int i = 0; i < numeroItens; i++)
            {
                Console.WriteLine($"Dados do item {i + 1} da lista ");
                Console.Write("Nome do Produto: ");
                string nomeProduto = Console.ReadLine();
                Console.Write("Preço do Produto: ");
                double  precoProduto = double.Parse(Console.ReadLine(), CultureInfo.InvariantCulture);
                Produto produto      = new Produto(nomeProduto, precoProduto);
                Console.Write("Quantidade de Produto: ");
                int        quantidadeProduto = int.Parse(Console.ReadLine());
                ItemPedido itens             = new ItemPedido(quantidadeProduto, precoProduto, produto);

                pedido.AdicionarItemPedido(itens);
                Console.WriteLine();
            }

            Console.WriteLine();
            Console.WriteLine("IMPRESSÃO");
            Console.WriteLine(pedido);
        }
Beispiel #3
0
 public Pedido(DateTime data, SituacaoPedido situacao, Cliente cliente)
 {
     Data     = data;
     Situacao = situacao;
     Cliente  = cliente;
 }
Beispiel #4
0
        public IList <Pedido> Pesquisar(string nomeRazao, SituacaoPedido situacao, DateTime previsaoPagamento, DateTime pagamento, DateTime cancelamento, string ano, string mes)
        {
            using (ISession session = SessionFactory.AbrirSession())
            {
                string sQuery = @"
                    SELECT
                        new Pedido(
                        pedido.Id,
                        pedido.Status
                        )
                    from Pedido pedido
                ";

                string sQuery2 = @"
                    SELECT
                        pedido.Id,
                        pedido.Status
                    from Pedido pedido
                ";

                string h_stmt = "FROM Pedido";

                string sQuery3 = @"
                                    Select 
                                        pedido
                                    from Pedido pedido,
                                        Cliente cliente,
                                        FormaPagamento formaPagamento,
                                        Usuario usuario,
                                        PedidoItem pedidoItem
                                    Where pedido.Cliente = cliente
                                    AND pedido.FormaPagamento = formaPagamento
                                    AND pedido.Usuario = usuario
                                    AND pedidoItem.Pedido = pedido";
                //AND pedido.Id = " + idPedido;

                IQuery query = session.CreateQuery(sQuery3);

                IList <Pedido> objetoRetorno = new List <Pedido>();

                if (Convert.ToInt32(situacao) == 1)
                {
                    if (Convert.ToInt32(situacao) == 1 && ano != string.Empty && mes != string.Empty) // Pendente
                    {
                        var objetoPendenteAnoMes = (from pedido in session.Query <Pedido>()
                                                    join cliente in session.Query <Cliente>() on pedido.Cliente.Id equals cliente.Id
                                                    join formaPagamento in session.Query <FormaPagamento>() on pedido.FormaPagamento.Id equals formaPagamento.Id
                                                    join usuario in session.Query <Usuario>() on pedido.Usuario.Id equals usuario.Id
                                                    //join pedidoItem in session.Query<PedidoItem>() on pedido.PedidoItem.
                                                    //where pedido.Cliente.NomeRazao == "Init" && pedido.FormaPagamento.Descricao.Contains("Purpose Sample")
                                                    where pedido.Cliente.NomeRazao.Contains(nomeRazao)
                                                    //&& ((pedido.Status & SituacaoPedido.PAGO) == SituacaoPedido.PAGO)
                                                    && Convert.ToInt32(pedido.Status) == Convert.ToInt32(situacao) &&
                                                    pedido.Data_Previsao_Pagamento.Year == Convert.ToInt32(ano) &&
                                                    pedido.Data_Previsao_Pagamento.Month == Convert.ToInt32(mes)
                                                    select pedido).ToList();
                        objetoRetorno = objetoPendenteAnoMes;
                    }
                    else
                    {
                        var objetoPendenteDia = (from pedido in session.Query <Pedido>()
                                                 join cliente in session.Query <Cliente>() on pedido.Cliente.Id equals cliente.Id
                                                 join formaPagamento in session.Query <FormaPagamento>() on pedido.FormaPagamento.Id equals formaPagamento.Id
                                                 join usuario in session.Query <Usuario>() on pedido.Usuario.Id equals usuario.Id
                                                 //join pedidoItem in session.Query<PedidoItem>() on pedido.PedidoItem.
                                                 //where pedido.Cliente.NomeRazao == "Init" && pedido.FormaPagamento.Descricao.Contains("Purpose Sample")
                                                 where pedido.Cliente.NomeRazao.Contains(nomeRazao)
                                                 //&& ((pedido.Status & SituacaoPedido.PAGO) == SituacaoPedido.PAGO)
                                                 && Convert.ToInt32(pedido.Status) == Convert.ToInt32(situacao)
                                                 //&& pedido.Data_Previsao_Pagamento.Year == 2018
                                                 //&& pedido.Data_Previsao_Pagamento.Month == 03
                                                 //&& pedido.Data_Previsao_Pagamento.Year + pedido.Data_Previsao_Pagamento.Month == 201803
                                                 && pedido.Data_Previsao_Pagamento.Date == previsaoPagamento.Date
                                                 select pedido).ToList();
                        objetoRetorno = objetoPendenteDia;
                    }
                }
                else if (Convert.ToInt32(situacao) == 2)
                {
                    if (Convert.ToInt32(situacao) == 2 && ano != string.Empty && mes != string.Empty) // Pago
                    {
                        var objetoPagoAnoMes = (from pedido in session.Query <Pedido>()
                                                join cliente in session.Query <Cliente>() on pedido.Cliente.Id equals cliente.Id
                                                join formaPagamento in session.Query <FormaPagamento>() on pedido.FormaPagamento.Id equals formaPagamento.Id
                                                join usuario in session.Query <Usuario>() on pedido.Usuario.Id equals usuario.Id
                                                //join pedidoItem in session.Query<PedidoItem>() on pedido.PedidoItem.
                                                //where pedido.Cliente.NomeRazao == "Init" && pedido.FormaPagamento.Descricao.Contains("Purpose Sample")
                                                where pedido.Cliente.NomeRazao.Contains(nomeRazao) &&
                                                Convert.ToInt32(pedido.Status) == Convert.ToInt32(situacao) &&
                                                pedido.Data_Pagamento.Value.Year == Convert.ToInt32(ano) &&
                                                pedido.Data_Pagamento.Value.Month == Convert.ToInt32(mes)
                                                select pedido).ToList();
                        objetoRetorno = objetoPagoAnoMes;
                    }
                    else
                    {
                        var objetoPago = (from pedido in session.Query <Pedido>()
                                          join cliente in session.Query <Cliente>() on pedido.Cliente.Id equals cliente.Id
                                          join formaPagamento in session.Query <FormaPagamento>() on pedido.FormaPagamento.Id equals formaPagamento.Id
                                          join usuario in session.Query <Usuario>() on pedido.Usuario.Id equals usuario.Id
                                          //join pedidoItem in session.Query<PedidoItem>() on pedido.PedidoItem.
                                          //where pedido.Cliente.NomeRazao == "Init" && pedido.FormaPagamento.Descricao.Contains("Purpose Sample")
                                          where pedido.Cliente.NomeRazao.Contains(nomeRazao) &&
                                          Convert.ToInt32(pedido.Status) == Convert.ToInt32(situacao) &&
                                          pedido.Data_Pagamento.Value.Date == pagamento.Date
                                          select pedido).ToList();
                        objetoRetorno = objetoPago;
                    }
                }
                else if (Convert.ToInt32(situacao) == 3)
                {
                    // Cancelados
                    if (Convert.ToInt32(situacao) == 3 && ano != string.Empty && mes != string.Empty)
                    {
                        var objetoPendenteAnoMes = (from pedido in session.Query <Pedido>()
                                                    join cliente in session.Query <Cliente>() on pedido.Cliente.Id equals cliente.Id
                                                    join formaPagamento in session.Query <FormaPagamento>() on pedido.FormaPagamento.Id equals formaPagamento.Id
                                                    join usuario in session.Query <Usuario>() on pedido.Usuario.Id equals usuario.Id
                                                    //join pedidoItem in session.Query<PedidoItem>() on pedido.PedidoItem.
                                                    //where pedido.Cliente.NomeRazao == "Init" && pedido.FormaPagamento.Descricao.Contains("Purpose Sample")
                                                    where pedido.Cliente.NomeRazao.Contains(nomeRazao)
                                                    //&& ((pedido.Status & SituacaoPedido.PAGO) == SituacaoPedido.PAGO)
                                                    && Convert.ToInt32(pedido.Status) == Convert.ToInt32(situacao) &&
                                                    pedido.Data_Cancelamento.Value.Year == Convert.ToInt32(ano) &&
                                                    pedido.Data_Cancelamento.Value.Month == Convert.ToInt32(mes)
                                                    //&& pedido.Data_Previsao_Pagamento.Year + pedido.Data_Previsao_Pagamento.Month == 201803
                                                    //&& pedido.Data_Previsao_Pagamento.Date == previsaoPagamento.Date
                                                    select pedido).ToList();
                        objetoRetorno = objetoPendenteAnoMes;
                    }
                    else
                    {
                        var objetoPendenteDia = (from pedido in session.Query <Pedido>()
                                                 join cliente in session.Query <Cliente>() on pedido.Cliente.Id equals cliente.Id
                                                 join formaPagamento in session.Query <FormaPagamento>() on pedido.FormaPagamento.Id equals formaPagamento.Id
                                                 join usuario in session.Query <Usuario>() on pedido.Usuario.Id equals usuario.Id
                                                 //join pedidoItem in session.Query<PedidoItem>() on pedido.PedidoItem.
                                                 //where pedido.Cliente.NomeRazao == "Init" && pedido.FormaPagamento.Descricao.Contains("Purpose Sample")
                                                 where pedido.Cliente.NomeRazao.Contains(nomeRazao)
                                                 //&& ((pedido.Status & SituacaoPedido.PAGO) == SituacaoPedido.PAGO)
                                                 && Convert.ToInt32(pedido.Status) == Convert.ToInt32(situacao)
                                                 //&& pedido.Data_Previsao_Pagamento.Year == 2018
                                                 //&& pedido.Data_Previsao_Pagamento.Month == 03
                                                 //&& pedido.Data_Previsao_Pagamento.Year + pedido.Data_Previsao_Pagamento.Month == 201803
                                                 && pedido.Data_Cancelamento.Value.Date == cancelamento.Date
                                                 select pedido).ToList();
                        objetoRetorno = objetoPendenteDia;
                    }
                }

                /*
                 * IList<Pedido> pedidos = new List<Pedido>();
                 * pedidos = query.List<Pedido>();
                 */

                string[] grid = new string[2];

                grid[0] = "Param1";
                grid[1] = "Param2";

                //return pedidos;
                return(objetoRetorno);
            }
        }
Beispiel #5
0
 public Pedido(DateTime dataPedido, SituacaoPedido statusPedido, Cliente cliente)
 {
     DataPedido   = dataPedido;
     StatusPedido = statusPedido;
     Cliente      = cliente;
 }