From 372fa13239dfd6ad771bba5a420dabf21248ab1c Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Fri, 3 Mar 2023 15:06:09 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=8F=91=E9=80=81=E9=82=AE?= =?UTF-8?q?=E4=BB=B6=E5=92=8C=E7=A8=BD=E6=9F=A5=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Helper/SendEmailHelper.cs | 25 +++++++++++++------ .../Service/QC/QCOperationService.cs | 2 +- .../Common/AuditingData.cs | 2 +- 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/IRaCIS.Core.Application/Helper/SendEmailHelper.cs b/IRaCIS.Core.Application/Helper/SendEmailHelper.cs index aa5ee76b..45a129e7 100644 --- a/IRaCIS.Core.Application/Helper/SendEmailHelper.cs +++ b/IRaCIS.Core.Application/Helper/SendEmailHelper.cs @@ -1,7 +1,9 @@ -using IRaCIS.Core.Domain.Share; +using DocumentFormat.OpenXml.Spreadsheet; +using IRaCIS.Core.Domain.Share; using MailKit; using MailKit.Security; using MimeKit; +using NPOI.HPSF; namespace IRaCIS.Core.Application.Helper; @@ -40,10 +42,10 @@ public static class SendEmailHelper catch (Exception ex) { - throw new Exception("邮件发送失败,您进行的操作未能成功,请检查邮箱或联系维护人员") ; + throw new Exception("邮件发送失败,您进行的操作未能成功,请检查邮箱或联系维护人员"); } - + } public static async Task SendEmailAsync(SMTPEmailConfig sMTPEmailConfig, EventHandler? messageSentSuccess = null) @@ -88,10 +90,19 @@ public static class SendEmailHelper { //builder.Attachments.Add(item.FileName, item.FileData); - builder.Attachments.Add(item.FileName, item.FileStream); + var attachment = builder.Attachments.Add(item.FileName, item.FileStream); + + //解决附件名过长 奇怪的名字 + foreach (var param in attachment.ContentDisposition.Parameters) + param.EncodingMethod = ParameterEncodingMethod.Rfc2047; + foreach (var param in attachment.ContentType.Parameters) + param.EncodingMethod = ParameterEncodingMethod.Rfc2047; + } + + messageToSend.Body = builder.ToMessageBody(); using (var smtp = new MailKit.Net.Smtp.SmtpClient()) @@ -113,7 +124,7 @@ public static class SendEmailHelper await smtp.DisconnectAsync(true); } - + } } @@ -123,12 +134,12 @@ public static class SendEmailHelper public class SMTPEmailConfig { - public int Port { get; set; } + public int Port { get; set; } public string Host { get; set; } - public string UserName { get; set; } + public string UserName { get; set; } public string AuthorizationCode { get; set; } diff --git a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs index 7bc62844..a9636aed 100644 --- a/IRaCIS.Core.Application/Service/QC/QCOperationService.cs +++ b/IRaCIS.Core.Application/Service/QC/QCOperationService.cs @@ -1195,7 +1195,7 @@ namespace IRaCIS.Core.Application.Image.QA // CRC 上传的基线数据签名 - await _readingClinicalDataRepository.BatchUpdateNoTrackingAsync(x => x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC && x.ReadingId == dbSubjectVisit.Id, x => new ReadingClinicalData() + await _readingClinicalDataRepository.UpdatePartialFromQueryAsync(x => x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC && x.ReadingId == dbSubjectVisit.Id && x.IsSign==false, x => new ReadingClinicalData() { IsSign = true, ReadingClinicalDataState = ReadingClinicalDataStatus.HaveSigned diff --git a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs index 7ab3f8a3..905af45a 100644 --- a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs +++ b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs @@ -1696,7 +1696,7 @@ namespace IRaCIS.Core.Infra.EFCore.Common IsDistinctionInterface = type == AuditOpt.Update ? true : false, - //SubjectVisitId = x.IsVisit ? x.ReadingId : null, + SubjectVisitId = x.IsVisit ? x.ReadingId : null, ObjectRelationParentId = entity.ClinicalDataTrialSetId,