Files
zszq-trs/Framework/YLErp.Core/DBModels/Client.cs
T
2025-04-11 09:36:49 +08:00

1241 lines
35 KiB
C#

using Newtonsoft.Json;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using YLErp.DBModels.Attributes;
using YLErp.DBModels.Enums;
using YLErp.Helpers;
namespace YLErp.DBModels
{
/// <summary>
/// 客户信息
/// </summary>
[Table("client")]
public class Client : DBModelWithOperator, IDBModelWithCreator, IDataEntity, IDataTraceV2, IClonable<Client>
{
[DisplayName("密码")]
public string Pwd { get; set; }
[DisplayName("资金余额")]
public double? Capitalbalance { get; set; }
[DisplayName("商品类签署日期")]
[DataChange]
public DateTime? ProtocolSignDate { get; set; }
[DisplayName("权益类签署日期")]
[DataChange]
public DateTime? RightProtocolSignDate { get; set; }
[DisplayName("协议签署版本")]
[DataChange]
public string ProtocolSignVersion { get; set; }
[DisplayName("办公地址")]
[DataChange]
public string PostalAddress { get; set; }
[DisplayName("邮政编码")]
[DataChange]
public string PostalCode { get; set; }
[DisplayName("所属机构")]
[DataChange]
public int ParentId { get; set; }
[DisplayName("报告展示机构名称")]
public int? IsDocShowParentName { get; set; }
[DisplayName("报告展示机构名称")]
[DataChange]
public string IsDocShowParentNameStr { get { return IsDocShowParentName == 1 ? "是" : "否"; } }
[DisplayName("证件号码")]
[DataChange]
public string IdentificationNumber { get; set; }
[DisplayName("证照编号")]
[DataChange]
public string LicenseCode { get; set; }
[DisplayName("营业执照有效期")]
[DataChange]
public string LicenseValidTimeStr { get; set; }
[NotMapped]
public DateTime? LicenseValidTime
{
get
{
DateTime date = new DateTime();
if (!string.IsNullOrWhiteSpace(LicenseValidTimeStr)
&& (DateTime.TryParseExact(LicenseValidTimeStr, "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.AdjustToUniversal, out date)
|| DateTime.TryParseExact(LicenseValidTimeStr, "yyyy/MM/dd", System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.AdjustToUniversal, out date)
|| DateTime.TryParse(LicenseValidTimeStr, out date))
)
{
return date;
}
return null;
}
set { value = this.LicenseValidTime; }
}
[DisplayName("电话")]
[DataChange]
public string Phone { get; set; }
[DisplayName("地址")]
[DataChange]
public string Address { get; set; }
[DisplayName("Email")]
[DataChange]
public string Email { get; set; }
/// <summary>
/// 客户编号
/// </summary>
[DisplayName("客户编号")]
[DataChange]
public string Number { set; get; }
/// <summary>
/// 客户名称
/// </summary>
[DisplayName("客户名称"), Required]
[DataChange]
public string Name { set; get; }
/// <summary>
/// 默认登录名
/// </summary>
[DisplayName("默认登录名")]
public string DefaultLoginName { get; set; }
/// <summary>
/// 客户等级
/// </summary>
[DisplayName("客户等级")]
[NotMapped]
public string Level { set; get; }
[DisplayName("客户等级")]
public int? LevelId { get; set; }
[DisplayName("交易分组"),Obsolete("5.9版本删除")]
public int? TradeGroupId { get; set; }
/// <summary>
/// 授信方向
/// </summary>
[DisplayName("授信方向")]
[DataChange]
public string CreditDirection { set; get; }
/// <summary>
/// 年度授信
/// </summary>
[DisplayName("年度授信")]
[DataChange]
public double? CreditYear { set; get; }
/// <summary>
/// 授信到期日
/// </summary>
[DisplayName("授信到期日")]
[DataChange]
public DateTime? CreditDeadline { set; get; }
/// <summary>
/// 临时授信
/// </summary>
[DisplayName("临时授信")]
[DataChange]
public double? CreditTemp { set; get; }
/// <summary>
/// 临时授信到期日
/// </summary>
[DisplayName("临时授信到期日")]
[DataChange]
public DateTime? CreditTempDeadline { set; get; }
/// <summary>
/// 客户类型
/// </summary>
[DisplayName("客户类型")]
[DataChange]
public string Type { set; get; }
/// <summary>
/// 是否需要追保
/// </summary>
[DisplayName("是否需要追保")]
[DataChange]
public int? PendingMarginCallPayment { set; get; }
[DisplayName("营业部销售")]
[DataChange]
public string Seller { get; set; }
[DisplayName("归属营业部")]
[DataChange]
public int? SalesDepartmentId { get; set; }
[DisplayName("营业部名称")]
[NotMapped]
public string SalesDepartment { get; set; }
[NotMapped]
public string CreditName { get; set; }
public string ProcessStatus { get; set; }
public int? RejectOrderId { get; set; }
public int ProcessOrderId { get; set; }
public int ProcessOrderBranch { get; set; }
[DisplayName("开户时间")]
public DateTime? ProcessOptDate { get; set; }
public string ApprovalStatus { get; set; }
public int ApprovalOrderId { get; set; }
public long ApprovalLogId { get; set; }
[DisplayName("开户时间")]
public DateTime? ApprovalOptDate { get; set; }
[DisplayName("评估日期")]
[DataChange]
public DateTime? EvaluateDate { get; set; }
[DisplayName("评估有效期")]
[DataChange]
public string EvaluateOfValidity { get; set; }
[DisplayName("评估到期日")]
[DataChange]
public DateTime? EvaluateExpireDate { get; set; }
[DisplayName("适当性类型")]
[DataChange]
public string ProperClientClass { get; set; }
[DisplayName("个人客户风险承受能力等级")]
[DataChange]
public string EndureLevel { get; set; }
[DisplayName("客户经理")]
public string CustomerManager { get; set; }
[DisplayName("客户经理")]
[DataChange]
public string CustomerManagerId { get; set; }
[NotMapped]
public List<int> CustomerManagerIdsInt
{
get
{
if (string.IsNullOrEmpty(CustomerManagerId))
{
return new List<int>();
}
return CustomerManagerId.Split(","[0]).Select(t => Convert.ToInt32(t)).ToList();
}
}
/// <summary>
/// 客户性质
/// </summary>
[DisplayName("客户性质")]
[DataChange]
public int? CustomerNature { get; set; }
/// <summary>
/// 客户性质1
/// </summary>
[DisplayName("客户性质1")]
[DataChange]
public string CustomerNature1 { get; set; }
/// <summary>
/// 客户性质2
/// </summary>
[DisplayName("客户性质2")]
[DataChange]
public string CustomerNature2 { get; set; }
/// <summary>
/// 注册资本(万元)
/// </summary>
[DisplayName("产品规模(万元)")]
[DataChange]
public string RegisteredCapital { get; set; }
/// <summary>
/// 实际受益人
/// </summary>
[DisplayName("实际受益人")]
[DataChange]
public string ActualBeneficiary { get; set; }
/// <summary>
/// 实际控制人
/// </summary>
[DisplayName("实际控制人")]
[DataChange]
public string ActualController { get; set; }
/// <summary>
/// 注册地址
/// </summary>
[DisplayName("注册地址")]
[DataChange]
public string RegisteredAddress { get; set; }
/// <summary>
/// 财务状况
/// </summary>
[DisplayName("财务状况")]
[DataChange]
public string FinancialSituation { get; set; }
/// <summary>
/// 投资经验
/// </summary>
[DisplayName("投资经验")]
[DataChange]
public string InvestmentExperience { get; set; }
/// <summary>
/// 所属行业是否和投资品种有关
/// </summary>
[DisplayName("行业标的相关")]
[DataChange]
public int? IsIndustryConnectVariety { get; set; }
/// <summary>
/// 投资目标
/// </summary>
[DisplayName("交易目的")]
[DataChange]
public string TransactionTarget { get; set; }
/// <summary>
/// 投资目标
/// </summary>
[DisplayName("交易目的")]
public List<string> TransactionTargetList
{
get
{
try
{
if (!string.IsNullOrWhiteSpace(TransactionTarget))
{
return TransactionTarget.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries).ToList();
}
return new List<string>();
}
catch (Exception ex)
{
LogFactory.GetLogger<Client>().Error("TransactionTarget转成List出错", ex);
return new List<string>();
}
}
}
/// <summary>
/// 资金来源
/// </summary>
[DisplayName("资金来源")]
[DataChange]
public int? FundsSource { get; set; }
/// <summary>
/// 是否存在实际控制关系
/// </summary>
[DisplayName("实际控制关系")]
[DataChange]
public int? IsRealControl { get; set; }
/// <summary>
/// 是否存在小微客户
/// </summary>
[DisplayName("小微客户")]
public int? IsSmallAndMicroEnterprises { get; set; }
[DisplayName("上市公司")]
[DataChange]
public string IsSmallAndMicroEnterprisesStr { get { return IsSmallAndMicroEnterprises == 1 ? "是" : "否"; } }
/// <summary>
/// 投资期限
/// </summary>
[DisplayName("投资期限")]
[DataChange]
public int? InvestmentTerm { get; set; }
private string _derivativesInvestmentVarieties;
/// <summary>
/// 衍生品投资品种
/// </summary>
[DisplayName("交易种类")]
[DataChange]
public string DerivativesInvestmentVarieties { get { return _derivativesInvestmentVarieties ?? ""; } set { _derivativesInvestmentVarieties = value; } }
/// <summary>
/// 风险偏好
/// </summary>
[DisplayName("风险偏好")]
[DataChange]
public string RiskPreference { get; set; }
/// <summary>
/// 可接受损失
/// </summary>
[DisplayName("可接受损失")]
[DataChange]
public string AcceptableLoss { get; set; }
/// <summary>
/// 期望收益2
/// </summary>
[DisplayName("期望收益")]
[DataChange]
public string ExpectedReturn2 { get; set; }
/// <summary>
/// 不良诚信记录
/// </summary>
[DisplayName("不良诚信记录")]
[DataChange]
public int? BadFaithRecord { get; set; }
/// <summary>
/// 是否评估
/// </summary>
[DisplayName("是否评估")]
[DataChange]
public int? IsEvaluate { get; set; }
/// <summary>
/// 问卷得分
/// </summary>
[DisplayName("问卷得分")]
[DataChange]
public int? QuestionnaireScore { get; set; }
/// <summary>
/// 适当性等级
/// </summary>
[DisplayName("适当性评级")]
[DataChange]
public int? AppropriatenessDegree { get; set; }
/// <summary>
/// 适当性等级名称
/// 已废弃
/// </summary>
[DisplayName("适当性等级")]
public string AppropriatenessDegreeName
{
get
{
if (PS.Config.Is浙期)
{
switch (AppropriatenessDegree)
{
case 0: return "专业A级";
case 1: return "专业B级";
case 2: return "普通C4类";
case 3: return "普通C5类";
case 4: return "C2";
case 5: return "C3";
default: return string.Empty;
}
}
else
{
switch (AppropriatenessDegree)
{
case 1: return "C1";
case 2: return "C2";
case 3: return "C3";
case 4: return "C4";
case 5: return "C5";
default: return string.Empty;
}
}
}
}
/// <summary>
/// 可接受风险服务
/// </summary>
[DisplayName("可接受风险服务")]
[DataChange]
public int? RiskServiceDegree { get; set; }
/// <summary>
/// 可接受风险服务
/// </summary>
[DisplayName("可接受风险服务")]
[DataChange]
[IgnoreCompareChange]
public string RiskServiceDegreeName
{
get
{
switch (RiskServiceDegree)
{
case 1: return "R1";
case 2: return "R2";
case 3: return "R3";
case 4: return "R4";
case 5: return "R5";
default: return string.Empty;
}
}
}
/// <summary>
/// 是否接受高风险等级服务
/// </summary>
[DisplayName("接受高风险服务")]
[DataChange]
public int? IsAcceptHighRiskService { get; set; }
/// <summary>
/// 适当性评估人
/// </summary>
[DisplayName("适当性评估人")]
[DataChange]
public int? AppropriatenessAssessor { get; set; }
/// <summary>
/// 客户是否要求转化类型
/// </summary>
[DisplayName("转化类型")]
[DataChange]
public int? IsRequireConversionTypes { get; set; }
/// <summary>
/// 评估结果是否变动
/// </summary>
[DisplayName("评估结果变动")]
[DataChange]
public int? IsAssessmentResultChange { get; set; }
/// <summary>
/// 备注
/// </summary>
[DisplayName("备注")]
[DataChange]
public string Remark { get; set; }
/// <summary>
/// 变动原因及历史评估结果
/// </summary>
[DisplayName("变动原因及历史")]
[DataChange]
public string ChangeReasonAndEvaluationResults { get; set; }
/// <summary>
/// 失信行为记录
/// </summary>
[DisplayName("失信行为记录")]
[DataChange]
public string DisbeliefRecord { get; set; }
///// <summary>
///// 资信等级Id(废弃)
///// </summary>
//[DisplayName("资信级别")]
//[Obsolete]
//public int? CreditRatingId { get; set; }
/// <summary>
/// 资信等级
/// </summary>
[NotMapped]
public string CreditRatingStr { get; set; }
/// <summary>
/// 营业执照号有效期
/// </summary>
[DisplayName("营业执照号有效期")]
[DataChange]
public DateTime? LicenseCodeDate { get; set; }
/// <summary>
/// 经营范围
/// </summary>
[DisplayName("经营范围")]
[DataChange]
public int? BusinessScope { get; set; }
/// <summary>
/// 私募基金产品信息
/// </summary>
[DisplayName("私募基金产品信息")]
[DataChange]
public string PrivateFundProductInformation { get; set; }
[DisplayName("客户代码")]
[DataChange]
public string Code { get; set; }
[DisplayName("交易确认书当前编号")]
[DataChange]
public int? CurrentContractNo { get; set; }
//[DisplayName("授信总额")]
//public double? Credit { get; set; }
/// <summary>
/// 该字段和客户登陆系统数据库systemusers表中的Guid做匹配
/// </summary>
public string Guid { get; set; }
[DisplayName("客户类别")]
[DataChange]
public string ClientType { get; set; }
[DisplayName("产品编号")]
[DataChange]
public string ProductNumber { get; set; }
[DisplayName("机构属性")]
[DataChange]
public string InstitutionalAttributes { get; set; }
[DisplayName("行业")]
[DataChange]
public string BusinessType { get; set; }
[DisplayName("证照类型")]
[DataChange]
public string LicenseType { get; set; }
[DisplayName("地域")]
[DataChange]
public string Region { get; set; }
/// <summary>
/// 授信是否可以用来支付期权费
/// true:授信可以支付期权费和预付金
/// false:授信只可以支付预付金
/// </summary>
[DisplayName("期权费授信")]
[DataChange]
public int? IsTradeCredit { get; set; }
/// <summary>
/// 是否可以添加授信开关
/// 为空或者0时,授信审批无法提交
/// </summary>
[DisplayName("授信")]
public int? IsCreditOn { get; set; }
/// <summary>
/// 追保方向
/// </summary>
[DisplayName("追保方向")]
[DataChange]
public int MarginOptionType { get; set; }
/// <summary>
/// 是否自动撤单(通道业务)
/// </summary>
public int? IsAutoReback { get; set; }
/// <summary>
/// 是否曾通过审批
/// </summary>
public int HadPass { get; set; }
/// <summary>
/// 衍生品投资品种
/// </summary>
[NotMapped]
public string DerivativesInvestmentVarietiesName
{
get
{
if (!string.IsNullOrWhiteSpace(DerivativesInvestmentVarieties))
{
var list = DerivativesInvestmentVarieties.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries)
.Select(n => int.TryParse(n, out var nn) ? nn : 0).Where(n => n > 0).ToList();
return string.Join(",", list.Select(v => System.Enum.Parse(typeof(DerivativesInvestmentVarietiesEnum), v.ToString())));
}
return "";
}
}
/// <summary>
/// 投资者类型
/// </summary>
[DisplayName("投资者类型")]
[DataChange]
public int? InvestorType { get; set; }
/// <summary>
/// 管理人全称
/// </summary>
[DisplayName("管理人全称")]
[DataChange]
public string AdminFullName { get; set; }
/// <summary>
/// 管理人登记编号
/// </summary>
[DisplayName("管理人登记编号")]
[DataChange]
public string AdminRegisteredNum { get; set; }
/// <summary>
/// 投资者类型
/// </summary>
[NotMapped]
public string InvestorTypeName
{
get
{
if (InvestorType == null)
{
return "";
}
return Enum.Parse(typeof(InvestorTypeEnum), InvestorType.ToString()).ToString();
}
}
/// <summary>
/// 0:同业;1:非同业
/// </summary>
[DisplayName("同业/非同业")]
public int? SamePeer { get; set; }
/// <summary>
/// 公司缩写
/// </summary>
[DisplayName("客户简称")]
[DataChange]
public string Abbreviation { get; set; }
/// <summary>
/// 同业/非同业
/// </summary>
[NotMapped]
[DisplayName("同业/非同业")]
[DataChange]
public string SamePeerDesc
{
get
{
if (!SamePeer.HasValue)
{
return "";
}
return EnumHelper.GetDescriptionByName((SamePeerEnum)SamePeer.Value);
}
}
/// <summary>
/// 上传文件时,如果时双录视频文件,需要填写时间
/// </summary>
[NotMapped]
[DisplayName("双录时间:")]
public DateTime? BookTime { get; set; }
/// <summary>
/// 交易资产
/// </summary>
[DataChange]
[DisplayName("交易资产:")]
public TradingInstTypeEnum TradingInstType { get; set; }
[NotMapped]
public string TradingInstTypeName { get; set; }
[DisplayName("组织机构代码")]
[DataChange]
public string CounterpartyCode { get; set; }
[DisplayName("行业代码")]
[DataChange]
public string NFICode { get; set; }
private AccessRuleEnum _accessRule = AccessRuleEnum.BothAccess;
[DisplayName("准入规则")]
public int? AccessRule
{
get
{
return (Nullable<int>)_accessRule;
}
set
{
if (value.HasValue)
{
_accessRule = (AccessRuleEnum)value.Value;
}
}
}
/// <summary>
/// 阈值
/// </summary>
[DisplayName("阈值")]
public double? FundThreshold { get; set; }
[DisplayName("预付金追加方式")]
public string RuleT0orT1 { get; set; }
/// <summary>
/// 国君特殊逻辑 处理这个字段,具体逻辑是按 补充协议二日期来赋值,当补充协议二日期 有值这是单章版 ,反之双章版
/// 其余客户公司正常使用
/// </summary>
[DisplayName("确认书模板")]
public string ConfirmBookMode { get; set; }
[DisplayName("上市公司")]
public int? IsListed { get; set; }
[DisplayName("上市公司")]
[DataChange]
public string IsListedStr
{
get
{
if (IsListed == null)
{
return "";
}
return IsListed == 1 ? "是" : "否";
}
}
[DisplayName("内部客户")]
public int? IsInsided { get; set; }
[DisplayName("内部客户")]
[DataChange]
public string IsInsidedStr
{
get
{
if (IsInsided == null)
{
return "";
}
return IsInsided == 1 ? "是" : "否";
}
}
[DisplayName("追保通知")]
public int? IsSendRecovery { get; set; }
[DisplayName("追保通知")]
[DataChange]
public string IsSendRecoveryStr
{
get
{
if (IsSendRecovery == null)
{
return "";
}
return IsSendRecovery == 0 ? "否" : "是";
}
}
[DisplayName("结算币种")]
public string SettlementCurrency { get; set; }
/// <summary>
/// 准入规则
/// </summary>
[NotMapped]
[DisplayName("准入规则")]
[DataChange]
public string AccessRuleDesc
{
get
{
if (!AccessRule.HasValue)
{
return "";
}
return EnumHelper.GetDescriptionByName((AccessRuleEnum)AccessRule.Value);
}
}
[DisplayName("资金流向")]
public BoundSideEnum BoundSide { get; set; }
[DisplayName("席位")]
public string Seat { get; set; }
[DisplayName("履约协议编号")]
public string AgreementBookNo { get; set; }
/// <summary>
/// 协议编号类型 单向 true 双向 false
/// </summary>
[DisplayName("履约协议类型")]
public bool? AgreementBookType { get; set; }
/// <summary>
/// 协议编号类型 单向 true 双向 false
/// </summary>
[NotMapped]
[DisplayName("履约协议类型")]
public string AgreementBookTypeDesc
{
get
{
return AgreementBookType ?? true ? "单向" : "双向";
}
}
/// <summary>
/// 清算机构
/// </summary>
[DisplayName("清算机构")]
public string ClearingAgency { get; set; }
/// <summary>
/// 主协议编号
/// </summary>
[DisplayName("主协议编号")]
public string MainProtocolCode { get; set; }
/// <summary>
/// 补充协议编号
/// </summary>
[DisplayName("补充协议编号")]
public string SupProtocolCode { get; set; }
/// <summary>
/// 补充协议二签署日期
/// 次月生效;例:值7.15,8.1号之前为双章版,之后为单章版
/// </summary>
[DisplayName("补充协议二签署日期")]
public DateTime? SupProtocolDate { get; set; }
/// <summary>
/// 银行信用评级(只用于银行类客户)
/// </summary>
[DisplayName("银行信用评级")]
public string BankCreditRating { get; set; }
/// <summary>
/// 互换对冲方式 0 手动 1 自动
/// </summary>
[DisplayName("互换对冲方式")]
public int? SwapHedgingType { get; set; }
/// <summary>
/// 资金流向
/// </summary>
[NotMapped]
[DisplayName("资金流向")]
[DataChange]
public string BoundSideDesc
{
get
{
return EnumHelper.GetDescriptionByName(BoundSide);
}
}
/// <summary>
/// 产品名称
/// </summary>
[NotMapped]
[DisplayName("产品名称")]
public string ProductName { get; set; }
Dictionary<string, string> _metaDic;
/// <summary>
/// 扩展元数据字典(特别增加这个字段为了这个类的扩展性)
/// 以后不要轻易动这个字段了,前端和模板经常用到
/// </summary>
[NotMapped]
public Dictionary<string, string> MetaDic
{
get
{
return _metaDic ?? (_metaDic = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase));
}
set
{
_metaDic = value;
}
}
[NotMapped]
public bool creditCanApplySwap
{
get
{
//授信是否可用于收益互换 3A银行或证券同业
if (BusinessType != null && ((BusinessType.Contains("银行") && "AAA".Equals(BankCreditRating)) || (BusinessType.Contains("证券") && SamePeer == 0)))
{
return true;
}
return false;
}
}
public string GetDataTraceKeyId()
{
return id.ToString();
}
public Client Clone()
{
return (Client)MemberwiseClone();
}
/// <summary>
/// 获取交易资产类型枚举描述
/// </summary>
public string GetTradingInstTypeDesc()
{
return TradingInstTypeUtil.GetDesc(TradingInstType);
}
public override string ToString()
{
return $"{Name}--{id}";
}
public string GetDataTraceKeyInfo()
{
return "客户:" + Name;
}
/// <summary>
/// LEI编码
/// </summary>
[DisplayName("LEI编码")]
public string LEICode { get; set; }
/// <summary>
/// 是否中央对手方清算
/// </summary>
[DisplayName("是否中央对手方清算")]
public string IsCentralClearing { get; set; }
/// <summary>
/// 中央清算平台名称
/// </summary>
[DisplayName("中央清算平台名称")]
public string CentralClearingPaltform { get; set; }
/// <summary>
/// 交易平台
/// </summary>
[DisplayName("交易平台")]
public string TradingPaltform { get; set; }
/// <summary>
/// 追保系数
/// </summary>
[DisplayName("追保系数")]
public double? MarginRate { get; set; }
/// <summary>
/// 可取系数
/// </summary>
[DisplayName("可取系数")]
public double? DesirableRate { get; set; }
/// <summary>
/// 最小转账金额
/// </summary>
[DisplayName("最小转账金额")]
public double? MinimumTransferAmount { get; set; }
/// <summary>
/// 创建人ID
/// </summary>
[DisplayName("操作人")]
public int? CreatorId { set; get; }
/// <summary>
/// 创建人名称
/// </summary>
[DisplayName("操作人")]
public string CreatorName { set; get; }
/// <summary>
/// 创建时间
/// </summary>
[DisplayName("操作时间")]
public DateTime? CreateDate { set; get; }
/// <summary>
/// 所属部门
/// </summary>
[DisplayName("所属部门")]
public string Department { get; set; }
/// <summary>
/// 业务种类
/// </summary>
[DisplayName("业务种类")]
public string ServiceType { get; set; }
/// <summary>
/// 客户端权限
/// </summary>
[DisplayName("客户端权限")]
[Column("client_right")]
public string ClientRight { get; set; }
/// <summary>
/// 客户端权限
/// </summary>
[NotMapped]
[DisplayName("客户端权限")]
[DataChange]
public string ClientRightDesc
{
get
{
switch (this.ClientRight)
{
case "4":
return "只看报价";
case "5":
return "查看报价与交易";
case "6":
return "无权限";
default:
return this.ClientRight;
}
}
}
/// <summary>
/// 代理委托邮箱
/// </summary>
[DisplayName("代理委托邮箱")]
[Column("proxy_email")]
[DataChange]
public string ProxyEmail { get; set; }
/// <summary>
/// 邮箱授权码
/// </summary>
[DisplayName("邮箱授权码")]
[Column("proxy_email_pwd")]
public string ProxyEmailPwd { get; set; }
/// <summary>
/// 收益互换交易类别1:MDA,0:非DMA
/// </summary>
[DisplayName("收益互换交易类别")]
[Column("swap_trade_type")]
public int? SwapTradeType { get; set; }
/// <summary>
/// 收益互换交易类别
/// </summary>
[NotMapped]
[DisplayName("收益互换交易类别")]
[DataChange]
public string SwapTradeTypeStr
{
get
{
switch (this.SwapTradeType)
{
case 0:
return "普通";
case 1:
return "定义文件";
default:
return "普通";
}
}
}
/// <summary>
/// 统一社会信用代码
/// </summary>
[DisplayName("统一社会信用代码")]
[Column("unified_social_credit_code")]
[DataChange]
public string UnifiedSocialCreditCode { get; set; }
[DisplayName("管理人名称")]
[Column("manager")]
[DataChange]
public string Manager { get; set; }
[DisplayName("外部编号")]
[Column("out_number")]
[DataChange]
public string OutNumber { get; set; }
[DisplayName("定义文件编号")]
[Column("settle_file_number")]
[DataChange]
public string SettleFileNumber { get; set; }
[DisplayName("业务类型")]
[Column("business_use_type")]
public string BusinessUseType { get; set; }
/// <summary>
/// 业务类型
/// </summary>
[NotMapped]
[DisplayName("业务类型")]
[DataChange]
public string BusinessUseTypeStr
{
get
{
if (!string.IsNullOrEmpty(this.BusinessUseType))
{
return this.BusinessUseType.Replace("0","TRS").Replace("1","做市报价");
}
return "TRS";
}
}
[DisplayName("管理人社会信用代码")]
[Column("manager_social_credit_code")]
[DataChange]
public string ManagerSocialCreditCode { get; set; }
[DisplayName("管理人简称")]
[Column("manager_abbreviation")]
[DataChange]
public string ManagerAbbreviation { get; set; }
/// <summary>
/// 是否不再预警(0:预警,1:不预警)
/// </summary>
[DisplayName("是否不再预警")]
public bool? isWarning { get; set; }
}
[NotMapped]
public class ClientDto : Client
{
}
public enum BoundSideEnum
{
南向,
北向,
}
}