StableVersion4.3/HL_FristAidPlatform_Apoplexy/Statistics/Form_CIEarlyRehabilitation.cs

405 lines
17 KiB
C#
Raw Permalink 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_Apoplexy
{
public partial class Form_CIEarlyRehabilitation : XtraForm
{
public int flag;
public int totalNumber;
public int pageSize = 5;
public int curPage = 1;
DateTime dt = DateTime.Now;
public Form_CIEarlyRehabilitation()
{
InitializeComponent();
}
[Obsolete]
private void Form_SwallowingRate_Load(object sender, EventArgs e)
{
time_starTime.TimeValue = dt.AddMonths(-1).AddDays(1 - dt.Day).ToString();
time_endTime.TimeValue = dt.AddMonths(-1).AddDays(1 - dt.Day).AddMonths(1).AddDays(-1).ToString();
GetRateGroupsList();
GetPatientInfoList();
}
/// <summary>
/// 按月分组集合
/// </summary>
[Obsolete]
public void GetRateGroupsList()
{
string startTime = "";
string endTime = "";
if (!string.IsNullOrEmpty(time_starTime.TimeValue.ToString()))
startTime = Convert.ToDateTime(time_starTime.TimeValue).ToString("yyyy-MM-dd");
if (!string.IsNullOrEmpty(time_endTime.TimeValue.ToString()))
endTime = Convert.ToDateTime(time_endTime.TimeValue).ToString("yyyy-MM-dd");
chartControl1.Series.Clear();
Series series1 = new Series("康复治疗率", ViewType.Doughnut);
((PiePointOptions)series1.PointOptions).PercentOptions.ValueAsPercent = false;
((PiePointOptions)series1.PointOptions).ValueNumericOptions.Format = NumericFormat.Number;
chartControl2.Series.Clear();
chartControl2.Titles.Clear();
Series series2 = new Series("每月康复治疗率", ViewType.Bar);
ChartTitle chartTitle2 = new ChartTitle();
chartTitle2.Text = "";
chartControl2.Titles.Add(chartTitle2);
int max = 0;
DataDTO data = DBHelpClass.GetDateModel<DataDTO>(string.Format("api/service/T_Service_Apoplexy_PStatistics/GetRateGroupsList?hospitalGuid={0}&startTime={1}&endTime={2}&type={3}", Information.Hospital.GUID, startTime, endTime, 9));
if (data != null)
{
double one = 0.00;
double two = 0.00;
if (data.Total > 0)
{
lbl_Total.Text = data.Total.ToString() + "人";
lbl_Count.Text = data.Count.ToString() + "人";
lbl_Sum.Text = (data.Total - data.Count).ToString() + "人";
one = (double)data.Count;
two = (double)data.Total;
if (data.Total > 0 && data.Count > 0)
{ lbl_AllRate.Text = ((one / two) * 100).ToString("#0.00") + "%"; }
else { lbl_AllRate.Text = "0%"; }
string sum = (((two - one) / two) * 100).ToString("#0.00");
string sum1 = ((one / two) * 100).ToString("#0.00");
series1.Points.Add(new SeriesPoint("未做", sum));
series1.Points.Add(new SeriesPoint("已做", sum1));
series1.LegendPointOptions.PointView = PointView.ArgumentAndValues;
series1.LegendPointOptions.Pattern = "{A}: {VP:P2}";
series1.PointOptions.PointView = PointView.ArgumentAndValues;
series1.Label.TextPattern = "{A}: {VP:P2}";
chartControl1.Series.AddRange(new Series[] { series1 }); ;
}
else { lbl_AllRate.Text = "0%"; }
}
// if (data.DataList != null && data.DataList.Count > 0)
// {
// for (int i = 0; i < data.DataList.Count; i++)
// {
// max = data.DataList.Max(j => (int)j.Number) ;
// series2.Points.Add(new SeriesPoint(data.DataList[i].TimeDate, data.DataList[i].Number));
// }
// }
//}
//chartControl2.Series.AddRange(new Series[] { series2 });
//XYDiagram xyDia = chartControl2.Diagram as XYDiagram;
//xyDia.AxisX.DateTimeScaleOptions.ScaleMode = ScaleMode.Manual;
//xyDia.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Month;
//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 + tempone * 2;
//xyDia.AxisY.NumericScaleOptions.GridOffset = 0;
//xyDia.AxisY.NumericScaleOptions.GridSpacing = max / 5;
//((XYDiagram)(chartControl2.Diagram)).EnableAxisXScrolling = true;//启用横轴滚动条
}
/// <summary>
/// 患者列表信息
/// </summary>
public void GetPatientInfoList()
{
string startTime = "";
string endTime = "";
if (!string.IsNullOrEmpty(time_starTime.TimeValue.ToString()))
startTime = Convert.ToDateTime(time_starTime.TimeValue).ToString("yyyy-MM-dd");
if (!string.IsNullOrEmpty(time_endTime.TimeValue.ToString()))
endTime = Convert.ToDateTime(time_endTime.TimeValue).ToString("yyyy-MM-dd");
string url = string.Format("api/service/T_Service_Apoplexy_PStatistics/GetCIEarlyRehabilitationPatientList?hospitalGuid={0}&startTime={1}&endTime={2}&flag={3}&pageIndex={4}&pageSize={5}", Information.Hospital.GUID, startTime, endTime, flag, 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;
userControlForPage1.RefreshPager(pageSize, totalNumber, curPage);//更新分页控件显示
}
private void gridView1_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
if (e.Column.FieldName == "Gender")
{
string value = e.Value.ToString();
if (value == "1")
{
e.DisplayText = "男";
}
if (value == "2")
{
e.DisplayText = "女";
}
if (value == "0")
{
e.DisplayText = "未知";
}
}
if (e.Column.FieldName == "KFZLYN")
{
string value = e.Value.ToString();
if (value == "1")
{
e.DisplayText = "是";
}
if (value == "2")
{
e.DisplayText = "否";
}
}
if (e.Column.FieldName == "KFWays")
{
string value = e.Value.ToString();
string str = "";
if (!string.IsNullOrEmpty(value))
{
if (value.Contains("01"))
{
if (!string.IsNullOrEmpty(str)) { str += ";传统康复;"; } else { str += "传统康复"; }
}
if (value.Contains("02"))
{
if (!string.IsNullOrEmpty(str)) { str += ";运动疗法;"; } else { str += "运动疗法"; }
}
if (value.Contains("03"))
{
if (!string.IsNullOrEmpty(str)) { str += ";作业疗法;"; } else { str += "作业疗法"; }
}
if (value.Contains("04"))
{
if (!string.IsNullOrEmpty(str)) { str += ";言语训练;"; } else { str += "言语训练"; }
}
if (value.Contains("99"))
{
if (!string.IsNullOrEmpty(str)) { str += ";其他;"; } else { str += "其他"; }
}
}
e.DisplayText = str;
}
if (e.Column.FieldName == "KFPlace")
{
string value = e.Value.ToString();
string str = "";
if (!string.IsNullOrEmpty(value))
{
if (value.Contains("1"))
{
if (!string.IsNullOrEmpty(str)) { str += ";床旁;"; } else { str += "床旁"; }
}
if (value.Contains("2"))
{
if (!string.IsNullOrEmpty(str)) { str += ";康复科;"; } else { str += "康复科"; }
}
}
e.DisplayText = str;
}
if (e.Column.FieldName == "acZLType")
{
string value = e.Value.ToString();
string str = "";
if (!string.IsNullOrEmpty(value))
{
if (value.Contains("01"))
{
if (!string.IsNullOrEmpty(str))
{
str += ";静脉溶栓";
}
else
{
str += "静脉溶栓";
}
}
if (value.Contains("02"))
{
if (!string.IsNullOrEmpty(str))
{
str += ";血管内介入治疗";
}
else
{
str += "血管内介入治疗";
}
}
if (value.Contains("03"))
{
if (!string.IsNullOrEmpty(str))
{
str += ";脑出血";
}
else
{
str += "脑出血";
}
}
if (value.Contains("04"))
{
if (!string.IsNullOrEmpty(str))
{
str += ";颅内动脉瘤";
}
else
{
str += "颅内动脉瘤";
}
}
if (value.Contains("05"))
{
if (!string.IsNullOrEmpty(str))
{
str += ";CEA/CAS";
}
else
{
str += "CEA/CAS";
}
}
if (value.Contains("98"))
{
if (!string.IsNullOrEmpty(str))
{
str += ";保守治疗";
}
else
{
str += "保守治疗";
}
}
}
e.DisplayText = str;
}
}
private void lbl_wzkf_Click(object sender, EventArgs e)
{
flag = 0;
lbl_wzkf.BackColor = Color.FromArgb(25, 190, 107);
lbl_kf.BackColor = Color.FromArgb(128, 134, 149);
GetPatientInfoList();
}
private void lbl_kf_Click(object sender, EventArgs e)
{
flag = 1;
lbl_kf.BackColor = Color.FromArgb(25, 190, 107);
lbl_wzkf.BackColor = Color.FromArgb(128, 134, 149);
GetPatientInfoList();
}
private void userControlForPage1_myPagerEvents(int curPage, int pageSize)
{
userControlForPage1.myPagerEvents += MyPagerEvents;
}
private void MyPagerEvents(int curPage, int pageSize)
{
this.curPage = curPage;
this.pageSize = pageSize;
GetPatientInfoList();
}
#region 快捷查询按钮及按钮变色
private void sButton_LastMonth_Click(object sender, EventArgs e)
{
sButton_LastMonth.Appearance.BackColor = Color.FromArgb(43, 133, 228);
sButton_ThisMonth.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_ThisQuarter.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_ThisYear.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_Query.Appearance.BackColor = Color.FromArgb(114, 165, 231);
time_starTime.TimeValue = dt.AddMonths(-1).AddDays(1 - dt.Day).ToString();
time_endTime.TimeValue = dt.AddMonths(-1).AddDays(1 - dt.Day).AddMonths(1).AddDays(-1).ToString();
GetRateGroupsList();
GetPatientInfoList();
}
private void sButton_ThisMonth_Click(object sender, EventArgs e)
{
sButton_ThisMonth.Appearance.BackColor = Color.FromArgb(43, 133, 228);
sButton_LastMonth.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_ThisQuarter.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_ThisYear.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_Query.Appearance.BackColor = Color.FromArgb(114, 165, 231);
time_starTime.TimeValue = dt.AddDays(1 - dt.Day).ToString();
time_endTime.TimeValue = dt.AddDays(1 - dt.Day).AddMonths(1).AddDays(-1).ToString();
GetRateGroupsList();
GetPatientInfoList();
}
private void sButton_ThisQuarter_Click(object sender, EventArgs e)
{
sButton_ThisQuarter.Appearance.BackColor = Color.FromArgb(43, 133, 228);
sButton_ThisMonth.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_LastMonth.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_ThisYear.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_Query.Appearance.BackColor = Color.FromArgb(114, 165, 231);
time_starTime.TimeValue = dt.AddMonths(-2).AddDays(1 - dt.Day).ToString();
time_endTime.TimeValue = dt.AddDays(1 - dt.Day).AddMonths(1).AddDays(-1).ToString();
GetRateGroupsList();
GetPatientInfoList();
}
private void sButton_ThisYear_Click(object sender, EventArgs e)
{
sButton_ThisYear.Appearance.BackColor = Color.FromArgb(43, 133, 228);
sButton_ThisMonth.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_ThisQuarter.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_LastMonth.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_Query.Appearance.BackColor = Color.FromArgb(114, 165, 231);
time_starTime.TimeValue = dt.AddMonths(-11).AddDays(1 - dt.Day).ToString();
time_endTime.TimeValue = dt.AddDays(1 - dt.Day).AddMonths(1).AddDays(-1).ToString();
GetRateGroupsList();
GetPatientInfoList();
}
private void sButton_Query_Click(object sender, EventArgs e)
{
sButton_Query.Appearance.BackColor = Color.FromArgb(43, 133, 228);
sButton_ThisMonth.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_ThisQuarter.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_ThisYear.Appearance.BackColor = Color.FromArgb(114, 165, 231);
sButton_LastMonth.Appearance.BackColor = Color.FromArgb(114, 165, 231);
GetRateGroupsList();
GetPatientInfoList();
}
#endregion
private void gridView1_CustomDrawRowIndicator(object sender, DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e)
{
if (e.Info.IsRowIndicator && e.RowHandle >= 0)
e.Info.DisplayText = (e.RowHandle + 1).ToString();
}
}
}