ScrewFeederInfo.cs 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. using Newtonsoft.Json;
  2. using Prism.Mvvm;
  3. using System;
  4. namespace TeamAAS_VP.Models.Feeder
  5. {
  6. /// <summary>
  7. /// 螺丝供料器(物料)配置,用于记录螺丝批次与剩余数量等信息。
  8. /// </summary>
  9. public class ScrewFeederInfo : BindableBase
  10. {
  11. private Guid _Id = Guid.NewGuid();
  12. public Guid Id
  13. {
  14. get { return _Id; }
  15. set { SetProperty(ref _Id, value); }
  16. }
  17. private int _FeederNumber;
  18. /// <summary>
  19. /// 供料器编号(与物理供料器编号对应)
  20. /// </summary>
  21. public int FeederNumber
  22. {
  23. get { return _FeederNumber; }
  24. set { SetProperty(ref _FeederNumber, value); }
  25. }
  26. private string _Name;
  27. /// <summary>
  28. /// 供料器名称
  29. /// </summary>
  30. public string Name
  31. {
  32. get { return _Name; }
  33. set { SetProperty(ref _Name, value); }
  34. }
  35. private string _BatchNumber;
  36. /// <summary>
  37. /// 当前螺丝批次号
  38. /// </summary>
  39. public string BatchNumber
  40. {
  41. get { return _BatchNumber; }
  42. set { SetProperty(ref _BatchNumber, value); }
  43. }
  44. private int _RemainingCount;
  45. /// <summary>
  46. /// 剩余螺丝数量
  47. /// </summary>
  48. public int RemainingCount
  49. {
  50. get { return _RemainingCount; }
  51. set { SetProperty(ref _RemainingCount, value); }
  52. }
  53. private int _PackSize;
  54. /// <summary>
  55. /// 每包螺丝的数量值
  56. /// </summary>
  57. public int PackSize
  58. {
  59. get { return _PackSize; }
  60. set { SetProperty(ref _PackSize, value); }
  61. }
  62. private int _LowLevelThreshold;
  63. /// <summary>
  64. /// 低量报警阈值(当 RemainingCount <= LowLevelThreshold 时触发报警)
  65. /// </summary>
  66. public int LowLevelThreshold
  67. {
  68. get { return _LowLevelThreshold; }
  69. set { SetProperty(ref _LowLevelThreshold, value); }
  70. }
  71. private bool _LowLevelAlarmEnabled = false;
  72. /// <summary>
  73. /// 是否启用低量报警
  74. /// </summary>
  75. public bool LowLevelAlarmEnabled
  76. {
  77. get { return _LowLevelAlarmEnabled; }
  78. set { SetProperty(ref _LowLevelAlarmEnabled, value); }
  79. }
  80. private bool _IsLowLevelAlarmActive = false;
  81. /// <summary>
  82. /// 当前是否处于低量报警状态(由服务维护)
  83. /// </summary>
  84. public bool IsLowLevelAlarmActive
  85. {
  86. get { return _IsLowLevelAlarmActive; }
  87. set { SetProperty(ref _IsLowLevelAlarmActive, value); }
  88. }
  89. public ScrewFeederInfo Clone()
  90. {
  91. return new ScrewFeederInfo
  92. {
  93. Id = this.Id,
  94. FeederNumber = this.FeederNumber,
  95. Name = this.Name,
  96. BatchNumber = this.BatchNumber,
  97. RemainingCount = this.RemainingCount,
  98. PackSize = this.PackSize,
  99. LowLevelThreshold = this.LowLevelThreshold,
  100. LowLevelAlarmEnabled = this.LowLevelAlarmEnabled,
  101. IsLowLevelAlarmActive = this.IsLowLevelAlarmActive
  102. };
  103. }
  104. }
  105. }