SajetConnect.cs 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Runtime.InteropServices;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace MesAdaptor
  8. {
  9. public enum MesType
  10. {
  11. none,
  12. shinewave,
  13. sajet,
  14. sajet2,
  15. test
  16. }
  17. public static class SajetConnect
  18. {
  19. public static ISajetConnect Instance { get; internal set; }
  20. public static List<string> DefinedMes = new List<string>() {
  21. "php",
  22. "shinewave",
  23. "phv",
  24. "ztmn",
  25. "sajet",
  26. "sajet2"
  27. };
  28. public static bool SajetTransStart() => Instance.SajetTransStart();
  29. public static bool SajetTransClose() => Instance == null ? false : Instance.SajetTransClose();
  30. public static bool SajetTransSignIn(ref string data) => Instance.SajetTransSignIn(ref data);
  31. public static bool SajetTransWoCheck(ref string workOrder) => Instance.SajetTransWoCheck(ref workOrder);
  32. public static bool SajetTransSnCheck(ref string serialNumber) => Instance.SajetTransSnCheck(ref serialNumber);
  33. public static bool SajetTranFinishSuccess() => Instance.SajetTranFinishSuccess();
  34. public static bool SajetTranFinishFail(MesErrorCode errorCode) => Instance.SajetTranFinishFail(errorCode);
  35. public static string SajetTransRegisterHeader(string model, string header) => Instance.SajetTransRegisterHeader(model, header);
  36. public static bool SajetTransReport(ValueReportDatas reportPair) => Instance.SajetTransReport(reportPair);
  37. public static bool SajetTransLog(string data) => Instance.SajetTransLog(data);
  38. public static void SetMes(string mesSetting = "",string mechineCode = "")
  39. {
  40. if (mesSetting is null)
  41. {
  42. SajetConnect.Instance = new SajectConnectTest();
  43. return;
  44. }
  45. mesSetting = mesSetting.ToLower();
  46. switch (mesSetting)
  47. {
  48. case "php":
  49. case "shinewave":
  50. SajetConnect.Instance = new SajetConnectShinewave();
  51. break;
  52. case "sajet":
  53. SajetConnect.Instance = new SajectConnectSajet();
  54. break;
  55. //case "phv":
  56. case "ztmn":
  57. case "phv":
  58. case "sajet2":
  59. SajetConnect.Instance = new SajectConnectSajet2(mechineCode);
  60. break;
  61. default:
  62. SajetConnect.Instance = new SajectConnectTest();
  63. break;
  64. }
  65. }
  66. }
  67. }