256 lines
12 KiB
C#
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; }
|
|||
|
}
|
|||
|
}
|
|||
|
}
|