|
|
@ -4,7 +4,9 @@ import { Tooltip,Modal,Icon,Spin,message} from 'antd';
|
|
|
|
import '../../paths/ShixunPaths.css';
|
|
|
|
import '../../paths/ShixunPaths.css';
|
|
|
|
import axios from 'axios';
|
|
|
|
import axios from 'axios';
|
|
|
|
import { BrowserRouter as Router, Route, Link } from "react-router-dom";
|
|
|
|
import { BrowserRouter as Router, Route, Link } from "react-router-dom";
|
|
|
|
|
|
|
|
import DetailCardsEditAndEdit from '../../paths/PathDetail/DetailCardsEditAndEdit';
|
|
|
|
|
|
|
|
import DetailCardsEditAndAdd from "../../paths/PathDetail/DetailCardsEditAndAdd";
|
|
|
|
|
|
|
|
import Modals from "../../modals/Modals";
|
|
|
|
class YslDetailCards extends Component{
|
|
|
|
class YslDetailCards extends Component{
|
|
|
|
constructor(props){
|
|
|
|
constructor(props){
|
|
|
|
super(props)
|
|
|
|
super(props)
|
|
|
@ -17,7 +19,22 @@ class YslDetailCards extends Component{
|
|
|
|
shixunsmessage:"",
|
|
|
|
shixunsmessage:"",
|
|
|
|
startshixunCombattype:false,
|
|
|
|
startshixunCombattype:false,
|
|
|
|
isSpin:false,
|
|
|
|
isSpin:false,
|
|
|
|
|
|
|
|
idsum:undefined,
|
|
|
|
|
|
|
|
pathCardsedittype:false,
|
|
|
|
|
|
|
|
pathid:undefined,
|
|
|
|
|
|
|
|
editbuttomtypeadd:false,
|
|
|
|
|
|
|
|
pathlistedit:undefined,
|
|
|
|
|
|
|
|
delecttype:false,
|
|
|
|
|
|
|
|
Modalstype:false,
|
|
|
|
|
|
|
|
Modalstopval:'',
|
|
|
|
|
|
|
|
Modalsbottomval:'',
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
//idsum 是否点击这个
|
|
|
|
|
|
|
|
//pathCardsedittype 是否是在编辑模式
|
|
|
|
|
|
|
|
//editbuttomtypeadd 是否已经是编辑模式
|
|
|
|
|
|
|
|
//pathid课堂id
|
|
|
|
|
|
|
|
//pathlistedit 编辑返回的数据
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
showparagraph =(key,index)=>{
|
|
|
|
showparagraph =(key,index)=>{
|
|
|
@ -90,6 +107,10 @@ class YslDetailCards extends Component{
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
componentDidMount(){
|
|
|
|
componentDidMount(){
|
|
|
|
|
|
|
|
let pathid=this.props.match.params.coursesId;
|
|
|
|
|
|
|
|
this.setState({
|
|
|
|
|
|
|
|
pathid:pathid
|
|
|
|
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -125,13 +146,93 @@ class YslDetailCards extends Component{
|
|
|
|
this.setState({
|
|
|
|
this.setState({
|
|
|
|
startshixunCombattype:false
|
|
|
|
startshixunCombattype:false
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
// 关卡的上移下移操作
|
|
|
|
|
|
|
|
operations = (url) => {
|
|
|
|
|
|
|
|
let newurl = url+".json"
|
|
|
|
|
|
|
|
axios.get(newurl).then((response) => {
|
|
|
|
|
|
|
|
if(response.data.status===1){
|
|
|
|
|
|
|
|
this.props.getPathCardsList();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}).catch((error) => {
|
|
|
|
|
|
|
|
console.log(error);
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
//取消的
|
|
|
|
|
|
|
|
updatapathCardsedit=()=>{
|
|
|
|
|
|
|
|
this.setState({
|
|
|
|
|
|
|
|
idsum:undefined,
|
|
|
|
|
|
|
|
pathCardsedittype:false,
|
|
|
|
|
|
|
|
editbuttomtype:false,
|
|
|
|
|
|
|
|
editbuttomtypeadd:false
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
this.props.getPathCardsList();
|
|
|
|
|
|
|
|
// this.props.updatadetailInfoLists();
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
//确认的
|
|
|
|
|
|
|
|
editeditbuttomtypecanle=()=>{
|
|
|
|
|
|
|
|
this.setState({
|
|
|
|
|
|
|
|
editbuttomtype:true,
|
|
|
|
|
|
|
|
editbuttomtypeadd:false
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
//编辑用
|
|
|
|
|
|
|
|
pathCardsedit=(key,pathid)=>{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
let url=`/stages/`+pathid+`/edit.json`;
|
|
|
|
|
|
|
|
axios.get(url).then((result)=>{
|
|
|
|
|
|
|
|
if(result.status===200){
|
|
|
|
|
|
|
|
this.setState({
|
|
|
|
|
|
|
|
idsum:key,
|
|
|
|
|
|
|
|
pathCardsedittype:true,
|
|
|
|
|
|
|
|
pathlistedit:result.data,
|
|
|
|
|
|
|
|
editbuttomtype:true,
|
|
|
|
|
|
|
|
editbuttomtypeadd:true
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}).catch((error)=>{
|
|
|
|
|
|
|
|
console.log(error);
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
//删除用的
|
|
|
|
|
|
|
|
delectpathCardsedit=(id)=>{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.setState({
|
|
|
|
|
|
|
|
Modalstype:true,
|
|
|
|
|
|
|
|
Modalstopval:'是否删除该章节?',
|
|
|
|
|
|
|
|
Modalsbottomval:'',
|
|
|
|
|
|
|
|
editdelectid:id,
|
|
|
|
|
|
|
|
delecttype:true,
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
cardsModalcancel=()=>{
|
|
|
|
|
|
|
|
this.setState({
|
|
|
|
|
|
|
|
Modalstype:false,
|
|
|
|
|
|
|
|
Modalstopval:'',
|
|
|
|
|
|
|
|
Modalsbottomval:'',
|
|
|
|
|
|
|
|
editdelectid:undefined
|
|
|
|
|
|
|
|
})
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
cardsModalsave=()=>{
|
|
|
|
|
|
|
|
this.setState({
|
|
|
|
|
|
|
|
Modalstype:false,
|
|
|
|
|
|
|
|
Modalstopval:'',
|
|
|
|
|
|
|
|
Modalsbottomval:'',
|
|
|
|
|
|
|
|
editdelectid:undefined
|
|
|
|
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
render(){
|
|
|
|
render(){
|
|
|
|
let{showparagraph,showparagraphkey,showparagraphindex,hidestartshixunsreplacevalue} =this.state;
|
|
|
|
let{showparagraph,showparagraphkey,showparagraphindex,hidestartshixunsreplacevalue,idsum,pathCardsedittype,pathid,Modalstype,Modalstopval,Modalsbottomval,delecttype,pathlistedit} =this.state;
|
|
|
|
let { stages }=this.props;
|
|
|
|
let { stages }=this.props;
|
|
|
|
const antIcon = <Icon type="loading" style={{ fontSize: 24 }} spin />;
|
|
|
|
const antIcon = <Icon type="loading" style={{ fontSize: 24 }} spin />;
|
|
|
|
return(
|
|
|
|
return(
|
|
|
|
|
|
|
|
<div>
|
|
|
|
<div className="lesson-saved-list">
|
|
|
|
<div className="lesson-saved-list">
|
|
|
|
<Modal
|
|
|
|
<Modal
|
|
|
|
keyboard={false}
|
|
|
|
keyboard={false}
|
|
|
@ -171,6 +272,15 @@ class YslDetailCards extends Component{
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</Spin>
|
|
|
|
</Spin>
|
|
|
|
</Modal>
|
|
|
|
</Modal>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<Modals
|
|
|
|
|
|
|
|
modalsType={Modalstype}
|
|
|
|
|
|
|
|
modalsTopval={Modalstopval}
|
|
|
|
|
|
|
|
modalsBottomval={Modalsbottomval}
|
|
|
|
|
|
|
|
modalCancel={this.cardsModalcancel}
|
|
|
|
|
|
|
|
modalSave={delecttype===true?this.delectpathCardseditfun:this.cardsModalsave}
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
|
|
</Modals>
|
|
|
|
<style>{
|
|
|
|
<style>{
|
|
|
|
`
|
|
|
|
`
|
|
|
|
.lesson-saved-list-item {
|
|
|
|
.lesson-saved-list-item {
|
|
|
@ -191,8 +301,54 @@ class YslDetailCards extends Component{
|
|
|
|
<img src={getImageUrl("images/educoder/icon/charpter-white.svg")} className="fl ml3 mt3"/>
|
|
|
|
<img src={getImageUrl("images/educoder/icon/charpter-white.svg")} className="fl ml3 mt3"/>
|
|
|
|
</a>
|
|
|
|
</a>
|
|
|
|
<span className="font-18 font-bd lessonvalue" title={item.stage_name}>{item.stage_name}</span>
|
|
|
|
<span className="font-18 font-bd lessonvalue" title={item.stage_name}>{item.stage_name}</span>
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
idsum===key&&pathCardsedittype===true?'':
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.props.isAdmin==true?
|
|
|
|
|
|
|
|
<a>
|
|
|
|
|
|
|
|
<a className="fr mtf3">
|
|
|
|
|
|
|
|
{ editbuttomtype===true?'':
|
|
|
|
|
|
|
|
<Tooltip placement="bottom" title="编辑"
|
|
|
|
|
|
|
|
onClick={() => this.pathCardsedit(key, item.stage_id)}>
|
|
|
|
|
|
|
|
<i className="iconfont icon-bianjidaibeijing font-22 color-green"></i>
|
|
|
|
|
|
|
|
</Tooltip>
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
</a>
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
stages.length=== key+1?"":<a className="fr ring-op-green mr20" onClick={()=>this.operations(item.down_path)}>
|
|
|
|
|
|
|
|
<Tooltip placement="bottom" title="向下移动">
|
|
|
|
|
|
|
|
<img src={getImageUrl("images/educoder/icon/movedown.svg")} className="fl mt2 ml4"/>
|
|
|
|
|
|
|
|
</Tooltip>
|
|
|
|
|
|
|
|
</a>
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{key===0?"":
|
|
|
|
|
|
|
|
<a className="fr ring-op-green mr20" onClick={()=>this.operations(item.up_path)}>
|
|
|
|
|
|
|
|
<Tooltip placement="bottom" title="向上移动">
|
|
|
|
|
|
|
|
<img src={getImageUrl("images/educoder/icon/moveup.svg")} className="fl mt2 ml4"/>
|
|
|
|
|
|
|
|
</Tooltip>
|
|
|
|
|
|
|
|
</a>}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</a>:""
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
idsum === key && pathCardsedittype === true ?
|
|
|
|
|
|
|
|
this.props.isAdmin===true?
|
|
|
|
|
|
|
|
<a className="fr" onClick={()=>this.delectpathCardsedit(item.stage_id)}>
|
|
|
|
|
|
|
|
<Tooltip placement="bottom" title="删除">
|
|
|
|
|
|
|
|
<i className="iconfont icon-shanchu color-grey-c font-14 font-n"></i>
|
|
|
|
|
|
|
|
</Tooltip>
|
|
|
|
|
|
|
|
</a>:""
|
|
|
|
|
|
|
|
: ''
|
|
|
|
|
|
|
|
}
|
|
|
|
</p>
|
|
|
|
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
idsum===key&&pathCardsedittype===true?'':
|
|
|
|
<div className="detail_for_paragraph clearfix" id={"detail_for_paragraph_"+key}>
|
|
|
|
<div className="detail_for_paragraph clearfix" id={"detail_for_paragraph_"+key}>
|
|
|
|
<p className="color-dark-grey mt20 mb25 ml20 mr20 pl28 justify font-15">{item.stage_description}</p>
|
|
|
|
<p className="color-dark-grey mt20 mb25 ml20 mr20 pl28 justify font-15">{item.stage_description}</p>
|
|
|
|
|
|
|
|
|
|
|
@ -235,12 +391,35 @@ class YslDetailCards extends Component{
|
|
|
|
}
|
|
|
|
}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
<DetailCardsEditAndEdit
|
|
|
|
|
|
|
|
idsum={idsum}
|
|
|
|
|
|
|
|
keys={key}
|
|
|
|
|
|
|
|
pathCardsedittype={pathCardsedittype}
|
|
|
|
|
|
|
|
updatapathCardsedits={this.updatapathCardsedit}
|
|
|
|
|
|
|
|
pathlisteditlist={pathlistedit}
|
|
|
|
|
|
|
|
stageid={item.stage_id}
|
|
|
|
|
|
|
|
pathid={pathid}
|
|
|
|
|
|
|
|
></DetailCardsEditAndEdit>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
)
|
|
|
|
)
|
|
|
|
})
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
{ editbuttomtypeadd===true?'':
|
|
|
|
|
|
|
|
<DetailCardsEditAndAdd
|
|
|
|
|
|
|
|
{...this.props}
|
|
|
|
|
|
|
|
sum={stages && stages.length+1}
|
|
|
|
|
|
|
|
pathid={pathid}
|
|
|
|
|
|
|
|
detailInfoList={this.props.detailInfoList}
|
|
|
|
|
|
|
|
getPathCardsLists={this.updatapathCardsedit}
|
|
|
|
|
|
|
|
editeditbuttomtypes={this.editeditbuttomtypecanle}
|
|
|
|
|
|
|
|
></DetailCardsEditAndAdd>
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
)
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
export default YslDetailCards;
|
|
|
|
export default YslDetailCards;
|
|
|
|
|
|
|
|
// detailInfoList以前实训课堂做权限判断的作用
|