Mercurial > altnet-hispano
comparison Agendas/trunk/src/Agendas.Domain/Agenda.cs @ 39:e548379cc314
track de cambios en evento
author | nelo@MTEySS.neluz.int |
---|---|
date | Fri, 18 Mar 2011 00:10:21 -0300 |
parents | 3c5657d99727 |
children | 07c47ea2ac00 |
comparison
equal
deleted
inserted
replaced
38:3c5657d99727 | 39:e548379cc314 |
---|---|
36 if (string.IsNullOrWhiteSpace(evento.Ponente.Nombre)) | 36 if (string.IsNullOrWhiteSpace(evento.Ponente.Nombre)) |
37 throw new ValidationException(); | 37 throw new ValidationException(); |
38 | 38 |
39 if (_publicador != null) | 39 if (_publicador != null) |
40 _publicador.Publicar(evento); | 40 _publicador.Publicar(evento); |
41 | |
42 evento.AddTracks(new Track(Accion.Publicar)); | |
43 | |
41 _eventosRepository.Save(evento); | 44 _eventosRepository.Save(evento); |
42 _ponenteRepository.Save(ponente); | 45 _ponenteRepository.Save(ponente); |
43 } | 46 } |
44 | 47 |
45 public void Recordar(Guid eventoId) | 48 public void Recordar(Guid eventoId) |
86 throw new EventoNotFoundException(); | 89 throw new EventoNotFoundException(); |
87 | 90 |
88 var ponente = GetPonente(ponenteNombre); | 91 var ponente = GetPonente(ponenteNombre); |
89 | 92 |
90 if (evento.Titulo != titulo) | 93 if (evento.Titulo != titulo) |
91 evento.CambiarTitulo(titulo); | 94 { |
95 evento.CambiarTitulo(titulo); | |
96 evento.AddTracks(new Track(Accion.CambiarTitulo)); | |
97 } | |
92 | 98 |
93 evento.Actualizar(ponente, fecha); | 99 if (evento.Fecha != fecha || evento.Ponente != ponente) |
100 { | |
101 evento.Actualizar(ponente, fecha); | |
102 evento.AddTracks(new Track(Accion.Modificar)); | |
103 } | |
94 | 104 |
95 if (_publicador != null) | 105 |
106 if (_publicador != null) | |
96 _publicador.Publicar(evento); | 107 _publicador.Publicar(evento); |
97 } | 108 } |
98 | 109 |
99 public Evento GetEvento(Guid id) | 110 public Evento GetEvento(Guid id) |
100 { | 111 { |
107 _ponenteRepository.Save(ponente); | 118 _ponenteRepository.Save(ponente); |
108 } | 119 } |
109 | 120 |
110 private Ponente GetPonente(string nombre) | 121 private Ponente GetPonente(string nombre) |
111 { | 122 { |
112 return _ponenteRepository.GetByNombre(nombre) ?? new Ponente(nombre); | 123 var ponente=_ponenteRepository.GetByNombre(nombre) ?? new Ponente(nombre); |
124 _ponenteRepository.Save(ponente); | |
125 return ponente; | |
113 } | 126 } |
114 | 127 |
115 public void ModificarPropuesta(Guid id, string titulo, string ponenteNombre) | 128 public void ModificarPropuesta(Guid id, string titulo, string ponenteNombre) |
116 { | 129 { |
117 ModificarEvento(id, titulo, ponenteNombre, null); | 130 ModificarEvento(id, titulo, ponenteNombre, null); |
118 } | 131 } |
132 | |
133 public void RealizarEvento(Guid eventoId, string sintesis) | |
134 { | |
135 var evento = _eventosRepository.Get(eventoId); | |
136 if (evento != null) | |
137 { | |
138 evento.Realizado(sintesis); | |
139 evento.AddTracks(new Track(Accion.Realizar)); | |
140 } | |
141 } | |
119 } | 142 } |
120 | 143 |
121 public class EventoNotFoundException : Exception | 144 public class EventoNotFoundException : Exception |
122 { | 145 { |
123 } | 146 } |