You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

пре 2 година
пре 1 година
пре 2 година
пре 1 година
пре 2 година
пре 1 година
пре 2 година
пре 1 година
пре 2 година
пре 1 година
пре 2 година
пре 1 година
пре 2 година
пре 1 година
пре 2 година
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. // ********************************************************************************
  2. // 文件名字: S5F4Handler
  3. // 文件描述: S5F4Handler
  4. // 开发人员: Michael
  5. // 创建时间: 2019/11/8 0:08
  6. //
  7. // 更新历史:
  8. // + 创建 S5F4Handler.cs 文件. by Michael @2019/11/8 0:08
  9. // ********************************************************************************
  10. using Glorysoft.SECS.EQP.Common;
  11. using Glorysoft.SECS.EQP.Message;
  12. using Glorysoft.SECS.EQP.Utilities;
  13. using Glorysoft.SECSwell;
  14. using System.Linq;
  15. using System.Threading;
  16. using System;
  17. using ARI.EAP.HOST;
  18. using ARI.EAP.HOST.Common;
  19. using ARI.EAP.HOST.MQ;
  20. using ARI.EAP.HOST.MQ.body;
  21. using System.Threading.Tasks;
  22. namespace Glorysoft.SECS.EQP.Handlers
  23. {
  24. public class S5F4Handler : ISECSMessageHandler
  25. {
  26. public void Execute(SECSContext context, SECSTransaction trans, SECSErrors err, string errmsg)
  27. {
  28. SECSMessage reply = trans.Secondary;
  29. S5F4Item item = new S5F4Item();
  30. item.ACKC5 = reply.Root.Value.To<byte[]>().FirstOrDefault();
  31. MQMessage mQMessage = new MQMessage();
  32. mQMessage.header.messageName = "DisableEnableAlarm";
  33. S5F3Body s5F3Body = new S5F3Body();
  34. s5F3Body.eventTimestamp = System.DateTime.Now.ToString("yyyy-MM-ddTHH:mm:ss.fff");
  35. if (EquipmentStatus.S5F3 == "AlarmEnable" )
  36. {
  37. Global.MF.addlog(trans, LoggerService.Receive, "Alarm Disable", 1);
  38. LoggerService.SECSLogger.Info(trans.Secondary);
  39. if (item.ACKC5 == 0)
  40. {
  41. Global.MF.S5F3BottonUpdate(EquipmentStatus.S5F3);
  42. s5F3Body.enableAlarmState = "0";
  43. EquipmentStatus.S5F3 = "AlarmDisable";
  44. }
  45. }
  46. else if(EquipmentStatus.S5F3 == "AlarmDisable" )
  47. {
  48. Global.MF.addlog(trans, LoggerService.Receive, "Alarm Enable", 1);
  49. LoggerService.SECSLogger.Info(trans.Secondary);
  50. if (item.ACKC5 == 0)
  51. {
  52. Global.MF.S5F3BottonUpdate(EquipmentStatus.S5F3);
  53. s5F3Body.enableAlarmState = "1";
  54. EquipmentStatus.S5F3 = "AlarmEnable";
  55. }
  56. }
  57. if(item.ACKC5 == 0)
  58. {
  59. mQMessage.body = s5F3Body;
  60. Task.Run(() => MainForm.mq.EAPRequest(mQMessage));
  61. }
  62. if (trans.Tag != null)
  63. {
  64. var scenario = trans.Tag as Scenario;
  65. Thread.Sleep(500);
  66. scenario.ExecuteNextStep();
  67. }
  68. }
  69. }
  70. }