Skip to content

Commit

Permalink
added static inputs
Browse files Browse the repository at this point in the history
  • Loading branch information
bZverok committed Apr 15, 2024
1 parent 87d7087 commit a86cf08
Show file tree
Hide file tree
Showing 36 changed files with 549 additions and 747 deletions.
1 change: 0 additions & 1 deletion Apps.BWX/Api/BWXClient.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
using Apps.BWX.Constants;
using Apps.BWX.Models.Responses;
using Blackbird.Applications.Sdk.Utils.Extensions.String;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using RestSharp;
Expand Down
2 changes: 0 additions & 2 deletions Apps.BWX/BWXApplication.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
using Blackbird.Applications.Sdk.Common;
using Blackbird.Applications.Sdk.Common.Authentication.OAuth2;
using Blackbird.Applications.Sdk.Common.Invocation;
using Blackbird.Applications.Sdk.Common.Metadata;

namespace Apps.BWX;
Expand Down
29 changes: 14 additions & 15 deletions Apps.BWX/DataSourceHandlers/ClientDataHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,23 +12,22 @@
* Next method is based on web platform calls
**/

namespace Apps.BWX.DataSourceHandlers
namespace Apps.BWX.DataSourceHandlers;

public class ClientDataHandler : BWXInvocable, IAsyncDataSourceHandler
{
public class ClientDataHandler : BWXInvocable, IAsyncDataSourceHandler
public ClientDataHandler(InvocationContext invocationContext) : base(invocationContext)
{
public ClientDataHandler(InvocationContext invocationContext) : base(invocationContext)
{
}
}

public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
var request = new BWXRequest($"/api/v3/client", Method.Get, Creds);
var languages = await Client.Paginate<ClientDto>(request);
public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
var request = new BWXRequest($"/api/v3/client", Method.Get, Creds);
var languages = await Client.Paginate<ClientDto>(request);

return languages.Where(el =>
context.SearchString is null ||
el.Name.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Uuid, v => v.Name);
}
return languages.Where(el =>
context.SearchString is null ||
el.Name.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Uuid, v => v.Name);
}
}
}
Original file line number Diff line number Diff line change
@@ -1,21 +1,16 @@
using Blackbird.Applications.Sdk.Utils.Sdk.DataSourceHandlers;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Blackbird.Applications.Sdk.Common.Dictionaries;

namespace Apps.BWX.DataSourceHandlers.EnumDataHandlers
namespace Apps.BWX.DataSourceHandlers.EnumDataHandlers;

public class ProjectStatusDataHandler : IStaticDataSourceHandler
{
public class ProjectStatusDataHandler : EnumDataHandler
public Dictionary<string, string> GetData()
=> new()
{
protected override Dictionary<string, string> EnumValues => new()
{
{"Draft", "Draft"},
{"Pending", "Pending"},
{"Approved", "Approved"},
{"Delivered", "Delivered"},
{"Invoiced", "Invoiced"},
};
}
}
{"Draft", "Draft"},
{"Pending", "Pending"},
{"Approved", "Approved"},
{"Delivered", "Delivered"},
{"Invoiced", "Invoiced"},
};
}
58 changes: 26 additions & 32 deletions Apps.BWX/DataSourceHandlers/EnumDataHandlers/WorkflowDataHandler.cs
Original file line number Diff line number Diff line change
@@ -1,35 +1,29 @@
using Blackbird.Applications.Sdk.Utils.Sdk.DataSourceHandlers;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Blackbird.Applications.Sdk.Common.Dictionaries;

namespace Apps.BWX.DataSourceHandlers.EnumDataHandlers
namespace Apps.BWX.DataSourceHandlers.EnumDataHandlers;

public class WorkflowDataHandler : IStaticDataSourceHandler
{
public class WorkflowDataHandler : EnumDataHandler
public Dictionary<string, string> GetData() => new()
{
protected override Dictionary<string, string> EnumValues => new()
{
{"TRANSCRIPTION","TRANSCRIPTION"},
{"TRANSLATION","TRANSLATION"},
{"PROOFREADING","PROOFREADING"},
{"REVIEW","REVIEW"},
{"REVIEW_2","REVIEW_2"},
{"REVIEW_3","REVIEW_3"},
{"ICR","ICR"},
{"REGIONAL_APPROVAL","REGIONAL_APPROVAL"},
{"ICR_2","ICR_2"},
{"WEB_QA","WEB_QA"},
{"FEEDBACK_IMPLEMENTATION","FEEDBACK_IMPLEMENTATION"},
{"DTP","DTP"},
{"QA","QA"},
{"SUBTITLING","SUBTITLING"},
{"VIDEO_EDITING","VIDEO_EDITING"},
{"VOICEOVER","VOICEOVER"},
{"SWORN","SWORN"},
{"INTERPRETATION","INTERPRETATION"},
{"DEVELOPMENT","DEVELOPMENT"}
};
}
}
{ "TRANSCRIPTION", "TRANSCRIPTION" },
{ "TRANSLATION", "TRANSLATION" },
{ "PROOFREADING", "PROOFREADING" },
{ "REVIEW", "REVIEW" },
{ "REVIEW_2", "REVIEW_2" },
{ "REVIEW_3", "REVIEW_3" },
{ "ICR", "ICR" },
{ "REGIONAL_APPROVAL", "REGIONAL_APPROVAL" },
{ "ICR_2", "ICR_2" },
{ "WEB_QA", "WEB_QA" },
{ "FEEDBACK_IMPLEMENTATION", "FEEDBACK_IMPLEMENTATION" },
{ "DTP", "DTP" },
{ "QA", "QA" },
{ "SUBTITLING", "SUBTITLING" },
{ "VIDEO_EDITING", "VIDEO_EDITING" },
{ "VOICEOVER", "VOICEOVER" },
{ "SWORN", "SWORN" },
{ "INTERPRETATION", "INTERPRETATION" },
{ "DEVELOPMENT", "DEVELOPMENT" }
};
}
29 changes: 14 additions & 15 deletions Apps.BWX/DataSourceHandlers/LanguageDataHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -5,23 +5,22 @@
using Blackbird.Applications.Sdk.Common.Invocation;
using RestSharp;

namespace Apps.BWX.DataSourceHandlers
namespace Apps.BWX.DataSourceHandlers;

public class LanguageDataHandler : BWXInvocable, IAsyncDataSourceHandler
{
public class LanguageDataHandler : BWXInvocable, IAsyncDataSourceHandler
public LanguageDataHandler(InvocationContext invocationContext) : base(invocationContext)
{
public LanguageDataHandler(InvocationContext invocationContext) : base(invocationContext)
{
}
}

public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
var request = new BWXRequest($"/api/v3/language", Method.Get, Creds);
var languages = await Client.ExecuteWithErrorHandling<List<LanguageDto>>(request);
public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
var request = new BWXRequest($"/api/v3/language", Method.Get, Creds);
var languages = await Client.ExecuteWithErrorHandling<List<LanguageDto>>(request);

return languages.Where(el =>
context.SearchString is null ||
el.Name.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Code, v => v.Name);
}
return languages.Where(el =>
context.SearchString is null ||
el.Name.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Code, v => v.Name);
}
}
}
29 changes: 14 additions & 15 deletions Apps.BWX/DataSourceHandlers/OrganizationDataHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,23 +12,22 @@
* Next method is based on web platform calls
**/

namespace Apps.BWX.DataSourceHandlers
namespace Apps.BWX.DataSourceHandlers;

public class OrganizationDataHandler : BWXInvocable, IAsyncDataSourceHandler
{
public class OrganizationDataHandler : BWXInvocable, IAsyncDataSourceHandler
public OrganizationDataHandler(InvocationContext invocationContext) : base(invocationContext)
{
public OrganizationDataHandler(InvocationContext invocationContext) : base(invocationContext)
{
}
}

public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
var request = new BWXRequest($"/api/v2/organization", Method.Get, Creds);
var languages = await Client.Paginate<OrganizationDto>(request);
public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
var request = new BWXRequest($"/api/v2/organization", Method.Get, Creds);
var languages = await Client.Paginate<OrganizationDto>(request);

return languages.Where(el =>
context.SearchString is null ||
el.Name.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Uuid, v => v.Name);
}
return languages.Where(el =>
context.SearchString is null ||
el.Name.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Uuid, v => v.Name);
}
}
}
34 changes: 14 additions & 20 deletions Apps.BWX/DataSourceHandlers/ProjectDataHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,29 +4,23 @@
using Blackbird.Applications.Sdk.Common.Dynamic;
using Blackbird.Applications.Sdk.Common.Invocation;
using RestSharp;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Apps.BWX.DataSourceHandlers
namespace Apps.BWX.DataSourceHandlers;

public class ProjectDataHandler : BWXInvocable, IAsyncDataSourceHandler
{
public class ProjectDataHandler : BWXInvocable, IAsyncDataSourceHandler
public ProjectDataHandler(InvocationContext invocationContext) : base(invocationContext)
{
public ProjectDataHandler(InvocationContext invocationContext) : base(invocationContext)
{
}
}

public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
var request = new BWXRequest($"/api/v3/project", Method.Get, Creds);
var projects = await Client.Paginate<ProjectDto>(request);
public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
var request = new BWXRequest($"/api/v3/project", Method.Get, Creds);
var projects = await Client.Paginate<ProjectDto>(request);

return projects.Where(el =>
context.SearchString is null ||
el.Reference.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Uuid, v => $"{v.Reference} ({v.Name})");
}
return projects.Where(el =>
context.SearchString is null ||
el.Reference.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Uuid, v => $"{v.Reference} ({v.Name})");
}
}
}
29 changes: 14 additions & 15 deletions Apps.BWX/DataSourceHandlers/ProjectManagerDataHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,23 +12,22 @@
* Next method is based on web platform calls
**/

namespace Apps.BWX.DataSourceHandlers
namespace Apps.BWX.DataSourceHandlers;

public class ProjectManagerDataHandler : BWXInvocable, IAsyncDataSourceHandler
{
public class ProjectManagerDataHandler : BWXInvocable, IAsyncDataSourceHandler
public ProjectManagerDataHandler(InvocationContext invocationContext) : base(invocationContext)
{
public ProjectManagerDataHandler(InvocationContext invocationContext) : base(invocationContext)
{
}
}

public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
var request = new BWXRequest($"/api/v3/user?simple=true&roles=PROJECT_MANAGER", Method.Get, Creds);
var projects = await Client.Paginate<UserDto>(request);
public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
var request = new BWXRequest($"/api/v3/user?simple=true&roles=PROJECT_MANAGER", Method.Get, Creds);
var projects = await Client.Paginate<UserDto>(request);

return projects.Where(el =>
context.SearchString is null ||
el.Name.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Uuid, v => v.Name);
}
return projects.Where(el =>
context.SearchString is null ||
el.Name.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Uuid, v => v.Name);
}
}
}
44 changes: 19 additions & 25 deletions Apps.BWX/DataSourceHandlers/ProjectResourcesDataHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -6,35 +6,29 @@
using Blackbird.Applications.Sdk.Common.Dynamic;
using Blackbird.Applications.Sdk.Common.Invocation;
using RestSharp;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Apps.BWX.DataSourceHandlers
namespace Apps.BWX.DataSourceHandlers;

public class ProjectResourcesDataHandler : BWXInvocable, IAsyncDataSourceHandler
{
public class ProjectResourcesDataHandler : BWXInvocable, IAsyncDataSourceHandler
{
public GetProjectRequest ProjectRequest { get; set; }
public GetProjectRequest ProjectRequest { get; set; }

public ProjectResourcesDataHandler(InvocationContext invocationContext, [ActionParameter] GetProjectRequest projectRequest) : base(invocationContext)
{
ProjectRequest = projectRequest;
}
public ProjectResourcesDataHandler(InvocationContext invocationContext, [ActionParameter] GetProjectRequest projectRequest) : base(invocationContext)
{
ProjectRequest = projectRequest;
}

public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
if (string.IsNullOrEmpty(ProjectRequest?.ProjectId))
throw new ArgumentException("Please select project first!");
public async Task<Dictionary<string, string>> GetDataAsync(DataSourceContext context, CancellationToken token)
{
if (string.IsNullOrEmpty(ProjectRequest?.ProjectId))
throw new ArgumentException("Please select project first!");

var request = new BWXRequest($"/api/v3/project/{ProjectRequest.ProjectId}/resource/simple", Method.Get, Creds);
var projectResources = await Client.ExecuteWithErrorHandling<List<ProjectResourceDto>>(request);
var request = new BWXRequest($"/api/v3/project/{ProjectRequest.ProjectId}/resource/simple", Method.Get, Creds);
var projectResources = await Client.ExecuteWithErrorHandling<List<ProjectResourceDto>>(request);

return projectResources.Where(el =>
context.SearchString is null ||
el.Name.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Uuid, v => v.Name);
}
return projectResources.Where(el =>
context.SearchString is null ||
el.Name.Contains(context.SearchString, StringComparison.OrdinalIgnoreCase))
.ToDictionary(k => k.Uuid, v => v.Name);
}
}
}
Loading

0 comments on commit a86cf08

Please sign in to comment.