215 lines
8.1 KiB
C#
215 lines
8.1 KiB
C#
using DevExpress.XtraEditors;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Windows.Forms;
|
|
using HL_FristAidPlatform_Public;
|
|
using HL_FristAidPlatform_DTO;
|
|
|
|
namespace HL_FristAidPlatform_MultiSystemPublic
|
|
{
|
|
public partial class Form_ImageMain : XtraForm
|
|
{
|
|
#region 变量
|
|
/// <summary>
|
|
/// 当前患者编号(GUID)
|
|
/// </summary>
|
|
private string Cur_PatientGuid = string.Empty;
|
|
|
|
/// <summary>
|
|
/// 当前系统模块编号(ID)
|
|
/// </summary>
|
|
private string Cur_SystemModuleID = string.Empty;
|
|
|
|
/// <summary>
|
|
/// 查看图片类型
|
|
/// </summary>
|
|
private Enumerate.ServiceImageFileType Cur_FileType;
|
|
#endregion
|
|
|
|
/// <summary>
|
|
/// 图片列表查看
|
|
/// </summary>
|
|
/// <param name="_patientGuid">当前患者编号(GUID)</param>
|
|
/// <param name="_systemModuleID">当前系统模块编号(ID)</param>
|
|
/// <param name="_fileType">查看图片类型</param>
|
|
public Form_ImageMain(string _patientGuid, string _systemModuleID, Enumerate.ServiceImageFileType _fileType)
|
|
{
|
|
Cur_PatientGuid = _patientGuid;
|
|
Cur_SystemModuleID = _systemModuleID;
|
|
Cur_FileType = _fileType;
|
|
InitializeComponent();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 窗体加载
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void Form_EcgImageMain_Load(object sender, EventArgs e)
|
|
{
|
|
BindList();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 绑定数据列表
|
|
/// </summary>
|
|
private void BindList()
|
|
{
|
|
try
|
|
{
|
|
string Url = string.Format("api/service/T_Service_Image/GetList?patientGuid={0}&systemModuleID={1}&fileType={2}", Cur_PatientGuid, Cur_SystemModuleID, (int)Cur_FileType);
|
|
DataTable returnDT = DBHelpClass.Get(Url);
|
|
if (returnDT != null && returnDT.Rows.Count > 0)
|
|
{
|
|
gridControl_Ecg.DataSource = returnDT;
|
|
gridView_Ecg.BestFitColumns();//列宽自适应
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
PublicClass.WriteErrorLog(this.Text, "绑定数据列表:\r\n" + ex);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 自定义显示列
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void gridView_Ecg_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
|
|
{
|
|
if (e.Column.FieldName == "FileType")
|
|
{
|
|
if (!string.IsNullOrEmpty(e.Value.ToString().Trim()))
|
|
{
|
|
if (e.Value.ToString().Trim() == Convert.ToString((int)Enumerate.ServiceImageFileType.CT检查))
|
|
{
|
|
e.DisplayText = Enumerate.ServiceImageFileType.CT检查.ToString();
|
|
}
|
|
else if (e.Value.ToString().Trim() == Convert.ToString((int)Enumerate.ServiceImageFileType.院前首份心电图))
|
|
{
|
|
e.DisplayText = Enumerate.ServiceImageFileType.院前首份心电图.ToString();
|
|
}
|
|
else if (e.Value.ToString().Trim() == Convert.ToString((int)Enumerate.ServiceImageFileType.院内首份心电图))
|
|
{
|
|
e.DisplayText = Enumerate.ServiceImageFileType.院内首份心电图.ToString();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 双击列表事件
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void gridControl_Ecg_MouseDoubleClick(object sender, MouseEventArgs e)
|
|
{
|
|
ShowImage();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 显示图片
|
|
/// </summary>
|
|
private void ShowImage()
|
|
{
|
|
try
|
|
{
|
|
if (gridView_Ecg.DataRowCount > 0)
|
|
{
|
|
int selectRow = gridView_Ecg.GetSelectedRows()[0];
|
|
string guid = gridView_Ecg.GetRowCellValue(selectRow, "GUID").ToString();
|
|
if (!string.IsNullOrEmpty(guid))
|
|
{
|
|
DataTable DetailDT = DBHelpClass.Get(string.Format("api/service/T_Service_Image/GetByGuid?guid={0}", guid));
|
|
if (DetailDT != null && DetailDT.Rows.Count > 0)
|
|
{
|
|
//图片
|
|
#region 图片
|
|
string FileImage = PublicClass.ToString(DetailDT.Rows[0]["FileImage"], "");
|
|
if (!string.IsNullOrEmpty(FileImage))
|
|
{
|
|
byte[] image = Convert.FromBase64String(FileImage);
|
|
Form_ImageShow frm = new Form_ImageShow(image);
|
|
frm.ShowDialog();
|
|
}
|
|
#endregion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
PublicClass.WriteErrorLog(this.Text, "显示图片:\r\n" + ex);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 删除图片
|
|
/// </summary>
|
|
private void DeleteImage()
|
|
{
|
|
try
|
|
{
|
|
if (gridView_Ecg.DataRowCount > 0)
|
|
{
|
|
int selectRow = gridView_Ecg.GetSelectedRows()[0];
|
|
long ID = PublicClass.ToInt64(gridView_Ecg.GetRowCellValue(selectRow, "ID"), 0);
|
|
if (ID > 0)
|
|
{
|
|
if (XtraMessageBox.Show("确定要删除当前图片?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
|
{
|
|
List<T_Service_ImageDTO> list = new List<T_Service_ImageDTO>();
|
|
T_Service_ImageDTO model = new T_Service_ImageDTO();
|
|
model.ID = ID;
|
|
model.GUID = Guid.NewGuid().ToString();
|
|
model.CreateTime = PublicClass.DateTimeNow();
|
|
list.Add(model);
|
|
|
|
ClientFactory<T_Service_ImageDTO> httpClient = new HttpClientFactory<T_Service_ImageDTO>();
|
|
Client<T_Service_ImageDTO> client = httpClient.VisitFactory();
|
|
|
|
string Url = "api/service/T_Service_Image/LogicalDelete";
|
|
if (client.Post(Url, list).Success)
|
|
{
|
|
XtraMessageBox.Show("删除图片文件成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
|
DialogResult = DialogResult.OK;
|
|
BindList();
|
|
}
|
|
else
|
|
{
|
|
XtraMessageBox.Show("删除图片文件失败!请重试!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
PublicClass.WriteErrorLog(this.Text, "删除当前图片:\r\n" + ex);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 列表操作
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
private void repositoryItemButtonEdit_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
|
|
{
|
|
switch (e.Button.Caption)
|
|
{
|
|
case "查看图片":
|
|
ShowImage();
|
|
break;
|
|
case "删除图片":
|
|
DeleteImage();
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|