feat(graphql): expose pendingDeletedDossiers on groupe instructeur

This commit is contained in:
Paul Chavard 2023-04-11 10:11:08 +02:00
parent 7c4ae3b786
commit bf6cc25063
3 changed files with 85 additions and 1 deletions

View file

@ -2478,6 +2478,41 @@ type GroupeInstructeurWithDossiers {
Le numero du groupe instructeur.
"""
number: Int!
"""
Liste de tous les dossiers en attente de suppression définitive dun groupe instructeur.
"""
pendingDeletedDossiers(
"""
Returns the elements in the list that come after the specified cursor.
"""
after: String
"""
Returns the elements in the list that come before the specified cursor.
"""
before: String
"""
Dossiers en attente de suppression depuis la date.
"""
deletedSince: ISO8601DateTime
"""
Returns the first _n_ elements from the list.
"""
first: Int
"""
Returns the last _n_ elements from the list.
"""
last: Int
"""
Lordre des dossiers en attente de suppression.
"""
order: Order = ASC
): DeletedDossierConnection!
}
type HeaderSectionChampDescriptor implements ChampDescriptor {

View file

@ -18,6 +18,11 @@ module Types
argument :deleted_since, GraphQL::Types::ISO8601DateTime, required: false, description: "Dossiers supprimés depuis la date."
end
field :pending_deleted_dossiers, Types::DeletedDossierType.connection_type, "Liste de tous les dossiers en attente de suppression définitive dun groupe instructeur.", null: false do
argument :order, Types::Order, default_value: :asc, required: false, description: "Lordre des dossiers en attente de suppression."
argument :deleted_since, GraphQL::Types::ISO8601DateTime, required: false, description: "Dossiers en attente de suppression depuis la date."
end
def dossiers(updated_since: nil, created_since: nil, state: nil, archived: nil, revision: nil, max_revision: nil, min_revision: nil, order:, lookahead:)
dossiers = object
.dossiers
@ -70,5 +75,15 @@ module Types
dossiers.order(deleted_at: order)
end
def pending_deleted_dossiers(deleted_since: nil, order:)
dossiers = object.dossiers.hidden_for_administration
if deleted_since.present?
dossiers = dossiers.hidden_since(deleted_since)
end
dossiers.order(hidden_by_user_at: order, hidden_by_administration_at: order)
end
end
end