Exemple #1
0
        private void LoadTravelRoutesToStackPanel()
        {
            SpTravelRoutes.Children.Clear();

            List <TravelRoute> travelRoutes = travelRoutesSqlRepository.ReadAll();

            foreach (TravelRoute travelRoute in travelRoutes)
            {
                TravelRoutePanel travelRoutePanel = new TravelRoutePanel(travelRoute);

                SpTravelRoutes.Children.Add(travelRoutePanel);
            }
        }
Exemple #2
0
        private XmlWriter WriteTravelRoutes(XmlWriter xmlWriter)
        {
            List <TravelRoute> travelRoutes = travelRoutesSqlRepository.ReadAll();

            xmlWriter.WriteStartElement("TravelRoutes");

            foreach (TravelRoute travelRoute in travelRoutes)
            {
                xmlWriter.WriteStartElement("TravelRoute");
                xmlWriter.WriteAttributeString("Id", travelRoute.Id.ToString());

                xmlWriter.WriteStartElement("DateIssued");
                xmlWriter.WriteString(travelRoute.DateIssued.ToShortDateString());
                xmlWriter.WriteEndElement();

                xmlWriter.WriteStartElement("TimeIssued");
                xmlWriter.WriteString(travelRoute.TimeIssued.ToString());
                xmlWriter.WriteEndElement();

                xmlWriter.WriteStartElement("Origin");
                xmlWriter.WriteString(travelRoute.Origin);
                xmlWriter.WriteEndElement();

                xmlWriter.WriteStartElement("Destination");
                xmlWriter.WriteString(travelRoute.Destination);
                xmlWriter.WriteEndElement();

                xmlWriter.WriteStartElement("KilometersTraveled");
                xmlWriter.WriteString(travelRoute.KilometersTraveled.ToString());
                xmlWriter.WriteEndElement();

                xmlWriter.WriteStartElement("AverageSpeed");
                xmlWriter.WriteString(travelRoute.AverageSpeed.ToString());
                xmlWriter.WriteEndElement();

                xmlWriter.WriteStartElement("SpentFuel");
                xmlWriter.WriteString(travelRoute.SpentFuel.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");
        }