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.Windows.Forms; namespace HL_FristAidPlatform_Base { public partial class Form_DiseaseTemplateMain : XtraForm { #region 变量 /// /// 操作标志 1:新增 2:修改 /// public int Flag = 1; /// /// 当前页 /// public int curPage = 1; /// /// 每页大小 /// public int pageSize = 100; /// /// 所有记录条数 /// public int totalNumber = 0; #endregion #region 分页实现 public void ExportEvents(bool singlePage)//单页,所有 { //导出GridControl代码写在这。 } public void RefreshGridList() { FillGridListCtrlQuery(curPage);//自己实现FillGridListCtrlQuery函数。 } /// /// 绑定数据列表 /// /// private void FillGridListCtrlQuery(int curPage) { try { 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/base/T_Base_DiseaseTemplate?pageIndex={0}&pageSize={1}&keyWord={2}&deleteFlag={3}", curPage, pageSize, txt_Key.Text.ToString().Trim(), DeleteFlag)); grid_Template.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 public Form_DiseaseTemplateMain() { InitializeComponent(); } /// /// 窗体加载 /// /// /// private void Form_DiseaseTemplateMain_Load(object sender, EventArgs e) { RefreshGridList(); //详情控件初始化 PublicClass.EnabledControl(this.group_Detail, true, false); } /// /// 查询 /// /// /// private void btn_Select_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { //列表分页数据绑定 RefreshGridList(); } private void txt_Key_EditValueChanged(object sender, EventArgs e) { RefreshGridList(); } private void cmb_DeleteFlag_SelectedIndexChanged(object sender, EventArgs e) { RefreshGridList(); } /// /// 新增 /// /// /// private void btn_Insert_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { PublicClass.EnabledControl(this.group_Detail, false, true); btn_Delete.Enabled = false; ckb_DeleteFlag.Checked = true; txt_OrderBy.Text = "1"; Flag = 1; } /// /// 修改 /// /// /// private void btn_Update_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { BindDetail(); PublicClass.EnabledControl(this.group_Detail, false, false); btn_Delete.Enabled = false; } /// /// 删除 /// /// /// private void btn_Delete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { try { #region 删除 if (grv_Template.DataRowCount > 0) { int selectRow = grv_Template.GetSelectedRows()[0]; int ID = Convert.ToInt32(grv_Template.GetRowCellValue(selectRow, "ID").ToString()); string Content = grv_Template.GetRowCellValue(selectRow, "Content").ToString(); if (ID == 0) { XtraMessageBox.Show("请先选择要删除的病情模板!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } if (XtraMessageBox.Show(string.Format("确定要删除病情模板【{0}】?", Content), "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { List list = new List(); T_Base_DiseaseTemplateDTO model = new T_Base_DiseaseTemplateDTO(); string Url = "api/base/T_Base_DiseaseTemplate/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); PublicClass.EnabledControl(this.group_Detail, true, false); Flag = 0; //列表分页数据绑定 RefreshGridList(); } else { XtraMessageBox.Show("删除病情模板失败,请稍后重试!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } #endregion } catch (Exception ex) { PublicClass.WriteErrorLog(this.Text, "删除:\r\n" + ex); } } /// /// 保存 /// /// /// private void btn_Save_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { try { #region 保存 if (string.IsNullOrEmpty(txt_Content.Text.ToString().Trim())) { XtraMessageBox.Show("模板内容不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); txt_Content.Focus(); return; } List list = new List(); T_Base_DiseaseTemplateDTO model = new T_Base_DiseaseTemplateDTO(); string Url = string.Empty; if (Flag == 1) { Url = "api/base/T_Base_DiseaseTemplate"; model.GUID = Guid.NewGuid().ToString(); model.CreationDate = PublicClass.DateTimeNow(); model.CreatorID = Information.User.ID; model.Creator = Information.User.FullName; } else { Url = "api/base/T_Base_DiseaseTemplate/Update"; model.ID = Convert.ToInt32(txt_Content.Tag.ToString()); model.CreationDate = PublicClass.DateTimeNow(); model.GUID = txt_Keywords.Tag.ToString(); } model.Content = txt_Content.Text.ToString().Trim(); model.Keywords = txt_Keywords.Text.ToString().Trim(); model.PymCode = txt_PymCode.Text.ToString().Trim(); model.WbmCode = txt_WbmCode.Text.ToString().Trim(); model.Type = 1;//目前只有1 登记模板 model.OrderBy = Convert.ToInt32(txt_OrderBy.Text.ToString().Trim() == "" ? "0" : txt_OrderBy.Text.ToString().Trim()); model.DeleteFlag = ckb_DeleteFlag.Checked == true ? 0 : 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); PublicClass.EnabledControl(group_Detail, true, false); Flag = 0; //列表分页数据绑定 RefreshGridList(); btn_Delete.Enabled = true; //定位 PublicClass.LocationForGridView(grv_Template, 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 方法 /// /// 绑定详情 /// private void BindDetail() { try { if (grv_Template.DataRowCount > 0) { int selectRow = grv_Template.GetSelectedRows()[0]; long ID = Convert.ToInt64(grv_Template.GetRowCellValue(selectRow, "ID").ToString()); DataTable DetailDT = DBHelpClass.GetDataRow(string.Format("api/base/T_Base_DiseaseTemplate/{0}", ID)); if (DetailDT != null && DetailDT.Rows.Count > 0) { Flag = 2;//修改标识 txt_Content.Tag = DetailDT.Rows[0]["ID"].ToString(); txt_Content.Text = DetailDT.Rows[0]["Content"].ToString(); txt_Keywords.Tag = DetailDT.Rows[0]["GUID"].ToString(); txt_Keywords.Text = DetailDT.Rows[0]["Keywords"].ToString(); txt_PymCode.Tag = DetailDT.Rows[0]["PymCode"].ToString(); txt_WbmCode.Text = DetailDT.Rows[0]["WbmCode"].ToString(); txt_OrderBy.Text = DetailDT.Rows[0]["OrderBy"].ToString(); ckb_DeleteFlag.Checked = DetailDT.Rows[0]["DeleteFlag"].ToString().Trim() == "0" ? true : false; } } } catch (Exception ex) { PublicClass.WriteErrorLog(this.Text, "绑定详情:\r\n" + ex); } } #endregion private void grid_Template_MouseClick(object sender, MouseEventArgs e) { GridHitInfo hi = grv_Template.CalcHitInfo(new Point(e.X, e.Y)); //单击数据行 if (hi.InRow)//单击的是列头 hi.InColumn { PublicClass.EnabledControl(this.group_Detail, true, false); BindDetail(); } } /// /// 生成拼音码和五笔码 /// /// /// private void txt_Content_EditValueChanged(object sender, EventArgs e) { string Content = txt_Content.Text; if (!string.IsNullOrEmpty(Content)) { txt_PymCode.Text = SpellAndWbConfig.GetSpellCode(Content); txt_WbmCode.Text = SpellAndWbConfig.GetWBCode(Content); } } } }