using DevExpress.XtraCharts; using DevExpress.XtraEditors; using HL_FristAidPlatform_DTO; using HL_FristAidPlatform_Public; using System; using System.Collections.Generic; using System.Drawing; namespace HL_FristAidPlatform_Trauma { public partial class Form_SevereTraumaStatistics : XtraForm { public Form_SevereTraumaStatistics() { InitializeComponent(); } private void Form_SevereTraumaStatistics_Load(object sender, System.EventArgs e) { DateTime dt = DateTime.Now; //当前时间 DateTime startMonth = dt.AddMonths(-5).AddDays(1 - dt.Day);//本月月初 DateTime endMonth = startMonth.AddMonths(6); //本月月末 timeControl1.TimeValue = startMonth.ToString(); timeControl2.TimeValue = endMonth.AddMonths(-1).ToString(); GetSevereTraumaStatistics(startMonth.ToString(), endMonth.ToString()); } private void simpleButton1_Click(object sender, System.EventArgs e) { string startTime = initdatetime(timeControl1.TimeValue + ""); string endTime = initdatetime(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).AddMonths(1)) > 0) { XtraMessageBox.Show("开始时间不能大于截至时间!"); return; } else { GetSevereTraumaStatistics(startTime, Convert.ToDateTime(endTime).AddMonths(1) + ""); } } } private void GetSevereTraumaStatistics(string startTime, string endTime) { try { List list = DBHelpClass.GetList(string.Format("api/service/T_Service_Trauma_SevereTrauma/GetSevereTraumaStatistics?hospitalGuid={0}&startTime={1}&endTime={2}", Information.Hospital.GUID, startTime, endTime)); if (list != null && list.Count > 0) { labelControl5.Text = list[list.Count-1].SumCount+""; labelControl6.Text = list[list.Count - 1].SumDeathRate + "%"; } 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.15; if (list != null && list.Count > 0) { for (int i = 0; i < list.Count; i++) { series1.Points.Add(new SeriesPoint(list[i].Month, list[i].Count)); } 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;//启用横轴滚动条 } chartControl2.Series.Clear(); chartControl2.Titles.Clear(); ChartTitle titles2 = new ChartTitle(); titles2.Text = "严重创伤病人病死率统计"; titles2.TextColor = Color.FromArgb(23, 35, 61); titles2.Indent = 1; // titles2.Font = new Font("微软雅黑", 16, FontStyle.Regular); titles2.Dock = ChartTitleDockStyle.Top; titles2.Indent = 0; // titles2.Alignment = StringAlignment.Center; chartControl2.Titles.Add(titles2); chartControl2.Series.Clear(); Series series2 = new Series("病死率统计", ViewType.Spline); series2.Points.Clear(); if (list != null && list.Count > 0) { for (int i = 0; i < list.Count; i++) { series2.Points.Add(new SeriesPoint(list[i].Month, list[i].DeathRate)); } chartControl2.Series.AddRange(series2); XYDiagram xyDia = chartControl2.Diagram as XYDiagram; xyDia.AxisX.DateTimeScaleOptions.ScaleMode = ScaleMode.Manual; xyDia.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Month; ((XYDiagram)(chartControl2.Diagram)).EnableAxisXScrolling = true;//启用横轴滚动条 } } catch (Exception ex) { throw ex; } } private void simpleButton3_Click(object sender, EventArgs e) { string startTime = initdatetime(timeControl1.TimeValue + ""); string endTime = initdatetime(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).AddMonths(1)) > 0) { XtraMessageBox.Show("开始时间不能大于截至时间!"); return; } else { GetSevereTraumaStatistics(startTime, Convert.ToDateTime(endTime).AddMonths(1) + ""); } } } private void simpleButton5_Click(object sender, EventArgs e) { DateTime dt = DateTime.Now; //当前时间 DateTime startMonth = dt.AddMonths(-2).AddDays(1 - dt.Day);//本月月初 DateTime endMonth = startMonth.AddMonths(3); //本月月末 timeControl1.TimeValue = startMonth.ToString(); timeControl2.TimeValue = endMonth.AddMonths(-1).ToString(); GetSevereTraumaStatistics(startMonth.ToString(), endMonth.ToString()); } private void simpleButton2_Click(object sender, EventArgs e) { DateTime dt = DateTime.Now; //当前时间 DateTime startMonth = dt.AddMonths(-5).AddDays(1 - dt.Day);//本月月初 DateTime endMonth = startMonth.AddMonths(6); //本月月末 timeControl1.TimeValue = startMonth.ToString(); timeControl2.TimeValue = endMonth.AddMonths(-1).ToString(); GetSevereTraumaStatistics(startMonth.ToString(), endMonth.ToString()); } private void simpleButton4_Click(object sender, EventArgs e) { DateTime dt = DateTime.Now; //当前时间 DateTime startMonth = dt.AddMonths(-11).AddDays(1 - dt.Day);//本月月初 DateTime endMonth = startMonth.AddMonths(12); //本月月末 timeControl1.TimeValue = startMonth.ToString(); timeControl2.TimeValue = endMonth.AddMonths(-1).ToString(); GetSevereTraumaStatistics(startMonth.ToString(), endMonth.ToString()); } private string initdatetime(string datetime) { string str = datetime.Replace("年", "-").Replace("月", "-")+"01"; return str; } } }