using System;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
namespace DataModel.Models
{
///
/// Search status update message
///
public class SearchUpdate
{
///
/// Search PK ID
///
public int ID { get; set; }
///
/// User name of user that submitted search
///
public string UserName { get; set; }
///
/// Name of user that submitted search
///
public string Name { get; set; }
///
/// Search status code
///
[JsonConverter(typeof(StringEnumConverter))]
public SearchStatus Status { get; set; }
///
/// Timestamp search was submitted
///
public DateTime? SubmitDT { get; set; }
///
/// Timestamp search was started
///
public DateTime? StartDT { get; set; }
///
/// Timestamp search was completed
///
public DateTime? EndDT { get; set; }
///
/// Timestamp when update was generated
///
public DateTime Timestamp { get; set; }
///
/// Constructor
///
public SearchUpdate()
{
}
///
/// Constructor
///
/// Search to copy values from
public SearchUpdate(Search search)
{
ID = search.ID;
UserName = search.UserName;
Name = search.Name;
Status = search.Status;
SubmitDT = search.SubmitDT;
StartDT = search.StartDT;
EndDT = search.EndDT;
Timestamp = DateTime.Now;
}
}
}