Пример #1
0
        public ActionResult QuickIndex(int?page, int?pageSize, String Nombre, String Descripcion, int?id, int?estado, bool?cambioestado)
        {
            int pageNumber = (page ?? 1);
            int pSize      = pageSize ?? SoftvMVC.Properties.Settings.Default.pagnum;
            SoftvList <RoleEntity> listResult = null;
            List <RoleEntity>      listRole   = new List <RoleEntity>();
            RoleEntity             objRole    = new RoleEntity();
            RoleEntity             objGetRole = new RoleEntity();


            if (cambioestado == true)
            {
                if (id == 1)
                {
                    var result = new { tipomsj = "error", titulomsj = "Aviso", Success = "False", Message = "No es Posible eliminar este rol por que es Requerido para el sistema" };
                    return(Json(result, JsonRequestBehavior.AllowGet));
                }
                if (id != null)
                {
                    objGetRole = proxy.GetRole(id);
                    if (objGetRole != null)
                    {
                        objGetRole.BaseRemoteIp = RemoteIp;
                        objGetRole.BaseIdUser   = LoggedUserName;

                        try
                        {
                            proxy.ChangeStateRole(objGetRole, objGetRole.Estado == true ? false : true);
                        }
                        catch (Exception ex)
                        {
                            AssingMessageScript(ex.Message, "error", "Error", true);
                            CheckNotify();
                        }

                        var result = new { tipomsj = "error", titulomsj = "Aviso", Success = "True", Message = "se cambio" };
                    }
                    else
                    {
                        var result = new { tipomsj = "error", titulomsj = "Aviso", Success = "False", Message = "error" };
                        return(Json(result, JsonRequestBehavior.AllowGet));
                    }
                }
                else
                {
                    var result = new { tipomsj = "error", titulomsj = "Aviso", Success = "False", Message = "Null id" };
                    return(Json(result, JsonRequestBehavior.AllowGet));
                }

                listRole.Clear();
            }

            if ((Nombre != null && Nombre.ToString() != ""))
            {
                objRole.Nombre = Nombre;
            }

            if ((Descripcion != null && Descripcion.ToString() != ""))
            {
                objRole.Descripcion = Descripcion;
            }

            if (estado.HasValue)
            {
                if (estado.Value == 1)
                {
                    objRole.Estado = true;
                }
                else if (estado.Value == 0)
                {
                    objRole.Estado = false;
                }
            }

            pageNumber = pageNumber == 0 ? 1 : pageNumber;
            listResult = proxy.GetRolePagedListXml(pageNumber, pSize, Globals.SerializeTool.Serialize(objRole));
            if (listResult.Count == 0)
            {
                int tempPageNumber = (int)(listResult.totalCount / pSize);
                pageNumber = (int)(listResult.totalCount / pSize) == 0 ? 1 : tempPageNumber;
                listResult = proxy.GetRolePagedListXml(pageNumber, pSize, Globals.SerializeTool.Serialize(objRole));
            }
            listResult.ToList().ForEach(x => listRole.Add(x));

            var RoleAsIPagedList = new StaticPagedList <RoleEntity>(listRole, pageNumber, pSize, listResult.totalCount);

            if (RoleAsIPagedList.Count > 0 || cambioestado == true)
            {
                return(PartialView(RoleAsIPagedList));
            }
            else
            {
                var result = new { tipomsj = "warning", titulomsj = "Aviso", Success = "False", Message = "No se encontraron registros con los criterios de búsqueda ingresados." };
                return(Json(result, JsonRequestBehavior.AllowGet));
            }
        }