Nekku ruokatilausintegraatio - espoon-voltti/evaka GitHub Wiki

Yleiskuvaus

Ruokatilausintegraatio tekee läsnäolovarauksiin perustuvat ruokatilaukset käyttäen Nekku-rajapintaa. Tilattavia ruokia ovat: aamupala, lounas, välipala, päivällinen ja iltapala. Lisää tietoa kohdista Tilauksen tekeminen Nekkuun ja Tilauksen tarkentaminen Nekkuun.

Ruoat tilataan läsnäolojen perusteella. Tarkemmat tiedot kohdasta 'Läsnäolojen päättely'.

Tilauksen tekeminen Nekkuun

eVakaan asetetaan ryhmälle Nekku asiakasnumero. Tilaus tehdään maanantaina aamuyöstä aina kahden viikon päähän. Tilaukset tehdään ryhmittäin ja asiakasnumeroittain perustuen lasten läsnäolotietoihin. Tarkempi päättely kohdassa Läsnäolojen päättely.

Tilauksen tarkentaminen Nekkuun

eVaka tarkentaa tilausta joka päivä seuraavalle päivälle ryhmäkohtaisesti. Tällöin keittiö tietää, että mitä ruokia sulatetaan seuraavalle päivälle. Tarkennukset eVaka muodostaa klo 9:30 mennessä joka aamu.

Erityisruokavalioiden tilaaminen

Koska Nekku rakentuu verkkokauppa-alustan päälle, siinä ei ole mitään yksikäsitteistä rajapintaa erityisruokavalioiden tilaamiseen. Sen sijaan se osaa kuvata eVakalle erityisruokavalioihin liittyvät kentät ja vaihtoehdot, jotka aterioiden tilaussivulla olisi niitä varten. Tämä data ei itsessään ole millään tavalla koneluettavaa, vaan sen perusteella kasataan käyttöliittymään dynaamisesti oikeanlaiset kentät Nekusta saatuine selitteineen. Niihin syötetyt arvot puolestaan tallennetaan muodossa, jossa Nekku haluaa ne tilauksen yhteydessä ottaa vastaan.

Erityisruokavalioiden tilauskenttien tiedot koostuvat kolmesta tasosta: erityisruokavalioista, niihin liittyvistä tilauslomakkeen kentistä ja kenttien mahdollisista arvoista. Tilauslomakkeen kentät voivat olla joko vapaatekstikenttiä, joihin ei liity ennakkoon määriteltyjä arvoja, tai sitten joukkoja checkboxeja, joiden mahdolliset arvot on lueteltu.

Kuvassa esimerkki lapsen sivulla olevista erityisruokavalio-tiedoista. Mukana myös tieto, syökö lapsi aamupalaa vaiko ei.

img_1.png

Huomaa että vaikka tätä kirjoittaessa Nekussa on olemassa vain yksi varhaiskasvatuksen erikoisruokavalio, ei ole teknistä estettä sille ettei niitä voisi olla useita. Tällöin käyttöliittymässä näkyvät kaikkien Nekun erikoisruokavalioiden tilauskentät, ja käytettävät optiot määrittyvät ateriakohtaisesti (esim. aamiainen erikoisruokavaliosta A ja lounas erikoisruokavaliosta B).

Läsnäolojen päättely

Varhaiskasvatus sijoitus

Lapselle tehdään ruokatilaus jos tämä on läsnäolovarausten perusteella paikalla ruokailuaikaan. Jos lapsella ei ole eVakassa läsnäolovarausta tai poissaolomerkintää, tälle tilataan vakioruoat: aamupala, lounas ja välipala.

Esiopetus tai valmistava opetus

Lapselle tilataan päiväkodin esiopetusaikana tarjottavat ruoat.

Tilausraportti

Tilausraportilla näkyy tiedot tehdyistä tilauksista Nekkuun. Tämä vastaa eVakan tekemiä Nekku-tilauksia.

  • Viikkotilaus tehdään 3vk päähän. Viikkotilaus tehdään 11 arkipäivää ennen perjantaisin aamuyöstä.
  • Päivittäistä tilausta tarkennetaan edellisenä päivänä

Tilausraportilta päiväkodin johtaja ja henkilökunta voivat tarkastaa Nekkuun menneet tilaukset. img_2.png

Asetukset

  • Ryhmäkohtainen Nekku asiakasnumero
  • Päiväkodin ruokailuajat
  • Päiväkodin aukiolopäivät
  • Päiväkodin esiopetusaika
  • Esiopetuksen toimintakaudet
  • Lapsen ruokavalio (Seka/Kasvis/Vegaani)
  • Lapsen erityisruokavalio
  • Lapsen "Syö aamupalaa"- tieto

Nekkusta eVakaan synkronoitavat tiedot

eVaka hakee nämä tiedot 10 minuutin välein Nekku rajapinnasta.

  • Erityisruokavaliot
  • Asiakastiedot
  • Tuotteet

Feature-flagit

Asettamalla front-end feature flag nekkuIntegration trueksi voidaan näyttää henkilökuntanäkymästä kaikki ruokatilauksiin liittyvät osiot; esim. päiväkodin ruokailuajat, ryhmän Nekku asiakasnumero, tilausraportti ja lapsen sivun ruokavalio ja "Syö aamupalaa"-tieto.

Ympäristömuuttujat / Spring propertyt

  • evaka.job.send_nekku_order.enabled = true Tilataan Nekku tilaus 1 viikoksi kerrallaan.
  • evaka.job.send_nekku_daily_order.enabled = true Tilataan tarkennustilaus edellisenä päivänä
  • evaka.job.sync_nekku_customers.enabled = true Synkataan Nekku asiakkaat eVakaan
  • evaka.job.sync_nekku_products.enabled = true Synkataan Nekku tuotteet eVakaan
  • evaka.job.sync_nekku_special_diets.enabled = true Synkataan Nekku erityisruokavaliot eVakaan
  • evaka.integration.nekku.enabled = true Mahdollistetaan Nekku integraatio
  • evaka.integration.nekku.url: Nekku-rajapinnan URL "...wp-json/wc-ceepos-nekku/v1/ asti"`
  • evaka.integration.nekku.apikey: API Key
  • nekkuMealDeductionFactor: FeatureConfigiin lisäys, jos halutaan vähentää automaattisesti esim. (nekkuMealDeductionFactor = 0.9) 10% ei erityisruokavalion tilauksista