Translator.cs 1.5 KB

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