Para utilizar os serviços disponíveis pela locação digital, o cliente deve se tornar um usuário cadastrado através da operação de registro que será descrita neste artigo.
O termo cliente utilizado neste artigo refere-se a uma pessoa com interesse em alugar um imóvel (locatário) e não depende desta pessoa ter assinado um contrato de locação.
Regras de negócio
Quando o cliente realiza seu registro (cadastro) na aplicação, o sistema cria um “Usuário” (com licença de comunidade), associado a uma conta pessoal. Portanto, o registro de um cliente envolve basicamente três objetos (entidades) do sistema: usuário, contato e conta.
Como hipótese consideramos que uma empresa, antes de iniciar sua operação de locação digital, já possui um cadastro de clientes (contas e contatos) e, por isso, parte dos clientes que realizam registro na aplicação podem ser clientes com contas já existentes. Neste caso, o registro de um novo usuário deve ser associado a uma conta existente para não duplicar informações e para vincular os dados existentes no sistema (ex. visitas, propostas, etc.) ao cliente de origem.
Para que isso seja possível, o sistema considera o endereço de email do cadastrado como a chave de pesquisa para verificar a existência deste cliente no cadastro de contas pessoais. Isso significa que o endereço de email digitado no cadastro ou vinculado a uma conta social (google ou facebook) será utilizado pelo sistema para decidir sobre a existência ou não deste cliente.
Tipos de registro
O cliente pode utilizar três caminhos diferentes para realizar o seu cadastro:
Registro com email
Registro com google
Registro com facebook
Como o processo de registro valida o email informado pelo usuário no formulário de cadastro, podemos associar este novo usuário a uma conta existente.
O processo começa quando:
Cliente preenche o formulário de registro da aplicação, informando seu nome, sobrenome, email, cpf, celular e perfil.
Sistema procura um usuário ativo com o email informado:
Se já existe um usuário, sistema exibe uma mensagem de erro e retorna para o passo 1.
Sistema procura um contato com o email informado:
Se já existe um contato com o email informado:
Sistema associa o novo usuário ao contato e conta encontrados.
Se o sistema retornar dois ou mais contato:
Sistema associa o novo usuário ao contato com a data de criação mais recente.
Se não encontrar nenhum contato:
Sistema cria uma nova conta pessoal e associa ao novo usuário.
Sistema envia mensagem para o endereço de email informado pelo cliente, com o código de verificação.
Cliente digita o código de verificação recebido para confirmar a propriedade do email informado.
Sistema cria registro para o novo usuário.
Operações do sistema
Registro com email
Para realizar o registro utilizando apenas o endereço de email, siga os passos abaixo.
Clique no botão ““
Registro com Google
Para realizar o registro utilizando o provedor de identidade do “Google”, siga os passos abaixo.
Registro com Facebook
Regras de negócio
Cadastro do usuário
Na tabela abaixo estão descritos os campos do objeto “Usuário”, necessários para o registro de um novo cliente.
Campo | Nome de API | Tipo de campo | Descrição | Valor |
---|---|---|---|---|
Nome | FirstName | Texto | Primeiro nome do usuário | Preenchido no formulário de registro. |
Sobrenome | LastName | Texto | Sobrenome do usuário | Preenchido no formulário de registro. |
Endereço de email do usuário | Preenchido no formulário de registro. | |||
Celular | MobilePhone | Telefone | Telefone celular do usuário | Preenchido no formulário de registro. |
Nome do usuário | UserName | Texto(80) | Nome do usuário utilizado para autenticação com usuário e senha. | |
Contato | ContactId | Pesquisa(Contato) | Identifica o contato associado ao usuário | |
Perfil | ProfileId | Pesquisa(Perfil) | Identifica o perfil do usuário. As opções são: Locatário ou Locador. | Selecionado no formulário de registro. |
Apelido | CommunityNickName | Texto(40) | Apelido do usuário na comunidade | |
Alias | Alias | Texto(8) | Nome reduzido para o usuário | |
Fuso horário | TimeZoneSidKey | Lista de valores | ||
Localidade | LocaleSidKey | Lista de opções | ||
Codificação de email | EmailEncodingKey | Lista de opções | UTF-8 | |
Idioma | LanguageLocaleKey | UserInfo.getLocale() |
Notas
A descrição completa dos campos do objeto “User” está disponível em https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_objects_user.htm.
Cadastro da conta pessoal
Campo | Nome de API | Tipo de campo | Valor | Descrição |
---|---|---|---|---|
Tipo de registro | RecordType | Cliente pessoa física | ||
Nome | FirstName | Texto() | ||
Sobenome | LastName | Texto() | ||
PersonEmail | ||||
CPF | snap_finan__Cpf_2__pc | |||
Celular | PersonMobilePhone | Telefone |
Notas para o desenvolvedor
A interface para registro do cliente é implementado pelo componente “Login do cliente”.
O serviço para registro do cliente é implementado
Item | Componente |
---|---|
Interface do usuário | Login do cliente (loginCliente) [aura] |
Controller | SiteController.iniciarCadastroCliente |
Servico | Servico |