dev_aliyun2
杨树明 5 years ago committed by harry
parent d7954eccb9
commit 12b02d9791

@ -716,8 +716,14 @@ class Itembankstop extends Component {
rules: [{required: true, message: '请选择课程'}], rules: [{required: true, message: '请选择课程'}],
} }
)( )(
<<<<<<< HEAD
<Cascader style={{width: '270px'}} options={options} onChange={this.handleFormzhishidian} <Cascader style={{width: '270px'}} options={options} onChange={this.handleFormzhishidian}
=======
<div className="sortinxdirection">
<InputGroup >
<Cascader style={{width: '270px'}} value={this.state.rbkc} options={options} onChange={this.handleFormzhishidian}
>>>>>>> df308ab... 合并
placeholder="请选择..."/> placeholder="请选择..."/>
)} )}
@ -729,6 +735,10 @@ class Itembankstop extends Component {
{getFieldDecorator("rbzsd" {getFieldDecorator("rbzsd"
)( )(
<div className="sortinxdirection"> <div className="sortinxdirection">
<<<<<<< HEAD
=======
<InputGroup >
>>>>>>> df308ab... 合并
<Select style={{width: '270px'}} value={undefined} onChange={this.handleFormkechen} <Select style={{width: '270px'}} value={undefined} onChange={this.handleFormkechen}
placeholder="请选择..."> placeholder="请选择...">
{knowledgepoints2 && knowledgepoints2.map((object, index) => { {knowledgepoints2 && knowledgepoints2.map((object, index) => {
@ -782,7 +792,12 @@ class Itembankstop extends Component {
rules: [{required: true, message: '请选择题型'}], rules: [{required: true, message: '请选择题型'}],
} }
)( )(
<<<<<<< HEAD
<Select style={{width: '270px'}} disabled={this.state.boolnews} onChange={this.handleFormtixing} <Select style={{width: '270px'}} disabled={this.state.boolnews} onChange={this.handleFormtixing}
=======
<InputGroup >
<Select style={{width: '270px'}} value={this.state.rbtx} onChange={this.handleFormtixing}
>>>>>>> df308ab... 合并
placeholder="请选择..."> placeholder="请选择...">
<Option value="PROGRAM">编程题</Option> <Option value="PROGRAM">编程题</Option>
<Option value="SINGLE">单选题</Option> <Option value="SINGLE">单选题</Option>

@ -17,10 +17,6 @@ const tagArrays = [
'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R',
'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'
] ]
<<<<<<< HEAD
=======
>>>>>>> d0ddf91... 题库
class Listjihe extends Component { class Listjihe extends Component {
constructor(props) { constructor(props) {
super(props); super(props);
@ -39,18 +35,9 @@ class Listjihe extends Component {
//选用 //选用
Selectingpracticaltraining = (id) => { Selectingpracticaltraining = (id) => {
let data = {} let data = {
if (this.props.exam_id === undefined) { item_ids: [id]
data = {
item_ids: [id]
}
} else {
data = {
item_ids: [id],
exam_id: this.props.exam_id === undefined ? "" : parseInt(this.props.exam_id),
}
} }
this.props.getitem_baskets(data); this.props.getitem_baskets(data);
} }
//撤销 //撤销
@ -100,97 +87,80 @@ class Listjihe extends Component {
MULTIPLEkey = MULTIPLEkey + tagArrays[i]; MULTIPLEkey = MULTIPLEkey + tagArrays[i];
} }
<<<<<<< HEAD // 编程答案
} var rightkey = null
}
} if (items) {
} if (items.item_type) {
if (items.item_type === "PROGRAM") {
} else {
if (items.choices) { } else {
if (items.choices.length > 0) { if (items.item_type === "JUDGMENT") {
var arr = items.choices;
for (var i = 0; i < arr.length; i++) {
if (arr[i].is_answer === true) { if (items.choices) {
rightkey = i; if (items.choices.length > 0) {
break; var arr = items.choices;
} for (let data of arr) {
======= if (data.is_answer === true) {
// 编程答案 rightkey = data.choice_text;
var rightkey=null break;
}
if(items){ }
if(items.item_type){ }
if(items.item_type==="PROGRAM"){ }
} else {
}else{ if (items.choices) {
if(items.item_type==="JUDGMENT") { if (items.choices.length > 0) {
var arr = items.choices;
for (var i = 0; i < arr.length; i++) {
if(items.choices){ if (arr[i].is_answer === true) {
if(items.choices.length>0){ rightkey = i;
var arr= items.choices; break;
for(let data of arr) { }
if(data.is_answer===true){ }
rightkey=data.choice_text; }
break; }
>>>>>>> d0ddf91... 题库
}
} }
} }
} }
}else {
if (items.choices) {
if (items.choices.length > 0) {
var arr = items.choices;
for (var i = 0; i < arr.length; i++) {
if (arr[i].is_answer === true) {
rightkey = i;
break;
}
}
}
}
}
}
}
} }
var itemssname = ""; var itemssname = "";
try { try {
itemssname = JSON.parse(items.name); itemssname = JSON.parse(items.name);
} catch (e) { } catch (e) {
} }
if (itemssname === undefined) { if (itemssname === undefined) {
itemssname = items.name itemssname = items.name
} }
var itemsnamesy = ""; var itemsnamesy = "";
try { try {
itemsnamesy = JSON.parse(items && items.program_attr && items.program_attr.description); itemsnamesy = JSON.parse(items && items.program_attr && items.program_attr.description);
} catch (e) { } catch (e) {
itemsnamesy = items && items.program_attr && items.program_attr.description; itemsnamesy = items && items.program_attr && items.program_attr.description;
} }
var analysisnames = ""; var analysisnames = "";
try { try {
analysisnames = JSON.parse(items && items.analysis); analysisnames = JSON.parse(items && items.analysis);
} catch (e) { } catch (e) {
analysisnames = items && items.analysis; analysisnames = items && items.analysis;
} }
return ( return (
<div key={keindex} <div key={keindex}
className={chakanjiexiboolindex === keindex ? "w100s borderwds283 pd20 mb20 listjihecolors" : "w100s borderwds pd20 mb20 listjihecolors"}> className={chakanjiexiboolindex === keindex ? "w100s borderwds283 pd20 mb20 listjihecolors" : "w100s borderwds pd20 mb20 listjihecolors"}>
{/*顶部*/} {/*顶部*/}
<style> <style>
{ {
` .markdown-body .ql-editor{ ` .markdown-body .ql-editor{
padding-left: 0px !important; padding-left: 0px !important;
padding-top: 0px !important; padding-top: 0px !important;
} }
@ -202,333 +172,250 @@ class Listjihe extends Component {
` `
} }
</style> </style>
<div className="w100s sortinxdirection"> <div className="w100s sortinxdirection">
<div className="listjihetixingstitsy"> <div className="listjihetixingstitsy">
{ {
this.props.listjihe this.props.listjihe
}. }.
</div> </div>
{ {
items.item_type === "PROGRAM" ? items.item_type === "PROGRAM" ?
<a href={`/problems/${items.program_attr.identifier}/edit`}> <a href={`/problems/${items.program_attr.identifier}/edit`}>
<div className="ml10 w100s " style={{ wordBreak: "break-word" }} dangerouslySetInnerHTML={{ __html: markdownToHTML(items && items.name).replace(/▁/g, "▁▁▁") }}></div> <div className="ml10 w100s " style={{ wordBreak: "break-word" }} dangerouslySetInnerHTML={{ __html: markdownToHTML(items && items.name).replace(/▁/g, "▁▁▁") }}></div>
</a> </a>
: :
<div className="ml10 w100s markdown-body" style={{ wordBreak: "break-word" }}> <div className="ml10 w100s markdown-body" style={{ wordBreak: "break-word" }}>
{items === undefined || items === null || items === "" ? "" : {items === undefined || items === null || items === "" ? "" :
items.name === undefined || items.name === null || items.name === "" ? items.name === undefined || items.name === null || items.name === "" ?
"" ""
: :
items.name.length > 0 ? items.name.length > 0 ?
<QuillForEditor <QuillForEditor
readOnly={true} readOnly={true}
value={itemssname} value={itemssname}
/> />
: "" : ""
} }
</div> </div>
} }
</div> </div>
{/*内容*/} {/*内容*/}
<div className="w100s sortinxdirection "> <div className="w100s sortinxdirection ">
<<<<<<< HEAD {items.item_type === "JUDGMENT" ?
{items.item_type === "JUDGMENT" ? <p className="w100s listjihetixingstits sortinxdirection ">
<p className="w100s listjihetixingstitsp sortinxdirection "> {
{ items === undefined || items === null ? "" : items.choices.map((object, index) => {
items === undefined || items === null ? "" : items.choices.map((object, index) => { return (
return ( <p className={index === 1 ? "sortinxdirection ml10" : "sortinxdirection "} >
<p className={index === 1 ? "sortinxdirection ml10" : "sortinxdirection "}> <Radio disabled={false}>
<Radio disabled={true} > {object.choice_text}
{object.choice_text} </Radio>
</Radio> </p>
</p> )
) })
}) }
} </p> :
</p> : items.item_type === "PROGRAM" ?
items.item_type === "PROGRAM" ? <p className="w100s listjihetixingstitssy sortinxdirection ">
======= <p className={"sortinxdirection mt15"} >
{items.item_type==="JUDGMENT"? <p style={{ wordBreak: "break-word" }} dangerouslySetInnerHTML={{ __html: markdownToHTML(items.program_attr.description).replace(/▁/g, "▁▁▁") }}></p>
<p className="w100s listjihetixingstits sortinxdirection "> </p>
{ </p>
items === undefined ||items === null? "" : items.choices.map((object, index) => { :
return ( <p className="w100s listjihetixingstits verticallayout ">
<p className={index===1? "sortinxdirection ml10":"sortinxdirection " } > {
<Radio disabled={false}> items === undefined || items === null ? "" : items.choices.map((object, index) => {
{object.choice_text} return (
</Radio> <p className={index === 0 ? "sortinxdirection" : "sortinxdirection mt15"} >
</p> {tagArray[index]}
) <p style={{ wordBreak: "break-word" }} dangerouslySetInnerHTML={{ __html: markdownToHTML(object.choice_text).replace(/▁/g, "▁▁▁") }}></p>
}) </p>
} )
</p>: })
items.item_type==="PROGRAM"? }
>>>>>>> d0ddf91... 题库 </p>
<p className="w100s listjihetixingstitssy sortinxdirection "> }
<p className={"sortinxdirection mt15"}> </div>
{
items && items.program_attr && items.program_attr.description ?
<p className="programquill" style={{ wordBreak: "break-word" }} <div className="w100s sortinxdirection mt10">
> <p
<QuillForEditor className="listjihetixing">难度<span>{items.difficulty === 1 ? "简单" : items.difficulty === 2 ? "适中" : items.difficulty === 3 ? "困难" : ""}</span>
readOnly={true}
value={itemsnamesy}
/>
</p>
: ""
}
</p>
</p>
:
<p className="w100s listjihetixingstitsp verticallayout ">
{
items === undefined || items === null ? "" : items.choices.map((object, index) => {
var string = ""
try {
string = JSON.parse(object.choice_text);
} catch (e) {
string = object.choice_text;
}
return (
<p className={index === 0 ? "sortinxdirection " : "sortinxdirection mt15 "}>
<p className="lh20s">{tagArray[index]}</p>
<p className="programquill" style={{ wordBreak: "break-word" }}>
{object ?
object.choice_text === undefined || object.choice_text === null || object.choice_text === "" ?
""
:
object.choice_text.length > 0 ?
<QuillForEditor
readOnly={true}
value={string}
/>
: ""
:
""
}
</p>
</p>
)
})
}
</p>
}
</div>
<div className="w100s sortinxdirection mt10">
<p
className="listjihetixing">难度<span>{items.difficulty === 1 ? "简单" : items.difficulty === 2 ? "适中" : items.difficulty === 3 ? "困难" : ""}</span>
</p>
<p
className="ml30 listjihetixing">题型<span>{items.item_type === "SINGLE" ? "单选题" : items.item_type === "MULTIPLE" ? "多选题" : items.item_type === "JUDGMENT" ? "判断题" : items.item_type === "PROGRAM" ? "编程题" : ""}</span>
</p>
</div>
{/*更新时间*/}
<div className="w100s sortinxdirection">
<div className="w50s listjihetixingstit sortinxdirection">
<p className="updatetimes lh30">更新时间{items.update_time}</p>
{
this.props.defaultActiveKey === "0" || this.props.defaultActiveKey === 0 ?
""
:
<p className="updatetimes lh30 ml45">创建者{items.author.name}</p>
}
{
items.item_type === "PROGRAM" ?
<p className="updatetimes lh30 ml45">编程语言{items.program_attr.language}</p>
: ""
}
{
items.item_type === "PROGRAM" ?
items.program_attr.status === 0 ?
<p className="updatetimes lh30 ml45 nofabu mt5">未发布</p>
: ""
: ""
}
</div>
<div className="w50s xaxisreverseorder">
{
items.choosed === true ?
<p className="selectionss xiaoshou" onClick={() => this.Selectingpracticaltrainings(items.id)}>
<i className="iconfont icon-jianhao font-12 lg ml7 lh30 icontianjiadaohangcolor mr5"></i>
<span className="mr15 lh30">撤销</span></p>
:
items.item_type === "PROGRAM" ?
items.program_attr.status === 0 ?
<Tooltip placement="top" title={"编程题未发布,不能选用!"}>
<p className="selectionys jinzhixiaoshou">
<i className="iconfont icon-tianjiadaohang font-12 lg ml7 lh30 icontianjiadaohangcolor mr5"></i>
<span className="mr15 lh30">选用</span>
</p>
</Tooltip>
:
<p className="selection xiaoshou" onClick={() => this.Selectingpracticaltraining(items.id)}>
<i className="iconfont icon-tianjiadaohang font-12 lg ml7 lh30 icontianjiadaohangcolor mr5"></i>
<span className="mr15 lh30">选用</span>
</p>
:
<p className="selection xiaoshou" onClick={() => this.Selectingpracticaltraining(items.id)}>
<i className="iconfont icon-tianjiadaohang font-12 lg ml7 lh30 icontianjiadaohangcolor mr5"></i>
<span className="mr15 lh30">选用</span>
</p>
}
{
defaultActiveKey === 0 || defaultActiveKey === "0" ?
<div className="xaxisreverseorder">
<p className="viewparsings xiaoshou mr25" onClick={() => this.props.showmodelysl(items.id)}>
<i className="iconfont icon-shanchu1 font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i>
<span>删除</span>
</p>
{
items.item_type === "PROGRAM" ?
this.props.Isitapopup && this.props.Isitapopup === "true" ?
""
:
<a href={`/problems/${items.program_attr.identifier}/edit`}>
<p className="viewparsings xiaoshou mr25">
<i className="iconfont icon-bianji2 font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i>
<span>编辑</span>
</p>
</a>
:
this.props.Isitapopup && this.props.Isitapopup === "true" ?
""
:
<a href={`/question/edit/${items.id}`}>
<p className="viewparsings xiaoshou mr25">
<i className="iconfont icon-bianji2 font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i>
<span>编辑</span>
</p>
</a>
}
{
items.public === false ?
items.item_type === "PROGRAM" ?
items.program_attr.status === 0 ?
""
:
items.apply === false ?
<p className="viewparsings xiaoshou mr25" onClick={() => this.props.showmodels(items.id)}>
<i className="iconfont icon-gongkai font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i>
<span>公开</span>
</p> </p>
: <p
"" className="ml30 listjihetixing">题型<span>{items.item_type === "SINGLE" ? "单选题" : items.item_type === "MULTIPLE" ? "多选题" : items.item_type === "JUDGMENT" ? "判断题" : items.item_type === "PROGRAM" ? "编程题" : ""}</span>
: items.apply === false ? </p>
<p className="viewparsings xiaoshou mr25" onClick={() => this.props.showmodels(items.id)}> </div>
<i className="iconfont icon-gongkai font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i> {/*更新时间*/}
<span>公开</span> <div className="w100s sortinxdirection">
</p> <div className="w50s listjihetixingstit sortinxdirection">
: <p className="updatetimes lh30">更新时间{items.update_time}</p>
"" {
: this.props.defaultActiveKey === "0" || this.props.defaultActiveKey === 0 ?
"" ""
} :
<p className="updatetimes lh30 ml45">创建者{items.author.name}</p>
</div> }
: "" {
} items.item_type === "PROGRAM" ?
{ <p className="updatetimes lh30 ml45">编程语言{items.program_attr.language}</p>
items.item_type === "PROGRAM" ? : ""
"" }
: {
<p className="viewparsings xiaoshou mr25" onClick={() => this.props.chakanjiexibool(keindex)}> items.item_type === "PROGRAM" ?
<i className="iconfont icon-jiexi font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i> <p className="updatetimes lh30 ml45">编程语言{items.program_attr.language}</p>
: ""
}
{
items.item_type === "PROGRAM" ?
items.program_attr.status === 0 ?
<p className="updatetimes lh30 ml45 nofabu mt5">未发布</p>
: ""
: ""
}
</div>
<div className="w50s xaxisreverseorder">
{
items.choosed === true ?
<p className="selectionss xiaoshou" onClick={() => this.Selectingpracticaltrainings(items.id)}>
<i className="iconfont icon-jianhao font-12 lg ml7 lh30 icontianjiadaohangcolor mr5"></i>
<span className="mr15 lh30">撤销</span></p>
:
items.item_type === "PROGRAM" ?
items.program_attr.status === 0 ?
<p className="selectionys jinzhixiaoshou" >
<i className="iconfont icon-tianjiadaohang font-12 lg ml7 lh30 icontianjiadaohangcolor mr5"></i>
<span className="mr15 lh30">选用</span>
</p>
:
<p className="selection xiaoshou" onClick={() => this.Selectingpracticaltraining(items.id)}>
<i className="iconfont icon-tianjiadaohang font-12 lg ml7 lh30 icontianjiadaohangcolor mr5"></i>
<span className="mr15 lh30">选用</span>
</p>
:
<p className="selection xiaoshou" onClick={() => this.Selectingpracticaltraining(items.id)}>
<i className="iconfont icon-tianjiadaohang font-12 lg ml7 lh30 icontianjiadaohangcolor mr5"></i>
<span className="mr15 lh30">选用</span>
</p>
}
{
defaultActiveKey === 0 || defaultActiveKey === "0" ?
<div className="xaxisreverseorder">
<p className="viewparsings xiaoshou mr25" onClick={() => this.props.showmodelysl(items.id)}>
<i className="iconfont icon-shanchu1 font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i>
<span>删除</span>
</p>
{
items.item_type === "PROGRAM" ?
this.props.Isitapopup && this.props.Isitapopup === "true" ?
""
:
<a href={`/problems/${items.program_attr.identifier}/edit`}>
<p className="viewparsings xiaoshou mr25">
<i className="iconfont icon-bianji2 font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i>
<span>编辑</span>
</p>
</a>
:
this.props.Isitapopup && this.props.Isitapopup === "true" ?
""
:
<a href={`/question/edit/${items.id}`}>
<p className="viewparsings xiaoshou mr25">
<i className="iconfont icon-bianji2 font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i>
<span>编辑</span>
</p>
</a>
}
{
items.public === false ?
items.item_type === "PROGRAM" ?
items.program_attr.status === 0 ?
""
:
<p className="viewparsings xiaoshou mr25" onClick={() => this.props.showmodels(items.id)}>
<i className="iconfont icon-gongkai font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i>
<span>公开</span>
</p>
:
<p className="viewparsings xiaoshou mr25" onClick={() => this.props.showmodels(items.id)}>
<i className="iconfont icon-gongkai font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i>
<span>公开</span>
</p>
:
""
}
</div>
: ""
}
{
items.item_type === "PROGRAM" ?
""
:
<p className="viewparsings xiaoshou mr25" onClick={() => this.props.chakanjiexibool(keindex)}>
<i className="iconfont icon-jiexi font-17 lg ml7 lh30 icontianjiadaohangcolors mr5"></i>
查看解析</p> 查看解析</p>
} }
</div> </div>
</div> </div>
{ {
chakanjiexiboolindex === keindex ? <div> chakanjiexiboolindex === keindex ? <div>
<div className="w100s questiontypeheng mt23"> <div className="w100s questiontypeheng mt23">
</div> </div>
<<<<<<< HEAD <div className=" sortinxdirection mt15 yldxtit" >
<div className=" sortinxdirection mt15 yldxtit">
{
{ items.item_type === "SINGLE" || items.item_type === "MULTIPLE" ?
items.item_type === "SINGLE" ? <p className=" testfondex yldxtit"
<p className=" testfondex yldxtit" style={{ wordBreak: "break-word" }} dangerouslySetInnerHTML={{ __html: markdownToHTML("答案:" + tagArrays[rightkey]).replace(/▁/g, "▁▁▁") }}
style={{ wordBreak: "break-word" }} >
dangerouslySetInnerHTML={{ __html: markdownToHTML("答案:" + tagArrays[rightkey]).replace(/▁/g, "▁▁▁") }} </p>
> :
</p> <p className=" testfondex yldxtit"
: items.item_type === "MULTIPLE" ? style={{ wordBreak: "break-word" }} dangerouslySetInnerHTML={{ __html: markdownToHTML("答案:" + rightkey).replace(/▁/g, "▁▁▁") }}
<p className=" testfondex yldxtit" >
style={{ wordBreak: "break-word" }} </p>
dangerouslySetInnerHTML={{ __html: markdownToHTML("答案:" + MULTIPLEkey).replace(/▁/g, "▁▁▁") }} }
>
</div>
</p> <div className=" sortinxdirection mt15 yldxtit">
: <p className=" testfondex yldxtit programquill"
<p className=" testfondex yldxtit" style={{ wordBreak: "break-word" }}
style={{ wordBreak: "break-word" }} >
dangerouslySetInnerHTML={{ __html: markdownToHTML("答案:" + rightkey).replace(/▁/g, "▁▁▁") }} {items ?
> items.analysis === undefined || items.analysis === null || items.analysis === "" ?
</p>
======= ""
<div className=" sortinxdirection mt15 yldxtit" > :
items.analysis.length > 0 ?
{ <QuillForEditor
items.item_type==="SINGLE" || items.item_type==="MULTIPLE"? imgAttrs={{ width: '60px', height: '30px' }}
<p className=" testfondex yldxtit" readOnly={true}
style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML("答案:"+tagArrays[rightkey]).replace(/▁/g, "▁▁▁")}} value={analysisnames}
> />
</p> :
: ""
<p className=" testfondex yldxtit" :
style={{wordBreak: "break-word"}} dangerouslySetInnerHTML={{__html: markdownToHTML("答案:"+rightkey).replace(/▁/g, "▁▁▁")}} ""
> }
</p> </p>
>>>>>>> d0ddf91... 题库 </div>
} </div> : ""
}
</div>
<div className=" sortinxdirection mt15 yldxtit">
<p className=" testfondex yldxtit programquill"
style={{ wordBreak: "break-word" }}
>
{items ?
items.analysis === undefined || items.analysis === null || items.analysis === "" ?
""
:
items.analysis.length > 0 ?
<QuillForEditor
imgAttrs={{ width: '60px', height: '30px' }}
readOnly={true}
value={analysisnames}
/>
:
""
:
""
}
</p>
</div>
</div> : ""
}
</div> </div>
) )
} }
} }
export default Listjihe; export default Listjihe;

Loading…
Cancel
Save