using System;
using System.Collections.Generic;
using System.Runtime.Serialization;

using BS.Shared.DataContracts.Compact;

namespace BS.Shared.DataContracts
{
	[DataContract]
	public class NewSchedulerAppointmentDC : IDataContract
	{
		[DataMember]
		public long? NewSchedulerAppointmentOid { get; set; }

		[DataMember]
		public long? NewSchedulerAppointmentVersion { get; set; }

		[DataMember]
		public bool IsPrivate { get; set; }

		[DataMember]
		public string Subject { get; set; }

		[DataMember]
		public string Description { get; set; }

		[DataMember]
		public DateTime? StartDate { get; set; }

		[DataMember]
		public DateTime? EndDate { get; set; }

		[DataMember]
		public CompactEmployeeDC Originator { get; set; }

		[DataMember]
		public int LabelId { get; set; }

		[DataMember]
		public bool AllDay { get; set; }

		[DataMember]
		public int Status { get; set; }

		[DataMember]
		public int Type { get; set; }

		[DataMember]
		public string Location { get; set; }

		[DataMember]
		public string RecurrenceInfo { get; set; }

		[DataMember]
		public string ReminderInfo { get; set; }

		[DataMember]
		public List<CompactCustomerDC> CustomerList { get; set; }

		[DataMember]
		public Dictionary<CompactEmployeeDC, ParticipationAnswer> EmployeeList { get; set; }

		[DataMember]
		public List<ResourceDC> ResourceList { get; set; }
	}
}
