diff --git a/admin/src/pages/examinationrules/attestation/components/AutoSelector.tsx b/admin/src/pages/examinationrules/attestation/components/AutoSelector.tsx index 91f754a..41d215e 100644 --- a/admin/src/pages/examinationrules/attestation/components/AutoSelector.tsx +++ b/admin/src/pages/examinationrules/attestation/components/AutoSelector.tsx @@ -40,9 +40,10 @@ export type TableListItem = { // 资质考试自动组卷 // React.forwardRef 接受渲染函数作为参数。React 将使用 props 和 ref 作为参数来调用此函数。此函数应返回 React 节点。 const AutoSelector = (props: any, ref: any) => { - const { questionType, ruleData } = props; - + const { questionType, rulesId, subjectId } = props; +console.log('props---', props) // const actionRef = useRef(); + const [paperCount, setPaperCount] = useState(1) // 题库抽取数量 const [questionCount, setQuestionCount] = useState([50,50]) // 题库抽取数量 const [questionTypeCount, setQuestionTypeCount] = useState(questionType.map(()=>(0))) // 题型抽取数量 @@ -60,7 +61,7 @@ const AutoSelector = (props: any, ref: any) => { /** 获取常规题库试题数量 */ const { data: normalSum } = useRequest(()=>{ - return queryQuestionWithoutList({rules_id:ruleData?.id, subject_id: ruleData?.subject_id, page_number: 1, page_size: 1, type: 0}) + return queryQuestionWithoutList({rules_id: rulesId, subject_id: subjectId, page_number: 1, page_size: 1, type: 0}) },{ formatResult: (result) => { return result.totalRow; @@ -69,7 +70,7 @@ const AutoSelector = (props: any, ref: any) => { /** 获取资质考试题库试题数量 */ const { data: attestationSum } = useRequest(()=>{ - return queryQuestionWithoutList({rules_id:ruleData?.id, subject_id: ruleData?.subject_id, page_number: 1, page_size: 1, type: 1}) + return queryQuestionWithoutList({rules_id: rulesId, subject_id: subjectId, page_number: 1, page_size: 1, type: 1}) },{ formatResult: (result) => { return result.totalRow; @@ -85,13 +86,15 @@ const AutoSelector = (props: any, ref: any) => { useImperativeHandle(ref, () => ({ // 构造ref的获取数据方法 getData: () => { // 组卷 - return {questionCount, questionTypeCount}; + return {paperCount, questionCount, questionTypeCount}; }, })); return ( <> - 生成试卷数量:试卷数量与学生重复考试次数一致 + 生成试卷数量:{ + setPaperCount(value) + }} />试卷数量与学生重复考试次数一致 题库选择 {`常规题库 ( ${normalQuestionSum} 道题)`} diff --git a/admin/src/pages/examinationrules/attestation/step/index.tsx b/admin/src/pages/examinationrules/attestation/step/index.tsx index 6cb2ce0..328c01d 100644 --- a/admin/src/pages/examinationrules/attestation/step/index.tsx +++ b/admin/src/pages/examinationrules/attestation/step/index.tsx @@ -44,6 +44,7 @@ export default () => { const [questionType, setQuestionType] = useState([]); // 题型 const [rulesId, setRulesId] = useState(0); // 规则id, 保存新建的rules_id + const [subjectId, setSubjectId] = useState(0); // 关联主题id /** 自动组卷窗口 */ const [autoModalVisible, handleAutoModalVisible] = useState(false); @@ -244,17 +245,17 @@ export default () => { }, ]; console.log(params, 'params'); + let ruleData = {} if (params?.id) { - console.log(JSON.stringify(params), "878"); - + //console.log(JSON.stringify(params), "878"); const { data } = useRequest(async () => { const { bean } = await queryRulesView(params); return { data: bean } }); ruleData = data } - console.log(ruleData, 'ruleData'); + console.log('ruleData',ruleData); /** 获取题型 */ const { data: questionTypeData } = useRequest(() => { @@ -314,6 +315,7 @@ export default () => { end_time: fileds.dateRange[1] }); setRulesId(data?.rules_id) + setSubjectId(fileds?.subject_id) // 设置当前关联主题 setCurrentStep(1) return true; @@ -608,7 +610,7 @@ export default () => { onFinish={async () => { const values = autoRef.current?.getData(); console.log('系统组卷::::', values); - const { code, data: paper, msg } = await autoPaperOfficial({ rules_id: Number(params?.id || rulesId), question_count: values?.questionCount.toString(), question_type_count: values?.questionTypeCount.toString() }) + const { code, data: paper, msg } = await autoPaperOfficial({ rules_id: Number(params?.id || rulesId), subject_id: subjectId, paper_count: values?.paperCount, question_count: values?.questionCount.toString(), question_type_count: values?.questionTypeCount.toString() }) console.log('paper', paper) // setUuidPaper(paper?.paper_uuid) // message.success('提交成功'); @@ -617,7 +619,7 @@ export default () => { return true; }} > - + { } const questions = await queryQuestionWithoutList(props?.data?.paper_uuid ? {..._data, paper_uuid: props?.data?.paper_uuid} : _data); - console.log('**', props?.data?.paper_uuid,{paper_uuid: props?.data?.paper_uuid}) + //console.log('**', props?.data?.paper_uuid,{paper_uuid: props?.data?.paper_uuid}) // const data = [] for(let i=0; i { const formRef = useRef() /** 获取章节数据 */ // 获取主题id - console.log('props subject_id', props) + console.log('props ==', props) const { subjectId, questionType } = props; console.log('questionType', questionType) const [rows, setRows] = useState([]) ; // 章节 diff --git a/admin/src/pages/examinationrules/normal/step/index.tsx b/admin/src/pages/examinationrules/normal/step/index.tsx index 896ed65..a20168b 100644 --- a/admin/src/pages/examinationrules/normal/step/index.tsx +++ b/admin/src/pages/examinationrules/normal/step/index.tsx @@ -89,7 +89,7 @@ const handleUpdatePaper = async (rules_id: number, paper_uuid: number, paper_id: */ const handleRemoveTempQuestion = async (paper_uuid: number, question_ids: [{question_id: number}]) => { const hide = message.loading('正在删除'); - console.log('uuidPaper', paper_uuid) + //console.log('uuidPaper', paper_uuid) if (!question_ids || !paper_uuid) return true; try { const {code, msg} = await delTempQuestion({ @@ -139,6 +139,7 @@ const handleExchangeSortNum = async (paper_uuid: number, question_ids: string, r }; const labels = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K'] + // 模拟考试规则维护 export default () => { @@ -488,11 +489,12 @@ export default () => { headerBordered > + {console.log('questions:::', questionType)} {questions && questions.map((item, idx) => ( item &&
- {idx + 1}. {item?.question_stem} + {idx + 1}. ({questionType?.filter(t=>(Number(t?.code) === item?.question_type))[0]?.name}, 分值 {scoreData?.filter(val=>(val.question_type === Number(item?.question_type)))[0]?.score}) {item?.question_stem} {(item?.question_type === 0) && // 单选题
@@ -581,7 +583,7 @@ export default () => { {questionType.map((item) => { - return {item?.name} 共 {typeQuestionCount[Number(item.code)]} 题 {scoreData?.filter(val=>(val.question_type === Number(item?.code)))[0]?.score} 分 + return {item?.name} 共 {typeQuestionCount[Number(item.code)]} 题, 共 {typeQuestionCount[Number(item.code)] * scoreData?.filter(val=>(val.question_type === Number(item?.code)))[0]?.score} 分 } )} @@ -742,6 +744,7 @@ export default () => { //console.log('paper', paper) // setUuidPaper(paper?.paper_uuid) // message.success('提交成功'); + runScore({rules_id: rulesId}) // handleScoreModalVisible(false) return true; }}