using System;
using System.Collections;
using System.Runtime.Serialization;
using System.ComponentModel;
using System.Collections.Generic;

namespace RDH.Data.Models
{
    public partial class PatientOperationInfo
    {
        private UserInfo _userInfo;
        [DataMember]
        public UserInfo UserInfo
        {
            get { return _userInfo; }
            set
            {
                _userInfo = value;
                OnPropertyChanged("UserInfo");
            }
        }

        private UserInfo _analgesistInfo;
        [DataMember]
        public UserInfo AnalgesistInfo
        {
            get { return _analgesistInfo; }
            set
            {
                _analgesistInfo = value;
                OnPropertyChanged("AnalgesistInfo");
            }
        }


        private UserInfo _surgeonInfo;
        [DataMember]
        public UserInfo SurgeonInfo
        {
            get { return _surgeonInfo; }
            set
            {
                _surgeonInfo = value;
                OnPropertyChanged("SurgeonInfo");
            }
        }

        private bool _isConcurencyBackground;
        [DataMember]
        public bool IsConcurencyBackground
        {
            get { return _isConcurencyBackground; }
            set
            {
                _isConcurencyBackground = value;
                OnPropertyChanged("IsConcurencyBackground");
            }
        }




        private bool _isConcurencyMain;
        [DataMember]
        public bool IsConcurencyMain
        {
            get { return _isConcurencyMain; }
            set
            {
                _isConcurencyMain = value;
                OnPropertyChanged("IsConcurencyMain");
            }
        }


        public class OperationTypeCodes
        {
            public static readonly string NormalOperation = "ÆÕÍ¨";//OutPatient
            public static readonly string TempOperation = "ÁÙÊ±";//OutPatient
            public static readonly string VerificationOperation = "ºËÏú";//OutPatient
        }
    }


    public class OperationData : INotifyPropertyChanged
    {
        private PatientOperationInfo _OperationInfo;

        public PatientOperationInfo OperationInfo
        {
            get { return _OperationInfo; }
            set
            {
                _OperationInfo = value;
                this.OnPropertyChanged("OperationInfo");
            }
        }

        private bool _IsSelected;
        public bool IsSelected
        {
            get { return _IsSelected; }
            set
            {
                _IsSelected = value;
                this.OnPropertyChanged("IsSelected");
            }
        }

        private Guid _RoomKey;
        public Guid RoomKey
        {
            get { return _RoomKey; }
            set
            {
                _RoomKey = value;
                this.OnPropertyChanged("RoomKey");
            }
        }


        public event PropertyChangedEventHandler PropertyChanged;

        private void OnPropertyChanged(string property)
        {
            if (this.PropertyChanged != null)
            {
                PropertyChanged(this, new PropertyChangedEventArgs(property));
            }
        }

    }

}