OK split attività su + giornate (chiede ed esegue...)

This commit is contained in:
Samuele Locatelli
2022-04-04 16:32:51 +02:00
parent a05597fff3
commit 65f7f57e02
5 changed files with 53 additions and 5 deletions
@@ -290,7 +290,55 @@ namespace GPW.CORE.WRKLOG.Components
// aggiorno
if (currRecord != null)
{
await GDataServ.RegAttUpdate(currRecord);
//await GDataServ.RegAttUpdate(currRecord);
// prearo lista inserimento
List<RegAttivitaModel> data2ins = new List<RegAttivitaModel>();
// se inizio/fine stesso giorno processo
if (currRecord.Fine.Date.Equals(currRecord.Inizio.Date))
{
data2ins.Add(currRecord);
}
// in caso di eventuale supero della mezzanotte --> chiedo se si vuole split su 2 attività...
else
{
bool doSplit = await JSRuntime.InvokeAsync<bool>("confirm", "L'attività si protrae su più giorni, vuoi suddividere in record per ogni giornata?");
// chiedo verifica x splittare in N+1 periodi (N = giorni)
if (doSplit)
{
RegAttivitaModel currRA = currRecord.Clone() as RegAttivitaModel;
// primo record è inizio --> mezzanote
DateTime lastInizio = currRA.Inizio;
DateTime lastFine = currRA.Inizio.Date.AddDays(1).AddSeconds(0);
currRA.Fine = lastFine;
data2ins.Add(currRA);
// calcolo i gg
int numGG = currRecord.Fine.Date.Subtract(currRecord.Inizio.Date).Days;
// ciclo
for (int i = 0; i < numGG; i++)
{
// splitto... inizio = fine + 1 sec...
currRA = currRecord.Clone() as RegAttivitaModel;
currRA.Inizio = lastFine.AddSeconds(0);
// porto avanti ultima fine...
lastFine = lastFine.AddDays(1);
//// calcolo NUOVA fine x singolo ciclo
//lastFine = currRecord.Inizio.Date.AddDays(i + 2).AddSeconds(-1);
currRA.Fine = currRA.Fine > lastFine ? lastFine : currRA.Fine;
data2ins.Add(currRA);
}
}
else
{
data2ins.Add(currRecord);
}
}
// ciclo x inserire
foreach (var item in data2ins)
{
await GDataServ.RegAttUpdate(item);
}
}
// resetto clone e record corrente...
AppMServ.clonedRA = null;
+1 -1
View File
@@ -2,7 +2,7 @@
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<Version>3.0.2204.0412</Version>
<Version>3.0.2204.0416</Version>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
+1 -1
View File
@@ -1,6 +1,6 @@
<body>
<i>GPW - Gestione Presenze Web</i>
<h4>Versione: 3.0.2204.0412</h4>
<h4>Versione: 3.0.2204.0416</h4>
<br /> Note di rilascio:
<ul>
<li>
+1 -1
View File
@@ -1 +1 @@
3.0.2204.0412
3.0.2204.0416
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<item>
<version>3.0.2204.0412</version>
<version>3.0.2204.0416</version>
<url>http://nexus.steamware.net/repository/SWS/GWMS/stable/0/GWMS.UI.zip</url>
<changelog>http://nexus.steamware.net/repository/SWS/GWMS/stable/0/ChangeLog.html</changelog>
<mandatory>false</mandatory>