VolunteerRepository.cs 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. using Hotline.Repository.SqlSugar.DataPermissions;
  2. using Hotline.Share.Dtos.FlowEngine.Workflow;
  3. using Hotline.Share.Tools;
  4. using Hotline.Snapshot;
  5. using Hotline.Snapshot.IRepository;
  6. using SqlSugar;
  7. using System;
  8. using System.Collections.Generic;
  9. using System.Linq;
  10. using System.Text;
  11. using System.Threading.Tasks;
  12. using XF.Domain.Dependency;
  13. namespace Hotline.Repository.SqlSugar.Snapshot;
  14. public class VolunteerRepository : BaseRepository<Volunteer>, IVolunteerRepository, IScopeDependency
  15. {
  16. public VolunteerRepository(ISugarUnitOfWork<HotlineDbContext> uow, IDataPermissionFilterBuilder dataPermissionFilterBuilder, IServiceProvider serviceProvider) : base(uow, dataPermissionFilterBuilder, serviceProvider)
  17. {
  18. }
  19. public async Task<Volunteer> GetByPhoneAsync(string? phone)
  20. {
  21. if (phone.IsNullOrEmpty()) return null;
  22. return await Queryable().Where(m => m.PhoneNumber == phone.Trim()).FirstAsync();
  23. }
  24. /// <summary>
  25. /// 是否是志愿者
  26. /// </summary>
  27. /// <param name="phoneNumber"></param>
  28. /// <returns></returns>
  29. public async Task<bool> IsVolunteerAsync(string? phoneNumber)
  30. {
  31. if (phoneNumber.IsNullOrEmpty()) return false;
  32. return await Queryable().Where(m => m.PhoneNumber == phoneNumber.Trim()).AnyAsync();
  33. }
  34. }