示例#1
0
        /// <summary>
        /// Obtiene Lista de Personal con paginado
        /// </summary>
        /// <param name="pageSize">Siguiente cantidad de resultados</param>
        /// <param name="page">Inicio resultado</param>
        /// <returns>Lista de Objetos Personal</returns>
        public static TrabajoList GetLista(int page, int pageSize)
        {
            TrabajoList res = new TrabajoList();

            SqlCommand    cmd   = null;
            SqlDataReader dr    = null;
            string        query = @"SELECT * FROM Trabajo WHERE Borrado = 0 ORDER BY IdTrabajo 
                        OFFSET @pageSize * (@page - 1) ROWS FETCH NEXT @pageSize ROWS ONLY";

            //string query = @"SELECT * FROM Trabajo WHERE Borrado = 0 ORDER BY IdTrabajo;";

            try
            {
                cmd = Methods.CreateBasicCommand(query);
                cmd.Parameters.AddWithValue("@page", page);
                cmd.Parameters.AddWithValue("@pageSize", pageSize);
                dr = Methods.ExecuteDataReaderCommand(cmd);

                while (dr.Read())
                {
                    int idTrabajo = dr.GetInt32(0);

                    res.Add(new Trabajo()
                    {
                        IdTrabajo        = idTrabajo,
                        Cliente          = ClienteDal.Get(dr.GetInt32(1)),
                        FechaTrabajo     = dr.GetDateTime(2),
                        TotalPrecio      = dr.GetDecimal(3),
                        FechaEntrega     = dr.GetDateTime(4),
                        PedidoDistancia  = dr.IsDBNull(5) ? null : PedidoDal.Get(dr.GetInt32(5)),
                        EntregaDomicilio = dr.GetBoolean(6),
                        //TrabajoDetalle = TrabajoDetalleDal.GetList(idTrabajo),
                        Borrado = dr.GetBoolean(7)
                    });
                }
            }
            catch (SqlException ex)
            {
                Methods.GenerateLogsRelease("TrabajoDal", "ObtenerLista", ex.Message + " " + ex.StackTrace);
                throw ex;
            }
            catch (Exception ex)
            {
                Methods.GenerateLogsRelease("TrabajoDal", "ObtenerLista", ex.Message + " " + ex.StackTrace);
                throw ex;
            }
            finally
            {
                cmd.Connection.Close();
            }

            return(res);
        }
示例#2
0
        /// <summary>
        /// Obtiene Lista de Personal
        /// </summary>
        /// <returns>Lista de Objetos Personal</returns>
        public static List <Trabajo> GetList()
        {
            List <Trabajo> res = new List <Trabajo>();

            SqlCommand    cmd   = null;
            SqlDataReader dr    = null;
            string        query = @"SELECT * FROM Trabajo WHERE Borrado = 0";

            try
            {
                cmd = Methods.CreateBasicCommand(query);
                dr  = Methods.ExecuteDataReaderCommand(cmd);

                while (dr.Read())
                {
                    int idTrabajo = dr.GetInt32(0);

                    res.Add(new Trabajo()
                    {
                        IdTrabajo        = idTrabajo,
                        Cliente          = ClienteDal.Get(dr.GetInt32(1)),
                        FechaTrabajo     = dr.GetDateTime(2),
                        TotalPrecio      = dr.GetDecimal(3),
                        FechaEntrega     = dr.GetDateTime(4),
                        PedidoDistancia  = PedidoDal.Get(dr.GetInt32(5)),
                        EntregaDomicilio = dr.GetBoolean(6),
                        TrabajoDetalle   = TrabajoDetalleDal.GetList(idTrabajo),
                        Borrado          = dr.GetBoolean(7)
                    });
                }
            }
            catch (SqlException ex)
            {
                Methods.GenerateLogsRelease("TrabajoDal", "ObtenerLista", ex.Message + " " + ex.StackTrace);
                throw ex;
            }
            catch (Exception ex)
            {
                Methods.GenerateLogsRelease("TrabajoDal", "ObtenerLista", ex.Message + " " + ex.StackTrace);
                throw ex;
            }
            finally
            {
                cmd.Connection.Close();
            }

            return(res);
        }
示例#3
0
        /// <summary>
        /// Obtiene un Trabajo de la base de datos
        /// </summary>
        /// <param name="id">Idenficador de Trabajo</param>
        /// <returns></returns>
        public static Trabajo Get(int id)
        {
            Trabajo       res   = new Trabajo();
            SqlCommand    cmd   = null;
            SqlDataReader dr    = null;
            string        query = @"SELECT * FROM Trabajo WHERE IdTrabajo = @id";

            try
            {
                cmd = Methods.CreateBasicCommand(query);
                cmd.Parameters.AddWithValue("@id", id);
                dr = Methods.ExecuteDataReaderCommand(cmd);
                while (dr.Read())
                {
                    res = new Trabajo()
                    {
                        IdTrabajo        = dr.GetInt32(0),
                        Cliente          = ClienteDal.Get(dr.GetInt32(1)),
                        FechaTrabajo     = dr.GetDateTime(2),
                        TotalPrecio      = dr.GetDecimal(3),
                        FechaEntrega     = dr.GetDateTime(4),
                        PedidoDistancia  = dr.IsDBNull(5) ? null : PedidoDal.Get(dr.GetInt32(5)),
                        EntregaDomicilio = dr.GetBoolean(6),
                        Borrado          = dr.GetBoolean(7),
                        TrabajoDetalle   = TrabajoDetalleDal.GetList(dr.GetInt32(0))
                    };
                }
            }
            catch (Exception ex)
            {
                Methods.GenerateLogsRelease("TrabajoDal", "Obtener", string.Format("{0} {1} Error: {2}", DateTime.Now.ToShortDateString(), DateTime.Now.ToShortTimeString(), ex.Message));
                throw ex;
            }
            finally
            {
                cmd.Connection.Close();
            }
            return(res);
        }