Essenbestellungen, Ueberstunden
This commit is contained in:
24
SDL/frmEssensbestellungenAdministration.Designer.vb
generated
24
SDL/frmEssensbestellungenAdministration.Designer.vb
generated
@@ -28,6 +28,7 @@ Partial Class frmEssensbestellungenAdministration
|
||||
Me.Label4 = New System.Windows.Forms.Label()
|
||||
Me.Label22 = New System.Windows.Forms.Label()
|
||||
Me.Panel1 = New System.Windows.Forms.Panel()
|
||||
Me.cbxCurrenyear = New System.Windows.Forms.CheckBox()
|
||||
Me.cbxAlleAnzeigen = New System.Windows.Forms.CheckBox()
|
||||
Me.lblBestellungBis = New System.Windows.Forms.Label()
|
||||
Me.btnBestelllimit = New System.Windows.Forms.Button()
|
||||
@@ -82,7 +83,6 @@ Partial Class frmEssensbestellungenAdministration
|
||||
Me.lblWarning = New System.Windows.Forms.Label()
|
||||
Me.Button2 = New System.Windows.Forms.Button()
|
||||
Me.Label9 = New System.Windows.Forms.Label()
|
||||
Me.cbxCurrenyear = New System.Windows.Forms.CheckBox()
|
||||
Me.pnlTop.SuspendLayout()
|
||||
Me.Panel1.SuspendLayout()
|
||||
Me.ContextMenuStrip1.SuspendLayout()
|
||||
@@ -163,6 +163,17 @@ Partial Class frmEssensbestellungenAdministration
|
||||
Me.Panel1.Size = New System.Drawing.Size(1242, 106)
|
||||
Me.Panel1.TabIndex = 2
|
||||
'
|
||||
'cbxCurrenyear
|
||||
'
|
||||
Me.cbxCurrenyear.AutoSize = True
|
||||
Me.cbxCurrenyear.Checked = True
|
||||
Me.cbxCurrenyear.CheckState = System.Windows.Forms.CheckState.Checked
|
||||
Me.cbxCurrenyear.Location = New System.Drawing.Point(296, 12)
|
||||
Me.cbxCurrenyear.Name = "cbxCurrenyear"
|
||||
Me.cbxCurrenyear.Size = New System.Drawing.Size(15, 14)
|
||||
Me.cbxCurrenyear.TabIndex = 73
|
||||
Me.cbxCurrenyear.UseVisualStyleBackColor = True
|
||||
'
|
||||
'cbxAlleAnzeigen
|
||||
'
|
||||
Me.cbxAlleAnzeigen.AutoSize = True
|
||||
@@ -825,17 +836,6 @@ Partial Class frmEssensbestellungenAdministration
|
||||
Me.Label9.Text = "Gesamtbetrag"
|
||||
Me.Label9.TextAlign = System.Drawing.ContentAlignment.TopRight
|
||||
'
|
||||
'cbxCurrenyear
|
||||
'
|
||||
Me.cbxCurrenyear.AutoSize = True
|
||||
Me.cbxCurrenyear.Checked = True
|
||||
Me.cbxCurrenyear.CheckState = System.Windows.Forms.CheckState.Checked
|
||||
Me.cbxCurrenyear.Location = New System.Drawing.Point(296, 12)
|
||||
Me.cbxCurrenyear.Name = "cbxCurrenyear"
|
||||
Me.cbxCurrenyear.Size = New System.Drawing.Size(15, 14)
|
||||
Me.cbxCurrenyear.TabIndex = 73
|
||||
Me.cbxCurrenyear.UseVisualStyleBackColor = True
|
||||
'
|
||||
'frmEssensbestellungenAdministration
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
|
||||
@@ -68,7 +68,10 @@ Public Class frmEssensbestellungenAdministration
|
||||
.Columns("eb_kw").HeaderText = "KW"
|
||||
.Columns("eb_kw").Width = 80
|
||||
.Columns("eb_mitid").HeaderText = "MID"
|
||||
.Columns("eb_mitid").HeaderText = "MID"
|
||||
.Columns("eb_mitid").Width = 40
|
||||
.Columns("eb_mitid").HeaderText = "MID"
|
||||
.Columns("eb_mitid").Visible = False
|
||||
.Columns("eb_mitname").HeaderText = "Mitarbeiter"
|
||||
.Columns("eb_mitname").AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill
|
||||
.Columns("eb_abteilung").Visible = False
|
||||
@@ -636,7 +639,7 @@ Public Class frmEssensbestellungenAdministration
|
||||
If cAllgemein.MITARBEITER.getFirma = "UNISPED" Then
|
||||
sqlWhere &= " And eb_firma = '" & cAllgemein.MITARBEITER.getFirma & "' "
|
||||
Else
|
||||
sqlWhere &= " And eb_firma = 'VERAG' OR eb_firma = 'IMEX' OR eb_firma = 'FRONTOFFICE'"
|
||||
sqlWhere &= " And (eb_firma = 'VERAG' OR eb_firma = 'IMEX' OR eb_firma = 'FRONTOFFICE')"
|
||||
End If
|
||||
|
||||
Dim SQLStringBEstellungen As String = "SELECT [eb_mitname] as Name ,[eb_mitid] as ID , [eb_kw] as KW , [eb_gebaeude] as Gebaeude ,[eb_abteilung] as Abteilung ,[eb_montag] As Montag ,[eb_dienstag] As Dienstag,[eb_mittwoch] As Mittwoch,
|
||||
@@ -721,15 +724,15 @@ Public Class frmEssensbestellungenAdministration
|
||||
|
||||
|
||||
|
||||
Dim SQLStringMenues As String = "SELECT TOP (1) [MenuEssenMoDate] as Montag
|
||||
,[MenuEssenDiDate] as Dienstag
|
||||
,[MenuEssenMiDate] as Mittwoch
|
||||
,[MenuEssenDoDate] as Donnerstag
|
||||
,[MenuEssenFrDate] as Freitag
|
||||
FROM
|
||||
[tblEBMenu] WHERE eb_kw = '" & cbxMailKW._value & "' AND eb_gebaeude = '" & cbxMailGebäude._value & "' AND ISNULL(eb_storniert,1)=0 " & sqlWhere & " Order by eb_datum"
|
||||
'Dim SQLStringMenues As String = "SELECT TOP (1) [MenuEssenMoDate] as Montag
|
||||
' ,[MenuEssenDiDate] as Dienstag
|
||||
' ,[MenuEssenMiDate] as Mittwoch
|
||||
' ,[MenuEssenDoDate] as Donnerstag
|
||||
' ,[MenuEssenFrDate] as Freitag
|
||||
' FROM
|
||||
' [tblEBMenu] WHERE eb_kw = '" & cbxMailKW._value & "' AND eb_gebaeude = '" & cbxMailGebäude._value & "' AND ISNULL(eb_storniert,1)=0 " & sqlWhere & " Order by eb_datum"
|
||||
|
||||
Dim dtMenu = SQL.loadDgvBySql(SQLStringMenues, "AVISO", 100, True)
|
||||
'Dim dtMenu = SQL.loadDgvBySql(SQLStringMenues, "AVISO", 100, True)
|
||||
|
||||
|
||||
|
||||
@@ -947,6 +950,7 @@ Public Class frmEssensbestellungenAdministration
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
'Private Sub cbxCurrenyear_CheckedChanged(sender As Object, e As EventArgs) Handles cbxCurrenyear.CheckedChanged
|
||||
' changeYear()
|
||||
'End Sub
|
||||
|
||||
@@ -19,7 +19,9 @@ Public Class frmUeberstundenauszahlen
|
||||
Dim maxUberstundenpruefung As Boolean = True
|
||||
Dim istTeilzeit As Boolean = False
|
||||
Dim faktorTeilzeit As Double = 100
|
||||
Dim faktorFeiertagsarbeit As Double = 200
|
||||
Dim faktorSamstagsarbeit As Double = 150
|
||||
Dim keinenFaktor As Boolean = False
|
||||
Dim stunden100ausz, stunden50ausz, stunden100auszbere, stunden50auszbere, stunden100bereitsausbezahl, stunden50bereitsausbezahlt, stunden25bereitsausbezahlt, mehrabeit, stundenlfdSaldo, stundenlfdSaldobere, overwrittenSum As Double
|
||||
|
||||
|
||||
@@ -49,9 +51,11 @@ Public Class frmUeberstundenauszahlen
|
||||
'1553;"AUSZ ÜS MA 25%"
|
||||
timeaccountdt = dv.ToTable
|
||||
|
||||
getAddDataFromTimas()
|
||||
|
||||
getUeberstunden(False)
|
||||
|
||||
getAddDataFromTimas()
|
||||
'getAddDataFromTimas()
|
||||
|
||||
|
||||
End Sub
|
||||
@@ -90,14 +94,6 @@ Public Class frmUeberstundenauszahlen
|
||||
enddate = (dtpBis.Value)
|
||||
auszahlugsdatum = tag.GetLastyDayYInxMonth(enddate.DayOfWeek, enddate.Month, enddate.Year, True) 'Endmonat des Enddates
|
||||
|
||||
'Dim bereitsgezahlteueberstunden = "select sum(isnull(uest_100,0)) as ue100 , sum(isnull(uest_50,0)) as ue50, sum(isnull(uest_25,0)) as ue25, sum(isnull(uest_0,0)) as ue0
|
||||
'FROM [ADMIN].[dbo].[tblUeberstunden]
|
||||
'where uest_date between '" & startdate & "' and '" & enddate & "' and uest_deleted = 0 and uest_maId = " & MA.mit_id & "
|
||||
'group by uest_maId"
|
||||
|
||||
'dtbereitsausgezahlteUE.Clear()
|
||||
'dtbereitsausgezahlteUE = SQL.loadDgvBySql(bereitsgezahlteueberstunden, "ADMIN", 100, True)
|
||||
|
||||
Else
|
||||
startdate = tag.GetFirstyDayYInxMonth(DateTime.Parse(dtpMonat.Value).DayOfWeek, DateTime.Parse(dtpMonat.Value).Month, DateTime.Parse(dtpMonat.Value).Year, True)
|
||||
enddate = tag.GetLastyDayYInxMonth(DateTime.Parse(dtpMonat.Value).DayOfWeek, DateTime.Parse(dtpMonat.Value).Month, DateTime.Parse(dtpMonat.Value).Year, True)
|
||||
@@ -449,16 +445,29 @@ Public Class frmUeberstundenauszahlen
|
||||
|
||||
|
||||
Dim sum100, sum50, sum0, gesamt As Double
|
||||
sum100 = RoundOfDigits(CDbl(txtAusz100.Text) * 100 / 200, 2) 'Übergabe in ZE-System als heruntergerechnete 100%ige bzw. 50%ige ÜS!
|
||||
sum100 = RoundOfDigits(CDbl(txtAusz100.Text) * 100 / faktorFeiertagsarbeit, 2) 'Übergabe in ZE-System als heruntergerechnete 100%ige bzw. 50%ige ÜS!
|
||||
sum50 = RoundOfDigits(CDbl(txtAusz50.Text) * 100 / faktorSamstagsarbeit, 2)
|
||||
sum0 = RoundOfDigits(CDbl(txtAusz50vonSaldo.Text) * 100 / faktorTeilzeit, 2)
|
||||
gesamt = IIf(overwrittenSum > 0, overwrittenSum, CDbl(txtAusz.Text))
|
||||
|
||||
|
||||
If faktorSamstagsarbeit = 150 AndAlso istTeilzeit Then
|
||||
'Besprechung mit RESI ob Teilzeitmitarbeiter 50% ausgezahlt bekommen oder diese umgerechnet in 25% werden!
|
||||
MsgBox("Die Konstellation SA-Zuschlag und Teilzeitmitarbeiter ist noch nicht umgesetzt!")
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
Dim txtAusgabe As New StringBuilder
|
||||
txtAusgabe.Append("Überstunden für " & MA.mit_vname & " " & MA.mit_nname & " mit " & auszahlugsdatum.ToShortDateString() & " auszahlen?" & vbNewLine)
|
||||
txtAusgabe.Append(sum100 & "x 100% ÜS :" & txtAusz100.Text & vbNewLine)
|
||||
txtAusgabe.Append(IIf(Not istTeilzeit, sum50 + sum0, sum50) & "x 50% ÜS: " & CDbl(txtAusz50.Text) + IIf(Not istTeilzeit, CDbl(txtAusz50vonSaldo.Text), 0) & vbNewLine)
|
||||
If istTeilzeit Then txtAusgabe.Append(sum0 & "x 25% ÜS: " & CDbl(txtAusz50vonSaldo.Text) & vbNewLine)
|
||||
If Not istTeilzeit Then
|
||||
txtAusgabe.Append(sum50 + sum0 & "x 50% ÜS: " & CDbl(txtAusz50.Text) + CDbl(txtAusz50vonSaldo.Text) & vbNewLine)
|
||||
Else
|
||||
txtAusgabe.Append(sum50 + sum0 & "x 25% ÜS: " & CDbl(txtAusz50.Text) + CDbl(txtAusz50vonSaldo.Text) & vbNewLine)
|
||||
End If
|
||||
|
||||
|
||||
|
||||
txtAusgabe.Append("ÜS gesamt: " & gesamt)
|
||||
|
||||
Dim aksAuszahlung As MsgBoxResult = MsgBox(txtAusgabe.ToString, vbYesNo)
|
||||
@@ -483,24 +492,35 @@ Public Class frmUeberstundenauszahlen
|
||||
dtsetEntries.Rows.InsertAt(row, dtsetEntries.Rows.Count)
|
||||
|
||||
End If
|
||||
If istTeilzeit Then
|
||||
If sum50 > 0 Then
|
||||
Dim row = dtsetEntries.NewRow
|
||||
row.Item("accountid") = 1551
|
||||
row.Item("value") = sum50.ToString.Replace(",", ".")
|
||||
dtsetEntries.Rows.InsertAt(row, dtsetEntries.Rows.Count)
|
||||
End If
|
||||
|
||||
If sum0 > 0 Then
|
||||
Dim row = dtsetEntries.NewRow
|
||||
row.Item("accountid") = 1553
|
||||
row.Item("value") = sum0.ToString.Replace(",", ".")
|
||||
dtsetEntries.Rows.InsertAt(row, dtsetEntries.Rows.Count)
|
||||
End If
|
||||
'ANMERKUNG -> TZ-Mitarbeiter bekommt die Stunden, die am SA gearbeitet wurden, auch als 25% ausgezahlt!
|
||||
If (sum50 > 0 Or sum0 > 0) And istTeilzeit Then
|
||||
Dim row = dtsetEntries.NewRow
|
||||
row.Item("accountid") = 1553
|
||||
row.Item("value") = (sum50 + sum0).ToString.Replace(",", ".")
|
||||
dtsetEntries.Rows.InsertAt(row, dtsetEntries.Rows.Count)
|
||||
|
||||
End If
|
||||
|
||||
|
||||
If gesamt > 0 Then 'vom ldf Saldo, ev. über API Möglich monatliche Korrektur direkt zu befüllen, dann muss dieser If Zweig überarbeitet werden!!!!!!!!!!!!!!
|
||||
'If istTeilzeit Then
|
||||
' If sum50 > 0 Then
|
||||
' Dim row = dtsetEntries.NewRow
|
||||
' row.Item("accountid") = 1551
|
||||
' row.Item("value") = sum50.ToString.Replace(",", ".")
|
||||
' dtsetEntries.Rows.InsertAt(row, dtsetEntries.Rows.Count)
|
||||
' End If
|
||||
|
||||
' If sum0 > 0 Then
|
||||
' Dim row = dtsetEntries.NewRow
|
||||
' row.Item("accountid") = 1553
|
||||
' row.Item("value") = sum0.ToString.Replace(",", ".")
|
||||
' dtsetEntries.Rows.InsertAt(row, dtsetEntries.Rows.Count)
|
||||
' End If
|
||||
'End If
|
||||
|
||||
|
||||
If gesamt > 0 Then
|
||||
Dim row = dtsetEntries.NewRow
|
||||
row.Item("accountid") = 1598
|
||||
row.Item("value") = gesamt.ToString.Replace(",", ".") * (-1)
|
||||
@@ -601,20 +621,23 @@ Public Class frmUeberstundenauszahlen
|
||||
|
||||
|
||||
Dim ues As New cUeberstunden(MA.mit_id, auszahlugsdatum.ToString("dd/MM/yyyy"))
|
||||
ues.uest_deleted = True
|
||||
ues.uest_lastChanged = Now()
|
||||
ues.uest_systemuser = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
|
||||
ues.SAVE()
|
||||
|
||||
If ues.hasEntry Then
|
||||
ues.uest_deleted = True
|
||||
ues.uest_lastChanged = Now()
|
||||
ues.uest_systemuser = VERAG_PROG_ALLGEMEIN.cAllgemein.USRKURZNAME
|
||||
ues.SAVE()
|
||||
End If
|
||||
|
||||
MsgBox("Erfolgreich aus Timas zurückgesetzt!")
|
||||
picDel.Visible = False
|
||||
Thread.Sleep(1000) 'warten bis Eintrag in Timas-DB
|
||||
getUeberstunden(cbxabwDatum.Checked)
|
||||
picDel.Visible = False
|
||||
Thread.Sleep(1000) 'warten bis Eintrag in Timas-DB
|
||||
getUeberstunden(cbxabwDatum.Checked)
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Public Function RoundOfDigits(ByVal Value As Decimal, ByVal Digits As Integer) As Decimal
|
||||
@@ -626,9 +649,11 @@ Public Class frmUeberstundenauszahlen
|
||||
|
||||
If istTeilzeit Then
|
||||
lbllfdSaldo.Text = "Mehrarbeit 25% (nur Teilzeit-MA)"
|
||||
Label4.Text = "Überstunden 50% (Sa) - werden als 25% ausbezahlt!"
|
||||
faktorTeilzeit = 100 ' werden Zeitlich nicht hochgerechnet, sondern nur mit aufschlag ausbezahlt, somit keine Hochrechnung um Faktor!
|
||||
Else
|
||||
lbllfdSaldo.Text = "lfd Saldo"
|
||||
Label4.Text = "Überstunden 50% (Sa)"
|
||||
faktorTeilzeit = 100
|
||||
End If
|
||||
|
||||
@@ -707,9 +732,11 @@ Public Class frmUeberstundenauszahlen
|
||||
|
||||
|
||||
'wenn berechneter Saldo negativ, dann ist im Regelfall das aktuelle MOnat noch nicht abgeschlossen!, daher anstatt den berechneten Saldo in overallBalance laden!
|
||||
'wenn keinFaktor (also keine hochgerechneten 100% und 50%, dann kann nur monatsweiiße ausbezahlt werden (weil
|
||||
|
||||
txtlfdSaldo.Text = timas.getTimeSaldo(MA.mit_timasId, "", "overallBalance")
|
||||
|
||||
stunden100auszbere = RoundOfDigits(stunden100ausz * 2, 2)
|
||||
stunden100auszbere = RoundOfDigits(stunden100ausz * faktorFeiertagsarbeit / 100, 2)
|
||||
stunden50auszbere = RoundOfDigits(stunden50ausz * faktorSamstagsarbeit / 100, 2)
|
||||
|
||||
txt100x2.Text = stunden100auszbere
|
||||
@@ -755,17 +782,28 @@ Public Class frmUeberstundenauszahlen
|
||||
faktorSamstagsarbeit = 150 'Samstagsarbeit wir im Timas hochgerechnet
|
||||
lblMA.Text = "Mitarbeiter (mit SA-Zuschlag):"
|
||||
Else
|
||||
lblMA.Text = "Mitarbeiter (ohne SA-Zuschlag):"
|
||||
faktorSamstagsarbeit = 100 'Samstagsarbeit wir im Timas NICHT hochgerechnet
|
||||
lblMA.Text = "Mitarbeiter (ohne SA-Zuschlag):"
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
If row.Item("name") = "ÜS werden nicht auf lfd. Saldo hinzugezählt" Then
|
||||
If row.Item("value") = "true" Then
|
||||
Label5.Text = "ÜS werden nicht auf lfd. Saldo hinzugezählt!"
|
||||
keinenFaktor = True
|
||||
'Zuschläge ohne Faktoren!
|
||||
faktorSamstagsarbeit = 100
|
||||
faktorFeiertagsarbeit = 100
|
||||
faktorTeilzeit = 100
|
||||
|
||||
Else
|
||||
Label5.Text = ""
|
||||
keinenFaktor = False
|
||||
End If
|
||||
|
||||
cbxabwDatum.Enabled = Not keinenFaktor
|
||||
|
||||
End If
|
||||
|
||||
If row.Item("name") = "Automatisch auszahlen" Then
|
||||
|
||||
Reference in New Issue
Block a user