Skip to content

Commit a7d48a3

Browse files
committed
Merge branch 'stable'
2 parents ebda443 + b2b0daf commit a7d48a3

File tree

9 files changed

+126
-3
lines changed

9 files changed

+126
-3
lines changed

eFormAPI/Plugins/TimePlanning.Pn/TimePlanning.Pn/Infrastructure/Helpers/PlanRegistrationHelper.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,9 @@ IPluginDbOptions<TimePlanningBaseSettings> options
178178
planRegistration.Stop1Id /= 5 + 1;
179179
planRegistration.Stop1StoppedAt = planRegistration.Date.AddMinutes(planRegistration.Stop1Id * 5);
180180
}
181+
planRegistration.IsSaturday = midnight.DayOfWeek == DayOfWeek.Saturday;
182+
planRegistration.IsSunday = midnight.DayOfWeek == DayOfWeek.Sunday;
183+
await planRegistration.Update(dbContext).ConfigureAwait(false);
181184

182185
if (!dbAssignedSite.Resigned)
183186
{

eFormAPI/Plugins/TimePlanning.Pn/TimePlanning.Pn/Infrastructure/Models/WorkingHours/Index/TimePlanningWorkingHoursModel.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@ public class TimePlanningWorkingHoursModel
5454
public double FlexHours { get; set; }
5555
public double SumFlexStart { get; set; }
5656
public double SumFlexEnd { get; set; }
57+
public bool IsSaturday { get; set; }
58+
public bool IsSunday { get; set; }
5759
public string PaidOutFlex { get; set; }
5860
public int? Message { get; set; }
5961
public string CommentWorker { get; set; }

eFormAPI/Plugins/TimePlanning.Pn/TimePlanning.Pn/Resources/Translations.Designer.cs

Lines changed: 30 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

eFormAPI/Plugins/TimePlanning.Pn/TimePlanning.Pn/Resources/Translations.da.Designer.cs

Lines changed: 30 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

eFormAPI/Plugins/TimePlanning.Pn/TimePlanning.Pn/Resources/Translations.da.resx

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,4 +120,19 @@
120120
<data name="TokenNotFound" xml:space="preserve">
121121
<value>Token blen ikke fundet</value>
122122
</data>
123+
<data name="Week number" xml:space="preserve">
124+
<value>Uge nr</value>
125+
</data>
126+
<data name="Hours Saturday" xml:space="preserve">
127+
<value>Timer lørdag</value>
128+
</data>
129+
<data name="Hours Sunday" xml:space="preserve">
130+
<value>Timer søndag</value>
131+
</data>
132+
<data name="Yes" xml:space="preserve">
133+
<value>Ja</value>
134+
</data>
135+
<data name="No" xml:space="preserve">
136+
<value>Nej</value>
137+
</data>
123138
</root>

eFormAPI/Plugins/TimePlanning.Pn/TimePlanning.Pn/Resources/Translations.resx

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,4 +120,19 @@
120120
<data name="Shift 5: pause" xml:space="preserve">
121121
<value>Shift 5: pause</value>
122122
</data>
123+
<data name="Week number" xml:space="preserve">
124+
<value>Week number</value>
125+
</data>
126+
<data name="Hours Saturday" xml:space="preserve">
127+
<value>Hours Saturday</value>
128+
</data>
129+
<data name="Hours Sunday" xml:space="preserve">
130+
<value>Hours Sunday</value>
131+
</data>
132+
<data name="Yes" xml:space="preserve">
133+
<value>Yes</value>
134+
</data>
135+
<data name="No" xml:space="preserve">
136+
<value>No</value>
137+
</data>
123138
</root>

eFormAPI/Plugins/TimePlanning.Pn/TimePlanning.Pn/Services/TimePlanningWorkingHoursService/TimePlanningWorkingHoursService.cs

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,9 @@ public async Task<OperationDataResult<List<TimePlanningWorkingHoursModel>>> Inde
146146
IsLocked = (x.Date < DateTime.Now.AddDays(-(int)(maxDaysEditable ?? 0)) || x.Date == midnight),
147147
IsWeekend = x.Date.DayOfWeek == DayOfWeek.Saturday || x.Date.DayOfWeek == DayOfWeek.Sunday,
148148
NettoHoursOverride = x.NettoHoursOverride,
149-
NettoHoursOverrideActive = x.NettoHoursOverrideActive
149+
NettoHoursOverrideActive = x.NettoHoursOverrideActive,
150+
IsSaturday = x.Date.DayOfWeek == DayOfWeek.Saturday,
151+
IsSunday = x.Date.DayOfWeek == DayOfWeek.Sunday
150152
})
151153
.ToListAsync();
152154

@@ -2061,6 +2063,7 @@ public async Task<OperationDataResult<Stream>> GenerateExcelDashboard(TimePlanni
20612063
Translations.Worker,
20622064
Translations.DayOfWeek,
20632065
Translations.Date,
2066+
Translations.Week_number,
20642067
Translations.PlanText,
20652068
Translations.PlanHours,
20662069
Translations.Shift_1__start,
@@ -2214,6 +2217,7 @@ private void FillDataRow(Row dataRow, Worker worker, Microting.eForm.Infrastruct
22142217
dataRow.Append(CreateCell(site.Name));
22152218
dataRow.Append(CreateCell(planning.Date.ToString("dddd", culture)));
22162219
dataRow.Append(CreateDateCell(planning.Date));
2220+
dataRow.Append(CreateWeekNumberCell(planning.Date));
22172221
dataRow.Append(CreateCell(planning.PlanText));
22182222
dataRow.Append(CreateNumericCell(planning.PlanHours));
22192223
dataRow.Append(CreateCell(GetShiftTime(plr, planning.Shift1Start)));
@@ -2287,6 +2291,17 @@ private Cell CreateDateCell(DateTime dateValue)
22872291
};
22882292
}
22892293

2294+
private Cell CreateWeekNumberCell(DateTime dateValue)
2295+
{
2296+
var culture = CultureInfo.CurrentCulture;
2297+
var weekNumber = culture.Calendar.GetWeekOfYear(dateValue, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);
2298+
return new Cell()
2299+
{
2300+
CellValue = new CellValue(weekNumber.ToString()),
2301+
DataType = CellValues.Number
2302+
};
2303+
}
2304+
22902305

22912306
private string GetShiftTime(PlanRegistration plr, int? shift)
22922307
{
@@ -2409,7 +2424,11 @@ public async Task<OperationDataResult<Stream>> GenerateExcelDashboard(
24092424
Translations.Worker,
24102425
Translations.PlanHours,
24112426
Translations.NettoHours,
2412-
Translations.SumFlexStart
2427+
Translations.SumFlexStart,
2428+
Translations.Hours_Saturday,
2429+
Translations.Hours_Sunday,
2430+
Translations.Comments,
2431+
Translations.Message
24132432
};
24142433
List<string> totalHeaderStrings = new List<string>();
24152434
foreach (var header in totalHeaders)
@@ -2481,6 +2500,7 @@ public async Task<OperationDataResult<Stream>> GenerateExcelDashboard(
24812500
Translations.Worker,
24822501
Translations.DayOfWeek,
24832502
Translations.Date,
2503+
Translations.Week_number,
24842504
Translations.PlanText,
24852505
Translations.PlanHours,
24862506
Translations.Shift_1__start,
@@ -2637,6 +2657,14 @@ public async Task<OperationDataResult<Stream>> GenerateExcelDashboard(
26372657
var nettoHoursOverrideTotal = content.Model.Skip(1).ToList().Where(x => x.NettoHoursOverrideActive).Sum(x => x.NettoHoursOverride);
26382658
totalRow.Append(CreateNumericCell(nettoHoursTotal + nettoHoursOverrideTotal));
26392659
totalRow.Append(CreateNumericCell(content.Model.Last().SumFlexEnd));
2660+
var sumHoursSaturday = content.Model.Skip(1).Where(x => x.IsSaturday).Select(x => x.NettoHours).Sum();
2661+
var sumHoursSunday = content.Model.Skip(1).Where(x => x.IsSunday).Select(x => x.NettoHours).Sum();
2662+
var hasAnyCommentFromWorker = content.Model.Skip(1).ToList().Any(x => !string.IsNullOrEmpty(x.CommentWorker));
2663+
var hasAnyMessage = content.Model.Skip(1).ToList().Any(x => x.Message != null);
2664+
totalRow.Append(CreateNumericCell(sumHoursSaturday));
2665+
totalRow.Append(CreateNumericCell(sumHoursSunday));
2666+
totalRow.Append(CreateCell(hasAnyCommentFromWorker ? localizationService.GetString(Translations.Yes) : localizationService.GetString(Translations.No)));
2667+
totalRow.Append(CreateCell(hasAnyMessage ? localizationService.GetString(Translations.Yes) : localizationService.GetString(Translations.No)));
26402668
totalSheetData1.Append(totalRow);
26412669
totalRowIndex++;
26422670

eFormAPI/Plugins/TimePlanning.Pn/TimePlanning.Pn/TimePlanning.Pn.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
<PackageReference Include="Microting.EformAngularFrontendBase" Version="9.0.59" />
2929
<PackageReference Include="Microting.eFormApi.BasePn" Version="9.0.62" />
3030
<PackageReference Include="McMaster.NETCore.Plugins" Version="2.0.0" />
31-
<PackageReference Include="Microting.TimePlanningBase" Version="9.0.64" />
31+
<PackageReference Include="Microting.TimePlanningBase" Version="9.0.65" />
3232
<PackageReference Include="Sentry" Version="5.16.2" />
3333
</ItemGroup>
3434

-454 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)