From 4867ee118ae1a3961bd1d82a858d5c6d2168937c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Fri, 13 Dec 2019 10:40:39 +0800
Subject: [PATCH 01/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/src/AppConfig.js | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/public/react/src/AppConfig.js b/public/react/src/AppConfig.js
index bb6e28b90..7a6f0fc04 100644
--- a/public/react/src/AppConfig.js
+++ b/public/react/src/AppConfig.js
@@ -109,15 +109,15 @@ export function initAxiosInterceptors(props) {
             }
             //
 					// console.log(config);
-					if (config.method === "post") {
-						if (requestMap[config.url] === true) { // 避免重复的请求  导致页面f5刷新 也会被阻止  显示这个方法会影响到定制信息
-							// console.log(config);
-							// console.log(JSON.parse(config));
-							// console.log(config.url);
-							// console.log("被阻止了是重复请求=================================");
-							return false;
-						}
-					}
+					// if (config.method === "post") {
+					// 	if (requestMap[config.url] === true) { // 避免重复的请求  导致页面f5刷新 也会被阻止  显示这个方法会影响到定制信息
+					// 		// console.log(config);
+					// 		// console.log(JSON.parse(config));
+					// 		// console.log(config.url);
+					// 		// console.log("被阻止了是重复请求=================================");
+					// 		return false;
+					// 	}
+					// }
             // 非file_update请求
             if (config.url.indexOf('update_file') === -1) {
                 requestMap[config.url] = true;

From 58ef9161f800a89a467ab8164948402192306f58 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Fri, 13 Dec 2019 11:01:54 +0800
Subject: [PATCH 02/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/public/css/iconfont.css          | 76 ++++++++++++++++--
 .../graduation/tasks/GraduationTasksnew.js    |  4 +-
 public/react/src/modules/tpm/TPMDataset.js    | 80 +++++--------------
 .../Challenges/Challengesjupyter.js           |  4 +-
 .../shixunchild/shixunchildCss/Challenges.css |  4 +
 .../educoder/iconfont/iconfont.css            | 76 ++++++++++++++++--
 6 files changed, 170 insertions(+), 74 deletions(-)

diff --git a/public/react/public/css/iconfont.css b/public/react/public/css/iconfont.css
index 29e19aee4..f9c2e1e68 100644
--- a/public/react/public/css/iconfont.css
+++ b/public/react/public/css/iconfont.css
@@ -1,10 +1,10 @@
 @font-face {font-family: "iconfont";
-  src: url('iconfont.eot?t=1572859243353'); /* IE9 */
-  src: url('iconfont.eot?t=1572859243353#iefix') format('embedded-opentype'), /* IE6-IE8 */
-  url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'),
-  url('iconfont.woff?t=1572859243353') format('woff'),
-  url('iconfont.ttf?t=1572859243353') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
-  url('iconfont.svg?t=1572859243353#iconfont') format('svg'); /* iOS 4.1- */
+  src: url('iconfont.eot?t=1576206033975'); /* IE9 */
+  src: url('iconfont.eot?t=1576206033975#iefix') format('embedded-opentype'), /* IE6-IE8 */
+  url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'),
+  url('iconfont.woff?t=1576206033975') format('woff'),
+  url('iconfont.ttf?t=1576206033975') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
+  url('iconfont.svg?t=1576206033975#iconfont') format('svg'); /* iOS 4.1- */
 }
 
 .iconfont {
@@ -55,6 +55,10 @@
   content: "\e6bc";
 }
 
+.icon-jinzhi:before {
+  content: "\e6d4";
+}
+
 .icon-vs:before {
   content: "\e682";
 }
@@ -115,6 +119,10 @@
   content: "\e609";
 }
 
+.icon-liulan:before {
+  content: "\e6c7";
+}
+
 .icon-luyou:before {
   content: "\e677";
 }
@@ -295,6 +303,10 @@
   content: "\e694";
 }
 
+.icon-bokeyuan:before {
+  content: "\e6c6";
+}
+
 .icon-base:before {
   content: "\e683";
 }
@@ -799,6 +811,10 @@
   content: "\e68c";
 }
 
+.icon-pinglun:before {
+  content: "\e6c8";
+}
+
 .icon-gongcheng:before {
   content: "\e60f";
 }
@@ -811,6 +827,10 @@
   content: "\e604";
 }
 
+.icon-shangjiantou-tianchong:before {
+  content: "\e733";
+}
+
 .icon-zhuye:before {
   content: "\e6d3";
 }
@@ -839,6 +859,10 @@
   content: "\e6a1";
 }
 
+.icon-shenglvehao:before {
+  content: "\e708";
+}
+
 .icon-paixu1:before {
   content: "\e6aa";
 }
@@ -923,3 +947,43 @@
   content: "\e6c4";
 }
 
+.icon-bangdingshoujihao:before {
+  content: "\e6ca";
+}
+
+.icon-biaoqian1:before {
+  content: "\e6ce";
+}
+
+.icon-jilu:before {
+  content: "\e6cf";
+}
+
+.icon-shu:before {
+  content: "\e6d0";
+}
+
+.icon-tuijian:before {
+  content: "\e6d1";
+}
+
+.icon-chuangjianzhe:before {
+  content: "\e6d2";
+}
+
+.icon-wancheng1:before {
+  content: "\e6cb";
+}
+
+.icon-qiyezhanghao:before {
+  content: "\e6cc";
+}
+
+.icon-gerenzhanghao:before {
+  content: "\e6cd";
+}
+
+.icon-jiazaishibai1:before {
+  content: "\e6d6";
+}
+
diff --git a/public/react/src/modules/courses/graduation/tasks/GraduationTasksnew.js b/public/react/src/modules/courses/graduation/tasks/GraduationTasksnew.js
index 745a249b0..a5d4d7011 100644
--- a/public/react/src/modules/courses/graduation/tasks/GraduationTasksnew.js
+++ b/public/react/src/modules/courses/graduation/tasks/GraduationTasksnew.js
@@ -483,8 +483,8 @@ class GraduationTasksnew extends Component {
 									</style>
 									<Upload {...uploadProps} className="upload_1 ml5">
 										<Button className="uploadBtn">
-											<Icon type="upload"/> 上传附件
-										</Button>
+										<Icon type="upload"/> 上传附件
+									</Button>
 										(单个文件150M以内)
 									</Upload>
 
diff --git a/public/react/src/modules/tpm/TPMDataset.js b/public/react/src/modules/tpm/TPMDataset.js
index 372f3626f..918868392 100644
--- a/public/react/src/modules/tpm/TPMDataset.js
+++ b/public/react/src/modules/tpm/TPMDataset.js
@@ -7,7 +7,7 @@ import TPMRightSection from './component/TPMRightSection';
 import TPMNav from './component/TPMNav';
 import axios from 'axios';
 import './tpmmodel/tpmmodel.css'
-import {getUploadActionUrl} from 'educoder';
+import {getUploadActionUrl,appendFileSizeToUploadFileAll} from 'educoder';
 import moment from 'moment';
 
 const confirm = Modal.confirm;
@@ -260,40 +260,26 @@ class TPMDataset extends Component {
 		if (index % 2 === 1) className = 'dark-row';
 		return className;
 	}
-
-	// 附件相关 START
 	handleChange = (info) => {
-		console.log("handleChange");
-		console.log(info);
-		if(info.file.status === 'uploading' || info.file.status === 'done' || info.file.status === 'removed') {
-			let {fileList} = this.state;
-
-			if (info.file.status === 'uploading' || info.file.status === 'done' || info.file.status === 'removed') {
-				console.log("handleChange1fileLists");
-				// if(fileList.length===0){
-				let fileLists = info.fileList;
-				// console.log(fileLists);
-				this.setState({
-					// fileList:appendFileSizeToUploadFileAll(fileList),
-					fileList: fileLists,
-					deleteisnot: false
-				});
-			}
+		if(info.file.status == "done" || info.file.status == "uploading" || info.file.status === 'removed'){
+			let fileList = info.fileList;
+
+			// for(var list of fileList ){
+			//   console.log(list)
+			// }
+			this.setState({
+				fileList: appendFileSizeToUploadFileAll(fileList),
+			});
 			if(info.file.status === 'done'){
 				//done 成功就会调用这个方法
 				this.getdatas();
 				// this.props.showNotification(`上传文件成功`);
 
-			}else if(info.file.status === 'removed'){
-				// this.props.showNotification(`上传文件失败`);
-
-			}else if(info.file.status === 'uploading'){
-				// this.props.showNotification(`正在上传文件中`);
-
 			}
 		}
 	}
 
+
 	onAttachmentRemove = (file) => {
 		// debugger
 		if(!file.percent || file.percent == 100){
@@ -405,51 +391,27 @@ class TPMDataset extends Component {
 			width: 600,
 			fileList,
 			data:{
-				attachtype: 2,
+			attachtype: 2,
 				container_id:this.props.match.params.shixunId,
 				container_type: "Shixun",
-			},
+		},
 			multiple: true,
 			// https://github.com/ant-design/ant-design/issues/15505
 			// showUploadList={false},然后外部拿到 fileList 数组自行渲染列表。
 			// showUploadList: false,
-			action:  `${getUploadActionUrl()}`,
+			action: `${getUploadActionUrl()}`,
 			onChange: this.handleChange,
 			onRemove: this.onAttachmentRemove,
-			beforeUpload: (file, fileList) => {
-				 console.log("beforeUpload");
-				console.log(this.state.fileList);
-				console.log(this.state.fileList.length);
-
-				if (this.state.fileList.length >= 1) {
-					return false
-				}
-				// console.log('beforeUpload', file.name);
-				const isLt150M = file.size / 1024 / 1024 < 50;
+			beforeUpload: (file) => {
+				console.log('beforeUpload', file.name);
+				const isLt150M = file.size / 1024 / 1024 < 150;
 				if (!isLt150M) {
-					// this.props.showNotification(`文件大小必须小于50MB`);
-
-					notification.open(
-						{
-							message: '提示',
-							description:
-								'文件大小必须小于50MB',
-						}
-					)
-				}
-				if(this.state.file !== undefined){
-					console.log("763")
-					this.setState({
-						file:file
-					})
-				}else {
-					this.setState({
-						file:file
-					})
+					this.props.showNotification('文件大小必须小于150MB!');
 				}
 				return isLt150M;
 			},
-		}
+		};
+
 		return (
 			<React.Fragment>
 				<div className="tpmComment educontent clearfix mt30 mb80">
@@ -481,7 +443,7 @@ class TPMDataset extends Component {
 											`
 										}
 									</style>
-									<div className="deletebuttom intermediatecenter ">	<Upload {...uploadProps}><p className="deletebuttomtest">
+									<div className="deletebuttom intermediatecenter ">	<Upload {...uploadProps}><p className="deletebuttomtest" type="upload">
 
 										上传文件</p>		</Upload></div>
 									{
diff --git a/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js b/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
index cb79c357f..f3b2d8029 100644
--- a/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
+++ b/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
@@ -244,6 +244,8 @@ class Challengesjupyter extends Component {
 									display: flex;
 									flex-direction:row-reverse;
 									}
+								;						
+																}
 								`
 							}
 						</style>
@@ -256,7 +258,7 @@ class Challengesjupyter extends Component {
 										<div className="sortinxdirection mt60">
 											<div className="renwuxiangssi sortinxdirection">
 												<div><p className="renwuxiangqdiv">任务详情</p></div>
-												<div><p className="renwuxiangqdivtest ml24">(请将实训题目写在下方)</p></div>
+												<div><p className="renwuxiangqdivtest ml24 shixunbingbaocun">(请将实训题目写在下方并保存)</p></div>
 											</div>
 											<div className="renwuxiangssit xaxisreverseorder">
 												<div className="challenbaocun" onClick={() => this.modifyjupyter(this.state)}><p
diff --git a/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css b/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css
index a5943af6f..316639348 100644
--- a/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css
+++ b/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css
@@ -75,3 +75,7 @@
     font-size: 12px;
     cursor:default
 }
+.shixunbingbaocun{
+    font-size:14px;
+    color:#888888;
+}
diff --git a/public/stylesheets/educoder/iconfont/iconfont.css b/public/stylesheets/educoder/iconfont/iconfont.css
index 29e19aee4..f9c2e1e68 100644
--- a/public/stylesheets/educoder/iconfont/iconfont.css
+++ b/public/stylesheets/educoder/iconfont/iconfont.css
@@ -1,10 +1,10 @@
 @font-face {font-family: "iconfont";
-  src: url('iconfont.eot?t=1572859243353'); /* IE9 */
-  src: url('iconfont.eot?t=1572859243353#iefix') format('embedded-opentype'), /* IE6-IE8 */
-  url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'),
-  url('iconfont.woff?t=1572859243353') format('woff'),
-  url('iconfont.ttf?t=1572859243353') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
-  url('iconfont.svg?t=1572859243353#iconfont') format('svg'); /* iOS 4.1- */
+  src: url('iconfont.eot?t=1576206033975'); /* IE9 */
+  src: url('iconfont.eot?t=1576206033975#iefix') format('embedded-opentype'), /* IE6-IE8 */
+  url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'),
+  url('iconfont.woff?t=1576206033975') format('woff'),
+  url('iconfont.ttf?t=1576206033975') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
+  url('iconfont.svg?t=1576206033975#iconfont') format('svg'); /* iOS 4.1- */
 }
 
 .iconfont {
@@ -55,6 +55,10 @@
   content: "\e6bc";
 }
 
+.icon-jinzhi:before {
+  content: "\e6d4";
+}
+
 .icon-vs:before {
   content: "\e682";
 }
@@ -115,6 +119,10 @@
   content: "\e609";
 }
 
+.icon-liulan:before {
+  content: "\e6c7";
+}
+
 .icon-luyou:before {
   content: "\e677";
 }
@@ -295,6 +303,10 @@
   content: "\e694";
 }
 
+.icon-bokeyuan:before {
+  content: "\e6c6";
+}
+
 .icon-base:before {
   content: "\e683";
 }
@@ -799,6 +811,10 @@
   content: "\e68c";
 }
 
+.icon-pinglun:before {
+  content: "\e6c8";
+}
+
 .icon-gongcheng:before {
   content: "\e60f";
 }
@@ -811,6 +827,10 @@
   content: "\e604";
 }
 
+.icon-shangjiantou-tianchong:before {
+  content: "\e733";
+}
+
 .icon-zhuye:before {
   content: "\e6d3";
 }
@@ -839,6 +859,10 @@
   content: "\e6a1";
 }
 
+.icon-shenglvehao:before {
+  content: "\e708";
+}
+
 .icon-paixu1:before {
   content: "\e6aa";
 }
@@ -923,3 +947,43 @@
   content: "\e6c4";
 }
 
+.icon-bangdingshoujihao:before {
+  content: "\e6ca";
+}
+
+.icon-biaoqian1:before {
+  content: "\e6ce";
+}
+
+.icon-jilu:before {
+  content: "\e6cf";
+}
+
+.icon-shu:before {
+  content: "\e6d0";
+}
+
+.icon-tuijian:before {
+  content: "\e6d1";
+}
+
+.icon-chuangjianzhe:before {
+  content: "\e6d2";
+}
+
+.icon-wancheng1:before {
+  content: "\e6cb";
+}
+
+.icon-qiyezhanghao:before {
+  content: "\e6cc";
+}
+
+.icon-gerenzhanghao:before {
+  content: "\e6cd";
+}
+
+.icon-jiazaishibai1:before {
+  content: "\e6d6";
+}
+

From 1833d4427ace3593ada4764902fe3bfc76fa3e93 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Fri, 13 Dec 2019 11:04:43 +0800
Subject: [PATCH 03/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/src/modules/tpm/TPMBanner.js                     | 3 ++-
 public/react/src/modules/tpm/TPMsettings/Configuration.js     | 2 +-
 public/react/src/modules/tpm/TPMsettings/LearningSettings.js  | 2 +-
 public/react/src/modules/tpm/TPMsettings/Shixuninformation.js | 2 +-
 4 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/public/react/src/modules/tpm/TPMBanner.js b/public/react/src/modules/tpm/TPMBanner.js
index 7befed4c4..af14b25ab 100644
--- a/public/react/src/modules/tpm/TPMBanner.js
+++ b/public/react/src/modules/tpm/TPMBanner.js
@@ -311,6 +311,7 @@ class TPMBanner extends Component {
       console.log(error)
     });
   }
+
   cancel_publish = () => {
     this.setState({
       Modalstype: true,
@@ -971,7 +972,7 @@ class TPMBanner extends Component {
 
                 </Modal>
 
-                {shixunsDetails.shixun_status === 1 && this.props.identity < 5 ?
+                {shixunsDetails.shixun_status === 2 && shixunsDetails.public===0 && this.props.identity < 5 ?
                   <a onClick={this.cancel_publish} className="fr user_default_btn user_blue_btn mr20 font-18 height39"
                      id="challenge_begin">撤销发布</a> : ""
                 }
diff --git a/public/react/src/modules/tpm/TPMsettings/Configuration.js b/public/react/src/modules/tpm/TPMsettings/Configuration.js
index 2dcbf97a6..803a6bf89 100644
--- a/public/react/src/modules/tpm/TPMsettings/Configuration.js
+++ b/public/react/src/modules/tpm/TPMsettings/Configuration.js
@@ -69,7 +69,7 @@ export default class Shixuninformation extends Component {
   }
 
   componentDidMount() {
-    if (this.props.data.shixun) {
+    if (this.props.data&&this.props.data.shixun) {
 
       this.setState({
         can_copy:this.props.data.shixun && this.props.data.shixun.can_copy === undefined ? false : this.props.data.shixun&&this.props.data.shixun.can_copy,
diff --git a/public/react/src/modules/tpm/TPMsettings/LearningSettings.js b/public/react/src/modules/tpm/TPMsettings/LearningSettings.js
index f2a04796f..a548f9c71 100644
--- a/public/react/src/modules/tpm/TPMsettings/LearningSettings.js
+++ b/public/react/src/modules/tpm/TPMsettings/LearningSettings.js
@@ -34,7 +34,7 @@ export default class Shixuninformation extends Component {
 
 
   componentDidMount() {
-    if (this.props.data.shixun) {
+    if (this.props.data&&this.props.data.shixun) {
 
       this.setState({
         vnc: this.props.data && this.props.data.shixun.vnc,
diff --git a/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js b/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
index 50a7e4166..ca12058ba 100644
--- a/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
+++ b/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
@@ -55,7 +55,7 @@ class Shixuninformation extends Component {
 
   componentDidUpdate(prevProps, prevState) {
     if (prevProps.data != this.props.data) {
-      if (this.props.data) {
+      if (this.props.data&&this.props.data.shixun) {
         this.setState({
           shixunName: this.props.data.shixun&&this.props.data.shixun.name,
           trainee:this.props.data.shixun&&this.props.data.shixun.trainee,

From 25a3481d9a0cd48d01ca7e823c75eef6b6b10bf3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Fri, 13 Dec 2019 11:06:02 +0800
Subject: [PATCH 04/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../tpm/shixunchild/Challenges/Challengesjupyter.js       | 8 ++++----
 .../modules/tpm/shixunchild/shixunchildCss/Challenges.css | 6 ++++++
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js b/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
index f3b2d8029..0206d1f83 100644
--- a/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
+++ b/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
@@ -79,7 +79,7 @@ class Challengesjupyter extends Component {
 
 						setTimeout(() => {
 							this.setState({
-								jupyter_url:response.data.url,
+								 jupyter_url:response.data.url,
 								jupyter_port:response.data.port,
 								booljupyterurls:true,
 							})
@@ -212,9 +212,9 @@ class Challengesjupyter extends Component {
 							booljupyterurls===true?
 								(
 									this.state.jupyter_url === null?
-										<div className="mt50">
-
-											<p className="intermediatecenter sortinxdirection"><p className="colorbluetest">加载实训出错,是否</p><p className="colorbluetwo" onClick={()=>this.updatamakedowns()}>重新加载</p></p>
+										<div className="mt50 intermediatecenter">
+											{/*<span className="icon iconfont icon-jiazaishibai1"></span>*/}
+											<p className="intermediatecenter sortinxdirection mt5"><p className="colorbluetest">加载实训出错,是否</p><p className="colorbluetwo" onClick={()=>this.updatamakedowns()}>重新加载</p></p>
 
 										</div>
 
diff --git a/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css b/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css
index 316639348..4b6badc28 100644
--- a/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css
+++ b/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css
@@ -79,3 +79,9 @@
     font-size:14px;
     color:#888888;
 }
+.intermediatecenter{
+    display: flex;
+    flex-direction: column;
+    align-items: center;
+    justify-content: center;
+}

From 0482e7c7f56aa8c3a155e310019e916d5fd4ae15 Mon Sep 17 00:00:00 2001
From: tangjiang <465264938@qq.com>
Date: Fri, 13 Dec 2019 11:10:22 +0800
Subject: [PATCH 05/30] update style

---
 public/react/src/modules/tpm/jupyter/index.scss        |  6 +++++-
 .../react/src/modules/tpm/jupyter/leftPane/index.scss  | 10 ++++++----
 .../react/src/modules/tpm/jupyter/rightPane/index.js   |  7 ++++---
 3 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/public/react/src/modules/tpm/jupyter/index.scss b/public/react/src/modules/tpm/jupyter/index.scss
index a174c5be5..430bb1c6e 100644
--- a/public/react/src/modules/tpm/jupyter/index.scss
+++ b/public/react/src/modules/tpm/jupyter/index.scss
@@ -78,9 +78,13 @@
       right: 10px;
       top: 14px;
 
+      .btn_common{
+        color: #888;
+      }
       .btn_common:hover{
         // background-color: #29BD8B;
-        color: #29BD8B;
+        // color: #29BD8B;
+        color: #1890ff;
       }
     }
   }
diff --git a/public/react/src/modules/tpm/jupyter/leftPane/index.scss b/public/react/src/modules/tpm/jupyter/leftPane/index.scss
index dfd9f121d..c53b46362 100644
--- a/public/react/src/modules/tpm/jupyter/leftPane/index.scss
+++ b/public/react/src/modules/tpm/jupyter/leftPane/index.scss
@@ -1,22 +1,24 @@
 .jupyter_data_sets_area{
   height: 100%;
   .jupyter_h2_title{
-    height: 50px;
-    line-height: 50px;
+    height: 44px;
+    line-height: 44px;
     background-color: #EEEEEE;
     padding: 0 30px;
     .jupyter_data_icon{
-      color: #7286ff;
+      // color: #7286ff;
+      color: #1890ff;
       font-size: 24px;
       position: relative;
       top: 2px;
       transform: scale(1.5);
+      margin-right: 5px;
     }
   }
 
   .jupyter_data_list,
   .jupyter_empty{
-    height: calc(100vh - 110px);
+    height: calc(100vh - 104px);
     overflow-y: auto;
   }
 
diff --git a/public/react/src/modules/tpm/jupyter/rightPane/index.js b/public/react/src/modules/tpm/jupyter/rightPane/index.js
index 1282732f4..ebdee3f63 100644
--- a/public/react/src/modules/tpm/jupyter/rightPane/index.js
+++ b/public/react/src/modules/tpm/jupyter/rightPane/index.js
@@ -4,11 +4,11 @@
  * @Github: 
  * @Date: 2019-12-12 15:04:20
  * @LastEditors: tangjiang
- * @LastEditTime: 2019-12-12 17:41:41
+ * @LastEditTime: 2019-12-13 11:09:27
  */
 import './index.scss';
 import React, { useEffect, useState } from 'react';
-import { Spin, Button } from 'antd';
+import { Spin, Button, Icon } from 'antd';
 function RightPane (props) {
   const { 
     status,
@@ -32,6 +32,7 @@ function RightPane (props) {
 
   const loadError = (
     <div className="jupyter_load_url_error">
+      <Icon type="icon-jiazaishibai1" />
       <p className="jupyter_error_txt">
         加载实训出错,是否
         <span 
@@ -51,7 +52,7 @@ function RightPane (props) {
   useEffect(() => {
     if (status === -1) {
       setRenderCtx(() => loadInit);
-    } else if (status === 0 && url) {
+    } else if (status === 2 && url) {
       setRenderCtx(() => (
 
         <div className="jupyter_result">

From f93347f6ca51a002970966a96ce9a92cd7528d70 Mon Sep 17 00:00:00 2001
From: cxt <853663049@qq.com>
Date: Fri, 13 Dec 2019 11:19:53 +0800
Subject: [PATCH 06/30] =?UTF-8?q?=E5=AE=9E=E8=AE=AD=E7=9A=84=E7=94=B3?=
 =?UTF-8?q?=E8=AF=B7=E5=85=AC=E5=BC=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 app/controllers/shixuns_controller.rb | 32 +++++++++++++--------------
 config/routes.rb                      |  1 +
 2 files changed, 17 insertions(+), 16 deletions(-)

diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb
index f2a382e65..63bf059e0 100644
--- a/app/controllers/shixuns_controller.rb
+++ b/app/controllers/shixuns_controller.rb
@@ -17,7 +17,7 @@ class ShixunsController < ApplicationController
 																								 :get_mirror_script, :download_file, :shixun_list, :batch_send_to_course]
 	before_action :find_repo_name, only: [:repository, :commits, :file_content, :update_file, :shixun_exec, :copy, :add_file]
 
-	before_action :allowed, only:  [:update, :close, :update_propaedeutics, :settings, :publish,
+	before_action :allowed, only:  [:update, :close, :update_propaedeutics, :settings, :publish, :apply_public,
 																  :shixun_members_added, :change_manager, :collaborators_delete,
 																	:cancel_apply_public, :cancel_publish, :add_collaborators, :add_file]
 	before_action :portion_allowed, only: [:copy]
@@ -839,27 +839,27 @@ class ShixunsController < ApplicationController
 				end
 			end
 			if @status == 0
-				ActiveRecord::Base.transaction do
-					@shixun.update_attributes!(:status => 2)
-					apply = ApplyAction.where(:container_type => "ApplyShixun", :container_id => @shixun.id).order("created_at desc").first
-					if apply && apply.status == 0
-						@status = 0
-					else
-						ApplyAction.create(:container_type => "ApplyShixun", :container_id => @shixun.id, :user_id => current_user.id, :status => 0)
-						#begin
-						#	status = Trustie::Sms.send(mobile: '18711011226', send_type:'publish_shixun' , name: '管理员')
-						#rescue => e
-						#	Rails.logger.error "发送验证码出错: #{e}"
-						#end
-						@status = 1
-					end
-				end
+				@shixun.update_attributes!(:status => 2)
 			end
 		rescue Exception => e
 			logger.error("pushlish game #{e}")
 		end
 	end
 
+	def apply_public
+		tip_exception(-1, "请先发布实训再申请公开") if @shixun.status != 2
+		ActiveRecord::Base.transaction do
+			@shixun.update_attributes!(pubic: 1)
+			apply = ApplyAction.where(:container_type => "ApplyShixun", :container_id => @shixun.id).order("created_at desc").first
+			if apply && apply.status == 0
+				@status = 0
+			else
+				ApplyAction.create(:container_type => "ApplyShixun", :container_id => @shixun.id, :user_id => current_user.id, :status => 0)
+			end
+		end
+		normal_status(0, "申请成功")
+	end
+
 	# 设置私密版本库的在tpm中的目录
 	def set_secret_dir
 		raise("设置路径不能为空") if params[:secret_dir_path].blank?
diff --git a/config/routes.rb b/config/routes.rb
index 972579201..b89976c89 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -259,6 +259,7 @@ Rails.application.routes.draw do
         get :cancel_publish
         get :cancel_apply_public
         get :publish
+        get :apply_public
         get :shixun_exec
         post :review_shixun
         get :review_newest_record

From 1423a8c901c0161801cd727176e7135db9ddd1ec Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Fri, 13 Dec 2019 11:25:07 +0800
Subject: [PATCH 07/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../Challenges/Challengesjupyter.js            |  8 ++++----
 .../shixunchild/shixunchildCss/Challenges.css  | 18 ++++++++++++++++++
 2 files changed, 22 insertions(+), 4 deletions(-)

diff --git a/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js b/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
index 0206d1f83..73d6328c1 100644
--- a/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
+++ b/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
@@ -79,7 +79,7 @@ class Challengesjupyter extends Component {
 
 						setTimeout(() => {
 							this.setState({
-								 jupyter_url:response.data.url,
+								 // jupyter_url:response.data.url,
 								jupyter_port:response.data.port,
 								booljupyterurls:true,
 							})
@@ -212,9 +212,9 @@ class Challengesjupyter extends Component {
 							booljupyterurls===true?
 								(
 									this.state.jupyter_url === null?
-										<div className="mt50 intermediatecenter">
-											{/*<span className="icon iconfont icon-jiazaishibai1"></span>*/}
-											<p className="intermediatecenter sortinxdirection mt5"><p className="colorbluetest">加载实训出错,是否</p><p className="colorbluetwo" onClick={()=>this.updatamakedowns()}>重新加载</p></p>
+										<div className="mt50 intermediatecenter juplbool">
+											<span className="icon iconfontysl icon-jiazaishibai1"></span>
+											<p className="intermediatecenter sortinxdirection mt5 juplboolp"><p className="colorbluetest">加载实训出错,是否</p><p className="colorbluetwo" onClick={()=>this.updatamakedowns()}>重新加载</p></p>
 
 										</div>
 
diff --git a/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css b/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css
index 4b6badc28..10d48c120 100644
--- a/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css
+++ b/public/react/src/modules/tpm/shixunchild/shixunchildCss/Challenges.css
@@ -69,6 +69,7 @@
     color: #1E8FFD;
     font-size: 12px;
     cursor:pointer;
+    margin-right: 18px;
 }
 .colorbluetest{
     color: #06101A;
@@ -85,3 +86,20 @@
     align-items: center;
     justify-content: center;
 }
+.iconfontysl{
+    vertical-align:middle;
+    font-family:"iconfont" !important;
+    font-style:normal;
+    -webkit-font-smoothing: antialiased;
+    -webkit-text-stroke-width: 0.2px;
+    font-size: 100px;
+    color: #F5F5F5;
+}
+.juplbool{
+    position: relative;
+}
+
+.juplboolp{
+    position: absolute;
+    bottom: 21px;
+}

From 3ce6ff2e760f7e744db08717b5dffb155ab3de13 Mon Sep 17 00:00:00 2001
From: tangjiang <465264938@qq.com>
Date: Fri, 13 Dec 2019 11:26:05 +0800
Subject: [PATCH 08/30] update tip info

---
 .../react/src/modules/tpm/jupyter/rightPane/index.js | 10 +++++-----
 .../src/modules/tpm/jupyter/rightPane/index.scss     | 12 ++++++++++++
 2 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/public/react/src/modules/tpm/jupyter/rightPane/index.js b/public/react/src/modules/tpm/jupyter/rightPane/index.js
index ebdee3f63..020639abc 100644
--- a/public/react/src/modules/tpm/jupyter/rightPane/index.js
+++ b/public/react/src/modules/tpm/jupyter/rightPane/index.js
@@ -4,11 +4,11 @@
  * @Github: 
  * @Date: 2019-12-12 15:04:20
  * @LastEditors: tangjiang
- * @LastEditTime: 2019-12-13 11:09:27
+ * @LastEditTime: 2019-12-13 11:25:22
  */
 import './index.scss';
 import React, { useEffect, useState } from 'react';
-import { Spin, Button, Icon } from 'antd';
+import { Spin, Button } from 'antd';
 function RightPane (props) {
   const { 
     status,
@@ -32,9 +32,9 @@ function RightPane (props) {
 
   const loadError = (
     <div className="jupyter_load_url_error">
-      <Icon type="icon-jiazaishibai1" />
+      <span className="iconfont icon-jiazaishibai1 icon-error"></span>
       <p className="jupyter_error_txt">
-        加载实训出错,是否
+        实训加载失败,
         <span 
           className="jupyter_reload"
           onClick={handleClickReload}
@@ -52,7 +52,7 @@ function RightPane (props) {
   useEffect(() => {
     if (status === -1) {
       setRenderCtx(() => loadInit);
-    } else if (status === 2 && url) {
+    } else if (status === 0 && url) {
       setRenderCtx(() => (
 
         <div className="jupyter_result">
diff --git a/public/react/src/modules/tpm/jupyter/rightPane/index.scss b/public/react/src/modules/tpm/jupyter/rightPane/index.scss
index edf305623..4facded6b 100644
--- a/public/react/src/modules/tpm/jupyter/rightPane/index.scss
+++ b/public/react/src/modules/tpm/jupyter/rightPane/index.scss
@@ -28,17 +28,29 @@
   }
 
   .jupyter_load_url_error{
+    display: flex;
+    flex-direction: column;
+    justify-content: center;
+    align-items: center;
     // &::before{
     //   background-color: rgba(0,0,0,.2);
     // }
     .jupyter_error_txt{
       position: relative;
       z-index: 1;
+      font-size: 12px;
       .jupyter_reload{
         cursor: pointer;
         color: #1890ff;
       }
     }
+
+    .icon-error{
+      position: relative;
+      color: #DCE0E6;
+      transform: scale(5);
+      top: -35px;
+    }
   }
 
   .jupyter_result{

From e340eaf886ccd30d99dbe65eab3bf9c2256a0ee1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Fri, 13 Dec 2019 11:26:30 +0800
Subject: [PATCH 09/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js b/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
index 73d6328c1..5a7bcb579 100644
--- a/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
+++ b/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
@@ -79,7 +79,7 @@ class Challengesjupyter extends Component {
 
 						setTimeout(() => {
 							this.setState({
-								 // jupyter_url:response.data.url,
+								jupyter_url:response.data.url,
 								jupyter_port:response.data.port,
 								booljupyterurls:true,
 							})

From bf5194fe2fd5cc37be66823189e897251de234a3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Fri, 13 Dec 2019 11:38:11 +0800
Subject: [PATCH 10/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/src/modules/tpm/TPMBanner.js     |  2 +-
 .../tpm/TPMsettings/LearningSettings.js       |  2 +-
 .../tpm/TPMsettings/Shixuninformation.js      | 36 +++++++++++----
 .../src/modules/tpm/newshixuns/Newshixuns.js  | 44 ++++++++++++++-----
 4 files changed, 63 insertions(+), 21 deletions(-)

diff --git a/public/react/src/modules/tpm/TPMBanner.js b/public/react/src/modules/tpm/TPMBanner.js
index af14b25ab..2998ab0a8 100644
--- a/public/react/src/modules/tpm/TPMBanner.js
+++ b/public/react/src/modules/tpm/TPMBanner.js
@@ -909,7 +909,7 @@ class TPMBanner extends Component {
 
                 {shixunsDetails.shixun_status === 0 && this.props.identity < 5 ?
                   <a onClick={this.applyrelease} className="fr user_default_btn user_blue_btn mr20 font-18 height39"
-                     id="challenge_begin">申请发布</a> : ""
+                     id="challenge_begin">发布</a> : ""
                 }
 
                 <Modal
diff --git a/public/react/src/modules/tpm/TPMsettings/LearningSettings.js b/public/react/src/modules/tpm/TPMsettings/LearningSettings.js
index a548f9c71..8d02cb4b8 100644
--- a/public/react/src/modules/tpm/TPMsettings/LearningSettings.js
+++ b/public/react/src/modules/tpm/TPMsettings/LearningSettings.js
@@ -222,7 +222,7 @@ export default class Shixuninformation extends Component {
   }
 
   render() {
-    console.log(this.props)
+    // console.log(this.props)
     return (
       <div>
         <div className="educontent mb200 edu-back-white padding10-20 pdb30 mb50">
diff --git a/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js b/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
index ca12058ba..2e2b01708 100644
--- a/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
+++ b/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
@@ -841,15 +841,33 @@ class Shixuninformation extends Component {
                     >
 
                       {
-                        this.props.data === undefined ? "" : this.props.data.shixun&&this.props.data.shixun.main_type.map((item, key) => {
-                          return (
-                            <Option value={item.id} key={key} name={item.description}>
-                              <Tooltip placement="right" title={item.description === "" ? "无描述" : item.description}>
-                                {item.type_name}
-                              </Tooltip>
-                            </Option>
-                          )
-                        })
+                        this.props.data === undefined ? "" : this.props.shixunsDetails.is_jupyter === true?this.props.data.shixun&&this.props.data.shixun.main_type.map((item, key) => {
+                          let itemtype=item.type_name.toLowerCase().indexOf('jupyter'.toLowerCase())
+                          if(itemtype>-1) {
+                            return (
+                              <Option value={item.id} key={key} name={item.description}>
+                                <Tooltip placement="right" title={item.description === "" ? "无描述" : item.description}>
+                                  {item.type_name}
+                                </Tooltip>
+                              </Option>
+                            )
+                          }
+                        }):""
+                      }
+
+                      {
+                        this.props.data === undefined ? "" : this.props.shixunsDetails.is_jupyter === false?this.props.data.shixun&&this.props.data.shixun.main_type.map((item, key) => {
+                          let itemtype=item.type_name.toLowerCase().indexOf('jupyter'.toLowerCase())
+                          if(itemtype===-1) {
+                            return (
+                              <Option value={item.id} key={key} name={item.description}>
+                                <Tooltip placement="right" title={item.description === "" ? "无描述" : item.description}>
+                                  {item.type_name}
+                                </Tooltip>
+                              </Option>
+                            )
+                          }
+                        }):""
                       }
                     </Select>
 
diff --git a/public/react/src/modules/tpm/newshixuns/Newshixuns.js b/public/react/src/modules/tpm/newshixuns/Newshixuns.js
index 3cdbff1c5..c2ec0d5ef 100644
--- a/public/react/src/modules/tpm/newshixuns/Newshixuns.js
+++ b/public/react/src/modules/tpm/newshixuns/Newshixuns.js
@@ -32,6 +32,7 @@ class Newshixuns extends Component {
       run_method: undefined,
       postapplyvisible: undefined,
       fileList: [],
+      Radiovalue:"1"
     }
   }
 
@@ -85,6 +86,9 @@ class Newshixuns extends Component {
     this.setState({
       Radiovalue: e.target.value,
     });
+    this.props.form.setFieldsValue({
+      is_jupyter: e.target.value,
+    });
   };
 
   handleSubmit = (e) => {
@@ -535,16 +539,36 @@ class Newshixuns extends Component {
                                   defaultOpen={false}
                           >
                             {
-                              newshixunlist === undefined ? "" : newshixunlist.main_type.map((item, key) => {
-                                return (
-                                  <Option value={item.id} key={key} name={item.description}>
-                                    <Tooltip placement="right"
-                                             title={item.description === "" ? "无描述" : item.description}>
-                                      {item.type_name}
-                                    </Tooltip>
-                                  </Option>
-                                )
-                              })
+                              newshixunlist === undefined ? "" :  this.state.Radiovalue==="2"?newshixunlist.main_type.map((item, key) => {
+                                let itemtype=item.type_name.toLowerCase().indexOf('jupyter'.toLowerCase())
+                                if(itemtype>-1){
+                                  return (
+                                    <Option value={item.id} key={key} name={item.description}>
+                                      <Tooltip placement="right"
+                                               title={item.description === "" ? "无描述" : item.description}>
+                                        {item.type_name}
+                                      </Tooltip>
+                                    </Option>
+                                  )
+                                }
+
+                              }):""
+                            }
+                            {
+                              newshixunlist === undefined ? "" : this.state.Radiovalue==="1"?newshixunlist.main_type.map((item, key) => {
+                                let itemtype=item.type_name.toLowerCase().indexOf('jupyter'.toLowerCase())
+                                if(itemtype===-1){
+                                  return (
+                                    <Option value={item.id} key={key} name={item.description}>
+                                      <Tooltip placement="right"
+                                               title={item.description === "" ? "无描述" : item.description}>
+                                        {item.type_name}
+                                      </Tooltip>
+                                    </Option>
+                                  )
+                                }
+
+                              }):""
                             }
                           </Select>
 

From 986048beb7d0abfa4d147b12f31c21755c0b2633 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Fri, 13 Dec 2019 11:39:04 +0800
Subject: [PATCH 11/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/src/modules/tpm/TPMsettings/Shixuninformation.js | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js b/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
index 2e2b01708..dfe6af833 100644
--- a/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
+++ b/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
@@ -841,7 +841,7 @@ class Shixuninformation extends Component {
                     >
 
                       {
-                        this.props.data === undefined ? "" : this.props.shixunsDetails.is_jupyter === true?this.props.data.shixun&&this.props.data.shixun.main_type.map((item, key) => {
+                        this.props.data === undefined ? "" : this.props.shixunsDetails&&this.props.shixunsDetails.is_jupyter === true?this.props.data.shixun&&this.props.data.shixun.main_type.map((item, key) => {
                           let itemtype=item.type_name.toLowerCase().indexOf('jupyter'.toLowerCase())
                           if(itemtype>-1) {
                             return (
@@ -856,7 +856,7 @@ class Shixuninformation extends Component {
                       }
 
                       {
-                        this.props.data === undefined ? "" : this.props.shixunsDetails.is_jupyter === false?this.props.data.shixun&&this.props.data.shixun.main_type.map((item, key) => {
+                        this.props.data === undefined ? "" : this.props.shixunsDetails&&this.props.shixunsDetails.is_jupyter === false?this.props.data.shixun&&this.props.data.shixun.main_type.map((item, key) => {
                           let itemtype=item.type_name.toLowerCase().indexOf('jupyter'.toLowerCase())
                           if(itemtype===-1) {
                             return (

From 114d78255802c69b324f8da62c81b881a392fa2a Mon Sep 17 00:00:00 2001
From: jingquan huang <huang.jingquan@163.com>
Date: Fri, 13 Dec 2019 11:53:43 +0800
Subject: [PATCH 12/30] RequestStore for current user and current laboratory

---
 Gemfile                                   |  3 +++
 app/controllers/application_controller.rb |  2 +-
 app/models/laboratory.rb                  | 14 +++++++++++---
 app/models/user.rb                        | 12 ++++++++++--
 4 files changed, 25 insertions(+), 6 deletions(-)

diff --git a/Gemfile b/Gemfile
index 55030971d..55478816f 100644
--- a/Gemfile
+++ b/Gemfile
@@ -103,3 +103,6 @@ gem 'diffy'
 # oauth2
 gem 'omniauth', '~> 1.9.0'
 gem 'omniauth-oauth2', '~> 1.6.0'
+
+# global var
+gem 'request_store'
diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
index 3ec8ad0f7..b3a0e123a 100644
--- a/app/controllers/application_controller.rb
+++ b/app/controllers/application_controller.rb
@@ -303,7 +303,7 @@ class ApplicationController < ActionController::Base
 		current_domain_session = session[:"#{default_yun_session}"]
 		if current_domain_session
 			# existing session
-			(User.active.find(current_domain_session) rescue nil)
+			User.current = (User.active.find(current_domain_session) rescue nil)
 		elsif autologin_user = try_to_autologin
 			autologin_user
 		elsif params[:format] == 'atom' && params[:key] && request.get? && accept_rss_auth?
diff --git a/app/models/laboratory.rb b/app/models/laboratory.rb
index 2ba86ed90..dab2f6f39 100644
--- a/app/models/laboratory.rb
+++ b/app/models/laboratory.rb
@@ -38,12 +38,20 @@ class Laboratory < ApplicationRecord
     find_by_identifier(subdomain)
   end
 
-  def self.current=(laboratory)
-    Thread.current[:current_laboratory] = laboratory
+  # def self.current=(laboratory)
+  #   Thread.current[:current_laboratory] = laboratory
+  # end
+  #
+  # def self.current
+  #   Thread.current[:current_laboratory] ||= Laboratory.find(1)
+  # end
+
+  def self.current=(user)
+    RequestStore.store[:current_laboratory] = user
   end
 
   def self.current
-    Thread.current[:current_laboratory] ||= Laboratory.find(1)
+    RequestStore.store[:current_laboratory] ||= User.anonymous
   end
 
   def shixuns
diff --git a/app/models/user.rb b/app/models/user.rb
index eb3ece0a4..a9b2f0b3a 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -540,12 +540,20 @@ class User < ApplicationRecord
     mail.present?
   end
 
+  # def self.current=(user)
+  #   Thread.current[:current_user] = user
+  # end
+  #
+  # def self.current
+  #   Thread.current[:current_user] ||= User.anonymous
+  # end
+
   def self.current=(user)
-    Thread.current[:current_user] = user
+    RequestStore.store[:current_user] = user
   end
 
   def self.current
-    Thread.current[:current_user] ||= User.anonymous
+    RequestStore.store[:current_user] ||= User.anonymous
   end
 
   def self.anonymous

From 9de3195e3a2754459f8d9382a9b582d00cec1cf5 Mon Sep 17 00:00:00 2001
From: cxt <853663049@qq.com>
Date: Fri, 13 Dec 2019 11:55:24 +0800
Subject: [PATCH 13/30] =?UTF-8?q?=E5=AE=9E=E8=AE=AD=E7=94=B3=E8=AF=B7?=
 =?UTF-8?q?=E5=85=AC=E5=BC=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 app/controllers/shixuns_controller.rb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app/controllers/shixuns_controller.rb b/app/controllers/shixuns_controller.rb
index 63bf059e0..caa716f16 100644
--- a/app/controllers/shixuns_controller.rb
+++ b/app/controllers/shixuns_controller.rb
@@ -849,7 +849,7 @@ class ShixunsController < ApplicationController
 	def apply_public
 		tip_exception(-1, "请先发布实训再申请公开") if @shixun.status != 2
 		ActiveRecord::Base.transaction do
-			@shixun.update_attributes!(pubic: 1)
+			@shixun.update_attributes!(public: 1)
 			apply = ApplyAction.where(:container_type => "ApplyShixun", :container_id => @shixun.id).order("created_at desc").first
 			if apply && apply.status == 0
 				@status = 0

From 6c9513e43549ddf0b1cdf7a36f0584f1bd6bcd2c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Fri, 13 Dec 2019 12:54:51 +0800
Subject: [PATCH 14/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js b/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
index 5a7bcb579..af88fc6a7 100644
--- a/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
+++ b/public/react/src/modules/tpm/shixunchild/Challenges/Challengesjupyter.js
@@ -258,7 +258,7 @@ class Challengesjupyter extends Component {
 										<div className="sortinxdirection mt60">
 											<div className="renwuxiangssi sortinxdirection">
 												<div><p className="renwuxiangqdiv">任务详情</p></div>
-												<div><p className="renwuxiangqdivtest ml24 shixunbingbaocun">(请将实训题目写在下方并保存)</p></div>
+												<div><p className="renwuxiangqdivtest ml1 shixunbingbaocun">(请将实训题目写在下方并保存)</p></div>
 											</div>
 											<div className="renwuxiangssit xaxisreverseorder">
 												<div className="challenbaocun" onClick={() => this.modifyjupyter(this.state)}><p

From 817309387d925db26fc9bc8c2e5cc323347f4c53 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Fri, 13 Dec 2019 14:10:56 +0800
Subject: [PATCH 15/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/src/AppConfig.js                 |  2 +-
 public/react/src/modules/modals/Modals.js     |  3 +
 public/react/src/modules/tpm/TPMBanner.js     | 99 ++++++++++++++++---
 .../tpm/TPMsettings/Shixuninformation.js      |  4 +-
 .../modules/tpm/TPMsettings/TPMsettings.js    | 25 ++---
 5 files changed, 102 insertions(+), 31 deletions(-)

diff --git a/public/react/src/AppConfig.js b/public/react/src/AppConfig.js
index 7a6f0fc04..a38489385 100644
--- a/public/react/src/AppConfig.js
+++ b/public/react/src/AppConfig.js
@@ -35,7 +35,7 @@ if (isDev) {
 // 老师
 // debugType="teacher";
 // 学生
-//debugType="student";
+// debugType="student";
 
 window._debugType = debugType;
 export function initAxiosInterceptors(props) {
diff --git a/public/react/src/modules/modals/Modals.js b/public/react/src/modules/modals/Modals.js
index 859e54784..e241f379a 100644
--- a/public/react/src/modules/modals/Modals.js
+++ b/public/react/src/modules/modals/Modals.js
@@ -29,6 +29,9 @@ render() {
 						 	body{
 						 	     overflow: hidden !important;
 						 	 }
+						 	 .ant-modal-body {
+                    padding: 20px 40px;
+                }
 						 	`
 						 }
 					 </style>:""}
diff --git a/public/react/src/modules/tpm/TPMBanner.js b/public/react/src/modules/tpm/TPMBanner.js
index 2998ab0a8..74016634f 100644
--- a/public/react/src/modules/tpm/TPMBanner.js
+++ b/public/react/src/modules/tpm/TPMBanner.js
@@ -1,14 +1,10 @@
 import React, {Component} from 'react';
 
-import {Redirect} from 'react-router';
-
 import {BrowserRouter as Router, Route, Link, Switch} from "react-router-dom";
 
-import PropTypes from 'prop-types';
-
 import {Rating, Progress} from "@icedesign/base";
 
-import {Modal, Input, Radio, Pagination, message, Spin, Icon, Tooltip, Rate} from 'antd';
+import {Modal, Input, Radio, Pagination, message, Spin, Icon, Tooltip, Button,Popover} from 'antd';
 
 import AccountProfile from "../user/AccountProfile";
 
@@ -298,7 +294,10 @@ class TPMBanner extends Component {
 
   ModalCancel = () => {
     this.setState({
-      Modalstype: false
+      Modalstype: false,
+      Modalstopval: "",
+      modalsMidval:undefined,
+      ModalsBottomval:"",
     })
   }
   ModalSave = () => {
@@ -316,12 +315,48 @@ class TPMBanner extends Component {
     this.setState({
       Modalstype: true,
       Modalstopval: "是否确认撤销发布?",
+      modalsMidval:"撤销发布后,学员将无法进行练习,若您新增关",
+      ModalsBottomval:"卡,学员需要重新体验课程",
       ModalCancel: this.ModalCancel,
       ModalSave: this.ModalSave,
     })
   }
 
+  openpublic=()=>{
+    let id = this.props.match.params.shixunId;
+    let url = `/shixuns/${id}/apply_public.json`;
+    axios.get(url).then((response) => {
+     if(response.data.status===0){
+       window.location.reload()
+     }
+    }).catch((error) => {
+      console.log(error)
+    });
+  }
+
+  ModalhidenpublicSave=()=>{
+    let id = this.props.match.params.shixunId;
+    let url = `/shixuns/${id}/cancel_apply_public.json`;
+    axios.get(url).then((response) => {
+      if(response.data.status===0){
+         window.location.reload()
+      }
+    }).catch((error) => {
+      console.log(error)
+    });
+  }
+
+  hidenpublic=()=>{
+    this.setState({
+      Modalstype: true,
+      Modalstopval: "是否确认撤销公开?",
+      modalsMidval:" ",
+      ModalsBottomval:" ",
+      ModalCancel: this.ModalCancel,
+      ModalSave: this.ModalhidenpublicSave,
+    })
 
+  }
   /*
   * 申请发布按钮
   * */
@@ -335,12 +370,17 @@ class TPMBanner extends Component {
       } else {
         evaluation_set_position = response.data.evaluation_set_position
       }
-      this.setState({
-        Issuevisible: true,
-        tag_position: response.data.tag_position,
-        evaluation_set_position: evaluation_set_position,
-        publishboxstatus: response.data.status,
-      })
+      if(response.data.status===0){
+        window.location.reload()
+      }else{
+        this.setState({
+          Issuevisible: true,
+          tag_position: response.data.tag_position,
+          evaluation_set_position: evaluation_set_position,
+          publishboxstatus: response.data.status,
+        })
+      }
+
     }).catch((error) => {
       console.log(error)
     });
@@ -449,7 +489,7 @@ class TPMBanner extends Component {
             })
             // this.shixunexec(response.data.message+".json")
           } else if (response.data.status === -1) {
-            console.log(response)
+
           } else if (response.data.status === -3) {
             this.setState({
               shixunsmessage: response.data.message,
@@ -521,7 +561,7 @@ class TPMBanner extends Component {
             })
             // this.shixunexec(response.data.message+".json")
           } else if (response.data.status === -1) {
-            console.log(response)
+
           } else if (response.data.status === -3) {
             this.setState({
               shixunsmessage: response.data.message,
@@ -700,6 +740,7 @@ class TPMBanner extends Component {
               modalCancel={this.state.ModalCancel}
               modalSave={this.state.ModalSave}
               modalsBottomval={this.state.ModalsBottomval}
+              modalsMidval={this.state.modalsMidval}
               loadtype={this.state.Loadtype}
             /> : ""}
 
@@ -908,8 +949,22 @@ class TPMBanner extends Component {
                 {/*}*/}
 
                 {shixunsDetails.shixun_status === 0 && this.props.identity < 5 ?
-                  <a onClick={this.applyrelease} className="fr user_default_btn user_blue_btn mr20 font-18 height39"
-                     id="challenge_begin">发布</a> : ""
+                  <Popover
+                    content={
+                       <pre>
+                          <div>您编辑完成后,可以马上使用到自</div>
+                            <div>己的课堂和实训课程哦</div>
+                            <a onClick={this.hide}>Close</a>
+                       </pre>
+                    }
+                    trigger="click"
+                    placement="bottom"
+                    visible={false}
+                    onVisibleChange={this.handleVisibleChange}
+                  >
+                    <a onClick={this.applyrelease} className="fr user_default_btn user_blue_btn mr20 font-18 height39"
+                       id="challenge_begin">发布</a>
+                  </Popover>: ""
                 }
 
                 <Modal
@@ -972,6 +1027,18 @@ class TPMBanner extends Component {
 
                 </Modal>
 
+                {shixunsDetails.shixun_status === 2 && shixunsDetails.public===0 && this.props.identity < 5 ?
+                  <Button type="primary" ghost id="challenge_begin" onClick={this.openpublic} className="fr user_default_btn user_blue_btn mr20 font-18 height39">
+                  申请公开
+                  </Button>: ""
+                }
+
+                {shixunsDetails.shixun_status === 2 && shixunsDetails.public===1 && this.props.identity < 5 ?
+                  <Button type="primary" ghost id="challenge_begin" onClick={this.hidenpublic} className="fr user_default_btn user_blue_btn mr20 font-18 height39">
+                    撤销公开
+                  </Button>: ""
+                }
+
                 {shixunsDetails.shixun_status === 2 && shixunsDetails.public===0 && this.props.identity < 5 ?
                   <a onClick={this.cancel_publish} className="fr user_default_btn user_blue_btn mr20 font-18 height39"
                      id="challenge_begin">撤销发布</a> : ""
diff --git a/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js b/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
index dfe6af833..1b2dad166 100644
--- a/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
+++ b/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
@@ -713,7 +713,7 @@ class Shixuninformation extends Component {
   }
   render() {
 
-    let operateauthority = this.props.identity === 1 ? true : this.props.identity < 5 && this.props.data.shixun.status == 0 ? true : false;
+
     // console.log(operateauthority)
     const {getFieldDecorator} = this.props.form;
     const { fileList, choice_standard_scripts, postapplyvisible, shixunmemoMDvalue} = this.state;
@@ -754,7 +754,7 @@ class Shixuninformation extends Component {
         return isLt150M;
       },
     }
-
+    let operateauthority = this.props.identity === 1 ? true : this.props.identity < 5 && this.props.data.shixun&&this.props.data.shixun.status == 0 ? true : false;
     return (
       <div>
         <div className="educontent mb50 edu-back-white padding10-20">
diff --git a/public/react/src/modules/tpm/TPMsettings/TPMsettings.js b/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
index f15141480..8e7b0b93a 100644
--- a/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
+++ b/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
@@ -41,17 +41,16 @@ export default class TPMsettings extends Component {
     axios.get(Url).then((response) => {
       // alert(response.data.shixun.choice_standard_scripts)
       if (response.status === 200) {
-
+        if (response.data.shixun.scope_partment) {
+          if (response.data.shixun.scope_partment.length > 0) {
+            this.setState({
+              scopetype: true
+            })
+          }
+        }
         this.setState({
           data: response.data
         })
-
-        if (response.data.shixun.scope_partment.length > 0) {
-          this.setState({
-            scopetype: true
-          })
-        }
-
       }
 
     });
@@ -96,7 +95,8 @@ export default class TPMsettings extends Component {
           operateshixunstype: false,
         });
 
-        window.location.href = "/shixuns";
+        // window.location.href = "/shixuns";
+        this.props.history.replace( "/shixuns/");
       }
     }).catch((error) => {
       console.log(error)
@@ -113,7 +113,8 @@ export default class TPMsettings extends Component {
           operateshixunstype: false,
         });
 
-        window.location.href = "/shixuns/" + id + "/challenges";
+        // window.location.href = "/shixuns/" + id + "/challenges";
+        this.props.history.replace( "/shixuns/" + id + "/challenges");
       }
     }).catch((error) => {
       console.log(error)
@@ -128,7 +129,7 @@ export default class TPMsettings extends Component {
 
   render() {
 
-    let showtabs = this.props.shixunsDetails === undefined ? "" : this.props.shixunsDetails.is_jupyter === true ? "" : "学习页面设置"
+    let showtabs = this.props.shixunsDetails === undefined ? "" : this.props.shixunsDetails&&this.props.shixunsDetails.is_jupyter === true ? "" : "学习页面设置"
 
     // let a="isvnc";
     // let b="isVNC";
@@ -197,7 +198,7 @@ export default class TPMsettings extends Component {
               getdatas={(key) => this.getdatas(key)}
             />
           </TabPane>
-          {this.props.shixunsDetails === undefined ? "" : this.props.shixunsDetails.is_jupyter === false ?
+          {this.props.shixunsDetails === undefined ? "" : this.props.shixunsDetails&&this.props.shixunsDetails.is_jupyter === false ?
             <TabPane tab={showtabs} key="3">
               <LearningSettings
                 {...this.state}

From 249a434b87940b5b648382be64473a3822de4707 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Fri, 13 Dec 2019 14:11:33 +0800
Subject: [PATCH 16/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/config/webpack.config.prod.js |  4 +--
 public/react/src/modules/tpm/TPMDataset.js | 33 +++++++++++++---------
 2 files changed, 21 insertions(+), 16 deletions(-)

diff --git a/public/react/config/webpack.config.prod.js b/public/react/config/webpack.config.prod.js
index 1fe7a6c93..596843f5f 100644
--- a/public/react/config/webpack.config.prod.js
+++ b/public/react/config/webpack.config.prod.js
@@ -326,8 +326,8 @@ module.exports = {
 					comments: false
 				},
 				compress: {
-					drop_debugger: true,
-					drop_console: true
+					drop_debugger: false,
+					drop_console: false
 				}
 			}
 		}),
diff --git a/public/react/src/modules/tpm/TPMDataset.js b/public/react/src/modules/tpm/TPMDataset.js
index 918868392..dd15fd553 100644
--- a/public/react/src/modules/tpm/TPMDataset.js
+++ b/public/react/src/modules/tpm/TPMDataset.js
@@ -75,6 +75,7 @@ class TPMDataset extends Component {
 			mylistansum:30,
 			collaboratorList:[],
 			fileList:[],
+			fileListimg:[],
 			file:null,
 			datalist:[],
 			data_sets_count:0,
@@ -263,19 +264,19 @@ class TPMDataset extends Component {
 	handleChange = (info) => {
 		if(info.file.status == "done" || info.file.status == "uploading" || info.file.status === 'removed'){
 			let fileList = info.fileList;
-
-			// for(var list of fileList ){
-			//   console.log(list)
-			// }
-			this.setState({
-				fileList: appendFileSizeToUploadFileAll(fileList),
-			});
-			if(info.file.status === 'done'){
-				//done 成功就会调用这个方法
-				this.getdatas();
-				// this.props.showNotification(`上传文件成功`);
-
-			}
+           if(info.file.status == "done"){
+						 for(var list of fileList ){
+							 console.log(list)
+							 this.state.fileListimg.push(list);
+						 }
+						 this.setState({
+							 fileList: appendFileSizeToUploadFileAll(fileList),
+							 fileListimg:this.state.fileListimg,
+						 });
+						 if(info.file.status === 'done'){
+							 this.getdatas();
+						 }
+					 }
 		}
 	}
 
@@ -377,7 +378,7 @@ class TPMDataset extends Component {
 
 	render() {
 		const {tpmLoading, shixun, user, match} = this.props;
-		const {columns, page, limit, selectedRowKeys,mylistansum,fileList,datalist,data_sets_count,loadingstate} = this.state;
+		const {columns, page, limit, selectedRowKeys,mylistansum,fileList,datalist,data_sets_count,loadingstate,fileListimg} = this.state;
 		const rowSelection = {
 			selectedRowKeys,
 			onChange: this.onSelectChange,
@@ -400,10 +401,14 @@ class TPMDataset extends Component {
 			// showUploadList={false},然后外部拿到 fileList 数组自行渲染列表。
 			// showUploadList: false,
 			action: `${getUploadActionUrl()}`,
+			showUploadList:false,
 			onChange: this.handleChange,
 			onRemove: this.onAttachmentRemove,
 			beforeUpload: (file) => {
+				//上传前的操作
 				console.log('beforeUpload', file.name);
+				console.log("TPMDatasetTPMDatasetTPMDataset");
+				console.log(fileListimg);
 				const isLt150M = file.size / 1024 / 1024 < 150;
 				if (!isLt150M) {
 					this.props.showNotification('文件大小必须小于150MB!');

From 76838c0ea52083eb6ab918fb0a80ee9bd0ecfb09 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Fri, 13 Dec 2019 14:26:17 +0800
Subject: [PATCH 17/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/src/modules/tpm/TPMBanner.js           |  6 +++---
 .../src/modules/tpm/TPMsettings/TPMsettings.js      | 13 +++++++------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/public/react/src/modules/tpm/TPMBanner.js b/public/react/src/modules/tpm/TPMBanner.js
index 74016634f..b43d86640 100644
--- a/public/react/src/modules/tpm/TPMBanner.js
+++ b/public/react/src/modules/tpm/TPMBanner.js
@@ -951,10 +951,10 @@ class TPMBanner extends Component {
                 {shixunsDetails.shixun_status === 0 && this.props.identity < 5 ?
                   <Popover
                     content={
-                       <pre>
+                       <pre className={"pd20"}>
                           <div>您编辑完成后,可以马上使用到自</div>
-                            <div>己的课堂和实训课程哦</div>
-                            <a onClick={this.hide}>Close</a>
+                          <div className={"wechatcenter mt10"}>己的课堂和实训课程哦</div>
+                          <div className={"wechatcenter mt15"}>   <Button  type="primary" >我知道了</Button></div>
                        </pre>
                     }
                     trigger="click"
diff --git a/public/react/src/modules/tpm/TPMsettings/TPMsettings.js b/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
index 8e7b0b93a..12a6c4a70 100644
--- a/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
+++ b/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
@@ -41,13 +41,14 @@ export default class TPMsettings extends Component {
     axios.get(Url).then((response) => {
       // alert(response.data.shixun.choice_standard_scripts)
       if (response.status === 200) {
-        if (response.data.shixun.scope_partment) {
-          if (response.data.shixun.scope_partment.length > 0) {
-            this.setState({
-              scopetype: true
-            })
-          }
+        if(response.data){
+            if (response.data.shixun&&response.data.shixun.scope_partment.length > 0) {
+              this.setState({
+                scopetype: true
+              })
+            }
         }
+
         this.setState({
           data: response.data
         })

From 0929b5f38fc870d8df9468510ab5e1098b650550 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Fri, 13 Dec 2019 14:26:55 +0800
Subject: [PATCH 18/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../react/src/modules/courses/coursesPublic/NewShixunModel.js   | 2 +-
 public/react/src/modules/tpm/TPMDataset.js                      | 2 --
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/public/react/src/modules/courses/coursesPublic/NewShixunModel.js b/public/react/src/modules/courses/coursesPublic/NewShixunModel.js
index 9670e5e0b..a9100f2f3 100644
--- a/public/react/src/modules/courses/coursesPublic/NewShixunModel.js
+++ b/public/react/src/modules/courses/coursesPublic/NewShixunModel.js
@@ -494,7 +494,7 @@ class NewShixunModel extends Component{
 								<div className="clearfix sortinxdirection mt30 intermediatecenterysls">
 									<p className="nandu">筛选:</p>
 									<p className={belongtoindex===0?"clickbutstwo ml13":"clickbutstwos ml13"} onClick={()=>this.belongto("all")}>全部实训</p>
-									<p className={belongtoindex===1?"clickbutstwo ml20":"clickbutstwos ml20"} onClick={()=>this.belongto("mine")}>普通实训</p>
+									<p className={belongtoindex===1?"clickbutstwo ml20":"clickbutstwos ml20"} onClick={()=>this.belongto("mine")}>我的实训</p>
 								</div>:""
 							}
 							{/*{this.props.type==='shixuns'? <Dropdown overlay={menus}>*/}
diff --git a/public/react/src/modules/tpm/TPMDataset.js b/public/react/src/modules/tpm/TPMDataset.js
index dd15fd553..5818c8a46 100644
--- a/public/react/src/modules/tpm/TPMDataset.js
+++ b/public/react/src/modules/tpm/TPMDataset.js
@@ -264,7 +264,6 @@ class TPMDataset extends Component {
 	handleChange = (info) => {
 		if(info.file.status == "done" || info.file.status == "uploading" || info.file.status === 'removed'){
 			let fileList = info.fileList;
-           if(info.file.status == "done"){
 						 for(var list of fileList ){
 							 console.log(list)
 							 this.state.fileListimg.push(list);
@@ -276,7 +275,6 @@ class TPMDataset extends Component {
 						 if(info.file.status === 'done'){
 							 this.getdatas();
 						 }
-					 }
 		}
 	}
 

From 843ac8aea600b6e9582e473b440d60e9474c3700 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Fri, 13 Dec 2019 14:28:39 +0800
Subject: [PATCH 19/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/src/modules/tpm/TPMDataset.js | 24 ++++++++++++++--------
 1 file changed, 16 insertions(+), 8 deletions(-)

diff --git a/public/react/src/modules/tpm/TPMDataset.js b/public/react/src/modules/tpm/TPMDataset.js
index 5818c8a46..68f6a5e37 100644
--- a/public/react/src/modules/tpm/TPMDataset.js
+++ b/public/react/src/modules/tpm/TPMDataset.js
@@ -264,15 +264,23 @@ class TPMDataset extends Component {
 	handleChange = (info) => {
 		if(info.file.status == "done" || info.file.status == "uploading" || info.file.status === 'removed'){
 			let fileList = info.fileList;
-						 for(var list of fileList ){
-							 console.log(list)
-							 this.state.fileListimg.push(list);
-						 }
-						 this.setState({
-							 fileList: appendFileSizeToUploadFileAll(fileList),
-							 fileListimg:this.state.fileListimg,
-						 });
+			// try {
+			// 	for(var list of fileList ){
+			// 		console.log(list)
+			// 		this.state.fileListimg.push(list);
+			// 	}
+			// }catch (e) {
+			//
+			// }
+			this.setState({
+				fileList: appendFileSizeToUploadFileAll(fileList),
+
+			});
+
 						 if(info.file.status === 'done'){
+							 this.setState({
+								 fileListimg:this.state.fileListimg,
+							 })
 							 this.getdatas();
 						 }
 		}

From a3b463571482b53e692db60fc32a5747f2244060 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Fri, 13 Dec 2019 14:42:55 +0800
Subject: [PATCH 20/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../modules/tpm/TPMsettings/Configuration.js  | 40 ++++++------
 .../tpm/TPMsettings/LearningSettings.js       | 60 ++++++++---------
 .../tpm/TPMsettings/Shixuninformation.js      | 65 ++++++++++---------
 3 files changed, 85 insertions(+), 80 deletions(-)

diff --git a/public/react/src/modules/tpm/TPMsettings/Configuration.js b/public/react/src/modules/tpm/TPMsettings/Configuration.js
index 803a6bf89..9bf457993 100644
--- a/public/react/src/modules/tpm/TPMsettings/Configuration.js
+++ b/public/react/src/modules/tpm/TPMsettings/Configuration.js
@@ -69,16 +69,16 @@ export default class Shixuninformation extends Component {
   }
 
   componentDidMount() {
-    if (this.props.data&&this.props.data.shixun) {
-
-      this.setState({
-        can_copy:this.props.data.shixun && this.props.data.shixun.can_copy === undefined ? false : this.props.data.shixun&&this.props.data.shixun.can_copy,
-        use_scope: this.props.data.shixun && this.props.data.shixun.use_scope,
-        opening_time: this.props.data.shixun && this.props.data.shixun.opening_time,
-        opentime: !this.props.data.shixun && this.props.data.shixun.opening_time ? false : true,
-        oldscope_partment:this.props.data.shixun && this.props.data.shixun.scope_partment,
-      })
-
+    if (this.props.data) {
+      if (this.props.data.shixun) {
+        this.setState({
+          can_copy: this.props.data && this.props.data.shixun.can_copy === undefined ? false : this.props.data && this.props.data.shixun.can_copy,
+          use_scope: this.props.data && this.props.data.shixun.use_scope,
+          opening_time: this.props.data && this.props.data.shixun.opening_time,
+          opentime: !this.props.data && this.props.data.shixun.opening_time ? false : true,
+          oldscope_partment: this.props.data && this.props.data.shixun.scope_partment,
+        })
+      }
     }
     let departmentsUrl = `/shixuns/departments.json`;
     axios.get(departmentsUrl).then((response) => {
@@ -98,15 +98,15 @@ export default class Shixuninformation extends Component {
   componentDidUpdate(prevProps, prevState) {
     if (prevProps.data != this.props.data) {
       if (this.props.data) {
-
-        this.setState({
-          can_copy: this.props.data.shixun && this.props.data.shixun.can_copy === undefined ? false : this.props.data.shixun&&this.props.data.shixun.can_copy,
-          use_scope: this.props.data.shixun&& this.props.data.shixun.use_scope,
-          opening_time: this.props.data.shixun && this.props.data.shixun.opening_time,
-          opentime: !this.props.data.shixun && this.props.data.shixun.opening_time ? false : true,
-          oldscope_partment: this.props.data.shixun && this.props.data.shixun.scope_partment,
-        })
-
+        if (this.props.data.shixun) {
+          this.setState({
+            can_copy: this.props.data && this.props.data.shixun.can_copy === undefined ? false : this.props.data && this.props.data.shixun.can_copy,
+            use_scope: this.props.data && this.props.data.shixun.use_scope,
+            opening_time: this.props.data && this.props.data.shixun.opening_time,
+            opentime: !this.props.data && this.props.data.shixun.opening_time ? false : true,
+            oldscope_partment: this.props.data && this.props.data.shixun.scope_partment,
+          })
+        }
       }
     }
   }
@@ -262,7 +262,7 @@ export default class Shixuninformation extends Component {
           </div>
 
           <div className="edu-back-white mb10 ml30 mt20">
-            {this.props.data.shixun && this.props.data.shixun.use_scope === 0 && this.props.data.shixun && this.props.data.shixun.status === 2 ? "" :
+            {this.props.data && this.props.data.shixun.use_scope === 0 && this.props.data && this.props.data.shixun.status === 2 ? "" :
               <div>
                 <span className="color-grey-6 mt5 fl font-16" style={{minWidth: '45px'}}>公开程度:</span>
                 <span className="fl mt8 ml20">
diff --git a/public/react/src/modules/tpm/TPMsettings/LearningSettings.js b/public/react/src/modules/tpm/TPMsettings/LearningSettings.js
index 8d02cb4b8..dfcdda5ba 100644
--- a/public/react/src/modules/tpm/TPMsettings/LearningSettings.js
+++ b/public/react/src/modules/tpm/TPMsettings/LearningSettings.js
@@ -34,35 +34,8 @@ export default class Shixuninformation extends Component {
 
 
   componentDidMount() {
-    if (this.props.data&&this.props.data.shixun) {
-
-      this.setState({
-        vnc: this.props.data && this.props.data.shixun.vnc,
-        code_hidden: this.props.data && this.props.data.shixun.code_hidden,
-        forbid_copy: this.props.data && this.props.data.shixun.forbid_copy,
-        hide_code: this.props.data && this.props.data.shixun.hide_code,
-        task_pass: this.props.data && this.props.data.shixun.task_pass,
-        test_set_permission: this.props.data && this.props.data.shixun.test_set_permission,
-        is_secret_repository: this.props.data && this.props.data.shixun.is_secret_repository,
-        websshshow: this.props.data && this.props.data.shixun.webssh === 0 ? false : true,
-        multi_webssh: this.props.data && this.props.data.shixun.multi_webssh,
-        opensshRadio: this.props.data && this.props.data.shixun.webssh === 0 ? null : this.props.data && this.props.data.shixun.webssh,
-      })
-
-      // if(this.props.data && this.props.data.shixun.status===0){
-      //   this.setState({
-      //     task_pass:true
-      //   })
-      // }
-
-    }
-
-  }
-
-  componentDidUpdate(prevProps, prevState) {
-    if (prevProps.data != this.props.data) {
-      if (this.props.data) {
-
+    if (this.props.data ) {
+      if (this.props.data.shixun) {
         this.setState({
           vnc: this.props.data && this.props.data.shixun.vnc,
           code_hidden: this.props.data && this.props.data.shixun.code_hidden,
@@ -84,6 +57,35 @@ export default class Shixuninformation extends Component {
 
       }
     }
+
+  }
+
+  componentDidUpdate(prevProps, prevState) {
+    if (prevProps.data != this.props.data) {
+      if (this.props.data) {
+        if (this.props.data.shixun) {
+          this.setState({
+            vnc: this.props.data && this.props.data.shixun.vnc,
+            code_hidden: this.props.data && this.props.data.shixun.code_hidden,
+            forbid_copy: this.props.data && this.props.data.shixun.forbid_copy,
+            hide_code: this.props.data && this.props.data.shixun.hide_code,
+            task_pass: this.props.data && this.props.data.shixun.task_pass,
+            test_set_permission: this.props.data && this.props.data.shixun.test_set_permission,
+            is_secret_repository: this.props.data && this.props.data.shixun.is_secret_repository,
+            websshshow: this.props.data && this.props.data.shixun.webssh === 0 ? false : true,
+            multi_webssh: this.props.data && this.props.data.shixun.multi_webssh,
+            opensshRadio: this.props.data && this.props.data.shixun.webssh === 0 ? null : this.props.data && this.props.data.shixun.webssh,
+          })
+
+          // if(this.props.data && this.props.data.shixun.status===0){
+          //   this.setState({
+          //     task_pass:true
+          //   })
+          // }
+
+        }
+      }
+    }
   }
 
 
diff --git a/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js b/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
index 1b2dad166..2fdd30146 100644
--- a/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
+++ b/public/react/src/modules/tpm/TPMsettings/Shixuninformation.js
@@ -55,39 +55,41 @@ class Shixuninformation extends Component {
 
   componentDidUpdate(prevProps, prevState) {
     if (prevProps.data != this.props.data) {
-      if (this.props.data&&this.props.data.shixun) {
-        this.setState({
-          shixunName: this.props.data.shixun&&this.props.data.shixun.name,
-          trainee:this.props.data.shixun&&this.props.data.shixun.trainee,
-          choice_main_type: this.props.data.shixun&&this.props.data.shixun.choice_main_type,
-          choice_small_type: this.props.data.shixun&&this.props.data.shixun.choice_small_type,
-          choice_standard_scripts:this.props.data.shixun&&this.props.data.shixun.choice_standard_scripts,
-          shixunmemoMDvalue: this.props.data.shixun&&this.props.data.shixun.evaluate_script,
-          simichecked: this.props.data.shixun&&this.props.data.shixun.is_secret_repository,
-          shixun_service_configs: this.props.data.shixun&&this.props.data.shixun.shixun_service_configs,
-          standard_scripts:this.props.data.shixun&&this.props.data.shixun.standard_scripts,
-          shixun_service_configlist:this.props.data.shixun&&this.props.data.shixun.shixun_service_configs,
+
+      if (this.props.data ) {
+        if (this.props.data.shixun){
+          this.setState({
+          shixunName: this.props.data && this.props.data.shixun.name,
+          trainee: this.props.data && this.props.data.shixun.trainee,
+          choice_main_type: this.props.data && this.props.data.shixun.choice_main_type,
+          choice_small_type: this.props.data && this.props.data.shixun.choice_small_type,
+          choice_standard_scripts: this.props.data && this.props.data.shixun.choice_standard_scripts,
+          shixunmemoMDvalue: this.props.data && this.props.data.shixun.evaluate_script,
+          simichecked: this.props.data && this.props.data.shixun.is_secret_repository,
+          shixun_service_configs: this.props.data && this.props.data.shixun.shixun_service_configs,
+          standard_scripts: this.props.data && this.props.data.shixun.standard_scripts,
+          shixun_service_configlist: this.props.data && this.props.data.shixun.shixun_service_configs,
         })
 
-        if(this.props.data.shixun&&this.props.data.shixun.choice_standard_scripts===null){
+        if (this.props.data && this.props.data.shixun.choice_standard_scripts === null) {
           this.setState({
-            choice_standard_scripts:{id: this.props.data.shixun&&this.props.data.shixun.standard_scripts[0].id, value: ""},
-            choice_standard_scriptssum:this.props.data.shixun&&this.props.data.shixun.standard_scripts[0].id
+            choice_standard_scripts: {id: this.props.data && this.props.data.shixun.standard_scripts[0].id, value: ""},
+            choice_standard_scriptssum: this.props.data && this.props.data.shixun.standard_scripts[0].id
           })
           this.props.form.setFieldsValue({
-            selectscripts:this.props.data.shixun&&this.props.data.shixun.standard_scripts[0].id
+            selectscripts: this.props.data && this.props.data.shixun.standard_scripts[0].id
           })
-          this.get_mirror_script(this.props.data.shixun&&this.props.data.shixun.standard_scripts[0].id)
-        }else{
+          this.get_mirror_script(this.props.data && this.props.data.shixun.standard_scripts[0].id)
+        } else {
           this.props.form.setFieldsValue({
-            selectscripts:this.props.data.shixun&&this.props.data.shixun.choice_standard_scripts
+            selectscripts: this.props.data && this.props.data.shixun.choice_standard_scripts
           })
         }
 
         let newlist = ""
-        this.props.data.shixun&&this.props.data.shixun.choice_small_type.map((item, key) => {
-          this.props.data.shixun.small_type.map((i,k)=>{
-            if (item===i.id) {
+        this.props.data && this.props.data.shixun.choice_small_type.map((item, key) => {
+          this.props.data && this.props.data.shixun.small_type.map((i, k) => {
+            if (item === i.id) {
               newlist = newlist + `${i.description}`
             }
           })
@@ -96,23 +98,24 @@ class Shixuninformation extends Component {
           subvalues: newlist
         })
 
-        this.props.data.shixun&&this.props.data.shixun.main_type.map((item,key)=>{
-          if(item.id===this.props.data.shixun&&this.props.data.shixun.choice_main_type){
+        this.props.data && this.props.data.shixun.main_type.map((item, key) => {
+          if (item.id === this.props.data && this.props.data.shixun.choice_main_type) {
             this.setState({
-              mainvalues:item.description,
+              mainvalues: item.description,
             })
           }
         })
 
         this.props.form.setFieldsValue({
-          name:this.props.data.shixun&&this.props.data.shixun.name,
-          trainee: this.props.data.shixun&&this.props.data.shixun.trainee,
-          selectleft: this.props.data.shixun&&this.props.data.shixun.choice_main_type,
-          selectright:this.props.data.shixun&&this.props.data.shixun.choice_small_type,
+          name: this.props.data && this.props.data.shixun.name,
+          trainee: this.props.data && this.props.data.shixun.trainee,
+          selectleft: this.props.data && this.props.data.shixun.choice_main_type,
+          selectright: this.props.data && this.props.data.shixun.choice_small_type,
         })
-        this.contentMdRef.current.setValue(this.props.data.shixun&&this.props.data.shixun.description);
+        this.contentMdRef.current.setValue(this.props.data && this.props.data.shixun.description);
       }
     }
+    }
   }
 
   getshixunmemoMDvalue = (value, e) => {
@@ -754,7 +757,7 @@ class Shixuninformation extends Component {
         return isLt150M;
       },
     }
-    let operateauthority = this.props.identity === 1 ? true : this.props.identity < 5 && this.props.data.shixun&&this.props.data.shixun.status == 0 ? true : false;
+    let operateauthority = this.props.identity === 1 ? true : this.props.identity < 5 && this.props.data&&this.props.data.shixun.status == 0 ? true : false;
     return (
       <div>
         <div className="educontent mb50 edu-back-white padding10-20">

From 67f4461f185be9ac55051e57f58d213082e89ab3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Fri, 13 Dec 2019 14:52:47 +0800
Subject: [PATCH 21/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/src/modules/tpm/TPMsettings/TPMsettings.js | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/public/react/src/modules/tpm/TPMsettings/TPMsettings.js b/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
index 12a6c4a70..2b389245b 100644
--- a/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
+++ b/public/react/src/modules/tpm/TPMsettings/TPMsettings.js
@@ -6,6 +6,8 @@ import {
   Modal
 } from 'antd';
 
+import './css/TPMsettings.css';
+
 import TopShixuninformation from './Shixuninformation';
 
 import Configuration from './Configuration';
@@ -14,8 +16,6 @@ import LearningSettings from './LearningSettings';
 
 import axios from 'axios';
 
-import './css/TPMsettings.css';
-
 const {TabPane} = Tabs;
 
 // 处理整点 半点

From f764c2f58ee9041781f8d608467db04bee03a19e Mon Sep 17 00:00:00 2001
From: guange <guange@gmail.com>
Date: Fri, 13 Dec 2019 14:57:48 +0800
Subject: [PATCH 22/30] =?UTF-8?q?jupyter=E9=87=8D=E7=BD=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 app/controllers/jupyters_controller.rb | 12 ++++++
 app/services/jupyter_service.rb        | 59 +++++++++++++++++++++++++-
 2 files changed, 69 insertions(+), 2 deletions(-)

diff --git a/app/controllers/jupyters_controller.rb b/app/controllers/jupyters_controller.rb
index ab3962cbc..96ebf3452 100644
--- a/app/controllers/jupyters_controller.rb
+++ b/app/controllers/jupyters_controller.rb
@@ -30,5 +30,17 @@ class JupytersController < ApplicationController
         render json: {status: 0, url: url, port: port}
     end
 
+    def reset_with_tpi
+        myshixun = Myshixun.find_by(identifier: params[:identifier])
+        info = jupyter_tpi_reset(myshixun)
+        render json: {status: 0, url: info[:url], port: info[:port]}
+    end
+
+    def reset_with_tpm
+        shixun = Shixun.find_by(identifier: params[:identifier])
+        info = jupyter_tpm_reset(shixun)
+        render json: {status: 0, url: info[:url], port: info[:port]}
+    end
+
 
 end
\ No newline at end of file
diff --git a/app/services/jupyter_service.rb b/app/services/jupyter_service.rb
index 32c2047c4..f4b660175 100644
--- a/app/services/jupyter_service.rb
+++ b/app/services/jupyter_service.rb
@@ -7,7 +7,7 @@ module JupyterService
             shixun_tomcat = edu_setting('cloud_bridge')
             uri = "#{shixun_tomcat}/bridge/jupyter/get"
             tpiID = "tpm#{shixun.id}"
-            params = {tpiID: tpiID, :containers => "#{Base64.urlsafe_encode64(shixun_container_limit(shixun))}"}
+            params = {tpiID: tpiID, identifier: shixun.identifier, :containers => "#{Base64.urlsafe_encode64(shixun_container_limit(shixun))}"}
     
             logger.info "test_juypter: uri->#{uri}, params->#{params}"
             res = uri_post uri, params
@@ -45,7 +45,7 @@ module JupyterService
             uri = "#{shixun_tomcat}/bridge/jupyter/get"
 
             tpiID = myshixun.id
-            params = {tpiID: tpiID, :containers => "#{Base64.urlsafe_encode64(shixun_container_limit(shixun))}"}
+            params = {tpiID: tpiID, identifier: shixun.identifier,  :containers => "#{Base64.urlsafe_encode64(shixun_container_limit(shixun))}"}
             res = uri_post uri, params
 
             logger.info "test_juypter: #{res}"
@@ -130,4 +130,59 @@ module JupyterService
     end
 
 
+    ##重置jupyter环境
+    def jupyter_tpi_reset(myshixun)
+        jupyter_delete_tpi(myshixun)
+        url = jupyter_url_with_game(myshixun)
+        port = jupyter_port_with_game(myshixun)
+        {url: url, port: port}
+    end
+
+    ## 重置tpm环境
+    def jupyter_tpm_reset(shixun)
+        jupyter_delete_tpm(shixun)
+
+        url = jupyter_url_with_shixun(shixun)
+        port = jupyter_port_with_shixun(shixun)
+
+        {url: url, port: port}
+    end
+
+
+
+    # 删除pod
+    def jupyter_delete_tpi(myshixun) 
+        myshixun_id = myshixun.id
+        digest = myshixun.identifier + edu_setting('bridge_secret_key')
+        digest_key = Digest::SHA1.hexdigest("#{digest}")
+        begin
+            shixun_tomcat = edu_setting('cloud_bridge')
+            uri = "#{shixun_tomcat}/bridge/jupyter/delete"
+            Rails.logger.info("#{current_user} => cloese_jupyter digest is #{digest}")
+            params = {:tpiID => myshixun_id, :digestKey => digest_key, :identifier => myshixun.identifier}
+            res = uri_post uri, params
+            if res && res['code'].to_i != 0
+                raise("实训云平台繁忙(繁忙等级:110)")
+            end
+        end
+    end
+
+
+    def jupyter_delete_tpm(shixun) 
+        tpiID = "tpm#{shixun.id}"
+        digest = shixun.identifier + edu_setting('bridge_secret_key')
+        digest_key = Digest::SHA1.hexdigest("#{digest}")
+        begin
+            shixun_tomcat = edu_setting('cloud_bridge')
+            uri = "#{shixun_tomcat}/bridge/jupyter/delete"
+            Rails.logger.info("#{current_user} => cloese_jupyter digest is #{digest}")
+            params = {:tpiID => tpiID, :digestKey => digest_key, :identifier => shixun.identifier}
+            res = uri_post uri, params
+            if res && res['code'].to_i != 0
+                raise("实训云平台繁忙(繁忙等级:110)")
+            end
+        end
+    end
+
+
 end

From c08e6338adcae64611830f6ac52f2dba1167010a Mon Sep 17 00:00:00 2001
From: guange <guange@gmail.com>
Date: Fri, 13 Dec 2019 15:02:16 +0800
Subject: [PATCH 23/30] .

---
 config/routes.rb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/config/routes.rb b/config/routes.rb
index f3150db7f..643972b95 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -31,6 +31,8 @@ Rails.application.routes.draw do
         get :save_with_tpm
         get :get_info_with_tpi
         get :get_info_with_tpm
+        get :reset_with_tpi
+        get :reset_with_tpm
       end
     end
     

From 36533d76beb35f9972a9757fbc52fa4f60d40bc8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Fri, 13 Dec 2019 15:12:11 +0800
Subject: [PATCH 24/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/src/modules/tpm/TPMDataset.js | 69 +++++++++++++++-------
 1 file changed, 49 insertions(+), 20 deletions(-)

diff --git a/public/react/src/modules/tpm/TPMDataset.js b/public/react/src/modules/tpm/TPMDataset.js
index 68f6a5e37..cab7ec91a 100644
--- a/public/react/src/modules/tpm/TPMDataset.js
+++ b/public/react/src/modules/tpm/TPMDataset.js
@@ -75,7 +75,7 @@ class TPMDataset extends Component {
 			mylistansum:30,
 			collaboratorList:[],
 			fileList:[],
-			fileListimg:[],
+			fileListimgs:[],
 			file:null,
 			datalist:[],
 			data_sets_count:0,
@@ -226,6 +226,31 @@ class TPMDataset extends Component {
 
 	}
 
+
+	getdatasthree = (page,limit) => {
+		let id=this.props.match.params.shixunId;
+
+		let collaborators=`/shixuns/${id}/jupyter_data_sets.json`;
+		axios.get(collaborators,{params:{
+				page:page,
+				limit:limit,
+			}}).then((response)=> {
+			if(response.status===200){
+				if (response.data.status === 403||response.data.status === 401||response.data.status === 500) {
+
+				}else{
+
+
+				}
+
+			}
+
+		}).catch((error)=>{
+
+		});
+
+	}
+
 	paginationonChanges = (pageNumber) => {
 		// //console.log('Page: ');
 		this.setState({
@@ -264,25 +289,32 @@ class TPMDataset extends Component {
 	handleChange = (info) => {
 		if(info.file.status == "done" || info.file.status == "uploading" || info.file.status === 'removed'){
 			let fileList = info.fileList;
-			// try {
-			// 	for(var list of fileList ){
-			// 		console.log(list)
-			// 		this.state.fileListimg.push(list);
-			// 	}
-			// }catch (e) {
-			//
-			// }
+
+
 			this.setState({
 				fileList: appendFileSizeToUploadFileAll(fileList),
-
 			});
+			if(info.file.status === 'done'){
+				console.log("handleChange");
+				console.log(info);
+				//done 成功就会调用这个方法
+				this.getdatas();
+				try {
+					// let datas=this.state.fileListimgs;
+					//  for(var i=0;i<info.fileList.length;i++){
+					// 	 datas.push(info.fileList[i].originFileObj);
+					//  }
+					//  this.setState({
+					// 	 fileListimgs:datas,
+					//  })
+					console.log("datasdatasdatasdatasdatas");
+					console.log(datas);
+				}catch (e) {
 
-						 if(info.file.status === 'done'){
-							 this.setState({
-								 fileListimg:this.state.fileListimg,
-							 })
-							 this.getdatas();
-						 }
+				}
+				// this.props.showNotification(`上传文件成功`);
+
+			}
 		}
 	}
 
@@ -384,7 +416,7 @@ class TPMDataset extends Component {
 
 	render() {
 		const {tpmLoading, shixun, user, match} = this.props;
-		const {columns, page, limit, selectedRowKeys,mylistansum,fileList,datalist,data_sets_count,loadingstate,fileListimg} = this.state;
+		const {columns, page, limit, selectedRowKeys,mylistansum,fileList,datalist,data_sets_count,loadingstate} = this.state;
 		const rowSelection = {
 			selectedRowKeys,
 			onChange: this.onSelectChange,
@@ -413,8 +445,6 @@ class TPMDataset extends Component {
 			beforeUpload: (file) => {
 				//上传前的操作
 				console.log('beforeUpload', file.name);
-				console.log("TPMDatasetTPMDatasetTPMDataset");
-				console.log(fileListimg);
 				const isLt150M = file.size / 1024 / 1024 < 150;
 				if (!isLt150M) {
 					this.props.showNotification('文件大小必须小于150MB!');
@@ -422,7 +452,6 @@ class TPMDataset extends Component {
 				return isLt150M;
 			},
 		};
-
 		return (
 			<React.Fragment>
 				<div className="tpmComment educontent clearfix mt30 mb80">

From c1ffc5cdd6a5f1b8ba11dc6d294d729eae80f40d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Fri, 13 Dec 2019 15:12:25 +0800
Subject: [PATCH 25/30] =?UTF-8?q?=E8=B0=83=E6=95=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/src/modules/tpm/TPMDataset.js | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/public/react/src/modules/tpm/TPMDataset.js b/public/react/src/modules/tpm/TPMDataset.js
index cab7ec91a..ed58211f8 100644
--- a/public/react/src/modules/tpm/TPMDataset.js
+++ b/public/react/src/modules/tpm/TPMDataset.js
@@ -307,8 +307,8 @@ class TPMDataset extends Component {
 					//  this.setState({
 					// 	 fileListimgs:datas,
 					//  })
-					console.log("datasdatasdatasdatasdatas");
-					console.log(datas);
+					// console.log("datasdatasdatasdatasdatas");
+					// console.log(datas);
 				}catch (e) {
 
 				}

From 7c2b55d968538bef28b98962c1daed315b0950d7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Fri, 13 Dec 2019 15:24:48 +0800
Subject: [PATCH 26/30] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=8F=91=E5=B8=83?=
 =?UTF-8?q?=E6=B5=81=E7=A8=8Bend?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 public/react/src/modules/tpm/TPMBanner.js     | 75 +++++++++++++++++--
 .../src/modules/tpm/shixuns/css/TPMBanner.css |  8 ++
 2 files changed, 76 insertions(+), 7 deletions(-)

diff --git a/public/react/src/modules/tpm/TPMBanner.js b/public/react/src/modules/tpm/TPMBanner.js
index b43d86640..bf33f94a8 100644
--- a/public/react/src/modules/tpm/TPMBanner.js
+++ b/public/react/src/modules/tpm/TPMBanner.js
@@ -53,6 +53,8 @@ class TPMBanner extends Component {
       isSpin: false,
       Senttothevcaluetype: false,
       jupyterbool: false,
+      openknow:false,
+      openshowpublictype:false
     }
   }
 
@@ -95,7 +97,54 @@ class TPMBanner extends Component {
     }
   }
 
+  openknow=()=>{
+    let storage=window.localStorage;
+    this.setState({
+      openknow:false
+    })
+    storage.setItem("shixunopenprocess",true);
+  }
+
+  openshowpublic=()=>{
+    let storage=window.localStorage;
+    this.setState({
+      openshowpublictype:false
+    })
+    storage.setItem("openopenpublictype",true);
+  }
+
+
+  componentDidUpdate(prevProps, prevState) {
+    if (prevProps != this.props) {
+      let shixunopenprocess=window.localStorage.shixunopenprocess;
+      let openopenpublictype=window.localStorage.openopenpublictype;
+      if(this.props.shixunsDetails.shixun_status === 0 && this.props.identity < 5){
+        if(shixunopenprocess===undefined||shixunopenprocess===false){
+          this.setState({
+            openknow:true
+          })
+        }else{
+          this.setState({
+            openknow:false
+          })
+        }
+      }
+
+      if(this.props.shixunsDetails.shixun_status === 2 && this.props.shixunsDetails.public===0 && this.props.identity < 5){
+        if(openopenpublictype===undefined||openopenpublictype===false){
+          this.setState({
+            openshowpublictype:true
+          })
+        }else{
+          this.setState({
+            openshowpublictype:false
+          })
+        }
+      }
+    }
+  }
   componentDidMount() {
+
     let thiisie = this.IEVersion();
     if (thiisie != -1) {
       this.setState({
@@ -951,16 +1000,15 @@ class TPMBanner extends Component {
                 {shixunsDetails.shixun_status === 0 && this.props.identity < 5 ?
                   <Popover
                     content={
-                       <pre className={"pd20"}>
+                       <pre className={"bannerpd201"}>
                           <div>您编辑完成后,可以马上使用到自</div>
                           <div className={"wechatcenter mt10"}>己的课堂和实训课程哦</div>
-                          <div className={"wechatcenter mt15"}>   <Button  type="primary" >我知道了</Button></div>
+                          <div className={"wechatcenter mt15"}><Button  type="primary" onClick={this.openknow} >我知道了</Button></div>
                        </pre>
                     }
                     trigger="click"
                     placement="bottom"
-                    visible={false}
-                    onVisibleChange={this.handleVisibleChange}
+                    visible={this.state.openknow}
                   >
                     <a onClick={this.applyrelease} className="fr user_default_btn user_blue_btn mr20 font-18 height39"
                        id="challenge_begin">发布</a>
@@ -1028,9 +1076,22 @@ class TPMBanner extends Component {
                 </Modal>
 
                 {shixunsDetails.shixun_status === 2 && shixunsDetails.public===0 && this.props.identity < 5 ?
-                  <Button type="primary" ghost id="challenge_begin" onClick={this.openpublic} className="fr user_default_btn user_blue_btn mr20 font-18 height39">
-                  申请公开
-                  </Button>: ""
+                  <Popover
+                  content={
+                  <pre className={"bannerpd201"}>
+                  <div>申请公开成功后,您的实训将会展示实训列表</div>
+                  <div className={"wechatcenter mt10"}>平台审核通过,您将获得<span className={"FF6802"}> 1000 </span>金币~</div>
+                  <div className={"wechatcenter mt15"}><Button  type="primary" onClick={this.openshowpublic} >我知道了</Button></div>
+                  </pre>
+                }
+                  trigger="click"
+                  placement="bottom"
+                  visible={this.state.openshowpublictype}
+                  >
+                    <Button type="primary" ghost id="challenge_begin" onClick={this.openpublic} className="fr user_default_btn user_blue_btn mr20 font-18 height39">
+                      申请公开
+                    </Button>
+                  </Popover>: ""
                 }
 
                 {shixunsDetails.shixun_status === 2 && shixunsDetails.public===1 && this.props.identity < 5 ?
diff --git a/public/react/src/modules/tpm/shixuns/css/TPMBanner.css b/public/react/src/modules/tpm/shixuns/css/TPMBanner.css
index fe059fccd..50d30f673 100644
--- a/public/react/src/modules/tpm/shixuns/css/TPMBanner.css
+++ b/public/react/src/modules/tpm/shixuns/css/TPMBanner.css
@@ -111,4 +111,12 @@ a:active{text-decoration:none;}
 
 .width360{
     width:360px;
+}
+
+.bannerpd201{
+    padding: 20px 20px 10px 20px;
+}
+
+.FF6802{
+    color:#FF6802;
 }
\ No newline at end of file

From 50fec5b18f31b2b08700c88bfba4338e4325b735 Mon Sep 17 00:00:00 2001
From: tangjiang <465264938@qq.com>
Date: Fri, 13 Dec 2019 15:38:04 +0800
Subject: [PATCH 27/30] add pageination

---
 .../developer/components/userInfo/index.js    |  2 +-
 public/react/src/modules/tpm/jupyter/index.js | 41 ++++++++++---
 .../src/modules/tpm/jupyter/leftPane/index.js | 60 +++++++++----------
 .../modules/tpm/jupyter/leftPane/index.scss   | 19 +++++-
 public/react/src/redux/actions/actionTypes.js |  1 +
 public/react/src/redux/actions/index.js       |  6 +-
 public/react/src/redux/actions/jupyter.js     | 35 +++++++----
 .../src/redux/reducers/jupyterReducer.js      | 19 +++++-
 public/react/src/services/jupyterServer.js    |  6 +-
 9 files changed, 129 insertions(+), 60 deletions(-)

diff --git a/public/react/src/modules/developer/components/userInfo/index.js b/public/react/src/modules/developer/components/userInfo/index.js
index 455902e13..3508135ba 100644
--- a/public/react/src/modules/developer/components/userInfo/index.js
+++ b/public/react/src/modules/developer/components/userInfo/index.js
@@ -14,7 +14,7 @@ function UserInfo (props) {
   const {image_url, name} = props.userInfo;
   return (
     <div className={'avator_nicker'}>
-      <img alt="用户头像" className={'student_img'} src={getImageUrl(`images/${image_url}` || 'images/educoder/headNavLogo.png?1526520218')} />
+      <img style={{ display: image_url ? 'inline-block' : 'none'}} alt="用户头像" className={'student_img'} src={getImageUrl(`images/${image_url}` || 'images/educoder/headNavLogo.png?1526520218')} />
       <span className={'student_nicker'}>
         {name || ''}
       </span>
diff --git a/public/react/src/modules/tpm/jupyter/index.js b/public/react/src/modules/tpm/jupyter/index.js
index 6a84f964e..cd947df85 100644
--- a/public/react/src/modules/tpm/jupyter/index.js
+++ b/public/react/src/modules/tpm/jupyter/index.js
@@ -4,7 +4,7 @@
  * @Github: 
  * @Date: 2019-12-11 08:35:23
  * @LastEditors: tangjiang
- * @LastEditTime: 2019-12-12 20:19:48
+ * @LastEditTime: 2019-12-13 15:25:50
  */
 import './index.scss';
 import React, { useEffect, useState } from 'react';
@@ -26,16 +26,20 @@ function JupyterTPI (props) {
     },
     url,
     loading, // 保存按钮状态
+    total,
+    pagination,
     dataSets, // 数据集
     jupyter_info,
     getJupyterInfo,
     syncJupyterCode,
     jupyter_tpi_url_state,
-    // getJupyterTpiDataSet,
+    getJupyterTpiDataSet,
     getJupyterTpiUrl,
     saveJupyterTpi,
     changeLoadingState,
-    changeGetJupyterUrlState
+    changeGetJupyterUrlState,
+    jupyter_identifier,
+    changeCurrentPage
   } = props;
 
   const {identifier} = params;  
@@ -107,6 +111,7 @@ function JupyterTPI (props) {
   const handleClickQuitTpi = () => {
     // console.log(jupyterInfo);
     const { identifier } = jupyterInfo;
+    if (!identifier) return;
     props.history.push(`/shixuns/${identifier}/challenges`);
   }
 
@@ -125,6 +130,14 @@ function JupyterTPI (props) {
     saveJupyterTpi();
   }
 
+  // 分页信息改变时 
+  const handlePageChange = (current) => {
+    // 改变当前页
+    changeCurrentPage(current);
+    // 分页查找数据
+    getJupyterTpiDataSet(jupyter_identifier);
+  }
+
   return (
     <div className="jupyter_area">
       <div className="jupyter_header">
@@ -152,7 +165,12 @@ function JupyterTPI (props) {
       <div className="jupyter_ctx">
         <SplitPane split="vertical" minSize={350} maxSize={-350} defaultSize="30%">
           <div className={'split-pane-left'}>
-            <LeftPane dataSets={dataSets} />
+            <LeftPane 
+              dataSets={dataSets} 
+              total={total}
+              pagination={pagination}
+              onPageChange={handlePageChange}
+            />
           </div>
           <SplitPane split="vertical" defaultSize="100%" allowResize={false}>
             <RightPane
@@ -176,7 +194,10 @@ const mapStateToProps = (state) => {
     jupyter_info,
     jupyter_tpi_url, 
     jupyter_data_set,
-    jupyter_tpi_url_state
+    jupyter_tpi_url_state,
+    jupyter_data_set_count,
+    jupyter_pagination,
+    jupyter_identifier
   } = state.jupyterReducer;
   const { loading } = state.commonReducer;
   return {
@@ -184,7 +205,10 @@ const mapStateToProps = (state) => {
     jupyter_info,
     url: jupyter_tpi_url,
     dataSets: jupyter_data_set,
-    jupyter_tpi_url_state
+    jupyter_tpi_url_state,
+    total: jupyter_data_set_count,
+    pagination: jupyter_pagination,
+    jupyter_identifier
   };
 }
 
@@ -193,10 +217,11 @@ const mapDispatchToProps = (dispatch) => ({
   getJupyterInfo: (identifier) => dispatch(actions.getJupyterInfo(identifier)),
   // 重置代码
   syncJupyterCode: (identifier, msg) => dispatch(actions.syncJupyterCode(identifier, msg)),
-  // getJupyterTpiDataSet: (identifier) => dispatch(actions.getJupyterTpiDataSet(identifier)),
+  getJupyterTpiDataSet: (identifier, current) => dispatch(actions.getJupyterTpiDataSet(identifier, current)),
   getJupyterTpiUrl: (identifier) => dispatch(actions.getJupyterTpiUrl(identifier)),
   saveJupyterTpi: () => dispatch(actions.saveJupyterTpi()),
-  changeLoadingState: (flag) => dispatch(actions.changeLoadingState(flag))
+  changeLoadingState: (flag) => dispatch(actions.changeLoadingState(flag)),
+  changeCurrentPage: (current) => dispatch(actions.changeCurrentPage(current))
 });
 
 export default connect(
diff --git a/public/react/src/modules/tpm/jupyter/leftPane/index.js b/public/react/src/modules/tpm/jupyter/leftPane/index.js
index f8cbbeccd..0af5b3f96 100644
--- a/public/react/src/modules/tpm/jupyter/leftPane/index.js
+++ b/public/react/src/modules/tpm/jupyter/leftPane/index.js
@@ -4,17 +4,22 @@
  * @Github: 
  * @Date: 2019-12-12 10:34:03
  * @LastEditors: tangjiang
- * @LastEditTime: 2019-12-12 20:18:46
+ * @LastEditTime: 2019-12-13 15:31:35
  */
 import './index.scss';
 import React, { useState, useEffect } from 'react';
-import {Icon, Empty} from 'antd';
+import {Icon, Empty, Pagination, Tooltip } from 'antd';
 import MyIcon from '../../../../common/components/MyIcon';
 
 function LeftPane (props) {
   
   // 获取数据集
-  const { dataSets = [] } = props;
+  const { 
+    dataSets = [],
+    total,
+    pagination,
+    onPageChange
+  } = props;
 
   const emptyCtx = (
     <div className="jupyter_empty">
@@ -31,8 +36,10 @@ function LeftPane (props) {
       const oList = dataSets.map((item, i) => {
         return (
           <li className="jupyter_item" key={`key_${i}`}>
-            <Icon type="file-text" className="jupyter_icon"/>
-            <span className="jupyter_name">{item.title}</span>
+            <Tooltip placement="right" title={'文字提示信息'}>
+              <Icon type="file-text" className="jupyter_icon"/>
+              <span className="jupyter_name">{item.title}</span>
+            </Tooltip>
           </li>
         );
       });
@@ -46,37 +53,30 @@ function LeftPane (props) {
       setRenderCtx(oUl);
     }
   }, [props]);
-  // 渲染数据集
-  // const renderList = () => {
-  //   // 空数据
-  //   if (dataSets.length === 0) {
-  //     return <div className="jupyter_empty">
-  //       <Empty />
-  //     </div>
-  //   } else {
-  //     // 渲染列表
-  //     const oList = dataSets.map((item, i) => {
-  //       return (
-  //         <li className="jupyter_item" key={`key_${i}`}>
-  //           <Icon type="file-text" className="jupyter_icon"/>
-  //           <span className="jupyter_name">{item.title}</span>
-  //         </li>
-  //       );
-  //     });
-  //     return (
-  //       <ul className="jupyter_data_list">
-  //         { oList }
-  //       </ul>
-  //     );
-  //   }
-  // }
-
+  
+  // 分页处理
+  const handleChangePage = (page) => {
+    // console.log(page, pageSize);
+    // setCurrent(page);
+    onPageChange && onPageChange(page);
+  }
   return (
     <div className="jupyter_data_sets_area">
       <h2 className="jupyter_h2_title">
         <MyIcon type="iconwenti" className="jupyter_data_icon"/> 数据集
+        {/* <span className="iconfont icon-java jupyter_data_icon"></span>数据集 */}
       </h2>
       { renderCtx }
+      <div className='jupyter_pagination'>
+        <Pagination 
+          simple 
+          current={pagination.page}
+          pageSize={pagination.limit} 
+          total={total}
+          onChange={handleChangePage}
+        />
+      </div>
+      
     </div>
   )
 }
diff --git a/public/react/src/modules/tpm/jupyter/leftPane/index.scss b/public/react/src/modules/tpm/jupyter/leftPane/index.scss
index c53b46362..9c95b1aae 100644
--- a/public/react/src/modules/tpm/jupyter/leftPane/index.scss
+++ b/public/react/src/modules/tpm/jupyter/leftPane/index.scss
@@ -1,10 +1,16 @@
 .jupyter_data_sets_area{
   height: 100%;
+  background: #fff;
   .jupyter_h2_title{
     height: 44px;
     line-height: 44px;
-    background-color: #EEEEEE;
+    // background-color: #EEEEEE;
+    background: #fff;
     padding: 0 30px;
+    font-size: 16px;
+    // box-size: border-box;
+    box-sizing: border-box;
+    border-bottom: 1px solid rgba(238,238,238,1);
     .jupyter_data_icon{
       // color: #7286ff;
       color: #1890ff;
@@ -18,7 +24,7 @@
 
   .jupyter_data_list,
   .jupyter_empty{
-    height: calc(100vh - 104px);
+    height: calc(100vh - 160px);
     overflow-y: auto;
   }
 
@@ -54,4 +60,13 @@
     justify-content: center;
     width: 100%;
   }
+
+  .jupyter_pagination{
+    display: flex;
+    justify-content: center;
+    align-items: center;
+    height: 56px;
+    box-sizing: border-box;
+    border-top: 1px solid rgba(238,238,238,1);
+  }
 }
\ No newline at end of file
diff --git a/public/react/src/redux/actions/actionTypes.js b/public/react/src/redux/actions/actionTypes.js
index 8831e8de1..55aa42799 100644
--- a/public/react/src/redux/actions/actionTypes.js
+++ b/public/react/src/redux/actions/actionTypes.js
@@ -57,6 +57,7 @@ const types = {
   SAVE_JUPYTER_INFO: 'SAVE_JUPYTER_INFO', // 保存 jupyter 信息
   CHANGE_JUPYTER_URL_STATE: 'CHANGE_JUPYTER_URL_STATE', // 获取url返回的状态值
   SAVE_JUPYTER_TPI: 'SAVE_JUPYTER_TPI', // 保存 jupyter tpi
+  CHANGE_JUPYTER_CURRENT_PAGE: 'CHANGE_JUPYTER_CURRENT_PAGE'
 }
 
 export default types;
diff --git a/public/react/src/redux/actions/index.js b/public/react/src/redux/actions/index.js
index b9cf858dd..465ab1385 100644
--- a/public/react/src/redux/actions/index.js
+++ b/public/react/src/redux/actions/index.js
@@ -68,7 +68,8 @@ import {
   getJupyterInfo,
   syncJupyterCode,
   changeGetJupyterUrlState,
-  saveJupyterTpi
+  saveJupyterTpi,
+  changeCurrentPage
 } from './jupyter';
 
 export default {
@@ -119,6 +120,7 @@ export default {
   getJupyterInfo,
   syncJupyterCode,
   changeGetJupyterUrlState,
-  saveJupyterTpi
+  saveJupyterTpi,
+  changeCurrentPage
   // isUpdateCodeCtx
 }
\ No newline at end of file
diff --git a/public/react/src/redux/actions/jupyter.js b/public/react/src/redux/actions/jupyter.js
index 65c0e14ab..5df1babf6 100644
--- a/public/react/src/redux/actions/jupyter.js
+++ b/public/react/src/redux/actions/jupyter.js
@@ -4,7 +4,7 @@
  * @Github: 
  * @Date: 2019-12-12 09:01:30
  * @LastEditors: tangjiang
- * @LastEditTime: 2019-12-12 17:58:38
+ * @LastEditTime: 2019-12-13 15:27:13
  */
 import types from "./actionTypes";
 import { message } from 'antd';
@@ -18,20 +18,22 @@ import {
 
 // 获取 jupyter 相关信息
 export const getJupyterInfo = (id) => {
-  return (dispatch) => {
+  return (dispatch, getState) => {
+    const { jupyter_pagination } = getState().jupyterReducer;
+    console.log(jupyter_pagination);
     fetchJupyterInfo(id).then(res => {
       if (res.data.status === 401) return;
       if (res.status === 200) {
         const { data } = res;
-        console.log(data); 
         if (data.status === 0) {
           dispatch({
             type: types.SAVE_JUPYTER_INFO,
             payload: data
           });
           const { identifier, myshixun_identifier } = data;
+          dispatch(saveJupyterIdentifier(identifier));
           // 调用获取数据集接口
-          dispatch(getJupyterTpiDataSet(identifier));
+          dispatch(getJupyterTpiDataSet(identifier, jupyter_pagination));
           // 调用获取url接口
           dispatch(getJupyterTpiUrl({identifier: myshixun_identifier}));
         }
@@ -40,16 +42,21 @@ export const getJupyterInfo = (id) => {
   }
 }
 // 获取 jupyter tpi 数据集
-export const getJupyterTpiDataSet = (identifier) => {
-  return (dispatch) => {
-    fetchJupyterTpiDataSet(identifier).then(res => {
+export const getJupyterTpiDataSet = (identifier, params) => {
+  return (dispatch, getState) => {
+    if (!params) {
+      params = getState().jupyterReducer.jupyter_pagination;
+    }
+    fetchJupyterTpiDataSet(identifier, params).then(res => {
       if (res.data.status === 401) return; // 用户未登录
-      console.log('数据集:', res);
       if (res.status === 200) {
-        const {data_sets} = res.data;
+        const {data_sets, data_sets_count} = res.data;
         dispatch({
           type: types.GET_JUPYTER_DATA_SETS,
-          payload: data_sets
+          payload: {
+            data_sets,
+            data_sets_count
+          }
         });
       }
     });
@@ -59,7 +66,6 @@ export const getJupyterTpiDataSet = (identifier) => {
 export const getJupyterTpiUrl = (obj) => {
   return (dispatch, getState) => {
     const {jupyter_info} = getState().jupyterReducer;
-    console.log(obj.identifier, jupyter_info.myshixun_identifier);
     if (!obj.identifier && !jupyter_info.myshixun_identifier) return;
     const id = obj.identifier || jupyter_info.myshixun_identifier;
     fetchJupyterTpiUrl({identifier: id}).then(res => {
@@ -136,4 +142,11 @@ export const saveJupyterTpi = () => {
       });
     });
   }
+}
+// 改变当前页数
+export const changeCurrentPage = (current) => {
+  return {
+    type: types.CHANGE_JUPYTER_CURRENT_PAGE,
+    payload: current
+  }
 }
\ No newline at end of file
diff --git a/public/react/src/redux/reducers/jupyterReducer.js b/public/react/src/redux/reducers/jupyterReducer.js
index aca8bf647..f8825fb36 100644
--- a/public/react/src/redux/reducers/jupyterReducer.js
+++ b/public/react/src/redux/reducers/jupyterReducer.js
@@ -4,7 +4,7 @@
  * @Github: 
  * @Date: 2019-12-12 09:01:39
  * @LastEditors: tangjiang
- * @LastEditTime: 2019-12-12 17:23:54
+ * @LastEditTime: 2019-12-13 15:28:45
  */
 import types from "../actions/actionTypes";
 
@@ -14,15 +14,22 @@ const initState = {
   jupyter_data_set: [],
   jupyter_identifier: '',
   jupyter_tpi_url_state: -1, // 获取 url 状态值: 0 成功, 其它 失败
-  jupyter_tpi_code: '' // 端口号
+  jupyter_tpi_code: '', // 端口号
+  jupyter_data_set_count: 1, // 数据集总数
+  jupyter_pagination: {
+    page: 1,
+    limit: 20 // 默认加载20条
+  }
 };
 
 const JupyterReducer = (state = initState, action) => {
   switch (action.type) {
     case types.GET_JUPYTER_DATA_SETS:
+      const { data_sets, data_sets_count } = action.payload;
       return {
         ...state,
-        jupyter_data_set: action.payload
+        jupyter_data_set: data_sets,
+        jupyter_data_set_count: data_sets_count
       }
     case types.GET_JUPYTER_TPI_URL:
       const {url, status, port} = action.payload;
@@ -33,6 +40,7 @@ const JupyterReducer = (state = initState, action) => {
         jupyter_tpi_code: port
       }
     case types.SAVE_JUPYTER_IDENTIFIER:
+      console.log('保存的jupyter_identifier', action.payload);
       return {
         ...state,
         jupyter_identifier: action.payload
@@ -47,6 +55,11 @@ const JupyterReducer = (state = initState, action) => {
         ...state,
         jupyter_tpi_url_state: action.payload
       }
+    case types.CHANGE_JUPYTER_CURRENT_PAGE:
+      return {
+        ...state,
+        jupyter_pagination: Object.assign({}, state.jupyter_pagination, { page: action.payload })
+      }
     default:
       return {
         ...state
diff --git a/public/react/src/services/jupyterServer.js b/public/react/src/services/jupyterServer.js
index bfc8788f8..3c14b4b45 100644
--- a/public/react/src/services/jupyterServer.js
+++ b/public/react/src/services/jupyterServer.js
@@ -4,7 +4,7 @@
  * @Github: 
  * @Date: 2019-12-12 09:07:07
  * @LastEditors: tangjiang
- * @LastEditTime: 2019-12-12 17:46:17
+ * @LastEditTime: 2019-12-13 14:30:51
  */
 import axios from 'axios';
 
@@ -14,9 +14,9 @@ export async function fetchJupyterInfo (identifier) {
   return axios.get(url);
 }
 // 获取数据集
-export async function fetchJupyterTpiDataSet (identifier) {
+export async function fetchJupyterTpiDataSet (identifier, params) {
   const url = `/shixuns/${identifier}/jupyter_data_sets.json`;
-  return axios.get(url);
+  return axios.get(url, { params });
 }
 // 获取 tpi url
 export async function fetchJupyterTpiUrl (params) {

From 331f3bdea1ba1a3b5f910ec656396d353f797a88 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Fri, 13 Dec 2019 15:42:22 +0800
Subject: [PATCH 28/30] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=8F=91=E5=B8=83?=
 =?UTF-8?q?=E6=97=B6=E9=97=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../modules/courses/busyWork/CommonWorkItem.js    | 15 ++++++++-------
 .../courses/shixunHomework/ShixunhomeWorkItem.js  |  8 --------
 2 files changed, 8 insertions(+), 15 deletions(-)

diff --git a/public/react/src/modules/courses/busyWork/CommonWorkItem.js b/public/react/src/modules/courses/busyWork/CommonWorkItem.js
index 75676557a..82e2d2d96 100644
--- a/public/react/src/modules/courses/busyWork/CommonWorkItem.js
+++ b/public/react/src/modules/courses/busyWork/CommonWorkItem.js
@@ -205,15 +205,16 @@ class CommonWorkItem extends Component{
 									{item.uncommit_count===undefined?"":<span className="mr20 fl">{item.uncommit_count} 未交</span>}
                   {
                     item.status_time!="" && 
-                    <Tooltip placement="bottom" title={ item.status.indexOf('提交中') != -1 ? '提交剩余时间' :
-                        item.status.indexOf('补交中') != -1 ? '补交剩余时间' : 
-                        item.status.indexOf('申诉中') != -1 ? '申诉剩余时间' : 
-                        item.status.indexOf('匿评中') != -1 ? '匿评剩余时间' : 
-                        item.status.indexOf('匿评申诉中') != -1 ? '匿评申诉剩余时间' : ''}>
+
                       <span className="mr20 fl">{item.status_time}</span>
-                    </Tooltip>
-                  }
 
+                  }
+                  {/*<Tooltip placement="bottom" title={ item.status.indexOf('提交中') != -1 ? '提交剩余时间' :*/}
+                  {/*  item.status.indexOf('补交中') != -1 ? '补交剩余时间' :*/}
+                  {/*    item.status.indexOf('申诉中') != -1 ? '申诉剩余时间' :*/}
+                  {/*      item.status.indexOf('匿评中') != -1 ? '匿评剩余时间' :*/}
+                  {/*        item.status.indexOf('匿评申诉中') != -1 ? '匿评申诉剩余时间' : ''}>*/}
+                  {/*</Tooltip>*/}
                   {isAdmin && <div className="fr">
                       <WordsBtn style="blue" className="fl font-16 ml28" onClick={ () => { this.props.toEditPage(this.props.match.params, item.homework_id) }}>编辑</WordsBtn> 
                       <WordsBtn style="blue" className="fl font-16 ml28" onClick={ () => { this.props.toWorkSettingPage(this.props.match.params, item.homework_id) }}>设置</WordsBtn> 
diff --git a/public/react/src/modules/courses/shixunHomework/ShixunhomeWorkItem.js b/public/react/src/modules/courses/shixunHomework/ShixunhomeWorkItem.js
index dc59d93ed..f5f06c037 100644
--- a/public/react/src/modules/courses/shixunHomework/ShixunhomeWorkItem.js
+++ b/public/react/src/modules/courses/shixunHomework/ShixunhomeWorkItem.js
@@ -393,21 +393,13 @@ class ShixunhomeWorkItem extends Component{
 
                 {
                   discussMessage.time_status===1?
-                    <Tooltip title={"提交剩余时间"} placement="bottom">
                       <span className="mr15 color-grey9">{discussMessage.status_time}</span>
-                    </Tooltip>
                   :discussMessage.time_status===2?
-                    <Tooltip title={"补交剩余时间"} placement="bottom">
                       <span className="mr15 color-grey9">{discussMessage.status_time}</span>
-                    </Tooltip>
                   :discussMessage.time_status===3?
-                      <Tooltip title={"匿评剩余时间"} placement="bottom">
                         <span className="mr15 color-grey9">{discussMessage.status_time}</span>
-                      </Tooltip>
                   :discussMessage.time_status===4?
-                        <Tooltip title={"申诉剩余时间"} placement="bottom">
                           <span className="mr15 color-grey9">{discussMessage.status_time}</span>
-                        </Tooltip>
                   :
                    <span className="mr15 color-grey9">{discussMessage.status_time}</span>
                 }

From 75634252cea448b34efb1efa376b3a95dfdcd3ce Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Fri, 13 Dec 2019 15:48:17 +0800
Subject: [PATCH 29/30] =?UTF-8?q?=E5=BC=80=E6=94=BE=E5=AE=9E=E8=AE=AD?=
 =?UTF-8?q?=E6=8A=A5=E5=91=8A=E5=AF=BC=E5=87=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../src/modules/courses/shixunHomework/ShixunWorkReport.js    | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/public/react/src/modules/courses/shixunHomework/ShixunWorkReport.js b/public/react/src/modules/courses/shixunHomework/ShixunWorkReport.js
index 23f590dcd..1bf7ac181 100644
--- a/public/react/src/modules/courses/shixunHomework/ShixunWorkReport.js
+++ b/public/react/src/modules/courses/shixunHomework/ShixunWorkReport.js
@@ -366,10 +366,10 @@ class ShixunWorkReport extends Component {
 						<p className=" fl color-black mt25 summaryname">{data&&data.shixun_name}</p>
 						{/*{this.props.isAdmin()?<a className=" fr font-14 ml30 mt10 mr20 color-grey-9 ">导出实训报告数据</a>:""}*/}
 						<a onClick={this.goback} className="color-grey-6 fr font-14 ml20 mt15">返回</a>
-						{this.props.isAdmin() ? <a
+					 <a
 							className=" color-blue font-14 fr  ml20 mt15"
 							onClick={()=>this.confirmysl(`/student_works/${homeworkid}/export_shixun_work_report.pdf`)}
-						> <Spin size="small" spinning={this.state.isspinning}>导出实训报告数据</Spin></a> : ""}
+						> <Spin size="small" spinning={this.state.isspinning}>导出实训报告数据</Spin></a>
 						{/*{this.props.isAdmin() ?work_comment_hidden===true? "":<a*/}
 							{/*className=" color-blue font-14 fr  ml20 mt15"*/}
 							{/*onClick={()=>this.showAppraiseModal(1)}*/}

From 0f5b4941b221b5d58bc4ee637187dcf3563e0e54 Mon Sep 17 00:00:00 2001
From: cxt <853663049@qq.com>
Date: Fri, 13 Dec 2019 15:50:23 +0800
Subject: [PATCH 30/30] =?UTF-8?q?=E9=80=89=E7=94=A8=E5=AE=9E=E8=AE=AD?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 app/services/shixun_search_service.rb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/app/services/shixun_search_service.rb b/app/services/shixun_search_service.rb
index 649de87bf..fce8a2fd5 100644
--- a/app/services/shixun_search_service.rb
+++ b/app/services/shixun_search_service.rb
@@ -25,7 +25,7 @@ class ShixunSearchService < ApplicationService
       else
         none_shixun_ids = ShixunSchool.where("school_id != #{User.current.school_id}").pluck(:shixun_id)
 
-        @shixuns = @shixuns.where.not(id: none_shixun_ids).where(hidden: 0, status: 2, public: 2).or(@shixuns.where(id: current_user.shixuns))
+        @shixuns = @shixuns.where.not(id: none_shixun_ids).where(hidden: 0, status: 2, public: 2).or(@shixuns.where(id: User.current.shixuns))
       end
     end