Skip to content

Commit 002a805

Browse files
Merge pull request #147 from IndicoDataSolutions/nate/update_nuget
[DEV-11466] Fix MarkSubmissionAsRetrieved
2 parents 79352f1 + 588c1d2 commit 002a805

File tree

4 files changed

+121
-21
lines changed

4 files changed

+121
-21
lines changed

.github/workflows/publish.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
- name: Setup .NET
2626
uses: actions/setup-dotnet@v1
2727
with:
28-
dotnet-version: 5.0.202
28+
dotnet-version: 6.0.0
2929
- name: Pack
3030
run: dotnet pack ./IndicoV2/IndicoV2.csproj
3131
# - name: 'Upload Artifact'
@@ -36,5 +36,4 @@ jobs:
3636
# retention-days: 1
3737
# if-no-files-found: error
3838
- name: Push
39-
run: dotnet nuget push ${{ env.NugetFile }} -s https://api.nuget.org/v3/index.json --api-key ${{ secrets.NUGET_API_KEY }}
40-
39+
run: dotnet nuget push ${{ env.NugetFile }} -s https://api.nuget.org/v3/index.json --api-key ${{ secrets.NUGET_API_KEY }}

IndicoV2.StrawberryShake/Submissions/Submissions.graphql

Lines changed: 53 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,12 +139,63 @@ query GetSubmission($submissionId: Int!) {
139139
datasetId
140140
workflowId
141141
status
142+
createdAt
143+
updatedAt
144+
createdBy
145+
updatedBy
146+
completedAt
147+
errors
148+
filesDeleted
149+
inputFiles {
150+
id
151+
filepath
152+
filename
153+
filetype
154+
submissionId
155+
fileSize
156+
numPages
157+
}
142158
inputFile
143159
inputFilename
144160
resultFile
145-
deleted
161+
outputFiles {
162+
id
163+
filepath
164+
submissionId
165+
componentId
166+
createdAt
167+
}
146168
retrieved
147-
errors
169+
autoReview {
170+
id
171+
submissionId
172+
createdAt
173+
createdBy
174+
startedAt
175+
completedAt
176+
rejected
177+
reviewType
178+
notes
179+
}
180+
retries {
181+
id
182+
submissionId
183+
previousErrors
184+
previousStatus
185+
retryErrors
186+
}
187+
reviews {
188+
id
189+
submissionId
190+
createdAt
191+
createdBy
192+
startedAt
193+
completedAt
194+
rejected
195+
reviewType
196+
notes
197+
}
198+
reviewInProgress
148199
}
149200
}
150201

IndicoV2/Submissions/SubmissionsClient.cs

Lines changed: 65 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
using IndicoV2.CommonModels.Pagination;
88
using IndicoV2.StrawberryShake;
99
using IndicoV2.Submissions.Models;
10+
using IndicoV2.Reviews.Models;
1011
using IndicoV2.Storage;
1112
using Newtonsoft.Json.Linq;
1213

@@ -125,18 +126,7 @@ public async Task<ISubmission> GetAsync(int submissionId, CancellationToken canc
125126
{
126127
throw new NotSupportedException($"Cannot read submission status: {result.Status}");
127128
}
128-
return new Submission
129-
{
130-
Id = result.Id ?? 0,
131-
Status = (Models.SubmissionStatus)result.Status,
132-
DatasetId = result.DatasetId ?? 0,
133-
WorkflowId = result.WorkflowId ?? 0,
134-
InputFile = result.InputFile,
135-
InputFilename = result.InputFilename,
136-
ResultFile = result.ResultFile,
137-
Retrieved = result.Retrieved ?? throw new ArgumentException("Invalid value for retrieved received from call"),
138-
Errors = result.Errors ?? null
139-
};
129+
return GetSubmissionToSubmission(result);
140130
}
141131

142132

@@ -145,12 +135,72 @@ public async Task<string> GenerateSubmissionResultAsync(int submissionId, Cancel
145135

146136
public async Task<ISubmission> MarkSubmissionAsRetrieved(int submissionId, bool retrieved = true, CancellationToken cancellationToken = default)
147137
{
148-
var resultId = await _strawberryShakeClient.Submissions().MarkRetrieved(submissionId, retrieved, cancellationToken);
149-
var result = await _strawberryShakeClient.Submissions().List(new List<int?>(submissionId).AsReadOnly(), default, default, default, default, cancellationToken);
150-
return new SubmissionSs(result?.Submissions?[0]);
138+
await _strawberryShakeClient.Submissions().MarkRetrieved(submissionId, retrieved, cancellationToken);
139+
var result = await _strawberryShakeClient.Submissions().Get(submissionId, cancellationToken);
140+
return GetSubmissionToSubmission(result);
151141
}
152142

153143
private ISubmission ToSubmissionFromSs(IListSubmissions_Submissions_Submissions submission) => new SubmissionSs(submission);
154144

145+
private ISubmission GetSubmissionToSubmission(IGetSubmission_Submission result) => new Submission
146+
{
147+
Id = result.Id ?? 0,
148+
Status = (Models.SubmissionStatus)result.Status,
149+
DatasetId = result.DatasetId ?? 0,
150+
WorkflowId = result.WorkflowId ?? 0,
151+
CreatedAt = result.CreatedAt,
152+
UpdatedAt = result.UpdatedAt,
153+
CompletedAt = result.CompletedAt,
154+
FilesDeleted = result.FilesDeleted,
155+
InputFiles = result.InputFiles.Select(inputFile => new SubmissionFile
156+
{
157+
Id = inputFile.Id,
158+
FilePath = inputFile.Filepath,
159+
FileName = inputFile.Filename,
160+
FileType = inputFile.Filetype.ToString(),
161+
SubmissionId = inputFile.SubmissionId,
162+
FileSize = inputFile.FileSize,
163+
NumPages = inputFile.NumPages
164+
}).ToArray(),
165+
InputFile = result.InputFile,
166+
InputFilename = result.InputFilename,
167+
ResultFile = result.ResultFile,
168+
OutputFiles = result.OutputFiles.Select(x => new SubmissionOutput() { }).ToArray(),
169+
Retrieved = result.Retrieved ?? throw new ArgumentException("Invalid value for retrieved received from call"),
170+
AutoReview = result.AutoReview != null ? new Review
171+
{
172+
Id = result.AutoReview.Id,
173+
SubmissionId = result.AutoReview.SubmissionId,
174+
CreatedAt = result.AutoReview.CreatedAt,
175+
CreatedBy = result.AutoReview.CreatedBy,
176+
StartedAt = result.AutoReview.StartedAt,
177+
CompletedAt = result.AutoReview.CompletedAt,
178+
Rejected = result.AutoReview.Rejected,
179+
ReviewType = (Models.ReviewType)result.AutoReview.ReviewType,
180+
Notes = result.AutoReview.Notes,
181+
} : new Review() { },
182+
Retries = result.Retries.Select(submissionRetry => new SubmissionRetry
183+
{
184+
Id = submissionRetry.Id,
185+
SubmissionId = submissionRetry.SubmissionId,
186+
PreviousErrors = submissionRetry.PreviousErrors,
187+
PreviousStatus = (Models.SubmissionStatus)submissionRetry.PreviousStatus,
188+
RetryErrors = submissionRetry.RetryErrors
189+
}).ToArray(),
190+
Reviews = result.Reviews.Select(review => new Review
191+
{
192+
Id = review.Id,
193+
SubmissionId = review.SubmissionId,
194+
CreatedAt = review.CreatedAt,
195+
CreatedBy = review.CreatedBy,
196+
StartedAt = review.StartedAt,
197+
CompletedAt = review.CompletedAt,
198+
Rejected = review.Rejected,
199+
ReviewType = (Models.ReviewType)review.ReviewType,
200+
Notes = review.Notes,
201+
}).ToArray(),
202+
ReviewInProgress = result.ReviewInProgress,
203+
Errors = result.Errors ?? null
204+
};
155205
}
156206
}

Nuget.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
<RepositoryUrl>https://github.com/IndicoDataSolutions/indico-client-csharp</RepositoryUrl>
1111
<RepositoryType>Github</RepositoryType>
1212
<PackageTags>Indico</PackageTags>
13-
<PackageReleaseNotes>This is the 4.x IPA platform package.</PackageReleaseNotes>
13+
<PackageReleaseNotes>This is the 6.x IPA platform package.</PackageReleaseNotes>
1414
<Product>Indico IPA</Product>
1515
<Copyright>$([System.DateTime]::UtcNow.ToString("YYYY)) Indico, Inc.</Copyright>
1616
<NeutralLanguage>en-US</NeutralLanguage>

0 commit comments

Comments
 (0)