master
zhengpengju 3 years ago
parent a45b26d862
commit a699a19b6d

@ -136,6 +136,11 @@ const QuestionSelector = (props: any, ref: any) => {
defaultPageSize: 10, defaultPageSize: 10,
showSizeChanger: false, showSizeChanger: false,
}} }}
search={{
optionRender: false,
collapsed: false,
labelWidth: 40,
}}
actionRef={actionRef} actionRef={actionRef}
toolBarRender={false} toolBarRender={false}
rowKey="id" rowKey="id"
@ -171,7 +176,6 @@ const QuestionSelector = (props: any, ref: any) => {
total: questions?.totalRow || 0, total: questions?.totalRow || 0,
}; };
}} }}
//dataSource={dataSource}
rowSelection={{ rowSelection={{
onChange: (_, selectedRows) => { onChange: (_, selectedRows) => {
setSelectedRows(selectedRows); setSelectedRows(selectedRows);
@ -179,25 +183,6 @@ const QuestionSelector = (props: any, ref: any) => {
}} }}
columns={columns} columns={columns}
// grid={{ gutter: 16, column: 1 }} // grid={{ gutter: 16, column: 1 }}
/*
metas={{
title: {
dataIndex: 'question_stem',
render: (text: React.ReactNode, record: T, index: number) => `1. ${text}`,
},
avatar: {
dataIndex: 'question_type',
valueType: 'text',
render: (text: React.ReactNode, record: T, _: number) => {
const _type = questionType?.filter((item, idx, self)=>{
return item?.code === record.question_type
});
return `[${_type[0]?.name}]`
},
},
description: {
},
}}*/
/> />
</> </>
); );

@ -447,7 +447,7 @@ export default () => {
<div style={{ background: '#ffffff', padding: 24 }}> <div style={{ background: '#ffffff', padding: 24 }}>
<Space direction="vertical" style={{ width: '100%' }}> <Space direction="vertical" style={{ width: '100%' }}>
<strong></strong> <strong></strong>
<Typography> {'0'} {'-'} </Typography> <Typography> {questions?.length} {'-'} </Typography>
<Divider style={{ margin: '6px 0', opacity: 0.5 }} /> <Divider style={{ margin: '6px 0', opacity: 0.5 }} />
<Space direction="vertical"> <Space direction="vertical">
{questionType.map((item) => { {questionType.map((item) => {
@ -509,6 +509,7 @@ export default () => {
const subjectInfo = await getSubjectInfo({ subject_id: result.bean.subject_id }) const subjectInfo = await getSubjectInfo({ subject_id: result.bean.subject_id })
console.log('subjectInfo', subjectInfo) console.log('subjectInfo', subjectInfo)
return { data: { ...result.bean, subject_name: subjectInfo.data.subject_name } }; return { data: { ...result.bean, subject_name: subjectInfo.data.subject_name } };
}} }}
extra={false} extra={false}
> >
@ -516,13 +517,12 @@ export default () => {
<ProDescriptions.Item dataIndex="rules_name" label="考试名称" valueType="text" /> <ProDescriptions.Item dataIndex="rules_name" label="考试名称" valueType="text" />
<ProDescriptions.Item dataIndex="subject_name" label="关联主题" valueType="text" /> <ProDescriptions.Item dataIndex="subject_name" label="关联主题" valueType="text" />
<ProDescriptions.Item dataIndex="examination_time" label="考试时长" valueType="text" renderText={(text) => (`${text} 分钟`)} /> <ProDescriptions.Item dataIndex="examination_time" label="考试时长" valueType="text" renderText={(text) => (`${text} 分钟`)} />
<ProDescriptions.Item dataIndex="grade" label="试卷信息" valueType="text" render={() => { <ProDescriptions.Item dataIndex="grade" label="试卷信息" valueType="text" render={() => {
{/** 需要从试卷 或 临时试卷 中读取 需要处理 */ } {/** 从试卷中读取 临时卷必须保存后才进入此页 */ }
return <Space direction="vertical"> return <Space direction="vertical">
<span> 0 , {paperInfo?.sum_score} </span> <span> {paperInfo?.question_type_count?.map(item=>item.count)?.reduce((prev, curr)=>prev + curr)} , {paperInfo?.sum_score || '-'} </span>
<span>: 0 : 0 : 0 </span> <span>{paperInfo?.question_type_count?.map(item=>(<span style={{paddingRight:10}}>{`${item?.type_name} ${item?.count} 道题 `}</span>))}</span>
<span>线 {paperInfo?.pass_score} </span> <span>线 {paperInfo?.pass_score || '-'} </span>
</Space> </Space>
}} /> }} />
</ProDescriptions> </ProDescriptions>
@ -569,7 +569,8 @@ export default () => {
//console.log('111') //console.log('111')
//const values = autoRef?.current?.getData() //const values = autoRef?.current?.getData()
//console.log('2222') //console.log('2222')
//const {code, data: paper, msg} = await autoPaper({rules_id: Number(params?.id), auto_param: JSON.stringify(values)}) const values = [{"question_type":0,"chapter_list": [{ "chapter_id":76, "count":1 },{ "chapter_id":77, "count":1 }]}]
const {code, data: paper, msg} = await autoPaper({rules_id: Number(params?.id), auto_param: JSON.stringify(values)})
//console.log('paper', paper) //console.log('paper', paper)
//setUuidPaper(paper?.paper_uuid) //setUuidPaper(paper?.paper_uuid)
// message.success('提交成功'); // message.success('提交成功');

@ -99,6 +99,7 @@ const QuestionBank = () => {
const type = history.location.pathname === '/questionbank/attestation' ? 1 : 0 ; // 题库类型 const type = history.location.pathname === '/questionbank/attestation' ? 1 : 0 ; // 题库类型
const actionRef = useRef<ActionType>(); const actionRef = useRef<ActionType>();
const formRef = useRef();
const [questionType, setQuestionType] = useState([]); const [questionType, setQuestionType] = useState([]);
@ -114,6 +115,7 @@ const QuestionBank = () => {
const [pageNumber, setPageNumber] = useState(1) const [pageNumber, setPageNumber] = useState(1)
//const [answertrueValues, setAnswertrueValues] = useState(); // 编辑试题答案项值 //const [answertrueValues, setAnswertrueValues] = useState(); // 编辑试题答案项值
//const [options, setOptions] = useState([]); // 设置当前选项, 用于删除选项时判断
/** 表单项定义 */ /** 表单项定义 */
const columns: ProColumns<TableListItem>[] = [ const columns: ProColumns<TableListItem>[] = [
@ -233,7 +235,7 @@ const QuestionBank = () => {
dependencies:['answers'], dependencies:['answers'],
renderFormItem: (item, { defaultRender, ...rest }, form) => { renderFormItem: (item, { defaultRender, ...rest }, form) => {
console.log('正确答案...', form.getFieldValue('answers')) console.log('正确答案...', form.getFieldValue('answers'))
// 需要处理 关联长度变化及编辑回显 // 关联长度变化及编辑回显
console.log('edit answertrue11', item) console.log('edit answertrue11', item)
console.log('form::::::',form.getFieldValue('answertrue')) console.log('form::::::',form.getFieldValue('answertrue'))
console.log('rest', rest) console.log('rest', rest)
@ -251,6 +253,7 @@ const QuestionBank = () => {
}else{ }else{
console.log('====0') console.log('====0')
} }
console.log('answers??',form.getFieldValue('answers')?.length) console.log('answers??',form.getFieldValue('answers')?.length)
console.log('addType?.value', addType?.value) console.log('addType?.value', addType?.value)
@ -488,7 +491,7 @@ const QuestionBank = () => {
title: '题干', title: '题干',
search: false, search: false,
dataIndex: 'question_stem', dataIndex: 'question_stem',
render: (text: React.ReactNode, record: T, index: number) => (<><Text code style={{width:80, fontSize:10, color:'bfbfbf',display:'none'}}>{record?.id}</Text> {text}</>), render: (text: React.ReactNode, record: T, index: number) => (<span style={{fontFamily:'auto'}}><Text code style={{width:80, fontSize:10, color:'bfbfbf',display:'none'}}>{record?.id}</Text> {text}</span>),
}, },
avatar: { avatar: {
title: '题型', title: '题型',
@ -729,14 +732,41 @@ const QuestionBank = () => {
footer={null} footer={null}
> >
<BetaSchemaForm<DataItem> <BetaSchemaForm<DataItem>
formRef={formRef}
layout="horizontal" layout="horizontal"
layoutType="Form" layoutType="Form"
labelCol={{ span: 8 }} labelCol={{ span: 8 }}
wrapperCol={{ span: 12 }} wrapperCol={{ span: 12 }}
onValuesChange={()=>{
//console.log('formRef', formRef.current.getFieldInstance('answertrue'))
//console.log('formRef.current', formRef.current.getFieldsValue(['answertrue']))
//console.log('v', value)
//console.log('answers', formRef?.current?.getFieldValue('answers'))
const answerTrue = formRef?.current?.getFieldValue('answertrue');
let fixed_answertrue;
// 如果正确答案为字符串(单选 / 判断)
if(typeof answerTrue === 'string'){
console.log('string.....')
fixed_answertrue = labels.indexOf(answerTrue) < (formRef?.current?.getFieldValue('answers')?.length || 0) ? answerTrue : undefined;
}else if(answerTrue?.length > 0){
fixed_answertrue = answerTrue?.filter((item, key)=>{
return labels.indexOf(item) < (formRef?.current?.getFieldValue('answers')?.length || 0)
})
}
console.log('answerTrue', answerTrue)
/*
const */
//console.log('fixed', fixed_answertrue)
formRef?.current?.setFieldsValue({answertrue: fixed_answertrue})
}}
onFinish={async (values: any) => { onFinish={async (values: any) => {
//console.log('formRef.current', formRef.current.getFieldsValue(['answertrue']))
// 表单处理 // 表单处理
console.log('columns:', columns); console.log('columns:', columns);
console.log('values:', values); console.log('values:', values);
return false
const opts = []; const opts = [];
values?.answers?.forEach((item, key)=>{ values?.answers?.forEach((item, key)=>{
// //

Loading…
Cancel
Save