Skip to content

Commit 7a21c26

Browse files
committed
feat(admin): wired add vae collective structure page to the vaeCollective_createCommanditaireVaeCollective mutation
1 parent d483b15 commit 7a21c26

File tree

1 file changed

+34
-1
lines changed
  • packages/reva-admin-react/src/app/(admin)/structures-vae-collective/add

1 file changed

+34
-1
lines changed

packages/reva-admin-react/src/app/(admin)/structures-vae-collective/add/page.tsx

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,35 @@
11
"use client";
22
import Input from "@codegouvfr/react-dsfr/Input";
33
import { zodResolver } from "@hookform/resolvers/zod";
4+
import { useMutation } from "@tanstack/react-query";
45
import { useRouter } from "next/navigation";
56
import { useForm } from "react-hook-form";
67
import { z } from "zod";
78

89
import { FormButtons } from "@/components/form/form-footer/FormButtons";
10+
import { useGraphQlClient } from "@/components/graphql/graphql-client/GraphqlClient";
911
import { graphqlErrorToast, successToast } from "@/components/toast/toast";
1012

13+
import { graphql } from "@/graphql/generated";
14+
15+
const createCommanditaireVaeCollectiveMutation = graphql(`
16+
mutation vaeCollective_createCommanditaireVaeCollective(
17+
$raisonSociale: String!
18+
$gestionnaireEmail: String!
19+
$gestionnaireFirstname: String!
20+
$gestionnaireLastname: String!
21+
) {
22+
vaeCollective_createCommanditaireVaeCollective(
23+
raisonSociale: $raisonSociale
24+
gestionnaireEmail: $gestionnaireEmail
25+
gestionnaireFirstname: $gestionnaireFirstname
26+
gestionnaireLastname: $gestionnaireLastname
27+
) {
28+
id
29+
}
30+
}
31+
`);
32+
1133
const structureVaeCollectiveSchema = z.object({
1234
raisonSociale: z.string().min(1, "Merci de remplir ce champ"),
1335
gestionnaireEmail: z.string().min(1, "Merci de remplir ce champ"),
@@ -21,6 +43,17 @@ type StructureVaeCollectiveFormValues = z.infer<
2143

2244
export default function AddStructureVaeCollectivePage() {
2345
const router = useRouter();
46+
const { graphqlClient } = useGraphQlClient();
47+
const { mutateAsync: createCommanditaireVaeCollective } = useMutation({
48+
mutationFn: (params: {
49+
raisonSociale: string;
50+
gestionnaireEmail: string;
51+
gestionnaireFirstname: string;
52+
gestionnaireLastname: string;
53+
}) =>
54+
graphqlClient.request(createCommanditaireVaeCollectiveMutation, params),
55+
});
56+
2457
const { register, handleSubmit, formState, reset } =
2558
useForm<StructureVaeCollectiveFormValues>({
2659
resolver: zodResolver(structureVaeCollectiveSchema),
@@ -34,7 +67,7 @@ export default function AddStructureVaeCollectivePage() {
3467

3568
const onSubmit = async (data: StructureVaeCollectiveFormValues) => {
3669
try {
37-
console.log({ data });
70+
await createCommanditaireVaeCollective(data);
3871
successToast("Structure de VAE collective créée avec succès");
3972
router.push(`/structures-vae-collective`);
4073
} catch (error) {

0 commit comments

Comments
 (0)