using DevExpress.XtraEditors; using HL_FristAidPlatform_DTO; using HL_FristAidPlatform_Public; using System; using System.Collections.Generic; using System.Data; using System.Windows.Forms; namespace HL_FristAidPlatform_MultiSystemPublic { public partial class Form_MeetingList : XtraForm { #region 变量 /// /// 当前页 /// public int curPage = 1; /// /// 每页大小 /// public int pageSize = 100; /// /// 所有记录条数 /// public int totalNumber = 0; /// /// 当前维护的会议编号 /// private long Cur_MeetingId = 0; #endregion public Form_MeetingList() { InitializeComponent(); } #region 分页实现 public void ExportEvents(bool singlePage)//单页,所有 { //导出GridControl代码写在这。 } public void RefreshGridList() { FillGridListCtrlQuery(curPage);//自己实现FillGridListCtrlQuery函数。 } /// /// 绑定数据列表 /// /// private void FillGridListCtrlQuery(int curPage) { try { int type = PublicClass.ToInt32(lookUp_Sel_Type.EditValue, -1); string keyWord = txt_Key.Text.Trim(); string Url = $"api/service/T_Service_Meeting?pageIndex={curPage}&pageSize={pageSize}&hospitalGuid={Information.Hospital.GUID}&systemModuleID={Information.SystemModuleInfo.ID}&type={type}&keyWord={keyWord}"; DataTable ResultDT = DBHelpClass.Get(Url); grid_List.DataSource = ResultDT;//显示分页结果 totalNumber = DBHelpClass.TotalNumber; userControlForPage.RefreshPager(pageSize, totalNumber, curPage);//更新分页控件显示。 } catch (Exception ex) { PublicClass.WriteErrorLog(this.Text, "绑定数据列表:\r\n" + ex); } } private void MyPagerEvents(int curPage, int pageSize) { this.curPage = curPage; this.pageSize = pageSize; FillGridListCtrlQuery(curPage); } private void userControlForPage_exportEvents(bool singlePage) { userControlForPage.exportEvents += ExportEvents; } private void userControlForPage_myPagerEvents(int curPage, int pageSize) { userControlForPage.myPagerEvents += MyPagerEvents; } #endregion /// /// 窗体加载 /// /// /// private void Form_Meeting_Load(object sender, EventArgs e) { //加载基础数据 BindData(); //查询 RefreshGridList(); } #region BindData /// /// 查询绑定 /// private void BindData() { BindType(); } /// /// 绑定会议类型 /// private void BindType() { try { DataTable ResultDT = PublicClass.EnumToDataTable(typeof(Enumerate.MeetintType), "Name", "ID"); PublicClass.SetLookUpList(lookUp_Sel_Type, ResultDT, "ID", "Name", true, "全部"); } catch (Exception ex) { PublicClass.WriteErrorLog(this.Text, "绑定会议类型:\r\n" + ex); } } #endregion BindData #region 菜单事件 /// /// 查询 /// /// /// private void btn_Select_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { RefreshGridList(); } private void txt_Key_EditValueChanged(object sender, EventArgs e) { RefreshGridList(); } /// /// 新增 /// /// /// private void btn_Insert_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { Cur_MeetingId = 0; Form_Meeting_Detail frm = new Form_Meeting_Detail(Cur_MeetingId); frm.ShowDialog(); } /// /// 修改事件 /// /// /// private void btn_Update_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (grv_List.DataRowCount > 0) { int selectRow = grv_List.GetSelectedRows()[0]; Cur_MeetingId = PublicClass.ToInt64(grv_List.GetRowCellValue(selectRow, "ID"), 0); string Guid = grv_List.GetRowCellValue(selectRow, "GUID").ToString(); Form_Meeting_Detail frm = new Form_Meeting_Detail(Cur_MeetingId); if (frm.ShowDialog() == DialogResult.OK) { //定位 PublicClass.LocationForGridView(grv_List, Guid, 1); } } } /// /// 删除事件 /// /// /// private void btn_Delete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { Delete(); } /// /// 退出 /// /// /// private void btn_Exit_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { Close(); } /// /// 绘制行号 /// /// /// private void grv_List_CustomDrawRowIndicator(object sender, DevExpress.XtraGrid.Views.Grid.RowIndicatorCustomDrawEventArgs e) { if (e.Info.IsRowIndicator && e.RowHandle > -1) { e.Info.DisplayText = (e.RowHandle + 1).ToString(); } } /// /// 自定义显示列 /// /// /// private void grv_List_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e) { //Type 会议类型 if (e.Column.FieldName == "Type") { int value = PublicClass.ToInt32(e.Value, 0); switch (value) { case (int)Enumerate.MeetintType.典型病例讨论会: e.DisplayText = Enumerate.MeetintType.典型病例讨论会.ToString(); break; case (int)Enumerate.MeetintType.质量分析会: e.DisplayText = Enumerate.MeetintType.质量分析会.ToString(); break; case (int)Enumerate.MeetintType.联合例会: e.DisplayText = Enumerate.MeetintType.联合例会.ToString(); break; case (int)Enumerate.MeetintType.其他会议: e.DisplayText = Enumerate.MeetintType.其他会议.ToString(); break; default: e.DisplayText = ""; break; } } } /// /// 双击跳转到修改 /// /// /// private void grid_List_MouseDoubleClick(object sender, MouseEventArgs e) { btn_Update_ItemClick(null, null); } #endregion 菜单事件 #region 方法 /// /// 删除 /// private void Delete() { try { #region 删除认证版本 if (grv_List.DataRowCount > 0) { int selectRow = grv_List.GetSelectedRows()[0]; int ID = Convert.ToInt32(grv_List.GetRowCellValue(selectRow, "ID").ToString()); string Name = grv_List.GetRowCellValue(selectRow, "Name").ToString(); if (ID == 0) { XtraMessageBox.Show("请先选择要删除的会议!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (XtraMessageBox.Show(string.Format("确定要删除会议【{0}】?", Name), "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { List list = new List(); T_Service_MeetingDTO model = new T_Service_MeetingDTO(); string Url = "api/service/T_Service_Meeting/LogicalDelete"; model.ID = ID; model.DeleteFlag = 1; list.Add(model); //初始化两个工厂 ClientFactory httpClient = new HttpClientFactory(); Client client = httpClient.VisitFactory(); //访问 ListEntity t = client.Post(Url, list); if (t.Success) { XtraMessageBox.Show("删除会议成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); RefreshGridList(); } else { XtraMessageBox.Show("删除会议失败,请稍后重试!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } #endregion } catch (Exception ex) { PublicClass.WriteErrorLog(this.Text, "删除会议:\r\n" + ex); } } #endregion 方法 } }