Translator.cs 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using SinochemInternetPlusApp;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Configuration;
  5. using System.Linq;
  6. using System.Text;
  7. using Wayne.Lib;
  8. using Wayne.Lib.Log;
  9. namespace SinoChemFC2PosProxy
  10. {
  11. static class Translator
  12. {
  13. private readonly static Dictionary<string, string> mapping;
  14. static Translator()
  15. {
  16. mapping = new Dictionary<string, string>();
  17. if (!String.IsNullOrEmpty(
  18. App.AppSettings["GradeNameRemapping"]))
  19. {
  20. var raw = App.AppSettings["GradeNameRemapping"];
  21. raw.Split(';').Select(p => new KeyValuePair<string, string>(p.Split(':')[0], p.Split(':')[1])).ToList().ForEach(v => mapping.Add(v.Key, v.Value));
  22. }
  23. }
  24. /// <summary>
  25. /// Get the translated grade name which defined in app.config file.
  26. /// </summary>
  27. /// <param rawGradeName="gradeName">like SYN 2000, DIESEL S, SYN 8000, SYN 5000</param>
  28. /// <returns>any value want to re-mapping the raw grade name to</returns>
  29. public static String GetFriendlyGradeName(string rawGradeName)
  30. {
  31. if (mapping.ContainsKey(rawGradeName))
  32. {
  33. return mapping[rawGradeName];
  34. }
  35. return rawGradeName;
  36. }
  37. //public static String GetFuelNameByRawGradeName(string rawGradeName)
  38. //{
  39. // return rawGradeName;
  40. //}
  41. }
  42. }