public void Insert(SystemBody body) { if (bodycmd == null) { Context.Set <SystemBody>().Add(body); Context.SaveChanges(); } else { bodycmd.Transaction = Context.Database.CurrentTransaction?.UnderlyingTransaction; namecmd.Transaction = Context.Database.CurrentTransaction?.UnderlyingTransaction; paramSystemId.Value = body.SystemId; paramBodyID.Value = body.BodyID; paramStars.Value = body.Stars; paramIsBelt.Value = body.IsBelt; paramPlanet.Value = body.Planet; paramMoon1.Value = body.Moon1; paramMoon2.Value = body.Moon2; paramMoon3.Value = body.Moon3; paramScanBaseHash.Value = body.ScanBaseHash; paramCustomNameId.Value = body.CustomNameId; body.Id = execbodycmd(bodycmd); if (body.CustomName != null) { body.CustomName.Id = body.Id; paramNameId.Value = body.Id; paramNameSystemId.Value = body.SystemId; paramNameBodyID.Value = body.CustomName.BodyID; paramCustomName.Value = body.CustomName.CustomName; namecmd.ExecuteNonQuery(); } } }
public void Insert(EDDNJournalScan scan) { if (cmd == null) { Context.Set <EDDNJournalScan>().Add(scan); Context.SaveChanges(); } else { cmd.Transaction = Context.Database.CurrentTransaction?.UnderlyingTransaction; paramBodyScanId.Value = scan.BodyScanId; paramGatewayTimestamp.Value = scan.GatewayTimestampTicks; paramScanTimestamp.Value = scan.ScanTimestampSeconds; paramSoftwareVersionId.Value = scan.SoftwareVersionId; paramScanTypeId.Value = (object)scan.ScanTypeId ?? DBNull.Value; paramDistFromArrival.Value = scan.DistanceFromArrivalLS; paramHasSystemAddress.Value = (object)scan.HasSystemAddress ?? DBNull.Value; paramHasBodyID.Value = scan.HasBodyID; paramHasParents.Value = scan.HasParents; paramHasComposition.Value = scan.HasComposition; paramHasAxialTilt.Value = scan.HasAxialTilt; paramHasLuminosity.Value = scan.HasLuminosity; paramIsMaterialsDict.Value = scan.IsMaterialsDict; paramIsBasicScan.Value = scan.IsBasicScan; paramIsPos3SigFig.Value = scan.IsPos3SigFig; paramHasAtmosphereType.Value = scan.HasAtmosphereType; paramHasAtmosphereComposition.Value = scan.HasAtmosphereComposition; scan.Id = execscancmd(cmd); if (scan.JsonExtraRef != null) { scan.JsonExtraRef.Id = scan.Id; paramJsonExtraId.Value = scan.JsonExtraRef.Id; paramJsonExtra.Value = scan.JsonExtraRef.JsonExtra; } } }
public void Insert(System sys) { if (syscmd == null) { Context.Set <System>().Add(sys); Context.SaveChanges(); } else { syscmd.Transaction = Context.Database.CurrentTransaction?.UnderlyingTransaction; namecmd.Transaction = Context.Database.CurrentTransaction?.UnderlyingTransaction; paramSysaddr.Value = sys.ModSystemAddress; paramX.Value = sys.X; paramY.Value = sys.Y; paramZ.Value = sys.Z; paramRegionId.Value = sys.RegionId; paramSizeClass.Value = sys.SizeClass; paramMid3.Value = sys.Mid3; paramMid2.Value = sys.Mid2; paramMid1b.Value = sys.Mid1b; paramMid1a.Value = sys.Mid1a; paramSequence.Value = sys.Sequence; paramEdsmId.Value = sys.EdsmId; paramEdsmLastModified.Value = sys.EdsmLastModifiedSeconds; sys.Id = execsyscmd(syscmd); if (sys.SystemCustomName != null) { sys.SystemCustomName.Id = sys.Id; paramNameId.Value = sys.SystemCustomName.Id; paramNameSysAddr.Value = sys.SystemCustomName.SystemAddress; paramCustomName.Value = sys.SystemCustomName.CustomName; namecmd.ExecuteNonQuery(); } } }
public void Insert(BodyScan scan) { if (cmdScan == null) { Context.Set <BodyScan>().Add(scan); Context.SaveChanges(); } else { cmdScan.Transaction = Context.Database.CurrentTransaction?.UnderlyingTransaction; cmdRing.Transaction = Context.Database.CurrentTransaction?.UnderlyingTransaction; cmdStar.Transaction = Context.Database.CurrentTransaction?.UnderlyingTransaction; cmdPlanet.Transaction = Context.Database.CurrentTransaction?.UnderlyingTransaction; cmdMats.Transaction = Context.Database.CurrentTransaction?.UnderlyingTransaction; cmdAtmos.Transaction = Context.Database.CurrentTransaction?.UnderlyingTransaction; paramSystemBodyId.Value = scan.SystemBodyId; paramParentSetId.Value = (object)scan.ParentSetId ?? DBNull.Value; paramScanBaseHash.Value = scan.ScanBaseHash; paramAxialTilt.Value = (object)scan.AxialTilt ?? DBNull.Value; paramEccentricity.Value = scan.Eccentricity; paramOrbitalInclination.Value = scan.OrbitalInclination; paramPeriapsis.Value = scan.Periapsis; paramSemiMajorAxis.Value = scan.SemiMajorAxis; paramOrbitalPeriod.Value = scan.OrbitalPeriod; paramRadius.Value = scan.Radius; paramRotationPeriod.Value = scan.RotationPeriod; paramSurfaceTemperature.Value = scan.SurfaceTemperature; paramHasOrbit.Value = scan.HasOrbit; paramTidalLock.Value = (object)scan.TidalLock ?? DBNull.Value; paramReserveLevel.Value = (object)scan.ReserveLevelId ?? DBNull.Value; scan.Id = execscancmd(cmdScan); if (scan.Rings != null) { foreach (var ring in scan.Rings) { ring.ScanId = scan.Id; paramRingScanId.Value = ring.ScanId; paramRingNum.Value = ring.RingNum; paramRingClass.Value = ring.ClassId; paramRingInnerRad.Value = ring.InnerRad; paramRingOuterRad.Value = ring.OuterRad; paramRingMassMT.Value = ring.MassMT; paramRingIsBelt.Value = ring.IsBelt; cmdRing.ExecuteNonQuery(); if (ring.CustomName != null && ring.CustomName.Name != null) { ring.CustomName.ScanId = ring.ScanId; ring.CustomName.RingNum = ring.RingNum; paramRingNameScanId.Value = ring.CustomName.ScanId; paramRingNameNum.Value = ring.CustomName.RingNum; paramRingName.Value = ring.Name; cmdRingName.ExecuteNonQuery(); } } } if (scan is BodyScanStar star) { paramStarId.Value = star.Id; paramAbsoluteMagnitude.Value = star.AbsoluteMagnitude; paramStellarMass.Value = star.StellarMass; paramAgeMY.Value = star.Age_MY; paramStarTypeId.Value = star.StarTypeId; paramLuminosityId.Value = (object)star.LuminosityId ?? DBNull.Value; cmdStar.ExecuteNonQuery(); } else if (scan is BodyScanPlanet planet) { paramPlanetId.Value = planet.Id; paramPlanetClass.Value = planet.PlanetClassId; paramCompositionMetal.Value = planet.CompositionMetal; paramCompositionRock.Value = planet.CompositionRock; paramCompositionIce.Value = planet.CompositionIce; paramPlanetHasComposition.Value = planet.HasComposition; paramPlanetMassEM.Value = planet.MassEM; paramSurfaceGravity.Value = planet.SurfaceGravity; paramVolcanismId.Value = (object)planet.VolcanismId ?? DBNull.Value; paramVolcanismMinor.Value = planet.VolcanismMinor; paramVolcanismMajor.Value = planet.VolcanismMajor; paramIsLandable.Value = (object)planet.IsLandable ?? DBNull.Value; cmdPlanet.ExecuteNonQuery(); if (planet.Materials != null) { planet.Materials.Id = scan.Id; paramMatsId.Value = planet.Materials.Id; paramMatsCarbon.Value = planet.Materials.MaterialCarbon; paramMatsIron.Value = planet.Materials.MaterialIron; paramMatsNickel.Value = planet.Materials.MaterialNickel; paramMatsPhosphorus.Value = planet.Materials.MaterialPhosphorus; paramMatsSulphur.Value = planet.Materials.MaterialSulphur; paramMat1Id.Value = planet.Materials.Material1Id; paramMat1Amt.Value = planet.Materials.Material1Amt; paramMat2Id.Value = planet.Materials.Material2Id; paramMat2Amt.Value = planet.Materials.Material2Amt; paramMat3Id.Value = planet.Materials.Material3Id; paramMat3Amt.Value = planet.Materials.Material3Amt; paramMat4Id.Value = planet.Materials.Material4Id; paramMat4Amt.Value = planet.Materials.Material4Amt; paramMat5Id.Value = planet.Materials.Material5Id; paramMat5Amt.Value = planet.Materials.Material5Amt; paramMat6Id.Value = planet.Materials.Material6Id; paramMat6Amt.Value = planet.Materials.Material6Amt; cmdMats.ExecuteNonQuery(); } if (planet.Atmosphere != null) { planet.Atmosphere.Id = scan.Id; paramAtmosScanId.Value = planet.Atmosphere.Id; paramSurfacePressure.Value = planet.Atmosphere.SurfacePressure; paramAtmosComp1Id.Value = (object)planet.Atmosphere.AtmosphereComponent1Id ?? DBNull.Value; paramAtmosComp1Amt.Value = planet.Atmosphere.AtmosphereComponent1Amt; paramAtmosComp2Id.Value = (object)planet.Atmosphere.AtmosphereComponent2Id ?? DBNull.Value; paramAtmosComp2Amt.Value = planet.Atmosphere.AtmosphereComponent2Amt; paramAtmosComp3Id.Value = (object)planet.Atmosphere.AtmosphereComponent3Id ?? DBNull.Value; paramAtmosComp3Amt.Value = planet.Atmosphere.AtmosphereComponent3Amt; paramAtmosNameId.Value = planet.Atmosphere.AtmosphereId; paramAtmosTypeId.Value = (object)planet.Atmosphere.AtmosphereTypeId ?? DBNull.Value; paramAtmosHot.Value = planet.Atmosphere.AtmosphereHot; paramAtmosThin.Value = planet.Atmosphere.AtmosphereThin; paramAtmosThick.Value = planet.Atmosphere.AtmosphereThick; cmdAtmos.ExecuteNonQuery(); } } } }