This commit is contained in:
=
2020-06-25 16:47:11 +02:00
parent b0684fa03f
commit cf6fdeaa79
@@ -29,8 +29,8 @@ export default class GanttRow extends Vue {
/*
Questa funzione calcola la posizione verticale di ogni blocco seguendo l'ordine dei blocchi ed utilizza una variabile
per memorizzare temporaneamente la posizione assegnata ad ogni blocco.
Questa funzione calcola la posizione verticale di ogni blocco seguendo l'ordine dei blocchi ed utilizza
una variabile "rows" per memorizzare temporaneamente la posizione assegnata ad ogni blocco.
*/
verticalPosition(block: server.Modblock, rows: { id: number, from: number, to: number }[][] = [], recurring: boolean = false) {
let idx = this.blocksInSection.indexOf(block);
@@ -44,7 +44,11 @@ export default class GanttRow extends Vue {
let myEndPosition = myStartPosition + blockDuration(block, this.ganttOptions, true);
// cerco la prima delle righe disponibili che avrebbero posto per il mio blocco
// una riga è disponibile se non ci sono blocchi che occupano lo spazio che mi servirebbe
let myrow = rows.filter(r => r.filter(b => (b.from >= myStartPosition && b.from <= myEndPosition) || (b.to >= myStartPosition && b.to <= myEndPosition)).length == 0).shift();
// se non ho trovato una riga allora non c'è posto oppure non ci sono righe..
// aggiungo eventualmente una nuova riga
if (!myrow) rows.push(myrow = []);
// inserisco il mio blocco per occupare la posizione