From dade4ec44ae9a42d6447589d34124a38f264100a Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期五, 01 八月 2025 16:35:21 +0800 Subject: [PATCH] feat:菜单 --- FlexJobApi.Core/Utils/DbUtils/DbUtils.cs | 6 +- FlexJobApi.User.Application/FlexJobApi.User.Application.xml | 34 +++++++++++++++++ FlexJobApi.User.Application/Menus/Queries/MenuAllQueryHandler.cs | 13 ++---- FlexJobApi.User.Application/Auths/Commands/AuthPasswordLoginCommandHandler.cs | 18 +++----- FlexJobApi.User.Application/Menus/Commands/MenuSaveCommandHandler.cs | 19 ++++----- FlexJobApi.User.Application/Menus/MenuAppService.cs | 9 +--- FlexJobApi.User.Application/Auths/AuthAppService.cs | 9 +--- 7 files changed, 62 insertions(+), 46 deletions(-) diff --git a/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs b/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs index ffb3bae..1547067 100644 --- a/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs +++ b/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs @@ -101,7 +101,7 @@ var prop = entity.Property(nameof(CommonEntity.CreatedTime)); if (prop != null && prop.CurrentValue?.ToDateTime() == null) { - prop.CurrentValue = DateTime.Now; + prop.CurrentValue = DateTimeOffset.Now; } // 鐢熸垚Id @@ -125,7 +125,7 @@ var prop = entity.Property(nameof(CommonEntity.UpdatedTime)); if (prop != null && prop.CurrentValue?.ToDateTime() == null) { - prop.CurrentValue = DateTime.Now; + prop.CurrentValue = DateTimeOffset.Now; } // 璧嬪�肩敤鎴蜂俊鎭疘d @@ -178,7 +178,7 @@ : EnumDbAuditOperate.Deleted, TraceId = App.GetTraceId(), CreatedTime = DateTime.Now, - CreatedUserInfoId = logier.UserInfoId, + CreatedUserInfoId = logier?.UserInfoId, }); } } diff --git a/FlexJobApi.User.Application/Auths/AuthAppService.cs b/FlexJobApi.User.Application/Auths/AuthAppService.cs index 24379f4..2b2495f 100644 --- a/FlexJobApi.User.Application/Auths/AuthAppService.cs +++ b/FlexJobApi.User.Application/Auths/AuthAppService.cs @@ -12,14 +12,9 @@ /// 璁よ瘉 /// </summary> [Route("api/user/[controller]")] - public class AuthAppService : IDynamicApiController + public class AuthAppService(IMediator mediator) : IDynamicApiController { - private readonly IMediator mediator; - - public AuthAppService(IMediator mediator) - { - this.mediator = mediator; - } + private readonly IMediator mediator = mediator; /// <summary> /// 瀵嗙爜鐧诲綍 diff --git a/FlexJobApi.User.Application/Auths/Commands/AuthPasswordLoginCommandHandler.cs b/FlexJobApi.User.Application/Auths/Commands/AuthPasswordLoginCommandHandler.cs index 018d847..a2a1a45 100644 --- a/FlexJobApi.User.Application/Auths/Commands/AuthPasswordLoginCommandHandler.cs +++ b/FlexJobApi.User.Application/Auths/Commands/AuthPasswordLoginCommandHandler.cs @@ -16,19 +16,15 @@ /// <summary> /// 瀵嗙爜鐧诲綍 /// </summary> - public class AuthPasswordLoginCommandHandler : IRequestHandler<AuthPasswordLoginCommand, AuthPasswordLoginCallback> + public class AuthPasswordLoginCommandHandler( + IRepository<UserAuth> userAuthRep, + IRepository<UserInfo> userInfoRep) + : IRequestHandler<AuthPasswordLoginCommand, AuthPasswordLoginCallback> { - private readonly IRepository<UserAuth> userAuthRep; - private readonly IRepository<UserInfo> userInfoRep; + private readonly IRepository<UserAuth> userAuthRep = userAuthRep; + private readonly IRepository<UserInfo> userInfoRep = userInfoRep; - public AuthPasswordLoginCommandHandler( - IRepository<UserAuth> userAuthRep, - IRepository<UserInfo> userInfoRep) - { - this.userAuthRep = userAuthRep; - this.userInfoRep = userInfoRep; - } - + /// <inheritdoc/> public async Task<AuthPasswordLoginCallback> Handle(AuthPasswordLoginCommand request, CancellationToken cancellationToken) { var userInfo = await userInfoRep.AsQueryable().AsNoTracking() diff --git a/FlexJobApi.User.Application/FlexJobApi.User.Application.xml b/FlexJobApi.User.Application/FlexJobApi.User.Application.xml index 9f844af..be1b05f 100644 --- a/FlexJobApi.User.Application/FlexJobApi.User.Application.xml +++ b/FlexJobApi.User.Application/FlexJobApi.User.Application.xml @@ -9,6 +9,11 @@ 璁よ瘉 </summary> </member> + <member name="M:FlexJobApi.User.Application.AuthAppService.#ctor(MediatR.IMediator)"> + <summary> + 璁よ瘉 + </summary> + </member> <member name="M:FlexJobApi.User.Application.AuthAppService.PasswordLogin(FlexJobApi.Core.AuthPasswordLoginCommand)"> <summary> 瀵嗙爜鐧诲綍 @@ -20,6 +25,14 @@ <summary> 瀵嗙爜鐧诲綍 </summary> + </member> + <member name="M:FlexJobApi.User.Application.AuthPasswordLoginCommandHandler.#ctor(Furion.DatabaseAccessor.IRepository{FlexJobApi.Core.UserAuth},Furion.DatabaseAccessor.IRepository{FlexJobApi.Core.UserInfo})"> + <summary> + 瀵嗙爜鐧诲綍 + </summary> + </member> + <member name="M:FlexJobApi.User.Application.AuthPasswordLoginCommandHandler.Handle(FlexJobApi.Core.AuthPasswordLoginCommand,System.Threading.CancellationToken)"> + <inheritdoc/> </member> <member name="F:FlexJobApi.User.Application.EnumUserErrorCodeType.s100"> <summary> @@ -36,7 +49,20 @@ 淇濆瓨鑿滃崟 </summary> </member> + <member name="M:FlexJobApi.User.Application.MenuSaveCommandHandler.#ctor(Furion.DatabaseAccessor.IRepository{FlexJobApi.Core.Menu})"> + <summary> + 淇濆瓨鑿滃崟 + </summary> + </member> + <member name="M:FlexJobApi.User.Application.MenuSaveCommandHandler.Handle(FlexJobApi.Core.MenuSaveCommand,System.Threading.CancellationToken)"> + <inheritdoc/> + </member> <member name="T:FlexJobApi.User.Application.MenuAppService"> + <summary> + 鑿滃崟 + </summary> + </member> + <member name="M:FlexJobApi.User.Application.MenuAppService.#ctor(MediatR.IMediator)"> <summary> 鑿滃崟 </summary> @@ -60,5 +86,13 @@ 鏌ヨ鎵�鏈夎彍鍗� </summary> </member> + <member name="M:FlexJobApi.User.Application.MenuAllQueryHandler.#ctor(Furion.DatabaseAccessor.IRepository{FlexJobApi.Core.Menu})"> + <summary> + 鏌ヨ鎵�鏈夎彍鍗� + </summary> + </member> + <member name="M:FlexJobApi.User.Application.MenuAllQueryHandler.Handle(FlexJobApi.Core.MenuAllQuery,System.Threading.CancellationToken)"> + <inheritdoc/> + </member> </members> </doc> diff --git a/FlexJobApi.User.Application/Menus/Commands/MenuSaveCommandHandler.cs b/FlexJobApi.User.Application/Menus/Commands/MenuSaveCommandHandler.cs index 480faa0..4ab1616 100644 --- a/FlexJobApi.User.Application/Menus/Commands/MenuSaveCommandHandler.cs +++ b/FlexJobApi.User.Application/Menus/Commands/MenuSaveCommandHandler.cs @@ -15,16 +15,13 @@ /// <summary> /// 淇濆瓨鑿滃崟 /// </summary> - public class MenuSaveCommandHandler : IRequestHandler<MenuSaveCommand, Guid> + public class MenuSaveCommandHandler( + IRepository<Menu> menuRep) + : IRequestHandler<MenuSaveCommand, Guid> { - private readonly IRepository<Menu> menuRep; + private readonly IRepository<Menu> menuRep = menuRep; - public MenuSaveCommandHandler( - IRepository<Menu> menuRep) - { - this.menuRep = menuRep; - } - + /// <inheritdoc/> public async Task<Guid> Handle(MenuSaveCommand request, CancellationToken cancellationToken) { var menu = @@ -32,8 +29,10 @@ ? await menuRep.AsQueryable().FirstOrDefaultAsync(it => it.Id == request.Id, cancellationToken) : new Menu(); if (menu == null) throw Oops.Oh(EnumUserErrorCodeType.s100, "鑿滃崟"); - menu.Adapt(request); - await menuRep.SaveNowAsync(cancellationToken); + request.Adapt(menu); + var result = request.Id == null + ? await menuRep.InsertNowAsync(menu, cancellationToken: cancellationToken) + : await menuRep.UpdateNowAsync(menu, cancellationToken: cancellationToken); return menu.Id; } } diff --git a/FlexJobApi.User.Application/Menus/MenuAppService.cs b/FlexJobApi.User.Application/Menus/MenuAppService.cs index 5b2104f..0344b35 100644 --- a/FlexJobApi.User.Application/Menus/MenuAppService.cs +++ b/FlexJobApi.User.Application/Menus/MenuAppService.cs @@ -14,14 +14,9 @@ /// 鑿滃崟 /// </summary> [Route("api/user/[controller]")] - public class MenuAppService : IDynamicApiController + public class MenuAppService(IMediator mediator) : IDynamicApiController { - private readonly IMediator mediator; - - public MenuAppService(IMediator mediator) - { - this.mediator = mediator; - } + private readonly IMediator mediator = mediator; /// <summary> /// 鏌ヨ鎵�鏈夎彍鍗� diff --git a/FlexJobApi.User.Application/Menus/Queries/MenuAllQueryHandler.cs b/FlexJobApi.User.Application/Menus/Queries/MenuAllQueryHandler.cs index d2bba62..42eeb76 100644 --- a/FlexJobApi.User.Application/Menus/Queries/MenuAllQueryHandler.cs +++ b/FlexJobApi.User.Application/Menus/Queries/MenuAllQueryHandler.cs @@ -14,16 +14,13 @@ /// <summary> /// 鏌ヨ鎵�鏈夎彍鍗� /// </summary> - public class MenuAllQueryHandler : IRequestHandler<MenuAllQuery, MenuAllCallback> + public class MenuAllQueryHandler( + IRepository<Menu> menuRep) + : IRequestHandler<MenuAllQuery, MenuAllCallback> { - private readonly IRepository<Menu> menuRep; + private readonly IRepository<Menu> menuRep = menuRep; - public MenuAllQueryHandler( - IRepository<Menu> menuRep) - { - this.menuRep = menuRep; - } - + /// <inheritdoc/> public async Task<MenuAllCallback> Handle(MenuAllQuery request, CancellationToken cancellationToken) { var config = new TypeAdapterConfig(); -- Gitblit v1.9.1