You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

GetAboutAddressServise.cs 1.4KB

2 years ago
1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using Karsha_Site.Application.Interfaces.Contexts;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using Karsha_Site.Common;
  6. namespace Karsha_Site.Application.Services.About.Queries.GetAboutAddress
  7. {
  8. public class GetAboutAddressServise: IGetAboutAddressServise
  9. {
  10. private readonly IDataBaseContext _context;
  11. public GetAboutAddressServise(IDataBaseContext context) {
  12. _context = context;
  13. }
  14. public ResultAboutAddressDto Execute(RequestGetAboutAddressDto request)
  15. {
  16. var aboutAddress = _context.AboutAddress.AsQueryable();
  17. if (!string.IsNullOrWhiteSpace(request.SearchKey))
  18. {
  19. aboutAddress = aboutAddress.Where(c => c.Address.Contains(request.SearchKey) || c.DisplayName.Contains(request.SearchKey));
  20. }
  21. int rowsCount = 0;
  22. var aboutAddressList = aboutAddress.ToPaged(request.Page, request.PageSize, out rowsCount).Select(p=>new GetAboutAddressDto
  23. {
  24. DisplayName = p.DisplayName,
  25. Address = p.Address,
  26. AboutID = p.AboutID,
  27. IsMain = p.IsMain,
  28. ID = p.ID
  29. }).ToList();
  30. return new ResultAboutAddressDto
  31. {
  32. AboutAddressDto = aboutAddressList,
  33. Rows = rowsCount,
  34. PageSize = request.PageSize,
  35. CurrentPage = request.Page
  36. };
  37. }
  38. }
  39. }