Vai al contenuto
v26.3

Sistema di plugin

DiKAS dispone di un sistema di plugin modulare. I moduli funzionali vengono sviluppati come DLL separate e caricati in fase di esecuzione.

Panoramica

DiKAS Core (dikascore.exe)
    ├── Kern-Kasse (POS, Artikel, Kunden, Personal, ...)
    └── plugins/
        ├── Dikas.Features.Disco.dll        ← Disco-Modul
        ├── Dikas.Features.Licensing.dll    ← Lizenz-Modul
        └── Dikas.Features.Warehouse.dll    ← Lager-Modul

Il nucleo funziona senza plugin. I plugin estendono il sistema con entità, endpoint API e pagine frontend aggiuntive.

Per gli amministratori: installare i plugin

Installare una DLL

  1. Ottenere la DLL del plugin dal fornitore
  2. Copiarla nella cartella plugins/
  3. Riavviare DiKAS
  4. Il plugin è automaticamente attivo

Installare un pacchetto .feature

I file .feature sono archivi ZIP con la DLL del backend e il codice frontend:

  1. Copiare il file .feature nella cartella features/
  2. Riavviare DiKAS
  3. Il pacchetto viene estratto e caricato automaticamente

Disattivare un plugin

  1. Rimuovere la DLL dalla cartella plugins/
  2. Riavviare DiKAS
  3. I dati del plugin restano nel database (possono essere riattivati in seguito)

Per gli sviluppatori: creare un plugin

Una guida dettagliata per gli sviluppatori è disponibile nella Guida per sviluppatori di plugin.

Breve panoramica

  1. Creare un nuovo progetto .NET (Dikas.Features.MeinPlugin)
  2. Implementare IFeatureModule (punto di ingresso)
  3. Definire le Entities (modelli di dominio)
  4. Scrivere i CQRS Handler (Commands & Queries)
  5. Creare i Controller (endpoint API)
  6. Registrare la Frontend-Extension (Angular)

Architettura

Dikas.Api.Domain          ← Entities, Interfaces
Dikas.Api.Application     ← CQRS Handlers, Services
Dikas.Api.Contracts       ← DTOs (kein Domain-Bezug!)
Dikas.Api.Infrastructure  ← Datenbank, externe Services
Dikas.Features.MeinPlugin ← Ihr Plugin

Implementazioni di riferimento

Plugin Complessità Particolarità
Disco Semplice 3 entità, CRUD standard
Licensing Complesso PKI, rate limiting, API legacy

Passo successivo

FAQ — Domande frequenti