- Web Frontend
- Read Timing values from device and add to groups
- Render result as PDF -> call to existing impl?
- Frontend
- PDF Generator
- Business Logic
- Data Reader(s)
- Repo(s)
- Read data from ALGE-Timing Timy3 using USB
- Output sample: 0005 C0M 22:05:41.08 00 [0]: Empty [1]: Measurement number [2]: COM? [3]: Time [4]: Emtpy [5]: Emtpy [6]: ?
- Read data from ALGE-Timing Timy3 using RS 232
- Output sample: ?
- Console Frontend Features (1.0 Release)
- Add Participant
- Add Group
- Add Participant to Group
- Create new Race
- Add Group to Race
- Read timing values from device and assign to Groups
- Calculate results
- Generate PDF(s)
- General Features
- Save Participants into file as JSON
- Save Groups into file as JSON
- Save Race into file as JSON
- Save as often as possible, into different files during read of timing values and assignment process (better save than sorry ;))
- Add Option to load Participants/Groups/Race
- Web Frontend Features:
- 2.0 Release
- Create race
- Add Participants
- Add Groups
- Add Participants to Group
- Add Groups to Race
- Assign Start Numbers
-
Resulting numbers are Immutable in Frontend, but Mutable on Server - Can be triggered multiple times with different results
-
- Add Option to trigger timing value load from device
- Test load from device with Web Frontend
- Add Option to generate PDF(s)
- Implement PDF generation in javascript
- Add different options (by Group, by Class, ...)
- Add Overview of all Participants ever, without groups
- Add Overview of all Groups ever, with latest Participants
- Add Overview of all Races
- Add Option to load old Races
- Add Option to create new Races
- Add new CRU(D) functionality to Race detail page
- Add Overview of Current Groups in loaded Race (old or new)
- Remove
CurrentContext
to enable easier live reload - (IMPORTANT) Test everything done up to this point
- Categories
- Create
- Read
- Update
- Classes
- Create
- Read
- Update
- Participants
- Create
- Read
- Update
- Groups
- Create
- Read
- Update
- Participant assignment
- Race
- Create new Race
- Load old Race
- Add Groups
- Manipulate Groups in Race only
- Add implementation of
onBlur
- Add implementation of
- Assign Start numbers
- Load Timing Values from Device
- Assign Timing Values to Groups
- Results
- Show overall results
- Toggle Classes grouping
- Unselect all Groups in Grouping
- Toggle Custom result
- Custom Result title is used for PDF
- Unselect is working
- Categories
- Release Preparations
- next Release
- Check if
Model.Group.Groupnumber
is still needed - Make
FinishTime
in Group nullable - Autofocus newly created element on large pages
- Sortable table
- Add Delete Option
- Group.js
- Participant.js
- RaceGroups.js
-
RaceParticipants.js - Categories.js
- Classes.js
-
Autosuggestion
might cause performance issues on larger pages (Group and Participant Overview), look for alternative or improve it - Overhaul workflow
- Add Option to Add Groups via the Race Overview page
- Remove global Group DB (To many changes between the years, to be of use)
- Rethink Pagination for global pages
- Participants
- i18n
- Basic Setup
- English
- Tirol
- German
- Results
- Multiselect/unselect (Whole group)
- Try to fetch name of list for name of generated file
- Check if
- future Release
- UX
- Improve Add functionality
- Data Science Stuff ;)
- Add Option to load multiple races for statistics
- Add search and display options
- Fastest group ever
- Time of group over multiple years
- ...
- UX
- 2.0 Release
t l timing_values_0.json
p l AllParticipants.json g l AllGroups.json r l TestSave.json r l FinalTestSave.json
p s AllParticipants.json g s AllGroups.json r s TestSave.json r s FinalTestSave.json
r c Test TestRace 2018-08-21 Here Someone
g c Group001 1 male g c Group002 2 female g c Group003 3 male g c Group004 4 female g c Group005 5 male g c Group006 6 mixed g c Group007 7 mixed g c Group008 8 mixed g c Group009 9 male g c Group010 10 female
p c Firstname001 Lastname001 87 one p c Firstname002 Lastname002 87 one p c Firstname003 Lastname003 87 one p c Firstname004 Lastname004 87 one p c Firstname005 Lastname005 87 one p c Firstname006 Lastname006 87 one p c Firstname007 Lastname007 87 one p c Firstname008 Lastname008 87 one p c Firstname009 Lastname009 87 one p c Firstname010 Lastname010 87 one p c Firstname011 Lastname011 87 one p c Firstname012 Lastname012 87 one p c Firstname013 Lastname013 87 one p c Firstname014 Lastname014 87 one p c Firstname015 Lastname015 87 one p c Firstname016 Lastname016 87 one p c Firstname017 Lastname017 87 one p c Firstname018 Lastname018 87 one p c Firstname019 Lastname019 87 one p c Firstname020 Lastname020 87 one
g ap Group001 Firstname001_Lastname001 Firstname002_Lastname002 g ap Group002 Firstname003_Lastname003 Firstname004_Lastname004 g ap Group003 Firstname005_Lastname005 Firstname006_Lastname006 g ap Group004 Firstname007_Lastname007 Firstname008_Lastname008 g ap Group005 Firstname009_Lastname009 Firstname010_Lastname010 g ap Group006 Firstname011_Lastname011 Firstname012_Lastname012 g ap Group007 Firstname013_Lastname013 Firstname014_Lastname014 g ap Group008 Firstname015_Lastname015 Firstname016_Lastname016 g ap Group009 Firstname017_Lastname017 Firstname018_Lastname018 g ap Group010 Firstname019_Lastname019 Firstname020_Lastname020
r ag Group001 Group002 Group003 Group004 Group005 Group006 Group007 Group008 Group009 Group010