88 lines
2.7 KiB
C#
88 lines
2.7 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Runtime.Serialization;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Future.Contract
|
|
{
|
|
/// <summary>
|
|
/// 所有存储于数据库中的数据档案的基类
|
|
/// </summary>
|
|
[DataContract]
|
|
public class FutureArchive : FutureObject
|
|
{
|
|
/// <summary>
|
|
/// 是否已经被标记选择
|
|
/// </summary>
|
|
public bool IsSelected { get; set; }
|
|
/// <summary>
|
|
/// 数据记录的唯一标识
|
|
/// </summary>
|
|
[DataMember]
|
|
public string RecordID { get; set; }
|
|
/// <summary>
|
|
/// 数据档案的唯一标识
|
|
/// </summary>
|
|
[DataMember]
|
|
public string ArchiveID { get; set; }
|
|
/// <summary>
|
|
/// 数据档案的标题
|
|
/// </summary>
|
|
[DataMember]
|
|
public string Title { get; set; }
|
|
/// <summary>
|
|
/// 数据档案的描述
|
|
/// </summary>
|
|
[DataMember]
|
|
public string Remark { get; set; }
|
|
/// <summary>
|
|
/// 数据档案是否处于可用状态
|
|
/// </summary>
|
|
[DataMember]
|
|
public bool IsAlive { get; set; }
|
|
/// <summary>
|
|
/// 是否为一份档案的活动记录
|
|
/// </summary>
|
|
[DataMember]
|
|
public bool IsCurrent { get; set; }
|
|
/// <summary>
|
|
/// 数据档案本次归档的操作用户
|
|
/// </summary>
|
|
[DataMember]
|
|
public string OperatorID { get; set; }
|
|
/// <summary>
|
|
/// 数据档案本次归档的操作时间
|
|
/// </summary>
|
|
[DataMember]
|
|
public DateTime UpdateDateTime { get; set; }
|
|
/// <summary>
|
|
/// 深度拷贝对象:将当前对象序列化,再通过反序列化方式创建新对象,从而实现对象的深度拷贝
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public override IFuture Clone()
|
|
{
|
|
FutureArchive result = new FutureArchive();
|
|
result.Cover(this);
|
|
return result;
|
|
}
|
|
|
|
public override bool Cover(IFuture refer)
|
|
{
|
|
if (!base.Cover(refer)) return false;
|
|
FutureArchive archive = refer as FutureArchive;
|
|
//if (archive == null) return false;
|
|
this.RecordID = archive.RecordID;
|
|
this.ArchiveID = archive.ArchiveID;
|
|
this.Title = archive.Title;
|
|
this.Remark = archive.Remark;
|
|
this.IsCurrent = archive.IsCurrent;
|
|
this.IsAlive = archive.IsAlive;
|
|
this.OperatorID = archive.OperatorID;
|
|
this.UpdateDateTime = archive.UpdateDateTime;
|
|
return true;
|
|
}
|
|
}
|
|
}
|