StableVersion4.3/HL_FristAidPlatform_Apoplexy/Form_ApoplexyHighRiskScreen...

243 lines
11 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

using DevExpress.XtraCharts;
using DevExpress.XtraGrid;
using DevExpress.XtraGrid.Views.Grid;
using HL_FristAidPlatform_Print;
using HL_FristAidPlatform_Public;
using System;
using System.Data;
using System.Drawing.Printing;
using System.Linq;
using System.Windows.Forms;
namespace HL_FristAidPlatform_Apoplexy
{
public partial class Form_ApoplexyHighRiskScreening_WorkloadStatistics : Form
{
//PrintDocument类是实现打印功能的核心它封装了打印有关的属性、事件、和方法
PrintDocument printDocument = new PrintDocument();
public Form_ApoplexyHighRiskScreening_WorkloadStatistics()
{
InitializeComponent();
}
private void Form_ApoplexyHighRiskScreening_WorkloadStatistics_Load(object sender, EventArgs e)
{
timeControl_StratTime.TimeValue = DateTime.Now.AddDays(1 - DateTime.Now.Day).Date.ToShortDateString() + " 00:00:00";
timeControl_EndTime.TimeValue = DateTime.Now.AddDays(1 - DateTime.Now.Day).Date.AddMonths(1).AddDays(-1).ToShortDateString() + " 23:59:59";
Statistics();
}
private void simpleButton11_Click(object sender, EventArgs e)
{
Statistics();
}
private void simpleButton6_Click(object sender, EventArgs e)
{
timeControl_StratTime.TimeValue = new DateTime(DateTime.Now.Year, 1, 1).ToString("yyyy-MM-dd") + " 00:00:00";
timeControl_EndTime.TimeValue = new DateTime(DateTime.Now.Year, 12, 31).ToString("yyyy-MM-dd") + " 23:59:59";
//Statistics();
}
private void simpleButton8_Click(object sender, EventArgs e)
{
timeControl_StratTime.TimeValue = DateTime.Now.AddDays(1 - DateTime.Now.Day).Date.ToShortDateString() + " 00:00:00";
timeControl_EndTime.TimeValue = DateTime.Now.AddDays(1 - DateTime.Now.Day).Date.AddMonths(1).AddDays(-1).ToShortDateString() + " 23:59:59";
//Statistics();
}
private void Statistics()
{
try
{
chartControl1.Series.Clear();
panelControl4.Controls.Clear();
string startTime = timeControl_StratTime.TimeValue;
string endTime = timeControl_EndTime.TimeValue;
string Url = string.Format("/api/service/T_Service_FirstAid_ApoplexyHighRiskScreening/GetWorkloadStatistics?startTime={0}&endTime={1}", startTime, endTime);
DataTable BindDT = DBHelpClass.Get(Url);
DataTable data = new DataTable("table1");
data.Columns.Add("月份", typeof(string));
data.Columns.Add("人数", typeof(int));
if (BindDT != null)
{
var query = from t in BindDT.AsEnumerable()
group t by new { t1 = t.Field<string>("CreateTime").Remove(7, 12) } into m
orderby m.Key.t1 ascending
select new
{
name = m.Key.t1,
count = m.Count()
};
foreach (var item in query.ToList())
{
data.Rows.Add(item.name, item.count);
}
}
Series series = new Series("高危筛查总量统计", ViewType.Bar);
foreach (DataRow item in data.Rows)
{
series.Points.Add(new SeriesPoint(item[0] + "", item[1]));
}
BarSeriesView bsv = (BarSeriesView)series.View;
bsv.BarWidth = 0.25;
chartControl1.Series.AddRange(new Series[] { series });
XYDiagram xyDia = chartControl1.Diagram as XYDiagram;
xyDia.AxisX.DateTimeScaleOptions.ScaleMode = ScaleMode.Manual;
xyDia.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Month;
chartControl1.Titles[0].Text = "高危筛查总量统计";
GridControl gridControl = new GridControl();
GridView gridView = new GridView();
gridView.Appearance.Row.Options.UseFont = true;
gridView.Appearance.Row.Options.UseTextOptions = true;
gridView.Appearance.HeaderPanel.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near;
gridView.Appearance.Row.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near;
gridControl.MainView = gridView;
gridControl.Dock = DockStyle.Fill;
gridControl.DataSource = data;
panelControl4.Controls.Add(gridControl);
}
catch (Exception ex)
{
PublicClass.WriteErrorLog(this.Text, "高危筛查总量统计:\r\n" + ex);
}
}
private void simpleButton10_Click(object sender, EventArgs e)
{
try
{
chartControl1.Series.Clear();
panelControl4.Controls.Clear();
string startTime = timeControl_StratTime.TimeValue;
string endTime = timeControl_EndTime.TimeValue;
string Url = string.Format("/api/service/T_Service_FirstAid_ApoplexyHighRiskScreening/GetWorkloadStatistics?startTime={0}&endTime={1}", startTime, endTime);
DataTable BindDT = DBHelpClass.Get(Url);
DataTable data = new DataTable("table1");
data.Columns.Add("科室", typeof(string));
data.Columns.Add("人数", typeof(int));
if (BindDT != null)
{
var a = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss").Remove(7, 12);
var query = from t in BindDT.AsEnumerable()
group t by new { t1 = t.Field<string>("ShareUserDepartment") } into m
orderby m.Key.t1 descending
select new
{
name = m.Key.t1,
count = m.Count()
};
foreach (var item in query.ToList())
{
data.Rows.Add(item.name, item.count);
}
}
Series series = new Series("高危筛查科室统计", ViewType.Bar);
foreach (DataRow item in data.Rows)
{
series.Points.Add(new SeriesPoint(item[0] + "", item[1] + ""));
}
BarSeriesView bsv = (BarSeriesView)series.View;
bsv.BarWidth = 0.25;
chartControl1.Series.AddRange(new Series[] { series });
chartControl1.Titles[0].Text = "高危筛查科室统计";
GridControl gridControl = new GridControl();
GridView gridView = new GridView();
gridView.Appearance.Row.Options.UseFont = true;
gridView.Appearance.Row.Options.UseTextOptions = true;
gridView.Appearance.HeaderPanel.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near;
gridView.Appearance.Row.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near;
gridControl.MainView = gridView;
gridControl.Dock = DockStyle.Fill;
gridControl.DataSource = data;
panelControl4.Controls.Add(gridControl);
}
catch (Exception ex)
{
PublicClass.WriteErrorLog(this.Text, "高危筛查科室统计:\r\n" + ex);
}
}
private void simpleButton9_Click(object sender, EventArgs e)
{
try
{
chartControl1.Series.Clear();
panelControl4.Controls.Clear();
string startTime = timeControl_StratTime.TimeValue;
string endTime = timeControl_EndTime.TimeValue;
string Url = string.Format("/api/service/T_Service_FirstAid_ApoplexyHighRiskScreening/GetWorkloadStatistics?startTime={0}&endTime={1}", startTime, endTime);
DataTable BindDT = DBHelpClass.Get(Url);
DataTable data = new DataTable("table1");
data.Columns.Add("人员", typeof(string));
data.Columns.Add("人数", typeof(int));
if (BindDT != null)
{
var a = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss").Remove(7, 12);
var query = from t in BindDT.AsEnumerable()
group t by new { t1 = t.Field<string>("ShareUserName") } into m
orderby m.Key.t1 descending
select new
{
name = m.Key.t1,
count = m.Count()
};
foreach (var item in query.ToList())
{
data.Rows.Add(item.name, item.count);
}
}
Series series = new Series("高危筛查人员统计", ViewType.Bar);
foreach (DataRow item in data.Rows)
{
series.Points.Add(new SeriesPoint(item[0] + "", item[1]));
}
BarSeriesView bsv = (BarSeriesView)series.View;
bsv.BarWidth = 0.25;
chartControl1.Series.AddRange(new Series[] { series });
chartControl1.Titles[0].Text = "高危筛查人员统计";
GridControl gridControl = new GridControl();
GridView gridView = new GridView();
gridView.Appearance.Row.Options.UseFont = true;
gridView.Appearance.Row.Options.UseTextOptions = true;
gridView.Appearance.HeaderPanel.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near;
gridView.Appearance.Row.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near;
gridControl.MainView = gridView;
gridControl.Dock = DockStyle.Fill;
gridControl.DataSource = data;
panelControl4.Controls.Add(gridControl);
}
catch (Exception ex)
{
PublicClass.WriteErrorLog(this.Text, "高危筛查人员统计:\r\n" + ex);
}
}
private void simpleButton_Print_Click(object sender, EventArgs e)
{
chartControl1.Dock = DockStyle.None;
chartControl1.Width = 1000;
PrintChart printClass = new PrintChart(chartControl1);
printClass.LandScape = true;
printClass.PaperKind = PaperKind.A4;
printClass.PrintHeader = "高危筛查统计图形";
printClass.LoadPageSetting(60);
printClass.Preview();
chartControl1.Dock = DockStyle.Fill;
}
private void simpleButton3_Click(object sender, EventArgs e)
{
PrintChart printClass = new PrintChart((GridControl)panelControl4.Controls[0]);
printClass.LandScape = true;
printClass.PaperKind = PaperKind.A4;
printClass.PrintHeader = "高危筛查统计数据";
printClass.LoadPageSetting(60);
printClass.Preview();
}
}
}