diff Agendas/trunk/src/Agendas.Domain/EventoPropuestoState.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 53bcd338542b
children 3639803112c6
line wrap: on
line diff
--- a/Agendas/trunk/src/Agendas.Domain/EventoPropuestoState.cs	Sun Jul 10 23:55:56 2011 -0400
+++ b/Agendas/trunk/src/Agendas.Domain/EventoPropuestoState.cs	Sun Jul 10 23:59:19 2011 -0400
@@ -19,15 +19,19 @@
 
     public override void Promover(Evento evento, Accion accion)
     {
-      switch (accion)
-      {
-        case Accion.Agendar:
-          evento.SetEstado(EventoAgendadoState.GetInstance());
-          evento.AddTrack(new Track(evento, Accion.Agendar));
-          break;
-        default:
-          throw new AccionNoSoportadaException(this.GetType(), accion);
-      }
+        switch (accion)
+        {
+            case Accion.Agendar:
+                evento.SetEstado(EventoAgendadoState.GetInstance());
+                evento.AddTrack(new Track(evento, Accion.Agendar));
+                break;
+            case Accion.Descartar:
+                evento.SetEstado(EventoDescartadoState.GetInstance());
+                evento.AddTrack(new Track(evento, Accion.Descartar));
+                break;
+            default:
+                throw new AccionNoSoportadaException(this.GetType(), accion);
+        }
     }
 
     public override string GetDescripcion()
@@ -37,7 +41,7 @@
 
   	public override bool PuedePromover(Accion accion)
   	{
-  		return accion == Accion.Agendar;
+  		return accion == Accion.Agendar || accion == Accion.Descartar;
   	}
   }
 }
\ No newline at end of file