web-dev-qa-db-fra.com

Exemples pour définir la disponibilité d'une personne (comme un employé)

Je conçois une application Web qui inclut des fonctionnalités pour indiquer la disponibilité d'un employé à travailler. C'est un concept facile pour deux personnes de communiquer verbalement: "Je suis disponible les lundis mardis toute la journée et les mercredis après 12h00". Mais difficile pour moi de comprendre comment traduire cela en un formulaire Web. Les options que je pense avoir besoin sont les suivantes:

  • Indiquant quels jours une personne est disponible sur une base hebdomadaire (lundi et mardi toute la journée, mercredi de 12h00 à 17h00)
  • Indiquer des jours spécifiques où une personne est disponible ou non disponible qui s'écarte de la norme (ce mercredi, je suis disponible toute la journée, mais mardi prochain, je ne suis disponible que jusqu'à 12h00)
  • Et enfin, cela peut être exagéré, mais parfois les gens sont disponibles sur une base mensuelle ("Je ne suis pas disponible le deuxième vendredi de chaque mois" ou "Je ne suis pas disponible le 15 de chaque mois")

Quelqu'un connaît-il de bons exemples de cela ou a-t-il des suggestions générales pour implémenter ce type de fonctionnalité?

Merci!

6
Chris Dutrow

Je suggérerais d'avoir deux zones distinctes - une où l'utilisateur fait des entrées décrivant leur disponibilité et une où le système affiche le résultat agrégé.

Essentiellement, cela reproduit la conversation que deux personnes peuvent avoir, offrant un espace pour que l'utilisateur "parle" et un autre pour que le système "réfléchisse" sa compréhension.

Entrée

Fournissez un espace où les utilisateurs décrivent leur disponibilité.

Une façon de procéder serait de leur permettre de faire une série de déclarations très structurées, mais de forme anglaise.

  • Je suis disponible tous les mardis et mercredis
  • Je suis disponible tous les jeudis après 14h
  • Je ne suis pas disponible le dernier jeudi du mois

Vous pouvez autoriser les utilisateurs à les saisir directement ou fournir une sorte de générateur simple.

Afficher

À côté de l'entrée de données, fournissez un calendrier montrant comment les déclarations des utilisateurs définissent leur disponibilité. Rendez cela navigable, afin que les gens puissent regarder vers l'avenir (ou, peut-être, le passé). Si l'utilisateur s'arrête sur un intervalle de temps particulier, affichez une info-bulle qui explique pourquoi ils sont (ou ne sont pas) disponibles à ce moment.

  • L'utilisateur pointe sur un créneau horaire du lundi.
    Système: Vous n'êtes pas disponible à aucun moment le lundi
  • L'utilisateur pointe sur un créneau horaire du jeudi matin.
    Système: Vous n'êtes pas disponible le jeudi avant 14h
  • Points utilisateurs jeudi après-midi vers la fin du mois.
    Système: Vous n'êtes pas disponible ce jeudi car c'est le dernier jeudi du mois.

Si l'utilisateur clique sur un intervalle de temps, vous souhaiterez peut-être mettre en évidence les règles qui contribuent à la disponibilité à ce moment-là.

1
Bevan

Tout calendrier partageable a des fonctionnalités comme celle-ci (Outlook, Gmail, etc.) ... copiez-en un.

3
Tucker

vous pouvez utiliser un simple calendrier à code couleur.

- vert: disponible
- jaune: partiellement disponible
- bleu: non disponible; (le rouge serait trop dur je crois).
- vierge/transparent: aucune info.

Edit: En utilisant le rasoir d'Occam, après les points réfléchis de peterchen ci-dessous:

  • vert: disponible
  • vert foncé: partiellement disponible.
  • vide: indisponible.

l'idée ici est que l'utilisation d'une seule couleur et la variation de son intensité nous donneraient le plus d'informations avec le moins d'éléments. Il serait plus facile de numériser que d'utiliser un schéma traditionnel de "feux de circulation".

Pour spécifier les heures disponibles, vous pouvez utiliser des curseurs qui ont deux indicateurs, un pour l'heure de début et un pour l'heure de fin.

Le formulaire pour spécifier les heures de travail standard pourrait afficher une semaine de dates et un curseur pour chaque date. Il pourrait y avoir une case à cocher pour indiquer si cela est récurrent (c'est-à-dire la semaine standard habituelle).

Sur la base des scénarios que vous avez mentionnés, vous pourriez avoir un formulaire pour les événements d'exception. Cela vous permettrait de spécifier des événements uniques (ou des événements récurrents) en plus de la semaine standard. Par exemple, vous devez avoir mercredi prochain après-midi, ou dans le cas où quelqu'un est disponible le deuxième lundi de chaque mois.

Les événements d'exception devraient indiquer l'heure disponible ou indisponible. Cela pourrait être indiqué par un bouton radio en haut de la forme et du codage couleur de l'intervalle de temps sur le curseur.

1
Leah