Skip to content

gardenberg/imdikator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Imdikator frontend Build Status Dependency status

Prerequisites

  • Node.js (v0.10 or v0.12)
  • npm (v2.x or later)

Getting started

npm install

npm start

Now the app should be up and running on http://localhost:3000

URL schema

/steder/K0912/levekaar/gjennomsnittsinntekt/latest?q=dimensions=[innvkat3:[innv,alle],kjonn:[0]]&compare=[{municipality=m0002,year=2004}, …]

Styleguide

Sketches

https://drive.google.com/open?id=0B47juxCZT96UNFgxYlhsb0FQdFk

m# Architectural overview

https://dl.dropboxusercontent.com/u/250506/slack_for_ios_upload.jpg

How queries are represented internally - an example

{
  tableName: 'befolkninghovedgruppe',
  region: 'K0101',
  comparisonRegions: ['K0104', '3212'],
  unit: 'personer',
  year: '2014'
  dimensions: [
    {
      name: 'innvkat5',
      variables: [
        'alle',
        'innvandrere',
        'bef_u_innv_og_norskf',
        'norskfodte_m_innvf'
      ]
    },
    {
      name: 'kjonn',
      variables: [
        '0',
        '1'
      ]
    }
  ]
}

Preliminary API doc

API'et er tilgjengelig i et eget systemtestmiljø, der finnes det en egen WebApp med egne Collections i DocumentDB, en egne WebStorage-områder for opplasting og oppbevaring av filer.

  • CORS-støtte er i orden fra alle origins, med gyldige headere.
  • Opplasting av filer skjer asynkront fra selve parsingen av filene.
  • camelCase i kolonnenavn er implementert
  • implementert funksjonalitet for Exclude i spørringen mot API
  • Exclude og Include kan ikke brukes samtidig
  • Enten bruker man Include, eller Exclude
  • Bruk av Exclude trenger et ekstra kall til JSON-dokumentene som blir lastet opp til DocumentDB
  • Queues for WebJobs og StoredProcedure for BulkInsert lages når applikasjonen starter for å initiere verdier som trengs ved runtime
  • Dashboard for å se progresjon og prosess til WebJobs finnes på https://imdikator-st.scm.azurewebsites.net/azurejobs/#/jobs/ (krever innlogging og tilgang i Azure - hvis ønskelig ta dette med Espen etter ferien)
  • Opplasting av filer skjer ved: http://imdikator-st.azurewebsites.net/Home/UploadDatasetView
  • Dette skal pusses videre på, slik at man får oversikt over hvilke filer som venter på parsing, og hvilke filer som er ferdige, samt funksjonalitet for å slette valgt tabell med fil.
  • For øyeblikket er alle filene lastet opp og tilgjengelige via API

API-endpoints:

Eksempel på spørring i tabell "introdeltakere":

{
  "TableName": "introdeltakere",
  "Conditions": {
      "aar": [
          "2015"
      ],
      "bydelId": [
          "030101",
          "030102"
      ]
  },
  "Include": [
      "aar",
      "bydelId",
      "kjonn",
      "enhet",
      "tabellvariabel"
  ],
  "Exclude": []
}

Spørringen over vil ha identisk utfall med denne spørringen:

{
  "TableName": "voksnevideregaende",
  "Conditions": {
      "aar": [
          "2015"
      ],
      "bydelId": [
          "030101",
          "030102"
      ]
  },
  "Include": [
  ],
  "Exclude": [
    "fylkeId",
    "kommuneId",
    "naringsregionId"
  ]
}

GUI for å teste API-kjapt finnes på: http://imdikator-st.azurewebsites.net/Home/Testing

Steg for å gjenskape spørringen over: Velg tabell "introdeltakere" og trykk knappen "Get" Scroll ned og merk "aar", "bydelId", "kjonn", "enhet" og "tabellvariabel" i øverste linje under "Choose headers and values" Merk "2015" under "aar", "030101" og "030102" under "bydelId" og trykk knappen "Get" Respons vil komme øverst, sammen med en framstilling av hvordan spørringen mot API-et ser ut. Ved å merke av checkbox for "Format response?" vil responsen fra API-et bli formatert til et mer lesbart format.

About

IMDI Indikator

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.7%
  • Other 1.3%