KpiTargetSnapshotSql.cs 921 B

123456789101112131415161718192021222324
  1. namespace Admin.NET.Plugin.AiDOP.SmartOps;
  2. public static class KpiTargetSnapshotSql
  3. {
  4. public static object ValueOrDbNull(KpiTargetSnapshot snap) =>
  5. snap.TargetValue.HasValue ? snap.TargetValue.Value : DBNull.Value;
  6. public static object ConfigIdOrDbNull(KpiTargetSnapshot snap) =>
  7. snap.TargetConfigId.HasValue ? snap.TargetConfigId.Value : DBNull.Value;
  8. public static object SourceOrDbNull(KpiTargetSnapshot snap) =>
  9. string.IsNullOrWhiteSpace(snap.TargetSource)
  10. || snap.TargetSource == KpiTargetSnapshotSource.Missing
  11. ? DBNull.Value
  12. : snap.TargetSource;
  13. public static SugarParameter[] Parameters(KpiTargetSnapshot snap) =>
  14. [
  15. new("@TargetValue", ValueOrDbNull(snap)),
  16. new("@TargetConfigId", ConfigIdOrDbNull(snap)),
  17. new("@TargetSource", SourceOrDbNull(snap)),
  18. new("@TargetResolvedAt", snap.ResolvedAt)
  19. ];
  20. }