comparison Agendas/trunk/src/Agendas.Domain/Services/PersonaService.cs @ 144:a2b14da4902f

Alta y modificación de ponentes (personas)
author Nelo@Guinea.neluz.int
date Mon, 01 Aug 2011 10:25:23 -0300
parents 2dbb15f4510f
children 5a1f7233aa5a
comparison
equal deleted inserted replaced
143:2dbb15f4510f 144:a2b14da4902f
1 using System.Linq; 1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
2 using AltNetHispano.Agendas.Domain.Repositories; 4 using AltNetHispano.Agendas.Domain.Repositories;
3 5
4 namespace AltNetHispano.Agendas.Domain.Services 6 namespace AltNetHispano.Agendas.Domain.Services
5 { 7 {
6 public class PersonaService 8 public class PersonaService
54 var persona = IdentityContext.GetUsuario(); 56 var persona = IdentityContext.GetUsuario();
55 var cuenta = persona.Cuentas.FirstOrDefault(c => c.IdentityProvider == identityProvider && c.LogonName == username); 57 var cuenta = persona.Cuentas.FirstOrDefault(c => c.IdentityProvider == identityProvider && c.LogonName == username);
56 if (cuenta != null) 58 if (cuenta != null)
57 persona.RemoveCuenta(cuenta); 59 persona.RemoveCuenta(cuenta);
58 } 60 }
61
62 public IEnumerable<Persona> GetAll()
63 {
64 return _personaRepository.GetAll();
65 }
66
67 public Persona GetById(Guid id)
68 {
69 return _personaRepository.Get(id);
70 }
71
72 public Resultado Add(string nombre, string twitter, string mail)
73 {
74 var persona = new Persona(nombre) {Twitter = twitter, Mail = mail};
75 _personaRepository.Save(persona);
76
77 return new Resultado(true);
78 }
79
80 public Resultado Update(Guid id, string nombre, string twitter, string mail)
81 {
82 var persona = _personaRepository.Get(id);
83 if (persona == null)
84 return new Resultado(false)
85 {Message = string.Format("No se pudo encontrar la persona cuyo Id sea {0}", id)};
86
87 persona.Nombre = nombre;
88 persona.Twitter = twitter;
89 persona.Mail = mail;
90
91 return new Resultado(true);
92 }
59 } 93 }
60 } 94 }