/*******************************************************************************
* Copyright(c) 2015 DongkeSoft All rights reserved. / Confidential
* 类的信息:
* 1.程序名称:F_MST_1301.cs
* 2.功能描述:装具管理
* 编辑履历:
* 作者 日期 版本 修改内容
* 冯林勇 2022/07/25 1.00 新建
*******************************************************************************/
using Dongke.IBOSS.PRD.Basics.BaseResources;
using Dongke.IBOSS.PRD.Basics.DockPanel;
using Dongke.IBOSS.PRD.Client.CommonModule;
using Dongke.IBOSS.PRD.Client.Controls;
using Dongke.IBOSS.PRD.Client.DataModels;
using Dongke.IBOSS.PRD.WCF.DataModels;
using Dongke.IBOSS.PRD.WCF.Proxys;
using Dongke.WinForm.Controls;
using System;
using System.Data;
using System.Windows.Forms;
namespace Dongke.IBOSS.PRD.Client.PCModule
{
///
/// 装具管理
///
public partial class F_MST_1301 : DockPanelBase
{
#region 成员变量
// 单例模式
private static F_MST_1301 _instance;
// 正在查询
private bool _isSearching = false;
private DataSet DataSource;
private int _selectedRowIndex;
#endregion
#region 构造函数
public F_MST_1301()
{
InitializeComponent();
this.tsbtnAdd.Text = ButtonText.TSBTN_ADD;
this.tsbtnEdit.Text = ButtonText.TSBTN_EDIT;
this.tsbtnAdaptive.Text = ButtonText.TSBTN_ADAPTIVE;
this.tsbtnClose.Text = ButtonText.TSBTN_CLOSE;
this.btnSearch.Text = ButtonText.BTN_SEARCH;
this.btnClearCondition.Text = ButtonText.BTN_CLEARCONDITION;
}
#endregion
#region 单例模式
///
/// 单例模式,防止重复创建窗体
///
public static F_MST_1301 Instance
{
get
{
if (_instance == null)
{
_instance = new F_MST_1301();
}
return _instance;
}
}
#endregion
#region 事件
///
/// 搜索按钮事件
///
///
///
private void btnSearch_Click(object sender, EventArgs e)
{
try
{
this._isSearching = true;
this.dgvEntrucKing.DataSource = null;
this.dgvEntrucKingDetail.DataSource = null;
this._selectedRowIndex = 0;
// 记录当前选中行
int selectRowIndex = this._selectedRowIndex;
this.DataSource = this.GetSearchData();
if (this.DataSource.Tables[0].Rows.Count>0)
{
// 控制明细不查询
this.Tag = false;
this.dgvEntrucKing.DataSource = this.DataSource.Tables[0];
this.dgvEntrucKing.Rows[selectRowIndex].Selected = true;
this.dgvEntrucKing.CurrentCell = this.dgvEntrucKing.Rows[selectRowIndex].Cells["EntruckingCode"];
this.Tag = true;
dgvEntrucKing_SelectionChanged(null, null);
this.dgvEntrucKing.Focus();
}
else
{
// 提示未查找到数据
MessageBox.Show(Messages.MSG_CMN_I002, this.Text,
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
this._isSearching = false;
}
catch (Exception ex)
{
this.btnSearch.Enabled = true;
this.btnClearCondition.Enabled = true;
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 总单选择事件
///
///
///
private void dgvEntrucKing_SelectionChanged(object sender, EventArgs e)
{
try
{
// 在绑定总表时 不查询明细
if (!Convert.ToBoolean(this.Tag)
|| this.dgvEntrucKing.CurrentCell == null)
{
return;
}
// 选中行时查询明细
else
{
this._selectedRowIndex = this.dgvEntrucKing.CurrentCell.RowIndex;
dgvEntrucKingDetail.DataSource = null;
string entruckingCode = this.dgvEntrucKing.Rows[_selectedRowIndex].Cells["EntruckingCode"].Value.ToString();
ClientRequestEntity cre = new ClientRequestEntity();
cre.NameSpace = "F_MST_1301";
cre.Name = "GetEntruckingInfoDetail";
cre.Properties["EntruckingCode"] = entruckingCode;
ServiceResultEntity sre = SystemModuleProxy.Service.DoRequest(cre);
if (sre.Status == Basics.BaseResources.Constant.ServiceResultStatus.Success)
{
if (sre.Data != null && sre.Data.Tables.Count > 0 && sre.Data.Tables[0].Rows.Count > 0)
{
this.dgvEntrucKingDetail.DataSource = sre.Data.Tables[0];
}
else
{
this.dgvEntrucKingDetail.DataSource = null;
}
}
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
finally
{
this.dgvEntrucKing.Enabled = true;
}
}
///
/// 清空按钮事件
///
///
///
private void btnClearCondition_Click(object sender, EventArgs e)
{
this.txtEntruckingCode.Clear();
}
///
/// 新增按钮事件
///
///
///
private void tsbtnAddUser_Click(object sender, EventArgs e)
{
try
{
F_MST_1302 frmFPC1302 = new F_MST_1302(null);
DialogResult dialogresult = frmFPC1302.ShowDialog();
btnSearch_Click(sender, null);
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 编辑按钮事件
///
///
///
private void tsbtnEditUser_Click(object sender, EventArgs e)
{
try
{
if (this.dgvEntrucKing.SelectedRows.Count != 0)
{
string entruckingCode = this.dgvEntrucKing.SelectedRows[0].Cells["EntruckingCode"].Value.ToString();
F_MST_1302 frmFPC1302 = new F_MST_1302(entruckingCode);
DialogResult dialogresult = frmFPC1302.ShowDialog();
btnSearch_Click(sender, null);
}
}
catch (Exception ex)
{
// 对异常进行共通处理
ExceptionManager.HandleEventException(this.ToString(),
System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
}
}
///
/// 窗体加载事件
///
///
///
private void F_MST_1301_Load(object sender, EventArgs e)
{
// 按钮权限控制
FormPermissionManager.FormPermissionControl(this.Name, this,
LogInUserInfo.CurrentUser.CurrentUserEntity.UserRightData,
LogInUserInfo.CurrentUser.CurrentUserEntity.FunctionData);
}
///
/// 自适应列宽
///
///
///
private void tsbtnAdaptive_Click(object sender, EventArgs e)
{
this.dgvEntrucKing.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
}
///
/// 关闭按钮事件
///
///
///
private void tsbtnClose_Click(object sender, EventArgs e)
{
this.Close();
}
///
/// 释放窗体
///
///
///
private void F_MST_1301_FormClosed(object sender, FormClosedEventArgs e)
{
_instance = null;
}
#endregion
#region 私有方法
///
/// 根据界面查询条件获取数据集
///
private DataSet GetSearchData()
{
try
{
ClientRequestEntity cre = new ClientRequestEntity();
cre.NameSpace = "F_MST_1301";
cre.Name = "GetEntruckingInfo";
cre.Properties["EntruckingCode"] = txtEntruckingCode.Text;
ServiceResultEntity sre = SystemModuleProxy.Service.DoRequest(cre);
if (sre.Status == Basics.BaseResources.Constant.ServiceResultStatus.Success)
{
return sre.Data;
}
return null;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
}
}