Esempio n. 1
0
        public async Task <Result <string> > CriarUsuarioCliente(UsuarioClienteInclusaoModel usuarioClienteInclusaoModel)
        {
            var usuario = _mapper.Map <UsuarioClienteInclusaoModel, Usuario>(usuarioClienteInclusaoModel);

            if (!usuario.Valid)
            {
                return(Result <string> .Error(usuario.Notifications));
            }

            var clienteDbModel = await _clienteReadOnlyRepository.ObterClienteAsync(usuarioClienteInclusaoModel.ClienteId);

            if (clienteDbModel == null)
            {
                return(Result <string> .Error(new List <Notification>
                {
                    new Notification("Usuário", "Cliente não encontrado")
                }));
            }

            var usuarioDbModel = await _usuarioWriteOnlyRepository
                                 .CriarUsuarioAsync(_mapper.Map <Usuario, UsuarioDbModel>(usuario));

            if (usuarioDbModel != null)
            {
                await _clienteWriteOnlyRepository
                .AtribuirUsuario(clienteDbModel.Id, usuarioDbModel.Id);
            }

            return(Result <string> .Ok(usuario.Id.ToString()));
        }
Esempio n. 2
0
        public async Task <IActionResult> Get(Guid id)
        {
            var cliente = await _clienteReadOnlyRepository.ObterClienteAsync(id);

            if (cliente == null)
            {
                return(NotFound("Cliente não encontrado"));
            }

            return(Ok(_mapper.Map <ClienteDbModel, ClienteModel>(cliente)));
        }