private void LoadTravelWarrantsToStackPanel() { SpTravelWarrants.Children.Clear(); List <TravelWarrant> travelWarrants = travelWarrantsSqlRepository.ReadAll(); foreach (TravelWarrant travelWarrant in travelWarrants) { TravelWarrantPanel travelWarrantPanel = new TravelWarrantPanel(travelWarrant); SpTravelWarrants.Children.Add(travelWarrantPanel); } }
private XmlWriter WriteTravelWarrants(XmlWriter xmlWriter) { List <TravelWarrant> travelWarrants = travelWarrantsSqlRepository.ReadAll(); xmlWriter.WriteStartElement("TravelWarrants"); foreach (TravelWarrant travelWarrant in travelWarrants) { xmlWriter.WriteStartElement("TravelWarrant"); xmlWriter.WriteAttributeString("Id", travelWarrant.Id.ToString()); xmlWriter.WriteStartElement("WarrantStatus"); xmlWriter.WriteString(travelWarrant.WarrantStatus); xmlWriter.WriteEndElement(); xmlWriter.WriteStartElement("DateIssued"); xmlWriter.WriteString(travelWarrant.DateIssued.ToShortDateString()); xmlWriter.WriteEndElement(); xmlWriter.WriteStartElement("TimeIssued"); xmlWriter.WriteString(travelWarrant.TimeIssued.ToString()); xmlWriter.WriteEndElement(); xmlWriter.WriteStartElement("DriverId"); xmlWriter.WriteString(travelWarrant.DriverId.ToString()); xmlWriter.WriteEndElement(); xmlWriter.WriteStartElement("VehicleId"); xmlWriter.WriteString(travelWarrant.VehicleId.ToString()); xmlWriter.WriteEndElement(); xmlWriter.WriteStartElement("TravelRouteId"); xmlWriter.WriteString(travelWarrant.TravelRouteId.ToString()); xmlWriter.WriteEndElement(); xmlWriter.WriteStartElement("FuelCostId"); xmlWriter.WriteString(travelWarrant.FuelCostId.ToString()); xmlWriter.WriteEndElement(); xmlWriter.WriteEndElement(); } xmlWriter.WriteEndElement(); return(xmlWriter); }
private void GenerateVehicleReport() { Vehicle v = vehiclesSqlRepository.ReadById(vehicle.Id); string make = v.Make; string model = v.Model; float currentlyTraveledKilometers = v.InitialMileage; float averageSpeed = 0; int counter = 0; List <TravelWarrant> travelWarrants = travelWarrantsSqlRepository.ReadAll(); List <TravelRoute> travelRoutes = travelRoutesSqlRepository.ReadAll(); foreach (TravelWarrant travelWarrant in travelWarrants) { if (travelWarrant.VehicleId == v.Id) { TravelRoute travelRoute = travelRoutesSqlRepository.ReadById(travelWarrant.TravelRouteId); currentlyTraveledKilometers += travelRoute.KilometersTraveled; averageSpeed += travelRoute.AverageSpeed; counter++; } } averageSpeed /= counter; var resourceName = Assembly.GetExecutingAssembly().GetManifestResourceNames().Where(q => q.Contains("Template.html")).FirstOrDefault(); using (Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName)) { using (StreamReader reader = new StreamReader(stream)) { StringBuilder sb = new StringBuilder(); List <Service> services = servicesSqlRepository.ReadAll(); foreach (Service service in services) { if (service.Vehicle.Id == v.Id) { sb.Append("<table>\n"); sb.Append("<tr>\n"); foreach (ServiceItem serviceItem in service.ServiceItems) { sb.Append("<td></br>"); sb.Append("Service item\n"); sb.Append("</br>"); sb.Append(serviceItem.Name + "\n"); sb.Append("</br>"); sb.Append(serviceItem.Price + "\n"); sb.Append("</br>"); sb.Append("</td>\n"); } sb.Append("</tr>\n"); sb.Append("</table>\n"); } } string html = reader.ReadToEnd().Replace("$$MAKE$$", make).Replace("$$MODEL$$", model).Replace("$$CTK$$", currentlyTraveledKilometers.ToString()).Replace("$$AVERAGESPEED$$", averageSpeed.ToString()).Replace("$$SERVICEITEMS$$", sb.ToString()); File.WriteAllText(@"../../../DataForExport/HtmlVehicleReport.html", html); } } MessageBox.Show("Success"); System.Diagnostics.Process.Start(@"C:\Development\project-adpc-vehiclemanager\DataForExport/HtmlVehicleReport.html"); }