修改数据

This commit is contained in:
he
2022-03-30 14:30:13 +08:00
parent f9de0e08b9
commit fdb32f8a94
8 changed files with 176 additions and 10 deletions
@@ -35,7 +35,35 @@ namespace IRaCIS.Core.Application.Service.Inspection.DTO
public bool IsSign { get; set; }
public string JsonDetail { get; set; } = string.Empty;
/// <summary>
/// 创建人名称
/// </summary>
public string CreateUserName { get; set; } = string.Empty;
/// <summary>
/// 项目名称
/// </summary>
public string TrialName { get; set; } = string.Empty;
/// <summary>
/// 中心名称
/// </summary>
public string SiteName { get; set; } = string.Empty;
/// <summary>
/// 受试者名称
/// </summary>
public string SubjectName { get; set; } = string.Empty;
/// <summary>
/// 访视名称
/// </summary>
public string SubjectVisitName { get; set; } = string.Empty;
/// <summary>
/// 角色名称
/// </summary>
public string RoleName { get; set; } = string.Empty;
////需要单独处理
@@ -144,6 +172,8 @@ namespace IRaCIS.Core.Application.Service.Inspection.DTO
public string SubjectCode { get; set; } = string.Empty;
}
@@ -68,6 +68,11 @@ namespace IRaCIS.Core.Application.Service.Inspection
UserFirstName = leftuser.FirstName,
UserLastName = leftuser.LastName,
SubjectCode=leftsubject.Code,
SubjectName=data.SubjectName,
SubjectVisitName=data.SubjectVisitName,
CreateUserName = data.CreateUserName,
RoleName=data.RoleName,
TrialName=data.TrialName,
};
query = query.WhereIf(!dto.BlindName.IsNullOrEmpty(), x => x.BlindName == dto.BlindName)
@@ -245,6 +250,7 @@ namespace IRaCIS.Core.Application.Service.Inspection
add.CreateUserId = _userInfo.Id;
add.SignId = signId;
add.IP = _userInfo.IP;
await SetInspectionNameValue(add);
await _repository.AddAsync(add);
if (addDto.OptType.ToLower() == "Add".ToLower()&& Statusdata!=null)
{
@@ -265,7 +271,13 @@ namespace IRaCIS.Core.Application.Service.Inspection
IP = add.IP,
ModuleType = add.ModuleType,
TrialId = add.TrialId,
JsonDetail = JsonConvert.SerializeObject(Statusdata)
JsonDetail = JsonConvert.SerializeObject(Statusdata),
TrialName=add.TrialName,
SiteName=add.SiteName,
SubjectName=add.SubjectName,
SubjectVisitName=add.SubjectVisitName,
CreateUserName=add.CreateUserName,
RoleName=add.RoleName,
};
await _repository.AddAsync(ststus);
@@ -275,5 +287,76 @@ namespace IRaCIS.Core.Application.Service.Inspection
return ResponseOutput.Ok(success);
}
/// <summary>
/// 设置项目以及名称
/// </summary>
/// <param name="Data"></param>
/// <returns></returns>
public async Task SetInspectionNameValue(DataInspection Data)
{
#region
if (Data.TrialName.IsNullOrEmpty())
{
Data.TrialName = (await _repository.GetQueryable<Trial>().FirstOrDefaultAsync(x => x.Id == Data.TrialId))?.ExperimentName;
}
#endregion
#region
if (Data.SiteName.IsNullOrEmpty())
{
Data.SiteName = (await _repository.GetQueryable<Site>().FirstOrDefaultAsync(x => x.Id == Data.SiteId))?.SiteName;
}
#endregion
#region
if (Data.SubjectName.IsNullOrEmpty())
{
var subjectdata = await _repository.GetQueryable<Subject>().FirstOrDefaultAsync(x => x.Id == Data.SubjectId);
if (subjectdata != null)
{
Data.SubjectName = subjectdata.FirstName + subjectdata.LastName;
}
}
#endregion
#region 访
if (Data.SubjectVisitName.IsNullOrEmpty())
{
Data.SubjectVisitName = (await _repository.GetQueryable<SubjectVisit>().FirstOrDefaultAsync(x => x.Id == Data.SubjectVisitId))?.VisitName;
}
#endregion
#region
if (Data.CreateUserName.IsNullOrEmpty() || Data.RoleName.IsNullOrEmpty())
{
var userdata = await _repository.GetQueryable<User>().Where(x => x.Id == Data.CreateUserId).GroupJoin(_repository.GetQueryable<UserType>(), a => a.UserTypeId, b => b.Id, (a, b) => new
{
UserName = a.FirstName + a.LastName,
Role = b
}).SelectMany(a => a.Role, (m, n) => new
{
UserName = m.UserName,
RoleName = n.UserTypeShortName
}).FirstOrDefaultAsync();
if (userdata != null)
{
if (Data.CreateUserName.IsNullOrEmpty())
{
Data.CreateUserName = userdata?.UserName;
}
if (Data.RoleName.IsNullOrEmpty())
{
Data.RoleName = userdata?.RoleName;
}
}
}
#endregion
}
}
}