163 lines
7.3 KiB
C#
163 lines
7.3 KiB
C#
|
using DevExpress.Utils;
|
|||
|
using DevExpress.XtraCharts;
|
|||
|
using DevExpress.XtraEditors;
|
|||
|
using HL_FristAidPlatform_DTO.Service;
|
|||
|
using HL_FristAidPlatform_Public;
|
|||
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.ComponentModel;
|
|||
|
using System.Data;
|
|||
|
using System.Drawing;
|
|||
|
using System.Linq;
|
|||
|
using System.Text;
|
|||
|
using System.Threading.Tasks;
|
|||
|
using System.Windows.Forms;
|
|||
|
using static HL_FristAidPlatform_Public.TimeControl;
|
|||
|
|
|||
|
namespace HL_FristAidPlatform_Trauma
|
|||
|
{
|
|||
|
public partial class Form_InformationWarningStaisics : XtraForm
|
|||
|
{
|
|||
|
public Form_InformationWarningStaisics()
|
|||
|
{
|
|||
|
InitializeComponent();
|
|||
|
}
|
|||
|
|
|||
|
private void Form_InformationWarningStaisics_Load(object sender, EventArgs e)
|
|||
|
{
|
|||
|
time_starTime.TimeValue = DateTime.Now.AddMonths(-5).ToString();
|
|||
|
time_endTime.TimeValue = DateTime.Now.ToString();
|
|||
|
GetInformationWarningStaisics();
|
|||
|
}
|
|||
|
|
|||
|
private void radi_month_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (radi_month.Checked)
|
|||
|
time_starTime.FormatString_Date = DateFormat.yyyyMM;
|
|||
|
}
|
|||
|
|
|||
|
private void radio_year_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (radi_month.Checked)
|
|||
|
time_starTime.FormatString_Date = DateFormat.yyyyMMdd;
|
|||
|
}
|
|||
|
|
|||
|
private void simpleButton2_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
GetInformationWarningStaisics();
|
|||
|
}
|
|||
|
|
|||
|
public void GetInformationWarningStaisics()
|
|||
|
{
|
|||
|
string starTime = "";
|
|||
|
string endTime = "";
|
|||
|
//int type = radio_day.Checked == true ? 0 : 1;
|
|||
|
//if (type == 0)
|
|||
|
//{
|
|||
|
// starTime = time_starTime.TimeValue.ToString() == "" ? "" : Convert.ToDateTime(time_starTime.TimeValue).ToString("yyyy-MM-dd");
|
|||
|
// endTime = time_endTime.TimeValue.ToString() == "" ? "" : Convert.ToDateTime(time_endTime.TimeValue).ToString("yyyy-MM-dd");
|
|||
|
//}
|
|||
|
//if (type == 1)
|
|||
|
//{
|
|||
|
// starTime = time_starTime.TimeValue.ToString() == "" ? "" : Convert.ToDateTime(time_starTime.TimeValue).ToString("yyyy-MM");
|
|||
|
// endTime = time_endTime.TimeValue.ToString() == "" ? "" : Convert.ToDateTime(time_endTime.TimeValue).ToString("yyyy-MM");
|
|||
|
//}
|
|||
|
InformationWarningStaisicsDTO model = DBHelpClass.GetDateModel<InformationWarningStaisicsDTO>(string.Format("api/service/T_Service_Trauma_MassiveDataStatistics/GetInformationWarningStaisics?hospitalGuid={0}&starTime={1}&endTime={2}&type={3}", Information.Hospital.GUID, Convert.ToDateTime(time_starTime.TimeValue).ToString("yyyy-MM"), Convert.ToDateTime(time_endTime.TimeValue).ToString("yyyy-MM"), 1));
|
|||
|
|
|||
|
if (model != null)
|
|||
|
{
|
|||
|
lbl_earlyWarningTotal.Text = model.EarlyWarningTotal.ToString();
|
|||
|
lbl_callTraumaTeamTotal.Text = model.CallTraumaTeamTotal.ToString();
|
|||
|
|
|||
|
chartControl2.Series.Clear();
|
|||
|
chartControl2.Titles.Clear();
|
|||
|
Series series = new Series("", ViewType.Pie);
|
|||
|
series.Points.Add(new SeriesPoint("预警占比", model.EarlyWarningCount));
|
|||
|
series.Points.Add(new SeriesPoint("呼叫创伤团队占比", model.CallTraumaTeamCount));
|
|||
|
series.Points.Add(new SeriesPoint("未预警占比", model.NonEarlyWarningCount));
|
|||
|
ChartTitle chartTitle1 = new ChartTitle();
|
|||
|
chartTitle1.Text = "占比统计";
|
|||
|
series.Label.TextPattern = "{A}: {VP:p0}";
|
|||
|
((PieSeriesLabel)series.Label).Position = PieSeriesLabelPosition.TwoColumns;
|
|||
|
((PieSeriesLabel)series.Label).ResolveOverlappingMode = ResolveOverlappingMode.Default;
|
|||
|
chartControl2.Titles.Add(chartTitle1);
|
|||
|
chartControl2.Series.AddRange(series);
|
|||
|
|
|||
|
chartControl1.Series.Clear();
|
|||
|
chartControl1.Titles.Clear();
|
|||
|
Series series1 = new Series("预警次数", ViewType.Spline);
|
|||
|
Series series2 = new Series("呼叫创伤团队次数", ViewType.Spline);
|
|||
|
ChartTitle chartTitle2 = new ChartTitle();
|
|||
|
chartTitle2.Text = "预警信息统计";
|
|||
|
chartControl1.Titles.Add(chartTitle2);
|
|||
|
int max = 10;
|
|||
|
List<int> lst = new List<int>();
|
|||
|
if (model.EarlyWarningList != null && model.EarlyWarningList.Count > 0)
|
|||
|
{
|
|||
|
for (int i = 0; i < model.EarlyWarningList.Count; i++)
|
|||
|
{
|
|||
|
lst.Add(model.EarlyWarningList[i].Number);
|
|||
|
series1.Points.Add(new SeriesPoint(model.EarlyWarningList[i].TimeDate, model.EarlyWarningList[i].Number));
|
|||
|
}
|
|||
|
}
|
|||
|
if (model.CallTraumaTeamList != null && model.CallTraumaTeamList.Count > 0)
|
|||
|
{
|
|||
|
for (int i = 0; i < model.CallTraumaTeamList.Count; i++)
|
|||
|
{
|
|||
|
lst.Add(model.EarlyWarningList[i].Number);
|
|||
|
series2.Points.Add(new SeriesPoint(model.CallTraumaTeamList[i].TimeDate, model.CallTraumaTeamList[i].Number));
|
|||
|
}
|
|||
|
}
|
|||
|
chartControl1.Series.AddRange(series1, series2);
|
|||
|
((LineSeriesView)series1.View).MarkerVisibility = DefaultBoolean.True;
|
|||
|
((LineSeriesView)series1.View).LineMarkerOptions.Kind = MarkerKind.Circle;
|
|||
|
((LineSeriesView)series2.View).MarkerVisibility = DefaultBoolean.True;
|
|||
|
((LineSeriesView)series2.View).LineMarkerOptions.Kind = MarkerKind.InvertedTriangle;
|
|||
|
XYDiagram xyDia = chartControl1.Diagram as XYDiagram;
|
|||
|
xyDia.AxisX.DateTimeScaleOptions.ScaleMode = ScaleMode.Manual;
|
|||
|
max = int.Parse(lst.Max(i => i.ToString()));
|
|||
|
int tempone = max / 5;
|
|||
|
int temptwo = max % 5;
|
|||
|
if (temptwo == 0)
|
|||
|
{
|
|||
|
max = tempone * 5;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
max = (tempone + 1) * 5;
|
|||
|
}
|
|||
|
if (max == 0)
|
|||
|
{
|
|||
|
max = 10;
|
|||
|
}
|
|||
|
xyDia.AxisY.WholeRange.MaxValue = max;
|
|||
|
xyDia.AxisY.NumericScaleOptions.GridOffset = 0;
|
|||
|
xyDia.AxisY.NumericScaleOptions.GridSpacing = max / 5;
|
|||
|
((XYDiagram)(chartControl1.Diagram)).EnableAxisXScrolling = true;//启用横轴滚动条
|
|||
|
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void simpleButton5_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
time_starTime.TimeValue = DateTime.Now.AddMonths(-2).ToString();
|
|||
|
time_endTime.TimeValue = DateTime.Now.ToString();
|
|||
|
GetInformationWarningStaisics();
|
|||
|
}
|
|||
|
|
|||
|
private void simpleButton1_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
time_starTime.TimeValue = DateTime.Now.AddMonths(-5).ToString();
|
|||
|
time_endTime.TimeValue = DateTime.Now.ToString();
|
|||
|
GetInformationWarningStaisics();
|
|||
|
}
|
|||
|
|
|||
|
private void simpleButton4_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
time_starTime.TimeValue = DateTime.Now.AddMonths(-11).ToString();
|
|||
|
time_endTime.TimeValue = DateTime.Now.ToString();
|
|||
|
GetInformationWarningStaisics();
|
|||
|
}
|
|||
|
}
|
|||
|
}
|