From d3af4696c291077516b46bc8eb112196984bd636 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Mon, 30 May 2022 09:00:44 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=82=AE=E4=BB=B6=E5=8F=91?= =?UTF-8?q?=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../_ServiceExtensions/AutofacModuleSetup.cs | 1 - IRaCIS.Core.Application/AOP/UserAddAOP.cs | 50 -------------- .../BusinessFilter/UnifiedApiResultFilter.cs | 5 +- .../IRaCIS.Core.Application.xml | 7 +- .../Service/Common/MailService.cs | 67 ------------------- .../Interface/ITrialSiteSurveyService.cs | 2 +- .../SiteSurvey/TrialSiteSurveyService.cs | 10 ++- 7 files changed, 10 insertions(+), 132 deletions(-) delete mode 100644 IRaCIS.Core.Application/AOP/UserAddAOP.cs diff --git a/IRaCIS.Core.API/_ServiceExtensions/AutofacModuleSetup.cs b/IRaCIS.Core.API/_ServiceExtensions/AutofacModuleSetup.cs index 815c31af2..da8393c67 100644 --- a/IRaCIS.Core.API/_ServiceExtensions/AutofacModuleSetup.cs +++ b/IRaCIS.Core.API/_ServiceExtensions/AutofacModuleSetup.cs @@ -1,6 +1,5 @@ using Autofac; using Autofac.Extras.DynamicProxy; -using IRaCIS.Core.API.Utility.AOP; using IRaCIS.Core.Application; using IRaCIS.Core.Application.AOP; using IRaCIS.Core.Application.BackGroundJob; diff --git a/IRaCIS.Core.Application/AOP/UserAddAOP.cs b/IRaCIS.Core.Application/AOP/UserAddAOP.cs deleted file mode 100644 index e5580fe09..000000000 --- a/IRaCIS.Core.Application/AOP/UserAddAOP.cs +++ /dev/null @@ -1,50 +0,0 @@ -using Castle.DynamicProxy; -using IRaCIS.Application.Services; -using IRaCIS.Application.Contracts; -using Microsoft.Extensions.Logging; -using IRaCIS.Core.Infrastructure.Extention; - -namespace IRaCIS.Core.API.Utility.AOP -{ - /// - ///服务动态生成api AOP 此时会失效 - /// - public class UserAddAOP : IInterceptor - { - private readonly IMailVerificationService _mailVerificationService; - private readonly ILogger _logger; - - public UserAddAOP(IMailVerificationService mailVerificationService, ILogger logger) - { - _mailVerificationService = mailVerificationService; - _logger = logger; - } - public void Intercept(IInvocation invocation) - { - - var userInfo = (invocation.Arguments[0] as UserCommand).IfNullThrowConvertException(); - - - //处理拦截的方法 - invocation.Proceed(); - - //在此 发送邮件 - dynamic result = invocation.ReturnValue; - - if (result.IsSuccess) - { - var userId = result.Data.Id; - var verificationCode = result.Data.VerificationCode; - - - _logger.LogInformation($"Sent to {userInfo.UserName} email {userInfo.EMail} init password {verificationCode}"); - - _mailVerificationService.SendMail(userId, userInfo.UserName, userInfo.EMail, verificationCode).GetAwaiter().GetResult(); - - } - - - - } - } -} \ No newline at end of file diff --git a/IRaCIS.Core.Application/BusinessFilter/UnifiedApiResultFilter.cs b/IRaCIS.Core.Application/BusinessFilter/UnifiedApiResultFilter.cs index e7db2e0e5..8e5b0ff87 100644 --- a/IRaCIS.Core.Application/BusinessFilter/UnifiedApiResultFilter.cs +++ b/IRaCIS.Core.Application/BusinessFilter/UnifiedApiResultFilter.cs @@ -1,7 +1,4 @@ -using System; -using Microsoft.AspNetCore.Mvc.Filters; -using System.Threading.Tasks; -using IRaCIS.Core.Infrastructure.Extention; +using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.AspNetCore.Mvc; namespace IRaCIS.Application.Services.BusinessFilter diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index b3aad2ec2..85575ef0d 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -919,7 +919,7 @@ TrialSiteSurveyService - + 发送验证码 @@ -1786,11 +1786,6 @@ 构造函数注入 - - - 服务动态生成api AOP 此时会失效 - - 统一返回前端数据包装,之前在控制器包装,现在修改为动态Api 在ResultFilter这里包装,减少重复冗余代码 diff --git a/IRaCIS.Core.Application/Service/Common/MailService.cs b/IRaCIS.Core.Application/Service/Common/MailService.cs index e29ee7f81..0f021e330 100644 --- a/IRaCIS.Core.Application/Service/Common/MailService.cs +++ b/IRaCIS.Core.Application/Service/Common/MailService.cs @@ -11,7 +11,6 @@ namespace IRaCIS.Application.Services { public interface IMailVerificationService { - Task SendMail(Guid userId, string userName, string emailAddress, int verificationCode); Task AnolymousSendEmail(string researchProgramNo, string emailAddress, int verificationCode); @@ -458,72 +457,6 @@ namespace IRaCIS.Application.Services - //废弃 添加用户发送邮件 - public async Task SendMail(Guid userId, string userName, string emailAddress, int verificationCode) - { - - - var messageToSend = new MimeMessage(); - //发件地址 - messageToSend.From.Add(new MailboxAddress("GRR", "iracis_grr@163.com")); - //收件地址 - messageToSend.To.Add(new MailboxAddress(userName, emailAddress)); - //主题 - messageToSend.Subject = "[来自展影IRC] 关于重置邮箱的提醒"; - - - - var builder = new BodyBuilder(); - - builder.HtmlBody = @$" -
-
-
- 您好: -
-
- 感谢您使用展影云平台。 -
-
- 您正在进行邮箱重置操作,验证码是: {verificationCode},请在3分钟内输入该验证码,进行后续操作。如非本人操作,请忽略该邮件。 -
-
- 此邮件属系统自动发出,无需回复。 -
-
- 祝您顺利!/Best Regards。 -
-
- 上海展影医疗科技有限公司 -
-
-
- "; - - - messageToSend.Body = builder.ToMessageBody(); - - - EventHandler sucessHandle = (sender, args) => - { - // args.Response - var code = verificationCode.ToString(); - _ = _verificationCodeRepository.AddAsync(new VerificationCode() - { - CodeType = 0, - HasSend = true, - Code = code, - UserId = userId, - ExpirationTime = DateTime.Now.AddMinutes(3) - }).Result; - _ = _verificationCodeRepository.SaveChangesAsync().Result; - }; - - await SendEmailHelper.SendEmailAsync(messageToSend, sucessHandle); - - - } - } } \ No newline at end of file diff --git a/IRaCIS.Core.Application/Service/SiteSurvey/Interface/ITrialSiteSurveyService.cs b/IRaCIS.Core.Application/Service/SiteSurvey/Interface/ITrialSiteSurveyService.cs index 4026cd8ad..6bc2fc3ec 100644 --- a/IRaCIS.Core.Application/Service/SiteSurvey/Interface/ITrialSiteSurveyService.cs +++ b/IRaCIS.Core.Application/Service/SiteSurvey/Interface/ITrialSiteSurveyService.cs @@ -16,7 +16,7 @@ namespace IRaCIS.Core.Application.Contracts Task GetSiteSurveyInfo(Guid trialSiteSurveyId, Guid trialId); Task> GetTrialSiteSurveyList(TrialSiteSurveyQueryDTO surveyQueryDTO); Task GetTrialSurveyInitInfo(Guid trialId); - Task SendVerifyCode(SiteSurveySendVerifyCode userInfo, [FromServices] IMailVerificationService _mailVerificationService); + Task SendVerifyCode(SiteSurveySendVerifyCode userInfo); //Task TrialSurveyLock(Guid trialSiteSurveyId, bool isLock); //IResponseOutput TrialSurveySubmmit(Guid trialId, Guid trialSiteSurveyId); Task VerifySendCode(LoginDto userInfo, [FromServices] ITokenService _tokenService); diff --git a/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs b/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs index 4c2deea2f..7cf2fa569 100644 --- a/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs +++ b/IRaCIS.Core.Application/Service/SiteSurvey/TrialSiteSurveyService.cs @@ -30,9 +30,12 @@ namespace IRaCIS.Core.Application.Contracts private readonly IRepository _trialUserRepository; private readonly ITokenService _tokenService; + private readonly IMailVerificationService _mailVerificationService; public TrialSiteSurveyService(IRepository trialSiteSurveyRepository, IRepository trialUserRepository, IRepository trialSiteUserSurveyRepository, - IRepository userRepository, IRepository trialSiteRepository, ITokenService tokenService) + IRepository userRepository, IRepository trialSiteRepository, + ITokenService tokenService, + IMailVerificationService mailVerificationService) { _trialSiteSurveyRepository = trialSiteSurveyRepository; _trialSiteUserSurveyRepository = trialSiteUserSurveyRepository; @@ -40,6 +43,7 @@ namespace IRaCIS.Core.Application.Contracts _trialUserRepository = trialUserRepository; _trialSiteRepository = trialSiteRepository; _tokenService = tokenService; + _mailVerificationService = mailVerificationService; } private object lockObj { get; set; } = new object(); @@ -51,7 +55,7 @@ namespace IRaCIS.Core.Application.Contracts /// /// [AllowAnonymous] - public async Task SendVerifyCode(SiteSurveySendVerifyCode userInfo, [FromServices] IMailVerificationService _mailVerificationService) + public async Task SendVerifyCode(SiteSurveySendVerifyCode userInfo) { var verificationType = VerifyType.Email; //检查手机或者邮箱是否有效 @@ -745,7 +749,7 @@ namespace IRaCIS.Core.Application.Contracts } - public async Task SendSiteSurveyUserJoinEmail(TrialSiteUserSurveyJoinCommand joinCommand, [FromServices] IMailVerificationService _mailVerificationService) + public async Task SendSiteSurveyUserJoinEmail(TrialSiteUserSurveyJoinCommand joinCommand) { var trialSiteSurvey = (await _trialSiteSurveyRepository.Where(t => t.Id == joinCommand.TrialSiteSurveyId).FirstOrDefaultAsync()).IfNullThrowException();