Skip to content

Instantly share code, notes, and snippets.

@devnetfx
Created July 7, 2011 12:13
Show Gist options
  • Save devnetfx/1069385 to your computer and use it in GitHub Desktop.
Save devnetfx/1069385 to your computer and use it in GitHub Desktop.
Draft for Dossier
using System;
using System.Collections.Generic;
namespace Macto
{
public class Dossier
{
public Inmate Inmate { get; private set; }
public ICollection<Warrant> Warrants { get; set; }
public ICollection<Note> Notes { get; set; }
public bool IsFlagged { get; set; }
public ICollection<Flag> FlagReasons { get; set; }
public ICollection<SummaryNote> SummaryNotes { get; set; }
public Dossier()
{
Warrants = new List<Warrant>();
}
public static Dossier AcceptAnInmate(Inmate inmate, Warrant warrant)
{
Dossier dossier = new Dossier();
dossier.Inmate = inmate;
dossier.Warrants.Add(warrant);
return dossier;
}
}
public enum SummaryNote
{
Suicidal,
FlightRisk,
IntelligenceAsset
}
public class Flag
{
public string Reason { get; set; }
public FlagType FlagType { get; set; }
// Should Fix Reqiuired for Flag also be a enum?
public string FixRequired { get; set; }
public DateTime FlaggedDate { get; set; }
public bool IsFixed { get; set; }
public DateTime FixedDate { get; set; }
}
public enum FlagType
{
Underage,
WarrantRequired,
WarrantExpired,
WarrantEnding,
CourtDate,
InvalidWarrantAuthority
}
public class Note
{
public Officer ReportingOfficer { get; set; }
public string Reason { get; set; }
public ReportType ReportType { get; set; }
public string Report { get; set; }
public bool IsCliffNote { get; set; }
}
public enum ReportType
{
Medical,
Intelligence,
Disciplinary
}
public class Officer
{
public string Id { get; set; }
public OfficerRank Rank { get; set; }
public OfficerPosition Position { get; set; }
public string Name { get; set; }
}
public enum OfficerPosition
{
PrisonCommander,
CellBlockCommander
}
public enum OfficerRank
{
Commander,
Captain
}
}
@devnetfx
Copy link
Author

devnetfx commented Jul 7, 2011

Removed AddXXX methods, Split OfficerType, Added Flag with FlagType, Added Summary Note

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment