protected void btnSearch_Click(object sender, EventArgs e)
 {
     if (((this.tb1.Text == "") || (this.tb1.Text == null)) || ((this.tb2.Text == "") || (this.tb2.Text == null)))
     {
         JavaScript.Alert(this.Page, "请输入起止期数!");
     }
     int num = _Convert.StrToInt(this.tb1.Text, 0);
     int num2 = _Convert.StrToInt(this.tb2.Text, 0);
     if (num > num2)
     {
         JavaScript.Alert(this.Page, "起始期数输入有误,请查证在输入!");
     }
     else
     {
         string result = "";
         DataTable table = null;
         table = new TrendChart().SSC_3X_HZST_Select(0, this.tb1.Text.ToString(), this.tb2.Text.ToString(), ref result);
         if ((table != null) && (table.Rows.Count >= 1))
         {
             int count = table.Rows.Count;
             this.tb1.Text = table.Rows[0]["Isuse"].ToString();
             this.tb2.Text = table.Rows[count - 1]["Isuse"].ToString();
         }
         this.GridView1.DataSource = table;
         this.GridView1.DataBind();
         this.ColorBind();
     }
 }
Beispiel #2
0
    private void MyDataBind(int DaySpan, int Type)
    {
        int returnValue = 0;
        string returnDescription = "";
        TrendChart tc = new TrendChart();
        DataTable dt = tc.SYDJ_Q2ZXDYB(DaySpan, Type, ref returnValue, ref returnDescription);
        dtcount = dt.Rows.Count + 13;

        gvtable.DataSource = dt;
        gvtable.DataBind();
    }
 protected void btnTop50_Click(object sender, EventArgs e)
 {
     string result = "";
     DataTable table = new DataTable();
     table = new TrendChart().SSC_4X_ZHFBZST_Select(50, "", "", ref result);
     if ((table != null) && (table.Rows.Count >= 1))
     {
         int count = table.Rows.Count;
         this.tb1.Text = table.Rows[0]["Isuse"].ToString();
         this.tb2.Text = table.Rows[count - 1]["Isuse"].ToString();
     }
     this.GridView1.DataSource = table;
     this.GridView1.DataBind();
 }
Beispiel #4
0
    protected void GridViewBind()
    {
        string result = "";

        DataTable dt = new DataTable();

        dt = new TrendChart().CQSSC_5X_ZST_Select(30, "", "", ref result);
        //.SSC_5X_ZST_Select(30, "", "", ref result); //,默认显示30期

        if (dt == null || dt.Rows.Count < 1)
        {
        }
        else
        {
            int k = dt.Rows.Count;
            tb1.Text = dt.Rows[0]["Isuse"].ToString();
            tb2.Text = dt.Rows[k - 1]["Isuse"].ToString();
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();
    }
Beispiel #5
0
    protected void GridViewBind()
    {
        string result = "";

        DataTable dt = new DataTable();

        dt = new TrendChart().SSQ_HL_Select(30, "", "", ref result); //,默认显示30期

        if (dt == null || dt.Rows.Count < 1)
        {
            //Shove._Web.JavaScript.Alert(this.Page, "数据库里没有此彩种开奖号码信息!");
        }
        else
        {
            int k = dt.Rows.Count;
            tb1.Text = dt.Rows[0]["Isuse"].ToString();
            tb2.Text = dt.Rows[k - 1]["Isuse"].ToString();
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();
    }
Beispiel #6
0
    protected void btnTop100_Click(object sender, EventArgs e)
    {
        string result = "";

        DataTable dt = new DataTable();

        dt = new TrendChart().D4_ZHFB_Select(100, "", "", ref result); //,默认显示100期
        if (dt == null || dt.Rows.Count < 1)
        {
            //Shove._Web.JavaScript.Alert(this.Page, "数据库里没有此彩种开奖号码信息!");
        }
        else
        {
            int i = dt.Rows.Count;
            tb1.Text = dt.Rows[0]["Isuse"].ToString();
            tb2.Text = dt.Rows[i - 1]["Isuse"].ToString();
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();
        ColorBind();
    }
    protected void btnTop50_Click(object sender, EventArgs e)
    {
        string result = "";

        DataTable dt = new DataTable();

        dt = new TrendChart().SSC_2X_HZWZST_Select(50, "", "", ref result); //,默认显示50期

        if (dt == null || dt.Rows.Count < 1)
        {
        }
        else
        {
            int k = dt.Rows.Count;
            tb1.Text = dt.Rows[0]["Isuse"].ToString();
            tb2.Text = dt.Rows[k - 1]["Isuse"].ToString();
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();
        ColorBind();
    }
Beispiel #8
0
    protected void btnSearch_Click(object sender, EventArgs e)
    {
        if (tb1.Text == "" || tb1.Text == null || tb2.Text == "" || tb2.Text == null)
        {
            Shove._Web.JavaScript.Alert(this.Page, "请输入起止期数!");
        }

        int i = Shove._Convert.StrToInt(tb1.Text, 0);
        int j = Shove._Convert.StrToInt(tb2.Text, 0);

        if (i > j)
        {
            Shove._Web.JavaScript.Alert(this.Page, "起始期数输入有误,请查证在输入!");
            return;
        }

        string    result = "";
        DataTable dt     = null;

        dt = new TrendChart().SSQ_HL_Select(0, tb1.Text.ToString(), tb2.Text.ToString(), ref result);

        if (dt == null || dt.Rows.Count < 1)
        {
            //Shove._Web.JavaScript.Alert(this.Page, "数据库里没有此彩种开奖号码信息!");
        }
        else
        {
            int k = dt.Rows.Count;
            tb1.Text = dt.Rows[0]["Isuse"].ToString();
            tb2.Text = dt.Rows[k - 1]["Isuse"].ToString();
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();
        ColorBind();
    }
Beispiel #9
0
    protected void btnSearch_Click(object sender, EventArgs e)
    {
        if (tb1.Text == "" || tb1.Text == null || tb2.Text == "" || tb2.Text == null)
        {
            Shove._Web.JavaScript.Alert(this.Page, "请输入起止期数!");
        }

        int i = Shove._Convert.StrToInt(tb1.Text, 0);
        int j = Shove._Convert.StrToInt(tb2.Text, 0);
        if (i > j)
        {
            Shove._Web.JavaScript.Alert(this.Page, "起始期数输入有误,请查证在输入!");
            return;
        }

        string result = "";
        DataTable dt = null;

        dt = new TrendChart().SSC_5X_ZHZST_Select(0, tb1.Text.ToString(), tb2.Text.ToString(), ref result);

        if (dt == null || dt.Rows.Count < 1)
        {

        }
        else
        {
            int k = dt.Rows.Count;
            tb1.Text = dt.Rows[0]["Isuse"].ToString();
            tb2.Text = dt.Rows[k - 1]["Isuse"].ToString();
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();
        ColorBind();
    }
Beispiel #10
0
    protected void btnTop100_Click(object sender, EventArgs e)
    {
        string result = "";

        DataTable dt = new DataTable();
        dt = new TrendChart().SSC_5X_ZHZST_Select(100, "", "", ref result); //,默认显示100期

        if (dt == null || dt.Rows.Count < 1)
        {

        }
        else
        {
            int k = dt.Rows.Count;
            tb1.Text = dt.Rows[0]["Isuse"].ToString();
            tb2.Text = dt.Rows[k - 1]["Isuse"].ToString();
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();
        ColorBind();
    }
Beispiel #11
0
    protected void GridViewBind()
    {
        string result = "";

        DataTable dt = new DataTable();
        dt = new TrendChart().SSC_5X_ZHZST_Select(30, "", "", ref result); //,默认显示30期

        if (dt == null || dt.Rows.Count < 1)
        {

        }
        else
        {
            int k = dt.Rows.Count;
            tb1.Text = dt.Rows[0]["Isuse"].ToString();
            tb2.Text = dt.Rows[k - 1]["Isuse"].ToString();
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();
    }
 protected void GridViewBind()
 {
     string result = "";
     DataTable table = new DataTable();
     table = new TrendChart().SSC_3X_HZST_Select(30, "", "", ref result);
     if ((table != null) && (table.Rows.Count >= 1))
     {
         int count = table.Rows.Count;
         this.tb1.Text = table.Rows[0]["Isuse"].ToString();
         this.tb2.Text = table.Rows[count - 1]["Isuse"].ToString();
     }
     this.GridView1.DataSource = table;
     this.GridView1.DataBind();
 }
Beispiel #13
0
        public HttpResponseMessage GetTrendChartNewsList(TrendChart arg)
        {
            BaseJson <List <TrendChart_Preview> > resultMsg = new BaseJson <List <TrendChart_Preview> > {
                Status = (int)JsonObjectStatus.Error, Message = "服务器未知错误。", Data = null
            };

            Logger(typeof(TrendChartController), arg.TryToJson(), "查询走势图链接-GetTrendChartNewsList", () =>
            {
                if (!string.IsNullOrEmpty(arg.Category))
                {
                    List <TrendChart_Preview> res = Cache.Factory.CacheFactory.Cache().GetCache <List <TrendChart_Preview> >("__" + arg.Category + "__");
                    if (res == null)
                    {
                        res = new List <TrendChart_Preview>();
                        //如果传入为 GPC 的话,就默认返回高频彩11选5相关数据
                        List <DataItemModel> data = dataItemCache.GetDataItemList(arg.Category.Equals("GPC") ? "GPC11X5" : arg.Category).OrderBy(n => n.SortCode).ToList();
                        string[] ids = data.Select(d => d.ItemDetailId).ToArray();
                        //获取该分类下符合要求的数据
                        List <TrendChartEntity> trendChartEntities = TrendChartBll.GetPageList(n => n.IsDelete == false && n.IsStick == true && ids.Contains(n.CategoryId)).OrderBy(n => n.SortCode).ToList();

                        if (trendChartEntities.Count > 0)
                        {
                            //组装父级相关属性
                            TrendChart_Preview previewItem = new TrendChart_Preview
                            {
                                TrendChartType = arg.Category,
                                ItemName       = dataItemCache.GetDataItemEntityByCode(arg.Category).ItemName
                            };

                            //根据分类ID进行分组
                            IEnumerable <IGrouping <string, TrendChartEntity> > group = trendChartEntities.GroupBy(t => t.CategoryId);
                            List <TempTrendChartPreviewItem> temp = new List <TempTrendChartPreviewItem>();
                            foreach (IGrouping <string, TrendChartEntity> chartEntities in group)
                            {
                                //分类ID
                                string key = chartEntities.Key;
                                //获取分类信息
                                DataItemDetailEntity dataItemEntity = dataItemCache.GetDataItemEntityById(key);

                                List <TrendChartPreviewItem> trendChartPreviewItems = new List <TrendChartPreviewItem>();
                                //组装项目相关属性
                                TempTrendChartPreviewItem item = new TempTrendChartPreviewItem
                                {
                                    TrendChartChildType = dataItemEntity.ItemValue,
                                    TrendChartChildName = dataItemEntity.ItemName
                                };
                                //组装具体信息
                                foreach (TrendChartEntity entity in chartEntities)
                                {
                                    TrendChartPreviewItem p = new TrendChartPreviewItem
                                    {
                                        Title         = entity.Title,
                                        TrendChartUrl = entity.TrendChartUrl
                                    };
                                    trendChartPreviewItems.Add(p);
                                }

                                item.TrendChartPreviewItem = trendChartPreviewItems;

                                temp.Add(item);
                            }
                            previewItem.TrendChartPreviewItems = temp;
                            res.Add(previewItem);
                        }

                        Cache.Factory.CacheFactory.Cache().WriteCache <List <TrendChart_Preview> >(res, "__" + arg.Category + "__");
                    }

                    resultMsg = new BaseJson <List <TrendChart_Preview> >
                    {
                        Status  = (int)JsonObjectStatus.Success,
                        Data    = res,
                        Message = JsonObjectStatus.Success.GetEnumText(),
                        BackUrl = null
                    };
                }
                else
                {
                    resultMsg = new BaseJson <List <TrendChart_Preview> >
                    {
                        Status  = (int)JsonObjectStatus.Fail,
                        Data    = null,
                        Message = JsonObjectStatus.Fail.GetEnumText() + ",请求参数Category为空。",
                        BackUrl = null
                    };
                }
            }, e =>
            {
                resultMsg = new BaseJson <List <TrendChart_Preview> >
                {
                    Status  = (int)JsonObjectStatus.Exception,
                    Data    = null,
                    Message = JsonObjectStatus.Exception.GetEnumText() + ",异常信息:" + e.Message,
                    BackUrl = null
                };
            });
            return(resultMsg.TryToJson().ToHttpResponseMessage());
        }
Beispiel #14
0
    protected void btnTop100_Click(object sender, EventArgs e)
    {
        string result = "";

        DataTable dt = new DataTable();
        dt = new TrendChart().SSQ_HL_Select(100, "", "", ref result); //,默认显示100期

        if (dt == null || dt.Rows.Count < 1)
        {
            //Shove._Web.JavaScript.Alert(this.Page, "数据库里没有此彩种开奖号码信息!");
        }
        else
        {
            int k = dt.Rows.Count;
            tb1.Text = dt.Rows[0]["Isuse"].ToString();
            tb2.Text = dt.Rows[k - 1]["Isuse"].ToString();
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();
        ColorBind();
    }
Beispiel #15
0
        private void InitTrendChart()
        {
            /*
             *
             * DateTime dt;
             *
             * DateTimeFormatInfo dtFormat = new DateTimeFormatInfo();
             * dtFormat.ShortDatePattern = "hh:mm:ss";
             *
             * dt = Convert.ToDateTime("10:10:10", dtFormat);
             * MessageBox.Show(dt.ToString());
             */

            TrendChart.InfoPanelUpdated += TrendChart_InfoPanelUpdated;
            TrendChart.ClearAll();
            TrendChart.Freeze();
            TrendChart.Symbol = "分时";
            _trendTopPanel    = TrendChart.AddChartPanel();

            _trendVolumePanel = TrendChart.AddChartPanel(ChartPanel.PositionType.AlwaysBottom);

            TrendChart.SetStyle();
            _trendTopPanel.SetStyle();
            _trendVolumePanel.SetStyle();

            /* 成交量 */
            _trendVolumeSeries = TrendChart.AddVolumeSeries(TrendChart.Symbol, _trendVolumePanel.Index, StandSeriesBarType.Line);
            _trendVolumeSeries.StrokeThickness = 1;

            /* 最新价 加权平均价 */
            _lastSeries = (Standard)TrendChart.AddSeries(LastSeriesName, _trendTopPanel.Index);
            _wavgSeries = (Standard)TrendChart.AddSeries(WavgSeriesName, _trendTopPanel.Index);

            _trendTopPanel.YAxisUseUpDownColors    = true;
            _trendTopPanel.YAxisColorsBaseOnSeries = _wavgSeries;

            _lastSeries.StrokeColor = Color.FromRgb(0x42, 0x9a, 0xee);
            _lastSeries.UpColor     = Color.FromRgb(0x42, 0x9a, 0xee);
            _lastSeries.DownColor   = Color.FromRgb(0x42, 0x9a, 0xee);

            _wavgSeries.StrokeColor = Colors.Orange;
            _wavgSeries.UpColor     = Colors.Orange;
            _wavgSeries.DownColor   = Colors.Orange;

            _trendVolumeSeries.DownColor = Color.FromRgb(0x29, 0xb8, 0x1e);
            _trendVolumeSeries.UpColor   = Color.FromRgb(0xf5, 0x1d, 0x27);

            var    date      = DateTime.Now.Date.AddHours(9).AddMinutes(30);
            int    amount    = 100000;
            double lastPrice = 50;
            double wavgPrice = 40;
            Random r         = new Random(DateTime.Now.Millisecond);

            while (date <= DateTime.Now.Date.AddHours(11).AddMinutes(30))
            {
                TrendChart.AppendVolumeValue(TrendChart.Symbol, date, amount);
                TrendChart.AppendValue(LastSeriesName, date, lastPrice);
                TrendChart.AppendValue(WavgSeriesName, date, wavgPrice);
                amount    = 100000 + (int)(r.NextDouble() * 10000 - 5000);
                lastPrice = lastPrice + r.NextDouble() * 10 - 5;
                wavgPrice = wavgPrice + r.NextDouble() * 8 - 4;
                date      = date.AddMinutes(1);
            }

            date = DateTime.Now.Date.AddHours(13).AddMinutes(0);
            while (date <= DateTime.Now.Date.AddHours(15))
            {
                TrendChart.AppendVolumeValue(TrendChart.Symbol, date, null);
                TrendChart.AppendValue(LastSeriesName, date, null);
                TrendChart.AppendValue(WavgSeriesName, date, null);
                date = date.AddMinutes(1);
            }


            TrendChart.MaxVisibleRecords  = TrendChart.RecordCount;
            TrendChart.FirstVisibleRecord = 0;
            TrendChart.LastVisibleRecord  = TrendChart.RecordCount;

            TrendChart.UseLineSeriesUpDownColors = true;
            double totalPanelHeight = TrendChart.PanelsCollection.Sum(p => p.Height);

            TrendChart.SetPanelHeight(0, totalPanelHeight * 0.75);

            /* 量单位 */
            if (_trendVolumeSeries.Max < 10000)
            {
            }
            else if (_trendVolumeSeries.Max < 10000 * 10000)
            {
                TrendChart.VolumePostfixLetter = "万";
                TrendChart.VolumeDivisor       = 10000;
            }
            else //if (_trendVolumeSeries.Max < 10000 * 10000 * 1000d)
            {
                TrendChart.VolumePostfixLetter = "亿";
                TrendChart.VolumeDivisor       = 10000 * 10000;
            }

            TrendChart.InfoPanelPosition = InfoPanelPositionEnum.FixedPosition;

            TrendChart.IsChartScrollerVisible  = false;
            _trendTopPanel.YAxisScalePrecision = 5;
            TrendChart.UserXAxisLabels.Add(DateTime.Now.Date.AddHours(9).AddMinutes(30));
            TrendChart.UserXAxisLabels.Add(DateTime.Now.Date.AddHours(10).AddMinutes(30));
            TrendChart.UserXAxisLabels.Add(DateTime.Now.Date.AddHours(11).AddMinutes(30));
            TrendChart.UserXAxisLabels.Add(DateTime.Now.Date.AddHours(14).AddMinutes(00));
            TrendChart.UserXAxisLabels.Add(DateTime.Now.Date.AddHours(15).AddMinutes(00));

            TrendChart.CalendarVersion = CalendarVersionType.UserXAxis;

            TrendChart.DeleteTimestampsRange(DateTime.Now.Date.AddHours(11).AddMinutes(31),
                                             DateTime.Now.Date.AddHours(12).AddMinutes(59));

            TrendChart.Melt();
            TrendChart.Update();
        }
        public IHttpActionResult SingleTrendChart(ChartQuery note)
        {
            JsonObject json = new JsonObject();

            if (Convert.ToDateTime(note.BeginTime) >= Convert.ToDateTime(note.EndTime))
            {
                json["Error"] = "Begin Time <End Time";
                return(Ok(json));;
            }
            try
            {
                int AB = Convert.ToInt32(note.AB);
                if (note.Isdelegate)
                {
                    AB = 4;
                }


                ChartCreater cc = new ChartCreater();
                int          i;
                i = cc.FillData(note.SampleName, note.LOT_NO, note.Line, note.Property, Convert.ToDateTime(note.BeginTime), Convert.ToDateTime(note.EndTime), AB);
                TrendChart dic = new TrendChart();
                cc.SingleTrendChart(ref dic);

                #region red
                decimal[][] red = null;
                if (dic.Number != null && dic.testScores != null && dic.Number.Length != 0 && dic.testScores.Length != 0)
                {
                    red = new decimal[dic.Number.Length][];
                    for (int r = 0; r < dic.Number.Length; r++)
                    {
                        red[r]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        red[r][0] = dic.Number[r];
                        red[r][1] = dic.testScores[r];
                    }
                    json["RedPoint"] = red;
                }
                #endregion

                #region 超线的点1
                if (dic.overCLNumbers != null && dic.overCLScores != null &&
                    dic.overCLNumbers.Length != 0 && dic.overCLScores.Length != 0 && dic.overCLNumbers.Length == dic.overCLScores.Length)
                {
                    decimal[][] over1 = new decimal[dic.overCLNumbers.Length][];
                    for (int r = 0; r < dic.overCLNumbers.Length; r++)
                    {
                        over1[r]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        over1[r][0] = dic.overCLNumbers[r];
                        over1[r][1] = dic.overCLScores[r];
                    }
                    json["Over1"] = over1;
                }
                #endregion

                #region 超线的点2
                if (dic.overNumbers != null && dic.overTestScores != null &&
                    dic.overNumbers.Length != 0 && dic.overTestScores.Length != 0 && dic.overNumbers.Length == dic.overTestScores.Length)
                {
                    decimal[][] over2 = new decimal[dic.overNumbers.Length][];
                    for (int r = 0; r < dic.overNumbers.Length; r++)
                    {
                        over2[r]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        over2[r][0] = dic.overNumbers[r];
                        over2[r][1] = dic.overTestScores[r];
                    }
                    json["Over2"] = over2;
                }
                #endregion
                json["ChartData"]    = dic;
                json["ChartCreater"] = cc;
                List <decimal> maxs = new List <decimal>();
                List <decimal> mins = new List <decimal>();
                if (dic.testScores != null && dic.testScores.Length != 0)
                {
                    maxs.Add(dic.testScores.Max());
                    mins.Add(dic.testScores.Min());
                }
                if (dic.overCLScores != null && dic.overCLScores.Length != 0)
                {
                    maxs.Add(dic.overCLScores.Max());
                    mins.Add(dic.overCLScores.Min());
                }
                if (dic.overTestScores != null && dic.overTestScores.Length != 0)
                {
                    maxs.Add(dic.overTestScores.Max());
                    mins.Add(dic.overTestScores.Min());
                }
                json["Model"]    = dic;
                json["maxValue"] = GetMinValueChart(dic, maxs.Max(), mins.Min(), true);
                json["minValue"] = GetMinValueChart(dic, maxs.Max(), mins.Min(), false);
                json["maxPoint"] = maxs.Max();
                json["minPoint"] = mins.Min();

                return(Ok(json));
            }
            catch (Exception e)
            {
                json["Error"] = e.Message + "-" + e.StackTrace;
                return(Ok(json));
            }
        }
        public IHttpActionResult MRChart(ChartQuery note)
        {
            JsonObject json = new JsonObject();

            if (Convert.ToDateTime(note.BeginTime) >= Convert.ToDateTime(note.EndTime))
            {
                json["Error"] = "Begin Time <End Time";
                return(Ok(json));;
            }
            try
            {
                int AB = Convert.ToInt32(note.AB);
                if (note.Isdelegate)
                {
                    AB = 4;
                }

                ChartCreater cc = new ChartCreater();
                int          i;
                i = cc.FillData(note.SampleName, note.LOT_NO, note.Line, note.Property, Convert.ToDateTime(note.BeginTime), Convert.ToDateTime(note.EndTime), AB);
                TrendChart dic = new TrendChart();
                cc.IChart(ref dic);
                json["Model"] = dic;
                #region 趋势图

                if (dic.Number != null && dic.testScores != null && dic.Number.Length != 0 && dic.testScores.Length != 0)
                {
                    decimal[][] red = new decimal[dic.Number.Length][];
                    for (int r = 0; r < dic.Number.Length; r++)
                    {
                        red[r]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        red[r][0] = dic.Number[r];
                        red[r][1] = dic.testScores[r];
                    }
                    json["Trend"] = red;

                    List <decimal> allLines = new List <decimal>();
                    if (dic.USL != decimal.MinValue)
                    {
                        allLines.Add(dic.USL);
                    }
                    if (dic.LSL != decimal.MinValue)
                    {
                        allLines.Add(dic.LSL);
                    }
                    if (dic.CL != decimal.MinValue)
                    {
                        allLines.Add(dic.CL);
                    }
                    if (dic.UCL != decimal.MinValue)
                    {
                        allLines.Add(dic.UCL);
                    }
                    if (dic.LCL != decimal.MinValue)
                    {
                        allLines.Add(dic.LCL);
                    }
                    if (dic.LUCL != decimal.MinValue)
                    {
                        allLines.Add(dic.LUCL);
                    }
                    if (dic.LLCL != decimal.MinValue)
                    {
                        allLines.Add(dic.LLCL);
                    }
                    if (dic.X != decimal.MinValue)
                    {
                        allLines.Add(dic.X);
                    }

                    #region 最大值的点
                    if (red != null && red.Length != 0)
                    {
                        decimal[][] maxSpots = new decimal[2][];
                        maxSpots[0]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        maxSpots[0][0] = red[0][0];
                        maxSpots[0][1] = allLines.Max();
                        maxSpots[1]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        maxSpots[1][0] = red[red.Length - 1][0];
                        maxSpots[1][1] = allLines.Max();

                        json["MaxSpots"] = maxSpots;
                    }
                    #endregion

                    #region 最小值的点
                    if (red != null && red.Length != 0)
                    {
                        decimal[][] minSpots = new decimal[2][];
                        minSpots[0]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        minSpots[0][0] = red[0][0];
                        minSpots[0][1] = allLines.Min();
                        minSpots[1]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        minSpots[1][0] = red[red.Length - 1][0];
                        minSpots[1][1] = allLines.Min();

                        json["MinSpots"] = minSpots;
                    }
                    #endregion
                }
                #endregion

                #region 超线的点1
                if (dic.overCLNumbers != null && dic.overCLScores != null &&
                    dic.overCLNumbers.Length != 0 && dic.overCLScores.Length != 0 && dic.overCLNumbers.Length == dic.overCLScores.Length)
                {
                    decimal[][] over1 = new decimal[dic.overCLNumbers.Length][];
                    for (int r = 0; r < dic.overCLNumbers.Length; r++)
                    {
                        over1[r]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        over1[r][0] = dic.overCLNumbers[r];
                        over1[r][1] = dic.overCLScores[r];
                    }
                    json["Over1"] = over1;
                }
                #endregion

                #region 超线的点2
                if (dic.overNumbers != null && dic.overTestScores != null &&
                    dic.overNumbers.Length != 0 && dic.overTestScores.Length != 0 && dic.overNumbers.Length == dic.overTestScores.Length)
                {
                    decimal[][] over2 = new decimal[dic.overNumbers.Length][];
                    for (int r = 0; r < dic.overNumbers.Length; r++)
                    {
                        over2[r]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        over2[r][0] = dic.overNumbers[r];
                        over2[r][1] = dic.overTestScores[r];
                    }

                    json["Over2"] = over2;
                    //ViewBag.Over2 = over2;
                }
                #endregion

                #region MRChart
                TrendChart dicR = new TrendChart();
                cc.MRChart(ref dicR);

                #region 趋势图
                if (dicR.Number != null && dicR.testScores != null &&
                    dicR.Number.Length != 0 && dicR.testScores.Length != 0 && dicR.Number.Length == dicR.testScores.Length)
                {
                    decimal[][] trendR = new decimal[dicR.Number.Length][];
                    for (int r = 0; r < dicR.Number.Length; r++)
                    {
                        trendR[r]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        trendR[r][0] = dicR.Number[r];
                        trendR[r][1] = dicR.testScores[r];
                    }

                    json["TrendR"] = trendR;
                    List <decimal> allLinesMR = new List <decimal>();
                    if (dicR.UCL != decimal.MinValue)
                    {
                        allLinesMR.Add(dicR.UCL);
                    }
                    if (dicR.LCL != decimal.MinValue)
                    {
                        allLinesMR.Add(dicR.LCL);
                    }
                    if (dicR.MR != decimal.MinValue)
                    {
                        allLinesMR.Add(dicR.MR);
                    }
                    #region MR图最大值的点
                    if (trendR != null && trendR.Length != 0)
                    {
                        decimal[][] maxSpotsMR = new decimal[2][];
                        maxSpotsMR[0]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        maxSpotsMR[0][0] = trendR[0][0];
                        maxSpotsMR[0][1] = allLinesMR.Max();
                        maxSpotsMR[1]    = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        maxSpotsMR[1][0] = trendR[trendR.Length - 1][0];
                        maxSpotsMR[1][1] = allLinesMR.Max();

                        json["MaxSpotsMR"] = maxSpotsMR;
                    }
                    #endregion

                    #region MR图最小值的点
                    if (trendR != null && trendR.Length != 0)
                    {
                        decimal[][] minSpotsMR = new decimal[2][];
                        minSpotsMR[0]      = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        minSpotsMR[0][0]   = trendR[0][0];
                        minSpotsMR[0][1]   = allLinesMR.Min();
                        minSpotsMR[1]      = (decimal[])Array.CreateInstance(typeof(decimal), 2);
                        minSpotsMR[1][0]   = trendR[trendR.Length - 1][0];
                        minSpotsMR[1][1]   = allLinesMR.Min();
                        json["MinSpotsMR"] = minSpotsMR;
                    }
                    #endregion
                }
                #endregion

                json["DicR"] = dicR;
                #endregion
                json["ChartCreater"] = cc;

                return(Ok(json));
            }
            catch (Exception e)
            {
                json["Error"] = e.Message + "-" + e.StackTrace;
                return(Ok(json));
            }
        }
Beispiel #18
0
    protected void GridViewBind()
    {
        string result = "";

        DataTable dt = new DataTable();
        dt = new TrendChart().FC3D_ZHFB_Select(30, "", "", ref result); //,默认显示30期

        if (dt == null || dt.Rows.Count < 1)
        {
            //Shove._Web.JavaScript.Alert(this.Page, "数据库里没有此彩种开奖号码信息!");
        }
        else
        {
            int i = dt.Rows.Count;
            tb1.Text = dt.Rows[0]["Isuse"].ToString();
            tb2.Text = dt.Rows[i - 1]["Isuse"].ToString();
        }

        GridView1.DataSource = dt;
        GridView1.DataBind();
    }