fix/feat: Now the projectId is correctly fetched yet we cant test shit since the db is empty
This commit is contained in:
parent
5130c00796
commit
92696c3e16
@ -188,6 +188,12 @@ const fetchData = async (
|
|||||||
const responseData = await mockFetch(projectId, title, date);
|
const responseData = await mockFetch(projectId, title, date);
|
||||||
handleFetchSuccess(responseData);
|
handleFetchSuccess(responseData);
|
||||||
} else {
|
} else {
|
||||||
|
if (projectId == -1) {
|
||||||
|
console.error(
|
||||||
|
"No sections to show because no project was found."
|
||||||
|
);
|
||||||
|
return;
|
||||||
|
}
|
||||||
await new Promise<void>((resolve, reject) => {
|
await new Promise<void>((resolve, reject) => {
|
||||||
getSectionCellsByDate(
|
getSectionCellsByDate(
|
||||||
projectId,
|
projectId,
|
||||||
|
@ -47,7 +47,7 @@ import { store } from "@/main.ts";
|
|||||||
import { getProjectEntrepreneurs } from "@/services/Apis/Shared.ts";
|
import { getProjectEntrepreneurs } from "@/services/Apis/Shared.ts";
|
||||||
import UserEntrepreneur from "@/ApiClasses/UserEntrepreneur.ts";
|
import UserEntrepreneur from "@/ApiClasses/UserEntrepreneur.ts";
|
||||||
|
|
||||||
const dropdownRef = ref<HTMLElement | null>(null);
|
const dropdownRef = ref<HTMLElement | undefined>(undefined);
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
projectId: number;
|
projectId: number;
|
||||||
@ -94,6 +94,10 @@ const fetchEntrepreneurs = (projectId: number, useMock = false) => {
|
|||||||
if (useMock) {
|
if (useMock) {
|
||||||
fetchMockEntrepreneurs();
|
fetchMockEntrepreneurs();
|
||||||
} else {
|
} else {
|
||||||
|
if (projectId == -1) {
|
||||||
|
console.error("No contact to show because no project was found.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
getProjectEntrepreneurs(
|
getProjectEntrepreneurs(
|
||||||
projectId,
|
projectId,
|
||||||
(response) => {
|
(response) => {
|
||||||
|
@ -8,6 +8,28 @@ import {
|
|||||||
} from "@/services/api";
|
} from "@/services/api";
|
||||||
|
|
||||||
// Entrepreneurs API
|
// Entrepreneurs API
|
||||||
|
function getEntrepreneurProjectId(
|
||||||
|
onSuccessHandler?: (response: AxiosResponse<number[]>) => void,
|
||||||
|
onErrorHandler?: (error: AxiosError) => void
|
||||||
|
): void {
|
||||||
|
axiosInstance
|
||||||
|
.get("/entrepreneur/projects")
|
||||||
|
.then((response) => {
|
||||||
|
if (onSuccessHandler) {
|
||||||
|
onSuccessHandler(response);
|
||||||
|
} else {
|
||||||
|
defaultApiSuccessHandler(response);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch((error: AxiosError) => {
|
||||||
|
if (onErrorHandler) {
|
||||||
|
onErrorHandler(error);
|
||||||
|
} else {
|
||||||
|
defaultApiErrorHandler(error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
function requestProjectCreation(
|
function requestProjectCreation(
|
||||||
projectDetails: Project,
|
projectDetails: Project,
|
||||||
onSuccessHandler?: (response: AxiosResponse) => void,
|
onSuccessHandler?: (response: AxiosResponse) => void,
|
||||||
@ -102,6 +124,7 @@ function removeSectionCell(
|
|||||||
}
|
}
|
||||||
|
|
||||||
export {
|
export {
|
||||||
|
getEntrepreneurProjectId,
|
||||||
requestProjectCreation,
|
requestProjectCreation,
|
||||||
addSectionCell,
|
addSectionCell,
|
||||||
modifySectionCell,
|
modifySectionCell,
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<header>
|
<header>
|
||||||
<HeaderCanvas :project-id="101" :is-admin="isAdmin_" />
|
<HeaderCanvas :project-id="projectId" :is-admin="isAdmin_" />
|
||||||
</header>
|
</header>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
@ -10,7 +10,7 @@
|
|||||||
Cliquez sur un champ du tableau pour afficher son contenu en détail
|
Cliquez sur un champ du tableau pour afficher son contenu en détail
|
||||||
ci-dessous.
|
ci-dessous.
|
||||||
</p>
|
</p>
|
||||||
<LeanCanvas :project-id="101" :is-admin="isAdmin_" />
|
<LeanCanvas :project-id="projectId" :is-admin="isAdmin_" />
|
||||||
<div class="info-box">
|
<div class="info-box">
|
||||||
<p v-if="admin">
|
<p v-if="admin">
|
||||||
Responsable :
|
Responsable :
|
||||||
@ -38,18 +38,12 @@ import { isAdmin } from "@/services/tools.ts";
|
|||||||
import { getProjectAdmin } from "@/services/Apis/Shared.ts";
|
import { getProjectAdmin } from "@/services/Apis/Shared.ts";
|
||||||
import UserAdmin from "@/ApiClasses/UserAdmin.ts";
|
import UserAdmin from "@/ApiClasses/UserAdmin.ts";
|
||||||
import type { AxiosResponse, AxiosError } from "axios";
|
import type { AxiosResponse, AxiosError } from "axios";
|
||||||
|
import { getEntrepreneurProjectId } from "@/services/Apis/Entrepreneurs";
|
||||||
/*
|
|
||||||
const props = defineProps<{
|
|
||||||
projectId: number;
|
|
||||||
}>();
|
|
||||||
|
|
||||||
const projectId = props.projectId;
|
|
||||||
*/
|
|
||||||
|
|
||||||
const IS_MOCK_MODE = false;
|
const IS_MOCK_MODE = false;
|
||||||
const isAdmin_ = isAdmin();
|
const isAdmin_ = isAdmin();
|
||||||
const admin = ref<UserAdmin | null>(null);
|
const admin = ref<UserAdmin | null>(null);
|
||||||
|
const projectId = ref<number>(-1);
|
||||||
|
|
||||||
const mockAdminData = new UserAdmin({
|
const mockAdminData = new UserAdmin({
|
||||||
idUser: 1,
|
idUser: 1,
|
||||||
@ -60,6 +54,35 @@ const mockAdminData = new UserAdmin({
|
|||||||
phoneNumber: "0600000000",
|
phoneNumber: "0600000000",
|
||||||
});
|
});
|
||||||
|
|
||||||
|
function getProjectId(): Promise<number> {
|
||||||
|
return new Promise((resolve) => {
|
||||||
|
getEntrepreneurProjectId(
|
||||||
|
(response) => {
|
||||||
|
const projectIds = response.data;
|
||||||
|
if (!Array.isArray(projectIds) || projectIds.length === 0) {
|
||||||
|
console.warn("Aucun projet trouvé pour cet entrepreneur.");
|
||||||
|
resolve(-1);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
resolve(projectIds[0]);
|
||||||
|
},
|
||||||
|
(error) => {
|
||||||
|
console.error("Erreur API :", error);
|
||||||
|
resolve(-1);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
async function fetchProjectId() {
|
||||||
|
try {
|
||||||
|
projectId.value = await getProjectId();
|
||||||
|
console.log("ProjectId :", projectId.value);
|
||||||
|
} catch (error) {
|
||||||
|
console.error("Erreur lors de la récupération du projet :", error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const fetchAdminData = (projectId: number, useMock = IS_MOCK_MODE) => {
|
const fetchAdminData = (projectId: number, useMock = IS_MOCK_MODE) => {
|
||||||
if (useMock) {
|
if (useMock) {
|
||||||
console.log("Utilisation des données mockées pour l'administrateur");
|
console.log("Utilisation des données mockées pour l'administrateur");
|
||||||
@ -67,6 +90,18 @@ const fetchAdminData = (projectId: number, useMock = IS_MOCK_MODE) => {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (projectId === -1) {
|
||||||
|
admin.value = {
|
||||||
|
idUser: 0,
|
||||||
|
userSurname: "Erreur",
|
||||||
|
userName: "Chargement",
|
||||||
|
primaryMail: "N/A",
|
||||||
|
secondaryMail: "N/A",
|
||||||
|
phoneNumber: "N/A",
|
||||||
|
};
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
getProjectAdmin(
|
getProjectAdmin(
|
||||||
projectId,
|
projectId,
|
||||||
(response: AxiosResponse) => {
|
(response: AxiosResponse) => {
|
||||||
@ -90,8 +125,8 @@ const fetchAdminData = (projectId: number, useMock = IS_MOCK_MODE) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
const projectId = 101;
|
fetchProjectId();
|
||||||
fetchAdminData(projectId);
|
fetchAdminData(projectId.value);
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user