Mudanças entre as edições de "Cerca Eletrônica"

De GeoSales
Ir para navegação Ir para pesquisar
 
(24 revisões intermediárias por um outro usuário não estão sendo mostradas)
Linha 11: Linha 11:
 
Onde DMP = Distância Máxima Permitida e DCV = Distância entre Cliente e Vendedor. Caso essa comparação seja verdadeira, então o check-in é permitido. Caso seja falso, então o chek-in não será feito e será mostrada uma mensagem informando que não será permitido efetuar o check-in, pois é obrigatório estar dentro da distância máxima permitida. Obviamente, é necessário que o GPS esteja ligado para que esse cálculo seja feito, sendo que se o mesmo estiver desligado, será emitido um erro ao vendedor.
 
Onde DMP = Distância Máxima Permitida e DCV = Distância entre Cliente e Vendedor. Caso essa comparação seja verdadeira, então o check-in é permitido. Caso seja falso, então o chek-in não será feito e será mostrada uma mensagem informando que não será permitido efetuar o check-in, pois é obrigatório estar dentro da distância máxima permitida. Obviamente, é necessário que o GPS esteja ligado para que esse cálculo seja feito, sendo que se o mesmo estiver desligado, será emitido um erro ao vendedor.
  
===Regras de Negócio===
+
Essa distância máxima permitida é representada como um círculo ao redor da coordenada do cliente com um raio igual a DMP.
  
*[RN1] -
+
O cálculo da distância máxima entre duas coordenadas é dado pela seguinte fórmula:
 +
 
 +
*Δλ = | λ′ - λ |
 +
*''cos''('''S''') = ''sin''(φ′) * ''sin''(φ) + ''cos''(φ′) * ''cos''(φ) * ''cos''(Δλ)
 +
*'''S''' = ''arcos''(''cos''('''S'''))
 +
*DCV = '''S''' * '''R'''
 +
 
 +
onde temos:
 +
 
 +
*'''P1''' = Coordenada geográfica do Cliente
 +
*'''P2''' = Coordenada geográfica do Vendedor
 +
*φ = Latitude do Cliente
 +
*φ′ = Latitude do Vendedor
 +
*λ = Longitude do Cliente
 +
*λ′ = Longitude do Vendedor
 +
*Δλ = Diferença entre as longitudes das duas coordenadas.
 +
*'''S''' = Arco unindo os dois pontos ('''P1''' e '''P2'''), pois uma vez conhecido este valor bastará multiplicá-lo pelo raio da terra para encontrarmos a distância linear.
 +
*'''R''' = Raio da Terra que tem valor igual 6.371 km
 +
 
 +
*Imagem ilustrativa: [[http://staff.on.br/jlkm/geopath/Coorden.gif]]
  
 
==Cenários==
 
==Cenários==
Linha 19: Linha 38:
 
===Cenário feliz===
 
===Cenário feliz===
  
O vendedor João cadastra um pedido de bonificação.
+
O vendedor João efetua check-in para iniciar a tiragem de pedidos.
 +
 
 +
====Dados====
 +
 
 +
# Vendedor João (-21,0972:43.2075)
 +
# Clientes possíveis de ser atendidos pelo vendedor João
 +
## Cliente A (-22.4525:46,6361)
 +
#Δλ = 3,4286
 +
#Limite de distância atendimento 400 km
 +
 
 +
====Operação====
 +
 
 +
# João acessa a tela de listagem de clientes, seleciona o Cliente A e clica em atender cliente; 
 +
# João clica em efetuar check-in;
 +
# Sistema calcula a distância entre a posição do vendedor João e o Cliente A que é de 358km.
 +
 
 +
====Assertivas====
 +
 
 +
# O vendedor João poderá efetuar a venda para o Cliente A.
 +
 
 +
===Cenário de impedimento de Venda===
 +
 
 +
O vendedor João efetua check-in para iniciar a tiragem de pedidos.
  
====Dado====
+
====Dados====
  
# Vendedor João
+
# Vendedor João (-21,0972:43.2075)
# Todos os pedidos de bonificação ficam pendentes de aprovação
+
# Clientes possíveis de ser atendidos pelo vendedor João
# Motivos de Cadastro do Pedido de Bonificação
+
## Cliente A (-22.4525:46,6361)
## Aprovação da diretoria
+
#Δλ = 3,4286
## Bonificação vantajosa
+
#Limite de distância atendimento 1 km
## Bônus por grande compra
 
# Lista de clientes a serem atendidos
 
## Cliente A
 
## Cliente B
 
## Cliente C
 
# O tipo de pedido de bonificação tem em seu cadastro que todo pedido feito desse tipo irá ficar pendente de aprovação
 
  
 
====Operação====
 
====Operação====
  
# João inicia o atendimento ao Cliente A.
+
# João acessa a tela de listagem de clientes, seleciona o Cliente A e clica em atender cliente; 
# João seleciona o tipo de pedido bonificação.
+
# João clica em efetuar check-in;
# João insere o motivo do cadastro do pedido "Aprovação da Diretoria" e clica em inserir itens.
+
# Sistema calcula a distância entre a posição do vendedor João e o Cliente A que é de 358km.
# João insere as informações necessárias e finaliza o cadastro do pedido.
 
  
 
====Assertivas====
 
====Assertivas====
  
# É cadastrado o pedido D do tipo bonificação pelo vendedor João para o cliente A.
+
# O vendedor João não poderá efetuar a venda para o Cliente A.
# O pedido de bonificação D fica com o status igual a pendente de aprovação.
+
# O sistema exibe a seguinte mensagem ao Vendedor:
# No cadastro do pedido D é salvo o motivo de cadastro "Aprovação da Diretoria".
+
#*"Você não está dentro da distância máxima do cliente permitida para efetuar uma venda!"
 +
 
 +
==Observações==
 +
 
 +
Podem existir pequenos erros de cálculo se as latitudes forem próximas dos polos da terra (devido a mudança de raio).

Edição atual tal como às 14h30min de 22 de dezembro de 2016

Necessidade

O cliente quer garantir que quando o vendedor/representante faça o check-in durante o atendimento ele esteja realmente visitando o cliente.

Pré Detalhes da Solução Imperativa

No momento que que o vendedor for efetuar o check-in antes de iniciar a venda, o sistema, caso esteja configurado para validar a posição do vendedor, deve calcular a distância entre a posição do vendedor e a posição cadastrada no cliente. Após calcular essa distância, o sistema deve conferir em sua configuração a distância máxima permitida para tiragem do pedido e fazer a seguinte comparação:

  • DMP >= DCV

Onde DMP = Distância Máxima Permitida e DCV = Distância entre Cliente e Vendedor. Caso essa comparação seja verdadeira, então o check-in é permitido. Caso seja falso, então o chek-in não será feito e será mostrada uma mensagem informando que não será permitido efetuar o check-in, pois é obrigatório estar dentro da distância máxima permitida. Obviamente, é necessário que o GPS esteja ligado para que esse cálculo seja feito, sendo que se o mesmo estiver desligado, será emitido um erro ao vendedor.

Essa distância máxima permitida é representada como um círculo ao redor da coordenada do cliente com um raio igual a DMP.

O cálculo da distância máxima entre duas coordenadas é dado pela seguinte fórmula:

  • Δλ = | λ′ - λ |
  • cos(S) = sin(φ′) * sin(φ) + cos(φ′) * cos(φ) * cos(Δλ)
  • S = arcos(cos(S))
  • DCV = S * R

onde temos:

  • P1 = Coordenada geográfica do Cliente
  • P2 = Coordenada geográfica do Vendedor
  • φ = Latitude do Cliente
  • φ′ = Latitude do Vendedor
  • λ = Longitude do Cliente
  • λ′ = Longitude do Vendedor
  • Δλ = Diferença entre as longitudes das duas coordenadas.
  • S = Arco unindo os dois pontos (P1 e P2), pois uma vez conhecido este valor bastará multiplicá-lo pelo raio da terra para encontrarmos a distância linear.
  • R = Raio da Terra que tem valor igual 6.371 km
  • Imagem ilustrativa: [[1]]

Cenários

Cenário feliz

O vendedor João efetua check-in para iniciar a tiragem de pedidos.

Dados

  1. Vendedor João (-21,0972:43.2075)
  2. Clientes possíveis de ser atendidos pelo vendedor João
    1. Cliente A (-22.4525:46,6361)
  3. Δλ = 3,4286
  4. Limite de distância atendimento 400 km

Operação

  1. João acessa a tela de listagem de clientes, seleciona o Cliente A e clica em atender cliente;
  2. João clica em efetuar check-in;
  3. Sistema calcula a distância entre a posição do vendedor João e o Cliente A que é de 358km.

Assertivas

  1. O vendedor João poderá efetuar a venda para o Cliente A.

Cenário de impedimento de Venda

O vendedor João efetua check-in para iniciar a tiragem de pedidos.

Dados

  1. Vendedor João (-21,0972:43.2075)
  2. Clientes possíveis de ser atendidos pelo vendedor João
    1. Cliente A (-22.4525:46,6361)
  3. Δλ = 3,4286
  4. Limite de distância atendimento 1 km

Operação

  1. João acessa a tela de listagem de clientes, seleciona o Cliente A e clica em atender cliente;
  2. João clica em efetuar check-in;
  3. Sistema calcula a distância entre a posição do vendedor João e o Cliente A que é de 358km.

Assertivas

  1. O vendedor João não poderá efetuar a venda para o Cliente A.
  2. O sistema exibe a seguinte mensagem ao Vendedor:
    • "Você não está dentro da distância máxima do cliente permitida para efetuar uma venda!"

Observações

Podem existir pequenos erros de cálculo se as latitudes forem próximas dos polos da terra (devido a mudança de raio).