import React, { Component } from 'react'; import { BrowserRouter as Router, Route, Link, Switch } from "react-router-dom"; import classNames from 'classnames' import axios from 'axios'; // import { TPMIndexHOC } from '../../../tpm/TPMIndexHOC'; import { SnackbarHOC } from 'educoder' import { Select,InputNumber,message,Modal,Input,Radio,Spin,Icon,Tooltip } from 'antd'; import 'antd/dist/antd.css'; import '../../css/ecCourseEvaluations.css'; import EcTitleCourseEvaluations from "../../ecTitle/ecTitle"; const $ = window.$; // 课程目标评价方法 class EcCourseEvaluationsbottom extends Component { constructor(props) { super(props) this.state={ totalevaluations_list:[], ec_course_target_id:0, achievement_list:[], evaluations_listSelec:[], evaluations_lists: [], evaluation_subitems_lists: [], evaluations_list:[], evaluation_subitems_list:{}, achievement_methods:[], ec_course_target_name:"", buttomSaveCourseEvaluationsbottom:this.SaveCourseEvaluationsbottom, spinningstate:true, schooldata:{}, sequenceid:0, target_id:null, titlemessages:"提示", Modallists:"", eacoursetype:false, eacoursesavetypes:false, newec_course_idbottom:undefined, methodologytype:false, meweacoursetype:false, newshowredvalue:false, percentagetype:false, ismanager:false } } getec_course_achievement_methods=()=>{ const {newec_course_idbottom}=this.state; if(newec_course_idbottom!=undefined){ const url = `/ec_course_achievement_methods?ec_course_id=`+newec_course_idbottom; axios.get(url, { withCredentials: true, }) .then((response)=>{ this.setState({ achievement_list:response.data.achievement_list, spinningstate:false, ismanager:response.data.is_manager }) }).catch(function (error) { console.log(error); }); } // this.setState({ // achievement_list:[ // {target_evaluate_data: [ // { // evaluate_id: 24, // evaluate_name: "期末考试", // evaluation_relates_data: [ // {evaluation_relates_id: 31, evaluation_relates_name: "期末考试1目标1考题"}, // {evaluation_relates_id: 32, evaluation_relates_name: "期末考试1目标2考题"} // ], // percentage: 100, // score: 15 // } // ], // target_id: 5 // }, // ], // spinningstate:false // }) } getNavigationData=(ec_course_id)=>{ // const jol =`/ec_major_schools/get_navigation_data?ec_year_id=`+ec_year_id+"&ec_course_id="+ec_course_id; const jol =`/ec_major_schools/get_navigation_data?ec_course_id=`+ec_course_id; axios.get(jol, { withCredentials: true, }) .then((response) => { if(response.status===200){ // if(response.data.allow_visit===false){ // window.location.href="/403" // } this.setState({ schooldata:response.data }) } }) .catch(function (error) { console.log(error); }); } componentDidMount(){ let ec_course_id=this.props.match.params.ec_course_id; const url = `/ec_course_achievement_methods?ec_course_id=`+ec_course_id; axios.get(url, { withCredentials: true, }) .then((response)=>{ this.setState({ achievement_list:response.data.achievement_list, spinningstate:false, ismanager:response.data.is_manager }) }).catch(function (error) { console.log(error); }); this.getNavigationData(ec_course_id); this.setState({ newec_course_idbottom:ec_course_id }) } editecCourseEvaluationslist=(e)=>{ let id =e.target.getAttribute("target_id"); let newid =e.target.name; this.setState({ buttomSaveCourseEvaluationsbottom:this.SaveCourseEvaluationsbottom, target_id:id, percentagetype:false }) // $("#ecCourseEvaluationsbottomsubmit").show(); // $("#SystemParametersbottom").show(); // let offsettop=$("#ecCourseEvaluationsbottomsubmit").position().top||$("#ecCourseEvaluationsbottomsubmit").scrollTop || $("#ecCourseEvaluationsbottomsubmit").pageYOffset; // window.scrollTo(0, offsettop) let {evaluations_list,evaluation_subitems_list,achievement_methods} = this.state; this.setState({ achievement_methods:undefined, selectevaluation_phase:[], course_select_value:'', evaluations_lists:[], sequenceid:newid, methodologytype:false, Modallists:' ', meweacoursetype:false, eacoursesavetypes:false, newshowredvalue:false }) let newevaluations_list=[]; let newevaluation_subitems_list=new Object (); let newachievement_methods=[]; const url = `/ec_course_achievement_methods/edit_course_target?ec_course_target_id=`+id; axios.get(url, { withCredentials: true, }) .then((response)=>{ if(response.status===200){ if(response.data.evaluation_phase_list.length===0){ this.setState({ achievement_methods:undefined }) let newObject=new Object (); newachievement_methods.push(newObject) } if(response.data.evaluation_phase_list.length>0){ let evaluation_phase_list=response.data.evaluation_phase_list; let evaluations_list=response.data.evaluations_list; for(var i=0; i{ let {evaluation_subitems_list,totalevaluations_list,achievement_methods} = this.state; let newachievement_methods=achievement_methods; let newlist=new Object (); let location=keythis.key; let list=totalevaluations_list.evaluations_list; // 点击切换清空 for(var z=0; z0){ if(newachievement_methods[location]===undefined){ newachievement_methods.push(newlist) } for(var i=0; i{ let{totalevaluations_list,achievement_methods}=this.state; let newachievement_methods=[]; let id; if(value.length>0){ newachievement_methods=achievement_methods for(var j=0; j{ let id=parseInt(keynum.key); let{achievement_methods}=this.state; let newachievement_methods=achievement_methods; for(var i=0; i{ let {achievement_methods} = this.state; let newachievement_methods=achievement_methods; let id=e.target.id; var value=parseFloat(e.target.value); for(var i=0; i{ let {achievement_methods} = this.state; let newachievement_methods=achievement_methods; let id=e.target.id; let value=parseFloat(e.target.value); if(value>100){ // message.warning('占比请输入0~100的数'); this.setState({ Modallists:'占比请输入0~100的数', meweacoursetype:true, newshowredvalue:true }) value=100 } if(value<0){ // message.warning('占比请输入0~100的数'); this.setState({ Modallists:'占比不能小于0', meweacoursetype:true, newshowredvalue:true }) value=0 } if(value===""||value===null||value===undefined){ // message.warning('占比请输入0~100的数'); this.setState({ Modallists:'占比不能为空', meweacoursetype:true, newshowredvalue:true }) value=0 } for(var i=0; i{ let {achievement_methods} = this.state; let newachievement_methods=achievement_methods; let newlist=new Object (); newachievement_methods.push(newlist); this.setState({ achievement_methods:newachievement_methods }); } Delethandevaluation=(e)=>{ let {achievement_methods} = this.state; let id =e.target.getAttribute("index"); let newachievement_methods=achievement_methods; newachievement_methods.splice(id,1); this.setState({ achievement_methods:newachievement_methods }); } EvaluationsSaveonloadgetdata=(id)=>{ const url = `/ec_course_achievement_methods?ec_course_id=`+id axios.get(url, { withCredentials: true, }) .then((response)=>{ this.setState({ achievement_list:response.data.achievement_list, spinningstate:false, ismanager:response.data.is_manager }) }).catch(function (error) { console.log(error); this.setState({ spinningstate:false }) }); } ecrestoration=()=>{ this.setState({ buttomSaveCourseEvaluationsbottom:this.SaveCourseEvaluationsbottom }) } SaveCourseEvaluationsbottom=()=>{ let ec_course_id=this.props.match.params.ec_course_id; this.setState({ buttomSaveCourseEvaluationsbottom:'', percentagetype:true }) let {newec_course_target_id,achievement_methods} = this.state; for(var j=0; j100){ // message.error('提交失败!支撑占比不能超过总和100%'); this.setState({ Modallists:'提交失败,支撑占比不能超过总和100%', meweacoursetype:true, newshowredvalue:true, percentagetype:true }) this.setState({ buttomSaveCourseEvaluationsbottom:this.SaveCourseEvaluationsbottom }) return } if(percentagenum<100){ // message.error('提交失败!支撑占比不能超过总和100%'); this.setState({ Modallists:'提交失败,支撑占比总和要等于100%', meweacoursetype:true, newshowredvalue:true, percentagetype:true }) this.setState({ buttomSaveCourseEvaluationsbottom:this.SaveCourseEvaluationsbottom }) return } for(var i=0;i { if(response.data.status===0){ this.setState({ target_id:null, newec_course_idbottom:response.data.ec_course_id, buttomSaveCourseEvaluationsbottom:this.SaveCourseEvaluationsbottom, // Modallists:response.data.message, // eacoursetype:true, Modallists:' ', meweacoursetype:false, achievement_methods:undefined, eacoursesavetypes:false, newshowredvalue:false, ismanager:response.data.is_manager }) // $("#ecCourseEvaluationsbottomsubmit").hide(); // $("#SystemParametersbottom").hide(); this.EvaluationsSaveonloadgetdata(response.data.ec_course_id); this.getNavigationData(ec_course_id); }else if(response.data.status===-1){ this.setState({ buttomSaveCourseEvaluationsbottom:this.SaveCourseEvaluationsbottom, Modallists:response.data.message, eacoursetype:true, }) } }).catch((error) => { console.log(error) }) } CancelecCourseEvaluationsbottom=()=>{ this.setState({ achievement_methods:undefined, target_id:null, methodologytype:false, Modallists:' ', meweacoursetype:false, eacoursesavetypes:false, newshowredvalue:false, percentagetype:false }) // $("#ecCourseEvaluationsbottomsubmit").hide(); // $("#SystemParametersbottom").hide(); this.getec_course_achievement_methods(); } selectsonFocuslist=(e,key)=>{ let value =e.course_select_value; let {evaluation_subitems_list,totalevaluations_list,achievement_methods} = this.state; let newachievement_methods=achievement_methods; let newlist=new Object (); let location=key; let list=totalevaluations_list.evaluations_list; this.setState({ evaluations_lists: evaluation_subitems_list[value], evaluation_subitems_lists: evaluation_subitems_list[value][0] }); if(newachievement_methods.length===0){ for(var i=0; i0){ if(newachievement_methods[location]===undefined){ newachievement_methods.push(newlist) } for(var i=0; i{ this.setState({ eacoursetype:false }) } render() { const Option = Select.Option; let {schooldata,achievement_list,spinningstate,evaluations_list,evaluations_lists,newec_course_target_id,achievement_methods,ec_course_target_name,buttomSaveCourseEvaluationsbottom,sequenceid,target_id, titlemessages, Modallists, eacoursetype, eacoursesavetypes, methodologytype, newec_course_idbottom, meweacoursetype, percentagetype, ismanager } = this.state; return (
{Modallists}
{/*导航*/} {/*
*/} {/*

*/} {/*课程列表 > */} {/* {schooldata.ec_course_name} 课程考核方式与数据来源*/} {/*/!* *!/*/} {/*/!* 导出培养目标 *!/*/} {/*导出策略*/} {/*

*/} {/*
*/} {/*课程考核标准*/} {/*(请在完成配置后,使用各项成绩导入模板,将本学年所有参与的学生成绩数据导入系统)*/} {/*在线课堂:{course_name}*/} {/*导入课堂数据*/} {/*
*/} {/*
*/} {/**/} {/*
*/} {/*

*/} {/* 课程体系 >*/} {/* {schooldata.ec_course_name} */} {/*

请结合本课程的教学情况,修改说明每个课程目标的评价环节和评估方式 window.elasticLayer(3533)}>查看详情
*/} {/* /!*课程考核方式与数据来源*!/*/} {/* /!* *!/*/} {/* /!* 导出培养目标 *!/*/} {/* */} {/* 导出评价方法*/} {/* */} {/*

*/} {/*
*/} {/* /!*课程目标达成方法*!/*/} {/* 1.课程目标*/} {/* 2.课程考核方式与数据来源*/} {/* 3.成绩等级设置*/} {/* 4.课程目标评价方法*/} {/* 5.课程达成评价结果*/} {/* (各环节平均得分*占比)之和/(各环节总分*占比)之和*/} {/*
*/} {/*
*/}

课程目标 评价环节 数据内容 操作 评价占比 支撑总分值

{ achievement_list.length===0?}/>:achievement_list.map((item,key)=>{ return(
{ item.target_evaluate_data.length===0?
  • {key+1}
    {/* 修改start*/}
    {/*
    */}
    {/* 课程目标{sequenceid}:{ec_course_target_name} */} 课程目标{key+1}:{ec_course_target_name}
    { achievement_methods===undefined?" ":achievement_methods.map((item,itemkey)=>{ return(
    评价环节 100&&eacoursesavetypes===true||percentagetype===true?"bor-red": ""} onInput={this.handevaluation_CoursePercentag.bind(this)} id={itemkey} style={{ width: '11%' }} placeholder="请输入占比"/> %

    ) }) } {Modallists}
    保存
    取消
    {/* 修改end*/}
  • :item.target_evaluate_data.map((i,k)=>{ return(
  • {key-k===key?key+1:""} {i.evaluate_name} { i.evaluation_relates_data.map((y,e)=>{ return(
    {y.evaluation_relates_name+" "}
    ) }) }
    { key-k===key?
    :
    }
    {i.percentage+"%"}
    {i.score}
    {/* 修改start*/}
    {/* 课程目标{sequenceid}:{ec_course_target_name} */} 课程目标{key+1}:{ec_course_target_name}
    { achievement_methods===undefined?" ":achievement_methods.map((item,itemkey)=>{ return(
    评价环节 100&&eacoursesavetypes===true||percentagetype===true?"bor-red": ""} onInput={this.handevaluation_CoursePercentag.bind(this)} id={itemkey} style={{ width: '11%' }} placeholder="请输入占比"/> %

    ) }) } {Modallists}
    保存
    取消
    {/* 修改end*/}
  • ) }) }
    ) }) }
    ); } } export default SnackbarHOC() (EcCourseEvaluationsbottom);