using BaseOUDAL;
using NPOI.SS.Formula.Functions;
using YLErp.Model;
namespace YLErp.BLL
{
///
///
///
public class EodTradePositionBLL
{
///
/// 查询eod_trade_position
///
public SearchListResult SearchList(EodTradePositionReq req) where T : EodTradePosition
{
var db = new YLContext();
var query = from source in db.Set() select source;
if (req.ValueDateStart != DateTime.MinValue)
{
query = query.Where(d => d.ValueDate >= req.ValueDateStart);
}
if (req.ValueDateEnd != DateTime.MinValue)
{
var ValueDateTemp = req.ValueDateEnd.AddDays(1);
query = query.Where(d => d.ValueDate < ValueDateTemp);
}
if (req.OptDateStart != DateTime.MinValue)
{
query = query.Where(d => d.OptDate >= req.OptDateStart);
}
if (req.OptDateEnd != DateTime.MinValue)
{
var OptDateTemp = req.OptDateEnd.AddDays(1);
query = query.Where(d => d.OptDate < OptDateTemp);
}
if (req.OptId != null)
{
query = query.Where(d => d.OptId == req.OptId);
}
if (!string.IsNullOrEmpty(req.OptName))
{
query = query.Where(d => d.OptName.Contains(req.OptName));
}
if (string.IsNullOrEmpty(req.sidx))
{
req.sidx = "id";
req.sord = "desc";
}
return query.ToSearchList(req);
}
///
/// 查询eod_trade_position_extend
///
public SearchListResult SearchList_extend(EodTradePositionReq req)
{
var db = new YLContext();
var query = from source in db.eod_trade_position_extend select source;
if (req.ValueDateStart != DateTime.MinValue)
{
query = query.Where(d => d.ValueDate >= req.ValueDateStart);
}
if (req.ValueDateEnd != DateTime.MinValue)
{
var ValueDateTemp = req.ValueDateEnd.AddDays(1);
query = query.Where(d => d.ValueDate < ValueDateTemp);
}
if (req.OptDateStart != DateTime.MinValue)
{
query = query.Where(d => d.OptDate >= req.OptDateStart);
}
if (req.OptDateEnd != DateTime.MinValue)
{
var OptDateTemp = req.OptDateEnd.AddDays(1);
query = query.Where(d => d.OptDate < OptDateTemp);
}
if (req.OptId != null)
{
query = query.Where(d => d.OptId == req.OptId);
}
if (!string.IsNullOrEmpty(req.OptName))
{
query = query.Where(d => d.OptName.Contains(req.OptName));
}
if (string.IsNullOrEmpty(req.sidx))
{
req.sidx = "id";
req.sord = "desc";
}
return query.ToSearchList(req);
}
}
}