/// <summary> /// Get Equity from cache /// </summary> /// <param name="loginid"></param> /// <returns></returns> public JsonResult GetEquity(int loginid) { try { var marginCache = new DataCache("MarginCache"); object objMargin = marginCache.Get(loginid.StringTryParse()); if (objMargin != null) { var margin = (Margin)objMargin; var marginDetails = new MarginDetails(); marginDetails.Equ = margin.Equity.CurrencyFormat(); marginDetails.Bal = margin.Balance.CurrencyFormat(); var equity = margin.Equity ?? 0; var bal = margin.Balance ?? 0; var pnl = equity - bal; marginDetails.Pnl = pnl.CurrencyFormat(); return(Json(marginDetails, JsonRequestBehavior.AllowGet)); } } catch (Exception ex) { CurrentDeskLog.Error(ex.Message, ex); } return(Json(string.Empty, JsonRequestBehavior.AllowGet)); }
/// <summary> /// Get Equity,Balance and Pnl from Cache /// </summary> /// <param name="lstLogin"></param> /// <returns></returns> public JsonResult GetEquityList(string strLogin) { var lstMarginDetails = new List <MarginDetails>(); var lstLogin = new List <int>(); try { //Convert platform login to List<int> string[] lstStrLogins = strLogin.Split(new[] { ',' }); foreach (var pl in lstStrLogins) { lstLogin.Add(pl.Int32TryParse()); } //Get Data from cache var marginCache = new DataCache("MarginCache"); List <string> lstStrLogin = lstLogin.Select(s => s.StringTryParse()).ToList(); IEnumerable <KeyValuePair <string, object> > lstMarginsObj = marginCache.BulkGet(lstStrLogin); //Create a Json Data var lstMargins = lstMarginsObj.Select(s => (Margin)s.Value).ToList(); foreach (var margin in lstMargins) { var ed = new MarginDetails(); if (margin != null) { ed.Pl = margin.Login ?? 0; ed.Equ = margin.Equity.CurrencyFormat(); ed.Bal = margin.Balance.CurrencyFormat(); var equity = margin.Equity ?? 0; var bal = margin.Balance ?? 0; var pnl = equity - bal; ed.Pnl = pnl.CurrencyFormat(); lstMarginDetails.Add(ed); } } return(Json(lstMarginDetails, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { CurrentDeskLog.Error(ex.Message, ex); } return(Json(string.Empty, JsonRequestBehavior.AllowGet)); }