Sfoglia il codice sorgente

提供用户新增和修改下拉数据

zhontai 3 anni fa
parent
commit
623d48fede

+ 3 - 1
Admin.Core.Service/Admin/User/IUserService.cs

@@ -16,7 +16,9 @@ namespace Admin.Core.Service.Admin.User
     {
         Task<ResponseOutput<AuthLoginOutput>> GetLoginUserAsync(long id);
 
-        Task<ResponseOutput<UserGetOutput>> GetAsync(long id);
+        Task<IResponseOutput> GetAsync(long id);
+
+        Task<IResponseOutput> GetSelectAsync();
 
         Task<IResponseOutput> PageAsync(PageInput<UserEntity> input);
 

+ 14 - 4
Admin.Core.Service/Admin/User/UserService.cs

@@ -27,6 +27,8 @@ namespace Admin.Core.Service.Admin.User
         private readonly ITenantRepository _tenantRepository;
         private readonly IApiRepository _apiRepository;
 
+        private IRoleRepository _roleRepository => LazyGetRequiredService<IRoleRepository>();
+
         public UserService(
             AppConfig appConfig,
             IUserRepository userRepository,
@@ -58,17 +60,25 @@ namespace Admin.Core.Service.Admin.User
             return output.Ok(entityDto);
         }
 
-        public async Task<ResponseOutput<UserGetOutput>> GetAsync(long id)
+        public async Task<IResponseOutput> GetAsync(long id)
         {
-            var res = new ResponseOutput<UserGetOutput>();
-
             var entity = await _userRepository.Select
             .WhereDynamic(id)
             .IncludeMany(a => a.Roles.Select(b => new RoleEntity { Id = b.Id }))
             .ToOneAsync();
 
             var entityDto = Mapper.Map<UserGetOutput>(entity);
-            return res.Ok(entityDto);
+
+            var roles = await _roleRepository.Select.ToListAsync(a => new { a.Id, a.Name });
+
+            return ResponseOutput.Ok(new { Form = entityDto, Select = new { roles } });
+        }
+
+        public async Task<IResponseOutput> GetSelectAsync()
+        {
+            var roles = await _roleRepository.Select.ToListAsync(a => new { a.Id, a.Name });
+
+            return ResponseOutput.Ok(new { Select = new { roles } });
         }
 
         public async Task<IResponseOutput> GetBasicAsync()

+ 1 - 1
Admin.Core.Service/Base/BaseService.cs

@@ -13,7 +13,7 @@ namespace Admin.Core.Service
     public abstract class BaseService: IBaseService
     {
         protected readonly object ServiceProviderLock = new object();
-        protected IDictionary<Type, object> CachedServices { get; set; }
+        protected IDictionary<Type, object> CachedServices = new Dictionary<Type, object>();
         private ICache _cache;
         private ILoggerFactory _loggerFactory;
         private IMapper _mapper;

+ 7 - 0
Admin.Core/Admin.Core.xml

@@ -694,6 +694,13 @@
             <param name="id"></param>
             <returns></returns>
         </member>
+        <member name="M:Admin.Core.Controllers.Admin.UserController.GetSelect">
+            <summary>
+            查询下拉数据
+            </summary>
+            <param name="id"></param>
+            <returns></returns>
+        </member>
         <member name="M:Admin.Core.Controllers.Admin.UserController.GetPage(Admin.Core.Common.Input.PageInput{Admin.Core.Model.Admin.UserEntity})">
             <summary>
             查询分页用户

+ 11 - 0
Admin.Core/Controllers/Admin/UserController.cs

@@ -58,6 +58,17 @@ namespace Admin.Core.Controllers.Admin
             return await _userService.GetAsync(id);
         }
 
+        /// <summary>
+        /// 查询下拉数据
+        /// </summary>
+        /// <param name="id"></param>
+        /// <returns></returns>
+        [HttpGet]
+        public async Task<IResponseOutput> GetSelect()
+        {
+            return await _userService.GetSelectAsync();
+        }
+
         /// <summary>
         /// 查询分页用户
         /// </summary>