public override PageGridData<SellOrder> GetPageData(PageDataOptions options)
{
System.Linq.Expressions.Expression<Func<SellOrder, bool>> orFilter = null;
QueryRelativeList = (List<SearchParameters> parameters) =>
{
foreach (var item in parameters)
{
if (!string.IsNullOrEmpty(item.Value))
{
if (orFilter == null && (item.Name == "TranNo" || item.Name == "SellNo")) { orFilter = x => false; }
string value = item.Value;
if (item.Name == "TranNo")
{
orFilter = orFilter.Or(x => x.TranNo.Contains(value));
item.Value = null;
}
else if (item.Name == "SellNo")
{
orFilter = orFilter.Or(x => x.SellNo == value);
item.Value = null;
}
}
}
};
QueryRelativeExpression = (IQueryable<SellOrder> queryable) =>
{
if (orFilter != null)
{
queryable = queryable.Where(orFilter);
}
return queryable;
};
return base.GetPageData(options);
}
public override PageGridData<SellOrder> GetPageData(PageDataOptions options)
{
QueryRelativeList = (List<SearchParameters> parameters) =>
{
string sql = null;
foreach (var item in parameters)
{
if (!string.IsNullOrEmpty(item.Value))
{
if (sql == null)
{
sql = "where 1=2";
}
string value = item.Value;
item.Value = null;
if (item.Name == "TranNo")
{
sql += $" or TranNo='{value}'";
item.Value = null;
}
else if (item.Name == "SellNo")
{
sql += $" or SellNo='{value}'";
}
}
}
QuerySql = "select * from sellorder " + sql;
};
return base.GetPageData(options);
}