Uat_Study
parent
8ce368e16d
commit
707cd14f7a
|
@ -50,8 +50,9 @@ namespace IRaCIS.Core.Infra.EFCore.Common
|
||||||
public async Task IncomingEntitys(List<EntityEntry> entitys)
|
public async Task IncomingEntitys(List<EntityEntry> entitys)
|
||||||
{
|
{
|
||||||
// 修改
|
// 修改
|
||||||
await InsertAddEntitys(entitys.Where(x => x.State == EntityState.Modified && (!typeof(ISoftDelete).IsAssignableFrom(x.Entity.GetType())
|
await InsertAddEntitys(
|
||||||
|| !(bool)x.Entity.GetType().GetProperty("IsDeleted").GetValue(x.Entity))
|
entitys.Where(x => x.State == EntityState.Modified &&
|
||||||
|
(!typeof(ISoftDelete).IsAssignableFrom(x.Entity.GetType())|| !(bool)x.Entity.GetType().GetProperty("IsDeleted").GetValue(x.Entity)|| NodeleteTableTypes.Contains(x.Entity.GetType()))
|
||||||
).ToList(), "Update");
|
).ToList(), "Update");
|
||||||
|
|
||||||
// 新增
|
// 新增
|
||||||
|
@ -59,7 +60,7 @@ namespace IRaCIS.Core.Infra.EFCore.Common
|
||||||
|
|
||||||
// 删除
|
// 删除
|
||||||
await InsertAddEntitys(entitys.Where(x => x.State == EntityState.Deleted
|
await InsertAddEntitys(entitys.Where(x => x.State == EntityState.Deleted
|
||||||
|| ((typeof(ISoftDelete).IsAssignableFrom(x.Entity.GetType()) && (bool)x.Entity.GetType().GetProperty("IsDeleted").GetValue(x.Entity)))
|
|| (typeof(ISoftDelete).IsAssignableFrom(x.Entity.GetType()) && (bool)x.Entity.GetType().GetProperty("IsDeleted").GetValue(x.Entity)&&x.State==EntityState.Modified&& !NodeleteTableTypes.Contains(x.Entity.GetType()))
|
||||||
).ToList(), "Deleted");
|
).ToList(), "Deleted");
|
||||||
|
|
||||||
|
|
||||||
|
@ -68,6 +69,21 @@ namespace IRaCIS.Core.Infra.EFCore.Common
|
||||||
//entitys.Where(x=>x.Entity.is)
|
//entitys.Where(x=>x.Entity.is)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 特殊删除
|
||||||
|
/// </summary>
|
||||||
|
private List<Type> NodeleteTableTypes
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return new List<Type>()
|
||||||
|
{
|
||||||
|
typeof(TrialUser)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 插入Add的实体
|
/// 插入Add的实体
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -161,10 +177,34 @@ namespace IRaCIS.Core.Infra.EFCore.Common
|
||||||
await InsertInspection<TrialDocument>(item, type);
|
await InsertInspection<TrialDocument>(item, type);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 项目中心
|
||||||
|
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(TrialSite)))
|
||||||
|
{
|
||||||
|
await InsertInspection<TrialSite>(item, type, x => new DataInspection()
|
||||||
|
{
|
||||||
|
GeneralId = x.Id,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// 项目人员
|
// 项目人员
|
||||||
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(TrialUser)))
|
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(TrialUser)))
|
||||||
{
|
{
|
||||||
await InsertInspection<TrialUser>(item, type);
|
|
||||||
|
var entity = item.Entity as TrialUser;
|
||||||
|
var user =await _dbContext.Users.Include(x=>x.UserTypeRole).FirstOrDefaultAsync(x => x.Id == entity.UserId);
|
||||||
|
await InsertInspection<TrialUser>(item, type, x => new DataInspection
|
||||||
|
{
|
||||||
|
TrialId=x.TrialId,
|
||||||
|
},new {
|
||||||
|
UserRealName= user.FullName,
|
||||||
|
UserName= user.UserName,
|
||||||
|
UserType= user.UserTypeRole.UserTypeShortName,
|
||||||
|
EMail= user.EMail,
|
||||||
|
Phone= user.Phone,
|
||||||
|
OrganizationName= user.OrganizationName,
|
||||||
|
State=entity.IsDeleted?"退出":"加入",
|
||||||
|
});
|
||||||
}
|
}
|
||||||
// 受试者
|
// 受试者
|
||||||
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(Subject)))
|
foreach (var item in entitys.Where(x => x.Entity.GetType() == typeof(Subject)))
|
||||||
|
|
Loading…
Reference in New Issue