Ejemplo n.º 1
0
        /// <summary>
        /// Erzeugt Liste von Buchungen mmit Start  und Endzeit, pro Tag nur eine Buchung
        /// </summary>
        /// <param name="objectSpace"></param>
        /// <param name="folderToSave"></param>
        /// <param name="bookings"></param>
        public static void ExportJdcBookings(IObjectSpace objectSpace, string folderToSave, IList <IBooking> bookings)
        {
            _objectSpace = objectSpace;

            var csvExport = new CsvExport(";");

            var groupedBookingList = from booking in bookings
                                     group booking by booking.Date into newBooking
                                     orderby newBooking.Key ascending
                                     select newBooking;

            var employee = bookings.FirstOrDefault()?.Employee;

            foreach (var item in groupedBookingList)
            {
                var jdcBooking = new JdcBooking
                {
                    Date         = item.Key,
                    EmployeeName = $"{employee.Name.Split(' ').First()} {employee.Name.Split(' ').Last()}",
                    StartTime    = item.OrderBy(i => i.StartTime).FirstOrDefault().StartTime,
                    EndTime      = item.OrderBy(i => i.StartTime).LastOrDefault().EndTime
                };

                AddJdcBookingRow(csvExport, jdcBooking);
            }

            csvExport.ExportToFile($@"{folderToSave}\{employee.Name.Split(' ').First()} {employee.Name.Split(' ').Last()}.csv");
        }
Ejemplo n.º 2
0
 private static void AddJdcBookingRow(CsvExport csvExport,
                                      JdcBooking booking)
 {
     csvExport.AddRow();
     csvExport["Datum"] = $"{booking.Date.ToShortDateString()}";
     csvExport["Name"]  = $"{booking.EmployeeName}";
     csvExport["Kommt"] = $"{booking.StartTime}";
     csvExport["Geht"]  = $"{booking.EndTime}";
 }