using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;

namespace WCS.Model.ApiModel.MatBaseInfo
{
    public class MatInfoModel : INotifyPropertyChanged
    {

        public int Id { get; set; }

        public string MatSN { get; set; }

        public string MatCode { get; set; }

        public string MatName { get; set; }

        public string? MatSpec { get; set; }

        public string? MatUnit { get; set; }

        public string? MatBatch { get; set; }

        public string? MatSupplier { get; set; }

        public string? MatCustomer { get; set; }

        public int MatQty { get; set; }

        public bool IsPrinted { get; set; }

        public int PrintedTimes { get; set; }

        public string? ModifyUser { get; set; }

        public DateTime? ModifyTime { get; set; } = DateTime.Now;

        public bool IsSelected
        {
            get { return isSelected; }
            set
            {
                isSelected = value;
                OnPropertyChanged(nameof(IsSelected));
            }
        }
        public bool isSelected;

        public int RowNumber { get; set; }

        public event PropertyChangedEventHandler PropertyChanged;
        protected virtual void OnPropertyChanged(string propertyName)
        {
            PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
        }
    }
}
