namespace YLErp.Configuration
{
///
/// PS.Config
///
public class ProjectConfig
{
public IErpConfig ErpElement { get; }
public IErpConfig TradeElement => ErpElement;
public IErpConfig ClientElement => ErpElement;
public ProjectConfig(IErpConfig erpElementinfo)
{
ErpElement = erpElementinfo ?? throw new System.ArgumentNullException(nameof(erpElementinfo));
}
//----------冗余字段-------------------
///
/// 公司枚举
///
public CompanyEnum Company => ErpElement.Company;
///
/// 公司ID(由镒链分配)
///
public string CompanyID => ErpElement.CompanyID;
///
/// 公司名称缩写,如:GTJA
///
public string CompanyAbbreviation => ErpElement.CompanyAbbreviation;
///
/// 公司名称
///
public string CompanyName => ErpElement.CompanyName;
///
/// 公司英文名称
///
public string CompanyEnName => ErpElement.CompanyEnName;
///
/// 公司简称,如:国泰君安
///
public string CompanyShortName => ErpElement.CompanyShortName;
///
/// 公司名称
///
public string CompanyFullName => ErpElement.CompanyFullName;
///
/// 客户上传文件审核记录
///
public string ClientFileAuditItems => ErpElement.ClientFileAuditItems;
///
/// 客户上传文件审核是否启用
///
public bool ClientFileAudit => ErpElement.ClientFileAudit;
///
/// 是否在风险对冲页面采用自动对冲策略
///
public bool IsUseHedgingRule => ErpElement.IsUseHedgingRule;
///
/// 部署组件版本
///
public ComponentVersion ComponentVersion => ErpElement.ComponentVersion;
public bool IsAutoGenerateContracts => ErpElement.IsAutoGenerateContracts;
public bool IsShowOtherClientCash => ErpElement.IsShowOtherClientCash;
public bool IsEodSendMaturityEmail => ErpElement.IsEodSendMaturityEmail;
public bool UseOldGenerateBook => ErpElement.UseOldGenerateBook;
///
/// 持仓市值是否进行四舍五入处理
///
public bool IsPVRounded => ErpElement.IsPVRounded;
///
/// 自定义交易收盘时是否跳过验证自定义风险指标
///
public bool IsMustRiskManual => ErpElement.IsMustRiskManual;
public bool IsAvailableForClient => ErpElement.IsAvailableForClient;
public bool IsAutoDelaySettlement => ErpElement.IsAutoDelaySettlement;
///
/// 持仓使用固定预付金比例计算是否使用期初价格
///
public bool EodFixedMarginUseSpotPrice => ErpElement.EodFixedMarginUseSpotPrice;
public bool ShowAccruedTotalPnL => ErpElement.ShowAccruedTotalPnL;
///
/// 是否导出出金单
///
public bool IsExportEntryexit => ErpElement.IsExportEntryexit;
///
/// 销售提成计算方式
///
public string SalesCommissionCalculation => ErpElement.SalesCommissionCalculation;
///
/// 是否用户登录会相互排斥登录状态
///
public bool UseSingleLogin => ErpElement.UseSingleLogin;
public bool IsUseDisplayNotional => ErpElement.UseDisplayNotional;
///
/// 产业客户累计转远期多空反向固定为多头,默认象屿为 true
/// 若 期权:买入看涨 --> 远期:买入多头;
/// 期权:卖出看跌 --> 远期:买入多头;
/// 期权:买入看跌 --> 远期:卖出多头;
/// 期权:卖出看涨 --> 远期:卖出多头;
///
public bool IsForwardTradeToBuy => ErpElement.IsForwardTradeToBuy;
public bool IsCalcRealtimeWarning => ErpElement.IsCalcRealtimeWarning;
///
/// 自定义报送结构类型
///
public string CustomStructureTypeSm => ErpElement.CustomStructureTypeSm;
///
/// 文件上传大小限制(单位KB)
///
public int UploadFileSizeLimit => ErpElement.UploadFileSizeLimit;
///
/// 报送文件开始编号
///
public int ReportFileBeginNumber => ErpElement.ReportFileBeginNumber;
#region-----is-----
///
/// 是否平仓开仓波动率支持
///
public bool IsTradeVol => ErpElement.VolMode == VolModeEnum.TradeVol;
public bool Is国泰君安 => ErpElement.Company == CompanyEnum.国泰君安;
///
/// Is国泰君安
///
public bool IsGuoJun => ErpElement.Company == CompanyEnum.国泰君安;
public bool Is申万 => ErpElement.Company == CompanyEnum.申万;
public bool Is国海 => ErpElement.Company == CompanyEnum.国海;
///
/// Is申万
///
public bool IsShenWan => ErpElement.Company == CompanyEnum.申万;
public bool Is渤海 => ErpElement.Company == CompanyEnum.渤海;
public bool Is格林大华 => ErpElement.Company == CompanyEnum.格林大华;
public bool Is安粮 => ErpElement.Company == CompanyEnum.安粮;
public bool Is方顿 => ErpElement.Company == CompanyEnum.方顿;
public bool Is东兴 => ErpElement.Company == CompanyEnum.东兴;
public bool Is光大光子 => ErpElement.Company == CompanyEnum.光大光子;
public bool Is长江 => ErpElement.Company == CompanyEnum.长江;
public bool Is广期资本 => ErpElement.Company == CompanyEnum.广期资本;
public bool Is海通 => ErpElement.Company == CompanyEnum.海通;
public bool Is茂川资本 => ErpElement.Company == CompanyEnum.茂川资本;
public bool Is伴兴 => ErpElement.Company == CompanyEnum.伴兴;
public bool Is宏源 => ErpElement.Company == CompanyEnum.宏源;
public bool Is瑞达 => ErpElement.Company == CompanyEnum.瑞达;
public bool Is兴证 => ErpElement.Company == CompanyEnum.兴证;
public bool Is中财 => ErpElement.Company == CompanyEnum.中财资本;
public bool Is上期资本 => ErpElement.Company == CompanyEnum.上期资本;
public bool Is厦门象屿 => ErpElement.Company == CompanyEnum.厦门象屿;
public bool Is润和 => ErpElement.Company == CompanyEnum.润和;
public bool Is兴业商贸 => ErpElement.Company == CompanyEnum.兴业商贸;
public bool Is浙期 => ErpElement.Company == CompanyEnum.浙期;
public bool Is天示 => ErpElement.Company == CompanyEnum.天示;
public bool Is国投 => ErpElement.Company == CompanyEnum.国投;
public bool Is国信金阳 => ErpElement.Company == CompanyEnum.国信金阳;
public bool Is华安 => ErpElement.Company == CompanyEnum.华安;
public bool Is招证 => ErpElement.Company == CompanyEnum.招证;
public bool Is东吴 => ErpElement.Company == CompanyEnum.东吴;
public bool Is广发商贸 => ErpElement.Company == CompanyEnum.广发商贸;
public bool Is中粮 => ErpElement.Company == CompanyEnum.中粮;
public bool Is湘财 => ErpElement.Company == CompanyEnum.湘财;
public bool Is物产中大 => ErpElement.Company == CompanyEnum.物产中大;
public bool Is东莞 => ErpElement.Company == CompanyEnum.东莞;
public bool Is山西固收 => ErpElement.Company == CompanyEnum.山西固收;
public bool Is浙商 => ErpElement.Company == CompanyEnum.浙商;
///
/// 衡泰内证账号
///
public string HTAccount => ErpElement.HTAccount;
#endregion
#region----Get Config----
///
/// 获取收盘配置
///
public SettlementConfig GetSettlementConfig()
{
return System.JsonHelper.Deserialize(ErpElement.SettlementConfig) ?? new SettlementConfig
{
Version = "V1",
CalcPnlExplain = false,
PriceType = 3,
SupportPart = false,
VolTypes = "持仓,开仓,对冲,光证,BidAskVol"
};
}
#endregion
}
}