StableVersion4.3/HL_FristAidPlatform_PreHosp.../Form_PatientWhereaboutsCens...

256 lines
12 KiB
C#

using DevExpress.XtraCharts;
using DevExpress.XtraEditors;
using HL_FristAidPlatform_DTO;
using HL_FristAidPlatform_Public;
using System;
using System.Collections.Generic;
using System.Data;
using System.Drawing;
namespace HL_FristAidPlatform_PreHospitalEmergency
{
public partial class Form_PatientWhereaboutsCensus : XtraForm
{
public Form_PatientWhereaboutsCensus()
{
InitializeComponent();
}
private void Form_PatientWhereaboutsCensus_Load(object sender, EventArgs e)
{
timeControl1.TimeValue = DateTime.Now.AddMonths(-1).ToString("yyyy-MM-dd");
timeControl2.TimeValue = DateTime.Now.ToString("yyyy-MM-dd");
//FirstAidPatientWhereaboutsCensus(Information.Hospital.GUID, timeControl1.TimeValue, timeControl2.TimeValue, 0);
GetFirstAidPatientWhereabouts(timeControl1.TimeValue, timeControl2.TimeValue);
}
//private void FirstAidPatientWhereaboutsCensus(string hospitalGuid, string startTime, string endTime, int type)
//{
// try
// {
// //0 到院 1 转院 2 现场救治 3 拒绝治疗 4 拒绝送院 5 抢救无效死亡 6 自行离去 7 未接到患者
// chartControl1.Series.Clear();
// Series series1 = new Series("到院", ViewType.Spline);
// Series series2 = new Series("转院", ViewType.Spline);
// Series series3 = new Series("现场救治", ViewType.Spline);
// Series series4 = new Series("拒绝治疗", ViewType.Spline);
// Series series5 = new Series("拒绝送院", ViewType.Spline);
// Series series6 = new Series("抢救无效死亡", ViewType.Spline);
// Series series7 = new Series("家属放弃治疗", ViewType.Spline);
// Series series8 = new Series("自行离去", ViewType.Spline);
// Series series9 = new Series("未接到患者", ViewType.Spline);
// string Url = string.Format("api/service/T_Service_FirstAid_Statistics/FirstAidPatientWhereaboutsCensus?hospitalGuid={0}&startTime={1}&endTime={2}&type={3}", hospitalGuid, startTime, endTime, type);
// DataTable dt = DBHelpClass.GetJsonText(Url);
// if (dt != null && dt.Rows.Count > 0)
// {
// for (int i = 0; i < dt.Rows.Count; i++)
// {
// if (dt.Rows[i]["WhereAbouts"].ToString() == "0")
// {
// series1.Points.Add(new SeriesPoint(dt.Rows[i]["RegisterTime"].ToString(), dt.Rows[i]["Total"].ToString()));
// }
// if (dt.Rows[i]["WhereAbouts"].ToString() == "1")
// {
// series2.Points.Add(new SeriesPoint(dt.Rows[i]["RegisterTime"].ToString(), dt.Rows[i]["Total"].ToString()));
// }
// if (dt.Rows[i]["WhereAbouts"].ToString() == "2")
// {
// series3.Points.Add(new SeriesPoint(dt.Rows[i]["RegisterTime"].ToString(), dt.Rows[i]["Total"].ToString()));
// }
// if (dt.Rows[i]["WhereAbouts"].ToString() == "3")
// {
// series4.Points.Add(new SeriesPoint(dt.Rows[i]["RegisterTime"].ToString(), dt.Rows[i]["Total"].ToString()));
// }
// if (dt.Rows[i]["WhereAbouts"].ToString() == "4")
// {
// series5.Points.Add(new SeriesPoint(dt.Rows[i]["RegisterTime"].ToString(), dt.Rows[i]["Total"].ToString())); ;
// }
// if (dt.Rows[i]["WhereAbouts"].ToString() == "5")
// {
// series6.Points.Add(new SeriesPoint(dt.Rows[i]["RegisterTime"].ToString(), dt.Rows[i]["Total"].ToString()));
// }
// if (dt.Rows[i]["WhereAbouts"].ToString() == "6")
// {
// series7.Points.Add(new SeriesPoint(dt.Rows[i]["RegisterTime"].ToString(), dt.Rows[i]["Total"].ToString()));
// }
// if (dt.Rows[i]["WhereAbouts"].ToString() == "7")
// {
// series8.Points.Add(new SeriesPoint(dt.Rows[i]["RegisterTime"].ToString(), dt.Rows[i]["Total"].ToString()));
// }
// if (dt.Rows[i]["WhereAbouts"].ToString() == "8")
// {
// series9.Points.Add(new SeriesPoint(dt.Rows[i]["RegisterTime"].ToString(), dt.Rows[i]["Total"].ToString()));
// }
// chartControl1.Series.AddRange(new Series[] { series1, series2, series3, series4, series5, series6, series7, series8, series9 });
// }
// ((LineSeriesView)series1.View).MarkerVisibility = DevExpress.Utils.DefaultBoolean.True;
// ((LineSeriesView)series1.View).LineMarkerOptions.Kind = MarkerKind.Circle;
// series1.Label.Visible = true;
// ((LineSeriesView)series2.View).MarkerVisibility = DevExpress.Utils.DefaultBoolean.True;
// ((LineSeriesView)series2.View).LineMarkerOptions.Kind = MarkerKind.Circle;
// series2.Label.Visible = true;
// ((LineSeriesView)series3.View).MarkerVisibility = DevExpress.Utils.DefaultBoolean.True;
// ((LineSeriesView)series3.View).LineMarkerOptions.Kind = MarkerKind.Circle;
// series3.Label.Visible = true;
// ((LineSeriesView)series4.View).MarkerVisibility = DevExpress.Utils.DefaultBoolean.True;
// ((LineSeriesView)series4.View).LineMarkerOptions.Kind = MarkerKind.Circle;
// series4.Label.Visible = true;
// ((LineSeriesView)series5.View).MarkerVisibility = DevExpress.Utils.DefaultBoolean.True;
// ((LineSeriesView)series5.View).LineMarkerOptions.Kind = MarkerKind.Circle;
// series5.Label.Visible = true;
// ((LineSeriesView)series6.View).MarkerVisibility = DevExpress.Utils.DefaultBoolean.True;
// ((LineSeriesView)series6.View).LineMarkerOptions.Kind = MarkerKind.Circle;
// series6.Label.Visible = true;
// ((LineSeriesView)series7.View).MarkerVisibility = DevExpress.Utils.DefaultBoolean.True;
// ((LineSeriesView)series7.View).LineMarkerOptions.Kind = MarkerKind.Circle;
// series7.Label.Visible = true;
// ((LineSeriesView)series8.View).MarkerVisibility = DevExpress.Utils.DefaultBoolean.True;
// ((LineSeriesView)series8.View).LineMarkerOptions.Kind = MarkerKind.Circle;
// series8.Label.Visible = true;
// ((LineSeriesView)series9.View).MarkerVisibility = DevExpress.Utils.DefaultBoolean.True;
// ((LineSeriesView)series9.View).LineMarkerOptions.Kind = MarkerKind.Circle;
// series9.Label.Visible = true;
// }
// else
// {
// }
// }
// catch (Exception ex)
// {
// PublicClass.WriteErrorLog(this.Text, "获取患者档案元数据:\r\n" + ex);
// }
//}
private void GetFirstAidPatientWhereabouts(string startTime,string endTime)
{
try
{
List<QuantityModel> list = DBHelpClass.GetList<QuantityModel>(string.Format("api/service/T_Service_FirstAid_Statistics/FirstAidPatientWhereabouts?hospitalGuid={0}&startTime={1}&endTime={2}&type={3}", Information.Hospital.GUID, startTime, endTime, 0));
chartControl1.Series.Clear();
chartControl1.Titles.Clear();
ChartTitle titles1 = new ChartTitle();
titles1.Text = "院前病人去向统计";
titles1.TextColor = Color.FromArgb(23, 35, 61);
titles1.Indent = 1;
//titles1.Font = new Font("微软雅黑", 16, FontStyle.Regular);
titles1.Dock = ChartTitleDockStyle.Top;
titles1.Indent = 0;
//titles1.Alignment = StringAlignment.Center;
chartControl1.Titles.Add(titles1);
chartControl1.Series.Clear();
Series series1 = new Series("人数统计", ViewType.Bar);
series1.Points.Clear();
BarSeriesView bsv = (BarSeriesView)series1.View;
bsv.BarWidth = 0.4;
if (list != null && list.Count > 0)
{
for (int i = 0; i < list.Count; i++)
{
series1.Points.Add(new SeriesPoint(list[i].Name, list[i].Quantity));
}
chartControl1.Series.AddRange(series1);
XYDiagram xyDia = chartControl1.Diagram as XYDiagram;
xyDia.AxisX.DateTimeScaleOptions.ScaleMode = ScaleMode.Manual;
xyDia.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Month;
((XYDiagram)(chartControl1.Diagram)).EnableAxisXScrolling = true;//启用横轴滚动条
}
}
catch (Exception ex)
{
throw;
}
}
private void simpleButton2_Click(object sender, EventArgs e)
{
#region MyRegion
//if (string.IsNullOrEmpty(timeControl1.TimeValue))
//{
// timeControl1.TimeValue = "1990-01-01";
//}
//else
//{
// timeControl1.TimeValue = timeControl1.TimeValue.Replace("/", "-").Replace("0:00:00", "");
//}
//if (string.IsNullOrEmpty(timeControl2.TimeValue))
//{
// timeControl2.TimeValue = DateTime.Now.ToString("yyyy-MM-dd");
//}
//int type = 0;
//if (radioButton6.Checked == true)
//{
// type = 0;
//}
//if (radioButton2.Checked == true)
//{
// type = 1;
//}
//if (radioButton5.Checked == true)
//{
// type = 2;
//}
//if (radioButton3.Checked == true)
//{
// type = 3;
//}
//if (radioButton4.Checked == true)
//{
// type = 4;
//}
//FirstAidPatientWhereaboutsCensus(Information.Hospital.GUID, timeControl1.TimeValue, timeControl2.TimeValue, type);
#endregion
string startTime = timeControl1.TimeValue + "";
string endTime = timeControl2.TimeValue + "";
if (string.IsNullOrEmpty(startTime))
{
XtraMessageBox.Show("开始时间不能为空!");
return;
}
if (string.IsNullOrEmpty(endTime))
{
XtraMessageBox.Show("截至时间不能为空!");
return;
}
if (!string.IsNullOrEmpty(endTime) && !string.IsNullOrEmpty(startTime))
{
if (DateTime.Compare(Convert.ToDateTime(startTime), Convert.ToDateTime(endTime)) > 0)
{
XtraMessageBox.Show("开始时间不能大于截至时间!");
return;
}
else
{
GetFirstAidPatientWhereabouts(startTime, Convert.ToDateTime(endTime).AddDays(1) + "");
}
}
}
private class QuantityModel
{
public string Name { get; set; }
public int Quantity { get; set; }
}
}
}