public static string GetLblOnlineString(Registratie reg) { if (reg.CheckOut == null) { var checkIn = reg.CheckIn; return ($"Aanwezig sinds {checkIn.ToShortTimeString()} ({Registratie.TotalDuration(Data.GetRegsForDay(checkIn))})"); } var r = (DateTime)reg.CheckOut; return($"Laatst uitgeklokt op {r.ToShortDateString()} om {r.ToShortTimeString()}"); }
public void SetRegistrations(List <Registratie> regs, DateTime date) { _registraties = regs; _date = date; groupBox1.BackColor = date.Equals(DateTime.Today) ? Color.CadetBlue : DefaultBackColor; lblDate.Text = date.ToString("ddd d-M"); btnEdit.Image = Image.FromStream(GetImageStream(regs.Count > 0 ? "Pencil.ico" : "add.ico")); lblIn.Visible = lblOut.Visible = regs.Count != 0; if (regs.Count == 0) { lblTotaal.Text = @"Niet Gewerkt"; } else { lblIn.Text = $"In: {regs[0].CheckIn.ToShortTimeString()}"; lblOut.Text = $"Uit: {(regs.Last().CheckOut ?? DateTime.Now).ToShortTimeString()}"; lblOut.Font = new Font(lblOut.Font, regs.Last().CheckOut.HasValue ? FontStyle.Regular : FontStyle.Bold); lblTotaal.Text = $"Totaal: {Registratie.TotalDuration(regs)}"; } }
public static string GenerateOverview(DateTime dt) { if (!CanGenerate(dt)) { return(""); } var regs = Data.GetRegsForMonth(dt); const string line = "\n"; //var periodstr = "26 " + dt.AddMonths(-1).ToString("MMMM") + " tot 25 " + dt.ToString("MMMM yyyy"); var periodstr = dt.ToString("MMMM yyyy"); var sb = new StringBuilder(); sb.Append(line); sb.Append(";Periode:;;").Append(periodstr + line); sb.Append(line); sb.Append(";Dag:;;Ingeklokt:;Uitgeklokt:;Duur:;Waar:;;Vervoer:;Km:" + line); foreach (var r in regs) { sb.Append(";").Append(r.CheckIn.ToString("dddd d-M")).Append(";;"); sb.Append(r.CheckIn.ToShortTimeString()).Append(";"); sb.Append(r.CheckOut.Value.ToShortTimeString()).Append(";"); sb.Append(r.Duration(r.CheckOut.Value)).Append(";"); sb.Append(r.Location).Append(";;"); sb.Append(r.ModeOfTransport).Append(";"); sb.Append(r.Distance + line); } sb.Append(";;;;Totaal:;").Append(Registratie.TotalDuration(regs) + line); sb.Append(line); var diff = Registratie.Difference(Data.All()); if (dt.Month != DateTime.Today.Month) { var end = dt.AddDays(-(dt.Day - 1)).AddMonths(1); diff = Registratie.Difference(Data.GetRegsForPeriod(Contract.Begin, end), end); } sb.Append(";Overuren:;;").Append(diff.Replace(":", ",") + line); sb.Append(";Totaal gewerkt:;;").Append(Registratie.TotalDuration(Data.All()) + line); return(sb.ToString()); }
private void SetForm() { chrtUren.Enabled = grpTotalen.Enabled = grpOverzicht.Enabled = Data.IsConnected && !Data.DbEmpty; grpKlokken.Enabled = Data.IsConnected; btnClockIn.Enabled = !Data.IsLoggedIn(); btnClockOut.Enabled = !btnClockIn.Enabled; var reg = Data.Last(); if (reg == null) { return; } SetBtnGenerate(); ucWeek.Init(); lblOnline.Text = StringLayer.GetLblOnlineString(reg); lblUrenWeek.Text = Registratie.TotalDuration(Data.GetRegsForWeek(DateTime.Now)) + "/" + Contract.Uren; lblUrenTotaal.Text = Registratie.TotalDuration(Data.All()); lblUrenDiff.Text = Registratie.Difference(Data.All()); lblUrenDiff.ForeColor = lblUrenDiff.Text.StartsWith("-") ? Color.Red : Color.Green; chrtUren.Series[0] = GraphLayer.GetSeries(GraphLayer.WorkedHours); }
public static double WorkedHours(DateTime d) { return(Convert.ToDouble(Registratie.TotalDuration(Data.GetRegsForWeek(d)).Replace(':', ','))); }