Tehnoloģija Yii2 PHP MySQL Sphinx

Tehnoloģija

Pamatā izmantojam atvērtā koda tehnoloģijas


  • PHP
  • Yii un Yii2
  • MariaDB
  • Linux
  • Composer
  • Apache
  • MySql
  • Sphinx

Ietvars - Yii2

Jaunu sistēmu izveidei izmantojam workframe, kas veidots izmantojot Yii2. Tukšā sistēmā pēc noklusēšanas tiek iekļauti sekojoši moduļi:

  • lietotāju administrēšanas modulis (jaunu lietotāju izveidošana, labošana, jauna parole uz epastu un lomu administrēšana);
  • daudzvalodu modulis;
  • sistēmas uzņēmumu modulis (lietotājs var būt piesaistīts vairākiem uzņēmumiem, kurus var pārslēgt);
  • uzņēmumu modulis - pievienot jaunus uzņēmumus, koriģēt informāciju;
  • personu modulis;
  • HELP modulis - dod iespēju jebkuram ekrānam pievienot lietošanas aprakstu.

Ekrāni tiek veidoti standartizēti izmantojot CRUD (Create, Read, Update, Delete) ģeneratoru, kas ietver sekojošu funkcionalitāti:

  • ierakstu saraksts ar filtrēšanas un sortēšanas iespēju;
  • Jauna ieraksta izveides forma;
  • Skatīt/rediģēt ierakstu. Rediģēšanai tiek izmantots "editable" risinājums, kad uzklikšķinot uz labojamo datu lauku atveras lodziņš, kurā veic korekcijas;
  • saistīto tabulu ieraksti, kas tiek iekļauti ekrānā "Skatīt/rediģēt" ierakstu. Šajā sadaļā var pievienot, dzēst un rediģēt šos ierakstus.

Sistēmas tiek veidotas no moduļiem, kurus var pievieniot sistēmai pēc nepieciešamības. Patreiz tiek izmantoti sekojoši moduļi:

  • attachemntu modulis - var pievienot jebkurai tabulai. Vienam ierakstam var pievienot neierobežotu skaitu failu, papildinot tos ar komentāru un tipu;
  • auditpierakstu modulis, kuru var pieslēgt jebkurai tabulai. Automātiski reģistrē visas izmaiņas un pie ieraksta var apskatīt izmaiņu vēsturi, iekļaujot arī saistītās tabulas;
  • valūtas modulis, kas automātiski ielādē datus no
    • Latvijas Bankas (ECB),
    • Lietuvas Bankas (speciāls kurss grāmatvedībai)
    • Krievijas Centrālās Bankas kurss;
  • rēķinu modulis;
  • e-pasta izsūtīšanas modulis;
  • Messangers - nodrošina iekšējo informācijas apmaiņu, kas var tikt pievienota konkrētam tabulas ierakstam (piemēram rēķinam);
  • Kalendārs - izmanto svētku dienu, brīvdienu reģistrēšanai, ko pēc tam var izmantot aprēķinos (piemēram atvaļinājuma uzskaitē)
  • QR Code - QR kodu ģenerēšana
  • API modulis - ļauj izveidot API interfeisu
  • EDIFACT - nodrošina EDIFACT ziņojumu apstrādi
  • kodu karšu modulis - lietotāji papildus drošībai autorizējoties izmanto kodu kartes

Jaunu bibliotēku pievienošanai un atjaunošanai izmantojam composer.

Jaunas sistēmas izveides process

  • Izveido jaunu sistēmu uz workframe bāzes;
  • pievieno jau gatavos moduļus, nepieciešamības gadījuma papildinot to funkcionalitāti;
  • jaunu moduļu veidošana:
    • izveido datubāzē tabulas ar relācijām;
    • ģenerē tabulu modeļus;
    • ģenerē nepieciešamos ekrānu CRUD (Create, Read, Update, Delete);
    • koriģē ekrānus;
    • papildina tabulu modeļus ar biznesa loģiku;
    • veido unit testus.