public JsonResult GetUserById(long Id)
        {
            try
            {
                var query = con.Users.Find(Id);

                if (query != null)
                {
                    GetUserModels userModels = new GetUserModels()
                    {
                        ID       = query.ID,
                        UserName = query.UserName,
                        GroupId  = (long)query.GroupId,
                        Status   = (bool)query.Status,
                        IsActive = true,
                        Phone    = query.Phone,
                        Email    = query.Email,
                        Name     = query.Name,
                    };
                    return(Json(userModels, JsonRequestBehavior.AllowGet));
                }
                else
                {
                    return(Json(new GetUserModels(), JsonRequestBehavior.AllowGet));
                }
            }
            catch
            {
                return(Json(new GetUserModels(), JsonRequestBehavior.AllowGet));
            }
        }
        public PartialViewResult Seach(int Page, string FullName, string UserName, string Phone, int Group = 0)
        {
            try
            {
                var query = from User in con.Users
                            where User.IsActive == true
                            select User;
                if (FullName != null)
                {
                    if (FullName.Trim() != "")
                    {
                        query = query.Where(u => u.Name.Contains(FullName));
                    }
                }

                if (UserName != null)
                {
                    if (UserName.Trim() != "")
                    {
                        query = query.Where(u => u.UserName.Contains(UserName));
                    }
                }

                if (Phone != null)
                {
                    if (Phone.Trim() != "")
                    {
                        query = query.Where(u => u.Phone.Contains(Phone));
                    }
                }

                if (Group != 0)
                {
                    query = query.Where(u => u.GroupId == Group);
                }


                if (query != null && query.Count() > 0)
                {
                    List <GetUserModels> listUser = new List <GetUserModels>();
                    foreach (User us in query)
                    {
                        GetUserModels userModels = new GetUserModels();
                        userModels.Name         = us.Name;
                        userModels.ID           = us.ID;
                        userModels.UserName     = us.UserName;
                        userModels.Password     = us.Password;
                        userModels.GroupId      = (long)us.GroupId;
                        userModels.Phone        = us.Phone;
                        userModels.Email        = us.Email;
                        userModels.IsActive     = (bool)us.IsActive;
                        userModels.Status       = (bool)us.Status;
                        userModels.CreatedDate  = (DateTime)us.CreatedDate;
                        userModels.CreatedBy    = us.CreatedBy;
                        userModels.ModifiedDate = (DateTime)us.ModifiedDate;
                        userModels.ModifiedBy   = us.ModifiedBy;


                        UserGroup userGroup = con.UserGroups.Find(us.GroupId);
                        if (userGroup != null)
                        {
                            userModels.GroupName = userGroup.GroupName;
                        }
                        listUser.Add(userModels);
                    }
                    return(PartialView("_List", listUser.ToPagedList(Page, Constants.MAX_ROW_IN_LIST)));
                }
                else
                {
                    return(PartialView("_List", new List <GetUserModels>().ToPagedList(1, 1)));
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }