0
0

ProjectService.cs 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using ZhonTai.Admin.Core.Consts;
  7. using ZhonTai.Admin.Services.User;
  8. using ZhonTai.DynamicApi.Attributes;
  9. using ZhonTai.DynamicApi;
  10. using Microsoft.AspNetCore.Mvc;
  11. using ZhonTai.Admin.Core.Dto;
  12. using ZhonTai.Admin.Domain.Role;
  13. using ZhonTai.Admin.Domain.User;
  14. using ZhonTai.Admin.Services.User.Dto;
  15. using ZhonTai.Admin.Domain.UserRole;
  16. using ZhonTai.Admin.Domain.Project;
  17. using ZhonTai.Admin.Services.Project.Dto;
  18. namespace ZhonTai.Admin.Services.Project
  19. {
  20. /// <summary>
  21. /// 项目服务
  22. /// </summary>
  23. [Order(10)]
  24. [DynamicApi(Area = AdminConsts.AreaName)]
  25. public partial class ProjectService : BaseService, IProjectService, IDynamicApi
  26. {
  27. private IProjectRepository _projectRepository => LazyGetRequiredService<IProjectRepository>();
  28. public ProjectService()
  29. {
  30. }
  31. /// <summary>
  32. /// 查询分页
  33. /// </summary>
  34. /// <param name="input"></param>
  35. /// <returns></returns>
  36. [HttpPost]
  37. public async Task<PageOutput<ProjectGetPageOutput>> GetPageAsync(PageInput<ProjectGetPageInput> input)
  38. {
  39. var list = await _projectRepository.Select
  40. .Count(out var total)
  41. .OrderByDescending(true, a => a.Id)
  42. .Page(input.CurrentPage, input.PageSize)
  43. .ToListAsync(a => new ProjectGetPageOutput { name = a.name });
  44. //if (orgId.HasValue && orgId > 0)
  45. //{
  46. // var managerUserIds = await _userOrgRepository.Select
  47. // .Where(a => a.OrgId == orgId && a.IsManager == true).ToListAsync(a => a.UserId);
  48. // if (managerUserIds.Any())
  49. // {
  50. // var managerUsers = list.Where(a => managerUserIds.Contains(a.Id));
  51. // foreach (var managerUser in managerUsers)
  52. // {
  53. // managerUser.IsManager = true;
  54. // }
  55. // }
  56. //}
  57. var data = new PageOutput<ProjectGetPageOutput>()
  58. {
  59. List = Mapper.Map<List<ProjectGetPageOutput>>(list),
  60. Total = total
  61. };
  62. return data;
  63. }
  64. }
  65. }