using Prism.Mvvm; using System; using System.Collections.Generic; using static TeamAAS_VP.Core.ScrewDriver.XYD_ScrewDriver; namespace TeamAAS_VP.Models { public class LockResult : BindableBase { private int __Number; /// /// 螺丝编号 /// public int Number { get { return __Number; } set { SetProperty(ref __Number, value); } } private string __ProductNumber; /// /// 产品编号 /// public string ProductNumber { get { return __ProductNumber; } set { SetProperty(ref __ProductNumber, value); } } private DateTime __Timestamp; /// /// 时间戳 /// public DateTime Timestamp { get { return __Timestamp; } set { SetProperty(ref __Timestamp, value); } } private float __LockTurns; /// /// 锁付圈数 /// public float LockTurns { get { return __LockTurns; } set { SetProperty(ref __LockTurns, value); } } private float __LockTorque; /// /// 锁付扭矩 /// public float LockTorque { get { return __LockTorque; } set { SetProperty(ref __LockTorque, value); } } private float __LockDuration; /// /// 锁付用时 /// public float LockDuration { get { return __LockDuration; } set { SetProperty(ref __LockDuration, value); } } private bool __LockPassed; /// /// 锁付结果(是否通过) /// public bool LockPassed { get { return __LockPassed; } set { SetProperty(ref __LockPassed, value); } } // private string _ResultDetails; /// /// 结果详情 /// public string ResultDetails { get { return _ResultDetails; } set { SetProperty(ref _ResultDetails, value); } } private int __ScrewdriverProgramNumber; /// /// 电批程序号 /// public int ScrewdriverProgramNumber { get { return __ScrewdriverProgramNumber; } set { SetProperty(ref __ScrewdriverProgramNumber, value); } } private float __Pressure; /// /// 压力值 /// public float Pressure { get { return __Pressure; } set { SetProperty(ref __Pressure, value); } } private float __TargetTorque; /// /// 目标扭矩 /// public float TargetTorque { get { return __TargetTorque; } set { SetProperty(ref __TargetTorque, value); } } private float __TargetTurnsUpperLimit; /// /// 目标圈数上限 /// public float TargetTurnsUpperLimit { get { return __TargetTurnsUpperLimit; } set { SetProperty(ref __TargetTurnsUpperLimit, value); } } private float __TargetTurnsLowerLimit; /// /// 目标圈数下限 /// public float TargetTurnsLowerLimit { get { return __TargetTurnsLowerLimit; } set { SetProperty(ref __TargetTurnsLowerLimit, value); } } private float __TargetLockSpeed; /// /// 目标锁付速度 /// public float TargetLockSpeed { get { return __TargetLockSpeed; } set { SetProperty(ref __TargetLockSpeed, value); } } private float __StartPositionX; /// /// 锁付位置坐标 X 起始值 /// public float StartPositionX { get { return __StartPositionX; } set { SetProperty(ref __StartPositionX, value); } } private float __StartPositionY; /// /// 锁付位置坐标 Y 起始值 /// public float StartPositionY { get { return __StartPositionY; } set { SetProperty(ref __StartPositionY, value); } } private float __StartPositionZ; /// /// 锁付位置坐标 Z 起始值 /// public float StartPositionZ { get { return __StartPositionZ; } set { SetProperty(ref __StartPositionZ, value); } } private float __EndPositionZ; /// /// Z 终点值 /// public float EndPositionZ { get { return __EndPositionZ; } set { SetProperty(ref __EndPositionZ, value); } } private float __LockDescentSpeed; /// /// 锁付下降速度 /// public float LockDescentSpeed { get { return __LockDescentSpeed; } set { SetProperty(ref __LockDescentSpeed, value); } } private int __FeederNumber; /// /// 供料器编号 /// public int FeederNumber { get { return __FeederNumber; } set { SetProperty(ref __FeederNumber, value); } } private string __NozzleNumber; /// /// 披头编号 /// public string NozzleNumber { get { return __NozzleNumber; } set { SetProperty(ref __NozzleNumber, value); } } //当前的操作员名称 private string _OperatorName; public string OperatorName { get { return _OperatorName; } set { SetProperty(ref _OperatorName, value); } } /// /// 锁付曲线数据列表 /// public List WaveDatas { get; set; } = new List(); public LockResult() { // 默认构造函数 Timestamp = DateTime.Now; } public LockResult(int number, string productNumber, float lockTurns, float lockTorque,bool lockPassed) { Number = number; ProductNumber = productNumber; Timestamp = DateTime.Now; LockTurns = lockTurns; LockTorque = lockTorque; LockPassed = lockPassed; } public LockResult Clone() { return new LockResult { Number = this.Number, ProductNumber = this.ProductNumber, Timestamp = this.Timestamp, LockTurns = this.LockTurns, LockTorque = this.LockTorque, LockDuration = this.LockDuration, LockPassed = this.LockPassed, ScrewdriverProgramNumber = this.ScrewdriverProgramNumber, Pressure = this.Pressure, TargetTorque = this.TargetTorque, TargetTurnsUpperLimit = this.TargetTurnsUpperLimit, TargetTurnsLowerLimit = this.TargetTurnsLowerLimit, TargetLockSpeed = this.TargetLockSpeed, StartPositionX = this.StartPositionX, StartPositionY = this.StartPositionY, StartPositionZ = this.StartPositionZ, EndPositionZ = this.EndPositionZ, LockDescentSpeed = this.LockDescentSpeed, FeederNumber = this.FeederNumber, NozzleNumber= this.NozzleNumber, WaveDatas = new List(this.WaveDatas) }; } } }