DocuKeep

LogoBild

Mobile and desktop app to manage the storage of exams via labeling with QR code


Table of contents

Description

With this project we want to support the people from the SG2 with their exam storage/archival endeavours. The Project has two components:

  • a desktop application, which tracks where each exam is stored, by generating a QR code that's placed on the box containing the to-be-archived exams, which will then be used to scan it once it's been placed. Users will then be able to search for exams and the system will tell them where they are, so that they can be easily found once the mandatory archival time is over or when someone requests to be given his physical exams
  • a mobile application, which allows users to place the exam into the archive by scanning the QR-Code on the box and on the shelf. It will also show users a list of "to-be-destroyed" exams once the mandatory archival time has passed

The mobile app on the other hand is for the people that will store the exams and will search them. In this app we can scan QR codes and get the room and shelf to simply the management of exams.

Installation

Install Flutter

Depending on your OS you need to differ between different installation processes which can be looked up at flutter website.

Decide for an IDE

Furthermore you have to decide for one IDE for example Visual Studio Code, Android Studio or IntelliJ.

Optional Extensions

Extensions that will support the work flow:

  • intellicode
  • todo-Therefore
  • code_spell_checker

Run project

To run the flutter project.

flutter run

To analyze the project’s Dart source code.

flutter analyze

To get more cli command you can look here

Functionality

Desktop

The desktop app helps to organize the warehouse. Therefore we implemented the following functionalities

  • QR-code generator: We generate for each box (contains multiple exams) a qr code that will automatically pushes an add order to our db
  • Barcode generator: We also have a generator for barcodes that helps to organize and intividualize your warehouse.
  • Search page:
    • To search for modules like 122 Datenbanken and create a find order (In case that a student wants an insight into the exam)
    • To search for a box and create a delete order
    • To see a table of taken exams and create a return order (In Case that a taken exam needsto be returned)
  • Delete page: Page to show all delete Orders in the system
  • Order page: Page to show all orders (highlighted in different colors) and delelte orders
  • Edit box page: Page to see all Boxes, delete and edit them

Mobile

The mobile app is our tool to process orders.

  • Order page: We get a list of orders and by clicking on them we can work through these
  • Scanner page: By scanning a qr code you can either work through a order or can get information about a box

Usage

Desktop

QR-code generator:

With this page we can add up to 5 exams to one box

QR1

Accepting that order is created

QR3

Now you can print the qr code

QR3

Barcode generator:

Select Room and shelf settings (Letters A-Z; Numbers 0-99)

BarCodeGen1

After pushing the button you get your barcodes

BarCodeGen3

Search page:

Scrollable search page

Search SearchTakenExams

To search for modules:

Button will only be enabled if a valid matrk number is entered

SearchModule

Mobile

Order page:

By pressing on an order you can work it through

orderPage

Scanner page:

First, scan qr code

qrCode

Next accept the popups

qrCodeBestaetigen2

Last but not least the barcode scanner

barCode

Finally you can accept it and then the order will be marked as done

barCodeBestaetigen

Attributions

Logo: Book icons created by Freepik - Flaticon

Libraries

barcode_content
box
box_contents
box_edit
create_data_for_bar_code
create_data_for_qr_code
delete_box
docukeep_db_connector
error
fibonacci
find_box
find_exam
find_taken_exams
generate_barcode
generate_qr_code
grouped_items_db
home_page_desktop
home_page_mobile
image_gen
login
main
order_page
order_page_desktop
orders
placeholder_page
printer
qr_content
qr_content_desktop
router
scan_type
scanner_page
start_point_for_find_pages
taken_exams
theme
util
widget_helper_class