///////////////////////////////////////////////////////////////// // // (C) Copyright 2013, Kenneth, Inc. // All rights reserved. Confidential. Except as pursuant // to a written agreement with Kenneth, this software may // not be used or distributed. This software may be covered // by one or more patents. // // 本软件为 ** 公司开发,版权所有,违者必究,23810511@qq.com // ///////////////////////////////////////////////////////////////// using System; using System.Collections.Generic; using System.Data; using System.Reflection; using System.ComponentModel; using System.Collections.ObjectModel; namespace GummingCommon { /// /// Evaluation /// [Serializable] public class EvaluationEntity: INotifyPropertyChanged { /// /// /// public string RecId { get; set; } /// /// EvaluationCode /// public string EvaluationCode { get; set; } /// /// EvaluationName /// public string EvaluationName { get; set; } /// /// TypeGroup /// public string TypeGroup { get; set; } /// /// ParentEvaluationId /// public string ParentEvaluationId { get; set; } /// /// ParentEvaluationIdDisplayer /// public string ParentEvaluationIdDisplayer { get; set; } /// /// EvaluationType /// public int? EvaluationType { get; set; } /// /// Presentation /// public string Presentation { get; set; } /// /// Status /// public string Status { get; set; } /// /// Suggestion /// public string Suggestion { get; set; } /// /// /// public string CreateBy { get; set; } /// /// /// public DateTime? CreateTime { get; set; } /// /// /// public string ModifyBy { get; set; } /// /// /// public DateTime? ModifyTime { get; set; } /// /// /// public int? IsActive { get; set; } private bool _CheckStatus = false; public bool CheckStatus { get { return _CheckStatus; } set { _CheckStatus = value; OnPropertyChanged("CheckStatus"); } } private ObservableCollection _children = new ObservableCollection(); public ObservableCollection Children { get { return _children; } } #region INotifyPropertyChanged Members public event PropertyChangedEventHandler PropertyChanged = delegate { }; private void OnPropertyChanged(string propertyName) { PropertyChangedEventHandler handler = this.PropertyChanged; if (handler != null) { handler(this, new PropertyChangedEventArgs(propertyName)); } } #endregion } [Serializable] public partial class EvaluationEntityExtension : EvaluationEntity { public string CreateByDisplayer { get; set; } public string ModifyByDisplayer { get; set; } public object Clone() { EvaluationEntityExtension obj = new EvaluationEntityExtension(); Type t = this.GetType(); PropertyInfo[] properties = t.GetProperties(); foreach (PropertyInfo pi in properties) { if (pi.CanWrite) { object value = pi.GetValue(this, null); if (obj.GetType().GetProperty(pi.Name) != null) { pi.SetValue(obj, value, null); } } } return obj; } } [Serializable] public class EvaluationLogEntityExtension : EvaluationEntityExtension { public string LogId { get; set; } public DateTime? OperTime { get; set; } public string OperUser { get; set; } public string OperType { get; set; } public string OperInfo { get; set; } public string OperUserDisplayer { get; set; } } }