public IEnumerable<UsuarioViewModel> Get() { var usuarios = this.usuarioRepositorio .ObterTodosComAreaEPerfil(); var usuariosViewModel = new List<UsuarioViewModel>(); foreach (var usuario in usuarios) { var viewModel = new UsuarioViewModel { Id = usuario.Id, Ativo = usuario.Ativo, Email = usuario.Email, Expira = usuario.Expira, ExpiraEm = usuario.ExpiraEm, Nome = usuario.Nome, Login = usuario.Login, Senha = usuario.Senha, Area = AreaViewModel.Criar(usuario.Area), Perfil = PerfilViewModel.Criar(usuario.Perfil) }; usuariosViewModel.Add(viewModel); } return usuariosViewModel as IEnumerable<UsuarioViewModel>; }
public void Execute(UsuarioViewModel usuarioViewModel) { Usuario usuario = null; TipoTrilha tipoTrilha = TipoTrilha.Alteracao; if (usuarioViewModel.Id == 0) { usuario = new Usuario(); usuario.Senha = this.hashString.Do(usuarioViewModel.Senha); tipoTrilha = TipoTrilha.Criacao; } else { usuario = this.usuarioRepositorio.ObterPorId(usuarioViewModel.Id); tipoTrilha = TipoTrilha.Alteracao; } usuario.Ativo = usuarioViewModel.Ativo; usuario.Login = usuarioViewModel.Login; usuario.Nome = usuarioViewModel.Nome; usuario.Email = usuarioViewModel.Email; usuario.Expira = usuarioViewModel.Expira; usuario.ExpiraEm = usuarioViewModel.Expira ? usuario.ExpiraEm = usuarioViewModel.ExpiraEm : usuario.ExpiraEm = null; if (usuarioViewModel.Area != null) { usuario.Area = new Area { Id = usuarioViewModel.Area.Id }; } if (usuarioViewModel.Perfil != null) { usuario.Perfil = new Perfil { Id = usuarioViewModel.Perfil.Id }; } this.usuarioRepositorio.Salvar(usuario); this.logarAcaoSistema.Execute( tipoTrilha, "Manutenção de Usuario", "Usuario Criado/Alterado: usuarioLogin: #" + usuarioViewModel.Login); }