简单账表的过滤界面,组织字段不能输入空值怎么解决?
过滤表单的插件:
public class PackingReportFilter : AbstractCommonFilterPlugIn
{
#region 界面显示时,初始组织范围
///
/// 界面显示时,初始组织范围
///
///
public override void AfterBindData(EventArgs e)
{
try
{
InitOrgInfo();
}
catch (Exception ex)
{
this.View.ShowMessage(ex.Message, MessageBoxOptions.OK, "提示", MessageBoxType.Notice);
}
}
#endregion
#region 初始组织范围
///
/// 初始组织范围
///
private void InitOrgInfo()
{
Context ctx = null;
object objValue = null;
List
try
{
ctx = this.Context;
if (!base.Context.IsMultiOrg)
{
this.View.StyleManager.SetEnabled("FORGID", null, false);
}
else
{
organization = GetUserAllOrganizationEnumitem(ctx);
this.View.GetFieldEditor
objValue = this.View.Model.GetValue("FORGID");
if (objValue.IsNullOrEmpty())
{
this.View.Model.SetValue("FORGID", ctx.CurrentOrganizationInfo.ID);
}
}
}
catch (Exception ex)
{
this.View.Model.SetValue("FORGID", null);
throw ex;
}
}
#endregion
#region 获取用户所有权限组织
///
//获取用户所有权限组织
///
///
///
private List
{
List
List
try
{
lstUserOrg = PermissionServiceHelper.GetUserOrg(ctx);
foreach (Organization orgCur in lstUserOrg)
{
EnumItem item = new EnumItem(new DynamicObject(EnumItem.EnumItemType))
{
EnumId = orgCur.Id.ToString(),
Value = orgCur.Id.ToString(),
Caption = new LocaleValue(orgCur.Name, ctx.UserLocale.LCID)
};
lstEnumUserOrg.Add(item);
}
return lstEnumUserOrg;
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
#region 必录数据验证
///
/// 必录数据验证
///
///
///
protected virtual string EnterValidate(ButtonClickEventArgs e)
{
string strResult = string.Empty, strValue = string.Empty;
object objValue = null;
try
{
objValue = this.Model.GetValue("FORGID");
strValue = (objValue == null ? string.Empty : objValue.ToString());
if (string.IsNullOrEmpty(strValue))
{
strResult = "请先选择组织";
}
return strResult;
}
catch (Exception ex)
{
strResult = ex.Message;
return strResult;
}
}
#endregion
}
推荐阅读