BarcodeReaderController.cs 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. using Aitex.Core.RT.Device;
  2. using Aitex.Core.RT.Log;
  3. using Aitex.Core.RT.OperationCenter;
  4. using MECF.Framework.Common.Device.BarcodeReader;
  5. using MECF.Framework.Common.Device.ResistivityProbe;
  6. using MECF.Framework.Common.Equipment;
  7. using System;
  8. using System.Collections.Generic;
  9. using System.Linq;
  10. using System.Text;
  11. using System.Threading.Tasks;
  12. namespace CyberX8_RT.Devices.BarcodeReader
  13. {
  14. public class BarcodeReaderController : BaseDevice, IDevice
  15. {
  16. #region 常量
  17. #endregion
  18. #region 内部变量
  19. #endregion
  20. #region 属性
  21. /// <summary>
  22. ///条形码值
  23. /// </summary>
  24. public string BarcodeValue { get { return ReadBarcodeValue(); } }
  25. #endregion
  26. /// <summary>
  27. /// 构造函数
  28. /// </summary>
  29. /// <param name="moduleName"></param>
  30. public BarcodeReaderController(string moduleName) : base(moduleName, moduleName, moduleName, moduleName)
  31. {
  32. InitialData();
  33. }
  34. /// <summary>
  35. /// 初始化
  36. /// </summary>
  37. /// <returns></returns>
  38. public bool Initialize()
  39. {
  40. InitializeOperation();
  41. InitializeDevice();
  42. return true;
  43. }
  44. /// <summary>
  45. /// 获取数值
  46. /// </summary>
  47. /// <returns></returns>
  48. private string ReadBarcodeValue()
  49. {
  50. return BarcodeReaderConfigManager.Instance.GetBarcodeValueByName(Module.ToString());
  51. }
  52. /// <summary>
  53. /// 初始化数据
  54. /// </summary>
  55. private void InitialData()
  56. {
  57. }
  58. /// <summary>
  59. /// 初始化操作
  60. /// </summary>
  61. public bool InitializeDevice()
  62. {
  63. BarcodeReaderConfigManager.Instance.InitialDevice(Module.ToString());
  64. return true;
  65. }
  66. /// <summary>
  67. /// 初始化操作
  68. /// </summary>
  69. private void InitializeOperation()
  70. {
  71. OP.Subscribe($"{Module}.ReadBarcode", ReadBarcodeOperation);
  72. OP.Subscribe($"{Module}.InitializeBarcode", InitializeBarcodeOperation);
  73. }
  74. public void Monitor()
  75. {
  76. }
  77. public void Reset()
  78. {
  79. }
  80. public void Terminate()
  81. {
  82. }
  83. public bool ReadBarcodeOperation(string cmd, object[] args)
  84. {
  85. BarcodeReaderConfigManager.Instance.ReadbarcodeOnce(Module.ToString());
  86. return true;
  87. }
  88. /// <summary>
  89. /// 读取条码
  90. /// </summary>
  91. /// <returns></returns>
  92. public string ReadBarcode()
  93. {
  94. return BarcodeReaderConfigManager.Instance.ReadbarcodeOnce(Module.ToString());
  95. }
  96. public bool InitializeBarcodeOperation(string cmd, object[] args)
  97. {
  98. bool result = BarcodeReaderConfigManager.Instance.GetDeviceConnect(Module.ToString());
  99. return result;
  100. }
  101. }
  102. }