add dossierChangerGroupeInstructeur mutation
This commit is contained in:
parent
13ab3b465e
commit
62f82cc83c
5 changed files with 114 additions and 1 deletions
26
app/graphql/mutations/dossier_changer_groupe_instructeur.rb
Normal file
26
app/graphql/mutations/dossier_changer_groupe_instructeur.rb
Normal file
|
@ -0,0 +1,26 @@
|
|||
module Mutations
|
||||
class DossierChangerGroupeInstructeur < Mutations::BaseMutation
|
||||
include DossierHelper
|
||||
|
||||
description "Changer le grope instructeur du dossier."
|
||||
|
||||
argument :dossier_id, ID, "Dossier ID", required: true, loads: Types::DossierType
|
||||
argument :groupe_instructeur_id, ID, "Group instructeur a affecter", required: true, loads: Types::GroupeInstructeurType
|
||||
|
||||
field :dossier, Types::DossierType, null: true
|
||||
field :errors, [Types::ValidationErrorType], null: true
|
||||
|
||||
def resolve(dossier:, groupe_instructeur:)
|
||||
if dossier.groupe_instructeur == groupe_instructeur
|
||||
{ errors: ["Le dossier est déjà avec le grope instructeur: '#{groupe_instructeur.label}'"] }
|
||||
else
|
||||
dossier.update!(groupe_instructeur: groupe_instructeur)
|
||||
{ dossier: dossier }
|
||||
end
|
||||
end
|
||||
|
||||
def authorized?(dossier:, groupe_instructeur:)
|
||||
dossier.groupe_instructeur.procedure == groupe_instructeur.procedure
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue