Intranet-Applikation für Abrechnung unter Drupal

Intranet-Applikation für Abrechnung unter Drupal

Drupal 10
Intranet-Applikation für Abrechnung unter Drupal
Design:
Montviso

Wer häufig Support abrechnet, kennt die Problematik vermutlich: Wie kann man den Überblick über abrechenbare Stunden bewahren und möglichst einfach Rechnungen generieren? Für diesen Zweck haben wir unter Drupal ein bewusst einfach gehaltenes Tool mit folgenden Features entwickelt:

  • Kunden verwalten:  Da wir häufig im Netzwerk arbeiten und für Kunden von Kunden Support und technische Anpassungen vornehmen, ist eine Referenz von Kunde zu Kunde vorgesehen.
    Bei den Kunden ist die Rechnungsadresse hinterlegt, sowie diverse Kommunikationsdaten und Vereinbarungen, sowie der Stundensatz.
  • Projekte verwalten, aus denen Rechnungen werden.
    Bei Projekten ist Betreff, Rechnungsnummer, Rechnungsdatum und ein evt. abweichender Stundensatz hinterlegt, sowie Bezug zum Kunden.
  • Leistungseinheiten verwalten, aus denen Positionen in der Rechnung werden.
    Bei der Leistungseinheit ist ein evt. abweichender Stundensatz, eine Beschreibung, Datum der Fertigstellung und Dauer hinterlegt, so wie Bezug zum Projekt.
  • Generierung von Rechnungen als PDF, mit und ohne Briefkopf
  • Stundenprotokolle generieren
  • Die Vergabe diverser Stati wird ermöglicht
  • Übersichten über ToDo's, anstehende Rechnungen, geschriebene Rechnungen ect.

Fast alle genannten Aufgaben lassen sich mit Core-Funktionalitäten von Drupal lösen.
Es gibt Inhaltstypen

  • Kunden
  • Projekte
  • Leistungseinheiten

Und es gibt Stati als Taxonomie, auf die von den Projekten und Leistungseinheiten aus referenziert wird.

Die Übersichten über toDos und Rechnungen wurden mit Views gebaut.

Ein geringer Programmieraufwand entstand durch die Summen pro Zeile (Aufwand x Stundensatz), sowie die Berechnung der Gesamtsumme und Steuer.
Letzteres wurde mit Theme-Funktionen und Twig-Platzhaltern im Tabellen-Template der View gelöst.

Mehrere Leistungseinheiten bzw. Rechnungen können in einer Übersicht mit Quick Edit oder in einer Node-View gepflegt werden.

Für die PDF-Generierung kommt Entity Print zum Einsatz.

Die Rechnungs-View gibt es in zwei Varianten:

  • Mit Briefkopf als Hintergrundbild für Rechnungsversand als PDF per Mail
  • ohne Briefkopf für Druck auf Briefpapier und Abspeichern als PDF.

Das Layout ist sehr einfach gehalten und es wurden am Theme nur geringe CSS-Anpassungen gemacht.