erp-platform/api/src/Erp.Platform.Domain/Queries/ChartSeries.cs
2025-11-11 22:49:52 +03:00

126 lines
3.4 KiB
C#

using System.Collections.Generic;
using System.Text.Json.Serialization;
using Volo.Abp.Domain.Values;
namespace Erp.Platform.Queries;
public class ChartSeries : ValueObject
{
[JsonInclude]
[JsonPropertyName("ArgumentField")]
public string ArgumentField { get; private set; } = "arg";
[JsonInclude]
[JsonPropertyName("Axis")]
public string Axis { get; private set; }
[JsonInclude]
[JsonPropertyName("BarOverlapGroup")]
public string BarOverlapGroup { get; private set; }
[JsonInclude]
[JsonPropertyName("BarPadding")]
public int BarPadding { get; private set; }
[JsonInclude]
[JsonPropertyName("BarWidth")]
public int BarWidth { get; private set; }
[JsonInclude]
[JsonPropertyName("Color")]
public string Color { get; private set; }
[JsonInclude]
[JsonPropertyName("CornerRadius")]
public int CornerRadius { get; private set; } = 0;
[JsonInclude]
[JsonPropertyName("DashStyle")]
public string DashStyle { get; private set; } = "solid";
[JsonInclude]
[JsonPropertyName("IgnoreEmptyPoints")]
public bool IgnoreEmptyPoints { get; private set; } = false;
[JsonInclude]
[JsonPropertyName("Name")]
public string Name { get; private set; }
[JsonInclude]
[JsonPropertyName("Pane")]
public string Pane { get; private set; }
[JsonInclude]
[JsonPropertyName("RangeValue1Field")]
public string RangeValue1Field { get; private set; } = "val1";
[JsonInclude]
[JsonPropertyName("RangeValue2Field")]
public string RangeValue2Field { get; private set; } = "val2";
[JsonInclude]
[JsonPropertyName("SelectionMode")]
public string SelectionMode { get; private set; } = "none";
[JsonInclude]
[JsonPropertyName("ShowInLegend")]
public bool ShowInLegend { get; private set; } = true;
[JsonInclude]
[JsonPropertyName("Type")]
public string Type { get; private set; }
[JsonInclude]
[JsonPropertyName("ValueField")]
public string ValueField { get; private set; }
[JsonInclude]
[JsonPropertyName("SummaryType")]
public string SummaryType { get; private set; }
[JsonInclude]
[JsonPropertyName("Visible")]
public bool Visible { get; private set; } = true;
[JsonInclude]
[JsonPropertyName("Width")]
public int Width { get; private set; } = 2;
[JsonInclude]
[JsonPropertyName("Label")]
public ChartLabel Label { get; private set; } = new();
[JsonInclude]
[JsonPropertyName("UserId")]
public string UserId { get; private set; }
// JSON + EF Core için parametresiz public ctor
public ChartSeries() { }
protected override IEnumerable<object> GetAtomicValues()
{
yield return ArgumentField;
yield return Axis;
yield return BarOverlapGroup;
yield return BarPadding;
yield return BarWidth;
yield return Color;
yield return CornerRadius;
yield return DashStyle;
yield return IgnoreEmptyPoints;
yield return Name;
yield return Pane;
yield return RangeValue1Field;
yield return RangeValue2Field;
yield return SelectionMode;
yield return ShowInLegend;
yield return Type;
yield return ValueField;
yield return SummaryType;
yield return Visible;
yield return Width;
yield return Label;
yield return UserId;
}
}