public void ImportRouteNumbers() { try { string filepath = Environment.ExpandEnvironmentVariables("RouteNumbers.csv"); var data = File.ReadAllLines(filepath, encoding) .Skip(1) .Select(x => x.Split(';')) .Select(x => new RouteNumber { RouteID = TryParseToIntElseZero(x[0]), RequiredVehicleType = TryParseToIntElseZero(x[1]), }); //Instatiate and open connection to database using (FynbusBackupModel db = new FynbusBackupModel()) { foreach (var r in data) { //Assign values and add data to database RouteNumbersTable routenumbertable = new RouteNumbersTable(); routenumbertable.RouteID = r.RouteID; routenumbertable.RequiredVehicleType = r.RequiredVehicleType; db.RouteNumbersTables.Add(routenumbertable); bool doesAlreadyContain = listOfRouteNumbers.Any(obj => obj.RouteID == r.RouteID); if (!doesAlreadyContain && r.RouteID != 0 && r.RequiredVehicleType != 0) { listOfRouteNumbers.Add(r); } } //Save changes to database db.SaveChanges(); } } catch (IndexOutOfRangeException) { throw new IndexOutOfRangeException("Fejl, er du sikker på du har valgt den rigtige fil?"); } catch (FormatException) { throw new FormatException("Fejl, er du sikker på du har valgt den rigtige fil?"); } catch (Exception x) { throw new Exception("Fejl, filerne blev ikke importeret" + x.Message); } }
public void ImportOffers(string filepath) { try { var data = File.ReadAllLines(filepath, encoding) .Skip(1) .Select(x => x.Split(';')) .Select(x => new Offer { OfferReferenceNumber = x[0], RouteID = TryParseToIntElseZero(x[1]), OperationPrice = TryParseToFloatElseZero((x[2])), UserID = x[5], CreateRouteNumberPriority = x[6], CreateContractorPriority = x[7], }); //Instatiate and open connection to database using (FynbusBackupModel db = new FynbusBackupModel()) { foreach (var o in data) { //Assign values and add data to database OffersTable offerstable = new OffersTable(); offerstable.OfferReferenceNumber = o.OfferReferenceNumber; offerstable.RouteID = o.RouteID; offerstable.OperationPrice = o.OperationPrice; offerstable.UserID = o.UserID; offerstable.CreateRouteNumberPriority = o.CreateRouteNumberPriority; offerstable.CreateContractorPriority = o.CreateContractorPriority; db.OffersTables.Add(offerstable); if (o.UserID != "" || o.OperationPrice != 0) { o.RouteNumberPriority = TryParseToIntElseZero(o.CreateRouteNumberPriority); o.ContractorPriority = TryParseToIntElseZero(o.CreateContractorPriority); Contractor contractor = listOfContractors.Find(x => x.UserID == o.UserID); try { o.RequiredVehicleType = (listOfRouteNumbers.Find(r => r.RouteID == o.RouteID)).RequiredVehicleType; Offer newOffer = new Offer(o.OfferReferenceNumber, o.OperationPrice, o.RouteID, o.UserID, o.RouteNumberPriority, o.ContractorPriority, contractor, o.RequiredVehicleType); listOfOffers.Add(newOffer); } catch { // Help for debugging purpose only. string failure = o.RouteID.ToString(); } } } db.SaveChanges(); } foreach (RouteNumber routeNumber in listOfRouteNumbers) { foreach (Offer offer in listOfOffers) { if (offer.RouteID == routeNumber.RouteID) { routeNumber.offers.Add(offer); } } } } catch (IndexOutOfRangeException) { throw new IndexOutOfRangeException("Fejl, er du sikker på du har valgt den rigtige fil?"); } catch (FormatException) { throw new FormatException("Fejl, er du sikker på du har valgt den rigtige fil?"); } catch (Exception) { throw new Exception("Fejl, filerne blev ikke importeret"); } }
public void ImportContractors(string filepath) { try { var data = File.ReadAllLines(filepath, encoding) .Skip(1) .Select(x => x.Split(';')) .Select(x => new Contractor { ReferenceNumberBasicInformationPDF = x[0], ManagerName = x[1], CompanyName = x[2], UserID = x[3], TryParseValueType2PledgedVehicles = x[4], TryParseValueType3PledgedVehicles = x[5], TryParseValueType5PledgedVehicles = x[6], TryParseValueType6PledgedVehicles = x[7], TryParseValueType7PledgedVehicles = x[8], }); //Instatiate and open connection to database using (FynbusBackupModel db = new FynbusBackupModel()) { foreach (var c in data) { //Assign values and add data to database ContractorsTable contractorstable = new ContractorsTable(); contractorstable.ReferenceNumberBasicInformationPDF = c.ReferenceNumberBasicInformationPDF; contractorstable.ManagerName = c.ManagerName; contractorstable.CompanyName = c.CompanyName; contractorstable.UserID = c.UserID; contractorstable.TryParseValueType2PledgedVehicles = c.TryParseValueType2PledgedVehicles; contractorstable.TryParseValueType3PledgedVehicles = c.TryParseValueType3PledgedVehicles; contractorstable.TryParseValueType3PledgedVehicles = c.TryParseValueType5PledgedVehicles; contractorstable.TryParseValueType3PledgedVehicles = c.TryParseValueType6PledgedVehicles; contractorstable.TryParseValueType3PledgedVehicles = c.TryParseValueType7PledgedVehicles; db.ContractorsTables.Add(contractorstable); if (c.UserID != "") { { bool doesAlreadyContain = listOfContractors.Any(obj => obj.UserID == c.UserID); c.NumberOfType2PledgedVehicles = TryParseToIntElseZero(c.TryParseValueType2PledgedVehicles); c.NumberOfType3PledgedVehicles = TryParseToIntElseZero(c.TryParseValueType3PledgedVehicles); c.NumberOfType5PledgedVehicles = TryParseToIntElseZero(c.TryParseValueType5PledgedVehicles); c.NumberOfType6PledgedVehicles = TryParseToIntElseZero(c.TryParseValueType6PledgedVehicles); c.NumberOfType7PledgedVehicles = TryParseToIntElseZero(c.TryParseValueType7PledgedVehicles); Contractor newContractor = new Contractor(c.ReferenceNumberBasicInformationPDF, c.UserID, c.CompanyName, c.ManagerName, c.NumberOfType2PledgedVehicles, c.NumberOfType3PledgedVehicles, c.NumberOfType5PledgedVehicles, c.NumberOfType6PledgedVehicles, c.NumberOfType7PledgedVehicles); listOfContractors.Add(newContractor); } } } //Save changes to database db.SaveChanges(); } } catch (IndexOutOfRangeException) { throw new IndexOutOfRangeException("Fejl, er du sikker på du har valgt den rigtige fil?"); } catch (FormatException) { throw new FormatException("Fejl, er du sikker på du har valgt den rigtige fil?"); } catch (Exception x) { throw new Exception("Fejl, filerne blev ikke importeret" + x.Message); } }