void QueryZiJin(JObject jomsg) { JObject ZiJinInfo = jomsg; JArray zijins = (JArray)ZiJinInfo["data"]; List <CurrentBanalce> cbs = new List <CurrentBanalce>(); for (int i = 0; i < zijins.Count; i++) { if (System.Convert.ToDecimal(zijins[i]["balance"].ToString()) > 0) { StockZiJing zj = new StockZiJing(); zj.Equity = zijins[i]["available"].ToString().Substring(0, 10); zj.Instrument_id = zijins[i]["currency"].ToString(); zj.Frozen = zijins[i]["frozen"].ToString().Substring(0, 10); zj.Total_avail_balance = zijins[i]["balance"].ToString().Substring(0, 10); bool find = false; for (int m = 0; m < ZiJinList.Count; m++) { if (zj.Instrument_id == ZiJinList[m].Instrument_id) { find = true; ZiJinList[m] = zj; break; } } if (!find) { ZiJinList.Add(zj); } CurrentBanalce cb = new CurrentBanalce(); cb.Code = zj.Instrument_id; cb.Ava = System.Convert.ToDouble(zj.Equity); cb.Total = System.Convert.ToDouble(zj.Total_avail_balance); cb.Frz = System.Convert.ToDouble(zj.Frozen); cbs.Add(cb); } } CurrentBalances.Update(market, cbs); RaiseZiJin(ZiJinList); }
void QueryZiJin(JObject jomsg) { JObject ZiJinInfo = jomsg; JArray ziJins = (JArray)ZiJinInfo["data"]; if (ziJins != null) { List <CurrentBanalce> cbs = new List <CurrentBanalce>(); for (int j = 0; j < ziJins.Count; j++) { if (ziJins[j]["type"].ToString() == "spot") { JArray zijins = (JArray)ziJins[j]["list"]; for (int i = 0; i < zijins.Count; i++) { bool find = false; int index = 0; for (int m = 0; m < cbs.Count; m++) { if (cbs[m].Code == zijins[i]["currency"].ToString()) { find = true; index = m; break; } } if (find) { if (zijins[i]["type"].ToString() == "trade") { cbs[index].Ava = System.Convert.ToDouble(zijins[i]["balance"].ToString()); } else { cbs[index].Frz = System.Convert.ToDouble(zijins[i]["balance"].ToString()); } cbs[index].Total = cbs[index].Ava + cbs[index].Frz; } else { CurrentBanalce cb = new CurrentBanalce(); if (zijins[i]["type"].ToString() == "trade") { cb.Ava = System.Convert.ToDouble(zijins[i]["balance"].ToString()); cb.Code = zijins[i]["currency"].ToString(); cb.Frz = 0; cb.Total = cb.Ava; } else { cb.Ava = 0; cb.Code = zijins[i]["currency"].ToString(); cb.Frz = System.Convert.ToDouble(zijins[i]["balance"].ToString()); cb.Total = cb.Frz; } cbs.Add(cb); } } } } for (int i = 0; i < cbs.Count(); i++) { if (cbs[i].Total == 0) { cbs.RemoveAt(i); i--; } } CurrentBalances.Update(market, cbs); List <StockZiJing> ZiJinList = new List <StockZiJing>(); for (int i = 0; i < cbs.Count; i++) { StockZiJing szj = new StockZiJing(); szj.Instrument_id = cbs[i].Code; szj.Total_avail_balance = cbs[i].Total.ToString(); szj.Frozen = cbs[i].Frz.ToString(); szj.Equity = cbs[i].Ava.ToString(); ZiJinList.Add(szj); } RaiseZiJin(ZiJinList); } }