176 lines
5.5 KiB
C#
176 lines
5.5 KiB
C#
using BaseOUDAL;
|
|
|
|
namespace YLErp.Modules.ClientModule
|
|
{
|
|
/// <summary>
|
|
/// 客户定价参数服务
|
|
/// </summary>
|
|
public class ClientPricingParamService : YLBaseService
|
|
{
|
|
public ClientPricingParamService(OptUserInfo userInfo) : base(userInfo)
|
|
{
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取有效的客户报价参数
|
|
/// </summary>
|
|
public static ClientPricingParam GetPricingParam(DateTime startdate, DateTime exercisedate)
|
|
{
|
|
return DbContextFactory.GetYLDbContext().client_pricing_param.FirstOrDefault(c => c.option_startdate == startdate && c.option_exercisedate == exercisedate && c.validstate != "InValid");
|
|
}
|
|
|
|
/// <summary>
|
|
/// 查询client_pricing_param
|
|
/// </summary>
|
|
public SearchListResult<ClientPricingParam> SearchList(ClientPricingParamReq req)
|
|
{
|
|
var query = DbContext.client_pricing_param.AsNoTracking().AsQueryable();
|
|
|
|
if (req.option_startdateStart != DateTime.MinValue)
|
|
{
|
|
query = query.Where(d => d.option_startdate >= req.option_startdateStart);
|
|
}
|
|
|
|
if (req.option_startdateEnd != DateTime.MinValue)
|
|
{
|
|
DateTime option_startdateTemp = req.option_startdateEnd.AddDays(1);
|
|
query = query.Where(d => d.option_startdate < option_startdateTemp);
|
|
}
|
|
if (req.option_exercisedateStart != DateTime.MinValue)
|
|
{
|
|
query = query.Where(d => d.option_exercisedate >= req.option_exercisedateStart);
|
|
}
|
|
|
|
if (req.option_exercisedateEnd != DateTime.MinValue)
|
|
{
|
|
DateTime option_exercisedateTemp = req.option_exercisedateEnd.AddDays(1);
|
|
query = query.Where(d => d.option_exercisedate < option_exercisedateTemp);
|
|
}
|
|
if (req.bid_tuning_day != null)
|
|
{
|
|
query = query.Where(d => d.bid_tuning_day == req.bid_tuning_day);
|
|
}
|
|
|
|
if (req.ask_tuning_day != null)
|
|
{
|
|
query = query.Where(d => d.ask_tuning_day == req.ask_tuning_day);
|
|
}
|
|
|
|
if (req.createdateStart != DateTime.MinValue)
|
|
{
|
|
query = query.Where(d => d.createdate >= req.createdateStart);
|
|
}
|
|
|
|
if (req.createdateEnd != DateTime.MinValue)
|
|
{
|
|
DateTime createdateTemp = req.createdateEnd.AddDays(1);
|
|
query = query.Where(d => d.createdate < createdateTemp);
|
|
}
|
|
if (!string.IsNullOrEmpty(req.optname))
|
|
{
|
|
query = query.Where(d => d.optname.Contains(req.optname));
|
|
}
|
|
|
|
if (req.optid != null)
|
|
{
|
|
query = query.Where(d => d.optid == req.optid);
|
|
}
|
|
|
|
if (req.updatedateStart != DateTime.MinValue)
|
|
{
|
|
query = query.Where(d => d.updatedate >= req.updatedateStart);
|
|
}
|
|
|
|
if (req.updatedateEnd != DateTime.MinValue)
|
|
{
|
|
DateTime updatedateTemp = req.updatedateEnd.AddDays(1);
|
|
query = query.Where(d => d.updatedate < updatedateTemp);
|
|
}
|
|
if (!string.IsNullOrEmpty(req.validstate))
|
|
{
|
|
if (req.validstate == "InValid")
|
|
{
|
|
query = query.Where(d => d.validstate.Equals(req.validstate));
|
|
}
|
|
else
|
|
{
|
|
query = query.Where(d => !d.validstate.Equals("InValid"));
|
|
}
|
|
}
|
|
if (string.IsNullOrEmpty(req.sidx))
|
|
{
|
|
req.sidx = "id";
|
|
req.sord = "desc";
|
|
}
|
|
return query.ToSearchList(req);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 客户定价参数查询请求
|
|
/// </summary>
|
|
public class ClientPricingParamReq : BaseSearchReq
|
|
{
|
|
/// <summary>
|
|
/// 期权开始日
|
|
/// </summary>
|
|
public DateTime? option_startdate { get; set; }
|
|
|
|
public DateTime option_startdateStart { get; set; }
|
|
|
|
public DateTime option_startdateEnd { get; set; }
|
|
|
|
/// <summary>
|
|
/// 期权到期日
|
|
/// </summary>
|
|
public DateTime? option_exercisedate { get; set; }
|
|
|
|
public DateTime option_exercisedateStart { get; set; }
|
|
|
|
public DateTime option_exercisedateEnd { get; set; }
|
|
|
|
/// <summary>
|
|
/// 买价调整天数
|
|
/// </summary>
|
|
public int? bid_tuning_day { get; set; }
|
|
|
|
/// <summary>
|
|
/// 卖价调整天数
|
|
/// </summary>
|
|
public int? ask_tuning_day { get; set; }
|
|
|
|
/// <summary>
|
|
/// 创建时间_createdate
|
|
/// </summary>
|
|
public DateTime? createdate { get; set; }
|
|
|
|
public DateTime createdateStart { get; set; }
|
|
|
|
public DateTime createdateEnd { get; set; }
|
|
|
|
/// <summary>
|
|
/// 操作员_optname
|
|
/// </summary>
|
|
public string optname { get; set; }
|
|
|
|
/// <summary>
|
|
/// 操作员信息_optid
|
|
/// </summary>
|
|
public int? optid { get; set; }
|
|
|
|
/// <summary>
|
|
/// 更新日期_updatedate
|
|
/// </summary>
|
|
public DateTime? updatedate { get; set; }
|
|
|
|
public DateTime updatedateStart { get; set; }
|
|
|
|
public DateTime updatedateEnd { get; set; }
|
|
|
|
/// <summary>
|
|
/// 有效状态_validstate
|
|
/// </summary>
|
|
public string validstate { get; set; }
|
|
}
|
|
}
|