view Agendas/trunk/src/Agendas.Domain/Track.cs @ 133:6f1041301797

Se agregan los estados Cancelado y Descartado con las acciones Cancelar, Reagendar, Descartar, Reproponer, según ticket 146. Falta solucionar problema con flujo, ver más información en el ticket de assembla. http://www.assembla.com/spaces/altnet-hispano/tickets/146-implementar-estado-descartar-y-cancelar-de-eventos
author alabra
date Sun, 10 Jul 2011 23:59:19 -0400
parents 90ce239cfa6d
children beeb48ddb44a
line wrap: on
line source

using System;
using System.Collections.Generic;

namespace AltNetHispano.Agendas.Domain
{
	public class Track : Identificable
	{
		private readonly IList<TrackLog> _logs;

		protected Track()
		{
			//ctor para NHibernate
			_logs = new List<TrackLog>();
		}

		public Track(Evento evento, Accion accion)
			: this()
		{
			Usuario = IdentityContext.GetUsuario();
			Evento = evento;
			Accion = accion;
		}

		public virtual Evento Evento { get; private set; }
		public virtual Accion Accion { get; private set; }
		public virtual Persona Usuario { get; private set; }

		public virtual IEnumerable<TrackLog> Logs
		{
			get { return _logs; }
		}

		public virtual void LogAdd(TrackLog trackLog)
		{
			trackLog.Track = this;
			_logs.Add(trackLog);
		}
	}

    public enum Accion
    {
        Proponer = 1,
        Agendar = 2,
        Modificar = 3,
        CambiarTitulo = 4,
        Publicar = 5,
        Confirmar = 6,
        Cancelar = 7,
        Descartar = 8,
        ReAgendar = 9,
        ReProponer = 10
    }
}