File refs in one table

Added a file service
Refactored evidence and vendor compliance associated services and resolvers
Created SQL migration scripts
Updated GraphQL schema accordingly and the UI components
Removed unused methods and resolvers for evidence service

Signed-off-by: Yannis Varni <yannis@edinomis.fr>
This commit is contained in:
Yannis Varni
2025-10-03 15:38:00 +02:00
committed by Sacha Al Himdani
parent 3822b1916c
commit ff7ba08fc1
35 changed files with 1586 additions and 1658 deletions

View File

@@ -1755,8 +1755,7 @@ type VendorComplianceReport implements Node {
reportDate: Datetime!
validUntil: Datetime
reportName: String!
fileUrl: String! @goField(forceResolver: true)
fileSize: BigInt!
file: File @goField(forceResolver: true)
createdAt: Datetime!
updatedAt: Datetime!
}
@@ -1944,12 +1943,10 @@ type Task implements Node {
type Evidence implements Node {
id: ID!
fileUrl: String @goField(forceResolver: true)
mimeType: String!
size: Int!
state: EvidenceState!
type: EvidenceType!
filename: String!
file: File @goField(forceResolver: true)
url: String
description: String!
@@ -2590,6 +2587,16 @@ type SnapshotEdge {
node: Snapshot!
}
type File {
id: ID!
mimeType: String!
fileName: String!
size: BigInt!
downloadUrl: String! @goField(forceResolver: true)
createdAt: Datetime!
updatedAt: Datetime!
}
# Root Types
type Query {
node(id: ID!): Node!
@@ -2751,12 +2758,7 @@ type Mutation {
): DeleteRiskObligationMappingPayload!
# Evidence mutations
requestEvidence(input: RequestEvidenceInput!): RequestEvidencePayload!
fulfillEvidence(input: FulfillEvidenceInput!): FulfillEvidencePayload!
deleteEvidence(input: DeleteEvidenceInput!): DeleteEvidencePayload!
uploadTaskEvidence(
input: UploadTaskEvidenceInput!
): UploadTaskEvidencePayload!
uploadMeasureEvidence(
input: UploadMeasureEvidenceInput!
): UploadMeasureEvidencePayload!
@@ -4142,19 +4144,10 @@ type CancelSignatureRequestPayload {
deletedDocumentVersionSignatureId: ID!
}
type UploadTaskEvidencePayload {
evidenceEdge: EvidenceEdge!
}
type UploadMeasureEvidencePayload {
evidenceEdge: EvidenceEdge!
}
input UploadTaskEvidenceInput {
taskId: ID!
file: Upload!
}
input UploadMeasureEvidenceInput {
measureId: ID!
file: Upload!