修改中心调研国际化
continuous-integration/drone/push Build is passing Details

IRC_NewDev
hang 2024-06-14 09:18:06 +08:00
parent ce969822a0
commit ae913d8213
3 changed files with 38 additions and 28 deletions

View File

@ -5,6 +5,7 @@
//-------------------------------------------------------------------- //--------------------------------------------------------------------
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.Text.Json.Serialization;
using IRaCIS.Core.Domain.Share; using IRaCIS.Core.Domain.Share;
namespace IRaCIS.Core.Application.Contracts namespace IRaCIS.Core.Application.Contracts
{ {
@ -68,7 +69,8 @@ namespace IRaCIS.Core.Application.Contracts
public List<TrialSiteUserSurveyView> TrialSiteUserSurveyList { get; set; } = new List<TrialSiteUserSurveyView>(); public List<TrialSiteUserSurveyView> TrialSiteUserSurveyList { get; set; } = new List<TrialSiteUserSurveyView>();
public List<SiteSurveyFiledConfig> FileConfigList { get; set; } = new List<SiteSurveyFiledConfig>();
public SiteSurveyFiledConfig SiteSurveyFiledConfig { get; set; }
} }
public class TrialSiteUserSurveyAllDTO : TrialSiteUserSurveyView public class TrialSiteUserSurveyAllDTO : TrialSiteUserSurveyView

View File

@ -117,7 +117,7 @@ namespace IRaCIS.Core.Application.Contracts
} }
else //验证码正确 并且 没有超时 else //验证码正确 并且 没有超时
{ {
var dockerInfo=await _repository.Where<Doctor>(t=>t.EMail==inDto.EmailOrPhone||t.Phone==inDto.EmailOrPhone).FirstOrDefaultAsync(); var dockerInfo = await _repository.Where<Doctor>(t => t.EMail == inDto.EmailOrPhone || t.Phone == inDto.EmailOrPhone).FirstOrDefaultAsync();
if (dockerInfo != null) if (dockerInfo != null)
{ {
@ -391,9 +391,9 @@ namespace IRaCIS.Core.Application.Contracts
var result = await _trialSiteSurveyRepository.Where(t => t.Id == trialSiteSurveyId && t.TrialId == trialId).IgnoreQueryFilters() var result = await _trialSiteSurveyRepository.Where(t => t.Id == trialSiteSurveyId && t.TrialId == trialId).IgnoreQueryFilters()
.ProjectTo<LoginReturnDTO>(_mapper.ConfigurationProvider).FirstOrDefaultAsync().IfNullThrowException(); .ProjectTo<LoginReturnDTO>(_mapper.ConfigurationProvider).FirstOrDefaultAsync().IfNullThrowException();
var siteSurveryConfig= _trialSiteSurveyRepository.Where(t=>t.Id == trialSiteSurveyId).Select(t=>t.Trial.SiteSurveyConfigJsonStr).FirstOrDefault(); var siteSurveryConfig = _trialSiteSurveyRepository.Where(t => t.Id == trialSiteSurveyId).Select(t => t.Trial.SiteSurveyConfigJsonStr).FirstOrDefault();
result.FileConfigList= JsonConvert.DeserializeObject<List<SiteSurveyFiledConfig>>(siteSurveryConfig) ?? new List<SiteSurveyFiledConfig>(); result.SiteSurveyFiledConfig = JsonConvert.DeserializeObject<SiteSurveyFiledConfig>(siteSurveryConfig) ?? new SiteSurveyFiledConfig();
return result; return result;
} }
@ -471,10 +471,10 @@ namespace IRaCIS.Core.Application.Contracts
.WhereIf(surveyQueryDTO.UpdateTimeBegin != null, t => t.UpdateTime >= surveyQueryDTO.UpdateTimeBegin) .WhereIf(surveyQueryDTO.UpdateTimeBegin != null, t => t.UpdateTime >= surveyQueryDTO.UpdateTimeBegin)
.WhereIf(surveyQueryDTO.UpdateTimeEnd != null, t => t.UpdateTime <= surveyQueryDTO.UpdateTimeEnd) .WhereIf(surveyQueryDTO.UpdateTimeEnd != null, t => t.UpdateTime <= surveyQueryDTO.UpdateTimeEnd)
.ProjectTo<TrialSiteSurveyView>(_mapper.ConfigurationProvider, new { isEn_Us = _userInfo.IsEn_Us }) .ProjectTo<TrialSiteSurveyView>(_mapper.ConfigurationProvider, new { isEn_Us = _userInfo.IsEn_Us })
.WhereIf(!string.IsNullOrWhiteSpace(surveyQueryDTO.PreliminaryUserName), t => t.PreliminaryUser.RealName.Contains(surveyQueryDTO.PreliminaryUserName)) .WhereIf(!string.IsNullOrWhiteSpace(surveyQueryDTO.PreliminaryUserName), t => t.PreliminaryUser.RealName.Contains(surveyQueryDTO.PreliminaryUserName))
.WhereIf(!string.IsNullOrWhiteSpace(surveyQueryDTO.ReviewerUserName), t => t.ReviewerUser.RealName.Contains(surveyQueryDTO.ReviewerUserName)) .WhereIf(!string.IsNullOrWhiteSpace(surveyQueryDTO.ReviewerUserName), t => t.ReviewerUser.RealName.Contains(surveyQueryDTO.ReviewerUserName))
; ;
return await trialSiteSurveyQueryable.ToPagedListAsync(surveyQueryDTO.PageIndex, surveyQueryDTO.PageSize, surveyQueryDTO.SortField, surveyQueryDTO.Asc); return await trialSiteSurveyQueryable.ToPagedListAsync(surveyQueryDTO.PageIndex, surveyQueryDTO.PageSize, surveyQueryDTO.SortField, surveyQueryDTO.Asc);
} }
@ -626,7 +626,7 @@ namespace IRaCIS.Core.Application.Contracts
+ Path.DirectorySeparatorChar.ToString() + Path.DirectorySeparatorChar.ToString()
+ "EmailTemplate" + "EmailTemplate"
+ Path.DirectorySeparatorChar.ToString() + Path.DirectorySeparatorChar.ToString()
+ (_userInfo.IsEn_Us ? "TrialSiteSurveyReject_US.html" : "TrialSiteSurveyReject.html") ; + (_userInfo.IsEn_Us ? "TrialSiteSurveyReject_US.html" : "TrialSiteSurveyReject.html");
using (StreamReader SourceReader = System.IO.File.OpenText(pathToFile)) using (StreamReader SourceReader = System.IO.File.OpenText(pathToFile))
@ -729,12 +729,12 @@ namespace IRaCIS.Core.Application.Contracts
var currentUserList = siteUserList.Where(t => t.TrialSiteSurveyId == trialSiteSurveyId).ToList(); var currentUserList = siteUserList.Where(t => t.TrialSiteSurveyId == trialSiteSurveyId).ToList();
if (!currentUserList.Any(t => t.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator) ) if (!currentUserList.Any(t => t.UserTypeEnum == UserTypeEnum.ClinicalResearchCoordinator))
{ {
throw new BusinessValidationFailedException(_localizer["TrialSiteSurvey_MissingAccount"]); throw new BusinessValidationFailedException(_localizer["TrialSiteSurvey_MissingAccount"]);
} }
if (currentUserList.Where(t=>t.IsGenerateAccount && t.UserTypeId!=null).GroupBy(t => new { t.UserTypeId, t.Email }) if (currentUserList.Where(t => t.IsGenerateAccount && t.UserTypeId != null).GroupBy(t => new { t.UserTypeId, t.Email })
.Any(g => g.Count() > 1)) .Any(g => g.Count() > 1))
{ {
throw new BusinessValidationFailedException(_localizer["TrialSiteSurvey_DuplicateEmail"]); throw new BusinessValidationFailedException(_localizer["TrialSiteSurvey_DuplicateEmail"]);
@ -764,7 +764,7 @@ namespace IRaCIS.Core.Application.Contracts
await _trialSiteSurveyRepository.UpdatePartialFromQueryAsync(t => t.Id == trialSiteSurveyId && t.State == TrialSiteSurveyEnum.CRCSubmitted, u => new TrialSiteSurvey() { State = TrialSiteSurveyEnum.SPMApproved, PreliminaryUserId = _userInfo.Id, PreliminaryTime = DateTime.Now }); await _trialSiteSurveyRepository.UpdatePartialFromQueryAsync(t => t.Id == trialSiteSurveyId && t.State == TrialSiteSurveyEnum.CRCSubmitted, u => new TrialSiteSurvey() { State = TrialSiteSurveyEnum.SPMApproved, PreliminaryUserId = _userInfo.Id, PreliminaryTime = DateTime.Now });
} }
else if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager|| _userInfo.UserTypeEnumInt == (int)UserTypeEnum.APM) else if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.APM)
{ {
var allUserList = _trialSiteUserSurveyRepository.Where(t => t.TrialSiteSurveyId == trialSiteSurveyId).ProjectTo<TrialSiteUserSurveyView>(_mapper.ConfigurationProvider).ToList(); var allUserList = _trialSiteUserSurveyRepository.Where(t => t.TrialSiteSurveyId == trialSiteSurveyId).ProjectTo<TrialSiteUserSurveyView>(_mapper.ConfigurationProvider).ToList();

View File

@ -1,11 +1,13 @@
namespace IRaCIS.Core.Domain.Share using System.Collections.Generic;
namespace IRaCIS.Core.Domain.Share
{ {
public enum TrialExpedited public enum TrialExpedited
{ {
All=-1, All = -1,
None=0, None = 0,
ExpeditedIn24H = 1, ExpeditedIn24H = 1,
@ -29,20 +31,26 @@
{ {
//0全部中国医生 1美国医生 2既有中国医生也有美国医生 //0全部中国医生 1美国医生 2既有中国医生也有美国医生
CN=0, CN = 0,
US=1, US = 1,
EU=2, EU = 2,
Other=3 Other = 3
} }
public class SiteSurveyFiledConfig public class SiteSurveyFiledConfig
{ {
public string NotShowField { get; set; } public List<string> NotShowFieldList { get; set; }=new List<string>();
public List<SiteSurveyModifyFiled> ModifyFiledList { get; set; }=new List<SiteSurveyModifyFiled>();
}
public class SiteSurveyModifyFiled
{
public string NeedModifyFiled { get; set; } public string NeedModifyFiled { get; set; }
public string ReplaceContent { get; set; } public string ReplaceContent { get; set; }
@ -52,14 +60,14 @@
public enum DeclarationType public enum DeclarationType
{ {
Other=3, Other = 3,
US=1, US = 1,
CN=0, CN = 0,
EU=2, EU = 2,
JP=4 JP = 4
} }
} }