Este artigo descreve a operação de registro (cadastro) para um novo usuário (cliente) da aplicação.
Visão geral do processo
Quando o cliente realiza seu registro (cadastro) na aplicação, o sistema cria um “Usuário” (com licença de comunidade), associado a um contato que por sua vez está diretamente relacionado a uma conta. 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, seria desejável que o registro de um novo usuário fosse associado a uma conta existente e não a uma nova conta duplicada.
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.
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 |