add QRCode to questionBank

This commit is contained in:
Majd_dk 2024-11-09 15:35:30 +03:00
parent 0541b7fcfb
commit db3d01cf23
4 changed files with 14 additions and 5 deletions

View File

@ -2,12 +2,10 @@ import React from 'react';
import QRCode from 'react-qr-code'; import QRCode from 'react-qr-code';
const QRCodeGenerator = ({url,serial}:any) => { const QRCodeGenerator = ({url}:any) => {
const qrValue = `${url}/${serial}`
console.log(qrValue)
return ( return (
<div style={{display:'flex',justifyContent:'center'}} > <div style={{display:'flex',justifyContent:'center'}} >
<QRCode value={qrValue} size={230} type='link' /> <QRCode value={url} size={230} type='link' />
</div> </div>
); );
}; };

View File

@ -42,7 +42,7 @@ const QrCodeModels: React.FC<ModalFormProps> = ({
<main className="main_modal"> <main className="main_modal">
<div className="ValidationField w-100 mb-5 "> <div className="ValidationField w-100 mb-5 ">
<QRCodeGenerator url = {`https://nerd-back.point-dev.net/api/students/question`} serial={objectToEdit?.serial}/> <QRCodeGenerator url = {`https://nerd-back.point-dev.net/api/students/question/${objectToEdit?.serial}`}/>
</div> </div>
</main> </main>
</Modal> </Modal>

View File

@ -7,6 +7,7 @@ import { useDeleteQuestion } from "../../../api/Question";
import PageHeader from "../../../Layout/Dashboard/PageHeader"; import PageHeader from "../../../Layout/Dashboard/PageHeader";
import FilterLayout from "../../../Layout/Dashboard/FilterLayout"; import FilterLayout from "../../../Layout/Dashboard/FilterLayout";
import FilterForm from "./Model/FilterForm"; import FilterForm from "./Model/FilterForm";
import QrCodeModels from "../../../Layout/Dashboard/QrCodeModels";
const Table = lazy(() => import("./Table")); const Table = lazy(() => import("./Table"));
const DeleteModalForm = lazy( const DeleteModalForm = lazy(
@ -36,6 +37,9 @@ const TableHeader = () => {
deleteMutation={deleteMutation} deleteMutation={deleteMutation}
ModelEnum={ModalEnum?.QUESTION_BANK_DELETE} ModelEnum={ModalEnum?.QUESTION_BANK_DELETE}
/> />
<QrCodeModels
ModelEnum={ModalEnum?.QUESTION_QR}
/>
</Suspense> </Suspense>
</div> </div>
); );

View File

@ -34,6 +34,11 @@ export const useColumns = () => {
setFilter({}) setFilter({})
navigate(`/${ABILITIES_ENUM?.GRADE}/${grade?.id}/${ABILITIES_ENUM?.SUBJECT}/${subject?.id}/${ABILITIES_ENUM?.UNIT}/${unit?.id}/${ABILITIES_ENUM?.LESSON}/${lesson?.id}/${ABILITIES_ENUM?.QUESTION}/${record?.id}`); navigate(`/${ABILITIES_ENUM?.GRADE}/${grade?.id}/${ABILITIES_ENUM?.SUBJECT}/${subject?.id}/${ABILITIES_ENUM?.UNIT}/${unit?.id}/${ABILITIES_ENUM?.LESSON}/${lesson?.id}/${ABILITIES_ENUM?.QUESTION}/${record?.id}`);
}; };
const handleClickQr = (data:any)=>{
setObjectToEdit(data);
setIsOpen(ModalEnum?.QUESTION_QR);
}
const [t] = useTranslation(); const [t] = useTranslation();
const columns: TableColumnsType<Question> = [ const columns: TableColumnsType<Question> = [
@ -178,6 +183,8 @@ export const useColumns = () => {
index={index} index={index}
onDelete={() => handelDelete(record)} onDelete={() => handelDelete(record)}
onEdit={() => handleEdit(record)} onEdit={() => handleEdit(record)}
canShowQr={true}
onShoqQr={() =>handleClickQr(record)}
/> />
); );
}, },