This commit is contained in:
Kenneth Jannette
2024-03-10 22:23:57 -05:00
parent 68fc2e9665
commit bef172636d

View File

@@ -24,10 +24,11 @@ import "../../styles/docedit-page.scss";
const DocEditPage = (props) => { const DocEditPage = (props) => {
const { documentId, caseId } = useParams(); const { documentId, caseId } = useParams();
const [document, setDocument] = useState(); const [document, setDocument] = useState(null);
const [docType, setDocType] = useState(); const [docType, setDocType] = useState(null);
const [fetchedCase, setFetchedCase] = useState(); const [fetchedCase, setFetchedCase] = useState(null);
const [parsedRogs, setParsedRogs] = useState(); const [parsedRogs, setParsedRogs] = useState(null);
const [docLoaded, setDocLoaded] = useState(false);
const { appState } = useContext(AppContext); const { appState } = useContext(AppContext);
const { group } = appState; const { group } = appState;
const appUserId = group ? group.appUserId : null; const appUserId = group ? group.appUserId : null;
@@ -37,36 +38,43 @@ const DocEditPage = (props) => {
? process.env.REACT_APP_API_DEV ? process.env.REACT_APP_API_DEV
: process.env.REACT_APP_API_PROD; : process.env.REACT_APP_API_PROD;
useEffect(() => { async function getParsedRequests(docId, docType) {
if (!documentId) { try {
return; const response = await fetch(
`${apiUrl}/getParsedRequests/${documentId}/${docType}`,
{
method: "GET",
}
);
const res = await response.json();
console.log("res", res);
const req = res[0].requests;
if (req.length > 1) {
setParsedRogs(req);
}
} catch (err) {
console.log("Error occured GET parsed req:", err);
} }
getDocument(documentId);
console.log("eff doc", document);
setDocType(document?.docType);
}, [documentId]);
useEffect(() => {
if (!caseId) {
return;
} }
getCase(caseId);
}, [caseId]);
useEffect(() => { async function getDocument(docId) {
getParsedRequests(documentId, docType); try {
}, [documentId, docType]);
function getDocument(docId) {
const docRef = doc(db, "documents", `${docId}`); const docRef = doc(db, "documents", `${docId}`);
const unsub = onSnapshot(docRef, (snapshot) => { const docSnap = await getDoc(docRef);
if (snapshot.exists() && snapshot.data().ownerId === appUserId) { if (docSnap.exists()) {
setDocument({ ...snapshot.data(), documentId: snapshot.id }); const bar = docSnap.data();
} else { if (bar.docType) {
setDocument(null); console.log(bar.docType);
let zib = bar.docType;
console.log("zib", zib);
getz(docId, zib);
}
} else {
console.log("DB item does not exist");
}
} catch (error) {
console.log(`A system error has occurred: ${error}`);
} }
});
return unsub;
} }
async function getCase(caseId) { async function getCase(caseId) {
@@ -76,7 +84,6 @@ const DocEditPage = (props) => {
if (docSnap.exists()) { if (docSnap.exists()) {
const _case = docSnap.data(); const _case = docSnap.data();
_case.id = docSnap._key.path.segments[1]; _case.id = docSnap._key.path.segments[1];
console.log("_case", _case);
setFetchedCase(_case); setFetchedCase(_case);
} else { } else {
console.log("DB item does not exist"); console.log("DB item does not exist");
@@ -86,27 +93,45 @@ const DocEditPage = (props) => {
} }
} }
async function getParsedRequests(docId, docType) { async function getz(docId, zib) {
if (!docId) { console.log("zibbbt", zib);
return;
}
try { try {
const response = await fetch( fetch(`${apiUrl}/v1/get-parsed-requests/${documentId}/${zib}`, {
`${apiUrl}/getParsedRequests/${documentId}/${docType}`,
{
method: "GET", method: "GET",
} })
); .then(function (response) {
const res = await response.json(); return response.json();
})
const req = res[0].requests; .then((data) => {
if (req.length > 1) { const respArray = data[0].responses;
setParsedRogs(req); const result = respArray?.map((item, index) => {
} let obj = {};
obj["showInputEle"] = false;
obj["resp"] = item.text;
obj["index"] = index;
return obj;
});
setParsedRogs(result);
console.log("parsedRogs", parsedRogs);
});
} catch (err) { } catch (err) {
console.log("Error occured:", err); console.log("Error occured:", err);
} }
} }
useEffect(() => {
if (!documentId) {
return;
}
getDocument(documentId);
}, [documentId]);
useEffect(() => {
if (!caseId) {
return;
}
getCase(caseId);
getDocument(documentId);
}, [caseId, documentId]);
return <div>Doc Edit</div>; return <div>Doc Edit</div>;
}; };