public ListaPedidoDTO ListarPedidos(int estadoId) { ListaPedidoDTO response = new ListaPedidoDTO(); PedidoOutDTO pedido = new PedidoOutDTO(); response.listaPedido = new List <PedidoOutDTO>(); _IResultlSetHelper.setDataSource(conectionString); var responseDTO = new ResponseDTO(); string packageName = "pkg_iteracion_2"; string procedureName = "LISTAR_PEDIDO"; List <string> inParam = new List <string>(); List <string> outParam = new List <string>(); List <string> result = new List <string>(); inParam.Add(estadoId.ToString()); outParam.Add("o_cursor"); outParam.Add("o_result"); var oReader = _IResultlSetHelper.executePackage(packageName, procedureName, inParam, outParam, "o_cursor"); if (oReader.Rows.Count > 0) { foreach (DataRow row in oReader.Rows) { pedido = new PedidoOutDTO(); pedido.pedidoId = int.Parse(row[0].ToString()); pedido.mesaId = int.Parse(row[1].ToString()); pedido.usuarioId = int.Parse(row[2].ToString()); pedido.fechaPedido = row[3].ToString(); pedido.horaPedido = row[4].ToString(); pedido.estadoPedido = int.Parse(row[5].ToString()); pedido.categoriaProductoId = int.Parse(row[6].ToString()); pedido.categoriaNombre = row[7].ToString(); pedido.productoId = int.Parse(row[8].ToString()); pedido.nombreProducto = row[9].ToString(); pedido.cantidadProducto = int.Parse(row[10].ToString()); pedido.precioProducto = int.Parse(row[11].ToString()); pedido.observacionPedido = row[12].ToString(); response.listaPedido.Add(pedido); } response.code = 0; response.message = "OK"; } else { response.code = 999; response.message = String.Concat("NoOk - ", result[2].ToString()); } return(response); }
public ListaFinalPedidoDTO ListarPedidos(int estadoId) { ListaPedidoDTO resp = new ListaPedidoDTO(); resp = _pedidoDAO.ListarPedidos(estadoId); ListaFinalPedidoDTO response = new ListaFinalPedidoDTO(); response.listaPedidos = new List <PedidoListaDTO>(); var primerPedido = new PedidoListaDTO(); if (resp.code == 0 && resp.message.ToUpper() == "OK") { foreach (var pedido in resp.listaPedido) { if (response.listaPedidos.Count < 1) { ComestibleDTO comestible = new ComestibleDTO(); BebestibleDTO bebestible = new BebestibleDTO(); primerPedido.pedidoId = pedido.pedidoId; primerPedido.mesaId = pedido.mesaId; primerPedido.usuarioId = pedido.usuarioId; primerPedido.estadoPedido = pedido.estadoPedido; primerPedido.listaComestible = new List <ComestibleDTO>(); primerPedido.listaBebestible = new List <BebestibleDTO>(); if (pedido.categoriaProductoId == 3) //Bebestibles { bebestible.categoriaProductoId = pedido.categoriaProductoId; bebestible.categoriaNombre = pedido.categoriaNombre; bebestible.idProducto = pedido.productoId; bebestible.nombreProducto = pedido.nombreProducto; bebestible.cantidadProducto = pedido.cantidadProducto; bebestible.precioProducto = pedido.precioProducto; bebestible.observacion = pedido.observacionPedido; primerPedido.listaBebestible.Add(bebestible); } else if (pedido.categoriaProductoId == 1 || pedido.categoriaProductoId == 2) //Comestibles { comestible.categoriaProductoId = pedido.categoriaProductoId; comestible.categoriaNombre = pedido.categoriaNombre; comestible.idProducto = pedido.productoId; comestible.nombreProducto = pedido.nombreProducto; comestible.cantidadProducto = pedido.cantidadProducto; comestible.precioProducto = pedido.precioProducto; comestible.observacion = pedido.observacionPedido; primerPedido.listaComestible.Add(comestible); } response.listaPedidos.Add(primerPedido); } else { var existe = false; for (int i = 0; i < response.listaPedidos.Count; i++) { existe = response.listaPedidos[i].pedidoId == pedido.pedidoId ? true : existe; ComestibleDTO comestible = new ComestibleDTO(); BebestibleDTO bebestible = new BebestibleDTO(); if (response.listaPedidos[i].pedidoId == pedido.pedidoId) { if (pedido.categoriaProductoId == 3) { bebestible.categoriaProductoId = pedido.categoriaProductoId; bebestible.categoriaNombre = pedido.categoriaNombre; bebestible.idProducto = pedido.productoId; bebestible.nombreProducto = pedido.nombreProducto; bebestible.cantidadProducto = pedido.cantidadProducto; bebestible.precioProducto = pedido.precioProducto; bebestible.observacion = pedido.observacionPedido; response.listaPedidos[i].listaBebestible.Add(bebestible); } else if (pedido.categoriaProductoId == 1 || pedido.categoriaProductoId == 2) //Comestibles { comestible.categoriaProductoId = pedido.categoriaProductoId; comestible.categoriaNombre = pedido.categoriaNombre; comestible.idProducto = pedido.productoId; comestible.nombreProducto = pedido.nombreProducto; comestible.cantidadProducto = pedido.cantidadProducto; comestible.precioProducto = pedido.precioProducto; comestible.observacion = pedido.observacionPedido; response.listaPedidos[i].listaComestible.Add(comestible); } break; } } if (!existe) { ComestibleDTO comestible = new ComestibleDTO(); BebestibleDTO bebestible = new BebestibleDTO(); var nuevoPedido = new PedidoListaDTO(); nuevoPedido.pedidoId = pedido.pedidoId; nuevoPedido.mesaId = pedido.mesaId; nuevoPedido.usuarioId = pedido.usuarioId; nuevoPedido.estadoPedido = pedido.estadoPedido; nuevoPedido.listaComestible = new List <ComestibleDTO>(); nuevoPedido.listaBebestible = new List <BebestibleDTO>(); if (pedido.categoriaProductoId == 3) //Bebestibles { bebestible.categoriaProductoId = pedido.categoriaProductoId; bebestible.categoriaNombre = pedido.categoriaNombre; bebestible.idProducto = pedido.productoId; bebestible.nombreProducto = pedido.nombreProducto; bebestible.cantidadProducto = pedido.cantidadProducto; bebestible.precioProducto = pedido.precioProducto; bebestible.observacion = pedido.observacionPedido; nuevoPedido.listaBebestible.Add(bebestible); } else if (pedido.categoriaProductoId == 1 || pedido.categoriaProductoId == 2) //Comestibles { comestible.categoriaProductoId = pedido.categoriaProductoId; comestible.categoriaNombre = pedido.categoriaNombre; comestible.idProducto = pedido.productoId; comestible.nombreProducto = pedido.nombreProducto; comestible.cantidadProducto = pedido.cantidadProducto; comestible.precioProducto = pedido.precioProducto; comestible.observacion = pedido.observacionPedido; nuevoPedido.listaComestible.Add(comestible); } response.listaPedidos.Add(nuevoPedido); } //response.listaPedidos.Add(nuevo); } } } return(response); }