Difference between revisions of "MasterList"

From mn/ifi/inf5750
Jump to: navigation, search
(added pictures to search function)
(Added info about detailed org unit)
Line 59: Line 59:
  
 
[[File:Show all units.png|frameless]]  [[File:Show search result 1.png|frameless]] [[File:Show search result 2.png|frameless]] [[File:Show search result 3.png|frameless]]
 
[[File:Show all units.png|frameless]]  [[File:Show search result 1.png|frameless]] [[File:Show search result 2.png|frameless]] [[File:Show search result 3.png|frameless]]
 +
 +
== Organisation unit ==
 +
From the search window you can select a organisation unit to view more details about it.
 +
 +
The details of the organisation unit is:
 +
* Name
 +
* Level in the hierarchy
 +
* Code
 +
* ID
 +
* Programs it offers
 +
* Datasets
 +
* Its ancestor and children in the hierarchy level
 +
* Location on map (if coordinates not available, default is country view)
 +
 +
In addition to this we also have included a form witch a user can file for changes on selected organisation unit. This will then be saved and admin users can see these proposals in the proposal tabs and decide what to do with them.
 +
 +
[[File:Detail unit.png|frameless]] [[File:Detail unit map default.png|frameless]] [[File:Detail unit map.png|frameless]] [[File:Detail unit proposal.png|frameless]]
  
 
== Milestones ==
 
== Milestones ==

Revision as of 22:37, 5 December 2017

 Group members

  • Dana Zangana
  • Niklas Mortensen Hamang
  • Minh Duong
  • Thach Khoi Pham

Link to the repository: https://github.uio.no/MasterList/Master-Facility-List.git(Private)

Product description

Assignment:

Master Facility List

Design:

The app have two main views: a user tabs; and an administrator tabs.

  • User tabs:
  1. The user can search simply by name or more advanced using a combo of multiple variables
  2. Browse information on different organisatation-units.
  • Admin tabs:
  1. The admin-user can view proposal of organisatation-units
  2. Access to config tab where the user can decide which program to show

Summary:

To make a web app that allow for user friendly searching, browsing and proposing changes for facilities within the DHIS2 data, with main focus on searching,

Features:

Users should be able to:

  • To find all units, search based on:
    • The units name.
    • The units group.
    • The units hierarchy.
    • The data set information
    • Or a combination of these.
  • View information about the unit, like:
    • GIS coordinates, if available.
    • The units group membership
    • The units data set
    • The stats of the unit
  • Submit change proposals

Administrators should be able to:

  • View change proposals relevant to the units they manage
  • Mark relevant proposals as complete/invalid, marked proposals should be hidden by default.
  • Manage data to be show for a given unit

Search function

The search function in our app is implemented in two ways:

  • Simple search
  • Advanced search

The simple search lets you search for any organisation unit in selected country (Sierra Leone). We take use of the DHIS2 api and fetch and display all organisation unit that match with the users search input. We use the keywork "ilike" that is shown in DHIS2 documentation about organisation units. This means that it will find all the organisation units that contains the search sting, without case sensibility.

The advance search works very similar as the simple, but here you can combine fields of your search to narrow the result and get more specific search result. Here you can further specify the city and district of the organisation unit, what kind of program they offer, what dataset they have and which organisation group they are a part of.

Simple search.png Advance serach.png

The result can then be seen and browsed.

Show all units.png Show search result 1.png Show search result 2.png Show search result 3.png

Organisation unit

From the search window you can select a organisation unit to view more details about it.

The details of the organisation unit is:

  • Name
  • Level in the hierarchy
  • Code
  • ID
  • Programs it offers
  • Datasets
  • Its ancestor and children in the hierarchy level
  • Location on map (if coordinates not available, default is country view)

In addition to this we also have included a form witch a user can file for changes on selected organisation unit. This will then be saved and admin users can see these proposals in the proposal tabs and decide what to do with them.

Detail unit.png Detail unit map default.png Detail unit map.png Detail unit proposal.png

Milestones

We have divided the project into a couple of main tasks:

  • Create a basic web app for DHIS2 [Complete]
  • A search bar which is able to retrieve info from the DHIS2 api [Complete]
  • A detail search of viewing units and filtering search results [Complete]
  • Able to draw and view organisation units on the map [Complete]
  • Able to edit organization units [Complete]

Timeline

Week Description
41-42 Build group & choose assignment
41-44 Work on wiki for the 1. of November
42-43 Build base app, familiarize with frameworks
43-45 work with API-calls
44 Work with front-end of the search and display views
44-46 Implementing functionality for search, display and configuration
46-47 Bug fix and finilizing

Licensing

Angular 4, Jquery & npm all fall under the MIT license. As does the Leaflet and Angular-cli. So we choose to continue to license under the MIT license to keep open and none restrictive to derived work.

Architecture

Information/data should only be retrieved on an as needed basis. Search should be altered when the user commits parameters.

Dataset configuration should be stored using the units ID.

DataStore { 
		config: { 
			orgUnitID: [
				dataSetID
				]
			}
		}

Proposals are stored in: https://inf5750.dhis2.org/demo/api/dataStore/p-[organisationUnitId]/[proposal ids]

Technologies used
  • Angular 4
  • Typescript
  • CSS, HTML, jQuery
  • LeafletNode & npm
  • Angular-cli

How we are dividing tasks within the group

Built basic app - Thach

Basic search - Dana & Nicklas

Displaying Info - Minh & Thach

Advanced Search - Dana & Nicklas

Sending Proposal changes - Minh & Thach

View proposal - Minh

Choosing configuration - Nicklas & Thach