/*******************************************************************************
* Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
* 类的信息:
* 1.程序名称:F_TAT_0601.cs
* 2.功能描述:行政考核一览
* 编辑履历:
* 作者 日期 版本 修改内容
* 宋扬 2014/12/11 1.00 新建
*******************************************************************************/
using System;
using System.Data;
using System.Windows.Forms;
using Dongke.IBOSS.PRD.Basics.BaseResources;
using Dongke.IBOSS.PRD.Basics.DockPanel;
using Dongke.IBOSS.PRD.Client.CommonModule;
using Dongke.IBOSS.PRD.WCF.DataModels;
using Dongke.IBOSS.PRD.WCF.Proxys;
using Dongke.IBOSS.PRD.WCF.Proxys.TATModuleService;
namespace Dongke.IBOSS.PRD.Client.TATModule
{
public partial class F_TAT_0601 : DockPanelBase
{
#region 成员变量
// 单例模式
private static F_TAT_0601 _instance;
// 检索用加载条件实体
private AdministrationEntity _administrationEntity;
#endregion
#region 构造函数
///
/// 窗体构造函数
///
private F_TAT_0601()
{
InitializeComponent();
// 窗体显示的Title
this.Text = FormTitles.F_TAT_0601;
}
#endregion
#region 单例模式
///
/// 单例模式
///
public static F_TAT_0601 Instance
{
get
{
if (_instance == null)
{
_instance = new F_TAT_0601();
}
return _instance;
}
}
#endregion
#region 事件处理
///
/// 窗体加载
///
///
///
private void F_TAT_0601_Load(object sender, EventArgs e)
{
try
{
this.dgvAdministration.AutoGenerateColumns = false;
//绑定页面各查询条件的数据源
this.BindSelectData();
//按钮变灰
ButtonEnabled();
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 窗体关闭事件
///
///
///
private void F_TAT_0601_FormClosed(object sender, FormClosedEventArgs e)
{
_instance = null;
}
///
/// 关闭按钮
///
///
///
private void tsbtnClose_Click(object sender, EventArgs e)
{
this.Close();
}
///
/// 自动适应列宽
///
///
///
private void tsbtnAdaptive_Click(object sender, EventArgs e)
{
this.dgvAdministration.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
}
///
/// 查询按钮事件
///
///
///
private void btnSearch_Click(object sender, EventArgs e)
{
try
{
//获取查询条件
BindSelectedData();
ServiceResultEntity srEntity = (ServiceResultEntity)DoAsync(new AsyncMethod(() =>
{
return TATModuleProxy.Service.GetAdministration(_administrationEntity);
}));
if (srEntity.Data != null)
{
if (srEntity.Data.Tables[Constant.INT_IS_ZERO].Rows.Count <= Constant.INT_IS_ZERO)
{
// 提示未查找到数据
MessageBox.Show(Messages.MSG_CMN_I002, this.Text,
MessageBoxButtons.OK, MessageBoxIcon.Information);
//清空数据
this.dgvAdministration.DataSource = null;
//按钮变灰
ButtonEnabled();
}
else
{
//绑定值
this.dgvAdministration.DataSource = srEntity.Data.Tables[Constant.INT_IS_ZERO];
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 清空条件
///
///
///
private void btnClearCondition_Click(object sender, EventArgs e)
{
this.txtAdministrationName.Text = string.Empty;
this.lbxAuditStatus.Text = string.Empty;
this.txtRemarks.Text = string.Empty;
this.cbStartTime.Checked = false;
this.cbEndTime.Checked = false;
this.lbxSalaryType.Text = string.Empty;
this.lbxAdministrationType.Text = string.Empty;
}
///
/// 新建信息
///
///
///
private void tsbtnAdd_Click(object sender, EventArgs e)
{
try
{
//以新建模式打开信息窗体
F_TAT_0602 frmTAT0602 = new F_TAT_0602(Constant.FormMode.Add, Constant.INT_IS_ZERO);
DialogResult dialogResult = frmTAT0602.ShowDialog();
//操作成功后刷新数据源
if (dialogResult == DialogResult.OK)
{
//清空数据
this.dgvAdministration.DataSource = null;
BindSelectedData();//获取条件值
ServiceResultEntity srEntity = (ServiceResultEntity)DoAsync(new AsyncMethod(() =>
{
return TATModuleProxy.Service.GetAdministration(this._administrationEntity);
}));
if (srEntity.Data != null
&& srEntity.Data.Tables[Constant.INT_IS_ZERO].Rows.Count > Constant.INT_IS_ZERO)
{
//绑定值
this.dgvAdministration.DataSource = srEntity.Data.Tables[Constant.INT_IS_ZERO];
}
//服务实体共通处理
ServiceResultEntityManager.HandleServiceResultEntity(srEntity, this.Text);
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 复制添加信息
///
///
///
private void tsbtnCopy_Click(object sender, EventArgs e)
{
try
{
DataGridViewRow currentRow = this.dgvAdministration.CurrentRow;
if (currentRow != null)
{
//获取需要添加明细的信息ID
int entityId = Convert.ToInt32(currentRow.Cells["AdministrationID"].Value);
//以复制模式打开信息窗体
F_TAT_0602 frmTAT0602 = new F_TAT_0602(Constant.FormMode.CopyAndAdd, entityId);
DialogResult dialogResult = frmTAT0602.ShowDialog();
//操作成功后刷新数据源
if (dialogResult == DialogResult.OK)
{
BindSelectedData();//获取条件值
this.dgvAdministration.DataSource = null;
ServiceResultEntity srEntity = (ServiceResultEntity)DoAsync(new AsyncMethod(() =>
{
return TATModuleProxy.Service.GetAdministration(this._administrationEntity);
}));
if (srEntity.Data != null
&& srEntity.Data.Tables[Constant.INT_IS_ZERO].Rows.Count > Constant.INT_IS_ZERO)
{
//绑定值
this.dgvAdministration.DataSource = srEntity.Data.Tables[Constant.INT_IS_ZERO];
}
//服务实体共通处理
ServiceResultEntityManager.HandleServiceResultEntity(srEntity, this.Text);
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 编辑信息
///
///
///
private void tsbtnEdit_Click(object sender, EventArgs e)
{
try
{
DataGridViewRow currentRow = this.dgvAdministration.CurrentRow;
if (currentRow != null)
{
//获取需要添加明细的信息ID
int entityId = Convert.ToInt32(currentRow.Cells["AdministrationID"].Value);
//以复制模式打开信息窗体
F_TAT_0602 frmTAT0602 = new F_TAT_0602(Constant.FormMode.Edit, entityId);
DialogResult dialogResult = frmTAT0602.ShowDialog();
//操作成功后刷新数据源
if (dialogResult == DialogResult.OK)
{
BindSelectedData();//获取条件值
this.dgvAdministration.DataSource = null;
ServiceResultEntity srEntity = (ServiceResultEntity)DoAsync(new AsyncMethod(() =>
{
return TATModuleProxy.Service.GetAdministration(this._administrationEntity);
}));
if (srEntity.Data != null
&& srEntity.Data.Tables[Constant.INT_IS_ZERO].Rows.Count > Constant.INT_IS_ZERO)
{
//绑定值
this.dgvAdministration.DataSource = srEntity.Data.Tables[Constant.INT_IS_ZERO];
}
else
{
//按钮变灰
ButtonEnabled();
}
//服务实体共通处理
ServiceResultEntityManager.HandleServiceResultEntity(srEntity, this.Text);
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 操作明细
///
///
///
private void tsbtnDetail_Click(object sender, EventArgs e)
{
try
{
DataGridViewRow currentRow = this.dgvAdministration.CurrentRow;
if (currentRow != null)
{
//获取需要添加明细的信息ID
int entityId = Convert.ToInt32(currentRow.Cells["AdministrationID"].Value);
//以复制模式打开信息窗体
F_TAT_0603 frmTAT0603;
if (Convert.ToInt32(currentRow.Cells["colAuditStatus"].Value)
== Convert.ToInt32(Constant.AuditStatus.Agree))
{
frmTAT0603 = new F_TAT_0603(Constant.FormMode.Display, entityId);
}
else
{
frmTAT0603 = new F_TAT_0603(Constant.FormMode.Edit, entityId);
}
DialogResult dialogResult = frmTAT0603.ShowDialog();
//操作成功后刷新数据源
if (dialogResult == DialogResult.OK)
{
BindSelectedData();//获取条件值
this.dgvAdministration.DataSource = null;
ServiceResultEntity srEntity = (ServiceResultEntity)DoAsync(new AsyncMethod(() =>
{
return TATModuleProxy.Service.GetAdministration(this._administrationEntity);
}));
if (srEntity.Data != null
&& srEntity.Data.Tables[Constant.INT_IS_ZERO].Rows.Count > Constant.INT_IS_ZERO)
{
//绑定值
this.dgvAdministration.DataSource = srEntity.Data.Tables[Constant.INT_IS_ZERO];
}
//服务实体共通处理
ServiceResultEntityManager.HandleServiceResultEntity(srEntity, this.Text);
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 审核信息
///
///
///
private void tsbtnApprover_Click(object sender, EventArgs e)
{
try
{
DataGridViewRow currentRow = this.dgvAdministration.CurrentRow;
if (currentRow != null)
{
//获取需要添加明细的信息ID
int entityId = Convert.ToInt32(currentRow.Cells["AdministrationID"].Value);
//以复制模式打开信息窗体
F_TAT_0602 frmTAT0602 = new F_TAT_0602(Constant.FormMode.Display, entityId);
DialogResult dialogResult = frmTAT0602.ShowDialog();
//操作成功后刷新数据源
if (dialogResult == DialogResult.OK)
{
BindSelectedData();//获取条件值
this.dgvAdministration.DataSource = null;
ServiceResultEntity srEntity = (ServiceResultEntity)DoAsync(new AsyncMethod(() =>
{
return TATModuleProxy.Service.GetAdministration(this._administrationEntity);
}));
if (srEntity.Data != null
&& srEntity.Data.Tables[Constant.INT_IS_ZERO].Rows.Count > Constant.INT_IS_ZERO)
{
//绑定值
this.dgvAdministration.DataSource = srEntity.Data.Tables[Constant.INT_IS_ZERO];
}
else
{
//按钮变灰
ButtonEnabled();
}
//服务实体共通处理
ServiceResultEntityManager.HandleServiceResultEntity(srEntity, this.Text);
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 停用信息
///
///
///
private void tsbtnDisable_Click(object sender, EventArgs e)
{
try
{
DataGridViewRow currentRow = this.dgvAdministration.CurrentRow;
if (currentRow != null)
{
AdministrationEntity dfEntity = new AdministrationEntity();
//获取ID以及时间戳
dfEntity.AdministrationID = Convert.ToInt32(currentRow.Cells["AdministrationID"].Value);
dfEntity.OPTimeStamp = Convert.ToDateTime(currentRow.Cells["colOPTimeStamp"].Value);
ServiceResultEntity srEntity = (ServiceResultEntity)DoAsync(() =>
{
return TATModuleProxy.Service.StopAdministration(dfEntity);
});
//服务实体共通处理
ServiceResultEntityManager.HandleServiceResultEntity(srEntity, this.Text);
//成功后刷新数据源
if (srEntity.Status == Constant.ServiceResultStatus.Success)
{
this.dgvAdministration.DataSource = null;
BindSelectedData();//获取条件值
srEntity = (ServiceResultEntity)DoAsync(new AsyncMethod(() =>
{
return TATModuleProxy.Service.GetAdministration(this._administrationEntity);
}));
if (srEntity.Data != null
&& srEntity.Data.Tables[Constant.INT_IS_ZERO].Rows.Count > Constant.INT_IS_ZERO)
{
//绑定值
this.dgvAdministration.DataSource = srEntity.Data.Tables[Constant.INT_IS_ZERO];
}
else
{
//按钮变灰
ButtonEnabled();
}
//服务实体共通处理
ServiceResultEntityManager.HandleServiceResultEntity(srEntity, this.Text);
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 开始时间条件有效性更改
///
///
///
private void cbStartTime_CheckedChanged(object sender, EventArgs e)
{
this.dtpStartTimeBetween.Enabled = this.cbStartTime.Checked;
this.dtpStartTimeAfter.Enabled = this.cbStartTime.Checked;
}
///
/// 结束时间条件有效性更改
///
///
///
private void cbEndTime_CheckedChanged(object sender, EventArgs e)
{
this.dtpEndTimeBetween.Enabled = this.cbEndTime.Checked;
this.dtpEndTimeAfter.Enabled = this.cbEndTime.Checked;
}
///
/// 选择信息后,工具条按钮的变化
///
///
///
private void dgvQuality_SelectionChanged(object sender, EventArgs e)
{
DataGridViewRow gvrNow = this.dgvAdministration.CurrentRow;
if (gvrNow != null)
{
//如果是待审核就可以进行修改以及审核以及停用
if (Convert.ToInt32(gvrNow.Cells["colAuditStatus"].Value)
== Convert.ToInt32(Constant.AuditStatus.Pending))
{
this.tsbtnDetail.Enabled = true;
this.tsbtnEdit.Enabled = true;
this.tsbtnApprover.Enabled = true;
this.tsbtnDisable.Enabled = true;
this.tsbtnCopy.Enabled = true;
}
else //否则不可以
{
//如果是审批通过的则不可以删除
if (Convert.ToInt32(gvrNow.Cells["colAuditStatus"].Value)
== Convert.ToInt32(Constant.AuditStatus.Agree))
{
this.tsbtnDisable.Enabled = false;
}
else
{
this.tsbtnDisable.Enabled = true;
}
this.tsbtnEdit.Enabled = false;
this.tsbtnApprover.Enabled = false;
this.tsbtnDetail.Enabled = true;
}
}
}
#endregion
#region 私有方法/函数
///
/// 绑定检索条件数据
///
private void BindSelectData()
{
try
{
//绑定审核状态
DataSet dsStatus = SystemModuleProxy.Service.GetAuditStatus();
this.lbxAuditStatus.DataSource = dsStatus.Tables[Constant.INT_IS_ZERO];
this.lbxAuditStatus.ValueMember = "AuditStatusID";
this.lbxAuditStatus.DisplayMember = "AuditStatusName";
this.lbxAuditStatus.Text = "";
//绑定策略类型
DataTable dtSalaryType = new DataTable();
dtSalaryType.Columns.Add("SalaryTypeValue");
dtSalaryType.Columns.Add("SalaryTypeName");
Type SalaryTypeEnum = typeof(Constant.SalaryType);
Array SalaryTypeArray = Enum.GetValues(SalaryTypeEnum);
for (int i = 0; i < Constant.SalaryTypeName.Length; i++)
{
dtSalaryType.Rows.Add(Convert.ToInt32(SalaryTypeArray.GetValue(i)), Constant.SalaryTypeName[i]);
}
this.lbxSalaryType.DisplayMember = "SalaryTypeName";
this.lbxSalaryType.ValueMember = "SalaryTypeValue";
this.lbxSalaryType.DataSource = dtSalaryType;
this.lbxSalaryType.Text = "";
//获取行政信息
DataSet dsAdministrationType = (DataSet)DoAsync(new AsyncMethod(() =>
{
return SystemModuleProxy.Service.GetDictionaryData(0, "ASE001");
}));
this.lbxAdministrationType.DataSource = dsAdministrationType.Tables[Constant.INT_IS_ZERO];
this.lbxAdministrationType.ValueMember = "Dictionaryid";
this.lbxAdministrationType.DisplayMember = "Dictionaryvalue";
this.lbxAdministrationType.Text = string.Empty;
}
catch (Exception ex)
{
throw ex;
}
}
///
/// 获取页面的输入值
///
private void BindSelectedData()
{
this._administrationEntity = new AdministrationEntity();
_administrationEntity.AdministrationName = this.txtAdministrationName.Text.Trim();
_administrationEntity.Remarks = this.txtRemarks.Text.Trim();
if (this.lbxSalaryType.SelectedValue != null)
{
_administrationEntity.SalaryType = Convert.ToInt32(this.lbxSalaryType.SelectedValue);
}
if (this.lbxAuditStatus.SelectedValue != null)
{
_administrationEntity.AuditStatus = Convert.ToInt32(this.lbxAuditStatus.SelectedValue);
}
if (this.lbxAdministrationType.SelectedValue != null)
{
this._administrationEntity.AdministrationType = Convert.ToInt32(this.lbxAdministrationType.SelectedValue);
}
if (this.cbStartTime.Checked)
{
string beginAccountMonthStart = this.dtpStartTimeBetween.Value.ToString("yyyy-MM-dd") + " 0:0:0";
_administrationEntity.BeginAccountMonthStart = Convert.ToDateTime(beginAccountMonthStart);
string beginAccountMonthEnd = this.dtpEndTimeBetween.Value.ToString("yyyy-MM-dd") + " 23:59:59";
_administrationEntity.BeginAccountMonthEnd = Convert.ToDateTime(beginAccountMonthEnd);
}
if (this.cbEndTime.Checked)
{
string endAccountMonthStart = this.dtpStartTimeAfter.Value.ToString("yyyy-MM-dd") + " 0:0:0";
_administrationEntity.EndAccountMonthStart = Convert.ToDateTime(endAccountMonthStart);
string endAccountMonthEnd = this.dtpEndTimeAfter.Value.ToString("yyyy-MM-dd") + " 23:59:59";
_administrationEntity.EndAccountMonthEnd = Convert.ToDateTime(endAccountMonthEnd);
}
}
///
/// 按钮变灰
///
private void ButtonEnabled()
{
this.tsbtnEdit.Enabled = false;
this.tsbtnDetail.Enabled = false;
this.tsbtnApprover.Enabled = false;
this.tsbtnDisable.Enabled = false;
this.tsbtnCopy.Enabled = false;
}
#endregion
private void F_TAT_0601_FormClosed_1(object sender, FormClosedEventArgs e)
{
_instance = null;
}
}
}