#TRS-ZS-584 保证金中台获取数据的视图提供调整为日终收盘后入库
This commit is contained in:
@@ -1,129 +1,24 @@
|
||||
using System;
|
||||
using System.ComponentModel.DataAnnotations.Schema;
|
||||
using System.Data;
|
||||
using YLErp.BLL.EodSettlement;
|
||||
using YLErp.Modules.ClientModule;
|
||||
using YLErp.Modules.VolatilityModule;
|
||||
using static YLErp.BLL.EodSettlement.ClientBalanceUtility;
|
||||
|
||||
namespace YLErp.Web.WebAPI.Controllers
|
||||
{
|
||||
public class ClientBalanceController
|
||||
{
|
||||
|
||||
///
|
||||
/// </summary>
|
||||
[HttpPost("m/api/ClientBalance/GetClientRsikMonitor")]
|
||||
public JsonResult GetClientRsikMonitor([FromBody]MonitorReq req)
|
||||
[HttpPost("m/api/ClientBalance/GetClientRiskMonitor")]
|
||||
public JsonResult GetClientRsikMonitor([FromBody] ClientRiskMonitorReq req)
|
||||
{
|
||||
LogFactory.GetLogger("GetClientRsikMonitor请求").Info(JsonHelper.Serialize(req));
|
||||
if (!req.SearchDate.HasValue)
|
||||
{
|
||||
req.SearchDate = valuedateBLL.ValueDate;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(req.marginShownType))
|
||||
{
|
||||
req.marginShownType = "default";
|
||||
}
|
||||
if (req.ClientIds == null || req.ClientIds.Count <= 0)
|
||||
{
|
||||
req.ClientIds = DataCacheProvider.GetClientDataSource().AsQueryable().Select(o => o.id).Distinct().ToList();
|
||||
}
|
||||
var result = ClientBalanceUtility.GetClientRiskMonitorForShanXiGuShou(req.ClientIds, req.SearchDate.Value, req.marginShownType);
|
||||
//精简字段
|
||||
var resultList = result.Select(item => new resultParam
|
||||
{
|
||||
Number = item.ClientNumber,
|
||||
Name = item.ClientName,
|
||||
TotalTradeCount = item.TotalTradeCount,
|
||||
TotalNotionalPrincipal = item.TotalNotionalPrincipal,
|
||||
TransactionPenNumber = item.TradeCount,
|
||||
TodayNotionalPrincipal = item.TodayNotionalPrincipal,
|
||||
PositionNotionalPrincipal = item.PositionNotionalPrincipal,
|
||||
CurrentHoldingPenNumber = item.PositionCount,
|
||||
WinLoss = item.WinLoss,
|
||||
PositionPnl = item.PositionPnl,
|
||||
RoundedPositionPnl = item.RoundedPositionPnl,
|
||||
LastDayRemainFund = item.LastDayRemainFund,
|
||||
NetFundAll = item.NetFundAll,
|
||||
NetFund = item.NetFund,
|
||||
VmFundSum = item.VmFundSum,
|
||||
OtherFund = item.OtherFund,
|
||||
AmountFund = item.AmountFund,
|
||||
MySideMargin = item.MySideMargin,
|
||||
MaintenanceMargin = item.MaintenanceMargin,
|
||||
SwapMarketAmount = item.SwapMarketAmount,
|
||||
SwapMarketAmountPercent = item.SwapMarketAmountPercent,
|
||||
AvailableAmount = item.AvailableAmount,
|
||||
InsuredAmount = item.MarginByPayableMarginTotal,
|
||||
DesirableFund = item.DesirableFund
|
||||
}).ToList();
|
||||
var resultList = queryClientRiskMonitor(req);
|
||||
LogFactory.GetLogger().Info($"GetClientRsikMonitor: {JsonHelper.Serialize(resultList)}");
|
||||
return new JsonResult(resultList);
|
||||
}
|
||||
|
||||
public class MonitorReq
|
||||
{
|
||||
public List<int> ClientIds { get; set; }
|
||||
|
||||
public DateTime? SearchDate { get; set; }
|
||||
|
||||
public string marginShownType { get; set; }
|
||||
}
|
||||
|
||||
public class resultParam
|
||||
{
|
||||
/*客户编号 客户名称 交易总数 名义本金总额 当日交易数 当日交易名义本金
|
||||
持仓名义本金 持仓笔数 实现盈亏 持仓盈亏 期初结存 出金入金 初保账户 追保账户 其他收支
|
||||
期末结存 初始保证金金额 维持保证金金额 盯市金额 履约保证金比例 可用资金 追保金额 可取资金*/
|
||||
|
||||
public string Number { get; set; }
|
||||
|
||||
public string Name { get; set; }
|
||||
|
||||
public int TotalTradeCount { get; set; }
|
||||
|
||||
public double TotalNotionalPrincipal { get; set; }
|
||||
|
||||
public int TransactionPenNumber { get; set; }
|
||||
|
||||
public double TodayNotionalPrincipal { get; set; }
|
||||
|
||||
public double PositionNotionalPrincipal { get; set; }
|
||||
|
||||
public int CurrentHoldingPenNumber { get; set; }
|
||||
|
||||
public double WinLoss { get; set; }
|
||||
|
||||
public double PositionPnl { get; set; }
|
||||
|
||||
public double RoundedPositionPnl { get; set; }
|
||||
|
||||
public double LastDayRemainFund { get; set; }
|
||||
|
||||
public double NetFundAll { get; set; }
|
||||
|
||||
public double NetFund { get; set; }
|
||||
|
||||
public double VmFundSum { get; set; }
|
||||
|
||||
public double OtherFund { get; set; }
|
||||
|
||||
public double AmountFund { get; set; }
|
||||
|
||||
public double MySideMargin { get; set; }
|
||||
|
||||
public double MaintenanceMargin { get; set; }
|
||||
|
||||
public double SwapMarketAmount { get; set; }
|
||||
|
||||
public decimal SwapMarketAmountPercent { get; set; }
|
||||
|
||||
public double AvailableAmount { get; set; }
|
||||
|
||||
public double InsuredAmount { get; set; }
|
||||
|
||||
public double DesirableFund { get; set; }
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user