336 lines
12 KiB
C#
336 lines
12 KiB
C#
|
using DevExpress.XtraEditors;
|
|||
|
using DevExpress.XtraGrid.Views.Grid.ViewInfo;
|
|||
|
using HL_FristAidPlatform_DTO;
|
|||
|
using HL_FristAidPlatform_Public;
|
|||
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Data;
|
|||
|
using System.Drawing;
|
|||
|
using System.IO;
|
|||
|
using System.Windows.Forms;
|
|||
|
|
|||
|
namespace HL_FristAidPlatform_SYS
|
|||
|
{
|
|||
|
public partial class Form_SystemModuleMain : Form
|
|||
|
{
|
|||
|
#region 变量
|
|||
|
/// <summary>
|
|||
|
/// 操作标志 1:新增 2:修改
|
|||
|
/// </summary>
|
|||
|
public int Flag = 1;
|
|||
|
/// <summary>
|
|||
|
/// 当前图标文件名
|
|||
|
/// </summary>
|
|||
|
private string Cur_Icon = string.Empty;
|
|||
|
/// <summary>
|
|||
|
/// 当前图标(转换成二进制之后数据)
|
|||
|
/// </summary>
|
|||
|
private string Cur_PicData = string.Empty;
|
|||
|
/// <summary>
|
|||
|
/// 当前图片的位图源
|
|||
|
/// </summary>
|
|||
|
private Bitmap Cur_ImageBitmap;
|
|||
|
#endregion
|
|||
|
|
|||
|
public Form_SystemModuleMain()
|
|||
|
{
|
|||
|
InitializeComponent();
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 窗体加载
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
private void Form_SystemModuleMain_Load(object sender, EventArgs e)
|
|||
|
{
|
|||
|
BindData();
|
|||
|
//详情控件初始化
|
|||
|
PublicClass.EnabledControl(this.group_Detail, true, false);
|
|||
|
}
|
|||
|
|
|||
|
private void txt_Key_TextChanged(object sender, EventArgs e)
|
|||
|
{
|
|||
|
BindData();
|
|||
|
}
|
|||
|
|
|||
|
private void cmb_IsOpen_SelectedIndexChanged(object sender, EventArgs e)
|
|||
|
{
|
|||
|
BindData();
|
|||
|
}
|
|||
|
|
|||
|
private void cmb_DeleteFlag_SelectedIndexChanged(object sender, EventArgs e)
|
|||
|
{
|
|||
|
BindData();
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 查询
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
private void btn_Select_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
|||
|
{
|
|||
|
BindData();
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 单击绑定详情
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
private void grid_SystemModule_MouseClick(object sender, MouseEventArgs e)
|
|||
|
{
|
|||
|
GridHitInfo hi = grv_SystemModule.CalcHitInfo(new Point(e.X, e.Y));
|
|||
|
//单击数据行
|
|||
|
if (hi.InRow)//单击的是列头 hi.InColumn
|
|||
|
{
|
|||
|
PublicClass.EnabledControl(this.group_Detail, true, false);
|
|||
|
BindDetail();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void btn_Insert_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
|||
|
{
|
|||
|
PublicClass.EnabledControl(group_Detail, false, true);
|
|||
|
ckb_DeleteFlag.Checked = true;
|
|||
|
ckb_IsOpen.Checked = true;
|
|||
|
pictureEdit_Icon.Image = null;
|
|||
|
Flag = 1;
|
|||
|
}
|
|||
|
|
|||
|
private void btn_Update_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
|||
|
{
|
|||
|
BindDetail();
|
|||
|
|
|||
|
PublicClass.EnabledControl(group_Detail, false, false);
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 保存
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
private void btn_Save_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
#region 保存
|
|||
|
if (string.IsNullOrEmpty(txt_SystemName.Text.ToString().Trim()))
|
|||
|
{
|
|||
|
XtraMessageBox.Show("系统名称不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
|||
|
txt_SystemName.Focus();
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
List<T_SYS_SystemModuleDTO> list = new List<T_SYS_SystemModuleDTO>();
|
|||
|
T_SYS_SystemModuleDTO model = new T_SYS_SystemModuleDTO();
|
|||
|
|
|||
|
string Url = string.Empty;
|
|||
|
if (Flag == 1)
|
|||
|
{
|
|||
|
Url = "api/admin/T_SYS_SystemModule";
|
|||
|
model.GUID = Guid.NewGuid().ToString();
|
|||
|
model.CreationDate = PublicClass.DateTimeNow();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Url = "api/admin/T_SYS_SystemModule/Update";
|
|||
|
model.ID = Convert.ToInt32(txt_SystemName.Tag.ToString());
|
|||
|
model.GUID = txt_EnglishName.Tag.ToString();
|
|||
|
model.CreationDate = txt_ShortName.Tag.ToString();
|
|||
|
}
|
|||
|
|
|||
|
model.SystemName = txt_SystemName.Text.ToString().Trim();
|
|||
|
model.EnglishName = txt_EnglishName.Text.ToString().Trim();
|
|||
|
model.ShortName = txt_ShortName.Text.ToString().Trim();
|
|||
|
model.PatientTypeName = txt_PatientTypeName.Text.ToString().Trim();
|
|||
|
model.Icon = Cur_Icon;
|
|||
|
model.IconData = Convert.FromBase64String(Cur_PicData);
|
|||
|
model.OrderBy = Convert.ToInt32(txt_OrderBy.Text.ToString().Trim());
|
|||
|
model.IsOpen = ckb_IsOpen.Checked == true ? 0 : 1;
|
|||
|
model.IsHaveTimeAxis = ckb_IsHaveTimeAxis.Checked == true ? 0 : 1;
|
|||
|
model.DeleteFlag = ckb_DeleteFlag.Checked == true ? 0 : 1;
|
|||
|
|
|||
|
list.Add(model);
|
|||
|
|
|||
|
//初始化两个工厂
|
|||
|
ClientFactory<T_SYS_SystemModuleDTO> httpClient = new HttpClientFactory<T_SYS_SystemModuleDTO>();
|
|||
|
Client<T_SYS_SystemModuleDTO> client = httpClient.VisitFactory();
|
|||
|
|
|||
|
//访问
|
|||
|
ListEntity<T_SYS_SystemModuleDTO> t = client.Post(Url, list);
|
|||
|
if (t.Success)
|
|||
|
{
|
|||
|
XtraMessageBox.Show("保存系统系统信息成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
|||
|
PublicClass.EnabledControl(group_Detail, true, false);
|
|||
|
Flag = 0;
|
|||
|
//列表分页数据绑定
|
|||
|
BindData();
|
|||
|
|
|||
|
//定位
|
|||
|
PublicClass.LocationForGridView(grv_SystemModule, model.GUID, 1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
XtraMessageBox.Show("保存失败,请稍后重试!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|||
|
}
|
|||
|
#endregion
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
PublicClass.WriteErrorLog(this.Text, "保存:\r\n" + ex);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void btn_Exit_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
|
|||
|
{
|
|||
|
Close();
|
|||
|
}
|
|||
|
|
|||
|
#region 方法
|
|||
|
/// <summary>
|
|||
|
/// 查询绑定
|
|||
|
/// </summary>
|
|||
|
private void BindData()
|
|||
|
{
|
|||
|
BindSystemModule();
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 绑定
|
|||
|
/// </summary>
|
|||
|
private void BindSystemModule()
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
#region 绑定
|
|||
|
int IsOpen = -1;
|
|||
|
if (cmb_IsOpen.Text.ToString().Trim() == "开启")
|
|||
|
IsOpen = 0;
|
|||
|
else if (cmb_IsOpen.Text.ToString().Trim() == "关闭")
|
|||
|
IsOpen = 1;
|
|||
|
else
|
|||
|
IsOpen = -1;
|
|||
|
|
|||
|
int DeleteFlag = -1;
|
|||
|
if (cmb_DeleteFlag.Text.ToString().Trim() == "启用")
|
|||
|
DeleteFlag = 0;
|
|||
|
else if (cmb_DeleteFlag.Text.ToString().Trim() == "禁用")
|
|||
|
DeleteFlag = 1;
|
|||
|
else
|
|||
|
DeleteFlag = -1;
|
|||
|
|
|||
|
|
|||
|
DataTable ResultDT = DBHelpClass.Get(string.Format("/api/admin/T_SYS_SystemModule?keyWord={0}&isOpen={1}&deleteFlag={2}", txt_Key.Text.ToString().Trim(), IsOpen, DeleteFlag));
|
|||
|
//显示结果
|
|||
|
grid_SystemModule.DataSource = ResultDT;
|
|||
|
//自动调整所有字段宽度
|
|||
|
grv_SystemModule.BestFitColumns();
|
|||
|
#endregion
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
PublicClass.WriteErrorLog(this.Text, "绑定:\r\n" + ex);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 绑定详情
|
|||
|
/// </summary>
|
|||
|
private void BindDetail()
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
#region 绑定详情
|
|||
|
if (grv_SystemModule.DataRowCount > 0)
|
|||
|
{
|
|||
|
int selectRow = grv_SystemModule.GetSelectedRows()[0];
|
|||
|
string ModuleID = grv_SystemModule.GetRowCellValue(selectRow, "ID").ToString();
|
|||
|
|
|||
|
DataTable DetailDT = DBHelpClass.GetDataRow(string.Format("api/admin/T_SYS_SystemModule/{0}", ModuleID));
|
|||
|
if (DetailDT != null && DetailDT.Rows.Count > 0)
|
|||
|
{
|
|||
|
Flag = 2;//修改标识
|
|||
|
|
|||
|
txt_SystemName.Tag = DetailDT.Rows[0]["ID"].ToString();
|
|||
|
txt_SystemName.Text = DetailDT.Rows[0]["SystemName"].ToString();
|
|||
|
txt_EnglishName.Tag = DetailDT.Rows[0]["GUID"].ToString();
|
|||
|
txt_EnglishName.Text = DetailDT.Rows[0]["EnglishName"].ToString();
|
|||
|
txt_ShortName.Tag = DetailDT.Rows[0]["CreationDate"].ToString();
|
|||
|
txt_ShortName.Text = DetailDT.Rows[0]["ShortName"].ToString();
|
|||
|
txt_PatientTypeName.Text = DetailDT.Rows[0]["PatientTypeName"].ToString();
|
|||
|
|
|||
|
#region 图片
|
|||
|
if (!string.IsNullOrEmpty(PublicClass.ToString(DetailDT.Rows[0]["IconData"], "")))
|
|||
|
{
|
|||
|
MemoryStream ms = new MemoryStream(Convert.FromBase64String(DetailDT.Rows[0]["IconData"].ToString()));
|
|||
|
Image img = Image.FromStream(ms);
|
|||
|
|
|||
|
Cur_ImageBitmap = new Bitmap(img, pictureEdit_Icon.Width, pictureEdit_Icon.Height);
|
|||
|
pictureEdit_Icon.Image = Cur_ImageBitmap;
|
|||
|
Cur_Icon = DetailDT.Rows[0]["Icon"].ToString();
|
|||
|
//所选图标转换成二进制
|
|||
|
Cur_PicData = PublicClass.Png2String(Cur_ImageBitmap);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
pictureEdit_Icon.Image = null;
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
txt_OrderBy.Text = DetailDT.Rows[0]["OrderBy"].ToString();
|
|||
|
ckb_IsOpen.Checked = DetailDT.Rows[0]["IsOpen"].ToString().Trim() == "0" ? true : false;
|
|||
|
ckb_IsHaveTimeAxis.Checked = DetailDT.Rows[0]["IsHaveTimeAxis"].ToString().Trim() == "0" ? true : false;
|
|||
|
ckb_DeleteFlag.Checked = DetailDT.Rows[0]["DeleteFlag"].ToString().Trim() == "0" ? true : false;
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
PublicClass.WriteErrorLog(this.Text, "绑定详情:\r\n" + ex);
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 选择图片
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
private void btn_SelFlie_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
OpenFileDialog ofd = new OpenFileDialog();
|
|||
|
ofd.Filter = "Image Files(*.PNG)|*.PNG;|All files(*.*)|*.*";
|
|||
|
ofd.RestoreDirectory = true;
|
|||
|
if (ofd.ShowDialog() == DialogResult.OK)
|
|||
|
{
|
|||
|
FileInfo file = new FileInfo(ofd.FileName);
|
|||
|
if (file.Extension == ".png" || file.Extension == ".PNG")
|
|||
|
{
|
|||
|
string Cur_PicAddress = ofd.FileName;
|
|||
|
Image imge = Image.FromFile(Cur_PicAddress);
|
|||
|
Cur_ImageBitmap = new Bitmap(imge, pictureEdit_Icon.Width, pictureEdit_Icon.Height);
|
|||
|
pictureEdit_Icon.Image = Cur_ImageBitmap;
|
|||
|
|
|||
|
Cur_Icon = file.Name;
|
|||
|
//所选图标转换成二进制
|
|||
|
Cur_PicData = PublicClass.Png2String(Cur_ImageBitmap);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
XtraMessageBox.Show("为确保系统美观度,请上传.png格式的图标!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
catch (Exception ex)
|
|||
|
{
|
|||
|
PublicClass.WriteErrorLog(this.Text, "选择图片:\r\n" + ex);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|