/*******************************************************************************
* Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
* 类的信息:
* 1.程序名称:F_Organization.cs
* 2.功能描述:组织机构Search查询页面
* 编辑履历:
* 作者 日期 版本 修改内容
* 付斌 2018/07/23 1.00 新建
*******************************************************************************/
using System;
using System.Windows.Forms;
using Dongke.IBOSS.PRD.Basics.BaseResources;
using Dongke.IBOSS.PRD.Client.CommonModule;
using Dongke.IBOSS.PRD.WCF.DataModels;
using Dongke.IBOSS.PRD.WCF.Proxys;
namespace Dongke.IBOSS.PRD.Client.Controls.SearchBox
{
///
/// 组织机构
///
public partial class F_Organization : SearchBoxForm
{
#region 成员变量
private bool _isOnlyDisplayEnd;
#endregion
#region 构造函数
///
/// 查询窗体
///
public F_Organization()
{
InitializeComponent();
}
#endregion
#region 公有方法
///
/// 设置查询条件
///
public override void SetConditions(params object[] values)
{
if (values.Length > 1)
{
//this.txtOrganizationName.Text = values[0].ToString();
_isOnlyDisplayEnd = Convert.ToBoolean(values[1] + "");
}
}
///
/// 清除查询条件
///
public override void ClearConditions()
{
this.txtOrganizationCode.Clear();
this.txtOrganizationName.Clear();
}
#endregion
#region 保护方法
///
/// 初始化Form
///
protected override void InitForm()
{
DataGridViewTextBoxColumn OrganizationID = new DataGridViewTextBoxColumn();
OrganizationID.Name = "OrganizationID";
OrganizationID.HeaderText = "组织机构ID";
OrganizationID.ReadOnly = true;
OrganizationID.Visible = false;
OrganizationID.SortMode = DataGridViewColumnSortMode.Automatic;
OrganizationID.DataPropertyName = "OrganizationID";
OrganizationID.DefaultCellStyle = new DataGridViewCellStyle();
DataGridViewTextBoxColumn OrganizationCode = new DataGridViewTextBoxColumn();
OrganizationCode.Name = "OrganizationCode";
OrganizationCode.HeaderText = "组织机构编码";
OrganizationCode.ReadOnly = true;
OrganizationCode.SortMode = DataGridViewColumnSortMode.Automatic;
OrganizationCode.DataPropertyName = "OrganizationCode";
DataGridViewTextBoxColumn OrganizationName = new DataGridViewTextBoxColumn();
OrganizationName.Name = "OrganizationName";
OrganizationName.HeaderText = "组织机构名称";
OrganizationName.ReadOnly = true;
OrganizationName.SortMode = DataGridViewColumnSortMode.Automatic;
OrganizationName.DataPropertyName = "OrganizationName";
DataGridViewTextBoxColumn OrganizationFullName = new DataGridViewTextBoxColumn();
OrganizationFullName.Name = "OrganizationFullName";
OrganizationFullName.HeaderText = "组织机构全称";
OrganizationFullName.ReadOnly = true;
OrganizationFullName.SortMode = DataGridViewColumnSortMode.Automatic;
OrganizationFullName.DataPropertyName = "OrganizationFullName";
this.dgvSelected.Columns.AddRange(OrganizationID, OrganizationCode, OrganizationName, OrganizationFullName);
base.InitForm();
}
///
/// 查询数据。
///
/// 验证通过true,其他false
protected override bool QueryDataFromOther()
{
ServiceResultEntity sre = this.GetDataTable();
if (sre.Data != null && sre.Data.Tables.Count > 0 && sre.Data.Tables[0].Rows.Count > 0)
{
this.dgvSelected.DataSource = sre.Data.Tables[0];
this.dgvSelected.Rows[0].Selected = true;
return true;
}
else
{
return false;
}
}
#endregion
#region 私有方法
private ServiceResultEntity GetDataTable()
{
try
{
// 异步处理,获取系统参数信息
ClientRequestEntity cre = new ClientRequestEntity();
cre.NameSpace = "F_Organization";
cre.Name = "GetOrganization";
cre.Properties["OrganizationCode"] = this.txtOrganizationCode.Text.Trim();
cre.Properties["OrganizationName"] = this.txtOrganizationName.Text.Trim();
cre.Properties["IsLeafNode"] = _isOnlyDisplayEnd ? "1" : "";
// 调用服务器端获取数据集(DataSet)DoAsync(new BaseAsyncMethod(GetSystemData));
ServiceResultEntity sre = null;
DoAsync(() => { return CommonModuleProxy.Service.DoRequest(cre); }, out sre);
if (!(sre.Status == Constant.ServiceResultStatus.Success))
{
//StateMessageClass.GetErrorMessageByStatus(this, sre.Status);
// 提示未查找到数据
MessageBox.Show(Messages.MSG_CMN_I002, this.Text,
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
return sre;
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
return null;
}
}
#endregion
}
}