Giter Club home page Giter Club logo

trialmanager's People

trialmanager's Issues

Create AddressLocationService

  • Convert LINZ data to database (see suggested format)
  • Add DB as app resource
  • Create DB model
  • Create AddressLocationService
  • Create tests

Suggested format:
Table - pKey, town_city, link(suburb_locality/s), location
Table - pKey, suburb_locality, location

Suggested method:

  1. Read in all town_city from DB
  2. Iterate through all town_city elements and see if address string contains them
  3. If so, create new list with suburb_localities of that town_city. Else read in ALL suburb_localities
  4. Compare string to list created in step 3.
  5. If suburb_locality found, take that location. If only town_city found, take that location. If nothing found, take trial location.

Complete Initial Brief

The initial brief need to be fleshed out

  • Discuss Issue
  • Complete initial consultation writeup
  • Identify social and physical factors
  • Propose a solution
  • Design specifications

Properly generate draw

Will need to factor in all specifications:

  • Honour competitors preferred day request
  • Competitors with travelling companions placed close together in draw, with at least one run between them if possible
  • Competitors with further to travel placed in later day of trial
  • Competitors with multiple runs on the same day should be well spread out
  • Locals should be run on the first day, unless they have three or more dogs

Optional Mappings

We should have some optional mappings, so that the user is locked in as little as possible. Optionals can include:

  • Preferred Day
  • Address
  • Status
  • Dog two upwards

The viewmodel could then predictively decide which modules to use from #43.

Create documentation

This will include video tutorials, and will cover:

  • Google Form creation, best practices and downloading
  • Event separation, for trials where events are combined into one form
  • TrialManager usage

Fix System.IO.FileNotFoundException in C:\Users\carls\Source\Repos\TrialManager\TrialManager\Bootstrapper.cs line 44

Version 1.0.0(1.0.0)

Stacktrace

TrialManager.Bootstrapper.ConfigureIoC(IStyletIoCBuilder builder) in C:\Users\carls\Source\Repos\TrialManager\TrialManager\Bootstrapper.cs:line 44;TrialManager

Stylet.Bootstrapper`1.ConfigureBootstrapper() in /_/Stylet/Bootstrapper.cs:line 39;Stylet

Stylet.BootstrapperBase.Start(String[] args) in /_/Stylet/BootstrapperBase.cs:line 77;Stylet

Stylet.BootstrapperBase.b__9_0(Object o, StartupEventArgs e) in /_/Stylet/BootstrapperBase.cs:line 48;Stylet

MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj);MS.Internal

MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state);MS.Internal

MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled);MS.Win32

MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o);MS.Win32

MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam);MS.Win32

MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg);MS.Win32

TrialManager.App.Main();TrialManager

Reason

System.IO.FileNotFoundException

Link to App Center

Update Trialist model

The Trialist model now needs to include address (string) and travel distance (double), to enable to main database to work with the location services being tracked in #11, #17

Fix System.InvalidOperationException in DialogHost.Show (Object content, Object dialogIdentifier, DialogOpenedEventHandler openedEventHandler, DialogClosingEventHandler closingEventHandler)

Version 1.0.0(1.0.0)

Stacktrace

MaterialDesignThemes.Wpf.DialogHost.Show(Object content, Object dialogIdentifier, DialogOpenedEventHandler openedEventHandler, DialogClosingEventHandler closingEventHandler);MaterialDesignThemes.Wpf

MaterialDesignThemes.Wpf.DialogHost.Show(Object content, Object dialogIdentifier);MaterialDesignThemes.Wpf

TrialManager.ViewModels.ShellViewModel.OnViewLoaded() in C:\Users\carls\Source\Repos\TrialManager\TrialManager\ViewModels\ShellViewModel.cs:line 52;TrialManager.ViewModels

MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj);MS.Internal

MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state);MS.Internal

MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled);MS.Win32

MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o);MS.Win32

MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam);MS.Win32

MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg);MS.Win32

TrialManager.App.Main();TrialManager

Reason

System.InvalidOperationException

Link to App Center

Import external data

  • Import from csv
  • Option to merge/overwrite
  • Prevent editing data while an import is in progress
  • Convert address to coordinate point. See #17
  • Shift to custom service

Use machine learning on previous draws

This is a long shot, but potentially we could use machine learning on user-modifed previous draws to improve the output, as there are so many variations to consider depending on which club, which trial and who's involved.

Move draw options to dialog

The draw setup bar is starting to become cluttered, and with the addition of new features planned such as #43, I propose that all the options be shifted to a dialog. This will also mean that better descriptions can be given for each option

Add location setter to DrawPage

  • Input TextBox below other controls
  • Autocomplete using address location service (#17)
  • Add location editor to DataImportPage, with resolver

Initial Concept Design

The initial conceptual design needs to be completed, and stakeholder feedback obtained.

  • Research Branding - develop logo + colour scheme
  • Mock initial UI concepts for desktop app
    • Import data page
    • Manage/View data page (merged with Import page)
    • Create draw page
  • Get stakeholder feedback on concepts

Consult with Robyn

Need to find out:

  • Discuss proposed specifications
  • Exactly what data needs to be stored by the system
  • How I can access the website
  • Ask if and how payments are managed

Add 'buffer runs'

This would see a customisable number of near-distance trialists be placed in the draw before far-distance trialists.

Migrate to SqlServer

Sqlite has many missing migration functionalities compared to other database providers. Given that the solution only runs on windows, consider shifting to a SqlServer database provider

Support multiple events in one trial

There are cases where one trial contains multiple events (e.g. Shorthead, Longhead, Zigzag Hunt and/or Straight Hunt). To simplify form creation, the user should only have to enter it once and select which events they wish each of their dogs compete in. TrialManager should then be able to determine this and create multiple draws.

Add helper tool to separate events

We are recommending in the documentation that users condense multiple events into one form, however we require them to do the heavy lifting of separating out the data into multiple CSV files.

TrialManager should have the ability to do this for them. I envisage a button placed in the Select Data File section of the DataImportView.

Note that this would supplement #46

Draw Creation 'Modules'

It would be prudent to give the user the ability to customise which parts of the draw algorithm are used, such that they could turn off e.g. the location sorting 'module'.
This will increase flexibility and will help solve the seemingly endless number of variations in the way trials are run

Module ideas:

  • Location Module
  • Reverse Location Module
  • Preferred Day Module
  • Dog Count Module
  • Reverse Dog Count Module

Complete final brief

  • Get stakeholder feedback on proposed solution and specifications
  • Decide on work environment and applications to use
  • Write up final brief
  • Get stakeholder feedback on final brief

Consult with Robyn #2

  • Ask about privacy policy. Mention how this may lock down future use of user data (without prior consent). Ask if required/wanted

Properly license

  • Add about section to app
  • Include license info in distribution

Add dialog functionality

The core project already has the capability to push dialog requests. Now need to implement the response to said requests in platform projects

Draw algorithm does not correctly compute days

The draw creation algorithm increments days for each draw entry, but does not reflect it in the final run position. This needs to be changed so that the DrawCreationOptions.MaxDogsPerDay property is properly respected.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.