GchrConfig.cs 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Xml.Schema;
  5. using System.Xml.Serialization;
  6. using GCHR.Model.Konto;
  7. using GCHR.Model.Mandant;
  8. namespace GCHR.Model
  9. {
  10. [XmlRoot("GCEHRep")]
  11. public class GchrConfig
  12. {
  13. [XmlAttribute(AttributeName = "noNamespaceSchemaLocation", Namespace = XmlSchema.InstanceNamespace)]
  14. public string NoNamespaceSchemaLocation = "http://dev.global-cube.de/gchr.xsd";
  15. public static GchrConfig GetInstance(String cfgDatei)
  16. {
  17. var serializer = new XmlSerializer(typeof(GchrConfig));
  18. using (var stream = File.OpenText(cfgDatei))
  19. {
  20. var gcsConfig = (GchrConfig)serializer.Deserialize(stream);
  21. gcsConfig._configDatei = cfgDatei;
  22. return gcsConfig;
  23. }
  24. }
  25. private string _configDatei;
  26. public void Save()
  27. {
  28. var serializer = new XmlSerializer(typeof(GchrConfig));
  29. using (var stream = File.CreateText(_configDatei))
  30. {
  31. serializer.Serialize(stream, this);
  32. }
  33. }
  34. public string Webservice = "";
  35. public DateipfadeXml Dateipfade = new DateipfadeXml();
  36. [XmlElement("Einstellungen")]
  37. public EinstellungenXml Einstellungen = new EinstellungenXml();
  38. [XmlArray("Konten")]
  39. [XmlArrayItem("Konto")]
  40. public List<HaendlerKonto> Konten;
  41. }
  42. [XmlRoot("Einstellungen")]
  43. public class EinstellungenXml
  44. {
  45. public string Haendler = "Autohaus";
  46. public Mandanten Mandantenname = Mandanten.Opel;
  47. public string Eurodatanummer = "00000000";
  48. [XmlElement("Händlernummer")]
  49. public string Haendlernummer = "000000";
  50. [XmlElement("Herstellerkontenrahmen", DataType = "int")]
  51. public int Herstellerkontenrahmen = 5;
  52. [XmlElement("Händlerkontenrahmen", DataType = "int")]
  53. public int Haendlerkontenrahmen = 5;
  54. public string Hauptmarke = "1";
  55. public string Hauptbetrieb = "01";
  56. public string BilanzDepartment
  57. {
  58. get { return null; }
  59. set
  60. {
  61. BilanzMarke = value.Substring(0, 1);
  62. BilanzBetrieb = value.Substring(1, 2);
  63. }
  64. }
  65. public string BilanzMarke = "0";
  66. public string BilanzBetrieb = "07";
  67. public string BilanzKontoart = "1";
  68. [XmlElement("Geschäftsjahr")]
  69. public string Geschaeftsjahr
  70. {
  71. get { return _geschaeftsjahr.PadLeft(2, '0'); }
  72. set { _geschaeftsjahr = value; }
  73. }
  74. public string JahresergebnisKonto = "10108381";
  75. public string JahresergebnisBezeichnung = "Gewinn-/Verlust-Vortrag";
  76. [XmlElement("ODBC")]
  77. public string Odbc = "O21";
  78. [XmlElement("U")]
  79. public string OdbcUsername = Constants.Encrypt("sa");
  80. [XmlElement("P")]
  81. public string OdbcPassword = Constants.Encrypt("");
  82. public string Datenbank = "deop00";
  83. public AbfragenXml Abfragen = new AbfragenXml();
  84. [XmlArray("DepartmentÜbersetzung")]
  85. [XmlArrayItem("Über")]
  86. public List<UebersetzungXml> DepartmentUebersetzung = new List<UebersetzungXml>();
  87. public bool KontoOhneUebersetzungUebernehmen;
  88. public bool StatImport = true;
  89. public SteuerungsdateienXml Steuerungsdateien;
  90. private string _geschaeftsjahr;
  91. public EinstellungenXml()
  92. {
  93. Geschaeftsjahr = "01";
  94. }
  95. }
  96. [XmlRoot("Update")]
  97. public class UpdateXml
  98. {
  99. [XmlAttribute("aktiviert", DataType = "boolean")]
  100. public bool IsActive;
  101. [XmlElement("Dateipfad")]
  102. public string Dateipfad;
  103. [XmlElement("Proxy")]
  104. public ProxyXml Proxy = new ProxyXml();
  105. }
  106. [XmlRoot("Proxy")]
  107. public class ProxyXml
  108. {
  109. public string Adresse;
  110. public string Port;
  111. public string Benutzer;
  112. public string Passwort;
  113. [XmlElement("Domäne")]
  114. public string Domaene;
  115. }
  116. [XmlRoot("Steuerungsdateien")]
  117. public class SteuerungsdateienXml
  118. {
  119. public string Typ = "verzeichnis";
  120. public string Pfad = "";
  121. }
  122. [XmlRoot("Abfragen")]
  123. public class AbfragenXml
  124. {
  125. [XmlIgnore]
  126. public string SuSaQuery
  127. {
  128. get
  129. {
  130. return (AB == "") ? "DVrUHLvXeCsurxjhOh3WN+e6jwRvytqt+TOYMlw7oT3WnY/R2ukU86VSknEw1XLLMafBCpSLkqzDk5iEcst8YOIewnnWTExPyuz3flGmFOFmZ1Ol4QjFkiFxrxHQfaWI+tTTHSkLos7/1OzZShwnE4UYlfoJyA7Rm3c1qgDeeCk6ytlBAtncdEKZy6CUqe4sON4KM//+IzFTmhpqu2aJrhFXFz5TBtPhOicDwQsqSDkruV8aduxWS2kEJrXUiMv6USrluME4SxOFI9cQ8F950skOJ09Nzg+62dI4aK/qw9OK+aKLrSZw/+n6WGnEmKRZ8qUoSTIkIG2Wg4BlX07ZfoMS3fkHzMVkSmQ0nbRag489Eaj81kPsM2/wMDPTkUw/xVFFW2BA5CCBSPNlMVmJr5g6zjjji1m4wdFAZ7mBhRhkpvC0gpspFRb5iwyPJJjgG/G3nLKrGWAr8gPcZh3QEhd1s8t3XH3fMAtajAbKVofLHsmMSVZxh6jE98SkK3px4DQDC2HKdubyUA3yBx9M0v2RCBBMoaYxWI0gVkxN4q9N2DHqbTc4F97LQbDz99RWL9US2X0Y0wWkBmGp1DvRpuyQ4qDfzmxpEUq6GFBMz4K4nGhQ5YADtg==" : AB;
  131. }
  132. }
  133. public string AB = "";
  134. [XmlIgnore]
  135. public string StatQuery
  136. {
  137. get
  138. {
  139. return (ABS == "") ? "pAYfFlGeHG/aLQHYCiHnzBFJVsfbeWnUygij3LS25vll139yMkXCYKa0Z+KnWASK/5LOgUQ84AbvO+W6zVqUiejIGIj4dUJ9t39KV4jTpBBTgLybqu43cld7kZNsiF8VzwCz9az9BL4asqK85KBI30YJZwPQkBxlQ8Ryw0wwhsfp+IGGdbFQH2jXhsVRRdvQ0++dtXDw7Txi6CKiWBO6ndCgnLuD3+yn8cMn/lk2CMkiU1cdbK0Ows1MhnKtTLNvPp755iutGte371+od5HyPdnedktM8pzg0CXoKQVeMuP40sKohpJ0UVq/Mii7qe9vVvnCrwKTrlMJmpg1s0xq22tn7d+QFzIdKCTCsKdo5oaAwoKMFTXFOYxBLw+MhSnPR0RBa2KcxvFBbSvctrB/zYihhceerQuBcQzHYlReF9aK6pK/S/fgk6uXJYNkOcdd4uTMyBHIO5+i3e9H7vGXln/eD9AP/eS0/WhekNdcExGYMI3StK3pPYnwU7kCCCh6Fu5NELmhHTMY6+CnJtsgMd/H8n8pgC77uic6PZpIPp8s0h7vjICoYdx/+SDcfD789YcK8ddWwbhgClKtFgoqnilvDyEcIb7fHOGefegJ50vpV+qAccTqh/ezsPfWKXmo" : ABS;
  140. }
  141. }
  142. public string ABS = "";
  143. public string Kontonummer = "T1.ACCT_NO";
  144. public string Department = "T1.DEPARTMENT";
  145. public string Filter = "1=1";
  146. public string Bezeichnung = "''";
  147. }
  148. [XmlRoot("Über")]
  149. public class UebersetzungXml
  150. {
  151. [XmlAttribute("von")]
  152. public string Von;
  153. [XmlAttribute("nach")]
  154. public string Nach;
  155. }
  156. }