import React, { Component } from 'react'; import {getImageUrl} from 'educoder'; import {Tooltip,Modal,Icon,Spin,message} from 'antd'; import '../../paths/ShixunPaths.css'; import DetailCardsEditAndAdd from './DetailCardsEditAndAdd'; import DetailCardsEditAndEdit from './DetailCardsEditAndEdit'; import { BrowserRouter as Router, Route, Link } from "react-router-dom"; import axios from 'axios'; import { DragDropContext , Draggable, Droppable} from 'react-beautiful-dnd'; import Modals from '../../modals/Modals'; const $ = window.$ // // //a little function to help us with reordering the result // const reorder = (list, startIndex, endIndex) => { // let newlist=list; // const result = Array.from(newlist.shixuns_list); // const [removed] = result.splice(startIndex, 1); // result.splice(endIndex, 0, removed); // newlist.shixuns_list=result; // return newlist; // }; // class DetailCards extends Component{ constructor(props){ super(props) this.state={ pathCardsList:undefined, dropid:undefined, dropidtype:false, idsum:undefined, pathCardsedittype:false, pathlistedit:undefined, pathid:undefined, Modalstype:false, Modalstopval:'', Modalsbottomval:'', cardsModalsave:this.cardsModalsave, cardsModalcancel:this.cardsModalcancel, delecttype:false, editdelectid:undefined, editbuttomtype:false, editbuttomtypeadd:false, showparagraph:false, showparagraphkey:"", showparagraphindex:"", isSpin:false } // this.onDragEnd = this.onDragEnd.bind(this); } getPathCardsList(){ let pathid=this.props.match.params.pathId; let url=`/stages.json?subject_id=`+pathid; axios.get(url).then((result)=>{ if(result.status===200){ this.setState({ pathCardsList:result.data.stages, }) } }).catch((error)=>{ console.log(error); }) } for_paragraph = (index) =>{ $("#detail_for_paragraph_"+index).slideToggle(500); } componentDidMount(){ let pathid=this.props.match.params.pathId; this.setState({ pathid:pathid }) this.getPathCardsList(); } // onDragStart = () => { // /*...*/ // }; // onDragUpdate = () => { // /*...*/ // } // // onDragEnd (result) { // // let{pathCardsList}=this.state; // // dropped outside the list // let newpathCardsList=pathCardsList; // if(!result.destination) { // return; // } // var sum=result.source.droppableId.replace('ids','') // sum=parseInt(sum) // // const items = reorder( // newpathCardsList[sum], // result.source.index, // result.destination.index // ); // newpathCardsList[sum]=items // this.setState({ // pathCardsList:newpathCardsList // }) // } 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); }) } updatapathCardsedit=()=>{ this.setState({ idsum:undefined, pathCardsedittype:false, editbuttomtype:false, editbuttomtypeadd:false }) this.getPathCardsList(); this.props.updatadetailInfoLists(); } delectpathCardsedit=(id)=>{ this.setState({ Modalstype:true, Modalstopval:'是否删除该章节?', Modalsbottomval:'', editdelectid:id, delecttype:true, }) } delectpathCardseditfun=()=>{ let {delecttype,editdelectid}=this.state; let id=editdelectid; if(delecttype===true){ let url ='/stages/'+id+'.json' axios.delete(url).then((response) => { if(response.data.status===1){ // window.location.href = "/paths/" + response.data.subject_id this.setState({ idsum:undefined, pathCardsedittype:false, Modalstype:false, Modalstopval:'', Modalsbottomval:'', cardsModalsave:this.cardsModalsave, delecttype:false, editdelectid:undefined }) this.getPathCardsList(); } }).catch((error) => { console.log(error) }) } } // 关卡的上移下移操作 operations = (url) => { let newurl = url+".json" axios.get(newurl).then((response) => { if(response.data.status===1){ this.getPathCardsList(); } }).catch((error) => { console.log(error); }) } startgameid=(id)=>{ let url = "/shixuns/" + id + "/shixun_exec.json"; axios.get(url).then((response) => { if (response.data.status === -2) { this.setState({ shixunsreplace:true, hidestartshixunsreplacevalue:response.data.message+".json" }) } else if (response.data.status === -1) { console.log(response) }else if(response.data.status===-3){ this.setState({ shixunsmessage:response.data.message, startshixunCombattype:true, }) } else { window.location.href = "/tasks/" + response.data.game_identifier; // window.location.href = path // let path="/tasks/"+response.data.game_identifier; // this.props.history.push(path); } }).catch((error) => { }); } hidestartshixunsreplace=(url)=>{ this.setState({ isSpin:true, }) axios.get(url).then((response) => { debugger if(response.status===200){ // let path="/shixuns/"+response.data.shixun_identifier+"/challenges"; // this.props.history.push(path); message.success('重置成功,正在进入实训!'); this.startgameid(response.data.shixun_identifier); this.setState({ shixunsreplace:false, isSpin:false, startbtn:false, }) // message.success('重置成功,正在进入实训!'); // this.startshixunCombat(); }} ).catch((error) => { }); } cardsModalcancel=()=>{ this.setState({ Modalstype:false, Modalstopval:'', Modalsbottomval:'', editdelectid:undefined }) } cardsModalsave=()=>{ this.setState({ Modalstype:false, Modalstopval:'', Modalsbottomval:'', editdelectid:undefined }) } editeditbuttomtypecanle=()=>{ this.setState({ editbuttomtype:true, editbuttomtypeadd:false }) } showparagraph=(key,index)=>{ this.setState({ showparagraph:true, showparagraphkey:key, showparagraphindex:index }) } hideparagraph=()=>{ this.setState({ showparagraph:false }) } hidestartshixunCombattype=()=>{ this.setState({ startshixunCombattype:false }) } render(){ let { pathCardsList, dropid, dropidtype, idsum, pathCardsedittype, pathlistedit, pathid, Modalstype, Modalstopval, Modalsbottomval, cardsModalsave, cardsModalcancel, delecttype, hidestartshixunsreplacevalue, editbuttomtype, editbuttomtypeadd, showparagraph, showparagraphkey, showparagraphindex }=this.state; const antIcon = ; return(

本实训的开启时间:{this.state.shixunsmessage}
开启时间之前不能挑战

{/*取消*/} 知道了
{/*

*/} {/*知道了*/} {/*

*/}

实训已经更新了,正在为您重置!

this.hidestartshixunsreplace(hidestartshixunsreplacevalue)}>知道了
{ pathCardsList && pathCardsList.map((item,key)=>{ return(

{item.stage_name} { idsum===key&&pathCardsedittype===true?'': this.props.detailInfoList===undefined?"":this.props.detailInfoList.allow_statistics===true? { editbuttomtype===true?'': this.pathCardsedit(key, item.stage_id)}> } { pathCardsList.length=== key+1?"":this.operations(item.down_path)}> } {key===0?"": this.operations(item.up_path)}> } :"" } { idsum === key && pathCardsedittype === true ? this.props.detailInfoList===undefined?"":this.props.detailInfoList.allow_statistics===true? this.delectpathCardsedit(item.stage_id)}> :"" : '' }

{ idsum===key&&pathCardsedittype===true?'':

{item.stage_description}

{ item.shixuns_list && item.shixuns_list.map((line,index)=>{ return(
this.showparagraph(key,index)} onMouseLeave={this.hideparagraph}>
  • { line.complete_status === 1 ? : } {key+1}-{index+1}  {line.shixun_name}
  • { line.shixun_status==="暂未公开"?
  • 暂未公开
  • :
  • { showparagraphkey===key&&showparagraphindex===index?:"" }
  • }
    ) }) }
    }
    ) }) }
    { editbuttomtypeadd===true?'': }
    ) } } export default DetailCards; // { // idsum===key&&pathCardsedittype===true?'': //
    //

    {item.stage_description}

    // // // // // {(provided, snapshot) => ( // //
    // // { // item.shixuns_list && item.shixuns_list.map((line,index)=>{ // return( // // {(provided, snapshot) => ( //
    // //
  • // // // { // line.complete_status === 1 ? // : // } // // // // // {key+1}-{index+1}  {line.shixun_name} // // //
  • // { // line.shixun_status==="暂未公开"? //
  • 暂未公开
  • // : //
  • // 查看详情 // 开始实战 //
  • // } // {provided.placeholder} //
    // )} //
    // ) // }) // } //
    // )} //
    //
    //
    // }