Exemplo n.º 1
0
        public async Task <PagingOutput <Polyclinic> > GetAllAsync(int page, int pageSize,
                                                                   SortOprions sortOrder, string search)
        {
            var query = from _ in Context.Set <Polyclinic>()
                        orderby _.Id
                        select _;

            if (search != "")
            {
                query = from _ in Context.Set <Polyclinic>()
                        where _.Name.ToLower().Contains(search.ToLower())
                        orderby _.Id
                        select _;
            }

            switch (sortOrder)
            {
            case SortOprions.Name:
                query = query.OrderBy(x => x.Name);
                break;

            case SortOprions.Name_desc:
                query = query.OrderByDescending(x => x.Name);
                break;

            default:
                break;
            }

            return(await CommonRepositoryAsync.GetAllWithPageAsync(query, page, pageSize, _includeInfo));
        }
Exemplo n.º 2
0
        private async Task <PagingOutput <Schedule> > GetAllFilterAsync(IOrderedQueryable <Schedule> query, int page, int pageSize,
                                                                        SortOprions sort, string search = "")
        {
            if (search != "")
            {
                query = from _ in Context.Set <Schedule>()
                        where _.Personal.UserInfo.SurName.ToLower().Contains(search.ToLower()) ||
                        _.Personal.UserInfo.LastName.ToLower().Contains(search.ToLower()) ||
                        _.Personal.UserInfo.FirstName.ToLower().Contains(search.ToLower()) ||
                        _.Personal.UserInfo.PhoneNumber.ToLower().Contains(search.ToLower()) ||
                        _.Personal.UserInfo.Email.ToLower().Contains(search.ToLower()) ||
                        _.Personal.Polyclinic.Name.ToLower().Contains(search.ToLower()) ||
                        _.Personal.Position.Name.ToLower().Contains(search.ToLower()) ||
                        _.Personal.Polyclinic.Address.ToLower().Contains(search.ToLower())
                        orderby _.Id
                        select _;
            }

            switch (sort)
            {
            case SortOprions.Email:
                query = query.OrderBy(x => x.Personal.UserInfo.Email);
                break;

            case SortOprions.Email_desc:
                query = query.OrderByDescending(x => x.Personal.UserInfo.Email);
                break;

            case SortOprions.Name:
                query = query.OrderBy(x => x.Personal.UserInfo.FirstName);
                break;

            case SortOprions.Name_desc:
                query = query.OrderByDescending(x => x.Personal.UserInfo.FirstName);
                break;

            case SortOprions.Number:
                query = query.OrderBy(x => x.Id);
                break;

            case SortOprions.Number_desc:
                query = query.OrderByDescending(x => x.Id);
                break;

            case SortOprions.Position:
                query = query.OrderBy(x => x.Personal.Position.Name);
                break;

            case SortOprions.Position_desc:
                query = query.OrderByDescending(x => x.Personal.Position.Name);
                break;

            default:
                break;
            }

            return(await CommonRepositoryAsync.GetAllWithPageAsync(query, page, pageSize, _include));
        }
Exemplo n.º 3
0
        public async Task <ActionResult> Index(int page = 1, int pageSize = 10, SortOprions sortOrder = SortOprions.Number, string search = "")
        {
            ViewBag.searchQuery   = String.IsNullOrEmpty(search) ? "" : search;
            ViewBag.NameSortParam = sortOrder == SortOprions.Name ? "Name_desc" : "Name";
            ViewBag.CurrentSort   = sortOrder;
            var view = await _scheduleService.GetAllAsync(page, pageSize, sortOrder, search);

            return(View(view));
        }
Exemplo n.º 4
0
        /// <summary>
        /// Список
        /// </summary>
        /// <param name="page">страница</param>
        /// <param name="pageSize">количество элементов на странице</param>
        /// <param name="sortOrder"></param>
        /// <returns>Список типов занятий</returns>
        public async Task <ViewResult> Index(int page = 1, int pageSize = 10, SortOprions sortOrder = SortOprions.Number, string search = "")
        {
            ViewBag.searchQuery          = String.IsNullOrEmpty(search) ? "" : search;
            ViewBag.NameSortParam        = sortOrder == SortOprions.Name ? "Name_desc" : "Name";
            ViewBag.PhoneNumberSortParam = sortOrder == SortOprions.PhoneNumber ? "PhoneNumber_desc" : "PhoneNumber";
            ViewBag.EmailSortParam       = sortOrder == SortOprions.Email ? "Email_desc" : "Email";
            ViewBag.PolyclinicSortParam  = sortOrder == SortOprions.Polyclinic ? "Polyclinic_desc" : "Polyclinic";
            ViewBag.DepartmentSortParam  = sortOrder == SortOprions.Position ? "Position_desc" : "Position";

            ViewBag.CurrentSort = sortOrder;
            var view = await _personaltService.GetAllAsync(page, pageSize, sortOrder, search);

            return(View(view));
        }
Exemplo n.º 5
0
        /// <summary>
        /// Used to determine the direction of the sort identifier used when filtering lists
        /// </summary>
        /// <param name="htmlHelper"></param>
        /// <param name="sortOrder">the current sort order being used on the page</param>
        /// <param name="field">the field that we are attaching this sort identifier to</param>
        /// <returns>MvcHtmlString used to indicate the sort order of the field</returns>
        public static IHtmlString SortIdentifier(this HtmlHelper htmlHelper, SortOprions sortOrder, string field)
        {
            string sort = sortOrder.ToString();

            if (string.IsNullOrEmpty(sort) || (sort.Trim() != field && sort.Replace("_desc", "").Trim() != field))
            {
                return(null);
            }

            string glyph = "fa fa-level-up";

            if (sort.ToLower().Contains("desc"))
            {
                glyph = "fa fa-level-down";
            }

            var span = new TagBuilder("span");

            span.Attributes["class"] = glyph;

            return(MvcHtmlString.Create(span.ToString()));
        }
Exemplo n.º 6
0
        public async Task <PagingOutput <Personal> > GetAllForPoliclinicAsync(int policlinicId, int page, int pageSize, SortOprions sort, string search)
        {
            var query = from _ in Context.Set <Personal>()
                        where _.PolyclinicId == policlinicId
                        orderby _.Id
                        select _;

            return(await GetAllFilterAsync(query, page, pageSize, sort, search));
        }
Exemplo n.º 7
0
        /// <summary>
        /// постраничное получение данных
        /// </summary>
        /// <param name="page"></param>
        /// <param name="pageSize"></param>
        /// <param name="sort"></param>
        /// <param name="search"></param>
        /// <returns></returns>
        public async Task <PagingOutput <UserInfo> > GetAllAsync(int page, int pageSize, SortOprions sort, string search = "")
        {
            var query = from _ in Context.Set <UserInfo>()
                        where _.RoleInfoId == 1
                        orderby _.Id
                        select _;

            if (search != "")
            {
                query = from _ in Context.Set <UserInfo>()
                        where _.SurName.ToLower().Contains(search.ToLower()) ||
                        _.LastName.ToLower().Contains(search.ToLower()) ||
                        _.FirstName.ToLower().Contains(search.ToLower()) ||
                        _.PhoneNumber.ToLower().Contains(search.ToLower()) ||
                        _.Email.ToLower().Contains(search.ToLower())
                        orderby _.Id
                        select _;
            }

            switch (sort)
            {
            case SortOprions.Email:
                query = query.OrderBy(x => x.Email);
                break;

            case SortOprions.Email_desc:
                query = query.OrderByDescending(x => x.Email);
                break;

            case SortOprions.Name:
                query = query.OrderBy(x => x.FirstName);
                break;

            case SortOprions.Name_desc:
                query = query.OrderByDescending(x => x.FirstName);
                break;

            case SortOprions.Number:
                query = query.OrderBy(x => x.Id);
                break;

            case SortOprions.Number_desc:
                query = query.OrderByDescending(x => x.Id);
                break;

            case SortOprions.PhoneNumber:
                query = query.OrderBy(x => x.PhoneNumber);
                break;

            case SortOprions.PhoneNumber_desc:
                query = query.OrderByDescending(x => x.PhoneNumber);
                break;

            default:
                break;
            }

            return(await CommonRepositoryAsync.GetAllWithPageAsync(query, page, pageSize, _includeUserInfo));
        }
Exemplo n.º 8
0
        public async Task <PagingOutput <Schedule> > GetAllAsync(int page, int pageSize, SortOprions sort, string search = "")
        {
            var query = from _ in Context.Set <Schedule>()
                        orderby _.Id
                        select _;

            return(await GetAllFilterAsync(query, page, pageSize, sort, search));
        }
Exemplo n.º 9
0
        public async Task <PagingOutput <Schedule> > GetAllForPoloclinicAsync(int policlinicId, int page, int pageSize, SortOprions sort, string search = "")
        {
            IOrderedQueryable <Schedule> query = from _ in Context.Set <Schedule>()
                                                 where _.Personal.PolyclinicId == policlinicId
                                                 orderby _.Id
                                                 select _;

            return(await GetAllFilterAsync(query, page, pageSize, sort, search));
        }