diff --git a/Service/ServiceContracts/IAdminService.cs b/Service/ServiceContracts/IAdminService.cs
index c11ee79c9..89fe621ee 100644
--- a/Service/ServiceContracts/IAdminService.cs
+++ b/Service/ServiceContracts/IAdminService.cs
@@ -1,4 +1,5 @@
using BS.Shared.Attributes;
+using BS.Shared.DataContracts.AdminService;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -23,7 +24,7 @@ namespace BeWo.Service.ServiceContracts
string Echo(string echo);
[OperationContract]
- [WebInvoke(UriTemplate = "/GetGkvSum?start={start}&end={end}", Method = "POST", ResponseFormat = WebMessageFormat.Json)]
- object GetGkvAbrechnungSumme(DateTime start, DateTime end);
+ [WebInvoke(UriTemplate = "/GetGkvSum", Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
+ object GetGkvAbrechnungSumme(AdminServiceSumReqDC request);
}
}
diff --git a/Service/ServiceImplementations/AdminServiceImp.cs b/Service/ServiceImplementations/AdminServiceImp.cs
index e45869410..7173c2ae4 100644
--- a/Service/ServiceImplementations/AdminServiceImp.cs
+++ b/Service/ServiceImplementations/AdminServiceImp.cs
@@ -1,5 +1,6 @@
using BeWo.Data.Access;
using BeWo.Service.ServiceContracts;
+using BS.Shared.DataContracts.AdminService;
using DevExpress.Pdf.Native.BouncyCastle.Ocsp;
using System;
using System.Collections.Generic;
@@ -23,19 +24,24 @@ namespace BeWo.Service.ServiceImplementations
return echo;
}
- public object GetGkvAbrechnungSumme(DateTime start, DateTime end)
+ public object GetGkvAbrechnungSumme(AdminServiceSumReqDC request)
{
- if(start == default(DateTime))
+ if (request == null)
{
- return "Start darf nicht default(DateTime) sein";
+ throw new ArgumentException("Request darf nicht null sein");
}
- if(end == default(DateTime))
+ if(request.Start == default)
{
- return "End darf nicht default(DateTime) sein";
+ throw new ArgumentException("Start darf nicht default(DateTime) sein");
}
- var sum = DAOFactory.ScriptDAO.GetGkvSumByDateRange(start, end);
+ if(request.End == default)
+ {
+ throw new ArgumentException("End darf nicht default(DateTime) sein");
+ }
+
+ var sum = DAOFactory.ScriptDAO.GetGkvSumByDateRange(request.Start, request.End);
if (sum is decimal s)
{
diff --git a/Shared/DataContracts/AdminService/AdminServiceSumReqDC.cs b/Shared/DataContracts/AdminService/AdminServiceSumReqDC.cs
new file mode 100644
index 000000000..553734372
--- /dev/null
+++ b/Shared/DataContracts/AdminService/AdminServiceSumReqDC.cs
@@ -0,0 +1,20 @@
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Runtime.Serialization;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace BS.Shared.DataContracts.AdminService
+{
+ [DataContract]
+ public class AdminServiceSumReqDC : IAdminServiceDC
+ {
+ [DataMember(Name = "end")]
+ public DateTime End { get; set; }
+
+ [DataMember(Name = "start")]
+ public DateTime Start { get; set; }
+ }
+}
diff --git a/Shared/DataContracts/AdminService/IAdminServiceDC.cs b/Shared/DataContracts/AdminService/IAdminServiceDC.cs
new file mode 100644
index 000000000..a67146897
--- /dev/null
+++ b/Shared/DataContracts/AdminService/IAdminServiceDC.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace BS.Shared.DataContracts.AdminService
+{
+ public interface IAdminServiceDC : IDataContract
+ {
+ }
+}
diff --git a/Shared/Shared.csproj b/Shared/Shared.csproj
index 0bb0b2395..4bff5217a 100644
--- a/Shared/Shared.csproj
+++ b/Shared/Shared.csproj
@@ -170,6 +170,8 @@
+
+