Merge branches 'dev_aliyun' and 'master' of https://bdgit.educoder.net/Hjqreturn/educoder into dev_aliyun

dev_forum
杨树明 5 years ago
commit 4494fa318b

@ -13,10 +13,11 @@ import '@icedesign/base/dist/ICEDesignBase.css';
import '@icedesign/base/index.scss'; import '@icedesign/base/index.scss';
import LoginDialog from './modules/login/LoginDialog' import LoginDialog from './modules/login/LoginDialog';
import Notcompletedysl from './modules/user/Notcompletedysl' import Notcompletedysl from './modules/user/Notcompletedysl';
import Trialapplicationysl from './modules/login/Trialapplicationysl' import Trialapplicationysl from './modules/login/Trialapplicationysl';
import Trialapplicationreview from './modules/user/Trialapplicationreview' import Trialapplicationreview from './modules/user/Trialapplicationreview';
import Addcourses from "./modules/courses/coursesPublic/Addcourses";
import Trialapplication from './modules/login/Trialapplication' import Trialapplication from './modules/login/Trialapplication'
import NotFoundPage from './NotFoundPage' import NotFoundPage from './NotFoundPage'
@ -41,6 +42,7 @@ import {initAxiosInterceptors} from './AppConfig'
// tpi需要这个来加载css // tpi需要这个来加载css
import {TPMIndexHOC} from './modules/tpm/TPMIndexHOC'; import {TPMIndexHOC} from './modules/tpm/TPMIndexHOC';
const theme = createMuiTheme({ const theme = createMuiTheme({
palette: { palette: {
primary: { primary: {
@ -259,7 +261,7 @@ class App extends Component {
render() { render() {
// let {isRenders} = this.state;
return ( return (
<LocaleProvider locale={zhCN}> <LocaleProvider locale={zhCN}>
@ -270,6 +272,7 @@ class App extends Component {
<Notcompletedysl {...this.props} {...this.state}></Notcompletedysl> <Notcompletedysl {...this.props} {...this.state}></Notcompletedysl>
<Trialapplicationysl {...this.props} {...this.state}></Trialapplicationysl> <Trialapplicationysl {...this.props} {...this.state}></Trialapplicationysl>
<Trialapplicationreview {...this.props} {...this.state}></Trialapplicationreview> <Trialapplicationreview {...this.props} {...this.state}></Trialapplicationreview>
<Addcourses {...this.props} {...this.state}/>
{/*{*/} {/*{*/}
{/* isRender === true?*/} {/* isRender === true?*/}
{/* <LoginDialog></LoginDialog> : ""*/} {/* <LoginDialog></LoginDialog> : ""*/}

@ -18,9 +18,10 @@ function locationurl(list){
} }
// TODO 开发期多个身份切换 // TODO 开发期多个身份切换
const debugType =window.location.search.indexOf('debug=t') != -1 ? 'teacher' : const debugType =""
window.location.search.indexOf('debug=s') != -1 ? 'student' : 'admin' // window.location.search.indexOf('debug=t') != -1 ? 'teacher' :
window._debugType = debugType; // window.location.search.indexOf('debug=s') != -1 ? 'student' : 'admin'
// window._debugType = debugType;
export function initAxiosInterceptors(props) { export function initAxiosInterceptors(props) {
// TODO 避免重复的请求 https://github.com/axios/axios#cancellation // TODO 避免重复的请求 https://github.com/axios/axios#cancellation

@ -28,6 +28,20 @@ class Addcourses extends Component{
} }
componentDidMount() { componentDidMount() {
axios.interceptors.response.use((response) => {
if (response != undefined)
if (response && response.data.status === 409) {
this.setState({
Addcoursestypes: true
})
}
return response;
}, (error) => {
//TODO 这里如果样式变了会出现css不加载的情况
});
let {Addcoursestype}=this.props; let {Addcoursestype}=this.props;
this.setState({ this.setState({
@ -102,7 +116,7 @@ class Addcourses extends Component{
hidetojoinclass=()=>{ hidetojoinclass=()=>{
this.props.hideAddcoursestype();
// console.log(this.props) // console.log(this.props)
this.setState({ this.setState({
invite_code:undefined, invite_code:undefined,
@ -114,9 +128,10 @@ class Addcourses extends Component{
Checkboxteachingtype:false, Checkboxteachingtype:false,
professor:null, professor:null,
assistant_professor:null, assistant_professor:null,
student:null student:null,
Addcoursestypes:false
}) })
this.props.hideAddcoursestype();
} }
submitasyn=(course_id)=>{ submitasyn=(course_id)=>{
@ -285,7 +300,8 @@ class Addcourses extends Component{
loadtype, loadtype,
modalsType, modalsType,
modalsTopval, modalsTopval,
modalSave modalSave,
Addcoursestypes
}=this.state; }=this.state;
const antIcon = <Icon type="loading" style={{ fontSize: 24 }} spin />; const antIcon = <Icon type="loading" style={{ fontSize: 24 }} spin />;
return( return(
@ -301,7 +317,7 @@ class Addcourses extends Component{
keyboard={false} keyboard={false}
className={"HomeworkModal"} className={"HomeworkModal"}
title="加入课堂" title="加入课堂"
visible={Addcoursestype} visible={Addcoursestype===undefined?Addcoursestypes:Addcoursestype}
closable={false} closable={false}
footer={null} footer={null}
destroyOnClose={true} destroyOnClose={true}
@ -314,7 +330,7 @@ class Addcourses extends Component{
<label className="panel-form-label fl">课堂邀请码</label> <label className="panel-form-label fl">课堂邀请码</label>
<Input type="text" className="input-60-40 fl mt5" name="invite_code" <Input type="text" className="input-60-40 fl mt5" name="invite_code"
placeholder="请输入5位课堂邀请码或6位分班邀请码" placeholder="请输入5位课堂邀请码或6位分班邀请码"
style={{ height: '30px'}} style={{width:'275px'}}
value={invite_code} onInput={this.inputjoinclassvalue}/> value={invite_code} onInput={this.inputjoinclassvalue}/>
</li> </li>

@ -91,7 +91,7 @@ class PathModal extends Component{
this.setState({ this.setState({
type:types, type:types,
page:1, page:1,
newshixunmodallist:undefined newshixunmodallist:[]
}) })
this.funshixunpathlist(Searchvalue,types,true,1) this.funshixunpathlist(Searchvalue,types,true,1)
} }
@ -103,10 +103,11 @@ class PathModal extends Component{
}) })
} }
SenttotheSearch=(value)=>{ SenttotheSearch=(value)=>{
this.setState({
page:1,
newshixunmodallist:[]
})
let{type}=this.state; let{type}=this.state;
this.setState({
page:1,
})
this.funshixunpathlist(value,type,true,1) this.funshixunpathlist(value,type,true,1)
} }
@ -269,7 +270,7 @@ class PathModal extends Component{
`} `}
</style> </style>
<div className="over210 pl20 pr20" { newshixunmodallist&&newshixunmodallist.length===0?"":<div className="over210 pl20 pr20"
onScroll={this.contentViewScrolledit} onScroll={this.contentViewScrolledit}
style={{"Height":"204px"}}> style={{"Height":"204px"}}>
<Checkbox.Group style={{ width: '100%' }} onChange={this.shixunhomeworkedit}> <Checkbox.Group style={{ width: '100%' }} onChange={this.shixunhomeworkedit}>
@ -298,7 +299,7 @@ class PathModal extends Component{
}) })
} }
</Checkbox.Group> </Checkbox.Group>
</div> </div>}
{ this.state.patheditarrytype===true?<span className={"color-red"}>{this.state.patheditarryvalue}</span>:""} { this.state.patheditarrytype===true?<span className={"color-red"}>{this.state.patheditarryvalue}</span>:""}
<div className="mt20 marginauto clearfix edu-txt-center"> <div className="mt20 marginauto clearfix edu-txt-center">
<a className="pop_close task-btn mr30 margin-tp26" onClick={this.hidecouseShixunModal}>取消</a> <a className="pop_close task-btn mr30 margin-tp26" onClick={this.hidecouseShixunModal}>取消</a>

@ -290,11 +290,13 @@ class CoursesNew extends Component {
search:value search:value
}).then((result)=>{ }).then((result)=>{
// console.log(result.data) // console.log(result.data)
this.setState({ if (result.data.message===undefined) {
searchlist:result.data.course_lists, this.setState({
// course:value, searchlist: result.data.course_lists,
fetching:false // course:value,
}) fetching: false
})
}
// this.props.form.setFieldsValue({ // this.props.form.setFieldsValue({
// course:value // course:value
// }) // })
@ -343,13 +345,15 @@ class CoursesNew extends Component {
search: value search: value
} }
}).then((result)=>{ }).then((result)=>{
this.setState({ if (result.data.message===undefined) {
searchlistscholl:result.data.school_names, this.setState({
scholl:value searchlistscholl: result.data.school_names,
}) scholl: value
this.props.form.setFieldsValue({ })
scholl:value this.props.form.setFieldsValue({
}) scholl: value
})
}
}).catch((error)=>{ }).catch((error)=>{
console.log(error) console.log(error)
}) })

@ -392,11 +392,12 @@ class LoginDialog extends Component {
} }
return ( return (
<Dialog open={true} id="DialogID" <Dialog open={true} id="DialogID"
style={{ display: isRender==false? 'none' : ''}} style={{ display: isRender==false? 'none' : ''}}
disableEscapeKeyDown={true} disableEscapeKeyDown={true}
onClose={() => this.handleDialogClose()} onClose={() => this.handleDialogClose()}
> >
{isRender===true?
<div className={dialogBox}> <div className={dialogBox}>
<div id="closeIcon" onClick={()=>{this.handleDialogClose()}}> <div id="closeIcon" onClick={()=>{this.handleDialogClose()}}>
<i className="iconfont icon-shanchudiao"></i> <i className="iconfont icon-shanchudiao"></i>
@ -489,7 +490,7 @@ class LoginDialog extends Component {
</div> </div>
</div> </div>
:""}
</Dialog> </Dialog>
); );

@ -59,7 +59,8 @@ class DetailCardsEditAndAdd extends Component{
AddShixunBox = () =>{ AddShixunBox = () =>{
this.setState({ this.setState({
selectShixun:true, selectShixun:true,
patheditarry:[] patheditarry:[],
page:1
}) })
this.changeTag(0,""); this.changeTag(0,"");
} }
@ -68,6 +69,7 @@ class DetailCardsEditAndAdd extends Component{
cloasShixunBox =()=>{ cloasShixunBox =()=>{
this.setState({ this.setState({
selectShixun:false, selectShixun:false,
page:1,
patheditarry:[] patheditarry:[]
}) })
} }
@ -103,7 +105,8 @@ class DetailCardsEditAndAdd extends Component{
shixuns_listedit:newshixuns_listedit, shixuns_listedit:newshixuns_listedit,
shixuns_listeditlist:list, shixuns_listeditlist:list,
patheditarry:[], patheditarry:[],
selectShixun:false selectShixun:false,
page:1,
}) })
}).catch((error) => { }).catch((error) => {
console.log(error) console.log(error)
@ -139,18 +142,23 @@ class DetailCardsEditAndAdd extends Component{
//打开选择实训弹框初始化tag标签和列表 //打开选择实训弹框初始化tag标签和列表
changeTag=(id,search)=>{ changeTag=(id,search)=>{
this.setState({
hometypepvisible:true this.setState({
}) ChooseShixunListshixun_list:[],
let pathId=this.props.pathid; page:1,
let {page}=this.state; hometypepvisible:true,
let url='/paths/'+pathId+'/choose_subject_shixun.json?page='+page })
let pathId=this.props.pathid;
let url='/paths/'+pathId+'/choose_subject_shixun.json?page='+1
if(search!="" && search!=undefined){ if(search!="" && search!=undefined){
url+="&search="+search; url+="&search="+search;
} }
if(id!=0){ if(id!=0){
url+="&type="+id; url+="&type="+id;
} }
axios.get(url).then((result)=>{ axios.get(url).then((result)=>{
if(result.status===200){ if(result.status===200){
this.setState({ this.setState({
@ -287,43 +295,45 @@ class DetailCardsEditAndAdd extends Component{
contentViewScrolladd=(e)=>{ contentViewScrolladd=(e)=>{
//滑动到底判断 //滑动到底判断
if(e.currentTarget.scrollHeight-e.currentTarget.scrollTop===e.currentTarget.clientHeight){ if(e.currentTarget.scrollHeight-e.currentTarget.scrollTop===e.currentTarget.clientHeight){
// console.log("到达底部"); // console.log("到达底部");
this.setState({ debugger
hometypepvisible:true this.setState({
}) hometypepvisible:true
let pathId=this.props.pathid; })
let {search,page,type,ChooseShixunListshixun_list}=this.state; let pathId=this.props.pathid;
let newpage=page+1; let {search,page,type,ChooseShixunListshixun_list}=this.state;
let newChooseShixunListshixun_list=ChooseShixunListshixun_list; let newpage=page+1;
let url='/paths/'+pathId+'/choose_subject_shixun.json?page='+newpage let newChooseShixunListshixun_list=ChooseShixunListshixun_list;
if(search!="" && search!=undefined){ let url='/paths/'+pathId+'/choose_subject_shixun.json?page='+newpage
url+="&search="+search; if(search!="" && search!=undefined){
} url+="&search="+search;
if(type!=0){ }
url+="&type="+type; if(type!=0){
} url+="&type="+type;
axios.get(url).then((result)=>{ }
if(result.status===200){ axios.get(url).then((result)=>{
let list =result.data.shixun_list; if(result.status===200){
let list =result.data.shixun_list;
for(var i=0; i<list.length; i++){
newChooseShixunListshixun_list.push(list[i]) for(var i=0; i<list.length; i++){
} newChooseShixunListshixun_list.push(list[i])
this.setState({ }
ChooseShixunList:result.data, this.setState({
hometypepvisible:false, ChooseShixunList:result.data,
type:type, hometypepvisible:false,
search:search, type:type,
page:newpage, search:search,
ChooseShixunListshixun_list:newChooseShixunListshixun_list page:newpage,
}) ChooseShixunListshixun_list:newChooseShixunListshixun_list
} })
}).catch((error)=>{ }
console.log(error); }).catch((error)=>{
}) console.log(error);
})
} }
} }
@ -481,7 +491,7 @@ class DetailCardsEditAndAdd extends Component{
` `
} }
</style> </style>
<div className="over180 pl20 pr20" {ChooseShixunListshixun_list && ChooseShixunListshixun_list.length===0?"": <div className="over180 pl20 pr20"
onScroll={this.contentViewScrolladd} onScroll={this.contentViewScrolladd}
> >
<Checkbox.Group style={{ width: '100%' }} onChange={this.shixunhomeworkedit}> <Checkbox.Group style={{ width: '100%' }} onChange={this.shixunhomeworkedit}>
@ -508,7 +518,7 @@ class DetailCardsEditAndAdd extends Component{
}) })
} }
</Checkbox.Group> </Checkbox.Group>
</div> </div>}
<div className="mt20 marginauto clearfix edu-txt-center"> <div className="mt20 marginauto clearfix edu-txt-center">
<a className="pop_close task-btn mr30 margin-tp26" onClick={this.cloasShixunBox}>取消</a> <a className="pop_close task-btn mr30 margin-tp26" onClick={this.cloasShixunBox}>取消</a>
<a className="task-btn task-btn-orange margin-tp26" id="submit_send_shixun" onClick={this.clickShixunchoose}>确定</a> <a className="task-btn task-btn-orange margin-tp26" id="submit_send_shixun" onClick={this.clickShixunchoose}>确定</a>

@ -534,12 +534,12 @@ submittojoinclass=(value)=>{
<div className="newHeader" id="nHeader" > <div className="newHeader" id="nHeader" >
{/*<LoginDialog*/} {isRender===true?<LoginDialog
{/*{...this.state}*/} {...this.state}
{/*{...this.props}*/} {...this.props}
{/*/>*/} />:""}
<div className="educontent clearfix"> <div className="educontent clearfix">
{/*<%= link_to image_tag("/images/educoder/logo.png", alt:"高校智能化教学与实训平台", className:"logoimg"), home_path %>*/} {/*<%= link_to image_tag("/images/educoder/logo.png", alt:"高校智能化教学与实训平台", className:"logoimg"), home_path %>*/}
<a href="/"> <a href="/">
<img alt="高校智能化教学与实训平台" className="logoimg" src={getImageUrl("images/educoder/headNavLogo.png?1526520218")}></img> <img alt="高校智能化教学与实训平台" className="logoimg" src={getImageUrl("images/educoder/headNavLogo.png?1526520218")}></img>
@ -737,14 +737,14 @@ submittojoinclass=(value)=>{
<ul> <ul>
<li className="clearfix mb10"> <li className="clearfix mb10">
<label className="panel-form-label fl">项目邀请码</label> <label className="panel-form-label fl">项目邀请码</label>
<Input type="text" className="input-60-40 fl" name="invite_code" <Input type="text" className="input-60-40 fl mt5" name="invite_code"
style={{width: '275px'}} style={{width: '275px'}}
placeholder="请输入5位课堂邀请码或6位分班邀请码" value={tojoinclasstitle} onInput={this.inputjoinclassvalue}/> placeholder="请输入5位项目邀请码或6位分班邀请码" value={tojoinclasstitle} onInput={this.inputjoinclassvalue}/>
</li> </li>
<p id="none_invite_code_notice" <p id="none_invite_code_notice"
className="color-orange none f12" className="color-orange none f12"
style={{marginLeft: '90px',display:code_notice===true?'block':"none"}}>请输入5位课堂邀请码或6位分班邀请码</p> style={{marginLeft: '90px',display:code_notice===true?'block':"none"}}>请输入5位项目邀请码或6位分班邀请码</p>
<li className="clearfix "> <li className="clearfix ">

@ -392,10 +392,12 @@ export default class TPMsettings extends Component {
let departmentsUrl = `/shixuns/departments.json`; let departmentsUrl = `/shixuns/departments.json`;
axios.get(departmentsUrl).then((response) => { axios.get(departmentsUrl).then((response) => {
if (response.status === 200) { if (response.status === 200) {
this.setState({ if (response.data.message === undefined) {
departmentslist: response.data.shools_name this.setState({
}); departmentslist: response.data.shools_name
} });
}
}
}).catch((error) => { }).catch((error) => {
console.log(error) console.log(error)
}); });

@ -251,9 +251,11 @@ class Newshixuns extends Component {
let departmentsUrl = `/shixuns/departments.json`; let departmentsUrl = `/shixuns/departments.json`;
axios.get(departmentsUrl).then((response) => { axios.get(departmentsUrl).then((response) => {
if (response.status === 200) { if (response.status === 200) {
this.setState({ if (response.data.message===undefined) {
departmentslist: response.data.shools_name this.setState({
}); departmentslist: response.data.shools_name
});
}
} }
}).catch((error) => { }).catch((error) => {
console.log(error) console.log(error)
@ -496,7 +498,9 @@ class Newshixuns extends Component {
function fake() { function fake() {
let departmentsUrl = `/shixuns/departments.json?q=` + currentValue; let departmentsUrl = `/shixuns/departments.json?q=` + currentValue;
axios.get(departmentsUrl).then((response) => { axios.get(departmentsUrl).then((response) => {
callback(response.data.shools_name); if (response.data.message===undefined) {
callback(response.data.shools_name);
}
}).catch((error) => { }).catch((error) => {
console.log(error) console.log(error)
}); });

@ -273,7 +273,7 @@ class InterestpageMax extends Component {
{gouxuans4&&gouxuans4.map((item,key)=>{ {gouxuans4&&gouxuans4.map((item,key)=>{
return( return(
<div className={item.id<5?"ysldivhomediv12":"ysldivhomediv22"} onClick={()=>this.Clickteacher2(item.id)}> <div className={item.id<5?"ysldivhomediv12":"ysldivhomediv22"} onClick={()=>this.Clickteacher2(item.id)}>
{item.bool===true?<img src={gouxuan} className="yslgouxuanimg2"/>:<div className="yslgouxuanimg22"></div>} {item.bool===true?<img src={gouxuan} className="yslgouxuanimg22x"/>:<div className="yslgouxuanimg22x"></div>}
<img className="div1img2" src={item.url}/> <img className="div1img2" src={item.url}/>
<span className="textall2">{item.name}</span> <span className="textall2">{item.name}</span>
</div> </div>

@ -168,14 +168,21 @@
margin-left: 26px; margin-left: 26px;
} }
.yslgouxuanimg22{ .div1img2xx{
width: 20px;
margin-left: 26px;
}
.yslgouxuanimg22x{
width: 20px; width: 20px;
height: 20px; height: 20px;
margin-left: 75px; margin-left: 75px;
} }
.yslgouxuanimg2{ .yslgouxuanimg2x{
height: 20px; height: 20px;
width: 20px;
margin-left: 75px;
} }
.yslbutondls{ .yslbutondls{

Loading…
Cancel
Save