OK split attività su + giornate (chiede ed esegue...)
This commit is contained in:
@@ -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;
|
||||
|
||||
@@ -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,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 @@
|
||||
3.0.2204.0412
|
||||
3.0.2204.0416
|
||||
|
||||
@@ -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>
|
||||
|
||||
Reference in New Issue
Block a user