Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
B
biz.qingxiao.com
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wangxuelai
biz.qingxiao.com
Commits
9b4f7ef5
Commit
9b4f7ef5
authored
Jan 03, 2020
by
baixian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化
parent
c607f33d
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
0 additions
and
1795 deletions
+0
-1795
copyindex.js
src/pages/index/copyindex.js
+0
-1392
copyindex.less
src/pages/index/copyindex.less
+0
-403
No files found.
src/pages/index/copyindex.js
deleted
100644 → 0
View file @
c607f33d
import
React
from
'react'
;
import
{
Router
,
Route
,
Switch
,
Redirect
,
routerRedux
,
}
from
'dva/router'
;
// import $ from 'jquery';
import
{
connect
}
from
'dva'
;
import
{
message
,
Row
,
Col
,
Modal
,
Icon
,
DatePicker
,
Card
,
Badge
,
Table
,
Pagination
,
Tooltip
,
Form
,
Input
,
Checkbox
,
Radio
,
}
from
'antd'
;
import
moment
from
'moment'
;
import
pageStyle
from
'./index.less'
;
import
BtnPermission
from
'../../components/BtnPermission'
;
import
{
pageIn
,
hasBtnPower
,
DayCount
,
formatDay
,
btnPermission
,
}
from
'../../utils/index'
;
import
CourseChart
from
'../../components/CourseChart'
;
import
PlanCourse
from
'../../components/PlanCourse'
;
import
ClassRoomMgt
from
'../classmgt/classRoomMgt'
;
import
AddCourseTime
from
'../classdetail/AddCourseTime'
;
import
CourseTimeList
from
'../classdetail/CourseTimeList'
;
import
StudentAdd
from
'../student/StudentAdd'
;
import
Cropper
from
'../../components/Cropper'
;
import
RepeatStudent
from
'../student/RepeatStudent'
;
import
CallStudents
from
'../../components/CallStudents'
;
import
ChangeCourse
from
'../classdetail/ChangeCourse'
;
import
StudentLeaveModal
from
'./StudentLeaveModal'
;
import
AddCourseModal
from
'../course/AddCourseModal'
;
import
EditClassModal
from
'../classmgt/EditClassModal'
;
const
{
RangePicker
}
=
DatePicker
;
class
StaticCenter
extends
React
.
Component
{
constructor
(
props
)
{
super
(
props
);
this
.
state
=
{
avatorUploader
:
{
maxsize
:
8192
,
// 奖品图片最大尺寸KBcropper: {
cropper
:
{
croppered_params
:
[],
// 图片裁剪后的参数
config
:
{
dragMode
:
'move'
,
viewMode
:
1
,
aspectRatio
:
1
,
autoCropArea
:
0.8
,
guides
:
!
1
,
center
:
!
0
,
highlight
:
!
1
,
dragCrop
:
!
1
,
cropBoxMovable
:
!
1
,
cropBoxResizable
:
!
1
,
zoom
:
-
0.2
,
checkImageOrigin
:
!
0
,
background
:
!
1
,
rotatable
:
!
0
,
},
},
},
};
}
componentDidMount
()
{
// 挂载
pageIn
(
'轻校-概况'
);
const
callwarnbtn
=
document
.
getElementById
(
'index_callwarn'
);
const
{
dispatch
}
=
this
.
props
;
if
(
callwarnbtn
)
{
dispatch
({
type
:
'userguide/getposition'
,
payload
:
{
page
:
'indexstatic2'
,
doms
:
{
callwarnbtn
,
},
},
});
}
}
componentDidUpdate
()
{
}
componentWillUnmount
()
{
// 卸载
}
dayshift
(
start_time
,
end_time
)
{
const
{
dispatch
,
sid
}
=
this
.
props
;
dispatch
({
type
:
'indexstaic/querychartstatic'
,
payload
:
{
sid
,
init
:
false
,
start_date
:
start_time
,
end_date
:
end_time
,
},
});
}
createTheme
=
()
=>
{
const
{
dispatch
,
userPermission
}
=
this
.
props
;
if
(
!
btnPermission
(
userPermission
,
30002
))
{
message
.
warn
(
'暂无权限,请联系管理员开通【主题管理权限】'
,
1
);
return
;
}
dispatch
({
type
:
'createtheme/goTheme'
,
payload
:
{
index
:
1
,
},
});
}
createCalendarTheme
=
()
=>
{
const
{
dispatch
,
userPermission
}
=
this
.
props
;
if
(
!
btnPermission
(
userPermission
,
30002
))
{
message
.
warn
(
'暂无权限,请联系管理员开通【主题管理权限】'
,
1
);
return
;
}
dispatch
({
type
:
'createtheme/goTheme'
,
payload
:
{
index
:
2
,
},
});
}
createUnlockTheme
=
()
=>
{
message
.
warning
(
'功能即将开放,敬请期待'
);
}
disabledDate
=
(
current
)
=>
{
return
current
>
moment
();
}
goPlanCourse
=
()
=>
{
const
{
dispatch
,
classId
,
rulePlanDetail
,
schoolUserInfo
,
}
=
this
.
props
;
dispatch
({
type
:
'plancourse/queryClassList'
,
});
dispatch
({
type
:
'plancourse/updateState'
,
payload
:
{
classId
,
PlanCourseShow
:
true
,
edittype
:
'add'
,
widthClassSelect
:
true
,
rulePlanDetail
:
{
...
rulePlanDetail
,
teacher_id
:
schoolUserInfo
&&
schoolUserInfo
.
id
?
schoolUserInfo
.
id
:
''
,
times
:
[
'10:00-11:00'
],
},
},
});
}
plancoursesaveSubmit
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'coursechart/queryScheduleList'
,
});
}
goDeadlineStudent
=
()
=>
{
const
{
dispatch
,
renew
,
guideShow
}
=
this
.
props
;
if
(
guideShow
)
{
return
;
}
if
(
renew
.
total
===
0
)
{
message
.
warning
(
'暂无学员课时数过低需要续费喔'
);
return
;
}
dispatch
({
type
:
'indexstaic/goDeadlineStudent'
,
});
}
goBirthStudent
=
()
=>
{
const
{
dispatch
,
birthday
,
guideShow
}
=
this
.
props
;
if
(
guideShow
)
{
return
;
}
if
(
birthday
.
total
===
0
)
{
message
.
warning
(
'今天没有学员生日喔'
);
return
;
}
dispatch
({
type
:
'indexstaic/goBirthStudent'
,
});
}
goCallStudent
=
()
=>
{
const
{
dispatch
,
callData
,
guideShow
}
=
this
.
props
;
if
(
guideShow
)
{
return
;
}
if
(
callData
.
total
===
0
)
{
message
.
warning
(
'当前暂无未点名课次喔'
);
return
;
}
dispatch
({
type
:
'indexstaic/goCallStudent'
,
});
}
goPlanClass
=
()
=>
{
const
{
dispatch
,
guideShow
}
=
this
.
props
;
if
(
guideShow
)
{
return
;
}
dispatch
({
type
:
'indexstaic/goPlanClass'
,
});
}
goPlanStudent
=
()
=>
{
const
{
dispatch
,
assign
,
guideShow
}
=
this
.
props
;
if
(
guideShow
)
{
return
;
}
if
(
assign
.
total
===
0
)
{
message
.
warning
(
'当前暂无未分配学员喔'
);
return
;
}
dispatch
({
type
:
'indexstaic/goPlanStudent'
,
});
}
classroomMgt
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'indexstaic/updateState'
,
payload
:
{
classRoomMgtShow
:
true
,
},
});
}
closeroomMgt
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'indexstaic/updateState'
,
payload
:
{
classRoomMgtShow
:
false
,
},
});
}
addClassRoom
=
(
value
,
callBack
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'indexstaic/addClassRoom'
,
payload
:
{
value
,
callBack
,
},
});
}
delClassroom
=
(
classroom
)
=>
{
const
{
dispatch
}
=
this
.
props
;
Modal
.
confirm
({
title
:
`确定删除教室【
${
classroom
.
title
}
】吗`
,
okButtonProps
:
{
type
:
'danger'
,
style
:
{
color
:
'#fff'
,
backgroundColor
:
'#ff4d4f'
,
borderColor
:
'#ff4d4f'
,
},
},
centered
:
true
,
icon
:
<
Icon
type
=
"close-circle"
style
=
{{
color
:
'red'
}}
/>
,
onOk
:
()
=>
{
dispatch
({
type
:
'indexstaic/delClassroom'
,
payload
:
{
classroom
,
},
});
},
});
}
delTime
=
(
ele
)
=>
{
const
{
dispatch
}
=
this
.
props
;
Modal
.
confirm
({
title
:
`确定删除时间【
${
ele
.
start_time
}
~
${
ele
.
end_time
}
】吗`
,
okButtonProps
:
{
type
:
'danger'
,
style
:
{
color
:
'#fff'
,
backgroundColor
:
'#ff4d4f'
,
borderColor
:
'#ff4d4f'
,
},
},
centered
:
true
,
icon
:
<
Icon
type
=
"close-circle"
style
=
{{
color
:
'red'
}}
/>
,
onOk
:
()
=>
{
dispatch
({
type
:
'indexstaic/delTime'
,
payload
:
{
time
:
ele
,
},
});
},
});
}
manageCourseTime
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'indexstaic/updateState'
,
payload
:
{
courseTimeListShow
:
true
,
},
});
}
closeCourseTimeList
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'indexstaic/updateState'
,
payload
:
{
courseTimeListShow
:
false
,
},
});
}
addCourseTime
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'indexstaic/updateState'
,
payload
:
{
addCourseTimeShow
:
true
,
},
});
}
saveCourseTime
=
(
value
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'indexstaic/saveCourseTime'
,
payload
:
{
value
,
},
});
}
closeAddCourseTime
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'indexstaic/updateState'
,
payload
:
{
addCourseTimeShow
:
false
,
},
});
}
onRangePickerChange
=
(
dates
,
dateStrings
)
=>
{
this
.
dayshift
(
new
Date
(
dateStrings
[
0
].
replace
(
/-/g
,
'/'
)).
getTime
(),
new
Date
(
dateStrings
[
1
].
replace
(
/-/g
,
'/'
)).
getTime
());
}
onSlideChange
=
(
obj
)
=>
{
const
{
startValue
,
endValue
,
startText
,
endText
,
}
=
obj
;
// - (24 * 60 * 60 * 1000)
this
.
ds
.
setState
(
'start'
,
new
Date
((
`
${
startText
}
00:00:00`
).
replace
(
/-/g
,
'/'
)).
getTime
());
this
.
ds
.
setState
(
'end'
,
new
Date
((
`
${
endText
}
23:59:59`
).
replace
(
/-/g
,
'/'
)).
getTime
());
}
// 添加学员方法
setModal1Visible
(
visible
)
{
const
{
dispatch
,
schoolUserInfo
,
guideShow
,
userPermission
,
}
=
this
.
props
;
if
(
guideShow
)
{
return
;
}
if
(
visible
==
true
&&
!
btnPermission
(
userPermission
,
30007
))
{
message
.
warn
(
'暂无权限,请联系管理员开通【添加学员】'
,
1
);
return
;
}
dispatch
({
type
:
'students/updateState'
,
payload
:
{
operator
:
{
...
schoolUserInfo
},
studentAvator
:
''
,
},
});
dispatch
({
type
:
'students/modalshoworhide'
,
payload
:
{
visible
,
},
});
}
saveStudent
=
(
value
)
=>
{
const
{
schoolUserInfo
,
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'students/updateState'
,
payload
:
{
operator
:
schoolUserInfo
,
addOrUpdateDiaShow
:
false
,
},
});
dispatch
({
type
:
'students/studentsAdd'
,
payload
:
{
...
value
,
params
:
{
type
:
'index'
,
// 首页
},
},
});
}
uploadStudentAvator
=
({
files
,
uploadtype
})
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'uploader/queryimgsignature'
,
payload
:
{
files
,
avatorUploader
:
this
.
state
.
avatorUploader
,
uploadtype
,
},
});
}
cancelCropper
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'uploader/cancelcropper'
,
});
}
getCropperUrl
=
(
url
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'uploader/updateState'
,
payload
:
{
cropperUrl
:
url
,
},
});
}
sureCropper
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'uploader/surecropper'
,
payload
:
{
},
});
}
sureAddRepeatStudent
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'students/sureAddRepeatStudent'
,
payload
:
{
params
:
{
type
:
'index'
,
// 首页
},
},
});
}
changeSchedule
=
(
record
)
=>
{
const
{
dispatch
,
datetime
}
=
this
.
props
;
if
(
new
Date
(
datetime
.
replace
(
/-/g
,
'/'
)).
getTime
()
-
new
Date
(
record
.
start_time
.
replace
(
/-/g
,
'/'
)).
getTime
()
>
0
)
{
message
.
error
(
'本课时已经开始,无法调课'
,
0.5
);
return
;
}
if
(
record
.
call_time
)
{
message
.
warn
(
'该课时已点名,不能调课'
,
0.5
);
return
;
}
dispatch
({
type
:
'classdetail/updateState'
,
payload
:
{
changeScheduleShow
:
true
,
selectScheduleinfo
:
record
,
},
});
dispatch
({
type
:
'classdetail/queryScheduleStudentList'
,
payload
:
{
params
:
{
page
:
1
,
perPage
:
10
,
},
},
});
}
toCallStudent
=
(
schedule
)
=>
{
const
{
dispatch
,
datetime
,
classDetail
,
classStudentTotal
,
}
=
this
.
props
;
if
(
schedule
.
class
.
graduation_status
==
2
)
{
Modal
.
warn
({
title
:
'已结业班级不允许点名'
,
});
return
;
}
if
(
new
Date
(
datetime
.
replace
(
/-/g
,
'/'
)).
getTime
()
-
new
Date
(
schedule
.
start_time
.
replace
(
/-/g
,
'/'
)).
getTime
()
<
(
-
2
*
3600
*
1000
))
{
message
.
error
(
' 开课前两小时才能点名'
);
return
;
}
dispatch
({
type
:
'callstudents/updateState'
,
payload
:
{
callStudentsShow
:
true
,
expend
:
schedule
.
class
.
expend
,
copyExpend
:
schedule
.
class
.
expend
,
courseId
:
schedule
.
course_id
,
classroomId
:
schedule
.
class_room_id
,
classId
:
schedule
.
class_id
,
canAddStudent
:
true
,
rule_leave
:
(
schedule
.
course
&&
schedule
.
course
.
rule_leave
)
||
1
,
rule_absent
:
(
schedule
.
course
&&
schedule
.
course
.
rule_absent
)
||
1
,
},
});
dispatch
({
type
:
'callstudents/queryCallStudentList'
,
payload
:
{
callStudentSchedule
:
schedule
,
callType
:
3
,
},
});
dispatch
({
type
:
'callstudents/queryLeaveList'
,
payload
:
{
params
:
{
schedule_id
:
schedule
.
id
,
},
},
});
}
toEditCallStudents
=
(
schedule
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'callstudents/updateState'
,
payload
:
{
callStudentsShow
:
true
,
expend
:
schedule
.
class
.
expend
,
copyExpend
:
schedule
.
class
.
expend
,
courseId
:
schedule
.
course_id
,
classroomId
:
schedule
.
class_room_id
,
classId
:
schedule
.
class_id
,
canAddStudent
:
false
,
rule_leave
:
(
schedule
.
course
&&
schedule
.
course
.
rule_leave
)
||
1
,
rule_absent
:
(
schedule
.
course
&&
schedule
.
course
.
rule_absent
)
||
1
,
},
});
dispatch
({
type
:
'callstudents/queryEditCallStudentList'
,
payload
:
{
callStudentSchedule
:
schedule
,
callType
:
3
,
},
});
}
saveCallStudents
=
(
scheduleId
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'coursechart/queryScheduleList'
,
});
}
onChangeScheduleIndex
=
(
e
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classdetail/updateState'
,
payload
:
{
changeScheduleIndex
:
e
.
target
.
value
,
},
});
}
scheduleStudentsizeChange
=
(
page
,
perPage
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classdetail/queryScheduleStudentList'
,
payload
:
{
params
:
{
page
:
1
,
perPage
,
},
},
});
}
changeScheduleStudentPagination
=
(
page
,
perPage
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classdetail/queryScheduleStudentList'
,
payload
:
{
params
:
{
page
,
perPage
,
},
},
});
}
cancelAddRepeatStudent
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'students/updateState'
,
payload
:
{
repeatStudentShow
:
false
,
},
});
}
closeChangeSchedule
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classdetail/updateState'
,
payload
:
{
changeScheduleShow
:
false
,
selectScheduleinfo
:
{},
changeScheduleIndex
:
1
,
},
});
}
changeStudentSchedule
=
(
student
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classdetail/updateState'
,
payload
:
{
studentChangeScheduleShow
:
true
,
selectChangeScheduleStudent
:
student
,
},
});
dispatch
({
type
:
'classdetail/querystudentChangeScheduleList'
,
payload
:
{
exclude_student_id
:
student
.
id
,
params
:
{
page
:
1
,
perPage
:
10
,
},
},
});
}
sureAdjustCourse
=
(
value
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classdetail/sureAdjustCourse'
,
payload
:
{
sureAdjustCourse
:
value
,
callBack
:
()
=>
{
dispatch
({
type
:
'coursechart/queryScheduleList'
,
});
},
},
});
}
hideStudentChangeSchedule
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classdetail/updateState'
,
payload
:
{
studentChangeScheduleShow
:
false
,
selectChangeScheduleStudent
:
{},
},
});
}
toChangeScheduleStudentsizeChange
=
(
page
,
perPage
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classdetail/querystudentChangeScheduleList'
,
payload
:
{
params
:
{
page
:
1
,
perPage
,
},
},
});
}
sureChangeStudentSchedule
=
(
schedule
)
=>
{
const
{
dispatch
}
=
this
.
props
;
Modal
.
confirm
({
title
:
'您确定给该学生调课吗?'
,
centered
:
true
,
onOk
:
()
=>
{
dispatch
({
type
:
'classdetail/sureChangeStudentSchedule'
,
payload
:
{
schedule
,
},
});
},
});
}
toChangeScheduleStudentsizeChange
=
(
page
,
perPage
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classdetail/querystudentChangeScheduleList'
,
payload
:
{
params
:
{
page
:
1
,
perPage
,
},
},
});
}
changeChangeScheduleStudentPagination
=
(
page
,
perPage
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classdetail/querystudentChangeScheduleList'
,
payload
:
{
params
:
{
page
,
perPage
,
},
},
});
}
// 请假弹框
goLeaveShow
=
()
=>
{
const
{
dispatch
,
leaveNum
}
=
this
.
props
;
if
(
leaveNum
===
0
)
{
dispatch
({
type
:
'indexstaic/queryLeaveList'
,
payload
:
{
params
:
{
status
:
''
,
page
:
1
,
perPage
:
10
,
name
:
''
,
},
},
});
}
dispatch
({
type
:
'indexstaic/updateState'
,
payload
:
{
leaveVisible
:
true
,
},
});
}
createCourse
=
()
=>
{
const
{
dispatch
,
userPermission
}
=
this
.
props
;
if
(
!
btnPermission
(
userPermission
,
50000
))
{
message
.
warn
(
'暂无权限,请联系管理员开通【新增课程权限】'
,
1
);
return
;
}
dispatch
({
type
:
'course/updateState'
,
payload
:
{
editCourseModalShow
:
true
,
},
});
}
closeCourse
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'course/updateState'
,
payload
:
{
editCourseModalShow
:
false
,
editCourseInfo
:
{
id
:
0
,
school_id
:
0
,
title
:
''
,
color
:
1
,
mode_time
:
1
,
mode_interval
:
1
,
mode_class
:
1
,
rule_leave
:
1
,
rule_absent
:
1
,
},
},
});
}
saveCourse
=
(
values
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'course/courseModelAdd'
,
payload
:
{
...
values
,
type
:
'indexhref'
,
},
});
}
chooseColor
=
(
color
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'course/chooseColor'
,
payload
:
color
,
});
}
createClass
=
()
=>
{
const
{
dispatch
,
userPermission
}
=
this
.
props
;
if
(
!
btnPermission
(
userPermission
,
30001
))
{
message
.
warn
(
'暂无权限,请联系管理员开通【添加班级】'
,
1
);
return
;
}
dispatch
({
type
:
'classmgt/updateState'
,
payload
:
{
editClassModalShow
:
true
,
},
});
}
saveClass
=
(
values
,
form
)
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classmgt/saveClass'
,
payload
:
{
values
,
form
,
type
:
'indexhref'
,
// indexhref 从首页跳转
},
});
}
closeEditClassModal
=
()
=>
{
const
{
dispatch
}
=
this
.
props
;
dispatch
({
type
:
'classmgt/updateState'
,
payload
:
{
editClassModalShow
:
false
,
editClassInfo
:
{
school_id
:
''
,
course_id
:
''
,
title
:
''
,
capacity
:
''
,
total
:
''
,
expend
:
''
,
teacher_id
:
[],
class_room_id
:
''
,
remark
:
''
,
},
},
});
}
render
()
{
const
that
=
this
;
const
{
staticcenter
,
clockCharts
,
days
,
clockChartsSuccess
,
renew
,
callData
,
birthday
,
assign
,
teacherList
,
courseList
,
classroomList
,
classRoomMgtShow
,
classRoomSubmitting
,
addCourseTimeShow
,
timeArr
,
addTimeSubmitting
,
chartEndDate
,
chartStartDate
,
scheduleCount
,
courseTimeListShow
,
addOrUpdateDiaShow
,
datetime
,
studentAvator
,
cropperboxShow
,
uploadImgUrl
,
avatorUploader
,
repeatStudentShow
,
queryRepeatStudentsLoading
,
repeatStudentList
,
studentChangeScheduleShow
,
studentChangeScheduleList
,
studentChangeScheduleListLoading
,
studentChangeScheduleListTotal
,
studentChangeScheduleListQueryParams
,
leaveVisible
,
leaveTotal
,
leaveNum
,
editCourseModalShow
,
editCourseInfo
,
courseSubmiting
,
colorList
,
editClassInfo
,
editClassModalShow
,
classSubmitting
,
userPermission
,
}
=
this
.
props
;
const
studentChangeScheduleColumns
=
[
{
title
:
'上课时间'
,
dataIndex
:
'start_time'
,
key
:
'start_time'
,
render
:
(
text
,
record
,
index
)
=>
{
return
(
<
div
className
=
{
pageStyle
.
classNamebox
}
>
<
div
>
{
record
.
start_time
}
<
/div
>
<
div
>
{
record
.
end_time
}
<
/div
>
<
/div
>
);
},
},
{
title
:
'上课老师'
,
dataIndex
:
'nickname'
,
key
:
'nickname'
,
render
:
(
text
,
record
,
index
)
=>
{
return
(
<
div
>
{(
record
.
school_teacher
&&
record
.
school_teacher
.
nickname
)
||
'——'
}
<
/div
>
);
},
},
{
title
:
'上课教室'
,
dataIndex
:
'mobile'
,
key
:
'mobile'
,
render
:
(
text
,
record
,
index
)
=>
{
return
(
<
div
>
{(
record
.
class_room
&&
record
.
class_room
.
title
)
||
'——'
}
<
/div
>
);
},
},
// {
// title: '上课内容',
// dataIndex: 'content',
// key: 'content',
// render: (text, record, index) => {
// return (
// <div>
// <Tooltip title={record.content.length > 20 ? record.content : ''}>
// <div>{(record.content && record.content.substr(0, 20)) || '无'}{(record.content && record.content.length > 20) ? '...' : ''}</div>
// </Tooltip>
// </div>
// );
// },
// },
{
title
:
'操作'
,
dataIndex
:
'course'
,
key
:
'course'
,
render
:
(
text
,
record
,
index
)
=>
{
return
(
<
span
className
=
"hreflink"
onClick
=
{()
=>
this
.
sureChangeStudentSchedule
(
record
)}
>
调课
<
/span
>
);
},
},
];
return
(
<
div
className
=
{
pageStyle
.
container
}
>
<
Modal
visible
=
{
studentChangeScheduleShow
}
title
=
"调整课次"
okText
=
"确定"
onCancel
=
{
this
.
hideStudentChangeSchedule
}
onOk
=
{()
=>
{}}
width
=
{
912
}
footer
=
{
null
}
>
<
Row
>
<
Table
rowKey
=
"id"
dataSource
=
{
studentChangeScheduleList
}
columns
=
{
studentChangeScheduleColumns
}
loading
=
{
studentChangeScheduleListLoading
}
scroll
=
{{
x
:
'max-content'
}}
pagination
=
{
false
}
footer
=
{()
=>
(
<
div
className
=
"tablefooterbox"
>
<
span
className
=
"tablefooterstatic"
>
共
{
studentChangeScheduleListTotal
}
条数据
<
/span
>
<
Pagination
showSizeChanger
showQuickJumper
onShowSizeChange
=
{
this
.
toChangeScheduleStudentsizeChange
}
total
=
{
Number
(
studentChangeScheduleListTotal
)}
onChange
=
{
this
.
changeChangeScheduleStudentPagination
}
current
=
{
Number
(
studentChangeScheduleListQueryParams
.
page
)
||
1
}
pageSize
=
{
studentChangeScheduleListQueryParams
.
perPage
}
/
>
<
/div
>
)}
/
>
<
/Row
>
<
/Modal
>
<
ClassRoomMgt
visible
=
{
classRoomMgtShow
}
classroomList
=
{
classroomList
}
classRoomSubmitting
=
{
classRoomSubmitting
}
close
=
{
this
.
closeroomMgt
}
addClassRoom
=
{
this
.
addClassRoom
}
delClassroom
=
{
this
.
delClassroom
}
/
>
<
PlanCourse
classroomList
=
{
classroomList
}
classroomMgt
=
{
this
.
classroomMgt
}
addCourseTime
=
{
this
.
addCourseTime
}
saveSubmit
=
{
this
.
plancoursesaveSubmit
}
manageCourseTime
=
{
this
.
manageCourseTime
}
teacherList
=
{
teacherList
}
timeArr
=
{
timeArr
}
/
>
<
AddCourseTime
visible
=
{
addCourseTimeShow
}
saveCourseTime
=
{
this
.
saveCourseTime
}
close
=
{
this
.
closeAddCourseTime
}
addTimeSubmitting
=
{
addTimeSubmitting
}
/
>
<
CourseTimeList
visible
=
{
courseTimeListShow
}
close
=
{
this
.
closeCourseTimeList
}
timeArr
=
{
timeArr
}
delTime
=
{
this
.
delTime
}
addCourseTime
=
{
this
.
addCourseTime
}
/
>
<
div
className
=
{
pageStyle
.
topbox
}
>
<
Row
gutter
=
{
24
}
>
<
Col
xs
=
{{
span
:
24
}}
sm
=
{{
span
:
24
}}
lg
=
{{
span
:
24
}}
xl
=
{{
span
:
16
}}
md
=
{{
span
:
24
}}
>
<
div
className
=
{
pageStyle
.
staticcard
}
>
<
div
className
=
{
pageStyle
.
cardtitle
}
>
<
span
>
机构数据
<
/span
>
<
/div
>
<
div
className
=
{
pageStyle
.
staticitembox
}
>
<
div
className
=
{
pageStyle
.
staticitem
}
>
<
div
className
=
{
pageStyle
.
staticname
}
><
img
className
=
{
pageStyle
.
staticicon
}
src
=
{
`
${
__IMGCDN__
}
index/index_icon1.png`
}
alt
=
""
/>
机构学生
<
/div
>
<
div
className
=
{
pageStyle
.
statictotal
}
style
=
{{
width
:
'55%'
}}
>
{
staticcenter
.
student_total
||
0
}
<
span
className
=
{
pageStyle
.
statictip
}
>
人
<
/span></
div
>
<
/div
>
<
div
className
=
{
pageStyle
.
staticitem
}
>
<
div
className
=
{
pageStyle
.
staticname
}
><
img
className
=
{
pageStyle
.
staticicon
}
src
=
{
`
${
__IMGCDN__
}
index/index_icon2.png`
}
alt
=
""
/>
本月消课
<
/div
>
<
div
className
=
{
pageStyle
.
statictotal
}
style
=
{{
width
:
'62%'
}}
>
{
staticcenter
.
expend_count
||
0
}
<
span
className
=
{
pageStyle
.
statictip
}
>
课时
<
/span></
div
>
<
/div
>
<
div
className
=
{
pageStyle
.
staticitem
}
>
<
div
className
=
{
pageStyle
.
staticname
}
><
img
className
=
{
pageStyle
.
staticicon
}
src
=
{
`
${
__IMGCDN__
}
index/index_icon3.png`
}
alt
=
""
/>
本月授课
<
/div
>
<
div
className
=
{
pageStyle
.
statictotal
}
style
=
{{
width
:
'58%'
}}
>
{
staticcenter
.
call_count
||
0
}
<
span
className
=
{
pageStyle
.
statictip
}
>
节
<
/span></
div
>
<
/div
>
<
div
className
=
{
pageStyle
.
staticitem
}
>
<
div
className
=
{
pageStyle
.
staticname
}
><
img
className
=
{
pageStyle
.
staticicon
}
src
=
{
`
${
__IMGCDN__
}
index/index_icon4.png`
}
alt
=
""
/>
本月新生
<
/div
>
<
div
className
=
{
pageStyle
.
statictotal
}
style
=
{{
width
:
'58%'
}}
>
{
staticcenter
.
student_month_count
||
0
}
<
span
className
=
{
pageStyle
.
statictip
}
>
人
<
/span></
div
>
<
/div
>
<
/div
>
<
/div
>
<
div
className
=
{
pageStyle
.
staticcard
}
>
<
div
className
=
{
pageStyle
.
cardtitle
}
>
<
span
>
打卡数据
<
/span
>
<
/div
>
<
div
className
=
{
pageStyle
.
staticitembox
}
>
<
div
className
=
{
pageStyle
.
staticitem
}
>
<
div
className
=
{
pageStyle
.
staticname
}
><
img
className
=
{
pageStyle
.
staticicon
}
src
=
{
`
${
__IMGCDN__
}
index/index_icon5.png`
}
alt
=
""
/>
打卡数
&
nbsp
;
&
nbsp
;
&
nbsp
;
&
nbsp
;
&
nbsp
;
&
nbsp
;
&
nbsp
;
&
nbsp
;
&
nbsp
;
&
nbsp
;
&
nbsp
;
<
/div
>
<
div
className
=
{
pageStyle
.
statictotal
}
>
{
staticcenter
.
clock_count
||
0
}
<
span
className
=
{
pageStyle
.
statictip
}
>
次
<
/span></
div
>
<
/div
>
<
div
className
=
{
pageStyle
.
staticitem
}
>
<
div
className
=
{
pageStyle
.
staticname
}
><
img
className
=
{
pageStyle
.
staticicon
}
src
=
{
`
${
__IMGCDN__
}
index/index_icon6.png`
}
alt
=
""
/>
昨日新增学员
<
/div
>
<
div
className
=
{
pageStyle
.
statictotal
}
>
{
staticcenter
.
yestday_student_count
||
0
}
<
span
className
=
{
pageStyle
.
statictip
}
>
人
<
/span></
div
>
<
/div
>
<
div
className
=
{
pageStyle
.
staticitem
}
>
<
div
className
=
{
pageStyle
.
staticname
}
><
img
className
=
{
pageStyle
.
staticicon
}
src
=
{
`
${
__IMGCDN__
}
index/index_icon7.png`
}
alt
=
""
/>
昨日新增未点评
<
/div
>
<
div
className
=
{
pageStyle
.
statictotal
}
>
{
staticcenter
.
yesterday_no_review
||
0
}
<
span
className
=
{
pageStyle
.
statictip
}
>
条
<
/span></
div
>
<
/div
>
<
/div
>
<
/div
>
<
/Col
>
{
hasBtnPower
(
'sjd/indexstaic'
,
'planSchedule'
)
&&
<
Col
xs
=
{{
span
:
24
}}
sm
=
{{
span
:
24
}}
lg
=
{{
span
:
24
}}
xl
=
{{
span
:
8
}}
md
=
{{
span
:
24
}}
>
<
div
className
=
{
pageStyle
.
makebox
}
>
<
div
className
=
{
pageStyle
.
cardtitle
}
>
<
span
>
工作台
<
/span
>
<
/div
>
<
div
className
=
{
pageStyle
.
makeitembox
}
>
<
div
className
=
{
pageStyle
.
makeitem
}
onClick
=
{
this
.
createTheme
}
>
<
div
className
=
{
pageStyle
.
makeitemLeft
}
>
<
div
className
=
{
`
${
pageStyle
.
themeicon
}
${
pageStyle
.
themeiconb
}
`
}
>
<
img
src
=
{
`
${
__IMGCDN__
}
index/theme_1.png`
}
alt
=
""
/>
<
/div
>
<
div
className
=
{
pageStyle
.
themetypename
}
>
新建作业打卡
<
/div
>
<
/div
>
<
/div
>
<
div
className
=
{
pageStyle
.
makeitem
}
onClick
=
{
this
.
createCalendarTheme
}
>
<
div
className
=
{
pageStyle
.
makeitemLeft
}
>
<
div
className
=
{
`
${
pageStyle
.
themeicon
}
${
pageStyle
.
themeicona
}
`
}
>
<
img
src
=
{
`
${
__IMGCDN__
}
index/theme_2.png`
}
alt
=
""
/>
<
/div
>
<
div
className
=
{
pageStyle
.
themetypename
}
>
新建日历打卡
<
/div
>
<
/div
>
<
/div
>
<
div
className
=
{
pageStyle
.
makeitem
}
onClick
=
{
this
.
createUnlockTheme
}
>
<
div
className
=
{
pageStyle
.
makeitemLeft
}
>
<
div
className
=
{
`
${
pageStyle
.
themeicon
}
${
pageStyle
.
themeiconc
}
`
}
>
<
img
src
=
{
`
${
__IMGCDN__
}
index/theme_3.png`
}
alt
=
""
/>
<
/div
>
<
div
className
=
{
pageStyle
.
themetypename
}
>
新建闯关打卡
<
/div
>
<
/div
>
<
/div
>
<
div
className
=
{
pageStyle
.
makeitem
}
onClick
=
{()
=>
this
.
setModal1Visible
(
true
)}
>
<
div
className
=
{
pageStyle
.
makeitemLeft
}
>
<
div
className
=
{
`
${
pageStyle
.
themeicon
}
${
pageStyle
.
themeiconc
}
`
}
>
<
img
src
=
{
`
${
__IMGCDN__
}
index/theme_4.png`
}
alt
=
""
/>
<
/div
>
<
div
className
=
{
pageStyle
.
themetypename
}
>
学员报名
<
/div
>
<
/div
>
<
/div
>
<
div
className
=
{
pageStyle
.
makeitem
}
onClick
=
{
this
.
createClass
}
>
<
div
className
=
{
pageStyle
.
makeitemLeft
}
>
<
div
className
=
{
`
${
pageStyle
.
themeicon
}
${
pageStyle
.
themeiconc
}
`
}
>
<
img
src
=
{
`
${
__IMGCDN__
}
index/theme_5.png`
}
alt
=
""
/>
<
/div
>
<
div
className
=
{
pageStyle
.
themetypename
}
>
新建班级
<
/div
>
<
/div
>
<
/div
>
<
div
className
=
{
pageStyle
.
makeitem
}
onClick
=
{
this
.
createCourse
}
>
<
div
className
=
{
pageStyle
.
makeitemLeft
}
>
<
div
className
=
{
`
${
pageStyle
.
themeicon
}
${
pageStyle
.
themeiconc
}
`
}
>
<
img
src
=
{
`
${
__IMGCDN__
}
index/theme_6.png`
}
alt
=
""
/>
<
/div
>
<
div
className
=
{
pageStyle
.
themetypename
}
>
新建课程
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/Col
>
}
<
/Row
>
{
hasBtnPower
(
'sjd/indexstaic'
,
'planSchedule'
)
&&
<
Card
className
=
{
pageStyle
.
informList
}
bodyStyle
=
{{
borderRadius
:
6
,
padding
:
'36px 0'
}}
bordered
=
{
false
}
>
<
Row
gutter
=
{
24
}
>
<
Col
xs
=
{{
span
:
8
,
offset
:
0
}}
sm
=
{{
span
:
8
,
offset
:
0
}}
md
=
{{
span
:
4
,
offset
:
1
}}
lg
=
{{
span
:
4
,
offset
:
0
}}
xl
=
{{
span
:
4
,
offset
:
0
}}
>
<
div
className
=
{
pageStyle
.
informItem
}
onClick
=
{
this
.
goCallStudent
}
>
<
div
className
=
{
pageStyle
.
informImg
}
id
=
"index_callwarn"
><
img
src
=
{
`
${
__IMGCDN__
}
index/inform_icon2.png`
}
alt
=
""
/>
<
Badge
className
=
{
pageStyle
.
informNum
}
overflowCount
=
{
999
}
count
=
{
callData
.
total
}
>
<
/Badge
>
<
/div
>
<
div
className
=
{
pageStyle
.
informTip
}
>
点名提醒
<
/div
>
<
/div
>
<
/Col
>
{
btnPermission
(
userPermission
,
2
)
&&
<
Col
xs
=
{{
span
:
8
,
offset
:
0
}}
sm
=
{{
span
:
8
,
offset
:
0
}}
md
=
{{
span
:
4
,
offset
:
1
}}
lg
=
{{
span
:
4
,
offset
:
1
}}
xl
=
{{
span
:
4
,
offset
:
1
}}
>
<
div
className
=
{
pageStyle
.
informItem
}
onClick
=
{
this
.
goPlanStudent
}
>
<
div
className
=
{
pageStyle
.
informImg
}
id
=
"index_planwarn"
><
img
src
=
{
`
${
__IMGCDN__
}
index/inform_icon3.png`
}
alt
=
""
/>
<
Badge
className
=
{
pageStyle
.
informNum
}
overflowCount
=
{
999
}
count
=
{
assign
.
total
}
>
<
/Badge
>
<
/div
>
<
div
className
=
{
pageStyle
.
informTip
}
>
分配提醒
<
/div
>
<
/div
>
<
/Col
>
}
{
btnPermission
(
userPermission
,
2
)
&&
<
Col
xs
=
{{
span
:
8
,
offset
:
0
}}
sm
=
{{
span
:
8
,
offset
:
0
}}
md
=
{{
span
:
4
,
offset
:
1
}}
lg
=
{{
span
:
4
,
offset
:
1
}}
xl
=
{{
span
:
4
,
offset
:
1
}}
>
<
div
className
=
{
pageStyle
.
informItem
}
onClick
=
{
this
.
goBirthStudent
}
>
<
div
className
=
{
pageStyle
.
informImg
}
id
=
"index_birthwarn"
><
img
src
=
{
`
${
__IMGCDN__
}
index/inform_icon4.png`
}
alt
=
""
/>
<
Badge
className
=
{
pageStyle
.
informNum
}
overflowCount
=
{
999
}
count
=
{
birthday
.
total
}
>
<
/Badge
>
<
/div
>
<
div
className
=
{
pageStyle
.
informTip
}
>
生日提醒
<
/div
>
<
/div
>
<
/Col
>
}
<
Col
xs
=
{{
span
:
8
,
offset
:
0
}}
sm
=
{{
span
:
8
,
offset
:
0
}}
md
=
{{
span
:
4
,
offset
:
1
}}
lg
=
{{
span
:
4
,
offset
:
1
}}
xl
=
{{
span
:
4
,
offset
:
1
}}
>
<
div
className
=
{
pageStyle
.
informItem
}
onClick
=
{
this
.
goLeaveShow
}
>
<
div
className
=
{
pageStyle
.
informImg
}
id
=
"index_paywarn"
><
img
src
=
{
`
${
__IMGCDN__
}
index/inform_icon6.png`
}
alt
=
""
/>
<
Badge
className
=
{
pageStyle
.
informNum
}
overflowCount
=
{
999
}
count
=
{
leaveNum
}
>
<
/Badge
>
<
/div
>
<
div
className
=
{
pageStyle
.
informTip
}
>
请假提醒
<
/div
>
<
/div
>
<
/Col
>
{
btnPermission
(
userPermission
,
2
)
&&
<
Col
xs
=
{{
span
:
8
,
offset
:
0
}}
sm
=
{{
span
:
8
,
offset
:
0
}}
md
=
{{
span
:
4
,
offset
:
1
}}
lg
=
{{
span
:
4
,
offset
:
1
}}
xl
=
{{
span
:
4
,
offset
:
1
}}
>
<
div
className
=
{
pageStyle
.
informItem
}
onClick
=
{
this
.
goDeadlineStudent
}
>
<
div
className
=
{
pageStyle
.
informImg
}
id
=
"index_paywarn"
><
img
src
=
{
`
${
__IMGCDN__
}
index/inform_icon5.png`
}
alt
=
""
/>
<
Badge
className
=
{
pageStyle
.
informNum
}
overflowCount
=
{
999
}
count
=
{
renew
.
total
}
>
<
/Badge
>
<
/div
>
<
div
className
=
{
pageStyle
.
informTip
}
>
续费提醒
<
/div
>
<
/div
>
<
/Col
>
}
<
/Row
>
<
/Card
>
}
<
/div
>
<
Row
gutter
=
{
24
}
>
<
Col
span
=
{
24
}
>
<
div
className
=
{
pageStyle
.
Schedulebox
}
>
<
CourseChart
changeSchedule
=
{
this
.
changeSchedule
}
teacherList
=
{
teacherList
}
goPlanCourse
=
{
this
.
goPlanCourse
}
toCallStudent
=
{
this
.
toCallStudent
}
toEditCallStudents
=
{
this
.
toEditCallStudents
}
/
>
<
/div
>
<
/Col
>
<
/Row
>
<
StudentAdd
visible
=
{
addOrUpdateDiaShow
}
save
=
{
this
.
saveStudent
}
datetime
=
{
datetime
}
hide
=
{()
=>
this
.
setModal1Visible
(
false
)}
uploadAvator
=
{
this
.
uploadStudentAvator
}
studentAvator
=
{
studentAvator
}
/
>
{
cropperboxShow
&&
<
Cropper
avatorUploader
=
{
this
.
state
.
avatorUploader
}
cancelCropper
=
{
this
.
cancelCropper
}
getCropperUrl
=
{
this
.
getCropperUrl
}
sureCropper
=
{
this
.
sureCropper
}
uploadImgUrl
=
{
uploadImgUrl
}
/>
}
<
RepeatStudent
visible
=
{
repeatStudentShow
}
onCancel
=
{
this
.
cancelAddRepeatStudent
}
onOk
=
{
this
.
sureAddRepeatStudent
}
loading
=
{
queryRepeatStudentsLoading
}
dataSource
=
{
repeatStudentList
}
/
>
{
/* <AddCourseTime */
}
{
/* visible={addCourseTimeShow} */
}
{
/* saveCourseTime={this.saveCourseTime} */
}
{
/* close={this.closeAddCourseTime} */
}
{
/* timeArr={timeArr} */
}
{
/* addTimeSubmitting={addTimeSubmitting} */
}
{
/* delTime={this.delTime} */
}
{
/* /> */
}
<
ChangeCourse
{...
this
.
props
}
scheduleStudentsizeChange
=
{
this
.
scheduleStudentsizeChange
}
changeScheduleStudentPagination
=
{
this
.
changeScheduleStudentPagination
}
closeChangeSchedule
=
{
this
.
closeChangeSchedule
}
onChangeScheduleIndex
=
{
this
.
onChangeScheduleIndex
}
changeStudentSchedule
=
{
this
.
changeStudentSchedule
}
sureAdjustCourse
=
{
this
.
sureAdjustCourse
}
timeArr
=
{
timeArr
}
/
>
<
CallStudents
callBack
=
{
this
.
saveCallStudents
}
/
>
<
StudentLeaveModal
visible
=
{
leaveVisible
}
/
>
<
AddCourseModal
visible
=
{
editCourseModalShow
}
courseSubmiting
=
{
courseSubmiting
}
colorList
=
{
colorList
}
editCourseInfo
=
{
editCourseInfo
}
isEdit
close
=
{
this
.
closeCourse
}
save
=
{
this
.
saveCourse
}
chooseColor
=
{
this
.
chooseColor
}
/
>
<
EditClassModal
editClassInfo
=
{
editClassInfo
}
wrappedComponentRef
=
{
this
.
saveFormRef
}
visible
=
{
editClassModalShow
}
classroomMgt
=
{
this
.
classroomMgt
}
close
=
{
this
.
closeEditClassModal
}
save
=
{
this
.
saveClass
}
classSubmitting
=
{
classSubmitting
}
courseList
=
{
courseList
}
teacherList
=
{
teacherList
}
classroomList
=
{
classroomList
}
isEdit
=
{
2
}
/
>
<
/div
>
);
}
}
StaticCenter
.
propTypes
=
{
};
function
mapStateToProps
(
state
)
{
const
{
staticcenter
,
clockCharts
,
sid
,
days
,
clockChartsSuccess
,
renew
,
callData
,
birthday
,
assign
,
teacherList
,
courseList
,
classroomList
,
classRoomMgtShow
,
classRoomSubmitting
,
addCourseTimeShow
,
timeArr
,
addTimeSubmitting
,
chartEndDate
,
chartStartDate
,
scheduleCount
,
courseTimeListShow
,
datetime
,
leaveVisible
,
leaveTotal
,
leaveNum
,
}
=
state
.
indexstaic
;
// eslint-disable-next-line no-empty-pattern
const
{}
=
state
.
createtheme
;
const
{
cropperboxShow
,
uploadImgUrl
,
avatorUploader
,
}
=
state
.
uploader
;
const
{
addOrUpdateDiaShow
,
studentAvator
,
repeatStudentShow
,
queryRepeatStudentsLoading
,
repeatStudentList
,
}
=
state
.
students
;
const
{
changeScheduleShow
,
changeScheduleIndex
,
selectScheduleinfo
,
scheduleStudentTotal
,
scheduleStudentList
,
scheduleStudentListLoading
,
queryScheduleStudentListParams
,
scheduleUpdateSubmitting
,
studentChangeScheduleShow
,
studentChangeScheduleList
,
studentChangeScheduleListLoading
,
studentChangeScheduleListTotal
,
studentChangeScheduleListQueryParams
,
}
=
state
.
classdetail
;
const
{
schoolUserInfo
,
userPermission
,
}
=
state
.
webapp
;
const
{
guideShow
,
}
=
state
.
userguide
;
const
{
editCourseModalShow
,
editCourseInfo
,
courseSubmiting
,
colorList
,
}
=
state
.
course
;
const
{
editClassInfo
,
editClassModalShow
,
classSubmitting
,
}
=
state
.
classmgt
;
const
{
rulePlanDetail
,
}
=
state
.
plancourse
;
return
{
staticcenter
,
clockCharts
,
sid
,
days
,
clockChartsSuccess
,
renew
,
callData
,
birthday
,
assign
,
teacherList
,
courseList
,
classroomList
,
classRoomMgtShow
,
classRoomSubmitting
,
addCourseTimeShow
,
timeArr
,
addTimeSubmitting
,
chartEndDate
,
chartStartDate
,
scheduleCount
,
courseTimeListShow
,
addOrUpdateDiaShow
,
datetime
,
studentAvator
,
cropperboxShow
,
uploadImgUrl
,
avatorUploader
,
repeatStudentShow
,
queryRepeatStudentsLoading
,
repeatStudentList
,
changeScheduleShow
,
changeScheduleIndex
,
selectScheduleinfo
,
scheduleStudentTotal
,
scheduleStudentList
,
scheduleStudentListLoading
,
queryScheduleStudentListParams
,
scheduleUpdateSubmitting
,
studentChangeScheduleShow
,
studentChangeScheduleList
,
studentChangeScheduleListLoading
,
studentChangeScheduleListTotal
,
studentChangeScheduleListQueryParams
,
schoolUserInfo
,
guideShow
,
leaveVisible
,
leaveTotal
,
leaveNum
,
editCourseModalShow
,
editCourseInfo
,
courseSubmiting
,
colorList
,
editClassInfo
,
editClassModalShow
,
classSubmitting
,
rulePlanDetail
,
userPermission
,
};
}
export
default
connect
(
mapStateToProps
)(
StaticCenter
);
src/pages/index/copyindex.less
deleted
100644 → 0
View file @
c607f33d
@import '../../less/variables.less';
.topbox {
// display: flex;
// margin-bottom: 20px;
}
.staticbox {
width: 820px;
margin-right: 20px;
// height: 510px;
min-width: 410px;
}
.staticcard {
height: 147px;
background-color: #fff;
border-radius: 6px;
margin-bottom: 14px;
// &:nth-child(1) {
// }
&:nth-child(2) {
.staticitembox {
.staticitem {
.staticname {
justify-content: center;
}
}
}
}
}
.makebox {
background-color: #fff;
height: 310px;
border-radius: 6px;
}
.cardtitle {
padding: 20px 20px 10px;
display: flex;
align-items: center;
line-height: 1;
position: relative;
}
.cardtitleline {
width:4px;
height:16px;
background:rgba(25,181,254,1);
border-radius:2px;
}
.cardtitle span {
font-size:16px;
font-family:PingFang-SC-Bold;
color:rgba(0,0,0,1);
}
.staticitembox {
display: flex;
align-items: center;
justify-content: space-around;
text-align: center;
// margin-top: 60px;
}
.staticitem {
flex: 1;
justify-content: center;
align-items: center;
padding: 0 20px;
}
.statictotal {
font-size:24px;
color:rgba(0,0,0,1);
line-height: 32px;
.statictip {
font-size:14px;
color:#999999;
line-height:24px;
display: inline-block;
margin-left: 10px;
}
}
.staticname {
color: #999999;
font-size: 14px;
line-height: 22px;
margin: 10px 0;
font-family:PingFangSC;
font-weight:400;
display: flex;
align-items: center;
.staticicon {
width: 30px;
height: 30px;
margin-right: 17px;
}
}
.makeitembox {
padding: 5px 24px;
display: flex;
flex-wrap: wrap;
}
.makeitem {
cursor: pointer;
height: 70px;
border-radius:6px;
margin-bottom: 15px;
display: flex;
align-items: center;
color: #FFFFFF;
width: 48%;
.makeitemLeft {
display: flex;
align-items: center;
margin-left: 14px;
}
&:nth-child(2n+1) {
margin-right: 10px;
}
&:nth-child(1) {
background:rgba(255,184,121,1);
}
&:nth-child(1):hover {
box-shadow:0px 0px 10px 0px rgba(255,184,121,1);
}
&:nth-child(2) {
background:#63B7FF;
}
&:nth-child(2):hover {
box-shadow:0px 0px 10px 0px #63B7FF;
}
&:nth-child(3) {
background:#24CACC;
}
&:nth-child(3):hover {
box-shadow:0px 0px 10px 0px #24CACC;
}
&:nth-child(4) {
background:#50C666;
}
&:nth-child(4):hover {
box-shadow:0px 0px 10px 0px #50C666;
}
&:nth-child(5) {
background:#FFB532;
}
&:nth-child(5):hover {
box-shadow:0px 0px 10px 0px #FFB532;
}
&:nth-child(6) {
background:#FF586F;
}
&:nth-child(6):hover {
box-shadow:0px 0px 10px 0px #FF586F;
}
}
.themeicon {
img {
width: 47px;
height: 48px;
margin-right: 15px;
}
}
.themetypename {
font-size:18px;
font-weight:400;
color:#fff;
}
.chartbox {
// width: 1656px;
// min-width: 870px;
background-color: #fff;
border-radius: 2px;
padding-top: 20px;
padding-right: 52px;
height: auto;
.cardtitle {
span {
font-size:16px;
font-family:PingFangSC;
font-weight:500;
color:rgba(0,0,0,0.85);
}
}
.cardtitleline {
float: left;
}
}
.chartbox{
.cardrest{
span {
color: red;
}
}
}
.chartbox {
.cardtitlereset {
display: flex;
align-items: center;
padding: 4px 0 18px 20px;
position: relative;
width: 100%;
margin-top: -8px;
span {
font-size:16px;
font-family:PingFangSC;
font-weight:500;
color:rgba(0,0,0,0.85);
}
}
}
.informList {
border-radius: 6px;
margin-bottom: 14px;
.informItem {
cursor: pointer;
text-align: center;
.informImg {
width: 77px;
height: 77px;
position: relative;
margin: 0 auto;
margin-bottom: 3px;
&>img {
width: 77px;
height: 77px;
}
.informNum {
position: absolute;
top: 0;
right: -10px;
}
}
.informTip {
font-size:18px;
font-weight:500;
color:#515558;
line-height:1;
margin-top: 28px;
}
}
}
@media (min-width: 1680px) {
.chartbox {
.cardtitlereset {
position: absolute;
}
}
}
.staticcolorbox {
display: flex;
// position: absolute;
// right: 0;
//float: right;
z-index: 2;
}
.staticchartcolor {
width: 53px;
height: 9px;
border-radius: 5px;
&.blue {
background-color: #63B7FF;
}
&.orange {
background-color: #FFB879;
}
&.green {
background-color: #24CACC;
}
}
.staticchartitem {
display: flex;
align-items: center;
justify-content: center;
padding-left: 20px;
}
.staticchartname {
font-size: 20px;
color: #000000;
padding-left: 23px;
}
.chartdayshift {
display: flex;
margin-left: 30px;
cursor: pointer;
// position: absolute;
// right: 0;
}
.dayshift {
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
font-weight: 400;
letter-spacing: 1px;
font-family:PingFangSC;
color: #595959;
margin-right: 24px;
&:first-child {
border-right: none;
border-radius: 10px 0 0 10px;
}
&:last-child {
border-left: none;
border-radius: 0 10px 10px 0;
}
&.tabactive {
color: #1890FF;
}
}
.chartcontent {
width: 100%;
//height: 400px;
display: flex;
align-items: center;
justify-content: center;
color: red;
font-size: 20px;
}
.chartcontentfail {
width: 100%;
height: 100px;
display: flex;
align-items: center;
justify-content: center;
color: red;
font-size: 20px;
}
.todoitem{
background: #fff;
//width: 375px;
.items{
padding: 15px 0 20px 40px;
margin-bottom: 20px;
}
.cardtitle {
padding: 16px 0 14px 20px;
display: flex;
align-items: center;
line-height: 1;
position: relative;
border-bottom: solid 1px rgba(233,233,233,1);
}
.renew{
margin-bottom: 16px;
cursor: pointer;
span{
padding: 0 8px;
background:rgba(255,255,255,1);
border-radius:3px;
border:1px solid rgba(255,24,24,1);
color: #FF1818;
margin-right: 8px;
cursor: pointer;
}
}
.renew:hover {
color:rgba(24,144,255,1);
}
.birthday{
margin-bottom: 16px;
cursor: pointer;
span{
padding: 0 8px;
background:rgba(255,255,255,1);
border-radius:3px;
border:1px solid rgba(24,144,255,1);
margin-right: 8px;
color: #1890FF;
}
}
.birthday:hover {
color:rgba(24,144,255,1);
}
}
.Schedulebox{
// height: 1000px;
background: #fff;
margin-bottom: 20px;
border-radius: 6px;
}
.rangePicker {
width: 350px;
}
@media (max-width: 510px) {
.staticitem {
padding: 0;
}
.chartbox {
.cardtitlereset {
display: block;
}
.chartdayshift {
margin-left: 0;
margin-top: 10px;
}
}
}
@media screen and (min-width: 1200px) and (max-width: 1920px) {
.topbox {
:global {
.ant-col-xl-8 {
padding-left: 2px !important;
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment