using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using WMS.Frm.Base; using WMS.Model.Base; using WMS.Common; using WMS.Base.WebService; namespace WMS.FrmBaseData { /// /// 窗体:备注字典 /// public partial class FrmRemarkDictionary : FormBase { #region 变量 public static FrmRemarkDictionary frmRemarkDictionary; private BaseRemarkDictionaryModel BaseRemarkDictionaryModel = new BaseRemarkDictionaryModel(); private List listBaseRemarkDictionaryModel = new List(); private int flag = -1;//0:新增;1:修改 #endregion #region 初始化 /// /// 无参构造 /// public FrmRemarkDictionary() { InitializeComponent(); } /// /// 本窗体加载的时候 /// /// /// public void FrmRemarkDictionary_Load(object sender, EventArgs e) { lueType.LoadData(); bindGrid(); FrmSelectModle = new BaseRemarkDictionaryModel(); if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; } } public static FrmRemarkDictionary getInstance() { if (frmRemarkDictionary == null || frmRemarkDictionary.IsDisposed) { frmRemarkDictionary = new FrmRemarkDictionary(); } return frmRemarkDictionary; } #endregion #region 绑定数据 /// /// 整体绑定数据 /// private void bindGrid() { //绑定备注字典数据 string errText = string.Empty; BaseRemarkDictionaryModel queryBaseRemarkDictionary = new BaseRemarkDictionaryModel(); string strParameter = Newtonsoft.Json.JsonConvert.SerializeObject(queryBaseRemarkDictionary); string strResult = string.Empty; try { strResult = WebLockConfig.Instance.WebBaseRemarkDictionary.GetBaseRemarkDictionaryListStr(strParameter, ref errText); } catch (Exception) { SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!"); } //如果查询备注字典数据成功 if (errText == string.Empty) { listBaseRemarkDictionaryModel = Newtonsoft.Json.JsonConvert.DeserializeObject>(strResult); //如果有数据 if (listBaseRemarkDictionaryModel.Count > 0) { //gv绑定数据 bsRemarkDictionary.DataSource = listBaseRemarkDictionaryModel; GVRemarkDictionary.RefreshData(); //GVRemarkDictionary.FocusedRowHandle = 0;//选中行变为第一行 GVRemarkDictionary.FocusedRowHandle = listBaseRemarkDictionaryModel.FindIndex(p => p.ID == BaseRemarkDictionaryModel.ID); //编辑区域绑定数据 if (string.IsNullOrEmpty(BaseRemarkDictionaryModel.ID)) { BaseRemarkDictionaryModel = listBaseRemarkDictionaryModel[0]; } bsRemarkDictionaryEdit.DataSource = BaseRemarkDictionaryModel; ColorEdit.Color = System.Drawing.ColorTranslator.FromHtml(BaseRemarkDictionaryModel.COLOR_ID); } else { SystemCommon.ShowInfoMessageBox("没有备注字典信息"); } } else { SystemCommon.ShowInfoMessageBox(errText); } if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; } if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; } if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = true; } if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; } Confirm();//编辑区域不可用 } /// /// GridView选中行改变 /// /// /// private void GVRemarkDictionary_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e) { //编辑区域数据绑定 BaseRemarkDictionaryModel = new BaseRemarkDictionaryModel(); BaseRemarkDictionaryModel = GVRemarkDictionary.GetFocusedRow() as BaseRemarkDictionaryModel;//当前选中行 bsRemarkDictionaryEdit.DataSource = BaseRemarkDictionaryModel; ColorEdit.Color = System.Drawing.ColorTranslator.FromHtml(BaseRemarkDictionaryModel.COLOR_ID); Confirm();//编辑区域不可用 if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = true; } if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = true; } if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = true; } if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = false; } } /// /// 通用查询 /// /// public override void LoadListData(DataTable table) { listBaseRemarkDictionaryModel = ConvertHelper.ConvertToList(table); bsRemarkDictionary.DataSource = listBaseRemarkDictionaryModel; GVRemarkDictionary.RefreshData(); } #endregion #region 按钮事件 /// /// 清空按钮 /// public override void Clear() { //为bsRemarkDictionaryEdit绑定新的Model BaseRemarkDictionaryModel = new BaseRemarkDictionaryModel(); bsRemarkDictionaryEdit.DataSource = BaseRemarkDictionaryModel; ColorEdit.Color = new Color(); } /// /// 新增按钮 /// public override void Add() { //编辑控件可用 txtContent.Enabled = true; ColorEdit.Enabled = true; lueType.Enabled = true; Clear(); flag = 0;//标识新增 ColorEdit.Color = Color.Black; if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = false; } if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = false; } if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = false; } if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = true; } } /// /// 保存按钮 /// public override void Save() { GCRemarkDictionary.Focus();//改变焦点,确保 正在编辑的控件(如TextBox)的值为编辑后的 if (string.IsNullOrEmpty(lueType.Text.Trim())) { SystemCommon.ShowInfoMessageBox("备注类型不能为空"); lueType.Focus(); return; } if (string.IsNullOrEmpty(txtContent.Text.Trim())) { SystemCommon.ShowInfoMessageBox("备注内容不能为空"); txtContent.Focus(); return; } if (ColorEdit.Color.IsEmpty) { SystemCommon.ShowInfoMessageBox("请选择备注颜色"); ColorEdit.Focus(); return; } /*以下将bindingSource绑定的值修改或新增*/ BaseRemarkDictionaryModel model = BaseRemarkDictionaryModel; model.COLOR_ID = System.Drawing.ColorTranslator.ToHtml(ColorEdit.Color); model.OPERATORID = userData.USER_ID;//操作人 if (flag == 1)//修改 { string strBaseRemarkDictionaryModel = Newtonsoft.Json.JsonConvert.SerializeObject(model);//model转字符串 string errText = string.Empty; try { errText = WebLockConfig.Instance.WebBaseRemarkDictionary.InsOrUpdBaseRemarkDictionary(strBaseRemarkDictionaryModel, 1);//修改 if (string.IsNullOrEmpty(errText))//如果修改成功 { bindGrid();//重新绑定数据 } else { SystemCommon.ShowInfoMessageBox("修改失败" + errText); } } catch (Exception) { SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!"); } flag = -1;//标识为非新增非修改 } else if (flag == 0)//新增 { string strBaseRemarkDictionaryModel = Newtonsoft.Json.JsonConvert.SerializeObject(model);//model转字符串 string errText = string.Empty; try { errText = WebLockConfig.Instance.WebBaseRemarkDictionary.InsOrUpdBaseRemarkDictionary(strBaseRemarkDictionaryModel, 0);//修改 if (string.IsNullOrEmpty(errText))//如果修改成功 { bindGrid();//重新绑定数据 } else { SystemCommon.ShowInfoMessageBox("新增失败" + errText); flag = -1;//标识为非新增非修改 } } catch (Exception) { SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!"); } } else { SystemCommon.ShowInfoMessageBox("未选择新增或修改"); } //btnSave.Visible = false;//隐藏保存按钮 //Clear();//保存后clear编辑区域 } /// /// 编辑按钮 /// public override void Edit() { if (!frmButtonItem.ContainsKey("Edit")) { return; } else if (frmButtonItem["Edit"].Enabled == false) { return; } //编辑区域可编辑 txtContent.Enabled = true; ColorEdit.Enabled = true; lueType.Enabled = true; flag = 1;//标识为修改 if (frmButtonItem.ContainsKey("Add")) { frmButtonItem["Add"].Enabled = false; } if (frmButtonItem.ContainsKey("Edit")) { frmButtonItem["Edit"].Enabled = false; } if (frmButtonItem.ContainsKey("Del")) { frmButtonItem["Del"].Enabled = false; } if (frmButtonItem.ContainsKey("Save")) { frmButtonItem["Save"].Enabled = true; } } /// /// 刷新按钮 /// public override void Refresh() { if (frmButtonItem.ContainsKey("Save") && frmButtonItem["Save"].Enabled == true && DialogResult.Yes != SystemCommon.ShowMessageBoxResult("确定放弃正在编辑的数据?")) { return; } bindGrid(); //Clear(); } /// /// 删除按钮 /// public override void Del() { string errText = string.Empty; if (DialogResult.Yes == SystemCommon.ShowMessageBoxResult("确定删除")) { string str = BaseRemarkDictionaryModel.ID; if (!string.IsNullOrEmpty(str)) { //删除备份字典 errText = string.Empty; try { errText = WebLockConfig.Instance.WebBaseRemarkDictionary.DeleteBaseRemarkDictionary(str);//删除 } catch (Exception) { SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!"); } if (string.IsNullOrEmpty(errText))//如果成功 { bindGrid(); } else { SystemCommon.ShowInfoMessageBox("删除失败" + errText); } } else { SystemCommon.ShowInfoMessageBox("请选择一条记录"); } } } /// /// 确定按钮 /// public void Confirm() { //编辑区域不可用 txtContent.Enabled = false; ColorEdit.Enabled = false; lueType.Enabled = false; //frmButtonItem["Save"].Enabled = false; } /// /// 双击编辑 /// /// /// private void GVRemarkDictionary_DoubleClick(object sender, EventArgs e) { Edit(); } #endregion } }