public void Test2() { var system = new SolarSystemDto { Id = 1, Name = "SystemName" }; var shipItem = new ItemDto { Id = 1, Name = "VictimShip" }; Save(system); Save(shipItem); var kill = new ParsedKillResult { Header = new ParsedKillHeader { AllianceName = "VictimAlliance", CorporationName = "VictimCorp", DamageTaken = 100, FactionName = "FactionName", ShipName = shipItem.Name, SystemName = system.Name, SystemSecurity = 9000, Timestamp = DateTime.Now, VictimName = "VictimPilot" } }; var ks = Resolve <IKillService>(); ks.CreateKill(kill); kill.Header.AllianceName = "SecondAlliance"; kill.Header.VictimName = "VictimPilot"; ks.CreateKill(kill); }
public SolarSystemDto UpdateSolarSystemSignatures(string mainToken, SolarSystemDto dto) { var main = _characterService.GetMainCharacterByToken(mainToken); var maskId = main.MaskType == MaskType.Alliance && main.Pilot.Corporation.AllianceId != null ? main.Pilot.Corporation.Alliance.MaskId : main.Pilot.Corporation.MaskId; var system = _solarSystemService.GetSystemById(dto.Id); var dtoSigIds = dto.Signatures.Select(x => x.Id).ToHashSet(); var systemSigIds = system.Signatures.Where(x => x.MaskId == maskId).Select(x => x.Id).ToHashSet(); //to delete foreach (var toDeleteId in systemSigIds.Where(x => !dtoSigIds.Contains(x)).ToList()) { var toDelete = _signatureService.GetBySignatureId(toDeleteId); if (toDelete.DestinationId != null) { var destoSig = _signatureService.GetBySignatureId(toDelete.DestinationId.Value); destoSig.DestinationId = null; toDelete.DestinationId = null; _signatureService.Update(destoSig); _signatureService.Update(toDelete, commit: true); _signatureService.Delete(destoSig.Id); } _signatureService.Delete(toDelete.Id, commit: true); } //to update or add foreach (var updateSig in dto.Signatures) { var systemSig = _signatureService.GetBySignatureId(updateSig.Id); if (systemSig == null) { //create new sig systemSig = new Signature { SignatureId = updateSig.SignatureId, ExpiryDate = updateSig.ExpiryDate, Name = updateSig.Name, SignatureType = updateSig.SignatureType, MaskId = maskId, SystemId = dto.Id }; system.Signatures.Add(systemSig); } else { systemSig.SignatureId = updateSig.SignatureId; systemSig.ExpiryDate = updateSig.ExpiryDate; systemSig.Name = updateSig.Name; systemSig.SignatureType = updateSig.SignatureType; } _solarSystemService.UpdateSystem(system); _signatureService.WormholeSigUpdate(updateSig, systemSig, maskId); } _solarSystemService.UpdateSystem(system); return(GetSolarSystemById(mainToken, dto.Id)); }
public static SolarSystemDto CreateSolarSystem(int x, int y, int z) { var rand = new Random(Calculate.CalculateProceruralSeed(Settings, x, y, z)); var value = rand.Next() % _modulo; var solarSystem = new SolarSystemDto { CordX = x, CordY = y, CordZ = z }; solarSystem.Star = CreateStar(value); solarSystem.Planets = CreatePlanets(value, solarSystem.Star.Temperature); return(solarSystem); }
private static void ImportSolarSystemToDatabase(SolarSystemDto solarSystemDto) { if (solarSystemDto?.Name == null) { throw new ArgumentNullException("Name cannot be null!"); } SolarSystem newSolarSystem = new SolarSystem() { Name = solarSystemDto.Name }; using (var db = new MassDefectDatabaseContext()) { db.SolarSystems.Add(newSolarSystem); db.SaveChanges(); } }