Merge branch 'master' of http://192.168.1.2:8033/IRaCIS_Core_Api
This commit is contained in:
@@ -1080,15 +1080,21 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||
public async Task<IResponseOutput> AIRReReading(AIRReReadingCommand command, [FromServices] IVisitTaskHelpeService _visitTaskCommonService)
|
||||
{
|
||||
var baseLineTaskList = await _visitTaskRepository.Where(t => t.TrialId == command.TrialId && t.TrialReadingCriterionId == command.TrialReadingCriterionId && t.DoctorUserId == _userInfo.Id
|
||||
&& t.TaskState == TaskState.Effect && t.ReadingCategory == ReadingCategory.Visit && t.ReadingTaskState == ReadingTaskState.HaveSigned && t.SourceSubjectVisit.IsBaseLine == true && t.DoctorUserId == _userInfo.Id).ToListAsync();
|
||||
&& t.TaskState == TaskState.Effect && t.ReadingCategory == ReadingCategory.Visit && t.ReadingTaskState == ReadingTaskState.HaveSigned && t.SourceSubjectVisit.IsBaseLine == true).ToListAsync();
|
||||
|
||||
|
||||
var baseLineTaskIdList = baseLineTaskList.Select(t => t.Id).ToList();
|
||||
if (baseLineTaskList == null)
|
||||
|
||||
if (baseLineTaskIdList.Count == 0)
|
||||
{
|
||||
return ResponseOutput.NotOk("基线任务未阅完,不允许重阅基线任务");
|
||||
return ResponseOutput.Ok();
|
||||
}
|
||||
|
||||
//if (baseLineTaskList == null)
|
||||
//{
|
||||
// return ResponseOutput.NotOk("基线任务未阅完,不允许重阅基线任务");
|
||||
//}
|
||||
|
||||
await ApplyReReading(new ApplyReReadingCommand() { IsCopyFollowForms = false, IsCopyOrigenalForms = false, TaskIdList = baseLineTaskIdList, TrialId = command.TrialId, RequestReReadingReason = "AIR自动重阅基线", RequestReReadingType = RequestReReadingType.DocotorApply });
|
||||
|
||||
|
||||
@@ -2235,7 +2241,8 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||
}
|
||||
else
|
||||
{
|
||||
await _readingClinicalDataReposiotry.UpdatePartialFromQueryAsync(t => t.ReadingId == sv.Id && t.ClinicalDataTrialSet.ClinicalDataLevel == ClinicalLevel.SubjectVisit, c => new ReadingClinicalData() { IsSign = false, ReadingClinicalDataState =ReadingClinicalDataStatus.HaveUploaded });
|
||||
await _readingClinicalDataReposiotry.UpdatePartialFromQueryAsync(t => t.ReadingId == sv.Id && t.ClinicalDataTrialSet.ClinicalDataLevel == ClinicalLevel.SubjectVisit, c => new ReadingClinicalData() {
|
||||
IsSign = false, ReadingClinicalDataState =ReadingClinicalDataStatus.HaveUploaded,IsBlind=null,IsComplete=null });
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -194,9 +194,14 @@ namespace IRaCIS.Application.Contracts
|
||||
public class UserListQueryDTO : PageInput
|
||||
{
|
||||
public string UserName { get; set; } = string.Empty;
|
||||
public string RealName { get; set; }
|
||||
public string Phone { get; set; } = string.Empty;
|
||||
public string OrganizationName { get; set; } = string.Empty;
|
||||
public Guid? UserType { get; set; }
|
||||
|
||||
public bool? IsTestUser { get; set; }
|
||||
|
||||
public bool ? IsZhiZhun { get; set; }
|
||||
public UserStateEnum? UserState { get; set; }
|
||||
}
|
||||
|
||||
|
||||
@@ -448,11 +448,14 @@ namespace IRaCIS.Application.Services
|
||||
public async Task<PageOutput<UserListDTO>> GetUserList(UserListQueryDTO param)
|
||||
{
|
||||
var userQueryable = _userRepository.Where(x => x.UserTypeEnum != UserTypeEnum.SuperAdmin)
|
||||
.WhereIf(!string.IsNullOrWhiteSpace(param.UserName), t => t.UserName.Contains(param.UserName) || (t.FullName).Contains(param.UserName))
|
||||
.WhereIf(!string.IsNullOrWhiteSpace(param.UserName), t => t.UserName.Contains(param.UserName) )
|
||||
.WhereIf(!string.IsNullOrWhiteSpace(param.RealName), t => t.FullName.Contains(param.RealName))
|
||||
.WhereIf(!string.IsNullOrWhiteSpace(param.Phone), t => t.Phone.Contains(param.Phone))
|
||||
.WhereIf(!string.IsNullOrWhiteSpace(param.OrganizationName), t => t.OrganizationName.Contains(param.OrganizationName))
|
||||
.WhereIf(param.UserType != null, t => t.UserTypeId == param.UserType)
|
||||
.WhereIf(param.UserState != null, t => t.Status == param.UserState)
|
||||
.WhereIf(param.IsTestUser != null, t => t.IsTestUser == param.IsTestUser)
|
||||
.WhereIf(param.IsZhiZhun != null, t => t.IsZhiZhun == param.IsZhiZhun)
|
||||
.ProjectTo<UserListDTO>(_mapper.ConfigurationProvider);
|
||||
|
||||
return await userQueryable.ToPagedListAsync(param.PageIndex, param.PageSize, param.SortField == string.Empty ? "UserName" : param.SortField, param.Asc);
|
||||
@@ -540,7 +543,7 @@ namespace IRaCIS.Application.Services
|
||||
|
||||
if (user.IsZhiZhun)
|
||||
{
|
||||
user.OrganizationName = "Zhizhun";
|
||||
user.OrganizationName = AppSettings.DefaultInternalOrganizationName;
|
||||
}
|
||||
var success = await _userRepository.SaveChangesAsync();
|
||||
|
||||
|
||||
@@ -108,7 +108,7 @@ namespace IRaCIS.Core.Application.Contracts
|
||||
|
||||
if (userTypeSelectEnum == UserTypeSelectEnum.InnerUser)
|
||||
{
|
||||
userTypeEnums = new List<UserTypeEnum>() { UserTypeEnum.IQC, UserTypeEnum.APM, UserTypeEnum.MIM, UserTypeEnum.MW };
|
||||
userTypeEnums = new List<UserTypeEnum>() { UserTypeEnum.IQC, UserTypeEnum.APM, UserTypeEnum.MIM, UserTypeEnum.QA ,UserTypeEnum.MW};
|
||||
|
||||
if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin)
|
||||
{
|
||||
|
||||
@@ -54,7 +54,7 @@ namespace IRaCIS.Core.Application.Contracts
|
||||
if (existSysUser.LastName != addOrEditTrialSiteUserSurvey.LastName || existSysUser.FirstName != addOrEditTrialSiteUserSurvey.FirstName)
|
||||
{
|
||||
return ResponseOutput.NotOk($"该用户在系统中账户名为:{existSysUser.LastName + " / " + existSysUser.FirstName} ,与填写信息存在不一致项, 现将界面信息修改为与系统一致,可进行保存",
|
||||
new { existSysUser.LastName, existSysUser.FirstName, existSysUser.Phone }, ApiResponseCodeEnum.NeedTips);
|
||||
new { existSysUser.LastName, existSysUser.FirstName, existSysUser.Phone,existSysUser.IsTestUser,existSysUser.IsZhiZhun }, ApiResponseCodeEnum.NeedTips);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -68,7 +68,8 @@ namespace IRaCIS.Core.Application.Service
|
||||
/// <param name="addOrEditTrialExternalUser"></param>
|
||||
/// <returns></returns>
|
||||
[Authorize(Policy = IRaCISPolicy.PM_APM)]
|
||||
[TypeFilter(typeof(TrialResourceFilter),Arguments = new object[] { "AfterStopCannNotOpt" })]
|
||||
[UnitOfWork]
|
||||
[TypeFilter(typeof(TrialResourceFilter), Arguments = new object[] { "AfterStopCannNotOpt" })]
|
||||
public async Task<IResponseOutput> AddOrUpdateTrialExternalUser(TrialExternalUserAddAndSendEmail addOrEditTrialExternalUser)
|
||||
{
|
||||
|
||||
@@ -80,7 +81,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
{
|
||||
if (existSysUser.LastName != addOrEditTrialExternalUser.LastName || existSysUser.FirstName != addOrEditTrialExternalUser.FirstName)
|
||||
{
|
||||
return ResponseOutput.NotOk($"该用户在系统中的用户名为:{existSysUser.LastName + " / " + existSysUser.FirstName} 电话:{existSysUser.Phone},与填写信息存在不一致项, 请将界面信息修改为与系统一致,再进行保存", new { existSysUser.LastName, existSysUser.FirstName, existSysUser.Phone }, ApiResponseCodeEnum.NeedTips);
|
||||
return ResponseOutput.NotOk($"该用户在系统中的用户名为:{existSysUser.LastName + " / " + existSysUser.FirstName} 电话:{existSysUser.Phone},与填写信息存在不一致项, 请将界面信息修改为与系统一致,再进行保存", new { existSysUser.LastName, existSysUser.FirstName, existSysUser.Phone, existSysUser.IsZhiZhun, existSysUser.IsTestUser }, ApiResponseCodeEnum.NeedTips);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -95,6 +96,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
}
|
||||
|
||||
|
||||
|
||||
var addEntity = _mapper.Map<TrialExternalUser>(addOrEditTrialExternalUser);
|
||||
|
||||
await _trialExternalUseRepository.AddAsync(addEntity);
|
||||
@@ -206,7 +208,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
//New 省掉邀请流程
|
||||
[HttpPost]
|
||||
[Authorize(Policy = IRaCISPolicy.PM_APM)]
|
||||
[TypeFilter(typeof(TrialResourceFilter),Arguments = new object[] { "AfterStopCannNotOpt" })]
|
||||
[TypeFilter(typeof(TrialResourceFilter), Arguments = new object[] { "AfterStopCannNotOpt" })]
|
||||
[UnitOfWork]
|
||||
public async Task<IResponseOutput> SendExternalUserJoinEmail(TrialExternalUserSendEmail sendEmail)
|
||||
{
|
||||
@@ -224,7 +226,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
if (!await _trialUserRepository.AnyAsync(t => t.TrialId == trialId && t.UserId == userId, true))
|
||||
{
|
||||
|
||||
await _repository.AddAsync(new TrialUser() { TrialId = trialId, UserId = userId ,JoinTime = DateTime.Now });
|
||||
await _repository.AddAsync(new TrialUser() { TrialId = trialId, UserId = userId, JoinTime = DateTime.Now });
|
||||
|
||||
await _userRepository.BatchUpdateNoTrackingAsync(t => t.Id == userId, u => new User() { Status = UserStateEnum.Enable });
|
||||
|
||||
|
||||
@@ -107,11 +107,25 @@ namespace IRaCIS.Application.Services
|
||||
{
|
||||
var trialType = _trialRepository.Where(t => t.Id == trialUserQuery.TrialId).Select(t => t.TrialType).FirstOrDefault();
|
||||
|
||||
var userTypeEnums = new List<UserTypeEnum>() { UserTypeEnum.IQC, UserTypeEnum.APM, UserTypeEnum.MIM, UserTypeEnum.QA, UserTypeEnum.MW };
|
||||
if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.SuperAdmin)
|
||||
{
|
||||
userTypeEnums.Add(UserTypeEnum.ProjectManager);
|
||||
}
|
||||
|
||||
|
||||
//之前已经选择的用户 不放在列表中,现在又要改回去 废弃
|
||||
var query = _repository.Where<User>(t => t.UserTypeEnum != UserTypeEnum.SuperAdmin)
|
||||
|
||||
//正式或者培训的项目不能允许测试用户
|
||||
.WhereIf(trialType == TrialType.OfficialTrial || trialType == TrialType.Training, t => t.IsTestUser == false)
|
||||
//正式或者培训的项目不能允许测试用户 同时必须是内部的用户
|
||||
.WhereIf(trialType == TrialType.OfficialTrial || trialType == TrialType.Training, t => t.IsTestUser == false && t.IsZhiZhun)
|
||||
|
||||
//测试用户 或者内部正式用户
|
||||
.WhereIf(trialType == TrialType.NoneOfficial, t => t.IsTestUser == true || (t.IsTestUser == false && t.IsZhiZhun))
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
.WhereIf(!string.IsNullOrWhiteSpace(trialUserQuery.UserRealName), t => (t.FullName).Contains(trialUserQuery.UserRealName))
|
||||
.WhereIf(!string.IsNullOrWhiteSpace(trialUserQuery.UserName), t => t.UserName.Contains(trialUserQuery.UserName))
|
||||
|
||||
Reference in New Issue
Block a user