using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using GCHR.Model.Konto; namespace GCHR.Model.Uebersetzung { class Uebersetzungstabelle { public HerstellerKontenrahmen herstellerKontenrahmen { set; private get; } private Dictionary uebersetzungstabelle = new Dictionary(); public Uebersetzungstabelle(StreamReader sr) { while (!sr.EndOfStream) { Eintrag eintrag = new Eintrag(sr.ReadLine()); while (uebersetzungstabelle.ContainsKey(eintrag.KontonummerHaendler)) { eintrag.KontonummerHaendler += "X"; } uebersetzungstabelle.Add(eintrag.KontonummerHaendler, eintrag); } } public void Speichern(StreamWriter sw) { foreach (Eintrag eintrag in uebersetzungstabelle.Values) { sw.WriteLine(eintrag); } } public HerstellerKonto Uebersetzen(HaendlerKonto haendlerKonto, bool split) { return herstellerKontenrahmen.Get(uebersetzen(haendlerKonto, split)); } public string uebersetzen(HaendlerKonto haendlerKonto, bool split) { return uebersetzungstabelle[haendlerKonto.Kontonummer].Uebersetzen(haendlerKonto, split); } } }