标准答案图片路径
@@ -1029,9 +1033,9 @@ export default class TPMevaluation extends Component {
value={shixunfilepicturepath}
onInput={(e)=>this.updatepath(e,"shixunfilepicturepath",2)}
onClick={(e)=>this.getfilepath(e,"shixunfilepicturepath",2)}
- placeholder="请在版本库中指定用来保存学员代码实际输出结果的路径。例:src/step1/outputimages"/>
+ placeholder="请在版本库中指定用来保存学员代码实际输出结果的路径。例:src/step1/outputfiles"/>
- 学员评测本关任务时生成的文件将保存在该路径下,并作为实际输出显示在查看效果页,供学员确认任务输出结果为文件时请指定该路径,并注意与程序文件所在文件夹分开
+ 学员评测本关任务时生成的文件将保存在该路径下,并作为实际输出显示在查看效果页,供学员确认;任务输出结果为文件时请指定该路径,并注意与程序文件所在文件夹分开。
@@ -1066,16 +1070,16 @@ export default class TPMevaluation extends Component {
-
- 系统评分占比:
-
- 均分比例
- 自定义比例
-
-
+
+ 系统评分占比:
+
+ 均分比例
+ 自定义比例
+
+
From 2e889a74e56189c9077fa443a2a267df9cba4a22 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Wed, 31 Jul 2019 11:20:32 +0800
Subject: [PATCH 04/74] =?UTF-8?q?=E6=97=B6=E9=97=B4=E6=8E=A7=E5=88=B6?=
=?UTF-8?q?=E8=B0=83=E6=95=B4=EF=BC=8C=E4=B8=8D=E8=83=BD=E9=80=89=E4=BB=8A?=
=?UTF-8?q?=E5=A4=A9=E4=B9=8B=E5=89=8D=E7=9A=84=E6=97=B6=E9=97=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../modules/courses/coursesPublic/HomeworkModal.js | 11 ++++++++++-
.../modules/courses/coursesPublic/SelectSetting.js | 8 +++++++-
.../src/modules/courses/coursesPublic/sendResource.js | 8 +++++++-
.../src/modules/courses/exercise/Exercisesetting.js | 8 ++++++++
.../graduation/tasks/GraduationTaskssetting.js | 9 +++++++++
public/react/src/modules/courses/new/CoursesNew.js | 4 ++++
.../modules/courses/poll/PollDetailTabForthRules.js | 8 ++++++++
.../courses/shixunHomework/Trainingjobsetting.js | 6 ++++++
.../react/src/modules/tpm/TPMsettings/TPMsettings.js | 7 ++++++-
public/react/src/modules/tpm/newshixuns/Newshixuns.js | 8 +++++---
10 files changed, 70 insertions(+), 7 deletions(-)
diff --git a/public/react/src/modules/courses/coursesPublic/HomeworkModal.js b/public/react/src/modules/courses/coursesPublic/HomeworkModal.js
index 440d8893c..deb329fb9 100644
--- a/public/react/src/modules/courses/coursesPublic/HomeworkModal.js
+++ b/public/react/src/modules/courses/coursesPublic/HomeworkModal.js
@@ -20,6 +20,14 @@ function disabledDateTime() {
// disabledSeconds: () => [55, 56],
};
}
+
+
+function disabledDate(current) {
+ return current && current < moment().endOf('day').subtract(1, 'days');
+}
+
+
+
class HomeworkModal extends Component{
constructor(props){
super(props);
@@ -81,7 +89,7 @@ class HomeworkModal extends Component{
// console.log('startValue',dateString);
this.setState({
- endtime: handleDateString(dateString),
+ endtime: date===null?"":handleDateString(dateString),
})
}
@@ -188,6 +196,7 @@ class HomeworkModal extends Component{
dropdownClassName="hideDisable"
showTime={{ format: 'HH:mm' }}
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
showToday={false}
locale={locale}
format={dateFormat}
diff --git a/public/react/src/modules/courses/coursesPublic/SelectSetting.js b/public/react/src/modules/courses/coursesPublic/SelectSetting.js
index 08e01e28e..fa2e014f9 100644
--- a/public/react/src/modules/courses/coursesPublic/SelectSetting.js
+++ b/public/react/src/modules/courses/coursesPublic/SelectSetting.js
@@ -16,12 +16,17 @@ function range(start, end) {
}
return result;
}
+
function disabledDateTime() {
return {
disabledMinutes: () => range(1, 30).concat(range(31, 60)),
// disabledSeconds: () => range(1,60)
}
}
+
+function disabledDate(current) {
+ return current && current < moment().endOf('day').subtract(1, 'days');
+}
class Selectsetting extends Component{
constructor(props){
super(props);
@@ -698,6 +703,7 @@ class Selectsetting extends Component{
onChange={(e,index)=>this.onChangeTimepublishs(e,index,key)}
// onChange={ this.onChangeTimepublish }
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
/>
{key!=0?
this.deletegrouppublish(key)}>:""}
@@ -730,7 +736,7 @@ class Selectsetting extends Component{
value={datatime===undefined||datatime===""?"":moment(datatime, dateFormat)}
onChange={this.onChangeTimepublish}
disabledTime={disabledDateTime}
-
+ disabledDate={disabledDate}
/>
:""}
diff --git a/public/react/src/modules/courses/coursesPublic/sendResource.js b/public/react/src/modules/courses/coursesPublic/sendResource.js
index 397711ca3..8443061dd 100644
--- a/public/react/src/modules/courses/coursesPublic/sendResource.js
+++ b/public/react/src/modules/courses/coursesPublic/sendResource.js
@@ -22,6 +22,11 @@ function disabledDateTime() {
};
}
+function disabledDate(current) {
+ return current && current < moment().endOf('day').subtract(1, 'days');
+}
+
+
const dateFormat="YYYY-MM-DD HH:mm";
class Sendresource extends Component{
constructor(props){
@@ -525,6 +530,7 @@ class Sendresource extends Component{
onChange={(e,index)=>this.onChangeTimepublish(e,index,key,2)}
// onChange={ this.onChangeTimepublish }
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
/>
{key!=0?
this.deletegrouppublish(key)}>:""}
{key===course_group_publish_times.length-1&&key
:""}
@@ -551,7 +557,7 @@ class Sendresource extends Component{
value={datatime===undefined||datatime===""?undefined:moment(datatime, dateFormat)}
onChange={(e,index)=>this.onChangeTimepublish(e,index,undefined,1)}
disabledTime={disabledDateTime}
-
+ disabledDate={disabledDate}
/>
:""}
diff --git a/public/react/src/modules/courses/exercise/Exercisesetting.js b/public/react/src/modules/courses/exercise/Exercisesetting.js
index 9b6103fdb..a93aa9942 100644
--- a/public/react/src/modules/courses/exercise/Exercisesetting.js
+++ b/public/react/src/modules/courses/exercise/Exercisesetting.js
@@ -23,6 +23,7 @@ function range(start, end) {
}
return result;
}
+
function disabledDateTime() {
return {
// disabledHours: () => range(0, 24).splice(4, 20),
@@ -30,6 +31,11 @@ function disabledDateTime() {
// disabledSeconds: () => [0, 60],
};
}
+
+function disabledDate(current) {
+ return current && current < moment().endOf('day').subtract(1, 'days');
+}
+
const dataformat="YYYY-MM-DD HH:mm";
class Exercisesetting extends Component{
@@ -636,6 +642,7 @@ class Exercisesetting extends Component{
format="YYYY-MM-DD HH:mm"
showToday={false}
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
onChange={this.onChangeTimepublish}
value={publish_time && moment(publish_time,"YYYY-MM-DD HH:mm")}
disabled={ publish_timetype===true?true:!flagPageEdit }
@@ -661,6 +668,7 @@ class Exercisesetting extends Component{
width={"240px"}
format="YYYY-MM-DD HH:mm"
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
onChange={this.onChangeTimeEnd}
value={end_time && moment(end_time,"YYYY-MM-DD HH:mm")}
disabled={ end_timetype===true?true:!flagPageEdit}
diff --git a/public/react/src/modules/courses/graduation/tasks/GraduationTaskssetting.js b/public/react/src/modules/courses/graduation/tasks/GraduationTaskssetting.js
index 5bbbe1a14..59d3dce17 100644
--- a/public/react/src/modules/courses/graduation/tasks/GraduationTaskssetting.js
+++ b/public/react/src/modules/courses/graduation/tasks/GraduationTaskssetting.js
@@ -27,6 +27,11 @@ function disabledDateTime() {
};
}
+function disabledDate(current) {
+ return current && current < moment().endOf('day').subtract(1, 'days');
+}
+
+
class GraduationTaskssettingapp extends Component{
constructor(props){
@@ -1181,6 +1186,7 @@ class GraduationTaskssettingapp extends Component{
value={publish_time===null||publish_time===""?"":moment(publish_time, dateFormat)}
onChange={this.onChangeTimepublish}
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
disabled={this.props.isAdmin()===true?starttimetype===true?true:flagPageEdit===true?false:true:true}
className={ this.state.publishTimetypes===true?"noticeTip":""}
/>
@@ -1218,6 +1224,7 @@ class GraduationTaskssettingapp extends Component{
value={end_time===null||end_time===""?"":moment(end_time, dateFormat)}
onChange={this.onChangeTimeend}
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
// disabled={this.props.isSuperAdmin()===true?flagPageEdit===true?false:true:this.props.isAdmin()===true?endtimetype===true?true:flagPageEdit===true?false:true:true}
disabled={this.props.isAdmin()===true?endtimetype===true?true:flagPageEdit===true?false:true:true}
className={this.state.endTimetypes===true||end_timetype===true?"noticeTip":""}
@@ -1269,6 +1276,7 @@ class GraduationTaskssettingapp extends Component{
width={"210px"}
value={latetime===null||latetime===""?"":moment(latetime, dateFormat)}
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
onChange={this.onChangeTimelatetime}
disabled={this.props.isAdmin()===true?allowlate===true||allowlate===1?flagPageEdit===true?false:true:true:true}
className={ latetimetype===true?"noticeTip":""}
@@ -1319,6 +1327,7 @@ class GraduationTaskssettingapp extends Component{
width={"210px"}
value={commenttime===null||commenttime=== ""?"":moment(commenttime, dateFormat)}
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
onChange={this.onChangeTimecommenttime}
disabled={this.props.isAdmin()===true?flagPageEdit===true?false:true:true}
className={ commenttimetype===true?"noticeTip":""}
diff --git a/public/react/src/modules/courses/new/CoursesNew.js b/public/react/src/modules/courses/new/CoursesNew.js
index b817136ed..c5602d285 100644
--- a/public/react/src/modules/courses/new/CoursesNew.js
+++ b/public/react/src/modules/courses/new/CoursesNew.js
@@ -28,6 +28,9 @@ function disabledDateTime() {
};
}
+function disabledDate(current) {
+ return current && current < moment().endOf('day').subtract(1, 'days');
+}
class CoursesNew extends Component {
@@ -572,6 +575,7 @@ class CoursesNew extends Component {
width={"210px"}
value={datatime === undefined ? "" :datatime === null ? "" : moment(datatime, dateFormat)}
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
dropdownClassName="hideDisable"
onChange={this.onChangeTimepublishs}
/>
diff --git a/public/react/src/modules/courses/poll/PollDetailTabForthRules.js b/public/react/src/modules/courses/poll/PollDetailTabForthRules.js
index 292830fb8..8b62dd5e4 100644
--- a/public/react/src/modules/courses/poll/PollDetailTabForthRules.js
+++ b/public/react/src/modules/courses/poll/PollDetailTabForthRules.js
@@ -26,6 +26,12 @@ function disabledDateTime() {
// disabledSeconds: () => range(1,60)
}
}
+
+function disabledDate(current) {
+ return current && current < moment().endOf('day').subtract(1, 'days');
+}
+
+
class PollDetailTabForthRules extends Component{
constructor(props){
super(props);
@@ -404,6 +410,7 @@ class PollDetailTabForthRules extends Component{
showTime={{ format: 'HH:mm' }}
format="YYYY-MM-DD HH:mm"
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
disabled={ rule.e_timeflag ===undefined?rule.publish_time===null?false:!flagPageEdit:rule.p_timeflag == true ? true : !flagPageEdit}
style={{"height":"42px",width:'100%'}}
>
@@ -429,6 +436,7 @@ class PollDetailTabForthRules extends Component{
showTime={{ format: 'HH:mm' }}
format="YYYY-MM-DD HH:mm"
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
disabled={ rule.e_timeflag ===undefined?rule.publish_time===null?false:!flagPageEdit:rule.e_timeflag == true ? true : !flagPageEdit}
style={{"height":"42px"}}
>
diff --git a/public/react/src/modules/courses/shixunHomework/Trainingjobsetting.js b/public/react/src/modules/courses/shixunHomework/Trainingjobsetting.js
index b07392153..21f03a819 100644
--- a/public/react/src/modules/courses/shixunHomework/Trainingjobsetting.js
+++ b/public/react/src/modules/courses/shixunHomework/Trainingjobsetting.js
@@ -47,6 +47,9 @@ function disabledDateTime() {
}
}
+function disabledDate(current) {
+ return current && current < moment().endOf('day').subtract(1, 'days');
+}
class Trainingjobsetting extends Component {
//unifiedsetting 统一设置
@@ -1935,6 +1938,7 @@ class Trainingjobsetting extends Component {
id={"publishtimeid"}
disabledDate={this.disabledStartDatestart}
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
className={borreds}
showTime={{ format: 'HH:mm' }}
format="YYYY-MM-DD HH:mm"
@@ -1967,6 +1971,7 @@ class Trainingjobsetting extends Component {
showToday={false}
id={"end_timeid"}
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
showTime={{ format: 'HH:mm' }}
className={borredss}
format="YYYY-MM-DD HH:mm"
@@ -2049,6 +2054,7 @@ class Trainingjobsetting extends Component {
showToday={false}
id={"late_timeid"}
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
format="YYYY-MM-DD HH:mm"
value={late_time && moment(late_time, dataformat)}
onChange={this.onEndChangeys}
diff --git a/public/react/src/modules/tpm/TPMsettings/TPMsettings.js b/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
index 8eb2c76dd..bb318ba13 100644
--- a/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
+++ b/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
@@ -199,6 +199,10 @@ function disabledDateTime() {
// disabledSeconds: () => [0, 60],
};
}
+
+function disabledDate(current) {
+ return current && current < moment().endOf('day').subtract(1, 'days');
+}
export default class TPMsettings extends Component {
constructor(props) {
super(props)
@@ -1144,7 +1148,7 @@ export default class TPMsettings extends Component {
}
onChangeTimePicker =(value, dateString)=> {
this.setState({
- opening_time:moment(handleDateStrings(dateString))
+ opening_time: dateString=== ""?"":moment(handleDateStrings(dateString))
})
}
@@ -1871,6 +1875,7 @@ export default class TPMsettings extends Component {
width={178}
locale={locale}
disabledTime={disabledDateTime}
+ disabledDate={disabledDate}
placeholder="请选择开启时间"
value={opening_time===null||opening_time===""?"":moment(opening_time, dateFormat)}
onChange={this.onChangeTimePicker}
diff --git a/public/react/src/modules/tpm/newshixuns/Newshixuns.js b/public/react/src/modules/tpm/newshixuns/Newshixuns.js
index f9c8f5b10..790402a22 100644
--- a/public/react/src/modules/tpm/newshixuns/Newshixuns.js
+++ b/public/react/src/modules/tpm/newshixuns/Newshixuns.js
@@ -191,7 +191,9 @@ function disabledDateTime() {
};
}
-
+function disabledDate(current) {
+ return current && current < moment().endOf('day').subtract(1, 'days');
+}
class Newshixuns extends Component {
constructor(props) {
super(props)
@@ -743,7 +745,7 @@ class Newshixuns extends Component {
onChangeTimePicker = (value, dateString) => {
this.setState({
- TimePickervalue: moment(handleDateStrings(dateString))
+ TimePickervalue: dateString=== ""?"":moment(handleDateStrings(dateString))
})
}
@@ -1288,7 +1290,7 @@ class Newshixuns extends Component {
placeholder="请选择开启时间"
onChange={this.onChangeTimePicker}
value={TimePickervalue && moment(TimePickervalue, "YYYY-MM-DD HH:mm")}
-
+ disabledDate={disabledDate}
disabledTime={disabledDateTime}
dropdownClassName="hideDisable"
/>
From 7eb2e4c71351398cbcbf5a1f2c9b77c1099a9e1b Mon Sep 17 00:00:00 2001
From: p31729568
Date: Wed, 31 Jul 2019 13:42:05 +0800
Subject: [PATCH 05/74] move user project search api controller
---
app/controllers/projects_controller.rb | 8 --------
app/controllers/users/base_controller.rb | 2 +-
app/controllers/users/projects_controller.rb | 11 +++++++++++
app/views/{ => users}/projects/search.json.jbuilder | 0
config/routes.rb | 2 +-
5 files changed, 13 insertions(+), 10 deletions(-)
rename app/views/{ => users}/projects/search.json.jbuilder (100%)
diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb
index c9ed6c597..672477790 100644
--- a/app/controllers/projects_controller.rb
+++ b/app/controllers/projects_controller.rb
@@ -1,10 +1,2 @@
class ProjectsController < ApplicationController
- def search
- query_params = { keyword: params[:keyword], category: 'manage' }
- projects = Users::ProjectService.new(current_user, query_params).call
-
- params[:limit] = params[:per_page].to_i.zero? ? 20 : params[:per_page].to_i
- @count = projects.count
- @projects = paginate projects
- end
end
\ No newline at end of file
diff --git a/app/controllers/users/base_controller.rb b/app/controllers/users/base_controller.rb
index fd138a182..969aca320 100644
--- a/app/controllers/users/base_controller.rb
+++ b/app/controllers/users/base_controller.rb
@@ -43,7 +43,7 @@ class Users::BaseController < ApplicationController
page = page_value
per_page = per_page_value
- return Kaminari.paginate_array(objs).page(page).per(per_page) unless observed_logged_user? && opts[:special]
+ return Kaminari.paginate_array(objs).page(page).per(per_page) unless opts[:special] && observed_logged_user?
# note: 为实现第一页少一条记录,让前端放置新建入口
if page == 1
diff --git a/app/controllers/users/projects_controller.rb b/app/controllers/users/projects_controller.rb
index 863b99b37..07f4d5cac 100644
--- a/app/controllers/users/projects_controller.rb
+++ b/app/controllers/users/projects_controller.rb
@@ -1,4 +1,6 @@
class Users::ProjectsController < Users::BaseController
+ skip_before_action :check_observed_user_exists!, only: [:search]
+
def index
projects = Users::ProjectService.new(observed_user, query_params).call
@@ -6,6 +8,15 @@ class Users::ProjectsController < Users::BaseController
@projects = paginate(projects.includes(:project_score, owner: { user_extension: :school }), special: true)
end
+ def search
+ query_params = { keyword: params[:keyword], category: 'manage' }
+ projects = Users::ProjectService.new(current_user, query_params).call
+
+ params[:limit] = params[:per_page].to_i.zero? ? 20 : params[:per_page].to_i
+ @count = projects.count
+ @projects = paginate projects
+ end
+
private
def query_params
diff --git a/app/views/projects/search.json.jbuilder b/app/views/users/projects/search.json.jbuilder
similarity index 100%
rename from app/views/projects/search.json.jbuilder
rename to app/views/users/projects/search.json.jbuilder
diff --git a/config/routes.rb b/config/routes.rb
index 2f9eed61b..581f563b0 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -75,7 +75,7 @@ Rails.application.routes.draw do
get :system_update
resource :trial_apply, only: [:create]
- resources :projects, only: [] do
+ resources :projects, module: :users, only: [] do
get :search, on: :collection
end
From ea5d5dceaea5fe4323ae7bd96c315de4efe908d8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Wed, 31 Jul 2019 13:58:06 +0800
Subject: [PATCH 06/74] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../courses/exercise/Studentshavecompletedthelist.js | 6 ++++--
.../modules/courses/exercise/Testpapersettinghomepage.js | 6 +++---
2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/public/react/src/modules/courses/exercise/Studentshavecompletedthelist.js b/public/react/src/modules/courses/exercise/Studentshavecompletedthelist.js
index f7a989f79..0556d94e9 100644
--- a/public/react/src/modules/courses/exercise/Studentshavecompletedthelist.js
+++ b/public/react/src/modules/courses/exercise/Studentshavecompletedthelist.js
@@ -2312,11 +2312,13 @@ class Studentshavecompletedthelist extends Component {
};
_getRequestParams() {
- const { order, checkedValuesineinfo,searchtext, page ,limit} = this.state
+ const { order, checkedValuesineinfo,course_groupyslstwo ,searchtext, page ,limit,course_groupyslsthree} = this.state
return {
page,
+ review:course_groupyslsthree,
+ commit_status:course_groupyslstwo,
search:searchtext,
- group_id:checkedValuesineinfo,
+ exercise_group_id:checkedValuesineinfo,
limit: limit,
order,
}
diff --git a/public/react/src/modules/courses/exercise/Testpapersettinghomepage.js b/public/react/src/modules/courses/exercise/Testpapersettinghomepage.js
index 24e960a9d..8e895b852 100644
--- a/public/react/src/modules/courses/exercise/Testpapersettinghomepage.js
+++ b/public/react/src/modules/courses/exercise/Testpapersettinghomepage.js
@@ -170,7 +170,7 @@ class Testpapersettinghomepage extends Component{
}
console.log("170");
console.log(params);
- axios.get(url+`?${queryString.stringify(params)}`).then((response) => {
+ axios.get(url+`?${queryString.stringify(params)}`+ '&export=true').then((response) => {
if(response===undefined){
return
}
@@ -193,7 +193,7 @@ class Testpapersettinghomepage extends Component{
}
}else {
this.props.showNotification(`正在下载中`);
- window.open("/api"+url+`?${queryString.stringify(params)}`, '_blank');
+ window.open("/api"+url+`?${queryString.stringify(params)}`+ '&export=true', '_blank');
}
}).catch((error) => {
console.log(error)
@@ -357,7 +357,7 @@ class Testpapersettinghomepage extends Component{
导出
:""}
From 730d83de4dc431e2810f085a276eb3a888b6b904 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Wed, 31 Jul 2019 14:00:53 +0800
Subject: [PATCH 07/74] Merge branch 'dev_aliyun' of
https://bdgit.educoder.net/Hjqreturn/educoder into dev_aliyun
# Conflicts:
# public/react/src/modules/courses/exercise/Testpapersettinghomepage.js
---
.../src/modules/courses/exercise/Testpapersettinghomepage.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/public/react/src/modules/courses/exercise/Testpapersettinghomepage.js b/public/react/src/modules/courses/exercise/Testpapersettinghomepage.js
index 52dd9c080..8e895b852 100644
--- a/public/react/src/modules/courses/exercise/Testpapersettinghomepage.js
+++ b/public/react/src/modules/courses/exercise/Testpapersettinghomepage.js
@@ -357,7 +357,7 @@ class Testpapersettinghomepage extends Component{
导出
:""}
From 65e7c3231e09ed30c781cdae88dd501ca4b765c4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Wed, 31 Jul 2019 14:12:14 +0800
Subject: [PATCH 08/74] =?UTF-8?q?=E5=AE=9E=E8=B7=B5=E8=AF=BE=E7=A8=8B?=
=?UTF-8?q?=E5=8F=91=E9=80=81=E8=87=B3=E5=AE=8C=E5=96=84?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/modules/paths/PathDetail/sendPanel.js | 51 ++++++++++++++++---
.../Collaborators/Collaborators.js | 15 +++---
2 files changed, 52 insertions(+), 14 deletions(-)
diff --git a/public/react/src/modules/paths/PathDetail/sendPanel.js b/public/react/src/modules/paths/PathDetail/sendPanel.js
index 84c7d8e23..2f9059a18 100644
--- a/public/react/src/modules/paths/PathDetail/sendPanel.js
+++ b/public/react/src/modules/paths/PathDetail/sendPanel.js
@@ -15,7 +15,6 @@ class sendPanel extends Component{
openSearch:false,
sendToCourseId:undefined,
sendToShixunArray:[],
- shixunNum:0,
Modalstype:false,
cardsModalcancel:this.cardsModalcancel,
cardsModalsave:this.cardsModalsave,
@@ -35,7 +34,9 @@ class sendPanel extends Component{
//隐藏发送至弹框
hideSenttothevalue =()=>{
this.setState({
- sentShixunPath:false
+ sentShixunPath:false,
+ sendToShixunArray:[],
+ sendToCourseId:undefined,
})
}
//打开课堂列表下拉框
@@ -63,7 +64,7 @@ class sendPanel extends Component{
changeCheckBoxs=(list)=>{
this.setState({
sendToShixunArray:list,
- shixunNum:list.length
+ // shixunNum:list.length
})
}
@@ -86,7 +87,9 @@ class sendPanel extends Component{
Modalstype:true,
sentShixunPath:false,
Modalstopval:result.data.message,
- courseurl:result.data.url
+ courseurl:result.data.url,
+ sendToShixunArray:[],
+ sendToCourseId:undefined,
})
}
}).catch((error)=>{
@@ -118,8 +121,33 @@ class sendPanel extends Component{
let {courseurl}=this.state;
window.location.href =courseurl;
}
+
+
+ allChange = (e) => {
+
+ if(e.target.checked===false){
+ this.setState({
+ sendToShixunArray: [],
+ })
+ }else{
+ let { sendToCourseList} = this.state;
+ let newlist = [];
+
+ sendToCourseList.stages.map((item,key)=>{
+ item.shixuns.map((items,keys)=>{
+ newlist.push(items.shixun_id)
+ })
+ })
+
+ this.setState({
+ sendToShixunArray: newlist,
+ })
+ }
+
+ }
+
render(){
- let{sentShixunPath,sendToCourseList,openSearch,shixunNum,Modalstype,Modalstopval,Modalsbottomval,cardsModalcancel,cardsModalsave}= this.state;
+ let{sentShixunPath,sendToCourseList,Modalstype,Modalstopval,Modalsbottomval,cardsModalcancel,cardsModalsave}= this.state;
return(
@@ -178,7 +206,7 @@ class sendPanel extends Component{
-
+
{
sendToCourseList && sendToCourseList.stages.map((item,key)=>{
@@ -197,7 +225,16 @@ class sendPanel extends Component{
- 已选择 {shixunNum} 个实训
+
+
+
+ this.allChange(e)}
+ >全选
+
+
+
+ 已选择 {this.state.sendToShixunArray.length} 个实训
取消
确定
diff --git a/public/react/src/modules/tpm/shixunchild/Collaborators/Collaborators.js b/public/react/src/modules/tpm/shixunchild/Collaborators/Collaborators.js
index 7811d12fd..95ce4b8aa 100644
--- a/public/react/src/modules/tpm/shixunchild/Collaborators/Collaborators.js
+++ b/public/react/src/modules/tpm/shixunchild/Collaborators/Collaborators.js
@@ -532,13 +532,14 @@ class Collaborators extends Component {
-
- 全选
-
- 请至少选择一个用户
-
-
+
+
+ 全选
+
+ 请至少选择一个用户
+
+
From e746a13f37caf14da3617e65e06b1d14173c8e34 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Wed, 31 Jul 2019 14:38:14 +0800
Subject: [PATCH 09/74] =?UTF-8?q?=E5=9B=BE=E7=89=87=E5=8D=A0=E6=AF=94?=
=?UTF-8?q?=E4=BC=98=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
public/react/public/css/edu-all.css | 27 ++++++--
.../courses/coursesHome/css/CoursesHome.css | 66 ++++++++++---------
public/stylesheets/educoder/edu-all.css | 33 ++++++++--
3 files changed, 83 insertions(+), 43 deletions(-)
diff --git a/public/react/public/css/edu-all.css b/public/react/public/css/edu-all.css
index fad3568b4..600520410 100644
--- a/public/react/public/css/edu-all.css
+++ b/public/react/public/css/edu-all.css
@@ -332,8 +332,12 @@ label.infolabel{display: block;float: left;width: 56px;text-align: right;margin-
}
.shixunDes{font-family: 'panmen-webfont';display: block;position: absolute;height: 100%;width: 100%;text-align: center;line-height: 220px;color: #fff;top: 0px;font-size: 24px;background-color: rgba(5,16,26,0.4);border-radius: 6px 6px 0px 0px;}
/*TPM*/
-.shixunDetail_top{width: 100%;background-image: url("/images/educoder/shixun-detail.jpg");background-size: 100% 100%;height: 240px;
- justify-content: center;align-items: center;display: -webkit-flex;}
+.shixunDetail_top{width: 100%;background-image: url("/images/educoder/shixun-detail.jpg"); height: 240px;
+ justify-content: center;align-items: center;display: -webkit-flex;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+}
.task-item{margin-top: 30px;padding-bottom: 30px;border-bottom: 1px solid #eee}
.task-item:last-child{border-bottom: none;}
.challengeNav a.active{color: #4CACFF;}
@@ -420,14 +424,23 @@ table.text-file{}
/*-------------------------------实训路径-------------------------------*/
-.path-head{width: 100%;height: 300px;background-image: url("/images/educoder/path.png");background-color: #081C4B;background-size: 100% 100%;}
+.path-head{width: 100%;height: 300px;background-image: url("/images/educoder/path.png");
+ background-color: #081C4B;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+}
.pathNavLine{position: absolute;bottom: -8px;width: 100%;}
.path-nav li{float: left;padding: 0px 30px;height: 42px;}
.path-nav li a{color:#fff;font-size: 16px;display: block; height: 40px;}
.path-nav li.active a{border-bottom: 3px solid #4CACFF;color:#4CACFF;}
/*---实训路径详情----*/
.subhead{width: 100%;margin-bottom:40px;background-size: 100% 100%;background-image: url("/images/educoder/path-detail.jpg");height: 240px;
- justify-content: center;align-items: center;display: -webkit-flex;}
+ justify-content: center;align-items: center;display: -webkit-flex;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+}
.subhead_content{width: 1200px;margin: 0px auto;}
.pathInfo li{text-align: center;float: left;margin-right: 38px;}
.pathInfo li span{display: block;}
@@ -467,7 +480,11 @@ li.li-width7{width: 7%;text-align: left}
/*-----------------------------在线课堂动态----------------------------------*/
.courseHead{width: 100%;margin-bottom:40px;background-size: 100% 100%;background-image: url("/images/educoder/course-detail.jpg");height: 240px;
- justify-content: center;align-items: center;display: -webkit-flex;}
+ justify-content: center;align-items: center;display: -webkit-flex;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+}
.invite-tip{position: absolute;top: -5px;right: 140px;color: #fff; box-sizing: border-box;width: 170px;text-align: center;border-radius: 2px;background-color: rgba(5,16,26,0.6)}
.inviteTipbtn a{font-size:14px;width: 100%;height: 30px;line-height: 30px;display: block;color: #747A7F;background-color: rgba(5,16,26,0.4)}
.inviteTipbtn a:hover{color: #4cacff!important;}
diff --git a/public/react/src/modules/courses/coursesHome/css/CoursesHome.css b/public/react/src/modules/courses/coursesHome/css/CoursesHome.css
index 696d35ecc..af431da99 100644
--- a/public/react/src/modules/courses/coursesHome/css/CoursesHome.css
+++ b/public/react/src/modules/courses/coursesHome/css/CoursesHome.css
@@ -1,33 +1,35 @@
-.courses-head{
- width: 100%;
- height: 300px;
- background-image: url(./courses.jpg);
- background-color: #081C4B;
- background-size: 100% 100%;
-}
-a{
- text-decoration: none;
- color: #05101a;
-}
-.ant-input-affix-wrapper .ant-input:not(:last-child) {
- padding-right: 24px;
-}
-
-.memberscount{
- font-size: 55px !important;
- background: #fff;
- color: #dfdfdf;
- display: inline-block;
- padding-right: 15px;
-}
-.biaoqiancours{
- overflow: hidden;
- position: relative;
-}
-.coursesover{
- position: absolute;
- color: #fff;
- left: 17px;
- background: #dfdfdf;
- width: 200px;
+.courses-head{
+ width: 100%;
+ height: 300px;
+ background-image: url(./courses.jpg);
+ background-color: #081C4B;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+}
+a{
+ text-decoration: none;
+ color: #05101a;
+}
+.ant-input-affix-wrapper .ant-input:not(:last-child) {
+ padding-right: 24px;
+}
+
+.memberscount{
+ font-size: 55px !important;
+ background: #fff;
+ color: #dfdfdf;
+ display: inline-block;
+ padding-right: 15px;
+}
+.biaoqiancours{
+ overflow: hidden;
+ position: relative;
+}
+.coursesover{
+ position: absolute;
+ color: #fff;
+ left: 17px;
+ background: #dfdfdf;
+ width: 200px;
}
\ No newline at end of file
diff --git a/public/stylesheets/educoder/edu-all.css b/public/stylesheets/educoder/edu-all.css
index ec245b196..05e767ba4 100644
--- a/public/stylesheets/educoder/edu-all.css
+++ b/public/stylesheets/educoder/edu-all.css
@@ -334,8 +334,12 @@ label.infolabel{display: block;float: left;width: 56px;text-align: right;margin-
}
.shixunDes{font-family: 'panmen-webfont';display: block;position: absolute;height: 100%;width: 100%;text-align: center;line-height: 220px;color: #fff;top: 0px;font-size: 24px;background-color: rgba(5,16,26,0.4);border-radius: 6px 6px 0px 0px;}
/*TPM*/
-.shixunDetail_top{width: 100%;background-image: url("/images/educoder/shixun-detail.jpg");background-size: 100% 100%;height: 240px;
- justify-content: center;align-items: center;display: -webkit-flex;}
+.shixunDetail_top{width: 100%;background-image: url("/images/educoder/shixun-detail.jpg"); height: 240px;
+ justify-content: center;align-items: center;display: -webkit-flex;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+}
.task-item{margin-top: 30px;padding-bottom: 30px;border-bottom: 1px solid #eee}
.task-item:last-child{border-bottom: none;}
.challengeNav a.active{color: #4CACFF;}
@@ -422,14 +426,23 @@ table.text-file{}
/*-------------------------------实训路径-------------------------------*/
-.path-head{width: 100%;height: 300px;background-image: url("/images/educoder/path.png");background-color: #081C4B;background-size: 100% 100%;}
+.path-head{width: 100%;height: 300px;background-image: url("/images/educoder/path.png");
+ background-color: #081C4B;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+}
.pathNavLine{position: absolute;bottom: -8px;width: 100%;}
.path-nav li{float: left;padding: 0px 30px;height: 42px;}
.path-nav li a{color:#fff;font-size: 16px;display: block; height: 40px;}
.path-nav li.active a{border-bottom: 3px solid #4CACFF;color:#4CACFF;}
/*---实训路径详情----*/
.subhead{width: 100%;margin-bottom:40px;background-size: 100% 100%;background-image: url("/images/educoder/path-detail.jpg");height: 240px;
- justify-content: center;align-items: center;display: -webkit-flex;}
+ justify-content: center;align-items: center;display: -webkit-flex;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+}
.subhead_content{width: 1200px;margin: 0px auto;}
.pathInfo li{text-align: center;float: left;margin-right: 38px;}
.pathInfo li span{display: block;}
@@ -469,7 +482,11 @@ li.li-width7{width: 7%;text-align: left}
/*-----------------------------在线课堂动态----------------------------------*/
.courseHead{width: 100%;margin-bottom:40px;background-size: 100% 100%;background-image: url("/images/educoder/course-detail.jpg");height: 240px;
- justify-content: center;align-items: center;display: -webkit-flex;}
+ justify-content: center;align-items: center;display: -webkit-flex;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+}
.invite-tip{position: absolute;top: -5px;right: 140px;color: #fff; box-sizing: border-box;width: 170px;text-align: center;border-radius: 2px;background-color: rgba(5,16,26,0.6)}
.inviteTipbtn a{font-size:14px;width: 100%;height: 30px;line-height: 30px;display: block;color: #747A7F;background-color: rgba(5,16,26,0.4)}
.inviteTipbtn a:hover{color: #4cacff!important;}
@@ -3055,7 +3072,11 @@ a.singlepublishtwo{
padding: 0px;
}
.project_packagesHead{width: 100%;margin-bottom:40px;background-size: 100% 100%;background-image: url("/images/educoder/project_packagesHead.jpg");height: 240px;
- justify-content: center;align-items: center;display: -webkit-flex;}
+ justify-content: center;align-items: center;display: -webkit-flex;
+ background-size: cover;
+ background-position: center;
+ background-repeat: no-repeat;
+}
/* 个人中心-众包 */
From a358aaf63e08bcb74b7df903d90641b1a3af47ea Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Wed, 31 Jul 2019 14:40:24 +0800
Subject: [PATCH 10/74] =?UTF-8?q?=E5=9B=BE=E7=89=87=E5=8D=A0=E6=AF=94?=
=?UTF-8?q?=E4=BC=98=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
public/images/educoder/path.png | Bin 59814 -> 53938 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
diff --git a/public/images/educoder/path.png b/public/images/educoder/path.png
index d8b6f1715d7484cd22de10d27f241ac8522f0430..d3d816012532d053624565b95fecc84c40bf37b9 100644
GIT binary patch
literal 53938
zcmeGDXFycTvH%LNAtQ(q1OX){5g2j~O3qmjNy5y4z%am&vjJ2~D6FAzy3FFP9m(9#09
z0RSKZ2q6>zE(k%uKLA1p;A3F`u!hk8gzX_*-)V3_8UX;z0Y>nLh6rL|DiDsmX9wVY
zZ~F{<_5ddiZUO-3=^xL_a3^a7lkN>CHz(H{PR>jU3QSyDRxmphrhEYqCsDcn^mE-5PMWU5o(hKqN1LE>(T6pYO>eD~ld~lGs8Ym}BZO
zoB)8t84aqe6{?gkby<_2_K-3+XqoRC-wHIy3yfpT}mRA6B2)6td*e4fI#HL&x-
zP{`Z4VcKA-k9i`{+E$JTL#3;RAnLfY;|98DCnp;Ngqypwj;d_yd(HV}nr
z44iQOSr3-54dsz;sP8h6TD#jJ-Rw|UCSW}=mRdo}MB`Y0DGUo7UNHNmBgJnz>NvaE
zIiXy^dKwI+g0mayhuDAu(i;7CwHC!x)2#fhXi*YW2
zjKJS_UJMxMH(qp@BJO1{JJuaj1TgC`;Y|=A0IUHk00sUb05qlo{QWikhQqY^xrYCw
z`;Fiy?z?c9GRhr^S^F?b5?DLAqu{Q8nc*-u0k96^C;(nojL;!}~&ObJU6UW3D45miycw6{?TYp@4H1bc|3fB04
z#%Q_P{(0*mutK^STG{@IiVTK8A`KBhq{{>G14)Kk@l4EBc7p5bC6#U`HtzhBf8H