This commit is contained in:
52
server/models/NotifySubscription.cs
Normal file
52
server/models/NotifySubscription.cs
Normal file
@@ -0,0 +1,52 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Sockeye.Biz;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Sockeye.Models
|
||||
{
|
||||
//NOTE: Any non required field (nullable in DB) sb nullable here, i.e. decimal? not decimal,
|
||||
//otherwise the server will call it an invalid record if the field isn't sent from client
|
||||
|
||||
public class NotifySubscription
|
||||
{
|
||||
public long Id { get; set; }
|
||||
public uint Concurrency { get; set; }
|
||||
|
||||
[Required]
|
||||
public long UserId { get; set; }
|
||||
public TimeSpan AdvanceNotice { get; set; }
|
||||
|
||||
[Required]
|
||||
public NotifyDeliveryMethod DeliveryMethod { get; set; }
|
||||
public string DeliveryAddress { get; set; }
|
||||
public long LinkReportId { get; set; }
|
||||
|
||||
|
||||
//CREATE NOTIFY EVENT CONDITIONS - Following fields are all conditions set on whether to create a notify event or not
|
||||
public SockType SockType { get; set; }//Note: must be specific object, not global for any object related stuff to avoid many role issues and also potential overload
|
||||
[Required]
|
||||
public NotifyEventType EventType { get; set; }
|
||||
[Required]
|
||||
public long IdValue { get; set; }//if required, this must match, default is zero to match to not set
|
||||
public decimal DecValue { get; set; }//if required this must match or be greater or something
|
||||
public List<string> Tags { get; set; }//Tags to filter an event, object *must* have these tags to generate event related to it (AT TIME OF UPDATE)
|
||||
|
||||
//DELIVERY CONDITIONS - following are all conditions on *whether* to deliver the existing notify event or not
|
||||
public TimeSpan AgeValue { get; set; }//for events that depend on an age of something (e.g. WorkorderStatusAge), This value determines when event has "come of age" but advancenotice controls how far in advance of this delivery is made
|
||||
|
||||
public NotifySubscription()
|
||||
{
|
||||
Tags = new List<string>();
|
||||
SockType = SockType.NoType;
|
||||
IdValue = 0;
|
||||
DecValue = 0;
|
||||
AgeValue = TimeSpan.Zero;
|
||||
AdvanceNotice = TimeSpan.Zero;
|
||||
LinkReportId = 0;
|
||||
}
|
||||
|
||||
}//eoc
|
||||
|
||||
}//eons
|
||||
Reference in New Issue
Block a user