From 32288af3e5f12bc48d8360114c872fde5d9ff4a8 Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期五, 08 八月 2025 09:09:08 +0800 Subject: [PATCH] pref:优化 --- FlexJobApi.UserServer.Application/Enterprises/Commands/EnterpriseCommandHandler.cs | 53 ++++++++++++++++++++++++----------------------------- 1 files changed, 24 insertions(+), 29 deletions(-) diff --git a/FlexJobApi.User.Application/Enterprises/Commands/EnterpriseCommandHandler.cs b/FlexJobApi.UserServer.Application/Enterprises/Commands/EnterpriseCommandHandler.cs similarity index 66% rename from FlexJobApi.User.Application/Enterprises/Commands/EnterpriseCommandHandler.cs rename to FlexJobApi.UserServer.Application/Enterprises/Commands/EnterpriseCommandHandler.cs index a151896..ca8469b 100644 --- a/FlexJobApi.User.Application/Enterprises/Commands/EnterpriseCommandHandler.cs +++ b/FlexJobApi.UserServer.Application/Enterprises/Commands/EnterpriseCommandHandler.cs @@ -11,14 +11,14 @@ using System.Text; using System.Threading.Tasks; -namespace FlexJobApi.User.Application +namespace FlexJobApi.UserServer.Application { /// <summary> /// 浼佷笟鍛戒护澶勭悊鍣� /// </summary> public class EnterpriseCommandHandler( IRepository<Enterprise> rep, - IRepository<UserInfo> repUserInfo + IRepository<User> repUser ) : IRequestHandler<SaveEnterpriseCommand, Guid>, IRequestHandler<SetEnterpriseElectronSignSettingCommand, Guid>, @@ -26,7 +26,7 @@ { private readonly IRepository<Enterprise> rep = rep; - private readonly IRepository<UserInfo> repUserInfo = repUserInfo; + private readonly IRepository<User> repUser = repUser; /// <summary> /// 淇濆瓨浼佷笟 @@ -37,12 +37,10 @@ public async Task<Guid> Handle(SaveEnterpriseCommand request, CancellationToken cancellationToken) { var entity = await rep.AsQueryable() - .Include(it => it.EnterpriseAuth) - .FirstOrDefaultAsync(it => it.EnterpriseAuth.SocietyCreditCode == request.EnterpriseAuth.SocietyCreditCode); + .FirstOrDefaultAsync(it => it.SocietyCreditCode == request.SocietyCreditCode); if (entity == null) { entity = new Enterprise(); - entity.EnterpriseAuth = new EnterpriseAuth(); request.Adapt(entity); await rep.InsertAsync(entity); } @@ -52,39 +50,36 @@ await rep.UpdateAsync(entity); } - var checkExist = await repUserInfo.AsQueryable() - .AnyAsync(it => - it.Type == EnumUserType.Enterprise - && it.EnterpriseId != entity.Id - && it.UserAuth.UserName == request.UserName); - if (checkExist) throw Oops.Oh(EnumErrorCodeType.s405, "璇ヨ处鍙�"); - - var userInfo = await repUserInfo.AsQueryable() - .Include(it => it.UserAuth) + var user = await repUser.AsQueryable() .FirstOrDefaultAsync(it => it.Type == EnumUserType.Enterprise - && it.EnterpriseId == entity.Id); - if (userInfo == null) + && it.UserName == request.UserName); + if (user == null) { - userInfo = new UserInfo + if (request.Password.IsNull()) throw Oops.Oh(EnumErrorCodeType.s400, "璇峰~鍐欏瘑鐮�"); + user = new User { EnterpriseId = entity.Id, Type = EnumUserType.Enterprise, - Status = EnumUserInfoStatus.Normal, - UserAuth = new UserAuth - { - Name = request.Contacts, - UserName = request.UserName, - PhoneNumber = request.ContactPhoneNumber, - Password = PBKDF2Encryption.Encrypt(MD5Encryption.Encrypt(request.Password)) - } + Name = request.Contacts, + PhoneNumber = request.ContactPhoneNumber, + UserName = request.UserName, + Password = PBKDF2Encryption.Encrypt(request.Password), + Level = 100, + Status = EnumUserStatus.Normal, }; - await repUserInfo.InsertAsync(userInfo); + await repUser.InsertAsync(user); } else { - userInfo.UserAuth.PhoneNumber = request.ContactPhoneNumber; - await repUserInfo.UpdateAsync(userInfo); + if (user.EnterpriseId != entity.Id) throw Oops.Oh(EnumErrorCodeType.s405, "璇ヨ处鍙�"); + user.Name = request.Contacts; + user.PhoneNumber = request.ContactPhoneNumber; + if (request.Password.IsNotNull()) + { + user.Password = PBKDF2Encryption.Encrypt(request.Password); + } + await repUser.UpdateAsync(user); } return entity.Id; -- Gitblit v1.9.1