E personalizzazione sia... cercando di dettagliare il tutto così la community può trarne beneficio.
Sicuramente il primo step è creare un campo personalizzato 'PREZZO MANODOPERA' a livello di intervento per contenere questo costo, che è quello che vogliono i tecnici ("i costi vengono calcolati in base a una serie di fattori imprevedibili quindi è meglio che si possa scrivere direttamente il costo della manodopera" -cit.).
Ma una volta creato il campo tramite la sezione 'campi personalizzati' devo anche modificare il database oppure è automatizzata questa parte?
Inizialmente stavo pensando che la una modalità piuttosto pulita (se osm non è pensato così meglio tenersi in acque conosciute) è fare si che quando l'intervento viene salvato si può andare a sincronizzare il costo orario della prima sessione di lavoro (se esistente) per corrispondere a quel valore (se diverso da zero). Ad esempio se le ore lavorate sono 2 ed il tecnico inserisce 100€ come prezzo della manodopera in actions.php (nello switch 'update') vado a modificare il prezzo orario e lo metto a 50€.
Ma una variazione forse pmigliore potrebbe essere fare un bottone in javascript che va ad impostare il prezzo della prima sessione con la logica di sopra facendo una richiesta ajax.
In alternativa una versione più complicata sarebbe andare a introdurre una riga o sessione 'fantasma' in Intervento->getRigheContabili() o Intervento->sessioni() per far funzionare la contabilità. Le implicazioni nel resto del programma però potrebbero essere ingestibili in quanto non so quali e quante modifiche di supporto si dovrebbe andare a fare, incrementando dunque la possibilità di bug vari con gli aggiornamenti.
Pareri o consigli sono ben accetti 🙂