Varastonhallintasovelluksen kehittäminen : Kamerapohjainen viivakoodinluku verkkoselaimessa
Parkkima, Janne (2025)
Parkkima, Janne
2025
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2025050910312
https://urn.fi/URN:NBN:fi:amk-2025050910312
Tiivistelmä
Tavoitteena oli kehittää prototyyppi varastonhallintasovelluksesta, jossa älypuhelimen tai tietokoneen kameraa hyödynnettiin viivakoodien lukemiseen avoimen lähdekoodin ratkaisuilla. Sovellus pyrittiin kehittämään käyttöympäristöriippumattomaksi ratkaisuksi, joka toimisi yleisesti käytössä olevilla verkkoselaimilla. Tavoitteisiin kuului myös kartoittaa selainten Web API –rajapintojen nykytila viivakodin lukemiselle ilman ulkoisten kirjastojen käyttöä.
Sovellus toteutettiin palvelinpuolen osalta Node.js- ja Express-teknologioilla sekä PostgreSQL-tietokannalla. Sovelluslogiikka ja tietokantamalli määriteltiin siten, että varastonhallinnan keskeiset toiminnot – kuten varastopaikkojen ja -saldojen luominen sekä ylläpito – tulivat mahdolliseksi. Käyttöliittymä toteutettiin React.js-kehyksellä yhdistettynä PWA-teknologioihin, mikä mahdollistaa sovelluksen asentamisen suoraan mobiililaitteen aloitusnäyttöön sekä sen rajoitetun käytön ilman verkkoyhteyttä.
Web API:n tarjoama kokeellisella tasolla oleva Barcode Detection -toiminnallisuus osoittautui lupaavaksi, mutta sen yhteensopivuudessa eri selainympäristöjen kanssa havaittiin vielä puutteita. Tämän vuoksi toteutuksessa hyödynnettiin polyfill-kirjastoa yhteensopivuuden parantamiseksi.
Tuloksena luotiin prototyyppi, joka voi toimia pohjana laajemmalle ja käytännön tarpeet täyttävälle varastonhallintajärjestelmälle. Ratkaisun todettiin toimivan eri verkkoselaimilla ja käyttöjärjestelmillä, ja tietokantaan rakennettu malli tukee valittuja varastonhallinnan osa-alueita ja soveltuu hyvänä lähtökohtana jatkokehitykselle.
Sovellus toteutettiin palvelinpuolen osalta Node.js- ja Express-teknologioilla sekä PostgreSQL-tietokannalla. Sovelluslogiikka ja tietokantamalli määriteltiin siten, että varastonhallinnan keskeiset toiminnot – kuten varastopaikkojen ja -saldojen luominen sekä ylläpito – tulivat mahdolliseksi. Käyttöliittymä toteutettiin React.js-kehyksellä yhdistettynä PWA-teknologioihin, mikä mahdollistaa sovelluksen asentamisen suoraan mobiililaitteen aloitusnäyttöön sekä sen rajoitetun käytön ilman verkkoyhteyttä.
Web API:n tarjoama kokeellisella tasolla oleva Barcode Detection -toiminnallisuus osoittautui lupaavaksi, mutta sen yhteensopivuudessa eri selainympäristöjen kanssa havaittiin vielä puutteita. Tämän vuoksi toteutuksessa hyödynnettiin polyfill-kirjastoa yhteensopivuuden parantamiseksi.
Tuloksena luotiin prototyyppi, joka voi toimia pohjana laajemmalle ja käytännön tarpeet täyttävälle varastonhallintajärjestelmälle. Ratkaisun todettiin toimivan eri verkkoselaimilla ja käyttöjärjestelmillä, ja tietokantaan rakennettu malli tukee valittuja varastonhallinnan osa-alueita ja soveltuu hyvänä lähtökohtana jatkokehitykselle.