it-swarm-pt.com

Exemplos para definir a disponibilidade de uma pessoa (como um funcionário)

Estou projetando um aplicativo Web que inclui funcionalidade para indicar a disponibilidade de um funcionário para trabalhar. Esse é um conceito fácil para duas pessoas se comunicarem verbalmente: "Estou disponível às terças-feiras de segunda-feira o dia todo e às quartas-feiras após as 12:00". Mas é difícil para mim descobrir como traduzir isso em um formulário da web. As opções que eu acho que preciso ter são:

  • Indicando em quais dias uma pessoa está disponível semanalmente (segundas e terças-feiras o dia todo, quarta-feira das 12:00 às 17:00)
  • Indicando dias específicos em que uma pessoa está disponível ou não, que se desvia da norma (nesta quarta-feira, estou disponível o dia todo, mas na próxima terça-feira só estou disponível até às 12h)
  • E, finalmente, isso pode ser um exagero, mas às vezes as pessoas estão disponíveis mensalmente ("Não estou disponível na segunda sexta-feira de cada mês" ou "Não estou disponível no dia 15 de cada mês")

Alguém conhece algum bom exemplo disso ou tem alguma sugestão geral para implementar esse tipo de recurso?

Obrigado!

6
Chris Dutrow

Eu sugeriria ter duas áreas separadas - uma onde o usuário faz entradas descrevendo sua disponibilidade e outra em que o sistema exibe o resultado agregado.

Essencialmente, isso replica a conversa que duas pessoas podem ter, fornecendo uma área para o usuário "falar" e outra para o sistema "refletir de volta" seu entendimento.

Entrada

Forneça uma área em que os usuários descrevam sua disponibilidade.

Uma maneira de fazer isso seria permitir que eles fizessem uma série de declarações altamente estruturadas, mas em inglês.

  • Estou disponível todas as terças e quartas-feiras
  • Estou disponível toda quinta-feira depois das 14h
  • Não estou disponível na última quinta-feira do mês

Você pode permitir que os usuários os digitem diretamente ou forneça algum tipo de construtor simples.

Exibição

Ao lado da entrada de dados, forneça um calendário mostrando como as instruções do usuário definem sua disponibilidade. Torne isso navegável, para que as pessoas possam olhar para o futuro (ou, talvez, o passado). Se o usuário parar em um intervalo de tempo específico, mostre uma dica de ferramenta que descreve por que eles estão (ou não) disponíveis no momento.

  • O usuário aponta em um horário de segunda-feira.
    Sistema: Você não está disponível a qualquer momento às segundas-feiras
  • O usuário aponta em um horário de quinta-feira de manhã.
    Sistema: você não está disponível às quintas-feiras antes das 14:
  • O usuário aponta na quinta-feira à tarde, perto do final do mês.
    Sistema: Você não está disponível nesta quinta-feira porque é a última quinta-feira do mês.

Se o usuário clicar em um intervalo de tempo, você pode destacar as regras que contribuem para a disponibilidade naquele momento.

1
Bevan

Qualquer calendário compartilhável possui recursos como este (Outlook, Gmail, etc.) ... copie um.

3
Tucker

você pode usar um calendário simples com código de cores.

- verde: disponível
- amarelo: parcialmente disponível
- azul: indisponível; (vermelho seria muito duro, eu acredito).
- em branco/transparente: sem informação.

Edit: Usando a navalha de Occam, depois dos pontos pensativos de peterchen abaixo:

  • verde: disponível
  • verde escuro: parcialmente disponível.
  • em branco: indisponível.

o pensamento aqui é que usar apenas uma cor e variar a intensidade dela nos daria o máximo de informações com a menor quantidade de elementos. Isso seria mais fácil de digitalizar do que usar um esquema tradicional de 'semáforo'.

2
Sebastian Patane Masuelli

Para especificar o horário disponível, você pode usar controles deslizantes com dois indicadores, um para o horário de início e outro para o horário de término.

O formulário para especificar o horário de trabalho padrão pode mostrar uma semana de datas e um controle deslizante para cada data. Pode haver uma caixa de seleção para indicar se isso é recorrente (ou seja, semana padrão usual).

Com base nos cenários mencionados, você pode ter um formulário para eventos de exceção. Isso permitiria especificar eventos únicos (ou recorrentes) além da semana padrão. Por exemplo, precisa ter folga na quarta-feira à tarde ou no caso de alguém estar disponível na segunda segunda-feira de cada mês.

Eventos de exceção precisariam indicar o tempo disponível ou indisponível. Isso pode ser indicado por um botão de opção na parte superior do formulário e pelo código de cores do intervalo de tempo no controle deslizante.

1
Leah