Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Descrizione branch disponibili #1026

Open
Dasc3er opened this issue Mar 2, 2022 · 1 comment
Open

Descrizione branch disponibili #1026

Dasc3er opened this issue Mar 2, 2022 · 1 comment
Assignees
Labels
discussione Discussioni sulle funzionalità e i loro utilizzo

Comments

@Dasc3er
Copy link
Contributor

Dasc3er commented Mar 2, 2022

Predispongo una descrizione rapida delle branch principali attualmente disponibili nel progetto.

Branch 3.x

Rescrittura del progetto con tecnologie JS più recenti, proposta e portata avanti da @maicol07.
Include istruzioni per compilazione e funzionamento.

Branch summernote

Sostituisce CKEditor con Summernote come editor di testo, tramite il campo personalizzato "editor" (diverso da "ckeditor").

Branch revisione-scadenze

Revisione del sistema delle scadenze, per permettere il raggruppamento delle stesse in modo più controllato e distinto dai documenti.
Nello specifico, prevede l'introduzione delle tabelle co_gruppi_scadenze e co_scadenze, con la trasformazione già completa per la retrocompatibilità.

Branch revisione-sedi-utenti

Separazione della sede legale da an_anagrafiche a an_sedi, con relativa catena di modifiche a id_sede nei vari moduli.

Branch revisione-ritenute-rivalse

Tentativo di generalizzare la gestione di ritenute e rivalse a livello di documento, per meglio rappresentare a specchio la gestione prevista da Fatture Elettronica.

Branch separazione-segmenti

Separazione dei segmenti (filtri manuali selezionabili dall'utente) dai sezionali (componenti fiscali per i documenti), effettuata a livello di database per maggiore integrità.

Branch legacy

Porting della versione master con alcune modifiche per il funzionamento come modulo Laravel.

Branch laravel

Versione di Laravel con alcune correzioni per permettere l'installazione di moduli.
Richiede la presenza della branch legacy in una cartella legacy allo stesso livello per funzionare correttamente (modificabile attraverso il file composer.json una volta completati gli sviluppi).

@Dasc3er Dasc3er added the discussione Discussioni sulle funzionalità e i loro utilizzo label Mar 2, 2022
@maicol07 maicol07 pinned this issue Apr 9, 2022
@Dasc3er Dasc3er removed their assignment Oct 21, 2022
@Dasc3er
Copy link
Contributor Author

Dasc3er commented Oct 29, 2022

Aggiornamento per migliorare l'informazione riguardo la possibile versione 2.5, che prevede l'utilizzo di Laravel come base per il progetto.

Lo sviluppo è al momento fermo in 2 branch a circa 2000 commit da master: laravel, e legacy.

La branch laravel è un progetto standard Laravel v9, con alcune feature di OpenSTAManager che sono state introdotte e completamente aggiornate.
La branch legacy è un semplice clone di master, con un numero minimo di commit finalizzato a correggere problemi con percorsi relativi di path e URL con l'introduzione di Laravel. Inoltre, presenta alcuni file aggiuntivi (in particolare https://github.com/devcode-it/openstamanager/blob/legacy/routes.php) che permettono l'installazione della branch come package Laravel completo, con routes di retrocompatibilità.

Il porting con Laravel contiene al momento le seguenti feature:

La configurazione di base per Laravel si effettua con un semplice clone della branch in una cartella (./laravel/) e nella stessa cartella un clone della branch legacy (./legacy). Questo è fisso in composer.json sotto "url": "../legacy", ma pronto per modifiche future per operazioni più automatiche.

La ripresa dello sviluppo dovrebbe essere semplice da effettuare: installare le dipendenze della cartella legacy/ come OpenSTAManager standard (npm run develop-OSM), e in modo simile nella cartella laravel/ (npm run develop-OSM).

Includo plan originale al riguardo, originalmente indicato in (#710):
Questa issue descrive le scelte effettuate per la versione futura del gestionale OpenSTAManager (ipoteticamente versione 2.5), finalizzata a migliorare la struttura del gestionale secondo standard più recenti.

Framework di base
Come framework di base per l'aggiornamento del gestionale è stato scelto Laravel (8.x): https://laravel.com/docs/8.x
Per la gestione indipendente dei moduli, si prevede l'utilizzo di un pacchetto dedicato Laravel-Modules: https://nwidart.com/laravel-modules/

Lo sviluppo della nuova versione avviene in due branch distinte:

  • legacy, dove viene mantenuta una versione 2.4.x aggiornata del gestionale con alcune modifiche (per retrocompatibilità e semplicità di sviluppo);
  • laravel, contenente la base di Laravel 8.x e le strutture aggiornate.

La branch legacy viene utilizzata per simulare il gestionale in versione 2.4.x (con tutti i comportamenti relativi) all'accesso secondo i link storicamente utilizzati (controller.php, editor.php, ...).

Lo sviluppo di un modulo deve seguire le istruzioni dei pacchetti Laravel e lo standard previsto da Laravel-Modules, iniziando attraverso il seguente comando:
php artisan module:make

Per semplificare la creazione dei contenuti, sono disponibili i template di default nella cartella resources/views/ liberamente utilizzabili per creare grafiche personalizzate.

Modifiche di accesso
Per l'introduzione di Laravel, deve essere reso disponibile il solo accesso alla cartella public/.


La roadmap qui indicata non è definitiva e può essere soggetta a cambiamenti anche considerevoli.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussione Discussioni sulle funzionalità e i loro utilizzo
Projects
None yet
Development

No branches or pull requests

3 participants