From edd4a3ea06748a4cd0b7550f32ab35f8cf1afdfa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Mon, 30 Dec 2019 14:32:25 +0800
Subject: [PATCH 1/9] =?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/question/Paperreview.js |  59 +++++++---
 .../src/modules/question/Paperreview_item.js  |  65 ++++++++++-
 .../modules/question/Paperreview_judgment.js  | 110 ++++++++++++++++++
 .../modules/question/Paperreview_multlple.js  | 110 ++++++++++++++++++
 .../modules/question/Paperreview_program.js   | 110 ++++++++++++++++++
 .../modules/question/Paperreview_single.js    | 110 ++++++++++++++++++
 .../question/questioncss/questioncom.css      |  65 ++++++++++-
 7 files changed, 606 insertions(+), 23 deletions(-)
 create mode 100644 public/react/src/modules/question/Paperreview_judgment.js
 create mode 100644 public/react/src/modules/question/Paperreview_multlple.js
 create mode 100644 public/react/src/modules/question/Paperreview_program.js
 create mode 100644 public/react/src/modules/question/Paperreview_single.js

diff --git a/public/react/src/modules/question/Paperreview.js b/public/react/src/modules/question/Paperreview.js
index 959e67b89..c51cf6b93 100644
--- a/public/react/src/modules/question/Paperreview.js
+++ b/public/react/src/modules/question/Paperreview.js
@@ -37,7 +37,7 @@ class Paperreview extends Component {
 			myquestion_choicesco: [],
 			disciplinesdata: [],
 			knowledgepoints: [],
-			disciplmy:[]
+			disciplmy: []
 		}
 
 	}
@@ -46,13 +46,43 @@ class Paperreview extends Component {
 	componentDidMount() {
 
 
-
+		var data = {}
+		this.getdata(data);
 
 	}
 
 
 	getdata = (data) => {
+		const url = `/item_baskets.json`;
+		this.setState({
+			booljupyterurls: true,
+		})
+		axios.get((url), {params: data}).then((response) => {
+			setTimeout(() => {
+				this.setState({
+					booljupyterurls: false,
+				})
+			}, 1000);
+			if (response === null || response === undefined) {
+
+				return
+			}
+			if (response.data.status === 403 || response.data.status === 401 || response.data.status === 500) {
+
+			} else {
 
+			}
+			////console.log("item_banks");
+			////console.log(response);
+			this.setState({
+				Contentdata: response.data,
+			})
+		}).catch((error) => {
+			////console.log(error)
+			this.setState({
+				booljupyterurls: false,
+			})
+		});
 	}
 
 	getcontentMdRef = (Ref) => {
@@ -89,8 +119,6 @@ class Paperreview extends Component {
 		//保存试卷
 
 
-
-
 	}
 
 
@@ -118,34 +146,27 @@ class Paperreview extends Component {
 						`
 						}
 					</style>
-					<div className="w1200mss">
+					<div className="w1200ms">
 						<div className="w100s mt30">
 							<Breadcrumb separator=">">
 								<Breadcrumb.Item href="/question">试题库</Breadcrumb.Item>
-								<Breadcrumb.Item className={"xiaoshou"} >人工组卷</Breadcrumb.Item>
-								<Breadcrumb.Item  className={"xiaoshout"}>试卷预览</Breadcrumb.Item>
+								<Breadcrumb.Item className={"xiaoshou"}>人工组卷</Breadcrumb.Item>
+								<Breadcrumb.Item className={"xiaoshout"}>试卷预览</Breadcrumb.Item>
 							</Breadcrumb>
 						</div>
 
-           <Paperreview_item>
-
-					 </Paperreview_item>
-
-
+						<Paperreview_item>
 
+						</Paperreview_item>
 
 
 					</div>
 
 
 				</div>
-				{
-					item_type === null ?
-						""
-						:
-						<Bottomsubmit {...this.props} {...this.state} bottomvalue={"保存组卷"}
-													onSubmits={() => this.preservation()} url={'/question'}></Bottomsubmit>
-				}
+
+				<Bottomsubmit {...this.props} {...this.state} bottomvalue={"保存组卷"}
+											onSubmits={() => this.preservation()} url={'/question'}></Bottomsubmit>
 			</div>
 		)
 
diff --git a/public/react/src/modules/question/Paperreview_item.js b/public/react/src/modules/question/Paperreview_item.js
index d5b8af4c8..d7fb5905f 100644
--- a/public/react/src/modules/question/Paperreview_item.js
+++ b/public/react/src/modules/question/Paperreview_item.js
@@ -16,6 +16,10 @@ import Itembankstop from "./component/Itembankstop";
 import NoneData from './component/NoneData';
 import './questioncss/questioncom.css';
 import '../tpm/newshixuns/css/Newshixuns.css';
+import Paperreview_single from './Paperreview_single';
+import Paperreview_multlple from './Paperreview_multlple';
+import Paperreview_judgment from "./Paperreview_judgment";
+import Paperreview_program from "./Paperreview_program";
 import Choicequestion from './component/Choicequestion';
 import SingleEditor from "./component/SingleEditor";
 import ChoquesEditor from "./component/ChoquesEditor"
@@ -28,6 +32,7 @@ class Paperreview_item extends Component {
 		this.state = {
 			questions:0,
 			totalscore:0,
+			total:0,
 
 		}
 
@@ -60,16 +65,70 @@ class Paperreview_item extends Component {
 	}
 
 	render() {
-		let {questions,totalscore} = this.state;
+		let {questions,totalscore,total} = this.state;
 		// //console.log(params);
 		return (
-			<div className=" clearfix  educontent Contentquestionbankstyle w100s w1200fpx mt19">
+			<div className=" clearfix  educontent Contentquestionbankstyle w100s w1200wuh mt19">
          <div className="w100s mt20 mb20">
           <div className="w100s sortinxdirection">
 						<p className="questionstishu">题数:{questions}</p>
 						<p className="ml58 questionstotal">总分:{totalscore}</p>
 					</div>
-
+					 <div className="questiontypeheng w100s mt19 mb19"></div>
+					 <div className="w100s sortinxdirection">
+						 <div className="pagertdstcolor w50s sortinxdirection">拖动试题可调整排序</div>
+						 <div className="pagertdstcolor w50s xaxisreverseorder">共{total}个试题</div>
+
+					 </div>
+					 {/*单选题*/}
+					 <div className="w100s mt20 mb20 postitonrelati">
+						 <div className="w100s sortinxdirection">
+							 <p className="yldxtit">一、单选题</p> <p className="ml15 yldxtits">(共3题;共15分)</p>
+						 </div>
+						 <div className="postitonrelatis xaxisreverseorder">
+							 <div className="scd">删除</div>
+							 <div className="szdfd">设置得分</div>
+						 </div>
+
+						 <Paperreview_single></Paperreview_single>
+					 </div>
+
+
+					 <div className="w100s mt20 mb20 postitonrelati">
+						 <div className="w100s sortinxdirection">
+							 <p className="yldxtit">一、多选题</p> <p className="ml15 yldxtits">(共3题;共15分)</p>
+						 </div>
+						 <div className="postitonrelatis xaxisreverseorder">
+							 <div className="scd">删除</div>
+							 <div className="szdfd">设置得分</div>
+						 </div>
+
+						 <Paperreview_multlple></Paperreview_multlple>
+					 </div>
+					 <div className="w100s mt20 mb20 postitonrelati">
+						 <div className="w100s sortinxdirection">
+							 <p className="yldxtit">一、判断题</p> <p className="ml15 yldxtits">(共3题;共15分)</p>
+						 </div>
+						 <div className="postitonrelatis xaxisreverseorder">
+							 <div className="scd">删除</div>
+							 <div className="szdfd">设置得分</div>
+						 </div>
+
+						 <Paperreview_judgment></Paperreview_judgment>
+					 </div>
+
+
+					 <div className="w100s mt20 mb20 postitonrelati">
+						 <div className="w100s sortinxdirection">
+							 <p className="yldxtit">一、编程题</p> <p className="ml15 yldxtits">(共3题;共15分)</p>
+						 </div>
+						 <div className="postitonrelatis xaxisreverseorder">
+							 <div className="scd">删除</div>
+							 <div className="szdfd">设置得分</div>
+						 </div>
+
+						 <Paperreview_program></Paperreview_program>
+					 </div>
 
 				 </div>
 			</div>
diff --git a/public/react/src/modules/question/Paperreview_judgment.js b/public/react/src/modules/question/Paperreview_judgment.js
new file mode 100644
index 000000000..6a8155f2a
--- /dev/null
+++ b/public/react/src/modules/question/Paperreview_judgment.js
@@ -0,0 +1,110 @@
+import React, {Component} from "react";
+import {Link, NavLink} from 'react-router-dom';
+import {WordsBtn, ActionBtn, getImageUrl,markdownToHTML} from 'educoder';
+import axios from 'axios';
+import {
+	notification,
+	Spin,
+	Table,
+	Pagination,
+	Drawer,
+	Input,
+	Button,
+	Breadcrumb
+} from "antd";
+import Itembankstop from "./component/Itembankstop";
+import NoneData from './component/NoneData';
+import './questioncss/questioncom.css';
+import '../tpm/newshixuns/css/Newshixuns.css';
+
+//判断题
+class Paperreview_judgment extends Component {
+	constructor(props) {
+		super(props);
+
+		this.state = {
+			questions:0,
+			totalscore:0,
+			total:0,
+
+		}
+
+	}
+
+	//初始化
+	componentDidMount() {
+
+
+
+
+	}
+
+
+	getdata = (data) => {
+
+	}
+
+	preservation = () => {
+
+
+
+
+	}
+
+
+	setitem_type = (item_type) => {
+
+
+	}
+
+	render() {
+		let {questions,totalscore,total,items} = this.state;
+		// //console.log(params);
+		return (
+			<div className="w100s borderwdswuh  mt25 mb20 ">
+
+
+				{/*顶部*/}
+				<div className="w100s sortinxdirection">
+					<div className=" listjihetixingstit markdown-body"  style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(items&&items.name).replace(/▁/g, "▁▁▁")}}>
+					</div>
+				</div>
+				{/*内容*/}
+				{/*<div className="w100s sortinxdirection">*/}
+
+				{/*	<p className="w100s listjihetixingstits sortinxdirection ">*/}
+				{/*		{*/}
+				{/*			items.item_type==="JUDGMENT"?*/}
+				{/*				items === undefined ||items === null? "" : items.choices.map((object, index) => {*/}
+				{/*					return (*/}
+				{/*						<p className={index===1? "sortinxdirection  ml10":"sortinxdirection  " }  >*/}
+				{/*							<Radio checked={object.is_answer}>*/}
+				{/*								{object.choice_text}*/}
+				{/*							</Radio>*/}
+				{/*						</p>*/}
+				{/*					)*/}
+				{/*				})*/}
+				{/*				:*/}
+				{/*				items === undefined ||items === null? "" : items.choices.map((object, index) => {*/}
+				{/*					return (*/}
+				{/*						<p className="sortinxdirection ml10" >*/}
+				{/*							{tagArray[index]}*/}
+				{/*							<p style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(object.choice_text).replace(/▁/g, "▁▁▁")}}></p>*/}
+				{/*						</p>*/}
+				{/*					)*/}
+				{/*				})*/}
+				{/*		}*/}
+
+				{/*	</p>*/}
+				{/*</div>*/}
+			</div>
+		)
+
+	}
+
+
+}
+
+export default Paperreview_judgment
+
+
diff --git a/public/react/src/modules/question/Paperreview_multlple.js b/public/react/src/modules/question/Paperreview_multlple.js
new file mode 100644
index 000000000..74f100f71
--- /dev/null
+++ b/public/react/src/modules/question/Paperreview_multlple.js
@@ -0,0 +1,110 @@
+import React, {Component} from "react";
+import {Link, NavLink} from 'react-router-dom';
+import {WordsBtn, ActionBtn, getImageUrl,markdownToHTML} from 'educoder';
+import axios from 'axios';
+import {
+	notification,
+	Spin,
+	Table,
+	Pagination,
+	Drawer,
+	Input,
+	Button,
+	Breadcrumb
+} from "antd";
+import Itembankstop from "./component/Itembankstop";
+import NoneData from './component/NoneData';
+import './questioncss/questioncom.css';
+import '../tpm/newshixuns/css/Newshixuns.css';
+
+//多选题
+class Paperreview_multlple extends Component {
+	constructor(props) {
+		super(props);
+
+		this.state = {
+			questions:0,
+			totalscore:0,
+			total:0,
+
+		}
+
+	}
+
+	//初始化
+	componentDidMount() {
+
+
+
+
+	}
+
+
+	getdata = (data) => {
+
+	}
+
+	preservation = () => {
+
+
+
+
+	}
+
+
+	setitem_type = (item_type) => {
+
+
+	}
+
+	render() {
+		let {questions,totalscore,total,items} = this.state;
+		// //console.log(params);
+		return (
+			<div className="w100s borderwdswuh  mt25 mb20 ">
+
+
+				{/*顶部*/}
+				<div className="w100s sortinxdirection">
+					<div className=" listjihetixingstit markdown-body"  style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(items&&items.name).replace(/▁/g, "▁▁▁")}}>
+					</div>
+				</div>
+				{/*内容*/}
+				{/*<div className="w100s sortinxdirection">*/}
+
+				{/*	<p className="w100s listjihetixingstits sortinxdirection ">*/}
+				{/*		{*/}
+				{/*			items.item_type==="JUDGMENT"?*/}
+				{/*				items === undefined ||items === null? "" : items.choices.map((object, index) => {*/}
+				{/*					return (*/}
+				{/*						<p className={index===1? "sortinxdirection  ml10":"sortinxdirection  " }  >*/}
+				{/*							<Radio checked={object.is_answer}>*/}
+				{/*								{object.choice_text}*/}
+				{/*							</Radio>*/}
+				{/*						</p>*/}
+				{/*					)*/}
+				{/*				})*/}
+				{/*				:*/}
+				{/*				items === undefined ||items === null? "" : items.choices.map((object, index) => {*/}
+				{/*					return (*/}
+				{/*						<p className="sortinxdirection ml10" >*/}
+				{/*							{tagArray[index]}*/}
+				{/*							<p style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(object.choice_text).replace(/▁/g, "▁▁▁")}}></p>*/}
+				{/*						</p>*/}
+				{/*					)*/}
+				{/*				})*/}
+				{/*		}*/}
+
+				{/*	</p>*/}
+				{/*</div>*/}
+			</div>
+		)
+
+	}
+
+
+}
+
+export default Paperreview_multlple
+
+
diff --git a/public/react/src/modules/question/Paperreview_program.js b/public/react/src/modules/question/Paperreview_program.js
new file mode 100644
index 000000000..c8f847dbe
--- /dev/null
+++ b/public/react/src/modules/question/Paperreview_program.js
@@ -0,0 +1,110 @@
+import React, {Component} from "react";
+import {Link, NavLink} from 'react-router-dom';
+import {WordsBtn, ActionBtn, getImageUrl,markdownToHTML} from 'educoder';
+import axios from 'axios';
+import {
+	notification,
+	Spin,
+	Table,
+	Pagination,
+	Drawer,
+	Input,
+	Button,
+	Breadcrumb
+} from "antd";
+import Itembankstop from "./component/Itembankstop";
+import NoneData from './component/NoneData';
+import './questioncss/questioncom.css';
+import '../tpm/newshixuns/css/Newshixuns.css';
+
+//编程题
+class Paperreview_program extends Component {
+	constructor(props) {
+		super(props);
+
+		this.state = {
+			questions:0,
+			totalscore:0,
+			total:0,
+
+		}
+
+	}
+
+	//初始化
+	componentDidMount() {
+
+
+
+
+	}
+
+
+	getdata = (data) => {
+
+	}
+
+	preservation = () => {
+
+
+
+
+	}
+
+
+	setitem_type = (item_type) => {
+
+
+	}
+
+	render() {
+		let {questions,totalscore,total,items} = this.state;
+		// //console.log(params);
+		return (
+			<div className="w100s borderwdswuh  mt25 mb20 ">
+
+
+				{/*顶部*/}
+				<div className="w100s sortinxdirection">
+					<div className=" listjihetixingstit markdown-body"  style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(items&&items.name).replace(/▁/g, "▁▁▁")}}>
+					</div>
+				</div>
+				{/*内容*/}
+				{/*<div className="w100s sortinxdirection">*/}
+
+				{/*	<p className="w100s listjihetixingstits sortinxdirection ">*/}
+				{/*		{*/}
+				{/*			items.item_type==="JUDGMENT"?*/}
+				{/*				items === undefined ||items === null? "" : items.choices.map((object, index) => {*/}
+				{/*					return (*/}
+				{/*						<p className={index===1? "sortinxdirection  ml10":"sortinxdirection  " }  >*/}
+				{/*							<Radio checked={object.is_answer}>*/}
+				{/*								{object.choice_text}*/}
+				{/*							</Radio>*/}
+				{/*						</p>*/}
+				{/*					)*/}
+				{/*				})*/}
+				{/*				:*/}
+				{/*				items === undefined ||items === null? "" : items.choices.map((object, index) => {*/}
+				{/*					return (*/}
+				{/*						<p className="sortinxdirection ml10" >*/}
+				{/*							{tagArray[index]}*/}
+				{/*							<p style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(object.choice_text).replace(/▁/g, "▁▁▁")}}></p>*/}
+				{/*						</p>*/}
+				{/*					)*/}
+				{/*				})*/}
+				{/*		}*/}
+
+				{/*	</p>*/}
+				{/*</div>*/}
+			</div>
+		)
+
+	}
+
+
+}
+
+export default Paperreview_program
+
+
diff --git a/public/react/src/modules/question/Paperreview_single.js b/public/react/src/modules/question/Paperreview_single.js
new file mode 100644
index 000000000..95eee0163
--- /dev/null
+++ b/public/react/src/modules/question/Paperreview_single.js
@@ -0,0 +1,110 @@
+import React, {Component} from "react";
+import {Link, NavLink} from 'react-router-dom';
+import {WordsBtn, ActionBtn, getImageUrl,markdownToHTML} from 'educoder';
+import axios from 'axios';
+import {
+	notification,
+	Spin,
+	Table,
+	Pagination,
+	Drawer,
+	Input,
+	Button,
+	Breadcrumb
+} from "antd";
+import Itembankstop from "./component/Itembankstop";
+import NoneData from './component/NoneData';
+import './questioncss/questioncom.css';
+import '../tpm/newshixuns/css/Newshixuns.css';
+
+//单选题
+class Paperreview_single extends Component {
+	constructor(props) {
+		super(props);
+
+		this.state = {
+			questions:0,
+			totalscore:0,
+			total:0,
+
+		}
+
+	}
+
+	//初始化
+	componentDidMount() {
+
+
+
+
+	}
+
+
+	getdata = (data) => {
+
+	}
+
+	preservation = () => {
+
+
+
+
+	}
+
+
+	setitem_type = (item_type) => {
+
+
+	}
+
+	render() {
+		let {questions,totalscore,total,items} = this.state;
+		// //console.log(params);
+		return (
+			<div className="w100s borderwdswuh  mt25 mb20 ">
+
+
+			{/*顶部*/}
+		<div className="w100s sortinxdirection">
+			<div className=" listjihetixingstit markdown-body"  style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(items&&items.name).replace(/▁/g, "▁▁▁")}}>
+			</div>
+		</div>
+		{/*内容*/}
+		{/*<div className="w100s sortinxdirection">*/}
+
+		{/*	<p className="w100s listjihetixingstits sortinxdirection ">*/}
+		{/*		{*/}
+		{/*			items.item_type==="JUDGMENT"?*/}
+		{/*				items === undefined ||items === null? "" : items.choices.map((object, index) => {*/}
+		{/*					return (*/}
+		{/*						<p className={index===1? "sortinxdirection  ml10":"sortinxdirection  " }  >*/}
+		{/*							<Radio checked={object.is_answer}>*/}
+		{/*								{object.choice_text}*/}
+		{/*							</Radio>*/}
+		{/*						</p>*/}
+		{/*					)*/}
+		{/*				})*/}
+		{/*				:*/}
+		{/*				items === undefined ||items === null? "" : items.choices.map((object, index) => {*/}
+		{/*					return (*/}
+		{/*						<p className="sortinxdirection ml10" >*/}
+		{/*							{tagArray[index]}*/}
+		{/*							<p style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(object.choice_text).replace(/▁/g, "▁▁▁")}}></p>*/}
+		{/*						</p>*/}
+		{/*					)*/}
+		{/*				})*/}
+		{/*		}*/}
+
+		{/*	</p>*/}
+		{/*</div>*/}
+	</div>
+		)
+
+	}
+
+
+}
+
+export default Paperreview_single
+
+
diff --git a/public/react/src/modules/question/questioncss/questioncom.css b/public/react/src/modules/question/questioncss/questioncom.css
index 530078a95..cecb24763 100644
--- a/public/react/src/modules/question/questioncss/questioncom.css
+++ b/public/react/src/modules/question/questioncss/questioncom.css
@@ -5,7 +5,12 @@
     box-shadow:0px 6px 8px 0px rgba(0,0,0,0.03);
     border-radius:2px;
 }
-
+.w1200wuh{
+    width:1062px;
+    background:rgba(255,255,255,1);
+    box-shadow:0px 6px 8px 0px rgba(0,0,0,0.03);
+    border-radius:2px;
+}
 .w1200dbl{
     width:1062px;
     min-height:60px;
@@ -134,6 +139,12 @@
     margin-left: 20px;
     min-height:150px;
 }
+.borderwdswuh{
+    width: 1020px !important;
+    background: #FFFFFF;
+    border: 1px solid #DDDDDD;
+    min-height:150px;
+}
 .borderwds283{
     width: 1020px !important;
     min-height:283px;
@@ -628,3 +639,55 @@
     font-size: 14px;
 
 }
+.pagertdstcolor{
+    color: #888888;
+    font-size: 12px;
+}
+
+.mb19{
+    margin-bottom: 19px;
+}
+
+.yldxtit{
+    color: #333333;
+    font-size: 14px;
+
+}
+.yldxtits{
+    color: #888888;
+    font-size: 14px;
+}
+.mt25{
+    margin-top: 25px;
+}
+
+.postitonrelati{
+    position: relative;
+}
+.postitonrelatis{
+    position: absolute;
+    right: 2px;
+    top: 11px;
+}
+
+.szdfd{
+    width:88px;
+    height:34px;
+    background:rgba(51,189,140,1);
+    border-radius:4px 4px 0px 0px;
+    text-align: center;
+    color: #ffffff;
+    line-height: 32px;
+    margin-right: 27px;
+}
+.scd{
+    width:88px;
+    height:34px;
+    background:#4CACFF;
+    border-radius:4px 4px 0px 0px;
+    text-align: center;
+    color: #ffffff;
+    line-height: 32px;
+
+
+}

From 1d43efcdd1607897e76e199fcbb58f8b568aa6fb Mon Sep 17 00:00:00 2001
From: daiao <358551898@qq.com>
Date: Mon, 30 Dec 2019 16:49:18 +0800
Subject: [PATCH 2/9] =?UTF-8?q?=E6=97=B6=E9=97=B4=E6=90=93?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

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

diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
index 3d1fd642e..4daa3b45c 100644
--- a/app/controllers/application_controller.rb
+++ b/app/controllers/application_controller.rb
@@ -27,7 +27,7 @@ class ApplicationController < ActionController::Base
 		if params[:client_key].present?
 			Rails.logger.info("111111  #{params[:client_key]}")
 			Rails.logger.info("00000  #{params[:timestamp]}")
-			tip_exception(501, "请求超时") if Time.now - params[:timestamp].to_i > 5
+			tip_exception(501, "请求超时") if (Time.now - params[:timestamp].to_i).between(0,5)
 			timestamp = params[:timestamp]
 			sign = Digest::MD5.hexdigest("#{OPENKEY}#{timestamp}")
 			Rails.logger.info("2222  #{sign}")

From d81387c8e7858831e296d21b64c88365c82d43ed Mon Sep 17 00:00:00 2001
From: daiao <358551898@qq.com>
Date: Mon, 30 Dec 2019 16:49:53 +0800
Subject: [PATCH 3/9] 1

---
 app/controllers/application_controller.rb | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
index 4daa3b45c..63c32f7e6 100644
--- a/app/controllers/application_controller.rb
+++ b/app/controllers/application_controller.rb
@@ -27,7 +27,8 @@ class ApplicationController < ActionController::Base
 		if params[:client_key].present?
 			Rails.logger.info("111111  #{params[:client_key]}")
 			Rails.logger.info("00000  #{params[:timestamp]}")
-			tip_exception(501, "请求超时") if (Time.now - params[:timestamp].to_i).between(0,5)
+			Rails.logger.info("Time.now - params[:timestamp].to_i: #{Time.now - params[:timestamp].to_i}")
+			tip_exception(501, "请求超时") unless (Time.now - params[:timestamp].to_i).between(0,5)
 			timestamp = params[:timestamp]
 			sign = Digest::MD5.hexdigest("#{OPENKEY}#{timestamp}")
 			Rails.logger.info("2222  #{sign}")

From 9f02077d434cc1da84ae338e5272b70f8a72de99 Mon Sep 17 00:00:00 2001
From: daiao <358551898@qq.com>
Date: Mon, 30 Dec 2019 16:51:02 +0800
Subject: [PATCH 4/9] 1

---
 app/controllers/application_controller.rb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
index 63c32f7e6..3bad1718c 100644
--- a/app/controllers/application_controller.rb
+++ b/app/controllers/application_controller.rb
@@ -27,8 +27,8 @@ class ApplicationController < ActionController::Base
 		if params[:client_key].present?
 			Rails.logger.info("111111  #{params[:client_key]}")
 			Rails.logger.info("00000  #{params[:timestamp]}")
-			Rails.logger.info("Time.now - params[:timestamp].to_i: #{Time.now - params[:timestamp].to_i}")
-			tip_exception(501, "请求超时") unless (Time.now - params[:timestamp].to_i).between(0,5)
+			Rails.logger.info("Time.now - params[:timestamp].to_i: #{Time.now.to_i - params[:timestamp].to_i}")
+			tip_exception(501, "请求超时") unless (Time.now.to_i - params[:timestamp].to_i).between(0,5)
 			timestamp = params[:timestamp]
 			sign = Digest::MD5.hexdigest("#{OPENKEY}#{timestamp}")
 			Rails.logger.info("2222  #{sign}")

From 7742f99aeb7d45faa85ab1d565df5d6c4155a8bf Mon Sep 17 00:00:00 2001
From: daiao <358551898@qq.com>
Date: Mon, 30 Dec 2019 16:53:49 +0800
Subject: [PATCH 5/9] 1

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

diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
index 3bad1718c..65c05ef2a 100644
--- a/app/controllers/application_controller.rb
+++ b/app/controllers/application_controller.rb
@@ -28,7 +28,7 @@ class ApplicationController < ActionController::Base
 			Rails.logger.info("111111  #{params[:client_key]}")
 			Rails.logger.info("00000  #{params[:timestamp]}")
 			Rails.logger.info("Time.now - params[:timestamp].to_i: #{Time.now.to_i - params[:timestamp].to_i}")
-			tip_exception(501, "请求超时") unless (Time.now.to_i - params[:timestamp].to_i).between(0,5)
+			tip_exception(501, "请求超时") unless (Time.now.to_i - params[:timestamp].to_i).between?(0,5)
 			timestamp = params[:timestamp]
 			sign = Digest::MD5.hexdigest("#{OPENKEY}#{timestamp}")
 			Rails.logger.info("2222  #{sign}")

From 8f0db2f4738843ccd184d705ab59e630374b55b6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=98=8E?= <775174143@qq.com>
Date: Mon, 30 Dec 2019 16:59:11 +0800
Subject: [PATCH 6/9] =?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 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/public/react/src/AppConfig.js b/public/react/src/AppConfig.js
index 29e7461ec..9350001e4 100644
--- a/public/react/src/AppConfig.js
+++ b/public/react/src/AppConfig.js
@@ -7,8 +7,6 @@ import { broadcastChannelOnmessage ,SetAppModel, isDev, queryString } from 'educ
 import {  notification } from 'antd';
 import './index.css';
 const opens ="79e33abd4b6588941ab7622aed1e67e8";
-let timestamp = Date.parse(new Date());
-const newopens=md5(opens+timestamp)
 broadcastChannelOnmessage('refreshPage', () => {
     window.location.reload()
 })
@@ -94,6 +92,8 @@ export function initAxiosInterceptors(props) {
 								}
 							}
             if(`${config[0]}`!=`true`){
+              let timestamp = Date.parse(new Date())/1000;
+              let newopens=md5(opens+timestamp)
                 if (window.location.port === "3007") {
                     config.url = `${proxy}${url}`;
                     if (config.url.indexOf('?') == -1) {

From 4a653af7d1a89dcd05c42d8f18a782dce22c8ab6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Mon, 30 Dec 2019 17:03:59 +0800
Subject: [PATCH 7/9] =?UTF-8?q?=E9=A2=98=E5=BA=93=E8=AF=95=E5=8D=B7?=
 =?UTF-8?q?=E5=BA=93?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../react/src/modules/question/Paperreview.js |  36 +++-
 .../src/modules/question/Paperreview_item.js  | 156 ++++++++++++------
 .../modules/question/Paperreview_single.js    |  69 ++++----
 public/react/src/modules/question/Question.js |   2 +-
 .../modules/question/component/Contentpart.js |   6 +-
 .../question/questioncss/questioncom.css      |   4 +
 6 files changed, 180 insertions(+), 93 deletions(-)

diff --git a/public/react/src/modules/question/Paperreview.js b/public/react/src/modules/question/Paperreview.js
index c51cf6b93..5bce21e91 100644
--- a/public/react/src/modules/question/Paperreview.js
+++ b/public/react/src/modules/question/Paperreview.js
@@ -24,6 +24,7 @@ import JudquestionEditor from "./component/JudquestionEditor";
 import Paperreview_item from "./Paperreview_item"
 import Bottomsubmit from "../../modules/modals/Bottomsubmit";
 
+//人工组卷预览
 class Paperreview extends Component {
 	constructor(props) {
 		super(props);
@@ -37,8 +38,20 @@ class Paperreview extends Component {
 			myquestion_choicesco: [],
 			disciplinesdata: [],
 			knowledgepoints: [],
-			disciplmy: []
+			disciplmy: [],
+			single_questions:null,
+			multiple_questions:null,
+			judgement_questions:null,
+			program_questions:null,
+			all_score:0,
+			all_questions_count:0,
 		}
+		// single_questions:null, 单选题
+		// 	multiple_questions:null, 多选题
+		// 	judgement_questions:null, 判断题
+		// 	program_questions:null, 编程题
+		// 	all_score:0,  所有分数
+		// 	all_questions_count:0 所有问题数
 
 	}
 
@@ -72,11 +85,20 @@ class Paperreview extends Component {
 			} else {
 
 			}
-			////console.log("item_banks");
-			////console.log(response);
-			this.setState({
-				Contentdata: response.data,
-			})
+			try {
+				this.setState({
+					Contentdata: response.data,
+					single_questions:response.data.single_questions.questions_count===0? null:response.data.single_questions,
+					multiple_questions:response.data.multiple_questions.questions_count===0? null:response.data.multiple_questions,
+					judgement_questions:response.data.judgement_questions.questions_count===0? null:response.data.judgement_questions,
+					program_questions:response.data.program_questions.questions_count===0? null:response.data.program_questions,
+					all_score:response.data.all_score,
+					all_questions_count:response.data.all_questions_count,
+				})
+			}catch (e) {
+
+			}
+
 		}).catch((error) => {
 			////console.log(error)
 			this.setState({
@@ -155,7 +177,7 @@ class Paperreview extends Component {
 							</Breadcrumb>
 						</div>
 
-						<Paperreview_item>
+						<Paperreview_item {...this.state} {...this.props}>
 
 						</Paperreview_item>
 
diff --git a/public/react/src/modules/question/Paperreview_item.js b/public/react/src/modules/question/Paperreview_item.js
index d7fb5905f..96a4e2c25 100644
--- a/public/react/src/modules/question/Paperreview_item.js
+++ b/public/react/src/modules/question/Paperreview_item.js
@@ -25,6 +25,7 @@ import SingleEditor from "./component/SingleEditor";
 import ChoquesEditor from "./component/ChoquesEditor"
 import JudquestionEditor from "./component/JudquestionEditor";
 import Bottomsubmit from "../../modules/modals/Bottomsubmit";
+import Listjihe from "./component/Listjihe";
 class Paperreview_item extends Component {
 	constructor(props) {
 		super(props);
@@ -66,70 +67,121 @@ class Paperreview_item extends Component {
 
 	render() {
 		let {questions,totalscore,total} = this.state;
-		// //console.log(params);
+		let {single_questions,multiple_questions,judgement_questions,program_questions,all_score}=this.props;
 		return (
 			<div className=" clearfix  educontent Contentquestionbankstyle w100s w1200wuh mt19">
          <div className="w100s mt20 mb20">
           <div className="w100s sortinxdirection">
-						<p className="questionstishu">题数:{questions}</p>
-						<p className="ml58 questionstotal">总分:{totalscore}</p>
+						<p className="questionstishu">题数:{this.props.all_score}</p>
+						<p className="ml58 questionstotal">总分:{this.props.all_questions_count}</p>
 					</div>
-					 <div className="questiontypeheng w100s mt19 mb19"></div>
 					 <div className="w100s sortinxdirection">
 						 <div className="pagertdstcolor w50s sortinxdirection">拖动试题可调整排序</div>
-						 <div className="pagertdstcolor w50s xaxisreverseorder">共{total}个试题</div>
+						 <div className="pagertdstcolor w50s xaxisreverseorder">共{single_questions.questions_count}个试题</div>
 
 					 </div>
+					 <div className="questiontypeheng w100s mt19 mb19"></div>
 					 {/*单选题*/}
-					 <div className="w100s mt20 mb20 postitonrelati">
-						 <div className="w100s sortinxdirection">
-							 <p className="yldxtit">一、单选题</p> <p className="ml15 yldxtits">(共3题;共15分)</p>
-						 </div>
-						 <div className="postitonrelatis xaxisreverseorder">
-							 <div className="scd">删除</div>
-							 <div className="szdfd">设置得分</div>
-						 </div>
-
-						 <Paperreview_single></Paperreview_single>
-					 </div>
+					 {
+						 single_questions&&single_questions?
+							 <div>
+
+								 <div className="w100s mt20 mb20 postitonrelati">
+									 <div className="w100s sortinxdirection">
+										 <p className="yldxtit">一、单选题</p> <p className="ml15 yldxtits">(共{single_questions.questions_count}题;共single_questions.questions_score}分)</p>
+									 </div>
+									 <div className="postitonrelatis xaxisreverseorder">
+										 <div className="scd">删除</div>
+										 <div className="szdfd">设置得分</div>
+									 </div>
+
+									 {
+										 single_questions&&single_questions.questions.map((object, index) => {
+											 return (
+												 <Paperreview_single objectsingle={object}></Paperreview_single>
+											 )
+										 })}
+									 }
+
+								 </div>
+							 </div>
+
+							 :""
+					 }
+
+
+					 {
+						 multiple_questions&&multiple_questions?
+							 <div>
+
+							 <div className="w100s mt20 mb20 postitonrelati">
+								 <div className="w100s sortinxdirection">
+									 <p className="yldxtit">{single_questions===null?"一":"二"}、多选题</p> <p className="ml15 yldxtits">(共{multiple_questions.questions_count}题;共{multiple_questions.questions_score}分)</p>
+								 </div>
+								 <div className="postitonrelatis xaxisreverseorder">
+									 <div className="scd">删除</div>
+									 <div className="szdfd">设置得分</div>
+								 </div>
+
+								 <Paperreview_multlple multiple_questions={multiple_questions}></Paperreview_multlple>
+							 </div>
+							 </div>
+							 :
+							 ""
+					 }
+
+					 {
+						 judgement_questions&&judgement_questions?
+							 <div>
+
+							 <div className="w100s mt20 mb20 postitonrelati">
+								 <div className="w100s sortinxdirection">
+									 <p className="yldxtit">{single_questions===null&&multiple_questions===null?"一":single_questions===null&&multiple_questions!==null?"二"
+										 :single_questions!==null&&multiple_questions===null?"二"
+										 :"三"}、判断题</p> <p className="ml15 yldxtits">(共{judgement_questions.questions_count}题;共{judgement_questions.questions_score}分)</p>
+								 </div>
+								 <div className="postitonrelatis xaxisreverseorder">
+									 <div className="scd">删除</div>
+									 <div className="szdfd">设置得分</div>
+								 </div>
+
+								 <Paperreview_judgment judgement_questions={judgement_questions}></Paperreview_judgment>
+							 </div>
+							 </div>
+							 :""
+					 }
+
+
+					 {
+						 program_questions&&program_questions?
+							 <div>
+
+							 <div className="w100s mt20 mb20 postitonrelati">
+								 <div className="w100s sortinxdirection">
+									 <p className="yldxtit">
+										 {single_questions===null&&multiple_questions===null&&program_questions===null?"一"
+											 :single_questions===null&&multiple_questions===null&&program_questions!==null?"二"
+											 :single_questions!==null&&multiple_questions===null&&program_questions===null?"二"
+											 :single_questions===null&&multiple_questions!==null&&program_questions===null?"二"
+											 :single_questions!==null&&multiple_questions!==null&&program_questions===null?"三"
+											 :single_questions===null&&multiple_questions!==null&&program_questions!==null?"三"
+											 :single_questions!==null&&multiple_questions==null&&program_questions!==null?"三":
+											 "四"}
+										 、编程题</p> <p className="ml15 yldxtits">(共{program_questions.questions_count}题;共{program_questions.questions_score}分)</p>
+								 </div>
+								 <div className="postitonrelatis xaxisreverseorder">
+									 <div className="scd">删除</div>
+									 <div className="szdfd">设置得分</div>
+								 </div>
+
+								 <Paperreview_program program_questions={program_questions}></Paperreview_program>
+							 </div>
+							 </div>
+							 :
+							 ""
+					 }
 
 
-					 <div className="w100s mt20 mb20 postitonrelati">
-						 <div className="w100s sortinxdirection">
-							 <p className="yldxtit">一、多选题</p> <p className="ml15 yldxtits">(共3题;共15分)</p>
-						 </div>
-						 <div className="postitonrelatis xaxisreverseorder">
-							 <div className="scd">删除</div>
-							 <div className="szdfd">设置得分</div>
-						 </div>
-
-						 <Paperreview_multlple></Paperreview_multlple>
-					 </div>
-					 <div className="w100s mt20 mb20 postitonrelati">
-						 <div className="w100s sortinxdirection">
-							 <p className="yldxtit">一、判断题</p> <p className="ml15 yldxtits">(共3题;共15分)</p>
-						 </div>
-						 <div className="postitonrelatis xaxisreverseorder">
-							 <div className="scd">删除</div>
-							 <div className="szdfd">设置得分</div>
-						 </div>
-
-						 <Paperreview_judgment></Paperreview_judgment>
-					 </div>
-
-
-					 <div className="w100s mt20 mb20 postitonrelati">
-						 <div className="w100s sortinxdirection">
-							 <p className="yldxtit">一、编程题</p> <p className="ml15 yldxtits">(共3题;共15分)</p>
-						 </div>
-						 <div className="postitonrelatis xaxisreverseorder">
-							 <div className="scd">删除</div>
-							 <div className="szdfd">设置得分</div>
-						 </div>
-
-						 <Paperreview_program></Paperreview_program>
-					 </div>
-
 				 </div>
 			</div>
 		)
diff --git a/public/react/src/modules/question/Paperreview_single.js b/public/react/src/modules/question/Paperreview_single.js
index 95eee0163..7730f17d7 100644
--- a/public/react/src/modules/question/Paperreview_single.js
+++ b/public/react/src/modules/question/Paperreview_single.js
@@ -10,13 +10,18 @@ import {
 	Drawer,
 	Input,
 	Button,
-	Breadcrumb
+	Breadcrumb,
+	Radio
 } from "antd";
 import Itembankstop from "./component/Itembankstop";
 import NoneData from './component/NoneData';
 import './questioncss/questioncom.css';
 import '../tpm/newshixuns/css/Newshixuns.css';
-
+const tagArray = [
+	'A.', 'B.', 'C.', 'D.', 'E.', 'F.', 'G.', 'H.', 'I.',
+	'J.', 'K.', 'L.', 'M.', 'N.', 'O.', 'P.', 'Q.', 'R.',
+	'S.', 'T.', 'U.', 'V.', 'W.', 'X.', 'Y.', 'Z.'
+]
 //单选题
 class Paperreview_single extends Component {
 	constructor(props) {
@@ -59,6 +64,7 @@ class Paperreview_single extends Component {
 
 	render() {
 		let {questions,totalscore,total,items} = this.state;
+		let {objectsingle} =this.props;
 		// //console.log(params);
 		return (
 			<div className="w100s borderwdswuh  mt25 mb20 ">
@@ -66,37 +72,40 @@ class Paperreview_single extends Component {
 
 			{/*顶部*/}
 		<div className="w100s sortinxdirection">
-			<div className=" listjihetixingstit markdown-body"  style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(items&&items.name).replace(/▁/g, "▁▁▁")}}>
+			<div>
+				{objectsingle.id}、({objectsingle.score}分)
+			</div>
+			<div className=" listjihetixingstit markdown-body"  style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(objectsingle&&objectsingle.name).replace(/▁/g, "▁▁▁")}}>
 			</div>
 		</div>
 		{/*内容*/}
-		{/*<div className="w100s sortinxdirection">*/}
-
-		{/*	<p className="w100s listjihetixingstits sortinxdirection ">*/}
-		{/*		{*/}
-		{/*			items.item_type==="JUDGMENT"?*/}
-		{/*				items === undefined ||items === null? "" : items.choices.map((object, index) => {*/}
-		{/*					return (*/}
-		{/*						<p className={index===1? "sortinxdirection  ml10":"sortinxdirection  " }  >*/}
-		{/*							<Radio checked={object.is_answer}>*/}
-		{/*								{object.choice_text}*/}
-		{/*							</Radio>*/}
-		{/*						</p>*/}
-		{/*					)*/}
-		{/*				})*/}
-		{/*				:*/}
-		{/*				items === undefined ||items === null? "" : items.choices.map((object, index) => {*/}
-		{/*					return (*/}
-		{/*						<p className="sortinxdirection ml10" >*/}
-		{/*							{tagArray[index]}*/}
-		{/*							<p style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(object.choice_text).replace(/▁/g, "▁▁▁")}}></p>*/}
-		{/*						</p>*/}
-		{/*					)*/}
-		{/*				})*/}
-		{/*		}*/}
-
-		{/*	</p>*/}
-		{/*</div>*/}
+		<div className="w100s sortinxdirection">
+
+			<p className="w100s listjihetixingstits sortinxdirection ">
+				{
+					objectsingle.item_type==="JUDGMENT"?
+						objectsingle === undefined ||objectsingle === null? "" : objectsingle.choices.map((object, index) => {
+							return (
+								<p className={index===1? "sortinxdirection  ml10":"sortinxdirection  " }  >
+									<Radio checked={object.is_answer}>
+										{object.choice_text}
+									</Radio>
+								</p>
+							)
+						})
+						:
+						objectsingle === undefined ||objectsingle === null? "" : objectsingle.choices.map((object, index) => {
+							return (
+								<p className="sortinxdirection ml10" >
+									{tagArray[index]}
+									<p style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML(object.choice_text).replace(/▁/g, "▁▁▁")}}></p>
+								</p>
+							)
+						})
+				}
+
+			</p>
+		</div>
 	</div>
 		)
 
diff --git a/public/react/src/modules/question/Question.js b/public/react/src/modules/question/Question.js
index 1cc42ce34..b96751d85 100644
--- a/public/react/src/modules/question/Question.js
+++ b/public/react/src/modules/question/Question.js
@@ -824,7 +824,7 @@ class Question extends Component {
 
 							<div className="intermediatecenter verticallayout mt42">
 
-								<div className="drawerbutton" onClick={()=>this.gotopaperreview()}>
+								<div className="drawerbutton xiaoshou" onClick={()=>this.gotopaperreview()}>
 									试卷预览
 								</div>
 							</div>
diff --git a/public/react/src/modules/question/component/Contentpart.js b/public/react/src/modules/question/component/Contentpart.js
index 59347d36c..cb3235bd9 100644
--- a/public/react/src/modules/question/component/Contentpart.js
+++ b/public/react/src/modules/question/component/Contentpart.js
@@ -114,7 +114,7 @@ class Contentpart extends Component {
     height: 41px;}
                  
                   .xaxisreverseorder .ant-popover{
-                       top: 348px !important;
+                       top: 30px !important;
                    }
                    
                    
@@ -135,7 +135,7 @@ class Contentpart extends Component {
 									 </a>
 									 :""
 							 }
-							 <Popover  placement="bottom"  content={contents} trigger="click" visible={this.props.visiblemys} onVisibleChange={()=>this.props.handleVisibleChange(true)}>
+							 <Popover getPopupContainer={trigger => trigger.parentNode}  placement="bottom" trigger="hover" content={contents}   onVisibleChange={()=>this.props.handleVisibleChange(true)}>
 							 <div className=" sortinxdirection mr10">
 
 							 <div className="subjecttit">
@@ -147,7 +147,7 @@ class Contentpart extends Component {
 
 
 
-							 <Popover  placement="bottom" content={content} trigger="click" visible={this.props.visiblemyss} onVisibleChange={()=>this.props.handleVisibleChanges(true)}>
+							 <Popover getPopupContainer={trigger => trigger.parentNode}  placement="bottom" trigger="hover" content={content}   onVisibleChange={()=>this.props.handleVisibleChanges(true)}>
 							 <div className="sortinxdirection mr40">
 							 <div className="subjecttit">
 								 题型
diff --git a/public/react/src/modules/question/questioncss/questioncom.css b/public/react/src/modules/question/questioncss/questioncom.css
index cecb24763..54c7fbf4a 100644
--- a/public/react/src/modules/question/questioncss/questioncom.css
+++ b/public/react/src/modules/question/questioncss/questioncom.css
@@ -145,6 +145,10 @@
     border: 1px solid #DDDDDD;
     min-height:150px;
 }
+
+.borderwdswuh:hover{
+    background: #F9F9F9;
+}
 .borderwds283{
     width: 1020px !important;
     min-height:283px;

From 265fbaa68f24576fcbe557364fbf99178ecae287 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Mon, 30 Dec 2019 17:12:00 +0800
Subject: [PATCH 8/9] =?UTF-8?q?=E9=A2=98=E5=BA=93=E8=AF=95=E5=8D=B7?=
 =?UTF-8?q?=E5=BA=93?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../react/src/modules/question/Paperreview_item.js  | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/public/react/src/modules/question/Paperreview_item.js b/public/react/src/modules/question/Paperreview_item.js
index 96a4e2c25..8e779736e 100644
--- a/public/react/src/modules/question/Paperreview_item.js
+++ b/public/react/src/modules/question/Paperreview_item.js
@@ -75,12 +75,13 @@ class Paperreview_item extends Component {
 						<p className="questionstishu">题数:{this.props.all_score}</p>
 						<p className="ml58 questionstotal">总分:{this.props.all_questions_count}</p>
 					</div>
+					 <div className="questiontypeheng w100s mt19 mb19"></div>
 					 <div className="w100s sortinxdirection">
 						 <div className="pagertdstcolor w50s sortinxdirection">拖动试题可调整排序</div>
-						 <div className="pagertdstcolor w50s xaxisreverseorder">共{single_questions.questions_count}个试题</div>
+						 <div className="pagertdstcolor w50s xaxisreverseorder">共{single_questions&&single_questions.questions_count}个试题</div>
 
 					 </div>
-					 <div className="questiontypeheng w100s mt19 mb19"></div>
+
 					 {/*单选题*/}
 					 {
 						 single_questions&&single_questions?
@@ -88,7 +89,7 @@ class Paperreview_item extends Component {
 
 								 <div className="w100s mt20 mb20 postitonrelati">
 									 <div className="w100s sortinxdirection">
-										 <p className="yldxtit">一、单选题</p> <p className="ml15 yldxtits">(共{single_questions.questions_count}题;共single_questions.questions_score}分)</p>
+										 <p className="yldxtit">一、单选题</p> <p className="ml15 yldxtits">(共{single_questions&&single_questions.questions_count}题;共{single_questions&&single_questions.questions_score}分)</p>
 									 </div>
 									 <div className="postitonrelatis xaxisreverseorder">
 										 <div className="scd">删除</div>
@@ -116,7 +117,7 @@ class Paperreview_item extends Component {
 
 							 <div className="w100s mt20 mb20 postitonrelati">
 								 <div className="w100s sortinxdirection">
-									 <p className="yldxtit">{single_questions===null?"一":"二"}、多选题</p> <p className="ml15 yldxtits">(共{multiple_questions.questions_count}题;共{multiple_questions.questions_score}分)</p>
+									 <p className="yldxtit">{single_questions===null?"一":"二"}、多选题</p> <p className="ml15 yldxtits">(共{multiple_questions&&multiple_questions.questions_count}题;共{multiple_questions&&multiple_questions.questions_score}分)</p>
 								 </div>
 								 <div className="postitonrelatis xaxisreverseorder">
 									 <div className="scd">删除</div>
@@ -138,7 +139,7 @@ class Paperreview_item extends Component {
 								 <div className="w100s sortinxdirection">
 									 <p className="yldxtit">{single_questions===null&&multiple_questions===null?"一":single_questions===null&&multiple_questions!==null?"二"
 										 :single_questions!==null&&multiple_questions===null?"二"
-										 :"三"}、判断题</p> <p className="ml15 yldxtits">(共{judgement_questions.questions_count}题;共{judgement_questions.questions_score}分)</p>
+										 :"三"}、判断题</p> <p className="ml15 yldxtits">(共{judgement_questions&&judgement_questions.questions_count}题;共{judgement_questions&&judgement_questions.questions_score}分)</p>
 								 </div>
 								 <div className="postitonrelatis xaxisreverseorder">
 									 <div className="scd">删除</div>
@@ -167,7 +168,7 @@ class Paperreview_item extends Component {
 											 :single_questions===null&&multiple_questions!==null&&program_questions!==null?"三"
 											 :single_questions!==null&&multiple_questions==null&&program_questions!==null?"三":
 											 "四"}
-										 、编程题</p> <p className="ml15 yldxtits">(共{program_questions.questions_count}题;共{program_questions.questions_score}分)</p>
+										 、编程题</p> <p className="ml15 yldxtits">(共{program_questions&&program_questions.questions_count}题;共{program_questions&&program_questions.questions_score}分)</p>
 								 </div>
 								 <div className="postitonrelatis xaxisreverseorder">
 									 <div className="scd">删除</div>

From 3fd57ca0db0f6b5a4a1ee75ff8d16961b3e46a4b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=A8=E6=A0=91=E6=9E=97?= <904079904@qq.com>
Date: Mon, 30 Dec 2019 17:30:04 +0800
Subject: [PATCH 9/9] =?UTF-8?q?=E9=A2=98=E5=BA=93=E8=AF=95=E5=8D=B7?=
 =?UTF-8?q?=E5=BA=93?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../src/modules/question/Paperreview_item.js  | 22 +++++++++++++++----
 1 file changed, 18 insertions(+), 4 deletions(-)

diff --git a/public/react/src/modules/question/Paperreview_item.js b/public/react/src/modules/question/Paperreview_item.js
index 8e779736e..1fe9653f6 100644
--- a/public/react/src/modules/question/Paperreview_item.js
+++ b/public/react/src/modules/question/Paperreview_item.js
@@ -102,7 +102,6 @@ class Paperreview_item extends Component {
 												 <Paperreview_single objectsingle={object}></Paperreview_single>
 											 )
 										 })}
-									 }
 
 								 </div>
 							 </div>
@@ -123,8 +122,13 @@ class Paperreview_item extends Component {
 									 <div className="scd">删除</div>
 									 <div className="szdfd">设置得分</div>
 								 </div>
+								 {
+									 multiple_questions&&multiple_questions.questions.map((object, index) => {
+										 return (
+											 <Paperreview_multlple  objectsingle={object}></Paperreview_multlple>
+										 )
+									 })}
 
-								 <Paperreview_multlple multiple_questions={multiple_questions}></Paperreview_multlple>
 							 </div>
 							 </div>
 							 :
@@ -145,8 +149,13 @@ class Paperreview_item extends Component {
 									 <div className="scd">删除</div>
 									 <div className="szdfd">设置得分</div>
 								 </div>
+								 {
+									 judgement_questions&&judgement_questions.questions.map((object, index) => {
+										 return (
+											 <Paperreview_judgment objectsingle={object}></Paperreview_judgment>
+										 )
+									 })}
 
-								 <Paperreview_judgment judgement_questions={judgement_questions}></Paperreview_judgment>
 							 </div>
 							 </div>
 							 :""
@@ -174,8 +183,13 @@ class Paperreview_item extends Component {
 									 <div className="scd">删除</div>
 									 <div className="szdfd">设置得分</div>
 								 </div>
+								 {
+									 program_questions&&program_questions.questions.map((object, index) => {
+										 return (
+											 <Paperreview_program objectsingle={object}></Paperreview_program>
+										 )
+									 })}
 
-								 <Paperreview_program program_questions={program_questions}></Paperreview_program>
 							 </div>
 							 </div>
 							 :