wip
This commit is contained in:
@@ -5,6 +5,7 @@ Imports System.Xml.XPath
|
||||
Imports DigitalData.Modules.Language
|
||||
Imports DigitalData.Modules.Logging
|
||||
Imports ImporterShared.Documents
|
||||
Imports ImporterShared.Schemas.Orders
|
||||
|
||||
Namespace Documents
|
||||
Public Class DocumentLoader
|
||||
@@ -54,9 +55,9 @@ Namespace Documents
|
||||
|
||||
Private Function MatchDataFromWinLine(pDocument As Document, pMandators As List(Of Winline.Mandator)) As Document
|
||||
Dim oMandators As List(Of Winline.Mandator) = pMandators.
|
||||
Where(Function(m) m.IsWhitelisted = True).
|
||||
OrderBy(Function(m) m.Order).
|
||||
ToList()
|
||||
Where(Function(m) m.IsWhitelisted = True).
|
||||
OrderBy(Function(m) m.Order).
|
||||
ToList()
|
||||
|
||||
If TypeOf pDocument.Data Is Schemas.Orders.Input.MESOWebService Then
|
||||
Dim oMandator = Winline.FindMatchingMandatorFromOrder(pDocument.Data)
|
||||
@@ -73,43 +74,45 @@ Namespace Documents
|
||||
Return pDocument
|
||||
End Function
|
||||
|
||||
Private Function MatchOrderData(pData As Schemas.Orders.Input.MESOWebService, pMandator As Winline.Mandator) As Schemas.Orders.Input.MESOWebService
|
||||
Private Function MatchOrderData(pData As Input.MESOWebService, pMandator As Winline.Mandator) As Input.MESOWebService
|
||||
Dim oYear = Winline.GetWinLineYear()
|
||||
|
||||
If pMandator Is Nothing Then
|
||||
Return pData
|
||||
End If
|
||||
|
||||
Dim oHead As Schemas.Orders.Input.MESOWebServiceEXIMVRG_ordersT025 = pData.Items.
|
||||
Where(Function(h) TypeOf h Is Schemas.Orders.Input.MESOWebServiceEXIMVRG_ordersT025).
|
||||
SetValue(Sub(h)
|
||||
Dim oAccountNumber = Winline.TryGetAccountNumber(h.Fakt_Kontonummer, pMandator)
|
||||
If oAccountNumber IsNot Nothing Then
|
||||
h.Fakt_Kontonummer = oAccountNumber
|
||||
End If
|
||||
|
||||
Dim oAccountNumber2 = Winline.TryGetAccountNumber(h.Lief_Kontonummer, pMandator)
|
||||
If oAccountNumber2 IsNot Nothing Then
|
||||
h.Lief_Kontonummer = oAccountNumber2
|
||||
End If
|
||||
End Sub).
|
||||
FirstOrDefault()
|
||||
|
||||
Dim oPositions As List(Of Schemas.Orders.Input.MESOWebServiceEXIMVRG_ordersT026) = pData.Items.
|
||||
Where(Function(p) TypeOf p Is Schemas.Orders.Input.MESOWebServiceEXIMVRG_ordersT026).
|
||||
SetValue(Sub(p)
|
||||
Dim oArticleNumber = Winline.TryGetArticleNumber(p.Artikelnummer, pMandator)
|
||||
If oArticleNumber IsNot Nothing Then
|
||||
p.Artikelnummer = oArticleNumber
|
||||
End If
|
||||
End Sub).
|
||||
Select(Of Schemas.Orders.Input.MESOWebServiceEXIMVRG_ordersT026)(Function(i) i).
|
||||
ToList()
|
||||
Dim oHead As Input.MESOWebServiceEXIMVRG_ordersT025 = pData.Items.
|
||||
Where(Function(h) TypeOf h Is Input.MESOWebServiceEXIMVRG_ordersT025).
|
||||
SetValue(Sub(h As Input.MESOWebServiceEXIMVRG_ordersT025)
|
||||
Dim oAccount = Winline.TryGetAccount(h.Fakt_Kontonummer, pMandator)
|
||||
If oAccount IsNot Nothing Then
|
||||
h.Fakt_Kontonummer = oAccount.Id
|
||||
h.Fakt_Name = oAccount.Name
|
||||
End If
|
||||
End Sub).
|
||||
SetValue(Sub(h As Input.MESOWebServiceEXIMVRG_ordersT025)
|
||||
Dim oAccount = Winline.TryGetAccount(h.Lief_Kontonummer, pMandator)
|
||||
If oAccount IsNot Nothing Then
|
||||
h.Lief_Kontonummer = oAccount.Id
|
||||
h.Lief_Name = oAccount.Name
|
||||
End If
|
||||
End Sub).
|
||||
FirstOrDefault()
|
||||
|
||||
Dim oPositions As List(Of Input.MESOWebServiceEXIMVRG_ordersT026) = pData.Items.
|
||||
Where(Function(p) TypeOf p Is Input.MESOWebServiceEXIMVRG_ordersT026).
|
||||
SetValue(Sub(p)
|
||||
Dim oArticleNumber = Winline.TryGetArticleNumber(p.Artikelnummer, pMandator)
|
||||
If oArticleNumber IsNot Nothing Then
|
||||
p.Artikelnummer = oArticleNumber
|
||||
End If
|
||||
End Sub).
|
||||
Select(Of Input.MESOWebServiceEXIMVRG_ordersT026)(Function(i) i).
|
||||
ToList()
|
||||
|
||||
pData.Items = New List(Of Object) From {oHead}.
|
||||
Concat(oPositions).
|
||||
ToArray()
|
||||
Concat(oPositions).
|
||||
ToArray()
|
||||
|
||||
Return pData
|
||||
End Function
|
||||
|
||||
Reference in New Issue
Block a user