This commit is contained in:
2021-06-24 23:06:47 +02:00
parent 569991b011
commit 2c80644224
22 changed files with 2133 additions and 926 deletions

View File

@@ -2328,8 +2328,32 @@ Public Class frmDienstplanVariabel
End Sub
Public Function GetWeekStartDate(weekNumber As Integer, year As Integer) As Date
Dim datum = New DateTime(year, 1, 1)
Dim firstDayOfYear = datum.DayOfWeek
Dim result = datum.AddDays(weekNumber * 7)
If firstDayOfYear = DayOfWeek.Monday Then Return result.Date
If firstDayOfYear = DayOfWeek.Tuesday Then Return result.AddDays(-1).Date
If firstDayOfYear = DayOfWeek.Wednesday Then Return result.AddDays(-2).Date
If firstDayOfYear = DayOfWeek.Thursday Then Return result.AddDays(-3).Date
If firstDayOfYear = DayOfWeek.Friday Then Return result.AddDays(-4).Date
If firstDayOfYear = DayOfWeek.Saturday Then Return result.AddDays(-5).Date
Return result.AddDays(-6).Date
End Function
Private Function GetWeekStartDate(weekNumber As Integer, year As Integer) As Date
'Private Function GetWeekStartDate3(weekNumber As Integer, year As Integer) As Date
' Dim calendar As Calendar = CultureInfo.CurrentCulture.Calendar
' Dim jan1 As DateTime = New DateTime(year, 1, 1)
' Dim daysOffset As Integer = DayOfWeek.Monday - jan1.DayOfWeek
' Dim firstMonday As DateTime = jan1.AddDays(daysOffset)
' Dim firstMondayWeekNum As Integer = calendar.GetWeekOfYear(firstMonday, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday)
' Dim firstWeekDay As DateTime = firstMonday.AddDays((weekNumber - firstMondayWeekNum) * 7)
' Return firstWeekDay
'End Function
Private Function GetWeekStartDate2(weekNumber As Integer, year As Integer) As Date
Dim startDate As New DateTime(year, 1, 1)
Dim weekDate As DateTime = DateAdd(DateInterval.WeekOfYear, weekNumber - 1, startDate)
Return DateAdd(DateInterval.Day, (-weekDate.DayOfWeek) + 1, weekDate)
@@ -2342,6 +2366,7 @@ Public Class frmDienstplanVariabel
aktDate = GetWeekStartDate(txtKW.Text, txtKWYear.Text)
aktWoche = DateToWeek(aktDate).Substring(4, 2)
aktJahr = DateToWeek(aktDate).Substring(0, 4)
initWeekInfo()
initDienstplan()
Me.Cursor = Cursors.Default