Exemplo n.º 1
0
        public static Response<Servicio> Get(this Servicio request,
		                                              Factory factory,
		                                              IHttpRequest httpRequest)
        {
            return factory.Execute(proxy=>{

				long? totalCount=null;

				var paginador= new Paginador(httpRequest);
            	
                var predicate = PredicateBuilder.True<Servicio>();

                var visitor = ReadExtensions.CreateExpression<Servicio>();

				if(!request.Nombre.IsNullOrEmpty()){
					predicate = predicate.AndAlso(q=> q.Nombre.Contains(request.Nombre));
				}

				visitor.Where(predicate).OrderBy(f=>f.Nombre);
                if(paginador.PageNumber.HasValue)
                {
					visitor.Select(r=> Sql.Count(r.Id));
					totalCount= proxy.Count(visitor);
					visitor.Select();
                    int rows= paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value*rows, rows);
                }
                
				return new Response<Servicio>(){
                	Data=proxy.Get(visitor),
                	TotalCount=totalCount
            	};
            });
  
        }
        public static Response<RolePermission> Get(this RolePermission request,
		                                              Factory factory,
		                                              IHttpRequest httpRequest)
        {
            return factory.Execute(proxy=>{

				long? totalCount=null;

				var paginador= new Paginador(httpRequest);

				var visitor = ReadExtensions.CreateExpression<RolePermission>();
				var predicate = PredicateBuilder.True<RolePermission>();

				predicate= q=>q.AuthRoleId==request.AuthRoleId;
												                
				visitor.Where(predicate).OrderBy(f=>f.Name) ;
                if(paginador.PageNumber.HasValue)
                {
					visitor.Select(r=> Sql.Count(r.Id));
					totalCount= proxy.Count(visitor);
					visitor.Select();
                    int rows= paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value*rows, rows);
                }
                                
                
				return new Response<RolePermission>(){
                	Data=proxy.Get(visitor),
                	TotalCount=totalCount
            	};
            });
  
        }
Exemplo n.º 3
0
        public static Response <Servicio> Get(this Servicio request,
                                              Factory factory,
                                              IHttpRequest httpRequest)
        {
            return(factory.Execute(proxy => {
                long?totalCount = null;

                var paginador = new Paginador(httpRequest);

                var predicate = PredicateBuilder.True <Servicio>();

                var visitor = ReadExtensions.CreateExpression <Servicio>();

                if (!request.Nombre.IsNullOrEmpty())
                {
                    predicate = predicate.AndAlso(q => q.Nombre.Contains(request.Nombre));
                }

                visitor.Where(predicate).OrderBy(f => f.Nombre);
                if (paginador.PageNumber.HasValue)
                {
                    visitor.Select(r => Sql.Count(r.Id));
                    totalCount = proxy.Count(visitor);
                    visitor.Select();
                    int rows = paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value * rows, rows);
                }

                return new Response <Servicio>()
                {
                    Data = proxy.Get(visitor),
                    TotalCount = totalCount
                };
            }));
        }
        public static Response <RolePermission> Get(this RolePermission request,
                                                    Factory factory,
                                                    IHttpRequest httpRequest)
        {
            return(factory.Execute(proxy => {
                long?totalCount = null;

                var paginador = new Paginador(httpRequest);

                var visitor = ReadExtensions.CreateExpression <RolePermission>();
                var predicate = PredicateBuilder.True <RolePermission>();

                predicate = q => q.AuthRoleId == request.AuthRoleId;

                visitor.Where(predicate).OrderBy(f => f.Name);
                if (paginador.PageNumber.HasValue)
                {
                    visitor.Select(r => Sql.Count(r.Id));
                    totalCount = proxy.Count(visitor);
                    visitor.Select();
                    int rows = paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value * rows, rows);
                }


                return new Response <RolePermission>()
                {
                    Data = proxy.Get(visitor),
                    TotalCount = totalCount
                };
            }));
        }
Exemplo n.º 5
0
        public static Response <User> Get(this User request,
                                          Factory factory,
                                          IHttpRequest httpRequest)
        {
            return(factory.Execute(proxy => {
                var userSession = httpRequest.GetSession();

                //if(!( userSession.HasRole(RoleNames.Admin) ||
                //   userSession.HasPermission("User.read") ))
                //	throw HttpError.Unauthorized("Usuario no autorizado para leer listado de usuarios");

                long?totalCount = null;

                var paginador = new Paginador(httpRequest);

                var visitor = ReadExtensions.CreateExpression <User>();
                var predicate = PredicateBuilder.True <User>();

                if (userSession.HasRole(RoleNames.Admin))
                {
                    if (request.Id != default(int))
                    {
                        predicate = q => q.Id == request.Id;
                    }

                    if (!request.UserName.IsNullOrEmpty())
                    {
                        predicate = q => q.UserName.StartsWith(request.UserName);
                    }

                    if (userSession.UserName != BL.AdminUser)
                    {
                        predicate = predicate.AndAlso(q => q.UserName != BL.AdminUser);
                    }
                }
                else
                {
                    var id = int.Parse(userSession.UserAuthId);
                    predicate = q => q.Id == id;
                }

                visitor.Where(predicate).OrderBy(r => r.UserName);;
                if (paginador.PageNumber.HasValue)
                {
                    visitor.Select(r => Sql.Count(r.Id));
                    totalCount = proxy.Count(visitor);
                    visitor.Select();
                    int rows = paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value * rows, rows);
                }


                return new Response <User>()
                {
                    Data = proxy.Get(visitor),
                    TotalCount = totalCount
                };
            }));
        }
Exemplo n.º 6
0
        public static Response<User> Get(this User request,
		                                              Factory factory,
		                                              IHttpRequest httpRequest)
        {
            return factory.Execute(proxy=>{

				var userSession = httpRequest.GetSession();

				//if(!( userSession.HasRole(RoleNames.Admin) ||
				//   userSession.HasPermission("User.read") ))
				//	throw HttpError.Unauthorized("Usuario no autorizado para leer listado de usuarios");

				long? totalCount=null;

				var paginador= new Paginador(httpRequest);

				var visitor = ReadExtensions.CreateExpression<User>();
				var predicate = PredicateBuilder.True<User>();

				if (userSession.HasRole(RoleNames.Admin))
				{
					if(request.Id!=default(int))
					predicate= q=>q.Id==request.Id;

					if(!request.UserName.IsNullOrEmpty()) 
	                	predicate= q=>q.UserName.StartsWith(request.UserName) ;

					if(userSession.UserName!=BL.AdminUser)
						predicate=predicate.AndAlso(q=>q.UserName!=BL.AdminUser);

				}
				else
				{
					var id = int.Parse(userSession.UserAuthId);
					predicate= q=>q.Id==id;
				}
				                
				visitor.Where(predicate).OrderBy(r=>r.UserName);;
                if(paginador.PageNumber.HasValue)
                {
					visitor.Select(r=> Sql.Count(r.Id));
					totalCount= proxy.Count(visitor);
					visitor.Select();
                    int rows= paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value*rows, rows);
                }
                                
                
				return new Response<User>(){
                	Data=proxy.Get(visitor),
                	TotalCount=totalCount
            	};
            });
  
        }
Exemplo n.º 7
0
        public static Response<Pedido> Get(this Pedido request,
		                                              Factory factory,
		                                              IHttpRequest httpRequest)
        {

            return factory.Execute(proxy=>{

				long? totalCount=null;

				var paginador= new Paginador(httpRequest);
            	
				var visitor = ReadExtensions.CreateExpression<Pedido>();

                var predicate = PredicateBuilder.True<Pedido>();

				if(request.Consecutivo!=default(int))
				{
					predicate= q=>q.Consecutivo==request.Consecutivo;
				}
				else
				{
					visitor.OrderByDescending(f=>f.Consecutivo);

					if(!request.NombreCliente.IsNullOrEmpty()){
						predicate= q=>q.NombreCliente.StartsWith(request.NombreCliente);
						visitor.OrderBy(f=>f.NombreCliente);
					}

					if(!request.NitCliente.IsNullOrEmpty()){
						predicate= predicate.AndAlso(q=>q.NitCliente.StartsWith(request.NitCliente));
						visitor.OrderBy(f=>f.NitCliente);
					}
				}

                
				visitor.Where(predicate);
                if(paginador.PageNumber.HasValue)
                {
					visitor.Select(r=> Sql.Count(r.Id));
					totalCount= proxy.Count(visitor);
					visitor.Select();
                    int rows= paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value*rows, rows);
                }
                
				return new Response<Pedido>(){
                	Data=proxy.Get(visitor),
                	TotalCount=totalCount
            	};

            });
  
        }
Exemplo n.º 8
0
        public static Response <Contacto> Get(this Contacto request,
                                              Factory factory,
                                              IHttpRequest httpRequest)
        {
            return(factory.Execute(proxy => {
                long?totalCount = null;

                var paginador = new Paginador(httpRequest);
                var queryString = httpRequest.QueryString;

                var visitor = ReadExtensions.CreateExpression <Contacto>();
                var predicate = PredicateBuilder.True <Contacto>();

                if (request.IdCliente != default(int))
                {
                    predicate = q => q.IdCliente == request.IdCliente;
                }

                else if (!request.Nombre.IsNullOrEmpty())
                {
                    predicate = q => q.Nombre.StartsWith(request.Nombre);
                    visitor.OrderBy(r => r.Nombre);
                }


                var qs = queryString["Activo"];
                bool activo;
                if (bool.TryParse(qs, out activo))
                {
                    predicate = predicate.AndAlso(q => q.Activo == activo);
                }


                visitor.Where(predicate);
                if (paginador.PageNumber.HasValue)
                {
                    visitor.Select(r => Sql.Count(r.Id));
                    totalCount = proxy.Count(visitor);
                    visitor.Select();
                    int rows = paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value * rows, rows);
                }



                return new Response <Contacto>()
                {
                    Data = proxy.Get(visitor),
                    TotalCount = totalCount
                };
            }));
        }
Exemplo n.º 9
0
        public static Response <Pedido> Get(this Pedido request,
                                            Factory factory,
                                            IHttpRequest httpRequest)
        {
            return(factory.Execute(proxy => {
                long?totalCount = null;

                var paginador = new Paginador(httpRequest);

                var visitor = ReadExtensions.CreateExpression <Pedido>();

                var predicate = PredicateBuilder.True <Pedido>();

                if (request.Consecutivo != default(int))
                {
                    predicate = q => q.Consecutivo == request.Consecutivo;
                }
                else
                {
                    visitor.OrderByDescending(f => f.Consecutivo);

                    if (!request.NombreCliente.IsNullOrEmpty())
                    {
                        predicate = q => q.NombreCliente.StartsWith(request.NombreCliente);
                        visitor.OrderBy(f => f.NombreCliente);
                    }

                    if (!request.NitCliente.IsNullOrEmpty())
                    {
                        predicate = predicate.AndAlso(q => q.NitCliente.StartsWith(request.NitCliente));
                        visitor.OrderBy(f => f.NitCliente);
                    }
                }


                visitor.Where(predicate);
                if (paginador.PageNumber.HasValue)
                {
                    visitor.Select(r => Sql.Count(r.Id));
                    totalCount = proxy.Count(visitor);
                    visitor.Select();
                    int rows = paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value * rows, rows);
                }

                return new Response <Pedido>()
                {
                    Data = proxy.Get(visitor),
                    TotalCount = totalCount
                };
            }));
        }
Exemplo n.º 10
0
        public static Response<Contacto> Get(this Contacto request,
		                                              Factory factory,
		                                              IHttpRequest httpRequest)
        {
            return factory.Execute(proxy=>{

				long? totalCount=null;

				var paginador= new Paginador(httpRequest);
            	var queryString= httpRequest.QueryString;

				var visitor = ReadExtensions.CreateExpression<Contacto>();
                var predicate = PredicateBuilder.True<Contacto>();

				if(request.IdCliente!=default(int))
					predicate= q=>q.IdCliente==request.IdCliente;

				else if(!request.Nombre.IsNullOrEmpty()) 
				{
	                predicate= q=>q.Nombre.StartsWith(request.Nombre) ;
					visitor.OrderBy(r=>r.Nombre);
				}


				var qs= queryString["Activo"];
				bool activo;
				if(bool.TryParse(qs,out activo)){
					predicate= predicate.AndAlso(q=>q.Activo==activo);
				}

                
				visitor.Where(predicate);
                if(paginador.PageNumber.HasValue)
                {
					visitor.Select(r=> Sql.Count(r.Id));
					totalCount= proxy.Count(visitor);
					visitor.Select();
                    int rows= paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value*rows, rows);
                }
                                
                
                
				return new Response<Contacto>(){
                	Data=proxy.Get(visitor),
                	TotalCount=totalCount
            	};
            });
  
        }
Exemplo n.º 11
0
        public static Response <UserRole> Get(this UserRole request,
                                              Factory factory,
                                              IHttpRequest httpRequest)
        {
            return(factory.Execute(proxy => {
                var userSession = httpRequest.GetSession();

                long?totalCount = null;

                var paginador = new Paginador(httpRequest);

                var visitor = ReadExtensions.CreateExpression <UserRole>();
                var predicate = PredicateBuilder.True <UserRole>();


                if (request.UserId == default(int))
                {
                    request.UserId = int.Parse(userSession.UserAuthId);
                }
                else if (!(userSession.HasRole(RoleNames.Admin)) &&
                         request.UserId != int.Parse(userSession.UserAuthId)
                         )
                {
                    throw HttpError.Unauthorized("Usuario no puede leer listado de roles de otro usuario");
                }

                predicate = q => q.UserId == request.UserId;

                visitor.Where(predicate).OrderBy(f => f.Name);

                if (paginador.PageNumber.HasValue)
                {
                    visitor.Select(r => Sql.Count(r.Id));
                    totalCount = proxy.Count(visitor);
                    visitor.Select();
                    int rows = paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value * rows, rows);
                }


                return new Response <UserRole>()
                {
                    Data = proxy.Get(visitor),
                    TotalCount = totalCount
                };
            }));
        }
Exemplo n.º 12
0
        public static Response<UserRole> Get(this UserRole request,
		                                              Factory factory,
		                                              IHttpRequest httpRequest)
        {
            return factory.Execute(proxy=>{

				var userSession = httpRequest.GetSession();

				long? totalCount=null;

				var paginador= new Paginador(httpRequest);

				var visitor = ReadExtensions.CreateExpression<UserRole>();
				var predicate = PredicateBuilder.True<UserRole>();


				if(request.UserId==default(int))
					request.UserId= int.Parse(userSession.UserAuthId);
				else if(!(userSession.HasRole(RoleNames.Admin)) &&
				        request.UserId != int.Parse(userSession.UserAuthId)
				        )
				{
					throw HttpError.Unauthorized("Usuario no puede leer listado de roles de otro usuario");
				}

				predicate= q=>q.UserId==request.UserId;
												                
				visitor.Where(predicate).OrderBy(f=>f.Name);

                if(paginador.PageNumber.HasValue)
                {
					visitor.Select(r=> Sql.Count(r.Id));
					totalCount= proxy.Count(visitor);
					visitor.Select();
                    int rows= paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value*rows, rows);
                }
                                
                
				return new Response<UserRole>(){
                	Data=proxy.Get(visitor),
                	TotalCount=totalCount
            	};
            });
  
        }
Exemplo n.º 13
0
        public static Response <Ciudad> Get(this Ciudad request,
                                            Factory factory,
                                            IHttpRequest httpRequest)
        {
            return(factory.Execute(proxy => {
                long?totalCount = null;

                var paginador = new Paginador(httpRequest);

                var visitor = ReadExtensions.CreateExpression <Ciudad>();

                var predicate = PredicateBuilder.True <Ciudad>();

                if (request.Id != default(int))
                {
                    predicate = q => q.Id == request.Id;
                }

                if (!request.Nombre.IsNullOrEmpty())
                {
                    predicate = q => q.Nombre.StartsWith(request.Nombre);
                    visitor.OrderBy(r => r.Nombre);
                }


                visitor.Where(predicate);
                if (paginador.PageNumber.HasValue)
                {
                    visitor.Select(r => Sql.Count(r.Id));
                    totalCount = proxy.Count(visitor);
                    visitor.Select();
                    int rows = paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value * rows, rows);
                }



                return new Response <Ciudad>()
                {
                    Data = proxy.Get(visitor),
                    TotalCount = totalCount
                };
            }));
        }
Exemplo n.º 14
0
        public static Response<Ciudad> Get(this Ciudad request,
		                                              Factory factory,
		                                              IHttpRequest httpRequest)
        {
            return factory.Execute(proxy=>{

				long? totalCount=null;

				var paginador= new Paginador(httpRequest);

				var visitor = ReadExtensions.CreateExpression<Ciudad>();

                var predicate = PredicateBuilder.True<Ciudad>();

				if(request.Id!=default(int))
					predicate= q=>q.Id==request.Id;

				if(!request.Nombre.IsNullOrEmpty()) 
				{
	                predicate= q=>q.Nombre.StartsWith(request.Nombre) ;
					visitor.OrderBy(r=>r.Nombre);
				}

                
				visitor.Where(predicate);
                if(paginador.PageNumber.HasValue)
                {
					visitor.Select(r=> Sql.Count(r.Id));
					totalCount= proxy.Count(visitor);
					visitor.Select();
                    int rows= paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value*rows, rows);
                }
                               
                
                
				return new Response<Ciudad>(){
                	Data=proxy.Get(visitor),
                	TotalCount=totalCount
            	};
            });
  
        }
        public static Response<ServicioProcedimiento> Get(this ServicioProcedimiento request,
		                                              Factory factory,
		                                              IHttpRequest httpRequest)
        {
            return factory.Execute(proxy=>{

				long? totalCount=null;

				var paginador= new Paginador(httpRequest);
            	
                var visitor = ReadExtensions.CreateExpression<ServicioProcedimiento>();

				var predicate = PredicateBuilder.True<ServicioProcedimiento>();

				if(!request.NombreProcedimiento.IsNullOrEmpty()){
					predicate= q=>q.NombreProcedimiento.Contains(request.NombreProcedimiento);
					visitor.OrderBy(f=>f.NombreProcedimiento);
				}

				if(!request.NombreServicio.IsNullOrEmpty()){
					predicate= q=>q.NombreServicio.Contains(request.NombreServicio);
					visitor.OrderBy(f=>f.NombreServicio);
				}

				if(request.IdProcedimiento != default(int)){
					predicate = q=>q.IdProcedimiento==request.IdProcedimiento;
					visitor.OrderBy(f=>f.NombreServicio);
				}

				if(request.IdServicio!=default(int)){
					predicate = q=>q.IdServicio==request.IdServicio;
					visitor.OrderBy(f=>f.NombreProcedimiento);
				}

				if (visitor.OrderByExpression.IsNullOrEmpty()) visitor.OrderBy(f=>f.NombreServicio);

				var qs= httpRequest.QueryString["ActivoProcedimiento"];
				bool activo;
				if(bool.TryParse(qs,out activo)){
					predicate= predicate.AndAlso(q=>q.ActivoProcedimiento==activo);
				}


				qs= httpRequest.QueryString["ActivoServicio"];
				bool activoServicio;
				if(bool.TryParse(qs,out activoServicio)){
					predicate= predicate.AndAlso(q=>q.ActivoServicio==activoServicio);
				}

				visitor.Where(predicate);

                if(paginador.PageNumber.HasValue)
                {
					visitor.Select(r=> Sql.Count(r.Id));
					totalCount= proxy.Count(visitor);
					visitor.Select();
                    int rows= paginador.PageSize.HasValue? paginador.PageSize.Value:BL.ResponsePageSize;
                    visitor.Limit(paginador.PageNumber.Value*rows, rows);
                }
                


				return new Response<ServicioProcedimiento>(){
                	Data=proxy.Get(visitor),
                	TotalCount=totalCount
            	};
            });
  
        }