Public
The Company Ankauf-Belege App mit Login, SQLite und Admin
authsqliteweb-app
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.

The Company – Kassenbuch & Rechner

Eine interne Web-App für The Company – eine RP-Wirtschaft im Spiel. Sie kombiniert einen Wirtschafts-Rechner (Ankauf, Wechselkurs, Verarbeitung, Verkauf, Gewinnverteilung) mit einem Kassenbuch zur Belegverwaltung (Erfassen, Filtern, Export). Alles auf Deutsch.

Funktionen

📊 Rechner-Tab (▣)

Berechnet live die komplette Wertschöpfungskette – vom Ankauf bis zur Gewinnverteilung:

  • ⚒ Ankauf – Preis pro Mule × Anzahl Mules = Ankaufskosten; daraus ergeben sich das gesamte Eisen (Mules × Eisen pro Mule) und das Metall (Eisen ÷ Eisen-für-1-Metall).
  • ↔ Geld-Wechselkurs – rechnet Grün in Schwarz um und umgekehrt. Faktoren frei einstellbar (Start: 100.000 $ Grün = 70.000 $ Schwarz).
  • ⚙ Verarbeitung – benötigte Füllungen = gesamtem Eisen ÷ Verarbeiter-Kapazität (aufgerundet).
  • ▣ Verkauf – Metall × aktiver Verkaufspreis = Verkaufserlös; Bruttogewinn = Erlös − Ankaufskosten. Ein-Klick-Preise für NPC und Waffenhersteller.
  • ◉ Gewinnverteilung – Anteil des Bruttogewinns: Mitarbeiterpool %, Company-Kasse % und Reserve (der Rest).

Alle Rechnerwerte können über ⚙ Einstellungen dauerhaft gespeichert und im Rechner live verändert werden.

🧾 Belege-Tab (▤) – Kassenbuch

  • 🔐 Passwortgeschützter Login (Session-Cookie)
  • 🧾 Belege erfassen – Bedient von, Angekauft von, Telefon, Zahlung (Grün/Schwarz/Bar), Mules × Preis = Gesamt, Notiz
  • 📊 Dashboard – Gesamtumsatz, Beleganzahl, Payout Grün, verkaufte Mules
  • 🔍 Suchen & Filtern nach Name, Telefon, Notiz und Zahlungsart
  • ⬇️ CSV-Export (deutsche Formatierung, UTF-8 mit BOM)
  • 📄 PDF-Export eines einzelnen Belegs
  • ⚙️ Einstellungen – anpassbare Wirtschaftswerte (Einkauf, Mules, Iron Mule, Ratio, Grün/Schwarz, Cap, NPC, Dealer, …)
  • 🗑️ Belege einzeln oder komplett löschen (mit Bestätigung)

Technik

  • Backend: main.ts – HTTP-Handler (Deno), SQLite-Datenbank (std/sqlite)
  • Frontend: app.html – SPA mit Vanilla JS, dunkles Design, zwei Tabs (Rechner / Belege)
  • Login: login.html
  • Belege und Konfiguration werden server-seitig in SQLite gespeichert (nicht im Browser).

API

MethodePfadBeschreibung
POST/api/loginAnmelden ({ "password": "…" })
POST/api/logoutAbmelden
GET/api/receiptsAlle Belege (neueste zuerst)
POST/api/receiptsBeleg anlegen
DELETE/api/receiptsAlle Belege löschen
DELETE/api/receipts/:idEinzelnen Beleg löschen
GET/api/receipts/:id/pdfEinzelnen Beleg als PDF exportieren
GET/api/csvCSV-Export
GET/api/configKonfiguration lesen
POST/api/configKonfiguration speichern

Konfiguration

  • Passwort: wird über die Umgebungsvariable APP_PASSWORD gesetzt. Ist sie nicht gesetzt, gilt das Standard-Passwort gta.
  • Wirtschaftswerte: können direkt in der App unter „Einstellungen“ (⚙) angepasst werden und werden in der Datenbank gespeichert. Sie füllen den Rechner-Tab.

Live

App öffnen