Index: ActiviteitenOpvolging/ActiviteitenOpvolging/mappers/CacheMapper.vb
===================================================================
diff -u -r1679 -r1680
--- ActiviteitenOpvolging/ActiviteitenOpvolging/mappers/CacheMapper.vb (.../CacheMapper.vb) (revision 1679)
+++ ActiviteitenOpvolging/ActiviteitenOpvolging/mappers/CacheMapper.vb (.../CacheMapper.vb) (revision 1680)
@@ -71,7 +71,7 @@
'''
'''
'''
- Public Function HasColumn(ByRef dr As OdbcDataReader, columnName As String) As Boolean
+ Private Function HasColumn(ByRef dr As OdbcDataReader, columnName As String) As Boolean
'Loop through each row.
For Each row As DataRow In dr.GetSchemaTable().Rows
'Check if column name matches defined one.
@@ -84,57 +84,6 @@
#End Region
'''
- ''' Fetch all the work items for a workpost.
- ''' The corresponding query will get fetched in here.
- '''
- ''' The index of the workpost, 0 based
- ''' A list of all the work items with their activities
- Public Function GetData(workPostIndex As Integer) As List(Of IWorkItem)
- 'Fetch the query.
- Dim query As String = FetchQuery(workPostIndex)
-
- 'Initialise the list with work items.
- Dim workItems As New List(Of IWorkItem)
- Try
- 'Execute query and store datareader.
- Dim dr = ExecuteIntoDataReader(query)
-
- 'Fetch amount of activities.
- Dim activityAmount = FetchNumberOfActivities(workPostIndex)
-
- 'Loop through every (result) record.
- While dr.Read()
- 'Values of one result (line/record).
-
- Dim workItem As New WorkItem
- 'Fill with values.
- With workItem
- .BatchVisual = ExtractItemFromDataReader(dr, "BatchVisual", 0)
- .DeliverToResource = ExtractItemFromDataReader(dr, "Naar", String.Empty)
- .ProductGroup = ExtractItemFromDataReader(dr, "Productgroep", String.Empty)
- .Remark = ExtractItemFromDataReader(dr, "Opmerking", String.Empty)
- .StartBeforeTimestamp = ExtractItemFromDataReader(dr, "StartVoorafTijdstip", DateTime.MinValue)
- .StartAlmostTimeStamp = ExtractItemFromDataReader(dr, "StartBijnaTijdstip", DateTime.MinValue)
- .StartTimeStamp = ExtractItemFromDataReader(dr, "StartTijdstip", DateTime.MinValue)
- .EndTimeStamp = ExtractItemFromDataReader(dr, "EindTijdstip", DateTime.MinValue)
- .Activities = ExtractActivities(dr, activityAmount)
- End With
-
- 'Add to the result list.
- workItems.Add(workItem)
- End While
-
- 'Close connection.
- dr.Close()
-
- 'Return the list.
- Return workItems
- Catch ex As Exception
- Throw New Exception($"An error occured while fetching the work items from Caché.{vbNewLine}{ex.Message}")
- End Try
- End Function
-
- '''
''' Get the correct query.
'''
'''
@@ -162,12 +111,13 @@
'Loop for every activity.
For i As Integer = 1 To numberOfActivities
+ 'Initialise activity and fill with values.
Dim activity As New Activity
With activity
.Id = ExtractItemFromDataReader(dr, $"ActiviteitID_{i}", String.Empty)
.QuantityToProduce = ExtractItemFromDataReader(dr, $"Aantal_{i}", 0)
.Label = ExtractItemFromDataReader(dr, $"Label_{i}", String.Empty)
- .Status = ActivityStateEnumMapper.GetActivityStateFromLetter(ExtractItemFromDataReader(of Char)(dr, $"Status_{i}"))
+ .Status = ActivityStateEnumMapper.GetActivityStateFromLetter(ExtractItemFromDataReader(Of Char)(dr, $"Status_{i}"))
.User = ExtractItemFromDataReader(dr, $"Gebruiker_{i}", String.Empty)
.IsReadOnly = ExtractItemFromDataReader(dr, $"ReadOnly_{i}", False)
End With
@@ -197,5 +147,55 @@
#End Region
+ '''
+ ''' Fetch all the work items for a workpost.
+ ''' The corresponding query will get fetched in here.
+ '''
+ ''' The index of the workpost, 0 based
+ ''' A list of all the work items with their activities
+ Public Function GetData(workPostIndex As Integer) As List(Of IWorkItem)
+ 'Fetch the query.
+ Dim query As String = FetchQuery(workPostIndex)
+ 'Initialise the list with work items.
+ Dim workItems As New List(Of IWorkItem)
+ Try
+ 'Execute query and store datareader.
+ Dim dr = ExecuteIntoDataReader(query)
+
+ 'Fetch amount of activities.
+ Dim activityAmount = FetchNumberOfActivities(workPostIndex)
+
+ 'Loop through every (result) record.
+ While dr.Read()
+ 'Values of one result (line/record).
+
+ Dim workItem As New WorkItem
+ 'Fill with values.
+ With workItem
+ .BatchVisual = ExtractItemFromDataReader(dr, "BatchVisual", 0)
+ .DeliverToResource = ExtractItemFromDataReader(dr, "Naar", String.Empty)
+ .ProductGroup = ExtractItemFromDataReader(dr, "Productgroep", String.Empty)
+ .Remark = ExtractItemFromDataReader(dr, "Opmerking", String.Empty)
+ .StartBeforeTimestamp = ExtractItemFromDataReader(dr, "StartVoorafTijdstip", DateTime.MinValue)
+ .StartAlmostTimeStamp = ExtractItemFromDataReader(dr, "StartBijnaTijdstip", DateTime.MinValue)
+ .StartTimeStamp = ExtractItemFromDataReader(dr, "StartTijdstip", DateTime.MinValue)
+ .EndTimeStamp = ExtractItemFromDataReader(dr, "EindTijdstip", DateTime.MinValue)
+ .Activities = ExtractActivities(dr, activityAmount)
+ End With
+
+ 'Add to the result list.
+ workItems.Add(workItem)
+ End While
+
+ 'Close connection.
+ dr.Close()
+
+ 'Return the list.
+ Return workItems
+ Catch ex As Exception
+ Throw New Exception($"An error occured while fetching the work items from Caché.{vbNewLine}{ex.Message}")
+ End Try
+ End Function
+
End Module