/// <summary> /// Reads all water levels and assign them to the wells in the collection /// </summary> /// <param name="Wells"></param> public void ReadWaterLevels(IWellCollection Wells) { IWell CurrentWell = Wells.FirstOrDefault(); IIntake CurrentIntake; JXL.ReadWaterLevels(false); foreach (var WatLev in JXL.WATLEVEL) { if (CurrentWell.ID == WatLev.BOREHOLENO) { CurrentIntake = CurrentWell.Intakes.FirstOrDefault(var => var.IDNumber == WatLev.INTAKENO) as JupiterIntake; if (CurrentIntake is JupiterIntake) ((JupiterIntake)CurrentIntake).RefPoint = WatLev.REFPOINT; FillInWaterLevel(CurrentIntake, WatLev); } else { if (Wells.Contains(WatLev.BOREHOLENO)) { CurrentIntake = Wells[WatLev.BOREHOLENO].Intakes.FirstOrDefault(var => var.IDNumber == WatLev.INTAKENO) as JupiterIntake; if (CurrentIntake is JupiterIntake) ((JupiterIntake)CurrentIntake).RefPoint = WatLev.REFPOINT; FillInWaterLevel(CurrentIntake, WatLev); } } } JXL.WATLEVEL.Clear(); }
/// <summary> /// Reads the lithology and assign to all the JupiterWells in the collection /// </summary> /// <param name="Wells"></param> public void ReadLithology(IWellCollection Wells) { JupiterWell CurrentWell; JXL.ReadInLithology(); CurrentWell = Wells.FirstOrDefault() as JupiterWell; //Loop the lithology foreach (var Lith in JXL.LITHSAMP) { if (CurrentWell.ID == Lith.BOREHOLENO) { Lithology L = new Lithology(); L.Bottom = Lith.BOTTOM; L.Top = Lith.TOP; L.RockSymbol = Lith.ROCKSYMBOL; L.RockType = Lith.ROCKTYPE; L.TotalDescription = Lith.TOTALDESCR; CurrentWell.LithSamples.Add(L); } else { if (Wells.Contains(Lith.BOREHOLENO)) { CurrentWell = Wells[Lith.BOREHOLENO] as JupiterWell; Lithology L = new Lithology(); L.Bottom = Lith.BOTTOM; L.Top = Lith.TOP; L.RockSymbol = Lith.ROCKSYMBOL; L.RockType = Lith.ROCKTYPE; L.TotalDescription = Lith.TOTALDESCR; CurrentWell.LithSamples.Add(L); } } } JXL.LITHSAMP.Clear(); }