using LiveCharts;
using MECF.Framework.Common.CommonData.Metal;
using Prism.Mvvm;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace PunkHPX8_MainPages.Model
{
    public class ReservoirsUIData : BindableBase
    {
        #region 内部变量
        /// 
        /// metal名字
        /// 
        private string _name;
        /// 
        /// 模块是否可用
        /// 
        private bool _isEnable;
        /// 
        /// 模块Auto模式可用
        /// 
        private bool _isAutoEnable;
        /// 
        /// metal WHClamp阀
        /// 
        private bool _isFlowing1;
        /// 
        /// metal WHUnClamp阀
        /// 
        private bool _isFlowing2;
        /// 
        /// metal CellFlowValve
        /// 
        private bool _isFlowing3;
        /// 
        /// catholyte页面metal液位过高指示灯
        /// 
        private bool _isMetalCellHigh;
        /// 
        /// catholyte页面metal液位过低指示灯
        /// 
        private bool _isMetalCellLow;
        /// 
        ///Aonlyte页面A面metal液位过高指示灯
        /// 
        private bool _isMetalCellSideAHigh;
        /// 
        /// Aonlyte页面A面metal液位过低指示灯
        /// 
        private bool _isMetalCellSideALow;
        /// 
        /// Aonlyte页面B面metal液位过高指示灯
        /// 
        private bool _isMetalCellSideBHigh;
        /// 
        /// Aonlyte页面B面metal液位过低指示灯
        /// 
        private bool _isMetalCellSideBLow;
        /// 
        /// metal阴极流量
        /// 
        private double _metalCellFlow;
        /// 
        /// metal A面流量
        /// 
        private double _metalSideAFlow;
        /// 
        /// metal B面流量
        /// 
        private double _metalSideBFlow;
        /// 
        ///metal A面状态
        /// 
        private string _metalSideAStatus;
        /// 
        ///metal B面状态
        /// 
        private string _metalSideBStatus;
        /// 
        /// metal阴极流量阀
        /// 
        private bool _metalCellFlowValve;
        /// 
        /// AN泵是否启用
        /// 
        private bool _anPumpEnable;
        /// 
        /// 是否Manual模式
        /// 
        private bool _isManualOperationMode;
        /// 
        /// metal设备相关数据
        /// 
        private CompactMembranMetalDeviceData _metalDatas;
        /// 
        ///阳极metal A面是否注满
        /// 
        private bool _isSideAFull = false;
        /// 
        ///阳极metal B面是否注满
        /// 
        private bool _isSideBFull = false;
        #endregion
        #region 属性
        public string Name { get { return _name; } set { SetProperty(ref _name, value); } }
        
        public bool IsEnable { get { return _isEnable; } set { SetProperty(ref _isEnable, value); } }
        
        public bool IsAutoEnable { get { return _isAutoEnable; } set { SetProperty(ref _isAutoEnable, value); } }
        
        public bool IsFlowing1 { get { return _isFlowing1; } set { SetProperty(ref _isFlowing1, value); } }
        
        public bool IsFlowing2 { get { return _isFlowing2; } set { SetProperty(ref _isFlowing2, value); } }
        
        public bool IsFlowing3 { get { return _isFlowing3; } set { SetProperty(ref _isFlowing3, value); } }
        
        public bool IsMetalCellHigh { get { return _isMetalCellHigh; } set { SetProperty(ref _isMetalCellHigh, value); } }
        
        public bool IsMetalCellLow { get { return _isMetalCellLow; } set { SetProperty(ref _isMetalCellLow, value); } }
        public bool IsMetalCellSideAHigh { get { return _isMetalCellSideAHigh; } set { SetProperty(ref _isMetalCellSideAHigh, value); } }
        public bool IsMetalCellSideALow { get { return _isMetalCellSideALow; } set { SetProperty(ref _isMetalCellSideALow, value); } }
        public bool IsMetalCellSideBHigh { get { return _isMetalCellSideBHigh; } set { SetProperty(ref _isMetalCellSideBHigh, value); } }
        public bool IsMetalCellSideBLow { get { return _isMetalCellSideBLow; } set { SetProperty(ref _isMetalCellSideBLow, value); } }
        public bool MetalCellFlowValve { get { return _metalCellFlowValve; } set { SetProperty(ref _metalCellFlowValve, value); } }
        
        public bool ANPumpEnable { get { return _anPumpEnable; } set { SetProperty(ref _anPumpEnable, value); } }
        
        public bool IsManualOperationMode { get { return _isManualOperationMode; } set { SetProperty(ref _isManualOperationMode, value); } }
        
        public double MetalCellFlow { get { return _metalCellFlow; } set { SetProperty(ref _metalCellFlow, value); } }
        
        public double MetalSideAFlow { get { return _metalSideAFlow; } set { SetProperty(ref _metalSideAFlow, value); } }
        
        public double MetalSideBFlow { get { return _metalSideBFlow; } set { SetProperty(ref _metalSideBFlow, value); } }
        public string MetalSideAStatus { get { return _metalSideAStatus; } set { SetProperty(ref _metalSideAStatus, value); } }
        
        public string MetalSideBStatus { get { return _metalSideBStatus; } set { SetProperty(ref _metalSideBStatus, value); } }
        
        public CompactMembranMetalDeviceData MetalDatas { get { return _metalDatas; } set { SetProperty(ref _metalDatas, value); } }
        public bool IsSideAFull { get { return _isSideAFull; } set { SetProperty(ref _isSideAFull, value); } }
        public bool IsSideBFull{ get { return _isSideBFull; } set { SetProperty(ref _isSideBFull, value); } }
        #endregion
    }
}