Exemple #1
0
 /// <summary>
 /// 使用条码获取数据,可能返回OPListForSpecimen单个字符串、正常数据、“”;
 /// </summary>
 /// <param name="barcode">条码</param>
 /// <returns>Json格式的字符串(包含有隐藏域文件)</returns>
 public string GetDataByBarcode(string barcode)
 {
     //01.创建字典
     Dictionary<string, string> oPListForSpecimen = new Dictionary<string, string>();
     //02.调用方法获取数据并将数据转换成字典
     oPListForSpecimen = GetOPListForSpecimenByBarcodeAndToDic(barcode);
     string result = "";
     if (oPListForSpecimen != null)//链接无错误
     {
         if (oPListForSpecimen.Count > 0)//有获取到数据
         {
             //03.调用方法将字典转换成JSON数据
             if (oPListForSpecimen["KeepSpecimenSign"]=="N")
             {
                 oPListForSpecimen["KeepSpecimenSign"] = "";
             }
             if (oPListForSpecimen.Keys.Contains("OPListForSpecimen"))
             {
                 string value = "";
                 if (oPListForSpecimen.TryGetValue("OPListForSpecimen", out value))
                 {
                     result = "{\"OPListForSpecimen:\":\"" + value + "\"}";
                 }
             }
             else if (oPListForSpecimen.Count > 1)
             {
                 // result = ConvertDicToJsonStr(oPListForSpecimen);
                 result = FpJsonHelper.DictionaryToJsonString(oPListForSpecimen);
             }
         }
     }
     return result;
 }
        public IDictionary<DateTime, IDictionary<string, decimal>> GetHistoricalPrices(IEnumerable<Security> securities, DateTime start, DateTime end, Contracts.Period period)
        {
            var symbols = securities.Select(s => s.Symbol).Distinct().ToList();
            var results = new Dictionary<DateTime, IDictionary<string, decimal>>();

            foreach (var s in symbols)
            {
                var prices = _priceFinder.Get(s, start, end, TranslatePeriod(period));
                foreach (var p in prices)
                {
                    IDictionary<string, decimal> datePrices;
                    if (!results.TryGetValue(p.Date, out datePrices))
                    {
                        datePrices = new Dictionary<string, decimal>();
                        results[p.Date] = datePrices;
                    }

                    datePrices[s] = p.Price;
                }
            }

            return results;
        }