public async Task <ResultModel <AccountBasic> > RegisterAccountAsync(AccountRegister accountRegister)
        {
            var result = new ResultModel <AccountBasic>();

            try
            {
                var id_User = _tokenRead.GetValue("Id_User");
                if (!string.IsNullOrEmpty(id_User) && int.TryParse(id_User, out int userId))
                {
                    var account = new Core.Models.Account(accountRegister);
                    var valid   = account.Valid();
                    if (valid.Success)
                    {
                        await _account.RegisterAccount(account, userId);

                        if (account.Id > 0)
                        {
                            await _bus.PublishForgetAsync(new AccountCommandInsert {
                                AccountId = account.Id
                            });

                            result.SetData(new AccountBasic
                            {
                                Active         = account.Active,
                                Id             = account.Id,
                                Identification = account.Identification
                            });
                        }
                        else
                        {
                            result.NotValid();
                            result.SetMessages("Não foi possíovel realizar o cadastro!");
                        }
                    }
                    else
                    {
                        result.NotValid();
                        result.SetMessages(valid.Messages);
                    }
                }
                else
                {
                    result.NotValid();
                    result.SetMessages("Error Token, not found User_Id");
                }
            }
            catch (Exception e)
            {
                result.NotValid(e.GetBaseException().Message);
            }

            return(result);
        }