using Karsha_Site.Application.Interfaces.Contexts; using System; using System.Collections.Generic; using System.Linq; using Karsha_Site.Common; namespace Karsha_Site.Application.Services.About.Queries.GetAboutAddress { public class GetAboutAddressServise: IGetAboutAddressServise { private readonly IDataBaseContext _context; public GetAboutAddressServise(IDataBaseContext context) { _context = context; } public ResultAboutAddressDto Execute(RequestGetAboutAddressDto request) { var aboutAddress = _context.AboutAddress.AsQueryable(); if (!string.IsNullOrWhiteSpace(request.SearchKey)) { aboutAddress = aboutAddress.Where(c => c.Address.Contains(request.SearchKey) || c.DisplayName.Contains(request.SearchKey)); } int rowsCount = 0; var aboutAddressList = aboutAddress.ToPaged(request.Page, request.PageSize, out rowsCount).Select(p=>new GetAboutAddressDto { DisplayName = p.DisplayName, Address = p.Address, AboutID = p.AboutID, IsMain = p.IsMain, ID = p.ID }).ToList(); return new ResultAboutAddressDto { AboutAddressDto = aboutAddressList, Rows = rowsCount, PageSize = request.PageSize, CurrentPage = request.Page }; } } }