using DevExpress.Utils; using DevExpress.XtraCharts; using DevExpress.XtraEditors; using HL_FristAidPlatform_Public; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace SC_FristAidPlatform_ChestPainUnit { public partial class Form_Index : XtraForm { public Form_Index() { InitializeComponent(); } private void Form_Index_Load(object sender, EventArgs e) { try { List lst = DBHelpClass.GetList(string.Format("api/service/ChestPainUnit/GetCaseStatistics?hospitalGuid={0}", Information.Hospital.GUID)); if (lst != null && lst.Count > 0) { for (int i = 0; i < lst.Count; i++) { lbl_ToDayCaseCount.Text = lst[0].Count.ToString(); lbl_ThisMonthCount.Text = lst[1].Count.ToString(); lbl_ThisYear.Text = lst[2].Count.ToString(); lbl_Total.Text = lst[3].Count.ToString(); lbl_ThisMothReportCount.Text = lst[4].Count.ToString(); lbl_ToatlReportCount.Text = lst[5].Count.ToString(); } } ChestPainUnitHospitalModel model = DBHelpClass.GetDateModel(string.Format("api/service/ChestPainUnit/GetChestPainUnitHospitalModel?hospitalGuid={0}", Information.Hospital.GUID)); if (model != null) { lbl_TotalThree.Text = model.TotalThree.ToString(); lbl_TotalOne.Text = model.TotalOne.ToString(); lbl_TotalTwo.Text = model.TotalTwo.ToString(); lbl_TotalFour.Text = model.TotalFour.ToString(); } GetFMCTOECGAVG(); GetTroponinAVG(); } catch (Exception ex) { PublicClass.WriteErrorLog(this.Text, "加载:\r\n" + ex); } } public void GetFMCTOECGAVG() { try { ChartTitle titles = new ChartTitle(); titles.Text = "首次医疗接触到首份心电图完成平时耗时统计"; titles.TextColor = Color.FromArgb(23, 35, 61); titles.Indent = 1; titles.Font = new Font("微软雅黑", 16, FontStyle.Regular); titles.Dock = ChartTitleDockStyle.Top; titles.Indent = 0; titles.Alignment = StringAlignment.Center; chartControl1.Titles.Add(titles); List lst = DBHelpClass.GetList(string.Format("api/service/ChestPainUnit/GetFMCTOECGAVG?hospitalGuid={0}&startTime={1}&endTime={2}", Information.Hospital.GUID, DateTime.Now.AddMonths(-11).ToString("yyyy-MM-dd"), DateTime.Now.ToString("yyyy-MM-dd"))); chartControl1.Series.Clear(); Series series1 = new Series("平均耗时", ViewType.Spline); series1.Points.Clear(); if (lst != null && lst.Count > 0) { for (int i = 0; i < lst.Count; i++) { series1.Points.Add(new SeriesPoint(lst[i].Month, lst[i].AVGTime)); } chartControl1.Series.AddRange(series1); } //DevExpress.XtraCharts.XYDiagram xyDiagram1 = (XYDiagram)this.chartControl1.Diagram; //xyDiagram1.AxisY.Range.MinValueInternal = 0; //((LineSeriesView)series1.View).MarkerVisibility = DefaultBoolean.True; //((LineSeriesView)series1.View).LineMarkerOptions.Kind = MarkerKind.Circle; } catch (Exception) { throw; } } public void GetTroponinAVG() { try { ChartTitle titles = new ChartTitle(); titles.Text = "肌钙蛋白抽血完成至出报告时间统计"; titles.TextColor = Color.FromArgb(23, 35, 61); titles.Indent = 1; titles.Font = new Font("微软雅黑", 16, FontStyle.Regular); titles.Dock = ChartTitleDockStyle.Top; titles.Indent = 0; titles.Alignment = StringAlignment.Center; chartControl2.Titles.Add(titles); List lst = DBHelpClass.GetList(string.Format("api/service/ChestPainUnit/GetTroponinAVG?hospitalGuid={0}&startTime={1}&endTime={2}", Information.Hospital.GUID, DateTime.Now.AddMonths(-11).ToString("yyyy-MM-dd"), DateTime.Now.ToString("yyyy-MM-dd"))); chartControl2.Series.Clear(); Series series1 = new Series("平均耗时", ViewType.Bar); series1.Points.Clear(); if (lst != null && lst.Count > 0) { for (int i = 0; i < lst.Count; i++) { series1.Points.Add(new SeriesPoint(lst[i].Month, lst[i].AVGTime)); } chartControl2.Series.AddRange(series1); BarSeriesView bsv1 = (BarSeriesView)series1.View; bsv1.BarWidth = 0.5; XYDiagram xyDia = chartControl2.Diagram as XYDiagram; xyDia.AxisX.DateTimeScaleOptions.ScaleMode = ScaleMode.Manual; xyDia.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Month; } } catch (Exception) { throw; } } public class CaseStatisticsModel { public string Name { get; set; } public int Count { get; set; } } /// /// 胸痛单元来院方式统计实体类 /// public class ChestPainUnitHospitalModel { /// /// 自行来院数量 /// public int TotalOne { get; set; } /// /// 救护车来院数量 /// public int TotalTwo { get; set; } /// /// 院内发病数量 /// public int TotalThree { get; set; } /// /// 没有来院方式数量 /// public int TotalFour { get; set; } } public class DateTimeAVGModel { /// /// 月份 /// public string Month { get; set; } /// /// 平均用时 /// public int AVGTime { get; set; } } } }