Add comparison result models
This commit is contained in:
@@ -0,0 +1,51 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace Disco.Plugins.ADCompare.Models
|
||||||
|
{
|
||||||
|
public class UserComparisonResult
|
||||||
|
{
|
||||||
|
public string UserId { get; set; }
|
||||||
|
public string DisplayName { get; set; }
|
||||||
|
public bool UserFoundInAD { get; set; }
|
||||||
|
public bool ADAccountDisabled { get; set; }
|
||||||
|
public List<FieldMismatch> Mismatches { get; set; } = new List<FieldMismatch>();
|
||||||
|
|
||||||
|
public bool HasMismatches => Mismatches.Count > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public class FieldMismatch
|
||||||
|
{
|
||||||
|
public string FieldName { get; set; }
|
||||||
|
public string DiscoValue { get; set; }
|
||||||
|
public string ADValue { get; set; }
|
||||||
|
|
||||||
|
public FieldMismatch(string fieldName, string discoValue, string adValue)
|
||||||
|
{
|
||||||
|
FieldName = fieldName;
|
||||||
|
DiscoValue = discoValue;
|
||||||
|
ADValue = adValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class ComparisonSummary
|
||||||
|
{
|
||||||
|
public int TotalDiscoUsers { get; set; }
|
||||||
|
public int UsersCompared { get; set; }
|
||||||
|
public int UsersNotFoundInAD { get; set; }
|
||||||
|
public int UsersWithMismatches { get; set; }
|
||||||
|
public int UsersInSync { get; set; }
|
||||||
|
public int ADAccountsDisabled { get; set; }
|
||||||
|
public List<UserComparisonResult> Results { get; set; } = new List<UserComparisonResult>();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Filter to only show results with issues (mismatches, not found, or disabled)
|
||||||
|
/// </summary>
|
||||||
|
public List<UserComparisonResult> IssuesOnly
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return Results.FindAll(r => r.HasMismatches || !r.UserFoundInAD || r.ADAccountDisabled);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user