修改冲突
continuous-integration/drone/push Build is passing Details

Uat_IRC_Net8
hang 2025-02-19 10:13:37 +08:00
commit a49b4c8ef7
1 changed files with 25 additions and 11 deletions

View File

@ -168,7 +168,7 @@ namespace IRaCIS.Core.Application.Service
if (_trialUserRoleReposiotry.Any(t => t.TrialUserId == Guid.Empty)) if (_trialUserRoleReposiotry.Any(t => t.TrialUserId == Guid.Empty))
{ {
var list = _trialUserRoleReposiotry.Where(t => t.IsDeleted == true, false, true).Select(t => new { t.TrialId, t.UserRole.IdentityUserId, t.UserId, t.JoinTime, t.RemoveTime, t.DeletedTime, t.DeleteUserId }).ToList(); var list = _trialUserRoleReposiotry.Where(t => t.IsDeleted == true && t.TrialUserId == Guid.Empty, false, true).Select(t => new { t.TrialId, t.UserRole.IdentityUserId, t.UserId, t.JoinTime, t.RemoveTime, t.DeletedTime, t.DeleteUserId, t.CreateUserId }).ToList();
foreach (var item in list.GroupBy(t => new { t.IdentityUserId, t.TrialId })) foreach (var item in list.GroupBy(t => new { t.IdentityUserId, t.TrialId }))
@ -183,6 +183,12 @@ namespace IRaCIS.Core.Application.Service
var first = userRoleList.OrderByDescending(t => t.RemoveTime).FirstOrDefault(); var first = userRoleList.OrderByDescending(t => t.RemoveTime).FirstOrDefault();
//判断在项目中是否存在
var find = _trialIdentityUserRepository.Where(t => t.IdentityUserId == first.IdentityUserId && t.TrialId == first.TrialId).FirstOrDefault();
if (find == null)
{
await _trialIdentityUserRepository.AddAsync(new TrialIdentityUser() await _trialIdentityUserRepository.AddAsync(new TrialIdentityUser()
{ {
Id = id, Id = id,
@ -192,10 +198,18 @@ namespace IRaCIS.Core.Application.Service
IsDeleted = true, IsDeleted = true,
DeletedTime = first.DeletedTime, DeletedTime = first.DeletedTime,
DeleteUserId = first.DeleteUserId, DeleteUserId = first.DeleteUserId,
}); });
await _trialUserRoleReposiotry.BatchUpdateNoTrackingAsync(t => t.TrialId == item.Key.TrialId && userIdList.Contains(t.UserId), u => new TrialUserRole() { TrialUserId = id }); await _trialUserRoleReposiotry.BatchUpdateNoTrackingAsync(t => t.TrialId == item.Key.TrialId && userIdList.Contains(t.UserId), u => new TrialUserRole() { TrialUserId = id, UpdateTime = (DateTime)first.DeletedTime });
}
else
{
await _trialUserRoleReposiotry.BatchUpdateNoTrackingAsync(t => t.TrialId == item.Key.TrialId && userIdList.Contains(t.UserId), u => new TrialUserRole() { TrialUserId = find.Id, UpdateTime = (DateTime)first.DeletedTime });
}
} }