Merge pull request 'Notes in Project Directory showing global notes instead of project-specific contact notes.' (#358) from Kartik_Bug#974 into Issues_Aug_2W

Reviewed-on: #358
This commit is contained in:
pramod.mahajan 2025-09-01 09:29:07 +00:00
commit f96a363a57
5 changed files with 23 additions and 11 deletions

View File

@ -1,8 +1,16 @@
import React, { useEffect, useState, useMemo } from "react";
import { DirectoryRepository } from "../../repositories/DirectoryRepository";
import NoteCardDirectoryEditable from "./NoteCardDirectoryEditable";
import { useSelectedproject } from "../../slices/apiDataManager";
const NotesCardViewDirectory = ({
notes,
setNotesForFilter,
searchText,
filterAppliedNotes,
}) => {
const projectId = useSelectedproject(); // get projectId from Redux
const NotesCardViewDirectory = ({ notes, setNotesForFilter, searchText, filterAppliedNotes }) => {
const [allNotes, setAllNotes] = useState([]);
const [filteredNotes, setFilteredNotes] = useState([]);
const [loading, setLoading] = useState(true);
@ -13,13 +21,15 @@ const NotesCardViewDirectory = ({ notes, setNotesForFilter, searchText, filterAp
const pageSize = 20;
useEffect(() => {
fetchNotes();
}, []);
if (projectId) {
fetchNotes(projectId);
}
}, [projectId]);
const fetchNotes = async () => {
const fetchNotes = async (projId) => {
setLoading(true);
try {
const response = await DirectoryRepository.GetNotes(1000, 1);
const response = await DirectoryRepository.GetNotes(1000, 1, projId); // pass projectId
const fetchedNotes = response.data?.data || [];
setAllNotes(fetchedNotes);
setNotesForFilter(fetchedNotes)
@ -122,7 +132,7 @@ const NotesCardViewDirectory = ({ notes, setNotesForFilter, searchText, filterAp
prevNotes.map((n) => (n.id === updatedNote.id ? updatedNote : n))
);
}}
onNoteDelete={() => fetchNotes()}
onNoteDelete={() => fetchNotes(projectId)} // reload with projectId
/>
))}
</div>

View File

@ -210,7 +210,7 @@ const LoginPage = () => {
Login With Password
</a>
) : (
<Link to="/auth/reqest/demo" className="registration-link">
<Link to="/market/enquire" className="registration-link">
Request a Demo
</Link>
)}

View File

@ -34,6 +34,8 @@ export const DirectoryRepository = {
DeleteNote: (id, isActive) =>
api.delete(`/api/directory/note/${id}?active=${isActive}`),
GetNotes: (pageSize, pageNumber) =>
api.get(`/api/directory/notes?pageSize=${pageSize}&pageNumber=${pageNumber}`),
GetNotes: (pageSize, pageNumber, projectId) =>
api.get(
`/api/directory/notes?pageSize=${pageSize}&pageNumber=${pageNumber}&projectId=${projectId}`
),
};

View File

@ -1,6 +1,6 @@
import { api } from "../utils/axiosClient";
export const MarketRepository = {
requestDemo: (data) => api.post("/api/market/inquiry", data),
requestDemo: (data) => api.post("/api/market/enquire", data),
getIndustries: () => api.get("api/market/industries"),
};

View File

@ -52,7 +52,7 @@ const router = createBrowserRouter(
children: [
{ path: "/auth/login", element: <LoginPage /> },
{ path: "/auth/login-otp", element: <LoginWithOtp /> },
{ path: "/auth/reqest/demo", element: <RegisterPage /> },
{ path: "/market/enquire", element: <RegisterPage /> },
{ path: "/auth/forgot-password", element: <ForgotPasswordPage /> },
{ path: "/reset-password", element: <ResetPasswordPage /> },
{ path: "/legal-info", element: <LegalInfoCard /> },