发送题库

dev_chen
杨树林 5 years ago
parent 096d1acd77
commit be232f799d

@ -20,6 +20,7 @@ import Bottomsubmit from "../../modules/modals/Bottomsubmit";
import Seeoagertit from "./component/Seeoagertit"; import Seeoagertit from "./component/Seeoagertit";
import Paperlibraryseeid_item from './component/Paperlibraryseeid_item'; import Paperlibraryseeid_item from './component/Paperlibraryseeid_item';
import QuestionModal from "../question/component/QuestionModal"; import QuestionModal from "../question/component/QuestionModal";
import SendTopicsModel from "./component/SendTopicsModel";
//人工组卷预览 //人工组卷预览
class Paperlibraryseeid extends Component { class Paperlibraryseeid extends Component {
constructor(props) { constructor(props) {
@ -33,6 +34,8 @@ class Paperlibraryseeid extends Component {
titiless:"", titiless:"",
boolok:"知道了", boolok:"知道了",
exercise_id:0, exercise_id:0,
SendTop:false,
paramsid:null,
} }
@ -100,32 +103,18 @@ class Paperlibraryseeid extends Component {
// titilesm: "功能正在内测中,敬请期待", // titilesm: "功能正在内测中,敬请期待",
// titiless: "", // titiless: "",
// }) // })
let id = this.props.match.params.id; // let id = this.props.match.params.id;
let url=`/examination_banks/${id}/send_to_course.json`; // let url=`/examination_banks/${id}/send_to_course.json`;
var data={ // var data={
course_id:1309 // course_id:1309
}; // };
this.getwangluodata(url,data); // this.getwangluodata(url,data);
// 2413 // 2413
this.submitInfos(true);
} }
getwangluodata=(url,data)=>{
axios.post(url,data).then((response) => {
if (response) {
// console.log("组卷发送");
// console.log(response);
if(response.data){
if(response.data.status===0){
this.setState({
exercise_id:response.data.exercise_id
})
}
}
}
});
}
setitem_type = (item_type) => { setitem_type = (item_type) => {
@ -152,15 +141,24 @@ class Paperlibraryseeid extends Component {
}) })
} }
submitInfos=(bool)=>{
this.setState({
SendTop:bool,
paramsid:this.props.match.params.id
})
}
render() { render() {
let {paperlibrartdata,defaultActiveKey,titilesm,titiless,boolok,modalsType} = this.state; let {paperlibrartdata,defaultActiveKey,titilesm,titiless,boolok,modalsType,SendTop,paramsid} = this.state;
const params = this.props && this.props.match && this.props.match.params; const params = this.props && this.props.match && this.props.match.params;
// console.log("params"); // console.log("params");
// console.log(params); // console.log(params);
let urlsysl=`/paperlibrary?defaultActiveKey=${defaultActiveKey}`; let urlsysl=`/paperlibrary?defaultActiveKey=${defaultActiveKey}`;
return ( return (
<div> <div>
{SendTop===true?
<SendTopicsModel paramsid={paramsid} visible={SendTop} mypaper={true} {...this.state} {...this.props} submitInfos={(b)=>this.submitInfos(b)}></SendTopicsModel>:""
}
{ {
modalsType===true? modalsType===true?
<QuestionModal {...this.props}{...this.state} modalsType={modalsType} modalCancel={() => this.modalCancel()} <QuestionModal {...this.props}{...this.state} modalsType={modalsType} modalCancel={() => this.modalCancel()}

@ -18,6 +18,7 @@ import Contentquestionbank from "./Contentquestionbank";
import LoadingSpin from '../../../common/LoadingSpin'; import LoadingSpin from '../../../common/LoadingSpin';
import Listjihe from "./Listjihe"; import Listjihe from "./Listjihe";
import Certifiedprofessional from "../../modals/Certifiedprofessional"; import Certifiedprofessional from "../../modals/Certifiedprofessional";
import SendTopicsModel from "./SendTopicsModel";
const { TabPane } = Tabs; const { TabPane } = Tabs;
const Search = Input.Search; const Search = Input.Search;
class Contentpart extends Component { class Contentpart extends Component {
@ -29,7 +30,8 @@ class Contentpart extends Component {
mydisplay:false, mydisplay:false,
occupation:2, occupation:2,
isysladmins:false, isysladmins:false,
SendTop:false,
paramsid:null,
} }
} }
@ -205,13 +207,15 @@ class Contentpart extends Component {
} }
submitInfos=(bool,id)=>{
this.setState({
SendTop:bool,
paramsid:id
})
}
render() { render() {
let {page,defaultActiveKeyss,mydisplay}=this.state; let {page,defaultActiveKeyss,mydisplay,SendTop,paramsid}=this.state;
let {defaultActiveKey,defaultActiveKeybool}=this.props; let {defaultActiveKey,defaultActiveKeybool}=this.props;
let defaultActiveKeys=defaultActiveKey+''; let defaultActiveKeys=defaultActiveKey+'';
@ -277,7 +281,7 @@ class Contentpart extends Component {
:"" :""
} }
{ {
mydisplay===true? mydisplay===true||SendTop===true?
<style> <style>
{ {
` `
@ -291,6 +295,9 @@ class Contentpart extends Component {
:"" :""
} }
{SendTop===true?
<SendTopicsModel paramsid={paramsid} visible={SendTop} mypaper={false} {...this.state} {...this.props} submitInfos={(b,id)=>this.submitInfos(b,id)}></SendTopicsModel>:""
}
<div className="w1200ms contentparttit" style={{ <div className="w1200ms contentparttit" style={{
position: "relative", position: "relative",
}}> }}>
@ -437,6 +444,7 @@ class Contentpart extends Component {
showmodelysl={(e)=>this.showmodelysl(e)} showmodelysl={(e)=>this.showmodelysl(e)}
Isitapopup={this.props.Isitapopup} Isitapopup={this.props.Isitapopup}
showmodelsInaudit={(e)=>this.props.showmodelsInaudit(e)} showmodelsInaudit={(e)=>this.props.showmodelsInaudit(e)}
submitInfos={(b,id)=>this.submitInfos(b,id)}
> >
</Listjihe> </Listjihe>

@ -182,7 +182,7 @@ class Listjihe extends Component {
{ {
defaultActiveKey===0||defaultActiveKey==="0"? defaultActiveKey===0||defaultActiveKey==="0"?
<div className="w50s xaxisreverseorder"> <div className="w50s xaxisreverseorder">
<p className="selection xiaoshou"> <p className="selection xiaoshou" onClick={()=>this.props.submitInfos(true,items.id)}>
<span className=" lh30">发送至课堂</span> <span className=" lh30">发送至课堂</span>
</p> </p>
<p className="viewparsings xiaoshou mr25 " onClick={()=>this.props.showmodelysl(items.id)}> <p className="viewparsings xiaoshou mr25 " onClick={()=>this.props.showmodelysl(items.id)}>
@ -222,7 +222,7 @@ class Listjihe extends Component {
</div> </div>
:Periofters===true? :Periofters===true?
<div className="w50s xaxisreverseorder"> <div className="w50s xaxisreverseorder">
<p className="selection xiaoshou"> <p className="selection xiaoshou" onClick={()=>this.props.submitInfos(true,items.id)}>
<span className=" lh30">发送至课堂</span> <span className=" lh30">发送至课堂</span>
</p> </p>
<p className="viewparsings xiaoshou mr25 " onClick={()=>this.props.showmodelysl(items.id)}> <p className="viewparsings xiaoshou mr25 " onClick={()=>this.props.showmodelysl(items.id)}>
@ -243,7 +243,7 @@ class Listjihe extends Component {
</div> </div>
:Perioftersbols===true? :Perioftersbols===true?
<div className="w50s xaxisreverseorder"> <div className="w50s xaxisreverseorder">
<p className="selection xiaoshou"> <p className="selection xiaoshou" onClick={()=>this.props.submitInfos(true,items.id)}>
<span className=" lh30">发送至课堂</span> <span className=" lh30">发送至课堂</span>
</p> </p>
{ {

@ -0,0 +1,192 @@
import React, {Component} from "react";
import {Modal, Radio, Input, Tooltip, Checkbox, Select, Row, Col, Spin} from "antd";
import axios from 'axios';
const {Search} = Input;
class SendTopicsModel extends Component {
constructor(props) {
super(props);
this.state = {
courses: [],
search: null,
Radiolist: undefined,
showcheck: false,
smallisSpin: false,
yslbanksMenu: undefined,
exercise_id: null,
}
}
componentDidMount() {
// console.log("SendTopicssssssssssss");
// console.log(this.props);
let {search} = this.state;
this.onupdatalist(search)
this.setState({
yslbanksMenu: this.props.banksMenu,
})
}
//获取的课堂
onupdatalist = (search) => {
let url = "/question_banks/my_courses.json";
axios.get(url, {
params: {
search
}
}).then((result) => {
this.setState({
courses: result.data.courses
})
}).catch((error) => {
console.log(error);
})
}
onSearchChange = (e) => {
this.setState({
search: e.target.value
})
// this.onupdatalist(e.target.value)
}
onSearch = (search) => {
this.onupdatalist(search)
}
onChange = (e) => {
console.log("SendTopics");
console.log(e);
this.setState({
Radiolist: e.target.value
})
}
submitInfo = () => {
if(this.state.Radiolist===undefined) {
this.setState({
showcheck: true,
smallisSpin: false
})
}
let url = `/examination_banks/${this.props.paramsid}/send_to_course.json`;
var data = {
course_id: this.state.Radiolist
};
this.getwangluodata(url, data);
}
getwangluodata = (url, data) => {
this.setState({
smallisSpin: true
})
axios.post(url, data).then((response) => {
if (response) {
if (response.data) {
if (response.data.status === 0) {
this.setState({
exercise_id: response.data.exercise_id
})
this.props.submitInfos(false, null);
if (this.props.mypaper) {
this.props.history.push("/paperlibrary?defaultActiveKey=0");
}
}
}
}
this.setState({
smallisSpin: false
})
}).catch((error) => {
console.log(error)
this.setState({
smallisSpin: false
})
});
}
render() {
let {courses, Radiolist, showcheck, smallisSpin} = this.state;
const radioStyle = {
display: 'block',
height: '30px',
lineHeight: '30px',
};
return (
<div>
<style>
{
`
.ant-modal-body{
padding:20px 40px;
}
.onSearchtopics input{
height:40px;
}
.over221{
height:221px;
overflow-y: auto;
}
`
}
</style>
<Modal
keyboard={false}
title="发送至课堂"
visible={this.props.visible}
closable={false}
footer={null}
destroyOnClose={true}
width={600}
>
<div className="newupload_conbox">
<div className="mb15 font-14 edu-txt-center color-orange-tip">
温馨提示选择的试卷将会发送到指定课堂
</div>
<div className="mb5"
// onMouseLeave={this.closeList}
>
<Search
className="mb14 onSearchtopics"
placeholder="请输入课堂名称进行搜索"
onChange={this.onSearchChange}
onSearch={this.onSearch}
></Search>
</div>
<div className="edu-back-skyblue pl15 pr15 clearfix over221 pt5">
<Radio.Group onChange={this.onChange} value={Radiolist}>
{
courses && courses.map((item, key) => {
return (
<div className="mt5" key={key}>
<Radio style={radioStyle} value={item.course_id} key={item.course_id}>
{item.course_name}
</Radio>
</div>
)
})
}
</Radio.Group>
</div>
{showcheck === true ? <div className={"color-red mt10"}>请先选择课堂</div> : ""}
<div className="mt20 clearfix edu-txt-center">
<a onClick={() => this.props.submitInfos(false, null)} className="pop_close task-btn mr30 ">取消</a>
<a className="task-btn task-btn-orange" onClick={() => this.submitInfo()}>确定</a>
</div>
</div>
</Modal>
</div>
)
}
}
export default SendTopicsModel;
Loading…
Cancel
Save