1
0
mirror of https://github.com/bitwarden/server synced 2025-12-14 07:13:39 +00:00
Files
server/src/Core/Models/Business/ReferenceEvent.cs
2020-07-15 12:38:45 -04:00

50 lines
1.3 KiB
C#

using System;
using Bit.Core.Enums;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Serialization;
namespace Bit.Core.Models.Business
{
[JsonObject(NamingStrategyType = typeof(CamelCaseNamingStrategy))]
public class ReferenceEvent
{
public ReferenceEvent() { }
public ReferenceEvent(ReferenceEventType type, IReferenceable source)
{
Type = type;
if (source != null)
{
Source = source.IsUser() ? ReferenceEventSource.User : ReferenceEventSource.Organization;
Id = source.Id;
ReferenceId = source.ReferenceId;
}
}
[JsonConverter(typeof(StringEnumConverter))]
public ReferenceEventType Type { get; set; }
[JsonConverter(typeof(StringEnumConverter))]
public ReferenceEventSource Source { get; set; }
public Guid Id { get; set; }
public string ReferenceId { get; set; }
public DateTime EventDate { get; set; } = DateTime.UtcNow;
public int? Users { get; set; }
public bool? EndOfPeriod { get; set; }
public string PlanName { get; set; }
public PlanType? PlanType { get; set; }
public short? Seats { get; set; }
public short? Storage { get; set; }
}
}