Exemple #1
0
 protected void btnAdd_Click(object sender, EventArgs e)
 {
     try
     {
         var model = new SysReportDisplayField();
         model.DisplayFieldId = this.DataHelper.GetNextIdentity_Int();
         model.ReportId       = this.__Id;
         var _MaxOrderIndex = this.DataHelper.Where <SysReportDisplayField>(p => p.ReportId == this.__Id).OrderByDescending(p => p.OrderIndex).FirstOrDefault();
         if (_MaxOrderIndex == null)
         {
             model.OrderIndex = 1;
         }
         else
         {
             model.OrderIndex = _MaxOrderIndex.OrderIndex + 1;
         }
         model.Aliases     = this.ccDisplayField.SelectedValue;
         model.DisplayText = this.ccDisplayField.SelectedText;
         this.DataHelper.Insert(model);
         InitGrid();
         this.AjaxAlertAndEnableButton(string.Empty);
     }
     catch (Exception ex)
     {
         this.AjaxAlertAndEnableButton(ex);
     }
 }
Exemple #2
0
        private void InitData()
        {
            var model = this.DataHelper.FindById <SysReport>(this.__Id);

            this.tcTopN.SetValue(model.TopN);
            this.ccIsGraph.SetValue(model.IsGraph);
            if (model.IsGroup == true)
            {
                //只有分组才能配置图形
                this.divIsGraph.Visible = true;
                //分组的话分组字段和汇总字段都可以用来排序
                var _GroupFields = this.DataHelper.Where <SysReportGroupField>(p => p.ReportId == this.__Id);
                var _SumFields   = this.DataHelper.Where <SysReportSumFiled>(p => p.ReportId == this.__Id);
                _GroupFields.ForEach(p =>
                {
                    this.ccDisplayField.Items.Add(new ComboItem()
                    {
                        Text  = p.QueryFieldDisplayText,
                        Value = p.QueryFieldAliases,
                    });
                });

                _SumFields.ForEach(p =>
                {
                    this.ccDisplayField.Items.Add(new ComboItem()
                    {
                        Text  = p.DisplayText,
                        Value = p.Aliases,
                    });
                });
            }
            else
            {
                //不分组一定要把图形配置去掉
                if (model.IsGraph == true)
                {
                    model.IsGraph = false;
                    this.DataHelper.UpdatePartial(model, p => new { p.IsGraph });
                }
                //不分组的话只有查询字段可以用来排序
                var _QueryFields = this.DataHelper.Where <SysReportQueryField>(p => p.ReportId == this.__Id);
                _QueryFields.ForEach(p =>
                {
                    this.ccDisplayField.Items.Add(new ComboItem()
                    {
                        Text  = p.DisplayText,
                        Value = p.Aliases,
                    });
                });
            }

            //删除垃圾字段
            this.DataHelper.Where <SysReportDisplayField>(p => p.ReportId == this.__Id)
            .ForEach(p =>
            {
                if (this.ccDisplayField.Items.FirstOrDefault(q => q.Value == p.Aliases) == null)
                {
                    this.DataHelper.Delete(p);
                }
            });

            //如果是第一次配置到这里,默认把能显示的字段全部默认显示
            if (this.DataHelper.Where <SysReportDisplayField>(p => p.ReportId == this.__Id).Count == 0)
            {
                var _Index = 1;
                foreach (var item in this.ccDisplayField.Items)
                {
                    var _ReportDisplayField = new SysReportDisplayField();
                    _ReportDisplayField.DisplayFieldId = this.DataHelper.GetNextIdentity_Int();
                    _ReportDisplayField.ReportId       = this.__Id;
                    _ReportDisplayField.OrderIndex     = _Index;
                    _Index++;

                    _ReportDisplayField.Aliases     = item.Value;
                    _ReportDisplayField.DisplayText = item.Text;
                    this.DataHelper.Insert(_ReportDisplayField);
                }
            }
            InitGrid();
        }