From 11f21c267c077c3fa7c156820932415fb9af4ebc Mon Sep 17 00:00:00 2001
From: Marcel Nellesen <nellesen@itc.rwth-aachen.de>
Date: Thu, 22 Oct 2020 07:38:24 +0200
Subject: [PATCH] Adjusted Model (coscine/issues#1051)

---
 src/Database.T4/DataModel/CsDatabase.tt       |  2 +-
 src/Database.T4/Database.T4.csproj            |  2 +-
 src/Database.T4/Properties/AssemblyInfo.cs    |  2 +-
 src/Database.T4/packages.config               |  2 +-
 src/Database.Tests/Database.Tests.csproj      |  2 +-
 src/Database.Tests/Properties/AssemblyInfo.cs |  2 +-
 src/Database.Tests/packages.config            |  2 +-
 src/Database/Models/KpiModel.cs               |  7 ++++
 src/Database/Properties/AssemblyInfo.cs       |  2 +-
 src/Database/ReturnObjects/KpiObject.cs       | 32 +++++++++++++------
 10 files changed, 38 insertions(+), 17 deletions(-)

diff --git a/src/Database.T4/DataModel/CsDatabase.tt b/src/Database.T4/DataModel/CsDatabase.tt
index 16b35ea..a64f6f5 100644
--- a/src/Database.T4/DataModel/CsDatabase.tt
+++ b/src/Database.T4/DataModel/CsDatabase.tt
@@ -4,7 +4,7 @@
 <#@ include file="$(ProjectDir)\LinqToDB.Templates\PluralizationService.ttinclude"     #>
 
 <#@ assembly name="$(ProjectDir)..\packages\Coscine.Configuration.1.5.0\lib\net461\Coscine.Configuration.dll"#>
-<#@ assembly name="$(ProjectDir)..\packages\Coscine.Migrations.1.8.0-topic-1051-basic0002\lib\net461\Coscine.Migrations.dll" #>
+<#@ assembly name="$(ProjectDir)..\packages\Coscine.Migrations.1.8.0-topic-1051-basic0005\lib\net461\Coscine.Migrations.dll" #>
 <#@ assembly name="$(ProjectDir)..\packages\Coscine.Database.Helpers.1.1.0\lib\net461\Coscine.Database.Helpers.dll" #>
 
 <#@ assembly name="$(ProjectDir)..\packages\Microsoft.Extensions.DependencyInjection.2.0.0\lib\netstandard2.0\Microsoft.Extensions.DependencyInjection.dll"#>
diff --git a/src/Database.T4/Database.T4.csproj b/src/Database.T4/Database.T4.csproj
index c001669..68ad37c 100644
--- a/src/Database.T4/Database.T4.csproj
+++ b/src/Database.T4/Database.T4.csproj
@@ -50,7 +50,7 @@
       <HintPath>..\packages\Coscine.Database.Helpers.1.1.0\lib\net461\Coscine.Database.Helpers.dll</HintPath>
     </Reference>
     <Reference Include="Coscine.Migrations, Version=1.8.0.0, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\packages\Coscine.Migrations.1.8.0-topic-1051-basic0002\lib\net461\Coscine.Migrations.dll</HintPath>
+      <HintPath>..\packages\Coscine.Migrations.1.8.0-topic-1051-basic0005\lib\net461\Coscine.Migrations.dll</HintPath>
     </Reference>
     <Reference Include="FluentMigrator, Version=3.2.8.0, Culture=neutral, PublicKeyToken=aacfc7de5acabf05, processorArchitecture=MSIL">
       <HintPath>..\packages\FluentMigrator.3.2.8\lib\net461\FluentMigrator.dll</HintPath>
diff --git a/src/Database.T4/Properties/AssemblyInfo.cs b/src/Database.T4/Properties/AssemblyInfo.cs
index 0d14773..ed85e56 100644
--- a/src/Database.T4/Properties/AssemblyInfo.cs
+++ b/src/Database.T4/Properties/AssemblyInfo.cs
@@ -11,6 +11,6 @@ using System.Reflection;
 [assembly: AssemblyProduct("Database.T4")]
 [assembly: AssemblyVersion("1.25.0")]
 [assembly: AssemblyFileVersion("1.25.0")]
-[assembly: AssemblyInformationalVersion("1.25.0-topic-1051-basic0001")]
+[assembly: AssemblyInformationalVersion("1.25.0-topic-1051-basic0002")]
 [assembly: AssemblyCopyright("2020 IT Center, RWTH Aachen University")]
 
diff --git a/src/Database.T4/packages.config b/src/Database.T4/packages.config
index a4e618c..214b163 100644
--- a/src/Database.T4/packages.config
+++ b/src/Database.T4/packages.config
@@ -3,7 +3,7 @@
   <package id="Consul" version="0.7.2.6" targetFramework="net461" />
   <package id="Coscine.Configuration" version="1.5.0" targetFramework="net461" />
   <package id="Coscine.Database.Helpers" version="1.1.0" targetFramework="net461" />
-  <package id="Coscine.Migrations" version="1.8.0-topic-1051-basic0002" targetFramework="net461" />
+  <package id="Coscine.Migrations" version="1.8.0-topic-1051-basic0005" targetFramework="net461" />
   <package id="FluentMigrator" version="3.2.8" targetFramework="net461" />
   <package id="FluentMigrator.Abstractions" version="3.2.8" targetFramework="net461" />
   <package id="FluentMigrator.Extensions.Oracle" version="3.2.8" targetFramework="net461" />
diff --git a/src/Database.Tests/Database.Tests.csproj b/src/Database.Tests/Database.Tests.csproj
index e628deb..707127c 100644
--- a/src/Database.Tests/Database.Tests.csproj
+++ b/src/Database.Tests/Database.Tests.csproj
@@ -44,7 +44,7 @@
       <HintPath>..\packages\Coscine.Database.Helpers.1.1.0\lib\net461\Coscine.Database.Helpers.dll</HintPath>
     </Reference>
     <Reference Include="Coscine.Migrations, Version=1.8.0.0, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\packages\Coscine.Migrations.1.8.0-topic-1051-basic0002\lib\net461\Coscine.Migrations.dll</HintPath>
+      <HintPath>..\packages\Coscine.Migrations.1.8.0-topic-1051-basic0005\lib\net461\Coscine.Migrations.dll</HintPath>
     </Reference>
     <Reference Include="FluentMigrator, Version=3.2.8.0, Culture=neutral, PublicKeyToken=aacfc7de5acabf05, processorArchitecture=MSIL">
       <HintPath>..\packages\FluentMigrator.3.2.8\lib\net461\FluentMigrator.dll</HintPath>
diff --git a/src/Database.Tests/Properties/AssemblyInfo.cs b/src/Database.Tests/Properties/AssemblyInfo.cs
index 06d2f9a..afd30f2 100644
--- a/src/Database.Tests/Properties/AssemblyInfo.cs
+++ b/src/Database.Tests/Properties/AssemblyInfo.cs
@@ -11,6 +11,6 @@ using System.Reflection;
 [assembly: AssemblyProduct("Database.Tests")]
 [assembly: AssemblyVersion("1.25.0")]
 [assembly: AssemblyFileVersion("1.25.0")]
-[assembly: AssemblyInformationalVersion("1.25.0-topic-1051-basic0001")]
+[assembly: AssemblyInformationalVersion("1.25.0-topic-1051-basic0002")]
 [assembly: AssemblyCopyright("2020 IT Center, RWTH Aachen University")]
 
diff --git a/src/Database.Tests/packages.config b/src/Database.Tests/packages.config
index 257aed0..c2e7cbb 100644
--- a/src/Database.Tests/packages.config
+++ b/src/Database.Tests/packages.config
@@ -3,7 +3,7 @@
   <package id="Consul" version="0.7.2.6" targetFramework="net461" />
   <package id="Coscine.Configuration" version="1.5.0" targetFramework="net461" />
   <package id="Coscine.Database.Helpers" version="1.1.0" targetFramework="net461" />
-  <package id="Coscine.Migrations" version="1.8.0-topic-1051-basic0002" targetFramework="net461" />
+  <package id="Coscine.Migrations" version="1.8.0-topic-1051-basic0005" targetFramework="net461" />
   <package id="FluentMigrator" version="3.2.8" targetFramework="net461" />
   <package id="FluentMigrator.Abstractions" version="3.2.8" targetFramework="net461" />
   <package id="FluentMigrator.Extensions.Oracle" version="3.2.8" targetFramework="net461" />
diff --git a/src/Database/Models/KpiModel.cs b/src/Database/Models/KpiModel.cs
index 313e6dd..001a637 100644
--- a/src/Database/Models/KpiModel.cs
+++ b/src/Database/Models/KpiModel.cs
@@ -1,4 +1,5 @@
 using Coscine.Database.DataModel;
+using Coscine.Database.Util;
 using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -23,5 +24,11 @@ namespace Coscine.Database.Models
         {
             databaseObject.Id = id;
         }
+
+        public int MarkAsSent(Kpi databaseObject)
+        {
+            databaseObject.SentSuccessfully = true;
+            return Update(databaseObject);
+        }
     }
 }
diff --git a/src/Database/Properties/AssemblyInfo.cs b/src/Database/Properties/AssemblyInfo.cs
index 0f714cc..1fee1e1 100644
--- a/src/Database/Properties/AssemblyInfo.cs
+++ b/src/Database/Properties/AssemblyInfo.cs
@@ -11,6 +11,6 @@ using System.Reflection;
 [assembly: AssemblyProduct("Database")]
 [assembly: AssemblyVersion("1.25.0")]
 [assembly: AssemblyFileVersion("1.25.0")]
-[assembly: AssemblyInformationalVersion("1.25.0-topic-1051-basic0001")]
+[assembly: AssemblyInformationalVersion("1.25.0-topic-1051-basic0002")]
 [assembly: AssemblyCopyright("2020 IT Center, RWTH Aachen University")]
 
diff --git a/src/Database/ReturnObjects/KpiObject.cs b/src/Database/ReturnObjects/KpiObject.cs
index 9044629..9784d74 100644
--- a/src/Database/ReturnObjects/KpiObject.cs
+++ b/src/Database/ReturnObjects/KpiObject.cs
@@ -10,19 +10,33 @@ namespace Coscine.Database.ReturnObjects
     class KpiObject
     {
         public Guid Id { get; set; }
-        public string Label { get; set; }
+        public string MeasurementID { get; set; }
         public string Ikz { get; set; }
-        public int Count { get; set; }
-        public DateTime LastUpdate { get; set; }
-        public bool SentSuccessfully { get; set; }
+        public double? Value { get; set; }
+        public DateTime? Start { get; set; }
+        public DateTime? End { get; set; }
+        public string AdditionalInfo { get; set; }
+        public string AdditionalInfo1 { get; set; }
+        public string AdditionalInfo2 { get; set; }
+        public string AdditionalInfo3 { get; set; }
+        public string AdditionalInfo4 { get; set; } 
+        public string AdditionalInfo5 { get; set; }
+        public bool SentSuccessfully { get; set; } 
 
-        public KpiObject(Guid id, string label, DateTime lastUpdate, string ikz = null, int count = 0, bool sentSuccessfully = false)
+        public KpiObject(Guid id, string measurementId, string ikz, double value, DateTime start, DateTime end, string additionalInfo = "", string additionalInfo1 = "", string additionalInfo2 = "", string additionalInfo3 = "", string additionalInfo4 = "", string additionalInfo5 = "", bool sentSuccessfully = false)
         {
             Id = id;
-            Label = label;
-            Ikz = ikz != null ? ikz : "external";
-            Count = count;
-            LastUpdate = lastUpdate;
+            MeasurementID = measurementId;
+            Ikz = ikz;
+            Value = value;
+            Start = start;
+            End = end;
+            AdditionalInfo = additionalInfo;
+            AdditionalInfo1 = additionalInfo1;
+            AdditionalInfo2 = additionalInfo2;
+            AdditionalInfo3 = additionalInfo3;
+            AdditionalInfo4 = additionalInfo4;
+            AdditionalInfo5 = additionalInfo5;
             SentSuccessfully = sentSuccessfully;
         }
     }
-- 
GitLab