Skip to content

Commit

Permalink
Fix admin page
Browse files Browse the repository at this point in the history
  • Loading branch information
WebMon9099 committed Dec 10, 2024
1 parent a3bf0cd commit ccda3ef
Show file tree
Hide file tree
Showing 6 changed files with 39 additions and 46 deletions.
13 changes: 10 additions & 3 deletions backend/api/views/training.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,15 @@

@training.route("/getSignedDocfile/<id>", methods=["GET"])
def getSignedDocfile(id):
data = SignedDocs.objects().filter(id=id).first()
role = request.args.get("role", "policy")
if role == "policy":
data = SignOrigin.objects().filter(id=id).first()
else:
data = SignedDocs.objects().filter(id=id).first()
document = data.filee.read()
data.document_file = document
return send_file(
BytesIO(document), download_name=data.user_email, mimetype="application/pdf"
BytesIO(document), download_name="down_doc", mimetype="application/pdf"
)


Expand All @@ -61,7 +65,10 @@ def getOriginDoc():

@training.route("/getSignedDoc/<role>", methods=["GET"])
def getSignedData(role):
data = SignedDocs.objects(role=str(role))
if role == "policy":
data = SignOrigin.objects()
else:
data = SignedDocs.objects(role=str(role))
return create_response(data={"signed": data})


Expand Down
4 changes: 2 additions & 2 deletions frontend/src/components/AddPolicyModal.js
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ function AddPolicyModal({ onCancel, onFinish, open, loading, hubOptions }) {
>
<Input.TextArea />
</Form.Item>
<Form.Item
{/* <Form.Item
name="role"
label="Role"
rules={[
Expand All @@ -118,7 +118,7 @@ function AddPolicyModal({ onCancel, onFinish, open, loading, hubOptions }) {
<Option value={ACCOUNT_TYPE.PARTNER}>Partner</Option>
<Option value={ACCOUNT_TYPE.HUB}>Hub</Option>
</Select>
</Form.Item>
</Form.Item> */}
{role === ACCOUNT_TYPE.HUB && (
<Form.Item
name="hub_id"
Expand Down
2 changes: 2 additions & 0 deletions frontend/src/components/TrainingList.js
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,8 @@ const TrainingList = (props) => {
"&role=" +
props.role
}
rel="noreferrer"
target="_blank"
>
You need to sign Policy first
</a>
Expand Down
62 changes: 22 additions & 40 deletions frontend/src/components/pages/AdminSign.js
Original file line number Diff line number Diff line change
@@ -1,47 +1,36 @@
import React, { useEffect, useMemo, useState } from "react";
import {
deleteTrainbyId,
downloadBlob,
getSignedData,
getSignedDocfile,
fetchAccounts,
newPolicyCreate,
} from "utils/api";
import { ACCOUNT_TYPE, I18N_LANGUAGES, TRAINING_TYPE } from "utils/consts";
import { HubsDropdown } from "../AdminDropdowns";
import { ACCOUNT_TYPE } from "utils/consts";
import {
Table,
Popconfirm,
message,
Button,
notification,
Spin,
Tabs,
Skeleton,
} from "antd";
import {
DeleteOutlined,
EditOutlined,
PlusCircleOutlined,
TeamOutlined,
} from "@ant-design/icons";
import { PlusCircleOutlined } from "@ant-design/icons";
import { withRouter } from "react-router-dom";

import "components/css/Training.scss";
import AdminDownloadDropdown from "../AdminDownloadDropdown";
import AddPolicyModal from "../AddPolicyModal";

const AdminSign = () => {
const [role, setRole] = useState(ACCOUNT_TYPE.MENTEE);
const [role, setRole] = useState("policy");
const [signedData, setSignedData] = useState([]);
const [reload, setReload] = useState(true);
const [translateLoading, setTranslateLoading] = useState(false);
const [translateOpen, setTranslateOpen] = useState(false);
const [openAddPolicy, setOpenAddPolicy] = useState(false);
const [loading, setLoading] = useState(false);
const [hubOptions, setHubOptions] = useState([]);
const [resetFilters, setResetFilters] = useState(false);
const [allData, setAllData] = useState([]);

const onCancelTrainingForm = () => {
setOpenAddPolicy(false);
Expand All @@ -60,11 +49,6 @@ const AdminSign = () => {
getHubData();
}, []);

const handleResetFilters = () => {
setResetFilters(!resetFilters);
setSignedData(allData);
};

const onFinish = async (values) => {
setLoading(true);
message.loading("Announcing new Policy...", 3);
Expand All @@ -87,15 +71,18 @@ const AdminSign = () => {
};

const handleTrainingDownload = async (record) => {
let response = await getSignedDocfile(record._id.$oid);
let response = await getSignedDocfile(record._id.$oid, role);
if (!response) {
notification.error({
message: "ERROR",
description: "Couldn't download file",
});
return;
}
downloadBlob(response, "signed_document.pdf");
downloadBlob(
response,
role === "policy" ? "Policy_doc.pdf" : "signed_document.pdf"
);
};

useMemo(() => {
Expand All @@ -104,10 +91,8 @@ const AdminSign = () => {
let newData = await getSignedData(role);
if (newData) {
setSignedData(newData);
setAllData(newData);
} else {
setSignedData([]);
setAllData([]);
notification.error({
message: "ERROR",
description: "Couldn't get trainings",
Expand All @@ -120,10 +105,13 @@ const AdminSign = () => {

const columns = [
{
title: "User",
dataIndex: "user_email",
key: "user_email",
render: (user_email) => <>{user_email}</>,
title: role === "policy" ? "Name" : "User",
dataIndex: role === "policy" ? "name" : "user_email",
key: role === "policy" ? "name" : "user_email",
render:
role === "policy"
? (name) => <>{name}</>
: (user_email) => <>{user_email}</>,
},
{
title: "Document",
Expand All @@ -132,20 +120,19 @@ const AdminSign = () => {
render: (id, record) => {
return (
<Button onClick={() => handleTrainingDownload(record)}>
Download Signed PDF
{role === "policy" ? "Download Policy PDF" : "Download Signed PDF"}
</Button>
);
},
},
];

const searchbyHub = (hub_id) => {
if (role === ACCOUNT_TYPE.HUB) {
setSignedData(allData.filter((x) => x.hub_id == hub_id));
}
};

const tabItems = [
{
label: `Policy Doc`,
key: "policy",
disabled: translateLoading,
},
{
label: `Mentee`,
key: ACCOUNT_TYPE.MENTEE,
Expand All @@ -161,17 +148,12 @@ const AdminSign = () => {
key: ACCOUNT_TYPE.PARTNER,
disabled: translateLoading,
},
// {
// label: `Hub`,
// key: ACCOUNT_TYPE.HUB,
// disabled: translateLoading,
// },
];

return (
<div className="trains">
<Tabs
defaultActiveKey={ACCOUNT_TYPE.MENTEE}
defaultActiveKey={"policy"}
onChange={(key) => {
setRole(key);
setResetFilters(!resetFilters);
Expand Down
1 change: 1 addition & 0 deletions frontend/src/components/pages/HomeLayout.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ function HomeLayout({ children, ignoreHomeLayout, allHubData, location }) {
"/application-form",
"/application-training",
"/build-profile",
"/digital-sign",
];

const homeLayoutPaths = [
Expand Down
3 changes: 2 additions & 1 deletion frontend/src/utils/api.js
Original file line number Diff line number Diff line change
Expand Up @@ -232,9 +232,10 @@ export const getSignedData = async (role) => {
const data = res.data.result.signed;
return data;
};
export const getSignedDocfile = async (id) => {
export const getSignedDocfile = async (id, role) => {
const requestExtension = `/training/getSignedDocfile/${id}`;
const res = await authGet(requestExtension, {
role: role,
responseType: "blob",
}).catch(console.error);
return res;
Expand Down

0 comments on commit ccda3ef

Please sign in to comment.