//初始化 private void Init() { dgvQData.MultiSelect = false; //不允许多选操作 SetUCBaseFuncationVisible(); #region 初始化时间控件值 dtpCBSTime.Value = DateTime.Now.AddMonths(-1); dtpCBETime.Value = DateTime.Now.AddDays(+1); #endregion #region 初始化下拉框数据绑定 CommonCtrl.BindComboBoxByDictionarr(cboCBType, "sys_callback_type", true); //绑定回访类型 CommonCtrl.BindComboBoxByDictionarr(cboCBMode, "sys_callback_mode", true); //绑定回访方式 #endregion #region 注册功能按钮事件 #region 清除查询条件 btnClear.Click += delegate { txtCBTitle.Caption = String.Empty; cboCBType.SelectedValue = String.Empty; cboCBMode.SelectedValue = String.Empty; dtpCBSTime.Value = DateTime.Now.AddMonths(-1); dtpCBETime.Value = DateTime.Now.AddDays(1); txtCustomerName.Text = String.Empty; txtCustomerName.Tag = String.Empty; txtCBPerson.Text = String.Empty; }; #endregion #region 查询 btnQuery.Click += delegate { BindPageData(); }; #endregion #region 选择客户信息 txtCustomerName.ChooserClick += delegate { var frmCustomer = new frmCustomerInfo(); var result = frmCustomer.ShowDialog(); if (result == DialogResult.OK) { txtCustomerName.Text = frmCustomer.strCustomerName; txtCustomerName.Tag = frmCustomer.strCustomerId; } }; #endregion #region 选择回访人 txtCBPerson.ChooserClick += delegate { var frmContacts= new frmContacts(); var result = frmContacts.ShowDialog(); if (result == DialogResult.OK) { txtCBPerson.Text = frmContacts.contName; txtCBPerson.Tag = frmContacts.contID; } }; #endregion #region 数据翻页 pageQ.PageIndexChanged += delegate { BindPageData(); }; #endregion #region 数据表数据选择 dgvQData.CellDoubleClick += delegate(object sender, DataGridViewCellEventArgs args) { if (args.ColumnIndex <= 0) return; var uc = new UCCallBackAddOrEdit {OpType = WindowStatus.View, UCCallBackManager = this}; var selectedData = dgvQData.SelectedRows[0]; uc.CallBackId = selectedData.Cells["drtxt_Callback_id"].Value.ToString(); var callbackInfo = DBHelper.GetTable("查询回访信息", "tb_CustomerSer_Callback", "*", "Callback_id = '" + uc.CallBackId + "'", "", ""); if (callbackInfo != null && callbackInfo.DefaultView.Count != 0) { uc.CustId = callbackInfo.DefaultView[0]["Callback_corp"].ToString(); uc.ContId = callbackInfo.DefaultView[0]["Callback_by"].ToString(); uc.HandleId = callbackInfo.DefaultView[0]["handle_name"].ToString(); } uc.addUserControl(uc, "客户回访-预览", "UCCallBackView", Tag.ToString(), Name); }; #endregion #region 数据表格数据格式化 dgvQData.CellFormatting += delegate(object sender, DataGridViewCellFormattingEventArgs args) { UIAssistants.DgvCellDataConvert2Table(dgvQData, args, "Callback_by", "tb_contacts", "cont_id", "cont_name"); UIAssistants.DgvCellDataConvert2Table(dgvQData, args, "handle_name", "sys_user", "user_id", "user_name"); UIAssistants.DgvCellDataConvert2Table(dgvQData, args, "Callback_corp", "tb_customer", "cust_id", "cust_name"); UIAssistants.DgvCellDataConvert2Datetime(dgvQData, args, "Callback_time"); UIAssistants.DgvCellDataConvert2DicData(dgvQData, args, "Callback_type"); //访问类型 UIAssistants.DgvCellDataConvert2DicData(dgvQData, args, "Callback_mode"); //访问形式 UIAssistants.DgvCellDataConvert2DicData(dgvQData, args, "status"); //状态 }; #endregion #region 新增数据 AddEvent += delegate { var uc = new UCCallBackAddOrEdit(); uc.UCCallBackManager = this; uc.OpType = WindowStatus.Add; uc.addUserControl(uc, "客户回访-新增", "UCCallBackAdd", Tag.ToString(), Name); }; #endregion #region 编辑数据 EditEvent += delegate { if (dgvQData.SelectedRows.Count > 0) { var uc = new UCCallBackAddOrEdit(); uc.OpType = WindowStatus.Edit; uc.UCCallBackManager = this; var selectedData = dgvQData.SelectedRows[0]; uc.CallBackId = selectedData.Cells["drtxt_Callback_id"].Value.ToString(); var callbackInfo = DBHelper.GetTable("查询回访信息", "tb_CustomerSer_Callback", "*", "Callback_id = '" + uc.CallBackId + "'", "", ""); if (callbackInfo != null && callbackInfo.DefaultView.Count != 0) { uc.CustId = callbackInfo.DefaultView[0]["Callback_corp"].ToString(); uc.ContId = callbackInfo.DefaultView[0]["Callback_by"].ToString(); uc.HandleId = callbackInfo.DefaultView[0]["handle_name"].ToString(); } uc.addUserControl(uc, "客户回访-编辑", "UCCallBackEdit", Tag.ToString(), Name); } }; #endregion #region 删除数据 DeleteEvent += delegate { try { if (dgvQData.SelectedRows.Count == 0) { MessageBoxEx.Show("请选择删除记录!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } var listField = (from DataGridViewRow selectedRow in dgvQData.SelectedRows select selectedRow.Cells["drtxt_Callback_id"].Value.ToString()).ToList(); var result = MessageBoxEx.Show("此操作将永久删除选定信息。\n若要继续,请单击“确定”。", "您确认要删除此条信息吗?", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); if (result == DialogResult.OK) { var flag = DBHelper.BatchDeleteDataByWhere("删除客户回访信息", "tb_CustomerSer_Callback", String.Format("Callback_id = '{0}'", listField[0])); if (flag) { BindPageData(); MessageBoxEx.Show("删除成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); BindPageData(); } else { MessageBoxEx.Show("删除失败!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } catch (Exception ex) { MessageBoxEx.Show("删除失败!" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }; #endregion #region 启用/禁用 StatusEvent += delegate { if (dgvQData.SelectedRows.Count > 0) { var dataView = GetSelectedRowData(); var listField = GetCheckRows(); if (listField.Count >= 1) { if (MessageBoxEx.Show("确认要" + btnStatus.Caption + "吗?", "提示", MessageBoxButtons.OKCancel) != DialogResult.OK) { return; } var flag = false; foreach (DataRowView view in dataView) { var status = CommonCtrl.IsNullToString(view[drtxt_status.DataPropertyName]); flag = DBHelper.Submit_AddOrEdit("启用/停用客户回访记录", "tb_CustomerSer_Callback", "Callback_id", CommonCtrl.IsNullToString(view[drtxt_Callback_id.DataPropertyName]), new Dictionary<string, string> { { "status", status == DbDic2Enum.SYS_DATA_STATUS_QI ? DbDic2Enum.SYS_DATA_STATUS_JIN : DbDic2Enum.SYS_DATA_STATUS_QI }, { "update_by", GlobalStaticObj.UserID }, { "update_time", Common.LocalDateTimeToUtcLong(GlobalStaticObj.CurrentDateTime).ToString() } }); } MessageBoxEx.Show(btnStatus.Caption + (flag ? "成功!" : "失败!"), "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); BindPageData(); } } }; #endregion #region 根据选择的数据判断功能按钮的显示状态 dgvQData.CellMouseUp += delegate { var dataView = GetSelectedRowData(); var listField = GetCheckRows(); btnStatus.Enabled = false; btnEdit.Enabled = false; btnDelete.Enabled = false; if (dataView == null || listField.Count == 0) { } else { #region 编辑 if (listField.Count == 1) { btnEdit.Enabled = true; btnDelete.Enabled = true; } #endregion #region 启用/禁用 var qy = 0; var jy = 0; foreach (DataRowView rowView in dataView) //启用/禁用 { if (rowView["status"].ToString() == DbDic2Enum.SYS_DATA_STATUS_QI) { qy++; } else if (rowView["status"].ToString() == DbDic2Enum.SYS_DATA_STATUS_JIN) { jy++; } } if (qy == 0 && jy != 0) { btnStatus.Enabled = true; btnStatus.Caption = "启用"; btnStatus.Width = 60; } else if (qy != 0 && jy == 0) { btnStatus.Enabled = true; btnStatus.Caption = "禁用"; btnStatus.Width = 60; } else { btnStatus.Enabled = false; btnStatus.Caption = "启用/禁用"; btnStatus.Width = 90; } #endregion } }; #endregion #endregion BindPageData(); }
//初始化 private void Init() { dgvQData.MultiSelect = false; //不允许多选操作 SetUCBaseFuncationVisible(); #region 初始化时间控件值 dtpCBSTime.Value = DateTime.Now.AddMonths(-1); dtpCBETime.Value = DateTime.Now.AddDays(+1); #endregion #region 初始化下拉框数据绑定 CommonCtrl.BindComboBoxByDictionarr(cboCBType, "sys_callback_type", true); //绑定回访类型 CommonCtrl.BindComboBoxByDictionarr(cboCBMode, "sys_callback_mode", true); //绑定回访方式 #endregion #region 注册功能按钮事件 #region 清除查询条件 btnClear.Click += delegate { txtCBTitle.Caption = String.Empty; cboCBType.SelectedValue = String.Empty; cboCBMode.SelectedValue = String.Empty; dtpCBSTime.Value = DateTime.Now.AddMonths(-1); dtpCBETime.Value = DateTime.Now.AddDays(1); txtCustomerName.Text = String.Empty; txtCustomerName.Tag = String.Empty; txtCBPerson.Text = String.Empty; }; #endregion #region 查询 btnQuery.Click += delegate { BindPageData(); }; #endregion #region 择客户信息 txtCustomerName.ChooserClick += delegate { var frmCustomer = new frmCustomerInfo(); var result = frmCustomer.ShowDialog(); if (result == DialogResult.OK) { txtCustomerName.Text = frmCustomer.strCustomerName; txtCustomerName.Tag = frmCustomer.strCustomerId; } }; #endregion #region 择回访人 txtCBPerson.ChooserClick += delegate { var frmContacts = new frmContacts(); var result = frmContacts.ShowDialog(); if (result == DialogResult.OK) { txtCBPerson.Text = frmContacts.contName; txtCBPerson.Tag = frmContacts.contID; } }; #endregion #region 数据翻页 pageQ.PageIndexChanged += delegate { BindPageData(); }; #endregion #region 数据表数据选择 dgvQData.CellDoubleClick += delegate(object sender, DataGridViewCellEventArgs args) { if (args.ColumnIndex <= 0) { return; } var uc = new UCCallBackAddOrEdit { OpType = WindowStatus.View, UCCallBackManager = this }; var selectedData = dgvQData.SelectedRows[0]; uc.CallBackId = selectedData.Cells["drtxt_Callback_id"].Value.ToString(); var callbackInfo = DBHelper.GetTable("查询回访信息", "tb_CustomerSer_Callback", "*", "Callback_id = '" + uc.CallBackId + "'", "", ""); if (callbackInfo != null && callbackInfo.DefaultView.Count != 0) { uc.CustId = callbackInfo.DefaultView[0]["Callback_corp"].ToString(); uc.ContId = callbackInfo.DefaultView[0]["Callback_by"].ToString(); uc.HandleId = callbackInfo.DefaultView[0]["handle_name"].ToString(); } uc.addUserControl(uc, "客户回访-预览", "UCCallBackView", Tag.ToString(), Name); }; #endregion #region 数据表格数据格式化 dgvQData.CellFormatting += delegate(object sender, DataGridViewCellFormattingEventArgs args) { UIAssistants.DgvCellDataConvert2Table(dgvQData, args, "Callback_by", "tb_contacts", "cont_id", "cont_name"); UIAssistants.DgvCellDataConvert2Table(dgvQData, args, "handle_name", "sys_user", "user_id", "user_name"); UIAssistants.DgvCellDataConvert2Table(dgvQData, args, "Callback_corp", "tb_customer", "cust_id", "cust_name"); UIAssistants.DgvCellDataConvert2Datetime(dgvQData, args, "Callback_time"); UIAssistants.DgvCellDataConvert2DicData(dgvQData, args, "Callback_type"); //访问类型 UIAssistants.DgvCellDataConvert2DicData(dgvQData, args, "Callback_mode"); //访问形式 UIAssistants.DgvCellDataConvert2DicData(dgvQData, args, "status"); //状态 }; #endregion #region 新增数据 AddEvent += delegate { var uc = new UCCallBackAddOrEdit(); uc.UCCallBackManager = this; uc.OpType = WindowStatus.Add; uc.addUserControl(uc, "客户回访-新增", "UCCallBackAdd", Tag.ToString(), Name); }; #endregion #region 编辑数据 EditEvent += delegate { if (dgvQData.SelectedRows.Count > 0) { var uc = new UCCallBackAddOrEdit(); uc.OpType = WindowStatus.Edit; uc.UCCallBackManager = this; var selectedData = dgvQData.SelectedRows[0]; uc.CallBackId = selectedData.Cells["drtxt_Callback_id"].Value.ToString(); var callbackInfo = DBHelper.GetTable("查询回访信息", "tb_CustomerSer_Callback", "*", "Callback_id = '" + uc.CallBackId + "'", "", ""); if (callbackInfo != null && callbackInfo.DefaultView.Count != 0) { uc.CustId = callbackInfo.DefaultView[0]["Callback_corp"].ToString(); uc.ContId = callbackInfo.DefaultView[0]["Callback_by"].ToString(); uc.HandleId = callbackInfo.DefaultView[0]["handle_name"].ToString(); } uc.addUserControl(uc, "客户回访-编辑", "UCCallBackEdit", Tag.ToString(), Name); } }; #endregion #region 除数据 DeleteEvent += delegate { try { if (dgvQData.SelectedRows.Count == 0) { MessageBoxEx.Show("请选择删除记录!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } var listField = (from DataGridViewRow selectedRow in dgvQData.SelectedRows select selectedRow.Cells["drtxt_Callback_id"].Value.ToString()).ToList(); var result = MessageBoxEx.Show("此操作将永久删除选定信息。\n若要继续,请单击“确定”。", "您确认要删除此条信息吗?", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning); if (result == DialogResult.OK) { var flag = DBHelper.BatchDeleteDataByWhere("删除客户回访信息", "tb_CustomerSer_Callback", String.Format("Callback_id = '{0}'", listField[0])); if (flag) { BindPageData(); MessageBoxEx.Show("删除成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); BindPageData(); } else { MessageBoxEx.Show("删除失败!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } catch (Exception ex) { MessageBoxEx.Show("删除失败!" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }; #endregion #region 启用/禁用 StatusEvent += delegate { if (dgvQData.SelectedRows.Count > 0) { var dataView = GetSelectedRowData(); var listField = GetCheckRows(); if (listField.Count >= 1) { if (MessageBoxEx.Show("确认要" + btnStatus.Caption + "吗?", "提示", MessageBoxButtons.OKCancel) != DialogResult.OK) { return; } var flag = false; foreach (DataRowView view in dataView) { var status = CommonCtrl.IsNullToString(view[drtxt_status.DataPropertyName]); flag = DBHelper.Submit_AddOrEdit("启用/停用客户回访记录", "tb_CustomerSer_Callback", "Callback_id", CommonCtrl.IsNullToString(view[drtxt_Callback_id.DataPropertyName]), new Dictionary <string, string> { { "status", status == DbDic2Enum.SYS_DATA_STATUS_QI ? DbDic2Enum.SYS_DATA_STATUS_JIN : DbDic2Enum.SYS_DATA_STATUS_QI }, { "update_by", GlobalStaticObj.UserID }, { "update_time", Common.LocalDateTimeToUtcLong(GlobalStaticObj.CurrentDateTime).ToString() } }); } MessageBoxEx.Show(btnStatus.Caption + (flag ? "成功!" : "失败!"), "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); BindPageData(); } } }; #endregion #region 根据选择的数据判断功能按钮的显示状态 dgvQData.CellMouseUp += delegate { var dataView = GetSelectedRowData(); var listField = GetCheckRows(); btnStatus.Enabled = false; btnEdit.Enabled = false; btnDelete.Enabled = false; if (dataView == null || listField.Count == 0) { } else { #region 编辑 if (listField.Count == 1) { btnEdit.Enabled = true; btnDelete.Enabled = true; } #endregion #region 启用/禁用 var qy = 0; var jy = 0; foreach (DataRowView rowView in dataView) //启用/禁用 { if (rowView["status"].ToString() == DbDic2Enum.SYS_DATA_STATUS_QI) { qy++; } else if (rowView["status"].ToString() == DbDic2Enum.SYS_DATA_STATUS_JIN) { jy++; } } if (qy == 0 && jy != 0) { btnStatus.Enabled = true; btnStatus.Caption = "启用"; btnStatus.Width = 60; } else if (qy != 0 && jy == 0) { btnStatus.Enabled = true; btnStatus.Caption = "禁用"; btnStatus.Width = 60; } else { btnStatus.Enabled = false; btnStatus.Caption = "启用/禁用"; btnStatus.Width = 90; } #endregion } }; #endregion #endregion BindPageData(); }