Timas, Fremdwährungen, Vorauskasse
This commit is contained in:
@@ -24,8 +24,8 @@
|
|||||||
|
|
||||||
Private Sub frmVorauskasse_FremdwaehrungBerechnen_Load(sender As Object, e As EventArgs) Handles Me.Load
|
Private Sub frmVorauskasse_FremdwaehrungBerechnen_Load(sender As Object, e As EventArgs) Handles Me.Load
|
||||||
'cboWaehrung.fillWithSQL(" SELECT Währungsschlüssel, Währungscode FROM Währungstabelle ORDER BY Währungscode,[Währungsschlüssel] DESC ", False, "FMZOLL", True)
|
'cboWaehrung.fillWithSQL(" SELECT Währungsschlüssel, Währungscode FROM Währungstabelle ORDER BY Währungscode,[Währungsschlüssel] DESC ", False, "FMZOLL", True)
|
||||||
cboWaehrung.fillWithSQL("SELECT Währungstabelle.Währungscode, Währungstabelle.Währungscode FROM Währungstabelle WHERE (((Währungstabelle.Eurokurs) Is Not Null And (Währungstabelle.Eurokurs)>0)) ORDER BY Währungstabelle.Währungscode; ", False, "FMZOLL", True)
|
cboWaehrung.fillWithSQL("SELECT tblZOLL_Wechselkurse.fw_iso3, tblZOLL_Wechselkurse.fw_iso3 FROM tblZOLL_Wechselkurse WHERE isnull(fw_kurswert,0)>0 AND CAST(GETDATE() AS DATE) BETWEEN cast(fw_startdatum as DATE) AND cast(fw_enddatum as DATE) ORDER BY tblZOLL_Wechselkurse.fw_iso3; ", False, "FMZOLL", True)
|
||||||
cboWaehrungUmrechnung.fillWithSQL("SELECT Währungstabelle.Währungscode, Währungstabelle.Währungscode FROM Währungstabelle WHERE (((Währungstabelle.Eurokurs) Is Not Null And (Währungstabelle.Eurokurs)>0)) ORDER BY Währungstabelle.Währungscode; ", False, "FMZOLL", True)
|
cboWaehrungUmrechnung.fillWithSQL("SELECT tblZOLL_Wechselkurse.fw_iso3, tblZOLL_Wechselkurse.fw_iso3 FROM tblZOLL_Wechselkurse WHERE isnull(fw_kurswert,0)>0 AND CAST(GETDATE() AS DATE) BETWEEN cast(fw_startdatum as DATE) AND cast(fw_enddatum as DATE) ORDER BY tblZOLL_Wechselkurse.fw_iso3; ", False, "FMZOLL", True)
|
||||||
|
|
||||||
If SND IsNot Nothing Then
|
If SND IsNot Nothing Then
|
||||||
If SND.tblSnd_Warenwert IsNot Nothing AndAlso IsNumeric(SND.tblSnd_Warenwert) AndAlso SND.tblSnd_Warenwert <> 0 Then
|
If SND.tblSnd_Warenwert IsNot Nothing AndAlso IsNumeric(SND.tblSnd_Warenwert) AndAlso SND.tblSnd_Warenwert <> 0 Then
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
Dim rg_Umrechnung As Double = 1
|
Dim rg_Umrechnung As Double = 1
|
||||||
Dim euro As Double = txtWarenwert._value
|
Dim euro As Double = txtWarenwert._value
|
||||||
If cboWaehrung._value <> "EUR" Then
|
If cboWaehrung._value <> "EUR" Then
|
||||||
Dim kurs = CDbl(SQL.getValueTxtBySql("SELECT TOP 1 isnull([Eurokurs] ,0) FROM [Währungstabelle] where Währungscode='" & cboWaehrung._value & "' ORDER BY Währungsschlüssel DESC", "FMZOLL"))
|
Dim kurs = CDbl(SQL.getValueTxtBySql("SELECT TOP 1 isnull([fw_kurswert] ,0) FROM [tblZOLL_Wechselkurse] where fw_iso3='" & cboWaehrung._value & "' ORDER BY fw_startdatum DESC", "FMZOLL"))
|
||||||
If IsNumeric(kurs) AndAlso kurs > 0 Then
|
If IsNumeric(kurs) AndAlso kurs > 0 Then
|
||||||
euro = CDbl(txtWarenwert._value / kurs)
|
euro = CDbl(txtWarenwert._value / kurs)
|
||||||
rg_Umrechnung /= kurs
|
rg_Umrechnung /= kurs
|
||||||
@@ -58,7 +58,7 @@
|
|||||||
|
|
||||||
Dim umrechnung As Double = euro
|
Dim umrechnung As Double = euro
|
||||||
If cboWaehrungUmrechnung._value <> "EUR" Then
|
If cboWaehrungUmrechnung._value <> "EUR" Then
|
||||||
Dim kurs_Umrechnung = CDbl(SQL.getValueTxtBySql("SELECT TOP 1 isnull([Eurokurs] ,0) FROM [Währungstabelle] where Währungscode='" & cboWaehrungUmrechnung._value & "' ORDER BY Währungsschlüssel DESC", "FMZOLL"))
|
Dim kurs_Umrechnung = CDbl(SQL.getValueTxtBySql("SELECT TOP 1 isnull([fw_kurswert] ,0) FROM [tblZOLL_Wechselkurse] where fw_iso3='" & cboWaehrungUmrechnung._value & "' ORDER BY fw_startdatum DESC", "FMZOLL"))
|
||||||
umrechnung = CDbl(euro * kurs_Umrechnung)
|
umrechnung = CDbl(euro * kurs_Umrechnung)
|
||||||
rg_Umrechnung *= kurs_Umrechnung
|
rg_Umrechnung *= kurs_Umrechnung
|
||||||
End If
|
End If
|
||||||
|
|||||||
119
VERAG_PROG_ALLGEMEIN/Classes/cFremdwaehrungskurse.vb
Normal file
119
VERAG_PROG_ALLGEMEIN/Classes/cFremdwaehrungskurse.vb
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
Imports System.Data.SqlClient
|
||||||
|
Imports System.Reflection
|
||||||
|
|
||||||
|
Public Class cFremdwaehrungskurse
|
||||||
|
|
||||||
|
|
||||||
|
Property fw_id As String
|
||||||
|
Property fw_iso2 As String
|
||||||
|
Property fw_iso3 As String
|
||||||
|
Property fw_land As String
|
||||||
|
Property fw_startdatum As Date
|
||||||
|
Property fw_enddatum As Date
|
||||||
|
Property fw_kurswert As Double
|
||||||
|
|
||||||
|
|
||||||
|
Dim SQL As New SQL
|
||||||
|
|
||||||
|
Sub New()
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
Public Function getParameterList() As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||||
|
Dim list As New List(Of VERAG_PROG_ALLGEMEIN.SQLVariable)
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("fw_id", fw_id))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("fw_iso2", fw_iso2))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("fw_iso3", fw_iso3))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("fw_land", fw_land))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("fw_startdatum", fw_startdatum))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("fw_enddatum", fw_enddatum))
|
||||||
|
list.Add(New VERAG_PROG_ALLGEMEIN.SQLVariable("fw_kurswert", fw_kurswert))
|
||||||
|
|
||||||
|
Return list
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Public Function SAVE() As Boolean
|
||||||
|
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
|
||||||
|
|
||||||
|
|
||||||
|
Dim sqlstr = " BEGIN TRAN IF EXISTS(SELECT * FROM tblZOLL_Wechselkurse WITH(updlock,serializable) WHERE fw_id=@fw_id AND fw_startdatum=@fw_startdatum AND fw_enddatum=@fw_enddatum ) " &
|
||||||
|
" BEGIN " & getUpdateCmd() & " END " &
|
||||||
|
" Else " &
|
||||||
|
" BEGIN " & getInsertCmd() & " END " &
|
||||||
|
" commit tran "
|
||||||
|
|
||||||
|
|
||||||
|
Return SQL.doSQLVarList(sqlstr, "FMZOLL", , list)
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Public Function getUpdateCmd() As String
|
||||||
|
Try
|
||||||
|
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
|
||||||
|
|
||||||
|
Dim str As String = ""
|
||||||
|
For Each i In list
|
||||||
|
If Not i.isPrimaryParam Then
|
||||||
|
str &= "[" & i.Text & "] = @" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
str = str.Substring(0, str.Length - 1) 'wg. ','
|
||||||
|
Return (" UPDATE [tblZOLL_Wechselkurse] SET " & str & " WHERE fw_id=@fw_id AND fw_startdatum=@fw_startdatum AND fw_enddatum=@fw_enddatum")
|
||||||
|
|
||||||
|
Catch ex As Exception
|
||||||
|
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
|
||||||
|
End Try
|
||||||
|
Return ""
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
Public Function getInsertCmd() As String
|
||||||
|
Try
|
||||||
|
Dim list As List(Of VERAG_PROG_ALLGEMEIN.SQLVariable) = getParameterList()
|
||||||
|
Dim str As String = ""
|
||||||
|
Dim values As String = ""
|
||||||
|
For Each i In list
|
||||||
|
If Not i.isPrimaryParam Then
|
||||||
|
str &= "[" & i.Text & "],"
|
||||||
|
values &= "@" & i.Scalarvariable & "," '.Replace("-", "").Replace(" ", "") & ","
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
str = str.Substring(0, str.Length - 1) 'wg. ','
|
||||||
|
values = values.Substring(0, values.Length - 1) 'wg. ','
|
||||||
|
Return (" INSERT INTO tblZOLL_Wechselkurse (" & str & ") VALUES(" & values & ") ")
|
||||||
|
Catch ex As Exception
|
||||||
|
MsgBox("Fehler in der Funktion '" & System.Reflection.MethodInfo.GetCurrentMethod.Name & "'" & vbNewLine & vbNewLine & ex.Message & vbNewLine & vbNewLine & ex.StackTrace)
|
||||||
|
End Try
|
||||||
|
Return ""
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
'Public Function DELETE() As Boolean 'obj As Object, tablename As String, where As String) As Boolean
|
||||||
|
' Dim sqlstr = " DELETE FROM [tblEZB_Waehrungskurse] WITH(updlock,serializable) WHERE ezb_waehrungscode='" & ezb_waehrungscode & "' AND ezb_datum='" & ezb_datum & "' "
|
||||||
|
' Return SQL.doSQL(sqlstr, "FMZOLL")
|
||||||
|
'End Function
|
||||||
|
|
||||||
|
|
||||||
|
'Shared Function UPDATE_Waehrungstabelle(datum As Date) As Boolean 'obj As Object, tablename As String, where As String) As Boolean
|
||||||
|
' Dim sqlstr = " UPDATE [Währungstabelle] SET [Währungstabelle].Eurokurs=tblEZB_Waehrungskurse.ezb_kurs
|
||||||
|
' FROM [Währungstabelle] inner join tblEZB_Waehrungskurse on [Währungstabelle].Währungsschlüssel=tblEZB_Waehrungskurse.ezb_waehrungsschluessel where tblEZB_Waehrungskurse.ezb_datum='" & datum.ToShortDateString & "' "
|
||||||
|
' Return (New SQL).doSQL(sqlstr, "FMZOLL")
|
||||||
|
'End Function
|
||||||
|
|
||||||
|
'Shared Function GET_KURS(ezb_waehrungscode As String, datum As Date) As Double
|
||||||
|
' Dim sqlstr = " SELECT TOP 1 [ezb_kurs] FROM [tblEZB_Waehrungskurse] where ezb_waehrungscode='" & ezb_waehrungscode & "' and ezb_datum<='" & datum.ToShortTimeString & "' order by ezb_datum desc"
|
||||||
|
' Return (New SQL).getValueTxtBySql(sqlstr, "FMZOLL",,, 0)
|
||||||
|
'End Function
|
||||||
|
|
||||||
|
'Shared Function EXCHANGE(betrag As Double, waehrungscode As String, datum As Date) As Double
|
||||||
|
' Dim sqlstr = " SELECT TOP 1 [ezb_kurs] FROM [tblEZB_Waehrungskurse] where ezb_waehrungscode='" & waehrungscode & "' and ezb_datum<='" & datum.ToShortTimeString & "' order by ezb_datum desc"
|
||||||
|
' Return (New SQL).getValueTxtBySql(sqlstr, "FMZOLL",,, 0) * betrag
|
||||||
|
'End Function
|
||||||
|
|
||||||
|
|
||||||
|
End Class
|
||||||
@@ -1,4 +1,7 @@
|
|||||||
Imports System.Net
|
Imports System.Diagnostics.Tracing
|
||||||
|
Imports System.Net
|
||||||
|
Imports System.Threading
|
||||||
|
Imports System.Windows.Forms
|
||||||
|
|
||||||
Public Class cTimasAPI
|
Public Class cTimasAPI
|
||||||
|
|
||||||
@@ -15,26 +18,26 @@ Public Class cTimasAPI
|
|||||||
Try
|
Try
|
||||||
Dim success As Boolean
|
Dim success As Boolean
|
||||||
|
|
||||||
rest.VerboseLogging = False
|
rest.VerboseLogging = False
|
||||||
Dim bTls As Boolean = True
|
Dim bTls As Boolean = True
|
||||||
Dim port As Integer = 443
|
Dim port As Integer = 443
|
||||||
Dim bAutoReconnect As Boolean = True
|
Dim bAutoReconnect As Boolean = True
|
||||||
success = rest.Connect(API_STRING, port, bTls, bAutoReconnect)
|
success = rest.Connect(API_STRING, port, bTls, bAutoReconnect)
|
||||||
If (success <> True) Then
|
If (success <> True) Then
|
||||||
Debug.WriteLine("ConnectFailReason: " & rest.ConnectFailReason)
|
Debug.WriteLine("ConnectFailReason: " & rest.ConnectFailReason)
|
||||||
Debug.WriteLine(rest.LastErrorText)
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
failureText = rest.LastErrorText
|
failureText = rest.LastErrorText
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
success = rest.SetAuthBasic("admin", "BmWr501956")
|
success = rest.SetAuthBasic("admin", "BmWr501956")
|
||||||
|
|
||||||
If (success <> True) Then
|
If (success <> True) Then
|
||||||
Debug.WriteLine("BAFailReason: " & rest.ConnectFailReason)
|
Debug.WriteLine("BAFailReason: " & rest.ConnectFailReason)
|
||||||
Debug.WriteLine(rest.LastErrorText)
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
failureText = rest.LastErrorText
|
failureText = rest.LastErrorText
|
||||||
Return False
|
Return False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Return True
|
Return True
|
||||||
|
|
||||||
@@ -200,7 +203,7 @@ Public Class cTimasAPI
|
|||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Function createMA(ByVal mitarbeiter As cMitarbeiter, ByRef info As String, ByRef datatableTimas As DataTable, Optional ByRef requestDone As Boolean = False)
|
Public Function createEmployee(ByVal mitarbeiter As cMitarbeiter, ByRef info As String, ByRef datatableTimas As DataTable, Optional ByRef requestDone As Boolean = False)
|
||||||
Try
|
Try
|
||||||
|
|
||||||
rest.ClearAllHeaders()
|
rest.ClearAllHeaders()
|
||||||
@@ -229,8 +232,6 @@ Public Class cTimasAPI
|
|||||||
success = json.UpdateString("gender", IIf(mitarbeiter.mit_geschlecht = "m", "male", "female"))
|
success = json.UpdateString("gender", IIf(mitarbeiter.mit_geschlecht = "m", "male", "female"))
|
||||||
success = json.UpdateInt("card", mitarbeiter.mit_id)
|
success = json.UpdateInt("card", mitarbeiter.mit_id)
|
||||||
success = json.UpdateString("info", mitarbeiter.mit_firma & " - " & mitarbeiter.mit_abteilung)
|
success = json.UpdateString("info", mitarbeiter.mit_firma & " - " & mitarbeiter.mit_abteilung)
|
||||||
'success = json.UpdateString("clientNumber", "5600-02")
|
|
||||||
'success = json.UpdateInt("rfid", 178230359)
|
|
||||||
If mitarbeiter.mit_gebdat <> "" And IsDate(mitarbeiter.mit_gebdat) Then
|
If mitarbeiter.mit_gebdat <> "" And IsDate(mitarbeiter.mit_gebdat) Then
|
||||||
success = json.UpdateString("birthday", CDate(mitarbeiter.mit_gebdat).ToString("yyyy-MM-dd"))
|
success = json.UpdateString("birthday", CDate(mitarbeiter.mit_gebdat).ToString("yyyy-MM-dd"))
|
||||||
End If
|
End If
|
||||||
@@ -349,7 +350,6 @@ Public Class cTimasAPI
|
|||||||
Debug.WriteLine(json.LastErrorText)
|
Debug.WriteLine(json.LastErrorText)
|
||||||
End If
|
End If
|
||||||
|
|
||||||
Debug.WriteLine(json)
|
|
||||||
info &= IIf(json.StringOf("entry") <> "", "Startdatum: " & json.StringOf("entry") & vbNewLine, "")
|
info &= IIf(json.StringOf("entry") <> "", "Startdatum: " & json.StringOf("entry") & vbNewLine, "")
|
||||||
info &= IIf(json.StringOf("externid") <> "", "MA-ID: " & json.StringOf("externid") & vbNewLine, "")
|
info &= IIf(json.StringOf("externid") <> "", "MA-ID: " & json.StringOf("externid") & vbNewLine, "")
|
||||||
info &= IIf(json.StringOf("pnr1") <> "", "PersonalNr: " & json.StringOf("pnr1") & vbNewLine, "")
|
info &= IIf(json.StringOf("pnr1") <> "", "PersonalNr: " & json.StringOf("pnr1") & vbNewLine, "")
|
||||||
@@ -362,14 +362,265 @@ Public Class cTimasAPI
|
|||||||
info &= IIf(json.StringOf("password") <> "", "PW: " & json.StringOf("password"), "")
|
info &= IIf(json.StringOf("password") <> "", "PW: " & json.StringOf("password"), "")
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Catch ex As WebException
|
Catch ex As WebException
|
||||||
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
End Try
|
End Try
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Sub getGroups(ByRef dt As DataTable)
|
Public Function getEmployee(mitarbeiterID As String) As cTimasEmployee
|
||||||
|
|
||||||
|
Try
|
||||||
|
|
||||||
|
If Not checkConnectionTImas("") Then
|
||||||
|
Return Nothing
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim responseJson As String = rest.FullRequestNoBody("GET", "/rest/web-api/employees/" & mitarbeiterID)
|
||||||
|
If (rest.LastMethodSuccess <> True) Then
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
Return Nothing
|
||||||
|
End If
|
||||||
|
|
||||||
|
If (rest.ResponseStatusCode <> 200) Then
|
||||||
|
Debug.WriteLine(rest.ResponseHeader)
|
||||||
|
MsgBox(rest.ResponseStatusCode & " " & rest.ResponseStatusText)
|
||||||
|
Return Nothing
|
||||||
|
End If
|
||||||
|
|
||||||
|
Debug.WriteLine(responseJson)
|
||||||
|
|
||||||
|
|
||||||
|
Dim json As New Chilkat.JsonObject
|
||||||
|
Dim success = json.Load(responseJson)
|
||||||
|
If (success <> True) Then
|
||||||
|
Debug.WriteLine(json.LastErrorText)
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Dim emp As New cTimasEmployee()
|
||||||
|
|
||||||
|
emp.ID = json.StringOf("id")
|
||||||
|
emp.externid = json.StringOf("externid")
|
||||||
|
emp.pnr1 = json.StringOf("pnr1")
|
||||||
|
emp.pnr2 = json.StringOf("pnr2")
|
||||||
|
emp.firstname = json.StringOf("firstname")
|
||||||
|
emp.lastname = json.StringOf("lastname")
|
||||||
|
emp.gender = json.StringOf("gender")
|
||||||
|
emp.clientNumber = json.StringOf("clientNumber")
|
||||||
|
emp.card = json.StringOf("card")
|
||||||
|
emp.info = json.StringOf("info")
|
||||||
|
emp.rfid = json.StringOf("rfid")
|
||||||
|
emp.login = json.StringOf("login")
|
||||||
|
emp.email = json.StringOf("email")
|
||||||
|
emp.loginActive = json.BoolOf("loginActive")
|
||||||
|
emp.password = json.StringOf("password")
|
||||||
|
|
||||||
|
emp.street = json.StringOf("street")
|
||||||
|
emp.zipcode = json.StringOf("zipcode")
|
||||||
|
emp.city = json.StringOf("city")
|
||||||
|
emp.phone1 = json.StringOf("phone1")
|
||||||
|
emp.phone2 = json.StringOf("phone2")
|
||||||
|
|
||||||
|
emp.birthdayDate = json.StringOf("birthday")
|
||||||
|
emp.entryDate = json.StringOf("entry")
|
||||||
|
emp.exitDate = json.StringOf("exit")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Dim groups As Chilkat.JsonArray = json.ArrayOf("groups")
|
||||||
|
If (json.LastMethodSuccess = False) Then
|
||||||
|
Debug.WriteLine("groups member not found.")
|
||||||
|
End If
|
||||||
|
|
||||||
|
emp.Gruppen = New List(Of cTimasGruppe)
|
||||||
|
Dim numGroups As Integer = groups.Size
|
||||||
|
Dim i As Integer = 0
|
||||||
|
While i < numGroups
|
||||||
|
Dim TIMASGroups As New cTimasGruppe(emp.ID)
|
||||||
|
TIMASGroups.Id = groups.IntAt(i)
|
||||||
|
emp.Gruppen.Add(TIMASGroups)
|
||||||
|
i = i + 1
|
||||||
|
End While
|
||||||
|
|
||||||
|
|
||||||
|
Debug.WriteLine(json)
|
||||||
|
|
||||||
|
Return emp
|
||||||
|
|
||||||
|
Catch ex As WebException
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
|
|
||||||
|
Public Function updateEmployee(emp As cTimasEmployee, dgv As DataGridView) As Boolean
|
||||||
|
|
||||||
|
Try
|
||||||
|
|
||||||
|
Dim success As Boolean
|
||||||
|
|
||||||
|
If True Then
|
||||||
|
|
||||||
|
|
||||||
|
If Not checkConnectionTImas("") Then
|
||||||
|
Return Nothing
|
||||||
|
End If
|
||||||
|
|
||||||
|
Dim json As New Chilkat.JsonObject
|
||||||
|
|
||||||
|
|
||||||
|
success = json.UpdateString("externid", emp.externid)
|
||||||
|
success = json.UpdateString("pnr1", emp.pnr1)
|
||||||
|
success = json.UpdateString("pnr2", emp.pnr2)
|
||||||
|
success = json.UpdateString("firstname", emp.firstname)
|
||||||
|
success = json.UpdateString("lastname", emp.lastname)
|
||||||
|
success = json.UpdateString("gender", emp.gender)
|
||||||
|
|
||||||
|
success = json.UpdateString("card", emp.card)
|
||||||
|
success = json.UpdateString("info", emp.info)
|
||||||
|
success = json.UpdateString("rfid", emp.rfid)
|
||||||
|
success = json.UpdateString("login", emp.login)
|
||||||
|
success = json.UpdateString("email", emp.email)
|
||||||
|
success = json.UpdateBool("loginActive", emp.loginActive)
|
||||||
|
success = json.UpdateString("password", emp.password)
|
||||||
|
|
||||||
|
success = json.UpdateString("street", emp.street)
|
||||||
|
success = json.UpdateString("city", emp.city)
|
||||||
|
success = json.UpdateString("phone1", emp.phone1)
|
||||||
|
success = json.UpdateString("phone2", emp.phone2)
|
||||||
|
|
||||||
|
success = json.UpdateString("birthday", emp.birthdayDate)
|
||||||
|
success = json.UpdateString("entry", emp.entryDate)
|
||||||
|
success = json.UpdateString("exit", emp.exitDate)
|
||||||
|
|
||||||
|
|
||||||
|
Dim sbRequestBody As New Chilkat.StringBuilder
|
||||||
|
json.EmitSb(sbRequestBody)
|
||||||
|
|
||||||
|
Dim sbResponseBody As New Chilkat.StringBuilder
|
||||||
|
success = rest.FullRequestSb("PUT", "/rest/web-api/employees/" & emp.ID, sbRequestBody, sbResponseBody)
|
||||||
|
|
||||||
|
If (rest.LastMethodSuccess <> True) Then
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
Return Nothing
|
||||||
|
End If
|
||||||
|
|
||||||
|
If (rest.ResponseStatusCode <> 201) Then
|
||||||
|
Debug.WriteLine(rest.ResponseHeader)
|
||||||
|
MsgBox(rest.ResponseStatusCode & " " & rest.ResponseStatusText)
|
||||||
|
Return Nothing
|
||||||
|
End If
|
||||||
|
|
||||||
|
Debug.WriteLine(sbResponseBody)
|
||||||
|
End If
|
||||||
|
|
||||||
|
If dgv IsNot Nothing AndAlso dgv.RowCount > 0 AndAlso emp.Gruppen IsNot Nothing Then
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
For Each r As DataGridViewRow In dgv.Rows
|
||||||
|
For Each i As cTimasGruppe In emp.Gruppen
|
||||||
|
If r.Cells("set").Value = False AndAlso r.Cells("id").Value = i.Id Then
|
||||||
|
deleteGroupmembers(i.Id, emp.ID)
|
||||||
|
Exit For
|
||||||
|
ElseIf r.Cells("set").Value = True AndAlso r.Cells("id").Value <> i.Id Then
|
||||||
|
addGroupmembers(r.Cells("id").Value, emp.ID)
|
||||||
|
Exit For
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
Next
|
||||||
|
Next
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
Return success
|
||||||
|
|
||||||
|
Catch ex As WebException
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
|
|
||||||
|
End Function
|
||||||
|
|
||||||
|
Public Sub getAllGroups(ByRef dt As DataTable, Optional initialGroup As Boolean = True)
|
||||||
|
|
||||||
|
Try
|
||||||
|
|
||||||
|
Dim failureText As String = ""
|
||||||
|
If Not checkConnectionTImas(failureText) Then
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Dim responseBody As String = rest.FullRequestNoBody("GET", API_STRING & "/rest/web-api/groups3")
|
||||||
|
If (rest.LastMethodSuccess <> True) Then
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
If (rest.ResponseStatusCode <> 200) Then
|
||||||
|
Debug.WriteLine(rest.ResponseStatusCode & " " & rest.ResponseStatusText)
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Dim jsonArray As New Chilkat.JsonArray
|
||||||
|
Dim success As Boolean = jsonArray.Load(responseBody)
|
||||||
|
If (success <> True) Then
|
||||||
|
Debug.WriteLine(jsonArray.LastErrorText)
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Dim num As Integer = jsonArray.Size
|
||||||
|
If num = -1 Then
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Dim j As Integer = 0
|
||||||
|
|
||||||
|
If dt IsNot Nothing And Not dt.Columns.Contains("id") Then
|
||||||
|
|
||||||
|
dt.Columns.Add("id", GetType(Integer))
|
||||||
|
dt.Columns.Add("name", GetType(String))
|
||||||
|
dt.Columns.Add("groupType", GetType(String))
|
||||||
|
dt.Columns.Add("info", GetType(String))
|
||||||
|
dt.Columns.Add("set", GetType(Boolean))
|
||||||
|
|
||||||
|
While j < num
|
||||||
|
|
||||||
|
Dim groups As Chilkat.JsonObject = jsonArray.ObjectAt(j)
|
||||||
|
|
||||||
|
Dim R As DataRow = dt.NewRow
|
||||||
|
R("id") = groups.IntOf("id")
|
||||||
|
R("name") = groups.StringOf("name")
|
||||||
|
R("groupType") = groups.StringOf("groupType")
|
||||||
|
R("info") = groups.StringOf("info")
|
||||||
|
If initialGroup = True Then
|
||||||
|
If R("id") = "19" Or R("id") = "129" Then 'Typ Mitarbeiter und Standardgruppe für Mitarbeiter Default true
|
||||||
|
R("set") = True
|
||||||
|
Else
|
||||||
|
R("set") = False
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
dt.Rows.Add(R)
|
||||||
|
j = j + 1
|
||||||
|
End While
|
||||||
|
|
||||||
|
dt.DefaultView.Sort = " groupType asc, name asc"
|
||||||
|
dt = dt.DefaultView.ToTable()
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
Catch ex As WebException
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Public Sub getGroupsFromEmployee(ByRef dt As DataTable)
|
||||||
|
|
||||||
Try
|
Try
|
||||||
|
|
||||||
@@ -444,6 +695,59 @@ Public Class cTimasAPI
|
|||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
Public Sub addGroupmembers(ByVal groupID As Integer, ByVal maId As Integer)
|
||||||
|
|
||||||
|
Try
|
||||||
|
|
||||||
|
Dim success As Boolean
|
||||||
|
Dim jarr As New Chilkat.JsonArray
|
||||||
|
jarr.AddIntAt(-1, maId)
|
||||||
|
|
||||||
|
Dim sbRequestBody As New Chilkat.StringBuilder
|
||||||
|
jarr.EmitSb(sbRequestBody)
|
||||||
|
|
||||||
|
Dim sbResponseBody As New Chilkat.StringBuilder
|
||||||
|
|
||||||
|
success = rest.FullRequestSb("POST", "/rest/web-api/groups/" & groupID & "/addmembers", sbRequestBody, sbResponseBody)
|
||||||
|
If (success <> True) Then
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
Catch ex As WebException
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Public Sub deleteGroupmembers(ByVal groupID As Integer, ByVal maId As Integer)
|
||||||
|
|
||||||
|
Try
|
||||||
|
|
||||||
|
Dim success As Boolean
|
||||||
|
Dim jarr As New Chilkat.JsonArray
|
||||||
|
jarr.AddIntAt(-1, maId)
|
||||||
|
|
||||||
|
Dim sbRequestBody As New Chilkat.StringBuilder
|
||||||
|
jarr.EmitSb(sbRequestBody)
|
||||||
|
|
||||||
|
Dim sbResponseBody As New Chilkat.StringBuilder
|
||||||
|
|
||||||
|
success = rest.FullRequestSb("POST", "/rest/web-api/groups/" & groupID & "/removemembers", sbRequestBody, sbResponseBody)
|
||||||
|
If (success <> True) Then
|
||||||
|
Debug.WriteLine(rest.LastErrorText)
|
||||||
|
|
||||||
|
End If
|
||||||
|
|
||||||
|
Catch ex As WebException
|
||||||
|
VERAG_PROG_ALLGEMEIN.cErrorHandler.ERR(ex.Message, ex.StackTrace, System.Reflection.MethodInfo.GetCurrentMethod.Name)
|
||||||
|
End Try
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Public Function setTimeEntry(ByVal mitarbeiter As cMitarbeiter, ByVal timeEntry As DateTime, ByRef info As String, ByRef inout As String)
|
Public Function setTimeEntry(ByVal mitarbeiter As cMitarbeiter, ByVal timeEntry As DateTime, ByRef info As String, ByRef inout As String)
|
||||||
Dim failureText As String = ""
|
Dim failureText As String = ""
|
||||||
Dim timeEntryCreated As Boolean = False
|
Dim timeEntryCreated As Boolean = False
|
||||||
@@ -557,7 +861,7 @@ Public Class cTimasAPI
|
|||||||
Return "Array Failure"
|
Return "Array Failure"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If dt IsNot Nothing And Not dt.Columns.Contains("Id") Then
|
If dt IsNot Nothing AndAlso Not dt.Columns.Contains("Id") Then
|
||||||
dt.Columns.Add("Id", GetType(Integer))
|
dt.Columns.Add("Id", GetType(Integer))
|
||||||
'dt.Columns.Add("externid", GetType(String))
|
'dt.Columns.Add("externid", GetType(String))
|
||||||
dt.Columns.Add("Personal-Nr (Lohn)", GetType(String))
|
dt.Columns.Add("Personal-Nr (Lohn)", GetType(String))
|
||||||
@@ -595,3 +899,55 @@ Public Class cTimasAPI
|
|||||||
|
|
||||||
|
|
||||||
End Class
|
End Class
|
||||||
|
|
||||||
|
Public Class cTimasEmployee
|
||||||
|
|
||||||
|
Public ID As Integer
|
||||||
|
Public externid As String
|
||||||
|
Public pnr1 As String
|
||||||
|
Public pnr2 As String
|
||||||
|
Public firstname As String
|
||||||
|
Public lastname As String
|
||||||
|
Public gender As String
|
||||||
|
Public clientNumber As String
|
||||||
|
Public rfid As String
|
||||||
|
Public card As Integer
|
||||||
|
Public info As String
|
||||||
|
Public login As String
|
||||||
|
Public email As String
|
||||||
|
Public loginActive As Boolean
|
||||||
|
Public password As String
|
||||||
|
|
||||||
|
Public street As String
|
||||||
|
Public city As String
|
||||||
|
Public zipcode As String
|
||||||
|
Public phone1 As String
|
||||||
|
Public phone2 As String
|
||||||
|
|
||||||
|
Public birthdayDate As String
|
||||||
|
Public entryDate As String
|
||||||
|
Public exitDate As String
|
||||||
|
|
||||||
|
Public Gruppen As List(Of cTimasGruppe)
|
||||||
|
|
||||||
|
Sub New()
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
End Class
|
||||||
|
|
||||||
|
Public Class cTimasGruppe
|
||||||
|
|
||||||
|
Public empID As Integer
|
||||||
|
Public Id As Integer
|
||||||
|
Public name As String
|
||||||
|
Public groupType As String
|
||||||
|
Public info As String
|
||||||
|
|
||||||
|
Sub New(empId)
|
||||||
|
Me.empID = empId
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
End Class
|
||||||
@@ -342,6 +342,7 @@
|
|||||||
<Compile Include="Classes\cFiskalkunden.vb" />
|
<Compile Include="Classes\cFiskalkunden.vb" />
|
||||||
<Compile Include="Classes\cFiskalkundenAnhaenge.vb" />
|
<Compile Include="Classes\cFiskalkundenAnhaenge.vb" />
|
||||||
<Compile Include="Classes\cFremdSpeditionenZuordnung.vb" />
|
<Compile Include="Classes\cFremdSpeditionenZuordnung.vb" />
|
||||||
|
<Compile Include="Classes\cFremdwaehrungskurse.vb" />
|
||||||
<Compile Include="Classes\cGelangensbestaetigung.vb" />
|
<Compile Include="Classes\cGelangensbestaetigung.vb" />
|
||||||
<Compile Include="Classes\cGesamtsicherheitsPositionen.vb" />
|
<Compile Include="Classes\cGesamtsicherheitsPositionen.vb" />
|
||||||
<Compile Include="Classes\cGestellungsgarantien.vb" />
|
<Compile Include="Classes\cGestellungsgarantien.vb" />
|
||||||
|
|||||||
Reference in New Issue
Block a user