|
|
|
@ -23,6 +23,7 @@ using Volo.Abp; |
|
|
|
using Volo.Abp.Account; |
|
|
|
using Volo.Abp.Application.Dtos; |
|
|
|
using Volo.Abp.Application.Services; |
|
|
|
using Volo.Abp.Caching; |
|
|
|
using Volo.Abp.Data; |
|
|
|
using Volo.Abp.DependencyInjection; |
|
|
|
using Volo.Abp.Domain.Repositories; |
|
|
|
@ -54,9 +55,9 @@ namespace Shentun.Peis.MyUser |
|
|
|
private readonly IRepository<OrganizationUnit, Guid> _organizationUnitRepository; |
|
|
|
//private readonly IRepository<IdentityUserOrganizationUnit> _identityUserOrganizationUnitRepository;
|
|
|
|
private readonly CurrentUser _currentUser; |
|
|
|
private readonly IDistributedCache<IdentityUser, Guid> _userCache; |
|
|
|
|
|
|
|
public MyUserAppService( |
|
|
|
|
|
|
|
IRepository<IdentityUser, Guid> identityUserRepository, |
|
|
|
IdentityUserManager userManager, |
|
|
|
IIdentityUserRepository userRepository, |
|
|
|
@ -69,7 +70,8 @@ namespace Shentun.Peis.MyUser |
|
|
|
IHttpClientFactory httpClientFactory, |
|
|
|
IConfiguration configuration, |
|
|
|
//IRepository<IdentityUserOrganizationUnit> identityUserOrganizationUnitRepository,
|
|
|
|
CurrentUser currentUser) : |
|
|
|
CurrentUser currentUser, |
|
|
|
IDistributedCache<IdentityUser, Guid> userCache) : |
|
|
|
base(userManager, |
|
|
|
userRepository, |
|
|
|
roleRepository, |
|
|
|
@ -87,6 +89,7 @@ namespace Shentun.Peis.MyUser |
|
|
|
this._organizationUnitRepository = organizationUnitRepository; |
|
|
|
// this._identityUserOrganizationUnitRepository = identityUserOrganizationUnitRepository;
|
|
|
|
this._currentUser = currentUser; |
|
|
|
_userCache = userCache; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -174,7 +177,7 @@ namespace Shentun.Peis.MyUser |
|
|
|
/// <returns></returns>
|
|
|
|
[Authorize(PeisPermissions.Users.Create)] |
|
|
|
[HttpPost("api/identity/users/create")] |
|
|
|
public Task<IdentityUserDto> CreateAsync(IdentityUserCreateNoEmailDto input) |
|
|
|
public async Task<IdentityUserDto> CreateAsync(IdentityUserCreateNoEmailDto input) |
|
|
|
{ |
|
|
|
IdentityUserCreateDto newinput = new IdentityUserCreateDto |
|
|
|
{ |
|
|
|
@ -188,7 +191,11 @@ namespace Shentun.Peis.MyUser |
|
|
|
Surname = input.Surname, |
|
|
|
UserName = input.UserName |
|
|
|
}; |
|
|
|
return base.CreateAsync(newinput); |
|
|
|
var entityDto = await base.CreateAsync(newinput); |
|
|
|
|
|
|
|
var entity = await _identityUserRepository.GetAsync(entityDto.Id); |
|
|
|
await _userCache.SetAsync(entityDto.Id, entity); |
|
|
|
return entityDto; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
@ -241,9 +248,14 @@ namespace Shentun.Peis.MyUser |
|
|
|
/// <returns></returns>
|
|
|
|
[Authorize(PeisPermissions.Users.Edit)] |
|
|
|
[HttpPost("api/identity/users/update")] |
|
|
|
public override Task<IdentityUserDto> UpdateAsync(Guid id, IdentityUserUpdateDto input) |
|
|
|
public override async Task<IdentityUserDto> UpdateAsync(Guid id, IdentityUserUpdateDto input) |
|
|
|
{ |
|
|
|
return base.UpdateAsync(id, input); |
|
|
|
var entityDto = await base.UpdateAsync(id, input); |
|
|
|
|
|
|
|
var entity = await _identityUserRepository.GetAsync(id); |
|
|
|
await _userCache.SetAsync(id, entity); |
|
|
|
return entityDto; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|