ShwasherAppServiceBase.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. using System;
  2. using System.Threading.Tasks;
  3. using Abp.Application.Services;
  4. using Abp.Runtime.Session;
  5. using ShwasherSys.Authorization.Users;
  6. using IwbZero.Authorization.Permissions;
  7. using IwbZero.IdentityFramework;
  8. using IwbZero.Session;
  9. using IwbZero.Setting;
  10. using Microsoft.AspNet.Identity;
  11. namespace ShwasherSys
  12. {
  13. /// <summary>
  14. /// Derive your application services from this class.
  15. /// </summary>
  16. public abstract class ShwasherAppServiceBase : ApplicationService
  17. {
  18. public UserManager UserManager { get; set; }
  19. public new IIwbSession AbpSession { get; set; }
  20. protected ShwasherAppServiceBase()
  21. {
  22. LocalizationSourceName = ShwasherConsts.LocalizationSourceName;
  23. }
  24. public new IIwbPermissionManager PermissionManager { protected get; set; }
  25. protected new IIwbSettingManager SettingManager { get; set; }
  26. protected Task<SysUser> GetCurrentUserAsync()
  27. {
  28. var user = UserManager.FindByIdAsync(AbpSession.GetUserId());
  29. if (user == null)
  30. {
  31. throw new ApplicationException("There is no current user!");
  32. }
  33. return user;
  34. }
  35. protected virtual void CheckErrors(IdentityResult identityResult)
  36. {
  37. identityResult.CheckErrors(LocalizationManager);
  38. }
  39. }
  40. }