fix: read optional legacy parameters from query

This commit is contained in:
Meik
2026-07-17 17:49:22 +02:00
parent d97a87c61a
commit cec49319da
8 changed files with 35 additions and 34 deletions

View File

@@ -106,11 +106,10 @@ namespace C4IT.F4SD
public async Task<List<cF4SDTicketSummary>> getTicketList(
string sid,
int hours,
int queueoption = 0,
string queues = ""
int queueoption = 0
)
{
var decodedPairs = ParseQueues(queues);
var decodedPairs = ParseQueues(GetQueryValue("queues"));
// Nun weiterreichen an Service
return await _f4stHelperService.getTicketListByUser(
@@ -125,11 +124,10 @@ namespace C4IT.F4SD
public async Task<List<cF4SDTicketSummary>> getTicketListForUser(
Guid userId,
int hours,
int queueoption = 0,
string queues = ""
int queueoption = 0
)
{
var decodedPairs = ParseQueues(queues);
var decodedPairs = ParseQueues(GetQueryValue("queues"));
// Nun weiterreichen an Service
return await _f4stHelperService.getTicketListByUser(
@@ -163,8 +161,7 @@ namespace C4IT.F4SD
string sid,
string scope = "personal",
string keys = "",
int queueoption = 0,
string queues = ""
int queueoption = 0
)
{
var parsedKeys = (keys ?? string.Empty)
@@ -173,7 +170,7 @@ namespace C4IT.F4SD
.Where(key => !string.IsNullOrWhiteSpace(key))
.ToList();
var decodedQueues = ParseQueues(queues);
var decodedQueues = ParseQueues(GetQueryValue("queues"));
return await _f4stHelperService.getTicketOverviewCounts(sid, scope, parsedKeys, queueoption, decodedQueues);
}
@@ -183,8 +180,7 @@ namespace C4IT.F4SD
Guid userId,
string scope = "personal",
string keys = "",
int queueoption = 0,
string queues = ""
int queueoption = 0
)
{
var parsedKeys = (keys ?? string.Empty)
@@ -193,7 +189,7 @@ namespace C4IT.F4SD
.Where(key => !string.IsNullOrWhiteSpace(key))
.ToList();
var decodedQueues = ParseQueues(queues);
var decodedQueues = ParseQueues(GetQueryValue("queues"));
return await _f4stHelperService.getTicketOverviewCounts(userId, scope, parsedKeys, queueoption, decodedQueues);
}
@@ -253,11 +249,10 @@ namespace C4IT.F4SD
string scope = "personal",
string key = "",
int count = 0,
int queueoption = 0,
string queues = ""
int queueoption = 0
)
{
var decodedQueues = ParseQueues(queues);
var decodedQueues = ParseQueues(GetQueryValue("queues"));
return await _f4stHelperService.getTicketOverviewRelations(sid, scope, key, count, queueoption, decodedQueues);
}
@@ -267,11 +262,10 @@ namespace C4IT.F4SD
string scope = "personal",
string key = "",
int count = 0,
int queueoption = 0,
string queues = ""
int queueoption = 0
)
{
var decodedQueues = ParseQueues(queues);
var decodedQueues = ParseQueues(GetQueryValue("queues"));
return await _f4stHelperService.getTicketOverviewRelations(userId, scope, key, count, queueoption, decodedQueues);
}
@@ -385,6 +379,13 @@ namespace C4IT.F4SD
public string Queues { get; set; }
}
private string GetQueryValue(string name)
{
return Request?.GetQueryNameValuePairs()
.FirstOrDefault(pair => string.Equals(pair.Key, name, StringComparison.OrdinalIgnoreCase))
.Value ?? string.Empty;
}
private static List<cApiM42TicketQueueInfo> ParseQueues(string queues)
{
return (queues ?? string.Empty)
@@ -456,11 +457,11 @@ namespace C4IT.F4SD
}
[Route("log"), HttpGet]
public HttpResponseMessage getLog(string download = "0", int count = 50, string filter = "")
public HttpResponseMessage getLog(string download = "0", int count = 50)
{
try
{
return _f4stHelperService.privGetLog(download, count, Request, filter);
return _f4stHelperService.privGetLog(download, count, Request, GetQueryValue("filter"));
}
catch (Exception E)
{

View File

@@ -136,8 +136,8 @@
</xs:schema>
<PLSLWebServiceOperation>
<ID>f977a1d8-f21c-c1bc-4ea0-08dac09d3c99</ID>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"download":{"Type":"StringType"},"count":{"Type":"StringType"},"filter":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getLog(download, count, filter)</Name>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"download":{"Type":"StringType"},"count":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getLog(download, count)</Name>
<RouteTemplate>log</RouteTemplate>
<Documentation />
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>

View File

@@ -136,8 +136,8 @@
</xs:schema>
<PLSLWebServiceOperation>
<ID>163e04c2-8b5c-c0e6-0535-08da9bbec2df</ID>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType"},"hours":{"Type":"StringType"},"queueoption":{"Type":"StringType"},"queues":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketList(sid, hours, queueoption, queues)</Name>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType"},"hours":{"Type":"StringType"},"queueoption":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketList(sid, hours, queueoption)</Name>
<RouteTemplate>getTicketList</RouteTemplate>
<Documentation />
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>

View File

@@ -138,8 +138,8 @@
<PLSLWebServiceOperation>
<ID>8e1a4dc1-4b8d-4f97-9f58-101d95a00401</ID>
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"System_Collections_Generic_List`1[C4IT_FASD_Base_cF4SDTicketSummary]"}}</ResponseContract>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"userId":{"Type":"GuidType"},"hours":{"Type":"IntType"},"queueoption":{"Type":"IntType"},"queues":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketListForUser(userId,hours,queueoption,queues)</Name>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"userId":{"Type":"GuidType"},"hours":{"Type":"IntType"},"queueoption":{"Type":"IntType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketListForUser(userId,hours,queueoption)</Name>
<RouteTemplate>getTicketListForUser</RouteTemplate>
<Documentation />
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>

View File

@@ -138,8 +138,8 @@
<PLSLWebServiceOperation>
<ID>99eef84e-a303-c248-36c5-08ded882fc6c</ID>
<ResponseContract>{"UsedTypes":{"C4IT_F4SD_F4SDHelperService+TicketOverviewCountsResult":{"Descriptor":{"Counts":{"Type":["StringType"]}}}},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"C4IT_F4SD_F4SDHelperService+TicketOverviewCountsResult"}}</ResponseContract>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType"},"scope":{"Type":"StringType"},"keys":{"Type":"StringType"},"queueoption":{"Type":"IntType"},"queues":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketOverviewCounts(sid,scope,keys,queueoption,queues)</Name>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType"},"scope":{"Type":"StringType"},"keys":{"Type":"StringType"},"queueoption":{"Type":"IntType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketOverviewCounts(sid,scope,keys,queueoption)</Name>
<RouteTemplate>getTicketOverviewCounts</RouteTemplate>
<Documentation />
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>

View File

@@ -138,8 +138,8 @@
<PLSLWebServiceOperation>
<ID>8e1a4dc1-4b8d-4f97-9f58-101d95a00402</ID>
<ResponseContract>{"UsedTypes":{"C4IT_F4SD_F4SDHelperService+TicketOverviewCountsResult":{"Descriptor":{"Counts":{"Type":["StringType"]}}}},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"C4IT_F4SD_F4SDHelperService+TicketOverviewCountsResult"}}</ResponseContract>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"userId":{"Type":"GuidType"},"scope":{"Type":"StringType"},"keys":{"Type":"StringType"},"queueoption":{"Type":"IntType"},"queues":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketOverviewCountsForUser(userId,scope,keys,queueoption,queues)</Name>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"userId":{"Type":"GuidType"},"scope":{"Type":"StringType"},"keys":{"Type":"StringType"},"queueoption":{"Type":"IntType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketOverviewCountsForUser(userId,scope,keys,queueoption)</Name>
<RouteTemplate>getTicketOverviewCountsForUser</RouteTemplate>
<Documentation />
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>

View File

@@ -138,8 +138,8 @@
<PLSLWebServiceOperation>
<ID>c5dd653a-54d8-c430-c9df-08ded882fc79</ID>
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"System_Collections_Generic_List`1[C4IT_F4SD_F4SDHelperService+TicketOverviewRelationDto]"}}</ResponseContract>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType"},"scope":{"Type":"StringType"},"key":{"Type":"StringType"},"count":{"Type":"IntType"},"queueoption":{"Type":"IntType"},"queues":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketOverviewRelations(sid,scope,key,count,queueoption,queues)</Name>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"sid":{"Type":"StringType"},"scope":{"Type":"StringType"},"key":{"Type":"StringType"},"count":{"Type":"IntType"},"queueoption":{"Type":"IntType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketOverviewRelations(sid,scope,key,count,queueoption)</Name>
<RouteTemplate>getTicketOverviewRelations</RouteTemplate>
<Documentation />
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>

View File

@@ -138,8 +138,8 @@
<PLSLWebServiceOperation>
<ID>8e1a4dc1-4b8d-4f97-9f58-101d95a00404</ID>
<ResponseContract>{"UsedTypes":{},"ContractDescriptor":{"ReturnCountType":"NotProvided","Documentation":"Return value","Type":"System_Collections_Generic_List`1[C4IT_F4SD_F4SDHelperService+TicketOverviewRelationDto]"}}</ResponseContract>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"userId":{"Type":"GuidType"},"scope":{"Type":"StringType"},"key":{"Type":"StringType"},"count":{"Type":"IntType"},"queueoption":{"Type":"IntType"},"queues":{"Type":"StringType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketOverviewRelationsForUser(userId,scope,key,count,queueoption,queues)</Name>
<RequestContract>{"UsedTypes":{"RequestContract":{"Descriptor":{"userId":{"Type":"GuidType"},"scope":{"Type":"StringType"},"key":{"Type":"StringType"},"count":{"Type":"IntType"},"queueoption":{"Type":"IntType"}}}},"ContractDescriptor":{"ReferenceTo":null,"ReferenceFilter":null,"Required":false,"Obsolete":false,"MaxLength":0,"ResourceKey":null,"Documentation":null,"Title":null,"Paths":null,"Type":"RequestContract"}}</RequestContract>
<Name>getTicketOverviewRelationsForUser(userId,scope,key,count,queueoption)</Name>
<RouteTemplate>getTicketOverviewRelationsForUser</RouteTemplate>
<Documentation />
<TypeID>7660e907-769c-e711-a182-f079595b3ec7</TypeID>