public void ProcessDvColumnCollection() { //if (this.DVColumnColl != null)////////check // return; this.Controls.Where(e => (e as EbDGColumn).Width <= 0).ToList().ForEach(e => (e as EbDGColumn).Width = 10); int widthSum = this.Controls.Where(e => !e.IsDisable).Select(e => (e as EbDGColumn).Width).Sum(); this.DVColumnColl = new DVColumnCollection(); int indx = 0; foreach (EbDGColumn column in this.Controls) { DVBaseColumn _col = column.GetDVBaseColumn(indx); if (!column.IsDisable) { _col.sWidth = column.Width * 100.0 / widthSum + "%"; } //if (column.EbDbType == EbDbTypes.Int16 || column.EbDbType == EbDbTypes.Int32 || column.EbDbType == EbDbTypes.Int64 || column.EbDbType == EbDbTypes.Double || column.EbDbType == EbDbTypes.Decimal || column.EbDbType == EbDbTypes.VarNumeric) // _col = new DVNumericColumn { Data = indx, Name = column.Name, sTitle = column.Name, Type = column.EbDbType, bVisible = true, sWidth = "100px", // Align = Align.Right, Aggregate = true,DecimalPlaces=2 }; //else if (column.EbDbType == EbDbTypes.Boolean) // _col = new DVBooleanColumn { Data = indx, Name = column.Name, sTitle = column.Name, Type = column.EbDbType, bVisible = true, sWidth = "100px" }; //else if (column.EbDbType == EbDbTypes.DateTime || column.EbDbType == EbDbTypes.Date || column.EbDbType == EbDbTypes.Time) // _col = new DVDateTimeColumn { Data = indx, Name = column.Name, sTitle = column.Name, sType = "date-uk", Type = column.EbDbType, bVisible = true, sWidth = "100px" }; //else // _col = new DVStringColumn { Data = indx, Name = column.Name, sTitle = column.Name, Type = column.EbDbType, bVisible = true, sWidth = "100px" }; _col.EbSid = column.EbDbType.ToString() + indx; _col.RenderType = _col.Type; DVColumnColl.Add(_col); indx++; } DVColumnColl.Add(new DVStringColumn { Data = indx++, Name = "id", sTitle = "id", Type = EbDbTypes.Int32, bVisible = false, sWidth = "100px" }); DVColumnColl.Add(new DVStringColumn { IsCustomColumn = true, Data = indx, Name = "settings", sTitle = "<i class='fa fa-cog'></i>", Type = EbDbTypes.String, bVisible = true, sWidth = "100px" }); }
private string GetFormattedValue(long value, EbDataRow row, int columnIndex, long prev_value, CultureInfo _user_culture, DVBaseColumn col) { string Val = (value == 0) ? string.Empty : Convert.ToDecimal(value).ToString("N", _user_culture.NumberFormat); string formatteddata = string.Empty; if (ConditionalFormating.Count > 0) { DoConditionalFormating(ref formatteddata, value, row); } else { if (this.ObjectLinks.Count == 1) { formatteddata = "<a href ='#' class ='tablelink4calendar cal-data' idx='" + columnIndex + "'>" + Val + "</a>"; } else { formatteddata = "<span clas ='cal-data'>" + Val + "</span>"; } if (ShowGrowthPercentage && CalendarType != AttendanceType.DayWise && prev_value > 0 && value > 0) { long percent = ((value - prev_value) * 100) / value; string color = "green", direction = "up"; if (percent < 0) { color = "red"; direction = "down"; percent *= -1; } ; formatteddata += @" <span class='per-cont " + color + "'>" + "<i class='fa fa-caret-" + direction + "'></i>" + "<div class='val-perc'>" + percent + "% </div>" + "</span>"; } } formatteddata = $"<div class='dataclass {col.Name}_class'>{formatteddata }</div>"; return(formatteddata); }
private EbDataVisualization getDVObject(EbDataVisualization dvobj) { //DataSourceColumnsResponse columnresp = null; DataSourceColumnsResponse columnresp = this.Redis.Get <DataSourceColumnsResponse>(string.Format("{0}_columns", dvobj.DataSourceRefId)); if (columnresp == null || columnresp.Columns.Count == 0) { columnresp = this.ServiceClient.Get <DataSourceColumnsResponse>(new DataSourceColumnsRequest { RefId = dvobj.DataSourceRefId, TenantAccountId = ViewBag.cid }); } dvobj.AfterRedisGet(this.Redis); var __columns = (columnresp.Columns.Count > 1) ? columnresp.Columns[1] : columnresp.Columns[0]; int _pos = __columns.Count + 100; dvobj.Columns = new DVColumnCollection(); // Add Serial & Checkbox //dvobj.Columns.Add(new DVNumericColumn { Name = "serial", sTitle = "#", Type = DbType.Int64, bVisible = true, sWidth = "10px", Pos = -2 }); //dvobj.Columns.Add(new DVBooleanColumn { Name = "checkbox", sTitle = "checkbox", Type = DbType.Boolean, bVisible = false, sWidth = "10px", Pos = -1 }); foreach (EbDataColumn column in __columns) { DVBaseColumn _col = null; if (column.Type == DbType.String) { _col = new DVStringColumn { Data = column.ColumnIndex, Name = column.ColumnName, sTitle = column.ColumnName, Type = column.Type, bVisible = true, sWidth = "100px", Pos = _pos, ClassName = "tdheight" } } ; else if (column.Type == DbType.Int16 || column.Type == DbType.Int32 || column.Type == DbType.Int64 || column.Type == DbType.Double || column.Type == DbType.Decimal || column.Type == DbType.VarNumeric) { _col = new DVNumericColumn { Data = column.ColumnIndex, Name = column.ColumnName, sTitle = column.ColumnName, Type = column.Type, bVisible = true, sWidth = "100px", Pos = _pos, ClassName = "tdheight dt-body-right" } } ; else if (column.Type == DbType.Boolean) { _col = new DVBooleanColumn { Data = column.ColumnIndex, Name = column.ColumnName, sTitle = column.ColumnName, Type = column.Type, bVisible = true, sWidth = "100px", Pos = _pos, ClassName = "tdheight" } } ; else if (column.Type == DbType.DateTime || column.Type == DbType.Date || column.Type == DbType.Time) { _col = new DVDateTimeColumn { Data = column.ColumnIndex, Name = column.ColumnName, sTitle = column.ColumnName, Type = column.Type, bVisible = true, sWidth = "100px", Pos = _pos, ClassName = "tdheight" } } ; dvobj.Columns.Add(_col); } dvobj.DSColumns = dvobj.Columns; return(dvobj); } }
public void AfterRedisGetBasicInfo(IServiceClient client, IRedisClient Redis) { this.FormLinks = new List <FormLink>(); foreach (DVBaseColumn col in this.Columns) { if (col.Check4FormLink()) { try { this.WebForm = Redis.Get <EbWebForm>(col.LinkRefId); if (this.WebForm == null) { var result = client.Get <EbObjectParticularVersionResponse>(new EbObjectParticularVersionRequest { RefId = col.LinkRefId }); this.WebForm = EbSerializers.Json_Deserialize(result.Data[0].Json); Redis.Set <EbWebForm>(col.LinkRefId, this.WebForm); } this.FormLinks.Add(new FormLink { DisplayName = this.WebForm.DisplayName, Refid = col.LinkRefId, Params = col.FormParameters }); } catch (Exception e) { Console.WriteLine("AfterRedisGetBasicInfo " + e.Message); } } } this.FormLinks = this.FormLinks.GroupBy(x => x.Refid).Select(x => x.First()).ToList(); DVBaseColumn Col = this.Columns.Get("eb_action"); if (Col != null) { foreach (DVColumnCollection _colcoll in this.ColumnsCollection) { DVBaseColumn __col = _colcoll.Pop(Col.Name, EbDbTypes.String, false); } if (Col is DVStringColumn && this.AutoGen) { DVBaseColumn actcol = new DVActionColumn { Data = Col.Data, Name = Col.Name, sTitle = Col.sTitle, Type = EbDbTypes.String, bVisible = true, sWidth = "100px", ClassName = Col.ClassName, LinkRefId = Col.LinkRefId, LinkType = Col.LinkType, FormMode = Col.FormMode, FormId = Col.FormId, Align = Align.Center, IsCustomColumn = true }; this.Columns.Remove(Col); this.Columns.Add(actcol); } } if (this.Columns.Get("eb_created_by") != null) { this.Columns.Get("eb_created_by").RenderType = EbDbTypes.String; } if (this.Columns.Get("eb_lastmodified_by") != null) { this.Columns.Get("eb_lastmodified_by").RenderType = EbDbTypes.String; } if (this.Columns.Get("eb_loc_id") != null) { this.Columns.Get("eb_loc_id").RenderType = EbDbTypes.String; } }