StableVersion4.3/HL_FristAidPlatform_Trauma/Form_IntegrityStatisics.cs

173 lines
6.9 KiB
C#
Raw Normal View History

2024-03-11 09:47:34 +08:00
using DevExpress.XtraCharts;
using DevExpress.XtraEditors;
using HL_FristAidPlatform_DTO;
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;
namespace HL_FristAidPlatform_Trauma
{
public partial class Form_IntegrityStatisics : XtraForm
{
private int curPage = 1;
private int type = 0;
/// <summary>
/// 每页大小
/// </summary>
private int pageSize = 100;
/// <summary>
/// 所有记录条数
/// </summary>
private int totalNumber = 0;
public Form_IntegrityStatisics()
{
InitializeComponent();
}
public void GetIntegrityStatisics()
{
string starTime = time_starTime.TimeValue == null ? "" : time_starTime.TimeValue.ToString();
string endTime = time_endTime.TimeValue == null ? "" : time_endTime.TimeValue.ToString();
IntegrityStatisicsDTO model = DBHelpClass.GetDateModel<IntegrityStatisicsDTO>(string.Format("api/service/T_Service_Trauma_MassiveDataStatistics/GetIntegrityStatisics?hospitalGuid={0}&starTime={1}&endTime={2}", Information.Hospital.GUID, starTime, endTime));
if (model != null)
{
lbl_highIntegrityTotal.Text = model.HighIntegrity.ToString();
lbl_middleIntegrityTotal.Text = model.MiddleIntegrity.ToString();
lbl_lowIntegrityTotal.Text = model.LowIntegrity.ToString();
chartControl1.Series.Clear();
chartControl1.Titles.Clear();
Series series = new Series("占比统计", ViewType.Pie);
series.Points.Add(new SeriesPoint("完整度≥90%", model.HighIntegrity));
series.Points.Add(new SeriesPoint("完整度≥50%~<90%", model.MiddleIntegrity));
series.Points.Add(new SeriesPoint("完整度≤50%", model.LowIntegrity));
ChartTitle chartTitle1 = new ChartTitle();
chartTitle1.Text = "填报完整度占比统计";
chartControl1.Titles.Add(chartTitle1);
series.Label.TextPattern = "{A}: {VP:p0}";
((PieSeriesLabel)series.Label).Position = PieSeriesLabelPosition.TwoColumns;
((PieSeriesLabel)series.Label).ResolveOverlappingMode = ResolveOverlappingMode.Default;
chartControl1.Series.AddRange(series);
}
}
public void GetIntegrityList()
{
string starTime = time_starTime.TimeValue == null ? "" : time_starTime.TimeValue.ToString();
string endTime = time_endTime.TimeValue == null ? "" :time_endTime.TimeValue.ToString();
string Url = string.Format("api/service/T_Service_TraumaPatient/GetIntegrityStatisicsList?hospitalGuid={0}&starTime={1}&endTime={2}&type={3}&pageIndex={4}&pageSize={5}", Information.Hospital.GUID, starTime, endTime, type, curPage, pageSize);
DataTable dt = DBHelpClass.Get(Url);
gridControl1.DataSource = dt;
gridView1.Appearance.EvenRow.BackColor = Color.FromArgb(245, 245, 245);
gridView1.Appearance.OddRow.BackColor = Color.FromArgb(255, 255, 255);
gridView1.OptionsView.EnableAppearanceEvenRow = true;
gridView1.OptionsView.EnableAppearanceOddRow = true;
totalNumber = DBHelpClass.TotalNumber;
userControlForPage.RefreshPager(pageSize, totalNumber, curPage);//更新分页控件显示。
}
private void simpleButton2_Click(object sender, EventArgs e)
{
GetIntegrityStatisics();
GetIntegrityList();
}
private void Form_IntegrityStatisics_Load(object sender, EventArgs e)
{
time_starTime.TimeValue = DateTime.Now.AddMonths(-11).ToString();
time_endTime.TimeValue = DateTime.Now.ToString();
GetIntegrityStatisics();
GetIntegrityList();
}
private void lbl_highIntegrity_Click(object sender, EventArgs e)
{
lbl_highIntegrity.BackColor = Color.FromArgb(0, 96, 250);
lbl_middleIntegrity.BackColor = Color.FromArgb(224, 224, 224);
lbl_lowIntegrity.BackColor = Color.FromArgb(224, 224, 224);
type = 0;
GetIntegrityList();
}
private void lbl_middleIntegrity_Click(object sender, EventArgs e)
{
lbl_middleIntegrity.BackColor = Color.FromArgb(0, 96, 250);
lbl_highIntegrity.BackColor = Color.FromArgb(224, 224, 224);
lbl_lowIntegrity.BackColor = Color.FromArgb(224, 224, 224);
type = 1;
GetIntegrityList();
}
private void lbl_lowIntegrity_Click(object sender, EventArgs e)
{
lbl_lowIntegrity.BackColor = Color.FromArgb(0, 96, 250);
lbl_middleIntegrity.BackColor = Color.FromArgb(224, 224, 224);
lbl_highIntegrity.BackColor = Color.FromArgb(224, 224, 224);
type = 2;
GetIntegrityList();
}
private void gridView1_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
if (e.Column.FieldName == "Gender")
{
int value = PublicClass.ToInt32(e.Value, -1);
switch (value)
{
case 0:
e.DisplayText = "未知";
break;
case 1:
e.DisplayText = "男";
break;
case 2:
e.DisplayText = "女";
break;
}
}
}
private void userControlForPage_myPagerEvents(int curPage, int pageSize)
{
this.curPage = curPage;
this.pageSize = pageSize;
GetIntegrityList();
}
private void simpleButton5_Click(object sender, EventArgs e)
{
time_starTime.TimeValue = DateTime.Now.AddMonths(-2).ToString();
time_endTime.TimeValue = DateTime.Now.ToString();
GetIntegrityStatisics();
GetIntegrityList();
}
private void simpleButton1_Click(object sender, EventArgs e)
{
time_starTime.TimeValue = DateTime.Now.AddMonths(-5).ToString();
time_endTime.TimeValue = DateTime.Now.ToString();
GetIntegrityStatisics();
GetIntegrityList();
}
private void simpleButton4_Click(object sender, EventArgs e)
{
time_starTime.TimeValue = DateTime.Now.AddMonths(-11).ToString();
time_endTime.TimeValue = DateTime.Now.ToString();
GetIntegrityStatisics();
GetIntegrityList();
}
}
}