876 lines
37 KiB
C#
876 lines
37 KiB
C#
using DevExpress.Utils;
|
|
using DevExpress.Utils.Layout;
|
|
using DevExpress.XtraEditors;
|
|
using HL_FristAidPlatform_Apoplexy.Properties;
|
|
using HL_FristAidPlatform_DTO;
|
|
using HL_FristAidPlatform_Public;
|
|
using Newtonsoft.Json;
|
|
using Newtonsoft.Json.Linq;
|
|
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_PatientTimeAxis : XtraForm
|
|
{
|
|
|
|
public string PatientGUID = "";
|
|
|
|
public TablePanel tab;
|
|
|
|
|
|
public Form_PatientTimeAxis(string _PatientGUID = "")
|
|
{
|
|
InitializeComponent();
|
|
PatientGUID = _PatientGUID;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 创建动态表格
|
|
/// </summary>
|
|
/// <param name="total">数据条数</param>
|
|
/// <param name="dt">数据</param>
|
|
public void CreateTabPanel(List<ApoplexyKeyValueNumDTO> list)
|
|
{
|
|
panel_time.Controls.Clear();
|
|
int rowCount = 3;//行数
|
|
if (list.Count() > 7)
|
|
rowCount = 6;
|
|
if (list.Count() > 14)
|
|
rowCount = 9;
|
|
if (list.Count() > 21)
|
|
rowCount = 12;
|
|
tab = new TablePanel();
|
|
tab.Columns.Clear();
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 10));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 25));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 25));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 25));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 25));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 25));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 25));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 10));
|
|
tab.Rows.Clear();
|
|
|
|
for (int i = 0; i < rowCount; i++)
|
|
{
|
|
if (i == 2 || i == 5 || i == 11)
|
|
{
|
|
tab.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 30));
|
|
}
|
|
else if (i == 8)
|
|
{
|
|
tab.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
}
|
|
else
|
|
{
|
|
tab.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 10));
|
|
}
|
|
}
|
|
tab.Dock = DockStyle.Fill;
|
|
tab.AutoSize = true;
|
|
|
|
int DataColindex = 0;
|
|
int NotDataColindex = 0;
|
|
for (int i = 0; i < list.Count; i++)//循环数据
|
|
{
|
|
DataColindex = 1 + 2 * i;//数据列
|
|
NotDataColindex = 1 + 2 * i + 1;//非数据列
|
|
|
|
int NameRowindex = 0;
|
|
int ImageRowindex = 1;
|
|
int DataRowindex = 2;
|
|
if (i / 7 == 1)
|
|
{
|
|
DataColindex = 2 * i - 1 - (i - 7) * 4;//数据列
|
|
NotDataColindex = 2 * i - 1 - (i - 7) * 4;//非数据列
|
|
NameRowindex = 3;
|
|
ImageRowindex = 4;
|
|
DataRowindex = 5;
|
|
}
|
|
if (i / 7 == 2)
|
|
{
|
|
DataColindex = 1 + 2 * (i - 14);//数据列
|
|
NotDataColindex = 1 + 2 * (i - 14) + 1;//非数据列
|
|
NameRowindex = 6;
|
|
ImageRowindex = 7;
|
|
DataRowindex = 8;
|
|
}
|
|
if (i / 7 == 3)
|
|
{
|
|
DataColindex = 2 * i - 1 - (i - 14) * 4;//数据列
|
|
NotDataColindex = 2 * i - 1 - (i - 14) * 4;//非数据列
|
|
NameRowindex = 9;
|
|
ImageRowindex = 10;
|
|
DataRowindex = 11;
|
|
}
|
|
|
|
|
|
LabelControl key = new LabelControl();
|
|
key.Dock = DockStyle.Fill;
|
|
key.Appearance.TextOptions.HAlignment = HorzAlignment.Center;
|
|
key.AutoSizeMode = LabelAutoSizeMode.None;
|
|
key.ForeColor = Color.FromArgb(0, 9, 64, 58);
|
|
|
|
key.Text = list[i].Key;
|
|
|
|
PanelControl panel = new PanelControl();
|
|
panel.Dock = DockStyle.Fill;
|
|
panel.BorderStyle = (DevExpress.XtraEditors.Controls.BorderStyles)BorderStyle.None;
|
|
panel.Margin = new Padding(0, 0, 0, 0);
|
|
panel.Padding = new Padding(0, 0, 0, 0);
|
|
|
|
LabelControl timeValue = new LabelControl();
|
|
timeValue.Dock = DockStyle.Top;
|
|
timeValue.Appearance.TextOptions.HAlignment = HorzAlignment.Center;
|
|
timeValue.AutoSizeMode = LabelAutoSizeMode.None;
|
|
if (!string.IsNullOrEmpty(list[i].Value))
|
|
{
|
|
timeValue.Text = list[i].Value;
|
|
timeValue.ForeColor = Color.FromArgb(48, 49, 51);
|
|
}
|
|
else
|
|
{
|
|
timeValue.Text = "暂无时间信息";
|
|
timeValue.ForeColor = Color.FromArgb(144, 147, 153);
|
|
}
|
|
LabelControl lblnamevalue1 = new LabelControl();
|
|
lblnamevalue1.Dock = DockStyle.Top;
|
|
lblnamevalue1.Appearance.TextOptions.HAlignment = HorzAlignment.Center;
|
|
lblnamevalue1.AutoSizeMode = LabelAutoSizeMode.None;
|
|
lblnamevalue1.Text = "";
|
|
|
|
if (list[i].Number == 3)
|
|
{
|
|
lblnamevalue1.Text = "呼救到出车时间";
|
|
}
|
|
if (list[i].Number == 5)
|
|
{
|
|
lblnamevalue1.Text = "到达到离开时间";
|
|
}
|
|
if (list[i].Number == 6)
|
|
{
|
|
lblnamevalue1.Text = "呼救到到院时间";
|
|
}
|
|
if (list[i].Number == 8)
|
|
{
|
|
lblnamevalue1.Text = "到达急诊到接诊时间";
|
|
}
|
|
|
|
if (list[i].Number == 12)
|
|
{
|
|
lblnamevalue1.Text = "采血到报告时间";
|
|
}
|
|
if (list[i].Number == 14)
|
|
{
|
|
lblnamevalue1.Text = "到院到CT完成时间";
|
|
}
|
|
if (list[i].Number == 17)
|
|
{
|
|
lblnamevalue1.Text = "发病到静脉溶栓时间";
|
|
}
|
|
if (list[i].Number == 20)
|
|
{
|
|
lblnamevalue1.Text = "发病到穿刺完成时间";
|
|
}
|
|
if (list[i].Number == 21)
|
|
{
|
|
lblnamevalue1.Text = "到院到血管再通时间";
|
|
}
|
|
|
|
lblnamevalue1.ForeColor = Color.FromArgb(48, 49, 51);
|
|
|
|
|
|
LabelControl indicatorRequirementValue1 = new LabelControl();
|
|
indicatorRequirementValue1.Dock = DockStyle.Top;
|
|
indicatorRequirementValue1.Appearance.TextOptions.HAlignment = HorzAlignment.Center;
|
|
indicatorRequirementValue1.AutoSizeMode = LabelAutoSizeMode.None;
|
|
|
|
if (!string.IsNullOrEmpty(list[i].IndicatorRequirement1))
|
|
{
|
|
if (list[i].IndicatorRequirement1 != "0")
|
|
{
|
|
indicatorRequirementValue1.Text = "指标要求: " + list[i].IndicatorRequirement1 + "分钟";
|
|
}
|
|
else
|
|
{
|
|
indicatorRequirementValue1.Text = "指标要求: " + "无";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
indicatorRequirementValue1.Text = "";
|
|
}
|
|
indicatorRequirementValue1.ForeColor = Color.FromArgb(48, 49, 51);
|
|
|
|
LabelControl IntervalValue1 = new LabelControl();
|
|
IntervalValue1.Dock = DockStyle.Top;
|
|
IntervalValue1.Appearance.TextOptions.HAlignment = HorzAlignment.Center;
|
|
IntervalValue1.AutoSizeMode = LabelAutoSizeMode.None;
|
|
|
|
if (!string.IsNullOrEmpty(list[i].Interval1))
|
|
{
|
|
if (list[i].Interval1 != "-99")
|
|
{
|
|
IntervalValue1.Text = "实际时长: " + list[i].Interval1 + "分钟";
|
|
}
|
|
else
|
|
{
|
|
IntervalValue1.Text = "实际时长: " + "无法计算";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
IntervalValue1.Text = "";
|
|
}
|
|
IntervalValue1.ForeColor = Color.FromArgb(48, 49, 51);
|
|
|
|
|
|
|
|
|
|
|
|
LabelControl lblnamevalue2 = new LabelControl();
|
|
lblnamevalue2.Dock = DockStyle.Top;
|
|
lblnamevalue2.Appearance.TextOptions.HAlignment = HorzAlignment.Center;
|
|
lblnamevalue2.AutoSizeMode = LabelAutoSizeMode.None;
|
|
lblnamevalue2.Text = "";
|
|
|
|
if (list[i].Number == 17)
|
|
{
|
|
lblnamevalue2.Text = "到院到静脉溶栓时间";
|
|
}
|
|
if (list[i].Number == 20)
|
|
{
|
|
lblnamevalue2.Text = "到院到穿刺完成时间";
|
|
}
|
|
if (list[i].Number == 21)
|
|
{
|
|
lblnamevalue2.Text = "穿刺完成到血管再通时间";
|
|
}
|
|
lblnamevalue2.ForeColor = Color.FromArgb(48, 49, 51);
|
|
|
|
|
|
LabelControl indicatorRequirementValue2 = new LabelControl();
|
|
indicatorRequirementValue2.Dock = DockStyle.Top;
|
|
indicatorRequirementValue2.Appearance.TextOptions.HAlignment = HorzAlignment.Center;
|
|
indicatorRequirementValue2.AutoSizeMode = LabelAutoSizeMode.None;
|
|
|
|
if (!string.IsNullOrEmpty(list[i].IndicatorRequirement2))
|
|
{
|
|
if (list[i].IndicatorRequirement2 != "0")
|
|
{
|
|
indicatorRequirementValue2.Text = "指标要求: " + list[i].IndicatorRequirement2 + "分钟";
|
|
}
|
|
else
|
|
{
|
|
indicatorRequirementValue2.Text = "指标要求: " + "无";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
indicatorRequirementValue2.Text = "";
|
|
}
|
|
indicatorRequirementValue2.ForeColor = Color.FromArgb(48, 49, 51);
|
|
|
|
LabelControl IntervalValue2 = new LabelControl();
|
|
IntervalValue2.Dock = DockStyle.Top;
|
|
IntervalValue2.Appearance.TextOptions.HAlignment = HorzAlignment.Center;
|
|
IntervalValue2.AutoSizeMode = LabelAutoSizeMode.None;
|
|
|
|
if (!string.IsNullOrEmpty(list[i].Interval2))
|
|
{
|
|
if (list[i].Interval2 != "-99")
|
|
{
|
|
IntervalValue2.Text = "实际时长: " + list[i].Interval2 + "分钟";
|
|
}
|
|
else
|
|
{
|
|
IntervalValue2.Text = "实际时长: " + "无法计算";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
IntervalValue2.Text = "";
|
|
}
|
|
IntervalValue2.ForeColor = Color.FromArgb(48, 49, 51);
|
|
|
|
|
|
panel.Controls.AddRange(new Control[] { IntervalValue2, indicatorRequirementValue2, lblnamevalue2, IntervalValue1, indicatorRequirementValue1, lblnamevalue1, timeValue });
|
|
|
|
SeparatorControl line = new SeparatorControl();
|
|
//线条
|
|
line.LineColor = Color.FromArgb(92, 173, 255);
|
|
line.Dock = DockStyle.Fill;
|
|
line.LineOrientation = Orientation.Horizontal;
|
|
line.LineColor = Color.DarkBlue;
|
|
line.Margin = new Padding(0, 0, 0, 0);
|
|
line.Padding = new Padding(0, 0, 0, 0);
|
|
line.LineThickness = 2;
|
|
|
|
|
|
TablePanel tabImageBox = new TablePanel();
|
|
tabImageBox.Columns.Clear();
|
|
tabImageBox.Rows.Clear();
|
|
tabImageBox.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 40));
|
|
tabImageBox.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 20));
|
|
tabImageBox.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 40));
|
|
tabImageBox.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 100));
|
|
|
|
tabImageBox.Margin = new Padding(0, 0, 0, 0);
|
|
tabImageBox.Padding = new Padding(0, 0, 0, 0);
|
|
tabImageBox.Dock = DockStyle.Fill;
|
|
tabImageBox.AutoSize = true;
|
|
SeparatorControl lineLeft = new SeparatorControl();
|
|
//线条
|
|
lineLeft.LineColor = Color.FromArgb(92, 173, 255);
|
|
lineLeft.Dock = DockStyle.Fill;
|
|
lineLeft.LineOrientation = Orientation.Horizontal;
|
|
lineLeft.LineColor = Color.DarkBlue;
|
|
lineLeft.Margin = new Padding(0, 0, 0, 0);
|
|
lineLeft.Padding = new Padding(0, 0, 0, 0);
|
|
lineLeft.LineThickness = 2;
|
|
|
|
SeparatorControl lineRight = new SeparatorControl();
|
|
//线条
|
|
lineRight.LineColor = Color.FromArgb(92, 173, 255);
|
|
lineRight.Dock = DockStyle.Fill;
|
|
lineRight.LineOrientation = Orientation.Horizontal;
|
|
lineRight.LineColor = Color.DarkBlue;
|
|
lineRight.Margin = new Padding(0, 0, 0, 0);
|
|
lineRight.Padding = new Padding(0, 0, 0, 0);
|
|
lineRight.LineThickness = 2;
|
|
|
|
|
|
PictureBox drop1 = new PictureBox();
|
|
drop1.Dock = DockStyle.Fill;
|
|
drop1.SizeMode = PictureBoxSizeMode.Zoom;
|
|
drop1.Margin = new Padding(0, 0, 0, 0);
|
|
drop1.Tag = list[i].Value + ";" + list[i].Number;
|
|
drop1.Click += PanelClick;
|
|
|
|
if (!string.IsNullOrEmpty(list[i].Value))
|
|
{
|
|
drop1.Image = Resources.green;
|
|
|
|
}
|
|
else
|
|
{
|
|
drop1.Image = Resources.grey;
|
|
|
|
}
|
|
if ((!string.IsNullOrEmpty(list[i].Interval1) && !string.IsNullOrEmpty(list[i].IndicatorRequirement1)) || (!string.IsNullOrEmpty(list[i].Interval2) && !string.IsNullOrEmpty(list[i].IndicatorRequirement2)))
|
|
{
|
|
if ((!string.IsNullOrEmpty(list[i].Interval1) &&!(list[i].Interval1 == "-99")&&(!string.IsNullOrEmpty(list[i].IndicatorRequirement1) && !(list[i].IndicatorRequirement1 == "0") && (int.Parse(list[i].Interval1) > int.Parse(list[i].IndicatorRequirement1))) || (!string.IsNullOrEmpty(list[i].Interval2)&&!(list[i].Interval2 == "-99") && (!string.IsNullOrEmpty(list[i].IndicatorRequirement2) && !(list[i].IndicatorRequirement2 == "0") && (int.Parse(list[i].Interval2) > int.Parse(list[i].IndicatorRequirement2))))))
|
|
{
|
|
drop1.Image = Resources.red;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
tabImageBox.SetCell(lineLeft, 0, 0);
|
|
tabImageBox.SetCell(drop1, 0, 1);
|
|
tabImageBox.SetCell(lineRight, 0, 2);
|
|
|
|
tabImageBox.Controls.AddRange(new Control[] { lineLeft, drop1, lineRight });
|
|
|
|
|
|
|
|
if (i / 7 == 1 || i / 7 == 3)
|
|
{
|
|
tab.SetCell(line, ImageRowindex, DataColindex - 1);
|
|
tab.SetCell(key, NameRowindex, DataColindex);
|
|
tab.SetCell(drop1, ImageRowindex, DataColindex);
|
|
tab.SetCell(panel, DataRowindex, DataColindex);
|
|
|
|
if (i == list.Count() - 1)
|
|
{
|
|
tab.Controls.AddRange(new Control[] { key, drop1, panel });
|
|
}
|
|
else if (i == 13)
|
|
{
|
|
tab.Controls.AddRange(new Control[] { key, drop1, panel });
|
|
}
|
|
else
|
|
{
|
|
tab.Controls.AddRange(new Control[] { line, key, drop1, panel });
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
else
|
|
{
|
|
tab.SetCell(key, NameRowindex, DataColindex);
|
|
tab.SetCell(drop1, ImageRowindex, DataColindex);
|
|
tab.SetCell(panel, DataRowindex, DataColindex);
|
|
tab.SetCell(line, ImageRowindex, NotDataColindex);
|
|
|
|
if (i == list.Count() - 1)
|
|
{
|
|
tab.Controls.AddRange(new Control[] { key, drop1, panel });
|
|
}
|
|
else if (i == 6 || i == 20)
|
|
{
|
|
tab.Controls.AddRange(new Control[] { key, drop1, panel });
|
|
}
|
|
else
|
|
{
|
|
tab.Controls.AddRange(new Control[] { key, drop1, panel, line });
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
|
|
if (list.Count() > 7)
|
|
{
|
|
//右上
|
|
TablePanel tab1 = new TablePanel();
|
|
|
|
tab1.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Margin = new Padding(0, 0, 0, 0);
|
|
tab1.Padding = new Padding(0, 0, 0, 0);
|
|
tab1.Dock = DockStyle.Fill;
|
|
tab1.AutoSize = true;
|
|
SeparatorControl line1 = new SeparatorControl();
|
|
//线条
|
|
line1.LineColor = Color.FromArgb(92, 173, 255);
|
|
line1.Dock = DockStyle.Fill;
|
|
line1.LineOrientation = Orientation.Horizontal;
|
|
line1.LineColor = Color.DarkBlue;
|
|
line1.LineAlignment = Alignment.Far;
|
|
line1.Margin = new Padding(0, 0, 0, 0);
|
|
line1.Padding = new Padding(0, 10, 0, 0);
|
|
line1.LineThickness = 2;
|
|
|
|
SeparatorControl line2 = new SeparatorControl();
|
|
//线条
|
|
line2.LineColor = Color.FromArgb(92, 173, 255);
|
|
line2.Dock = DockStyle.Fill;
|
|
line2.LineOrientation = Orientation.Vertical;
|
|
line2.LineColor = Color.DarkBlue;
|
|
line2.LineAlignment = Alignment.Far;
|
|
line2.Margin = new Padding(0, 0, 0, 0);
|
|
line2.Padding = new Padding(0, 0, 0, 0);
|
|
line2.LineThickness = 2;
|
|
|
|
tab1.SetCell(line1, 0, 0);
|
|
tab1.SetCell(line2, 1, 0);
|
|
|
|
tab1.Controls.AddRange(new Control[] { line1, line2 });
|
|
|
|
//右下
|
|
TablePanel tab2 = new TablePanel();
|
|
|
|
tab2.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Margin = new Padding(0, 0, 0, 0);
|
|
tab2.Padding = new Padding(0, 0, 0, 0);
|
|
tab2.Dock = DockStyle.Fill;
|
|
tab2.AutoSize = true;
|
|
SeparatorControl line3 = new SeparatorControl();
|
|
//线条
|
|
line3.LineColor = Color.FromArgb(92, 173, 255);
|
|
line3.Dock = DockStyle.Fill;
|
|
line3.LineOrientation = Orientation.Vertical;
|
|
line3.LineColor = Color.DarkBlue;
|
|
line3.LineAlignment = Alignment.Far;
|
|
line3.Margin = new Padding(0, 0, 0, 0);
|
|
line3.Padding = new Padding(0, 0, 0, 0);
|
|
line3.LineThickness = 2;
|
|
|
|
SeparatorControl line4 = new SeparatorControl();
|
|
//线条
|
|
line4.LineColor = Color.FromArgb(92, 173, 255);
|
|
line4.Dock = DockStyle.Fill;
|
|
line4.LineOrientation = Orientation.Horizontal;
|
|
line4.LineColor = Color.DarkBlue;
|
|
line4.LineAlignment = Alignment.Near;
|
|
line4.Margin = new Padding(0, 0, 0, 0);
|
|
line4.Padding = new Padding(0, 0, 0, 0);
|
|
line4.LineThickness = 2;
|
|
|
|
tab2.SetCell(line3, 0, 0);
|
|
tab2.SetCell(line4, 1, 0);
|
|
|
|
tab2.Controls.AddRange(new Control[] { line3, line4 });
|
|
|
|
SeparatorControl SEtraLineRight1 = new SeparatorControl();
|
|
//竖线条
|
|
SEtraLineRight1.LineColor = Color.FromArgb(92, 173, 255);
|
|
SEtraLineRight1.Dock = DockStyle.Fill;
|
|
SEtraLineRight1.LineOrientation = Orientation.Vertical;
|
|
SEtraLineRight1.LineColor = Color.DarkBlue;
|
|
SEtraLineRight1.LineAlignment = Alignment.Center;
|
|
SEtraLineRight1.Margin = new Padding(0, 0, 0, 0);
|
|
SEtraLineRight1.Padding = new Padding(0, 0, 2, 0);
|
|
SEtraLineRight1.LineThickness = 2;
|
|
|
|
SeparatorControl SEtraLineRight2 = new SeparatorControl();
|
|
//竖线条
|
|
SEtraLineRight2.LineColor = Color.FromArgb(92, 173, 255);
|
|
SEtraLineRight2.Dock = DockStyle.Fill;
|
|
SEtraLineRight2.LineOrientation = Orientation.Vertical;
|
|
SEtraLineRight2.LineColor = Color.DarkBlue;
|
|
SEtraLineRight2.LineAlignment = Alignment.Center;
|
|
SEtraLineRight2.Margin = new Padding(0, 0, 0, 0);
|
|
SEtraLineRight2.Padding = new Padding(0, 0, 2, 0);
|
|
SEtraLineRight2.LineThickness = 2;
|
|
|
|
|
|
tab.SetCell(tab1, 1, 14);
|
|
tab.SetCell(SEtraLineRight1, 2, 14);
|
|
tab.SetCell(SEtraLineRight2, 3, 14);
|
|
tab.SetCell(tab2, 4, 14);
|
|
tab.Controls.AddRange(new Control[] { SEtraLineRight1, SEtraLineRight2, tab1, tab2 });
|
|
}
|
|
if (list.Count() > 14)
|
|
{
|
|
//左上
|
|
TablePanel tab1 = new TablePanel();
|
|
|
|
tab1.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Margin = new Padding(0, 0, 0, 0);
|
|
tab1.Padding = new Padding(0, 0, 0, 0);
|
|
tab1.Dock = DockStyle.Fill;
|
|
tab1.AutoSize = true;
|
|
SeparatorControl line1 = new SeparatorControl();
|
|
//线条
|
|
line1.LineColor = Color.FromArgb(92, 173, 255);
|
|
line1.Dock = DockStyle.Fill;
|
|
line1.LineOrientation = Orientation.Horizontal;
|
|
line1.LineColor = Color.DarkBlue;
|
|
line1.LineAlignment = Alignment.Far;
|
|
line1.Margin = new Padding(0, 0, 0, 0);
|
|
line1.Padding = new Padding(0, 0, 0, 0);
|
|
line1.LineThickness = 2;
|
|
|
|
SeparatorControl line2 = new SeparatorControl();
|
|
//线条
|
|
line2.LineColor = Color.FromArgb(92, 173, 255);
|
|
line2.Dock = DockStyle.Fill;
|
|
line2.LineOrientation = Orientation.Vertical;
|
|
line2.LineColor = Color.DarkBlue;
|
|
line2.LineAlignment = Alignment.Near;
|
|
line2.Margin = new Padding(0, 0, 0, 0);
|
|
line2.Padding = new Padding(0, 0, 0, 0);
|
|
line2.LineThickness = 2;
|
|
|
|
tab1.SetCell(line1, 0, 1);
|
|
tab1.SetCell(line2, 1, 1);
|
|
|
|
tab1.Controls.AddRange(new Control[] { line1, line2 });
|
|
|
|
//左下
|
|
TablePanel tab2 = new TablePanel();
|
|
|
|
tab2.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Margin = new Padding(0, 0, 0, 0);
|
|
tab2.Padding = new Padding(0, 0, 0, 0);
|
|
tab2.Dock = DockStyle.Fill;
|
|
tab2.AutoSize = true;
|
|
SeparatorControl line3 = new SeparatorControl();
|
|
//线条
|
|
line3.LineColor = Color.FromArgb(92, 173, 255);
|
|
line3.Dock = DockStyle.Fill;
|
|
line3.LineOrientation = Orientation.Vertical;
|
|
line3.LineColor = Color.DarkBlue;
|
|
line3.LineAlignment = Alignment.Near;
|
|
line3.Margin = new Padding(0, 0, 0, 0);
|
|
line3.Padding = new Padding(0, 0, 0, 0);
|
|
line3.LineThickness = 2;
|
|
|
|
SeparatorControl line4 = new SeparatorControl();
|
|
//线条
|
|
line4.LineColor = Color.FromArgb(92, 173, 255);
|
|
line4.Dock = DockStyle.Fill;
|
|
line4.LineOrientation = Orientation.Horizontal;
|
|
line4.LineColor = Color.DarkBlue;
|
|
line4.LineAlignment = Alignment.Near;
|
|
line4.Margin = new Padding(0, 0, 0, 0);
|
|
line4.Padding = new Padding(0, 0, 0, 0);
|
|
line4.LineThickness = 2;
|
|
|
|
tab2.SetCell(line3, 0, 1);
|
|
tab2.SetCell(line4, 1, 1);
|
|
|
|
tab2.Controls.AddRange(new Control[] { line3, line4 });
|
|
|
|
|
|
SeparatorControl SEtraLineRight3 = new SeparatorControl();
|
|
//竖线条
|
|
SEtraLineRight3.LineColor = Color.FromArgb(92, 173, 255);
|
|
SEtraLineRight3.Dock = DockStyle.Fill;
|
|
SEtraLineRight3.LineOrientation = Orientation.Vertical;
|
|
SEtraLineRight3.LineColor = Color.DarkBlue;
|
|
SEtraLineRight3.LineAlignment = Alignment.Center;
|
|
SEtraLineRight3.Margin = new Padding(0, 0, 0, 0);
|
|
SEtraLineRight3.Padding = new Padding(2, 0, 0, 0);
|
|
SEtraLineRight3.LineThickness = 2;
|
|
|
|
SeparatorControl SEtraLineRight4 = new SeparatorControl();
|
|
//竖线条
|
|
SEtraLineRight4.LineColor = Color.FromArgb(92, 173, 255);
|
|
SEtraLineRight4.Dock = DockStyle.Fill;
|
|
SEtraLineRight4.LineOrientation = Orientation.Vertical;
|
|
SEtraLineRight4.LineColor = Color.DarkBlue;
|
|
SEtraLineRight4.LineAlignment = Alignment.Center;
|
|
SEtraLineRight4.Margin = new Padding(0, 0, 0, 0);
|
|
SEtraLineRight4.Padding = new Padding(2, 0, 0, 0);
|
|
SEtraLineRight4.LineThickness = 2;
|
|
|
|
|
|
tab.SetCell(tab1, 4, 0);
|
|
tab.SetCell(SEtraLineRight3, 5, 0);
|
|
tab.SetCell(SEtraLineRight4, 6, 0);
|
|
tab.SetCell(tab2, 7, 0);
|
|
tab.Controls.AddRange(new Control[] { SEtraLineRight3, SEtraLineRight4, tab1, tab2 });
|
|
}
|
|
if (list.Count() > 21)
|
|
{
|
|
//右上
|
|
TablePanel tab1 = new TablePanel();
|
|
|
|
tab1.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab1.Margin = new Padding(0, 0, 0, 0);
|
|
tab1.Padding = new Padding(0, 0, 0, 0);
|
|
tab1.Dock = DockStyle.Fill;
|
|
tab1.AutoSize = true;
|
|
SeparatorControl line1 = new SeparatorControl();
|
|
//线条
|
|
line1.LineColor = Color.FromArgb(92, 173, 255);
|
|
line1.Dock = DockStyle.Fill;
|
|
line1.LineOrientation = Orientation.Horizontal;
|
|
line1.LineColor = Color.DarkBlue;
|
|
line1.LineAlignment = Alignment.Far;
|
|
line1.Margin = new Padding(0, 0, 0, 0);
|
|
line1.Padding = new Padding(0, 10, 0, 0);
|
|
line1.LineThickness = 2;
|
|
|
|
SeparatorControl line2 = new SeparatorControl();
|
|
//线条
|
|
line2.LineColor = Color.FromArgb(92, 173, 255);
|
|
line2.Dock = DockStyle.Fill;
|
|
line2.LineOrientation = Orientation.Vertical;
|
|
line2.LineColor = Color.DarkBlue;
|
|
line2.LineAlignment = Alignment.Far;
|
|
line2.Margin = new Padding(0, 0, 0, 0);
|
|
line2.Padding = new Padding(0, 0, 0, 0);
|
|
line2.LineThickness = 2;
|
|
|
|
tab1.SetCell(line1, 0, 0);
|
|
tab1.SetCell(line2, 1, 0);
|
|
|
|
tab1.Controls.AddRange(new Control[] { line1, line2 });
|
|
|
|
//右下
|
|
TablePanel tab2 = new TablePanel();
|
|
|
|
tab2.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Columns.Add(new TablePanelColumn(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Rows.Add(new TablePanelRow(TablePanelEntityStyle.Relative, 50));
|
|
tab2.Margin = new Padding(0, 0, 0, 0);
|
|
tab2.Padding = new Padding(0, 0, 0, 0);
|
|
tab2.Dock = DockStyle.Fill;
|
|
tab2.AutoSize = true;
|
|
SeparatorControl line3 = new SeparatorControl();
|
|
//线条
|
|
line3.LineColor = Color.FromArgb(92, 173, 255);
|
|
line3.Dock = DockStyle.Fill;
|
|
line3.LineOrientation = Orientation.Vertical;
|
|
line3.LineColor = Color.DarkBlue;
|
|
line3.LineAlignment = Alignment.Far;
|
|
line3.Margin = new Padding(0, 0, 0, 0);
|
|
line3.Padding = new Padding(0, 0, 0, 0);
|
|
line3.LineThickness = 2;
|
|
|
|
SeparatorControl line4 = new SeparatorControl();
|
|
//线条
|
|
line4.LineColor = Color.FromArgb(92, 173, 255);
|
|
line4.Dock = DockStyle.Fill;
|
|
line4.LineOrientation = Orientation.Horizontal;
|
|
line4.LineColor = Color.DarkBlue;
|
|
line4.LineAlignment = Alignment.Near;
|
|
line4.Margin = new Padding(0, 0, 0, 0);
|
|
line4.Padding = new Padding(0, 0, 0, 0);
|
|
line4.LineThickness = 2;
|
|
|
|
tab2.SetCell(line3, 0, 0);
|
|
tab2.SetCell(line4, 1, 0);
|
|
|
|
tab2.Controls.AddRange(new Control[] { line3, line4 });
|
|
|
|
SeparatorControl SEtraLineRight1 = new SeparatorControl();
|
|
//竖线条
|
|
SEtraLineRight1.LineColor = Color.FromArgb(92, 173, 255);
|
|
SEtraLineRight1.Dock = DockStyle.Fill;
|
|
SEtraLineRight1.LineOrientation = Orientation.Vertical;
|
|
SEtraLineRight1.LineColor = Color.DarkBlue;
|
|
SEtraLineRight1.LineAlignment = Alignment.Center;
|
|
SEtraLineRight1.Margin = new Padding(0, 0, 0, 0);
|
|
SEtraLineRight1.Padding = new Padding(0, 0, 2, 0);
|
|
SEtraLineRight1.LineThickness = 2;
|
|
|
|
SeparatorControl SEtraLineRight2 = new SeparatorControl();
|
|
//竖线条
|
|
SEtraLineRight2.LineColor = Color.FromArgb(92, 173, 255);
|
|
SEtraLineRight2.Dock = DockStyle.Fill;
|
|
SEtraLineRight2.LineOrientation = Orientation.Vertical;
|
|
SEtraLineRight2.LineColor = Color.DarkBlue;
|
|
SEtraLineRight2.LineAlignment = Alignment.Center;
|
|
SEtraLineRight2.Margin = new Padding(0, 0, 0, 0);
|
|
SEtraLineRight2.Padding = new Padding(0, 0, 2, 0);
|
|
SEtraLineRight2.LineThickness = 2;
|
|
|
|
|
|
tab.SetCell(tab1, 7, 14);
|
|
tab.SetCell(SEtraLineRight1, 8, 14);
|
|
tab.SetCell(SEtraLineRight2, 9, 14);
|
|
tab.SetCell(tab2, 10, 14);
|
|
tab.Controls.AddRange(new Control[] { SEtraLineRight1, SEtraLineRight2, tab1, tab2 });
|
|
|
|
//tab.SetCell(tab1, 7, 14);
|
|
//tab.SetCell(SEtraLineRight5, 8, 14);
|
|
//tab.SetCell(SEtraLineRight6, 9, 14);
|
|
//tab.SetCell(tab2, 10, 14);
|
|
//tab.Controls.AddRange(new Control[] { SEtraLineRight5, SEtraLineRight6, tab1, tab2 });
|
|
}
|
|
|
|
|
|
panel_time.Controls.Add(tab);
|
|
}
|
|
|
|
private void Form_PatientTimeAxis_Load(object sender, EventArgs e)
|
|
{
|
|
GetPatientTimeAxis();
|
|
}
|
|
|
|
public void GetPatientTimeAxis()
|
|
{
|
|
try
|
|
{
|
|
string url = string.Format("api/service/T_Service_Apoplexy_PatientsTimeAxis/GetApoplexyPatientTimeAixs?patientGuid={0}", PatientGUID);
|
|
List<ApoplexyKeyValueNumDTO> list = DBHelpClass.GetList<ApoplexyKeyValueNumDTO>(url);
|
|
if (list != null)
|
|
CreateTabPanel(list);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
throw ex;
|
|
}
|
|
}
|
|
|
|
private void PanelClick(object sender, EventArgs e)
|
|
{
|
|
string Tag = (string)((System.Windows.Forms.Control)sender).Tag;
|
|
|
|
string[] strArray = Tag.Split(';');
|
|
|
|
Form_PatientTimeAxisUpdate form = new Form_PatientTimeAxisUpdate(PatientGUID, strArray[0], strArray[1]);
|
|
form.Owner = this;
|
|
form.ShowDialog();
|
|
|
|
//if ()
|
|
//{
|
|
// Form_TaskDetailInfo from = new Form_TaskDetailInfo(guid, 1);
|
|
// from.Owner = this;
|
|
// from.Show();
|
|
//}
|
|
//else
|
|
//{
|
|
|
|
// XtraMessageBox.Show("不是正确的Guid格式");
|
|
//}
|
|
}
|
|
|
|
public void UpdatePatientTimeAixs(String TimeValue = "", int TimeNumber = 0)
|
|
{
|
|
try
|
|
{
|
|
UpdateApoplexyTimesDTO updateApoplexyTime = new UpdateApoplexyTimesDTO();
|
|
updateApoplexyTime.PatientGuid = PatientGUID;
|
|
updateApoplexyTime.TimeValue = TimeValue;
|
|
updateApoplexyTime.TimeNumber = TimeNumber;
|
|
|
|
List<UpdateApoplexyTimesDTO> updateApoplexyTimes = new List<UpdateApoplexyTimesDTO>();
|
|
|
|
string Url = string.Format("api/service/T_Service_Apoplexy_PatientsTimeAxis/UpdateApoplexyPatientTimeAixs");
|
|
|
|
ClientFactory<UpdateApoplexyTimesDTO> httpClient = new HttpClientFactory<UpdateApoplexyTimesDTO>();
|
|
Client<UpdateApoplexyTimesDTO> client = httpClient.VisitFactory();
|
|
|
|
updateApoplexyTimes.Add(updateApoplexyTime);
|
|
//访问
|
|
ListEntity<UpdateApoplexyTimesDTO> t = client.Post(Url, updateApoplexyTimes);
|
|
|
|
if (t.Success)
|
|
{
|
|
if (!string.IsNullOrEmpty(t.DataString))
|
|
{
|
|
if (t.DataString.Contains("Success"))
|
|
{
|
|
JObject jo = (JObject)JsonConvert.DeserializeObject(t.DataString);
|
|
string msg = jo["Msg"].ToString();
|
|
if (!string.IsNullOrEmpty(msg))
|
|
{
|
|
XtraMessageBox.Show(msg);
|
|
GetPatientTimeAxis();
|
|
}
|
|
}
|
|
else
|
|
{
|
|
string msg1 = t.DataString.Replace("/", "").Replace(@"\", "").Replace("\"", "");
|
|
XtraMessageBox.Show(msg1);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
XtraMessageBox.Show("保存失败");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
XtraMessageBox.Show("保存失败");
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
PublicClass.WriteErrorLog(this.Text, "保存基本信息:\r\n" + ex);
|
|
}
|
|
}
|
|
}
|
|
}
|