Changes between Version 3 and Version 4 of Modules/Batches


Ignore:
Timestamp:
2011-01-12T12:13:10+01:00 (14 years ago)
Author:
Erik Roos
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Modules/Batches

    v3 v4  
    55== Requirements ==
    66
    7  * User must be able to add entities to a Batch in the UI in an intuitive way, e.g. by clicking on one or more entities in a lst/matrix or by dragging them into a designated part of the screen.
    8  * User must be able to always inspect the contents of their current Batch, e.g. by clicking a "shopping cart" icon in a corner of the UI.
     7 * User must be able to add entities to a Batch in the UI in an intuitive way, e.g. by clicking on one or more entities in a list/matrix or by dragging them into a designated part of the screen.
     8 * Batch must be able to hold different kinds of Molgenis entities at the same time, e.g. a Sample, two Animals and a Group of Individuals.
     9 * User must be able to always inspect the contents of their current Batch, e.g. by clicking on a "shopping cart" icon in a corner of the UI.
    910 * User must be able to edit or clear the Batch.
    1011 * Batch must be accessible from all parts (form screens, plugins) of the application.
    11  * It would be nice if there were two kinds of batches:
    12   * Static batch, a fixed list of entities
    13   * Dynamic batch, a list based on a query that is evaluated anew every time
     12 * There must be a UI screen where the user can apply one or more features on the current Batch. It would be very nice if you could select a number of entities in some sort of matrix view screen and then immediately apply features by for instance right-clicking on one of the selected items. In this way you'd even bypass the "shopping cart" and the need to go to a different screen for the feature application.
     13 * It would be nice if there were two kinds of Batches:
     14  * Static Batch, a fixed list of entities.
     15  * Dynamic Batch, a list based on a query that is evaluated anew every time. For this, we need some sort of query editor where users can build a query in an intuitive (graphical?) way, a bit like the current filtering tool in the standard Molgenis form screen.
     16 * Maybe it would be useful to support multiple Batches per user?
    1417
    1518== Technical Implementation ==
    1619
    17 The idea is to have a singleton class, say "Batches" that contains a map, which is composed of a Molgenis User's ID (from the auth package) as the key, and a list as the value. The list would contain Molgenis entities currently in the "batch". When the application requests the batch information, the map would be queried with the ID of the current Molgenis User, and the list would be returned.
     20The idea is to have a Singleton class, say "Batches", that contains a map, which is composed of a Molgenis User's ID (from the auth package) as the key, and a list as the value. The list would contain Molgenis entities currently in the Batch. When the application requests the Batch information, the map would be queried with the ID of the current Molgenis User, and the list would be returned.
    1821
    19 Future ideas include a query being executed at runtime to create a dynamic list based on certain parameters (Erik can expand? esp. with how this would work technically with regards to the above implementation idea).
     22If we were to support multiple Batches, we could make the map consist of User ID as the key and a list of lists of Batches as values. But how can we then find the right Batch, i.e. the Batch the user wants to work with at that moment?
     23
     24The dynamic Batch would have to be very different from the static Batch. It is not a list of entities but a list of query parameters. However, it would be handy to make the two kinds of Batches conform to the same interface, so we can have lists in our map that can hold both types at the same time.
     25