ProcessJobInfo.cs 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Runtime.Serialization;
  4. using MECF.Framework.Common.DataCenter;
  5. using MECF.Framework.Common.Equipment;
  6. using MECF.Framework.Common.Schedulers;
  7. namespace MECF.Framework.Common.Jobs
  8. {
  9. public enum EnumProcessingState
  10. {
  11. WaitingMaterial,
  12. WaitingCharge,
  13. CoolingBeforeCharge,
  14. Charging,
  15. WaitingProcess,
  16. Processing,
  17. Cooling,
  18. CoolingBeforeDischarge,
  19. WaitingDischarge,
  20. Discharging,
  21. WaitingWithdrawal,
  22. Withdrawal,
  23. }
  24. [Serializable]
  25. [DataContract]
  26. public class ProcessJobInfo
  27. {
  28. [DataMember]
  29. public SequenceInfo Sequence { get; set; }
  30. [DataMember]
  31. public EnumProcessJobState State { get; private set; }
  32. [DataMember]
  33. public EnumProcessingState ProcessingState { get; set; }
  34. [DataMember]
  35. public string Name { get; set; }
  36. [DataMember]
  37. public string LotName { get; set; }
  38. [DataMember]
  39. public string ControlJobName { get; set; }
  40. [DataMember]
  41. public string BatchType { get; set; }
  42. [DataMember]
  43. public Guid InnerId { get; set; }
  44. [DataMember]
  45. public List<Tuple<ModuleName, int>> SlotWafers { get; set; }
  46. [DataMember]
  47. public List<Tuple<string, string, List<int>>> Stockers { get; set; }
  48. [DataMember]
  49. public DateTime BeginTime { get; set; }
  50. [DataMember]
  51. public DateTime EndTime { get; set; }
  52. [DataMember]
  53. public DateTime CreateTime { get; set; }
  54. [DataMember]
  55. public string JobRecipe { get; set; }
  56. [DataMember]
  57. public string ProcessRecipe { get; set; }
  58. [DataMember]
  59. public string LayoutRecipe { get; set; }
  60. public List<int> SideDummySlots { get; set; }
  61. public List<int> ExtraDummySlots { get; set; }
  62. public List<int> ProductSlots { get; set; }
  63. public List<int> Monitor1Slots { get; set; }
  64. public List<int> Monitor2Slots { get; set; }
  65. public List<int> TSlots { get; set; }//expert mode
  66. public List<int> XdSlots { get; set; }//expert mode
  67. public int CoolTimeSec { get; set; }
  68. public bool IsEmptyLayout { get; set; }
  69. public bool RobotHomed { get; set; }
  70. public bool IsMapAfterCharge { get; set; }
  71. public bool IsMapBeforeDischarge { get; set; }
  72. public bool IsNeedChargeDummyWafer { get; set; }
  73. public bool IsStandbyStarted { get; set; }
  74. public string N2PurgeModeStr { get; set; }
  75. public bool IsJobAutoStartTrigger { get; set; }
  76. public ScheduleMaintenanceDataItem scheduleMaintenanceDataItem { get; set; }
  77. public ProcessJobInfo()
  78. {
  79. State = EnumProcessJobState.Created;
  80. InnerId = Guid.NewGuid();
  81. }
  82. public void SetState(EnumProcessJobState state)
  83. {
  84. State = state;
  85. }
  86. }
  87. }