修改成功

dev_forum
hjm 6 years ago
parent 642a70adf9
commit 8eee96f7c2

@ -5,6 +5,7 @@ import CourseLayoutcomponent from '../common/CourseLayoutComponent'
import Titlesearchsection from '../common/titleSearch/TitleSearchSection' import Titlesearchsection from '../common/titleSearch/TitleSearchSection'
import ColorCountText from '../common/titleSearch/ColorCountText' import ColorCountText from '../common/titleSearch/ColorCountText'
import update from 'immutability-helper'
import { WordsBtn, ConditionToolTip, on, off } from 'educoder' import { WordsBtn, ConditionToolTip, on, off } from 'educoder'
import axios from 'axios' import axios from 'axios'
@ -71,7 +72,7 @@ function buildColumns(that) {
const noGroups = (!course_groups || course_groups.length == 0); const noGroups = (!course_groups || course_groups.length == 0);
return ( return (
<ConditionToolTip title={`暂未有分班信息,不能操作`} condition={noGroups}> <ConditionToolTip title={`暂未有分班信息,不能操作`} condition={noGroups}>
<span className="drop_down" style={{color: '#29BD8B'}}> <span className="drop_down" style={{color: '#29BD8B', display: 'inline-block'}}>
{ arg_course_groups.length == 0 ? '不限' : arg_course_groups.map(item => item.name).join(', ') } { arg_course_groups.length == 0 ? '不限' : arg_course_groups.map(item => item.name).join(', ') }
{ isAdmin && { isAdmin &&
<React.Fragment> <React.Fragment>
@ -84,7 +85,7 @@ function buildColumns(that) {
</p>): </p>):
'' ''
} }
<Checkbox.Group onChange={(checkedValues) => that.joinCourseGroup(checkedValues, item)} <Checkbox.Group onChange={(checkedValues) => that.joinCourseGroup(checkedValues, item, index)}
value={arg_course_groups.map(item => item.id)} value={arg_course_groups.map(item => item.id)}
disabled={!isAdminOrCreator} disabled={!isAdminOrCreator}
> >
@ -137,11 +138,12 @@ function buildColumns(that) {
} else { } else {
return ( return (
<span> <span>
<WordsBtn onClick={() => that.onDelete(record)} style={'grey'}>删除</WordsBtn> {record.role != ROLE_ADMIN && <WordsBtn onClick={() => that.onDelete(record)} style={'grey'}>删除</WordsBtn>}
<Divider type="vertical" /> {(record.role == ROLE_TEACHER || record.role == ROLE_TEACHER_ASSISTANT || isAdminOrCreator) && record.role != ROLE_ADMIN
&& <Divider type="vertical" />}
{ record.role == ROLE_TEACHER ? <a style={{color: '#4CACFF'}} onClick={() => that.changeToAssistant(record)}>变更为助教</a> : '' } { record.role == ROLE_TEACHER ? <a style={{color: '#4CACFF'}} onClick={() => that.changeToAssistant(record)}>变更为助教</a> : '' }
{ record.role == ROLE_TEACHER_ASSISTANT ? <a style={{color: '#4CACFF'}} onClick={() => that.changeToTeacher(record)}>变更为教师</a> : '' } { record.role == ROLE_TEACHER_ASSISTANT ? <a style={{color: '#4CACFF'}} onClick={() => that.changeToTeacher(record)}>变更为教师</a> : '' }
{ record.role == ROLE_ADMIN ? <a style={{color: '#4CACFF'}} onClick={() => that.showChangeAdminModal(record)}>更换管理员</a> : '' } { record.role == ROLE_ADMIN && isAdminOrCreator ? <a style={{color: '#4CACFF', marginLeft: '44px'}} onClick={() => that.showChangeAdminModal(record)}>更换管理员</a> : '' }
</span> ) </span> )
} }
@ -238,8 +240,13 @@ class studentsList extends Component{
}) })
.then((response) => { .then((response) => {
if (response.data.course_groups && response.data.course_groups.length) { if (response.data.course_groups && response.data.course_groups.length) {
let course_groups_map = {}
response.data.course_groups.forEach(item => {
course_groups_map[item.id] = item.name
})
this.setState({ this.setState({
course_groups: response.data.course_groups, course_groups: response.data.course_groups,
course_groups_map
}) })
} else { } else {
} }
@ -248,7 +255,7 @@ class studentsList extends Component{
console.log(error); console.log(error);
}); });
} }
joinCourseGroup = (ids, item) => { joinCourseGroup = (ids, item, index) => {
console.log('join ', ids, item) console.log('join ', ids, item)
const courseId = this.props.match.params.coursesId const courseId = this.props.match.params.coursesId
@ -263,7 +270,12 @@ class studentsList extends Component{
.then((response) => { .then((response) => {
if (response.data.status == 0) { if (response.data.status == 0) {
this.props.showNotification('修改成功') this.props.showNotification('修改成功')
this.fetchAll() const newArray = ids.map((item) => {return {id: item, name: this.state.course_groups_map[item]}});
this.setState(
(prevState) => ({
teachers : update(prevState.teachers, {[ this.state.page == 1 ? index - this.state.application_list.length : index]: { course_groups: {$set: newArray }}})
}))
// this.fetchAll()
} else { } else {
} }
}) })

Loading…
Cancel
Save