#region
|
|
using System;
|
using System.Data;
|
using CSFrameworkV5.Business;
|
using CSFrameworkV5.Business.BLL_Permission;
|
using CSFrameworkV5.CodeGeneratorCore;
|
using CSFrameworkV5.Core;
|
using CSFrameworkV5.Library.CommonClass;
|
using CSFrameworkV5.Library.UIForm;
|
using CSFrameworkV5.Models;
|
|
#endregion
|
|
namespace CSFrameworkV5.Library.PermissionForms
|
{
|
public partial class frmGroupOrganization_Editor : frmBaseUI
|
{
|
private bllGroup _BLL = new bllGroup();
|
private DataTable _DataSource;
|
private string _RowID = ""; //主键值,当前组织架构的主键值。若是新增记录,返回新的GUID值。
|
|
private bool _SaveOK; //是否保存成功
|
|
//私有构造器
|
private frmGroupOrganization_Editor()
|
{
|
InitializeComponent();
|
}
|
|
private void btnClose_Click(object sender, EventArgs e)
|
{
|
Close();
|
}
|
|
private void btnSave_Click(object sender, EventArgs e)
|
{
|
//重要! 必须结束当前记录的编辑状态
|
_DataSource.Rows[0].EndEdit();
|
|
var dtTmp = _DataSource.GetChanges();
|
dtTmp.Rows[0][tb_MyGroup.LastUpdateDate] = DateTime.Now;
|
dtTmp.Rows[0][tb_MyGroup.LastUpdatedBy] =
|
Loginer.CurrentUser.Account;
|
//dtTmp.Rows[0][tb_MyGroup.ParentGroupCode] = txtParentGroupCode.EditValue;
|
|
_SaveOK = _BLL.Update(dtTmp);
|
|
if (_SaveOK)
|
{
|
_RowID = dtTmp.Rows[0][tb_MyGroup.RowID].ToStringEx();
|
|
MsgEx.ShowInformation("保存成功!");
|
Close();
|
}
|
}
|
|
/// <summary>
|
/// 打开编辑窗体
|
/// </summary>
|
/// <param name="rowID">当前组织架构的主键值。若是新增记录,返回新的GUID值</param>
|
/// <returns>是否保存成功</returns>
|
public static bool Execute(ref string rowID)
|
{
|
var form = new frmGroupOrganization_Editor();
|
form.InitEditor(rowID);
|
form.ShowDialog();
|
rowID = form._RowID;
|
return form._SaveOK;
|
}
|
|
private void frmGroupOrganization_Editor_Load(object sender,
|
EventArgs e)
|
{
|
}
|
|
private void InitEditor(string rowID)
|
{
|
//记录主键为空,新增组织架构
|
if (string.IsNullOrEmpty(rowID))
|
{
|
//获取空数据源
|
_DataSource = _BLL.GetDataByKey("-");
|
|
//添加一条记录,并设置主键值RowID
|
_DataSource.Rows.Add(_DataSource.NewRow());
|
_DataSource.Rows[0][tb_MyGroup.RowID] =
|
Guid.NewGuid().ToStringEx().Replace("-", "");
|
_DataSource.Rows[0][tb_MyGroup.DataSetID] =
|
Loginer.CurrentUser.DBID;
|
}
|
else //编辑组织架构
|
{
|
//绑定数据源
|
_DataSource = _BLL.GetDataByKey(rowID);
|
|
txtGroupCode.Enabled = false;
|
txtParentGroupCode.Enabled = false;
|
}
|
|
var attrs = DataDictCache.Cache.CustomerAttributes;
|
txtAttributeCodes.BindingDataSource(attrs, "AttributeCode",
|
"NativeName");
|
|
DataBinderTools.BoundUser(txtOwner1);
|
DataBinderTools.BoundUser(txtOwner2);
|
DataBinderTools.BoundUser(txtLastUpdatedBy);
|
DataBinderTools.BoundOrganization(txtParentGroupCode, imageList1);
|
DataBinderTools.BoundCheckEdit(txtIsVisible);
|
|
//绑定输入框数据源
|
CommonTools.DoBindingEditorPanel(pcEditor, _DataSource);
|
|
//在此可绑定其它自定义的输入框,参考frmCustomer的DoBindingSummaryEditor方法
|
DataBinder.BindingControl(txtAttributeCodes, _DataSource,
|
tb_MyGroup.AttributeCodes, "EditValue");
|
DataBinder.BindingControl(txtParentGroupCode, _DataSource,
|
tb_MyGroup.ParentGroupCode, "EditValue");
|
DataBinder.BindingCheckEdit(txtIsVisible, _DataSource,
|
tb_MyGroup.IsVisible);
|
|
//CommonTools.SetEditorBindingValue(txtParentGroupCode, _DataSource.Rows[0][tb_MyGroup.ParentGroupCode], true);
|
|
btnClose.Focus();
|
}
|
|
//检查主表数据完整性
|
protected bool ValidatingData()
|
{
|
if (ConvertEx.ToString(txtGroupCode.EditValue).Trim() ==
|
string.Empty)
|
{
|
MsgEx.ShowWaring("组织编号不能为空!");
|
txtGroupCode.Focus();
|
return false;
|
}
|
|
if (ConvertEx.ToString(txtGroupName.EditValue).Trim() ==
|
string.Empty)
|
{
|
MsgEx.ShowWaring("组织名称不能为空!");
|
txtGroupName.Focus();
|
return false;
|
}
|
|
if (ConvertEx.ToString(txtAttributeCodes.EditValue).Trim() ==
|
string.Empty)
|
{
|
MsgEx.ShowWaring("类别不能为空!");
|
txtAttributeCodes.Focus();
|
return false;
|
}
|
|
if (ConvertEx.ToString(txtOwner1.EditValue).Trim() == string.Empty)
|
{
|
MsgEx.ShowWaring("主管不能为空!");
|
txtOwner1.Focus();
|
return false;
|
}
|
|
return true;
|
}
|
}
|
}
|