AIMS/DrawGraph/AreaManage/FactEvents.cs

203 lines
6.8 KiB
C#

using System;
using System.Collections.Generic;
using System.Drawing;
namespace DrawGraph
{
public class FactEvents : EventObj
{
#region Model
private int _id;
private int? _eventtypeid;
private int? _patientid;
private int? _eventid;
private string _eventname;
private DateTime? _eventbegintime;
private DateTime? _eventendtime;
private int? _iscontinue;
private string _remark;
private string _operatorno;
private string _operatorname;
private DateTime? _operatedate;
public string EventRemark;
/// <summary>
///
/// </summary>
public int Id
{
set { _id = value; }
get { return _id; }
}
/// <summary>
///
/// </summary>
public int? EventTypeId
{
set { _eventtypeid = value; }
get { return _eventtypeid; }
}
/// <summary>
///
/// </summary>
public int? PatientId
{
set { _patientid = value; }
get { return _patientid; }
}
/// <summary>
///
/// </summary>
public int? EventId
{
set { _eventid = value; }
get { return _eventid; }
}
public string EventName
{
set { _eventname = value; }
get { return _eventname; }
}
/// <summary>
///
/// </summary>
public DateTime? EventBeginTime
{
set { _eventbegintime = value; }
get { return _eventbegintime; }
}
/// <summary>
///
/// </summary>
public DateTime? EventEndTime
{
set { _eventendtime = value; }
get { return _eventendtime; }
}
/// <summary>
///
/// </summary>
public int? IsContinue
{
set { _iscontinue = value; }
get { return _iscontinue; }
}
/// <summary>
///
/// </summary>
public string Remark
{
set { _remark = value; }
get { return _remark; }
}
/// <summary>
///
/// </summary>
public string OperatorNo
{
set { _operatorno = value; }
get { return _operatorno; }
}
/// <summary>
///
/// </summary>
public string OperatorName
{
set { _operatorname = value; }
get { return _operatorname; }
}
/// <summary>
///
/// </summary>
public DateTime? OperateDate
{
set { _operatedate = value; }
get { return _operatedate; }
}
#endregion Model
/// <summary>
/// 清空所有与某条事件相关的控件。
/// </summary>
/// <param name="faRecord">麻醉窗体</param>
public override void clearAddObj(ZedGraphControl zgc)
{
if (zgcAnas == null || zgcAnas != zgc) zgcAnas = zgc;
//delAddEventObj("TD", AEvent.EventName.ToString());
delAddObj(TextPrefix.DN + this.EventName + this.EventId.ToString());
delAddObj(TextPrefix.DT + this.EventName + this.EventId.ToString());
delAddObj(TextPrefix.DD + this.EventName + this.EventId.ToString());
delAddObj(TextPrefix.DD + this.EventName + this.EventId.ToString() + "spicle");
delAddArrows(TextPrefix.AR + this.EventName + this.EventId.ToString());
delAddImg(TextPrefix.IM + this.EventName + this.EventId.ToString());
}
public override void clearDNAndDT(ZedGraphControl zgc)
{
if (zgcAnas == null || zgcAnas != zgc) zgcAnas = zgc;
delAddObj(TextPrefix.DN + this.EventName + this.EventId.ToString());
delAddObj(TextPrefix.DT + this.EventName + this.EventId.ToString());
//delAddObj(TextPrefix.IM + this.EventRef.Name + this.EventId.ToString());
}
/// <summary>
/// 根据事件对象重画图片
/// </summary>
/// <param name="EventRecord"></param>
public void drawIMG(ZedGraphControl zgc, string picName, double y, double width)//EventRecord EventRecord)
{
if (zgcAnas == null || zgcAnas != zgc) zgcAnas = zgc;
string resName = picName;
DateTime ps = pageBegin; //页面开始时间
DateTime pe = pageEnd; //页面结束时间
DateTime ads = EventBeginTime.Value.AddMinutes(-2);
if (EventBeginTime.Value.Hour == pageBegin.Hour && EventBeginTime.Value.Minute - pageBegin.Minute <= 3) ads = EventBeginTime.Value; //事件开始时间
DateTime ade = EventEndTime.Value; //事件结束时间
double x1 = getXPositinByXDate(ads);
double height = width;
//清除该图片重画
delAddImg(TextPrefix.IM + this.EventName + this.EventId);
if (ads < pe && ads >= ps)
{
ZUtil.DrawImage(resName, x1, y, width, height, zgcAnas, TextPrefix.IM + this.EventName + this.EventId);
}
}
/// <summary>
/// 根据事件对象重画图片
/// </summary>
/// <param name="EventRecord"></param>
public void drawNumber(ZedGraphControl zgc, string picName, double y, int DValue, Color fontColor)//EventRecord EventRecord)
{
if (zgcAnas == null || zgcAnas != zgc) zgcAnas = zgc;
string resName = picName;
DateTime ps = pageBegin; //页面开始时间
DateTime pe = pageEnd; //页面结束时间
DateTime ads = EventBeginTime.Value.AddMinutes(-3 - DValue);
if (EventBeginTime.Value.Hour == pageBegin.Hour && EventBeginTime.Value.Minute - pageBegin.Minute <= 3) ads = EventBeginTime.Value; //事件开始时间
DateTime ade = EventEndTime.Value; //事件结束时间
double x1 = getXPositinByXDate(ads);
//清除该图片重画
delAddImg(TextPrefix.DN + this.EventName + this.EventId);
if (ads < pe.AddMinutes(2.5) && ads >= ps.AddMinutes(-2.5))
{
ZUtil.DrawText(picName, x1, y, zgcAnas, TextPrefix.DN + this.EventName + this.EventId, fontColor, 6.3f);
}
}
}
/// <summary>
/// 事件排序类
/// </summary>
public class FactEventsComparer : IComparer<FactEvents>
{
public int Compare(FactEvents x, FactEvents y)
{
return (x.EventBeginTime.Value.CompareTo(y.EventBeginTime.Value));
}
}
}