nl fi en en nl en en nl nl en nl ru en nl de en en en en nl ru nl nl nl nl hu nl nl en nl en nl nl nl pt gl en nl nl en nl nl nl nl nl nl nl pt nl nl nl nl nl nl nl nl en nl nl nl nl nl nl nl nl nl nl en uk nl nl uk nl nl nl nl nl nl nl en nl nl nl fi nl nl nl nl nl nl nl nl en nl pt nl ja en ja ja en it en en en ja en it mr en en nl nl en nl gl nl en nl en en nl en en en en en en en en en en en en en en en en el en en nl en nl nl fr nl en nl nl nl en en en en en en en en en en en en en en en en
Fludizz Rol: deelnemer Deskundig met: GL-Inet, Glasvezel lassen, Iptables, Linux, Netwerken, Nftables, OpenVPN, Python, RaspberryPi, Software Beginnend met: ENC28J60 Werkt aan: Geen projecten :(
Panter Rol: deelnemer Deskundig met: Programmeren Beginnend met: Arduino, Python, RaspberryPi, Robotica, Solderen Werkt aan: Geen projecten :(
Gebruikt in projecten: 10 watt led flood light + esp8266, Beamercontrol, Binaire klok, Conrad BEL-8006 radiothermostaat, DMX Homelight, Deurbel, FlatPackers, Frack Kassa, FrackBot, LPD8806-Lan, Ledwall, Lightbox, Localchat, Mac2user, Paintball sentry, Pixelvloed, PlainTLV, Quote database, RadioCurses, RobotArm, SpaceAnnounce, SpaceSlurper, Spacestate Switch, Tranquillity, Twitterboom, Vloerplan gcode, Voedselbank
Deskundigen: Fludizz, Elmer, CodeHunger, Failbaitr
Een kassa applicatie voor het bijhouden van de verkopen van de bar in Frack
Frack-ws01 in gebruik als kassa.
Dit was het oude Frack Kassasysteem dat tot 14 mei 2019 bij frack gebruikt werd. Dit systeem is inmiddels vervangen met revbank. Deze pagina blijft aanwezig als archief. Dit project is ontstaan uit de Python workshops die
Elmer de Looff (Elmer) Rol: niet-deelnemer Deskundig met: Arduino, ENC28J60, Elektronica, GnuCash, HTML, LPD8806, Linux, MediaWiki, Mercurial, Netwerken, OpenVPN, Programmeren, Python, SSH, Software, Solderen Beginnend met: Dm-crypt, Javascript Werkt aan: Geen projecten :(
geeft. In Week 5 hebben we SQLite database behandeld, daardoor kwam er bij de Code-Jam die volgde het idee naar boven om een Kassa systeem te ontwerpen voor de space. Hieruit voortvloeiend ben ik verder gaan werken aan deze applicatie en is er een testversie tot stand gekomen (Uiteraard met de nodige hulp van Elmer. Aangezien we een losse barcode scanner hebben liggen en Frack-ws01 nog geen nuttig doel had, zijn deze hiervoor in gebruik genomen.
4 Beknopte gebruikshandleiding GUI editie
5 Beknopte gebruikshandleiding Commandline editie
Frack Kassa is sinds 14 mei 2019 vervangen door revbank. De redenen hiervoor zijn hier beschreven. Frack Kassa is nu een gearchiveerd systeem dat niet meer gebruikt wordt.
De broncode zoals hij op 2019-04-09 gevonden is, is online gezet als archief: zie frackbar.tar.
Basis versie zonder de admin functies.
Werkt nog altijd samen met de barcode scanner.
Barcode scanner en muis zijn nodig als input.
Kleine redesign voor de database (niet langer insert/select only)
Alle functies werken nu duidelijk, commentaar aangaande user-interface is verwerkt:
"I'm a Member" is nu een checkbox i.p.v. een toggle button
De Cancel button in de creditcard dialoog is nu "No Card" geworden (om een gescande kaart ongedaan te kunnen maken)
Aantal kleine bugfixes en wat input sanitizing.
Versimpelt design, interface aangepast naar aanleiding van suggesties.
Admin functies die volledig werken met de volgende functies:
Tonen van de creditcards
Bij sales met creditcards word niet meer geregistreerd *welke* creditcard de sale heeft gedaan (privacy redenen),
Creditcard top-up dialoog is ingevoerd en werkt!
Eerste versie die in gebruik genomen is.
Input verbeterd door achter elke raw_input() .decode('utf-8') te plaatsen.
User interface verduidelijkt middels BOLD texten
Volgorde van invoer aangepast, applicatie vraagt nu als eerste naar betaalmethode.
Mogelijkheid tot het scannen van meerdere producten per transactie.
Invoer afhandeling is aangepast: Hij accepteerd nu alleen geldige codes.
Basis ADMIN gedeelte toegevoegd met de volgende functies:
Overzicht van verkopen. (Periodes: Alle, huidige maand, vorige maand, huidige jaar, vorige jaar)
Overzicht van CreditCards. (Aangemaakt: Alle, huidige jaar, vorige jaar)
Basis CSV export, alleen 'dom' tabellen dumpen: Alle, alleen sales, alleen product of alleen creditcard
Beknopte gebruikshandleiding GUI editie
Beknopte gebruikshandleiding Commandline editie
Beginscherm van de kassa.
Voor het besturen van de applicatie zijn enkel de barcode scanner en de bijbehorende barcode-sheets nodig, deze sheets liggen naast de scanner op de bar.
De applicatie vraagt als eerste om te scannen of je met geld (CASH scannen) wil betalen of met een prepaid creditcard (je kaart scannen) wil betalen.
Indien je kiest voor betalen met geld zal je gevraagd worden of je deelnemer (MEMBER) bent of niet (VISITOR), bij creditcard betalingen word deze stap overgeslagen omdat deze informatie bij de kaart geregistreerd is.
Na het kiezen van je betaalwijze kom je uit bij de product selectie, nu kan je de producten die je wilt afnemen scannen.
Zodra je alles gescant hebt moet er afgesloten worden door "DONE" te scannen. De applicatie geeft dan aan wat je allemaal geselecteerd hebt en wat het je zou gaan kosten in totaal.
De aankoop kan je vervolgens bevestigen door ACCEPT te scannen of annuleren door CANCEL te scannen. Hierna zal de applicatie 5s het overzicht blijven tonen voordat deze terug springt naar het startscherm.
De admin interface kan bereikt worden door ADMIN te scannen in plaats van de betaalwijze. Deze mode kan alleen gestart worden vanuit de betaalmethode selectie! Deze interface geeft een lijst met opties, voor deze opties zit de bijbehorende barcode op het ADMIN blad bijgevoegd. Aangezien er voor deze overzichten geen stappen doorlopen hoeven te worden is er weinig verdere uitleg nodig dan "Lees het scherm" ;) Enige voetnoot voor CSV exports is dat deze opgeslagen worden in de map waarin het kassaprogramma draait (op de BarPC is dat /home/frack/)
De database is opgebouwt uit 3 tabellen en is identiek voor beide versies:
`ID` (Unique key, autoincrement)
`ID` (Unique key, autoincrement)
`ID` (Unique key, autoincrement)
`product` (Dit is gekoppeld aan 'product'.`ID`)
`card` (Dit veld is leeg of gekoppeld aan 'creditcard'.`ID`)
Dit design is relatief simpel en zorgt ervoor dat de database in principe een INSERT INTO / SELECT database is (De enige uitzondering hierop is de creditcard database). Om bijvoorbeeld prijswijzigingen door te kunnen voeren zonder dat je verkoop overzicht compleet verandert, kan simpelweg hetzelfde product met dezelfde barcode en de nieuwe prijzen toegevoegd worden met een hoger `ID` dan het oude. Dit zou automatisch goed moeten gaan door de auto-increment op het veld `ID`. De applicatie zelf haalt namelijk het 'nieuwste' resultaat op in plaats van alle resultaten voor een barcode.
Full touch screen versie maken die zonder barcode scanner gebruikt kan worden.
Indien je suggesties hebt voor de applicatie, plak ze rustig hieronder! Met een beetje geluk eindigen ze op de Todo list ;)
This page was last edited on 15 May 2019, at 15:15.
Content is available under Creative Commons Attribution-ShareAlike 3.0 Netherlands License unless otherwise noted.