public List <Movimiento> getMovimientos(DateTime desde, DateTime hasta)
        {
            using (connection = new SqlConnection(connectionStringCrm))
            {
                List <Movimiento> listado = new List <Movimiento>();

                query = "Select MovimientoEncID, Fecha, ClienteID From MovimientosEnc Where EstadoMovimientoID = 3 And Fecha Between @Desde And @Hasta And CondicionVentaID = 2 And Remito = 0";

                command = new SqlCommand(query, connection);

                SqlParameter paramDesde = new SqlParameter();
                paramDesde.ParameterName = "@Desde";
                paramDesde.SqlDbType     = SqlDbType.DateTime;
                paramDesde.SqlValue      = desde;

                command.Parameters.Add(paramDesde);

                SqlParameter paramHasta = new SqlParameter();
                paramHasta.ParameterName = "@Hasta";
                paramHasta.SqlDbType     = SqlDbType.DateTime;
                paramHasta.SqlValue      = hasta;

                command.Parameters.Add(paramHasta);

                try
                {
                    connection.Open();

                    SqlDataReader reader = command.ExecuteReader();

                    while (reader.Read())
                    {
                        Movimiento mov = new Movimiento();

                        ClienteDao clienteDao = new ClienteDao();

                        mov.idMovimiento = Convert.ToInt32(reader["MovimientoEncID"]);
                        mov.fecha        = Convert.ToDateTime(reader["Fecha"]);
                        mov.cliente      = clienteDao.getCliente(Convert.ToInt32(reader["ClienteID"]));

                        listado.Add(mov);
                    }

                    return(listado);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
Example #2
0
        public List <Remito> getRemitos(bool sincronizado)
        {
            using (connection = new SqlConnection(connectionStringCrm))
            {
                List <Remito> listado = new List <Remito>();

                query = "sp_remitos_crm_tango";

                command             = new SqlCommand(query, connection);
                command.CommandType = CommandType.StoredProcedure;

                SqlParameter paramSincronizado = new SqlParameter();
                paramSincronizado.ParameterName = "@Sincronizado";
                paramSincronizado.SqlDbType     = SqlDbType.Bit;
                paramSincronizado.SqlValue      = sincronizado;

                command.Parameters.Add(paramSincronizado);

                try
                {
                    connection.Open();

                    SqlDataReader reader = command.ExecuteReader();

                    while (reader.Read())
                    {
                        Remito rem;

                        if (listado.Exists(r => r.nroRemito.Equals(reader["NroRemito"])))
                        {
                            if (!listado.Exists(r => r.movimientoEncId == Convert.ToInt32(reader["MovimientoEncId"])))
                            {
                                rem = listado.FirstOrDefault(r => r.nroRemito.Equals(reader["NroRemito"]));
                                rem.movimientoEncId = Convert.ToInt32(reader["MovimientoEncId"]);

                                List <RemitoItem> items = getItems(Convert.ToInt32(reader["MovimientoEncID"]));

                                //rem.total = 0;

                                foreach (RemitoItem item in items)
                                {
                                    rem.agregarItem(item);
                                    //rem.total = rem.total + (item.cantidad * item.precio);
                                }
                            }
                        }
                        else
                        {
                            rem = new Remito();

                            ClienteDao clienteDao = new ClienteDao();

                            rem.remitoId        = Convert.ToInt32(reader["RemitoID"]);
                            rem.movimientoEncId = Convert.ToInt32(reader["MovimientoEncId"]);
                            rem.fecha           = Convert.ToDateTime(reader["Fecha"]);
                            rem.nroRemito       = Convert.ToString(reader["NroRemito"]);
                            rem.cliente         = clienteDao.getCliente(Convert.ToInt32(reader["ClienteID"]));
                            rem.items           = getItems(Convert.ToInt32(reader["MovimientoEncID"]));

                            foreach (RemitoItem item in rem.items)
                            {
                                //rem.total = rem.total + (item.cantidad * item.precio);
                            }

                            listado.Add(rem);
                        }
                    }

                    return(listado);
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }