From 7eaee92ee52e1501480adbbe8a1af9ddecc04275 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期三, 04 九月 2024 11:05:23 +0800 Subject: [PATCH] 测试完成 --- src/views/knowledge/questionbank/particulars/index.vue | 1110 ++++++++++++++++++++++++++++++++++----------------------- 1 files changed, 660 insertions(+), 450 deletions(-) diff --git a/src/views/knowledge/questionbank/particulars/index.vue b/src/views/knowledge/questionbank/particulars/index.vue index 0f60b5b..0adb83f 100644 --- a/src/views/knowledge/questionbank/particulars/index.vue +++ b/src/views/knowledge/questionbank/particulars/index.vue @@ -1,425 +1,541 @@ <template> <div> <div class="presentation-right"> - <el-card class="box-card"> - <el-form :inline="true" :model="topicobj" class="demo-form-inline"> - <div class="headline"> - 棰樼洰璁剧疆璇︽儏 - <span style="float: right; margin-right: 30px" - ><el-button type="success" @click="Saveproblem">棰勮</el-button> - </span> - <span style="float: right; margin-right: 30px" - ><el-button type="primary" @click="Saveproblem">淇� 瀛�</el-button> - </span> - </div> - <div style="margin-left: 8%"> - <el-row :gutter="10"> - <el-col :span="8"> - <el-form-item label="闂鍒嗙被"> - <el-select - v-model="topicobj.categoryid" - size="medium" - filterable - placeholder="璇烽�夋嫨鍒嗙被" - > - <el-option-group - v-for="group in classifylist" - :key="group.id" - :label="group.name" + <div class="sidecolumn"> + <div> + <el-steps finish-status="success" :active="Editprogress" simple> + <el-step> + <template slot="title"> + <span style="cursor: pointer" @click="Editprogress = 1" + >闂鍩虹淇℃伅缂栬緫</span + > + </template> + </el-step> + <el-step> + <template slot="title"> + <span style="cursor: pointer" @click="nextstep" + >闂鎸囨爣缂栬緫</span + > + </template> + </el-step> + </el-steps> + </div> + </div> + <div v-if="Editprogress == 1"> + <el-card class="box-card"> + <el-form :inline="true" :model="topicobj" class="demo-form-inline"> + <div class="headline"> + 鍩虹淇℃伅閰嶇疆 + <span style="margin-left: 30px" + ><el-button type="success" @click="topicVisible = true" + >棰勮</el-button + > + </span> + <span style="margin-left: 30px" + ><el-button type="primary" @click="Saveproblem" + >淇� 瀛�</el-button + > + </span> + </div> + <el-divider></el-divider> + + <div style="margin-left: 8%"> + <el-row :gutter="10"> + <el-col :span="8"> + <el-form-item label="闂鍒嗙被"> + <el-select + v-model="topicobj.categoryid" + size="medium" + filterable + placeholder="璇烽�夋嫨鍒嗙被" + > + <el-option-group + v-for="group in classifylist" + :key="group.id" + :label="group.name" + > + <el-option + v-for="item in group.svyLibScriptCategoryList" + :key="item.id" + :label="item.name" + :value="item.id" + > + </el-option> + </el-option-group> + </el-select> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item label="璇勪环绫诲瀷"> + <el-select + v-model="topicobj.scoretype" + placeholder="璇烽�夋嫨鍒嗙被" > <el-option - v-for="item in group.svyLibScriptCategoryList" - :key="item.id" - :label="item.name" - :value="item.id" + v-for="group in appraiselist" + :key="group.value" + :label="group.label" + :value="group.value" > </el-option> - </el-option-group> - </el-select> - </el-form-item> - </el-col> - <el-col :span="8"> - <el-form-item label="璇勪环绫诲瀷"> - <el-select - v-model="topicobj.scoretype" - placeholder="璇烽�夋嫨鍒嗙被" - > - <el-option - v-for="group in appraiselist" - :key="group.value" - :label="group.label" - :value="group.value" - > - </el-option> - </el-select> - </el-form-item> - </el-col> - <el-col :span="8" v-if="topicobj.scoretype == 1"> - <el-form-item label="棰樼洰寰楀垎"> - <el-input - v-model="topicobj.score" - placeholder="璇疯緭鍏ュ垎鏁�" - ></el-input> - </el-form-item> - </el-col> - </el-row> - - <el-row :gutter="10"> - <el-col :span="8" - ><el-form-item label="棰樼洰鏍囬"> - <el-input - v-model="topicobj.scriptTopic" - placeholder="璇疯緭鍏ユ爣棰�" - ></el-input> </el-form-item - ></el-col> - <el-col :span="8" - ><el-form-item label="鏄惁鍙敤"> - <el-select - v-model="topicobj.isavailable" - size="medium" - filterable - placeholder="璇烽�夋嫨鍒嗙被" - > - <el-option - class="topicobjaa" - v-for="item in usable" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> </el-form-item - ></el-col> - <el-col :span="8" - ><el-form-item label="璇█"> - <el-select - v-model="topicobj.language" - size="medium" - filterable - placeholder="璇烽�夋嫨鍒嗙被" - > - <el-option - class="topicobjaa" - v-for="item in languagelist" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> </el-form-item - ></el-col> - </el-row> - <el-row :gutter="10"> - <el-col :span="8" - ><el-form-item label="鏄惁蹇呭~"> - <el-select - v-model="topicobj.ismandatory" - size="medium" - filterable - placeholder="璇烽�夋嫨鍒嗙被" - > - <el-option - class="topicobjaa" - v-for="item in required" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> </el-form-item - ></el-col> - <el-col :span="8" - ><el-form-item label="棰樼洰绫诲瀷"> - <el-select - v-model="topicobj.scriptType" - @change="changefn" - size="medium" - filterable - placeholder="璇烽�夋嫨鍒嗙被" - > - <el-option - class="topicobjaa" - v-for="item in valuetype" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> - </el-select> </el-form-item - ></el-col> - <el-col :span="8" - ><el-form-item label="閫傜敤鏂瑰紡"> - <el-select - v-model="topicobj.suitway" - disabled - placeholder="璇烽�夋嫨" - > - <el-option - class="topicobjaa" - v-for="item in mode" - :key="item.value" - :label="item.label" - :value="item.value" - > - </el-option> </el-select></el-form-item - ></el-col> - </el-row> - <el-form-item label="棰樼洰鍐呭"> - <el-input - style="width: 40vw" - type="textarea" - id="scriptContent" - v-model="topicobj.scriptContent" - @focus="handleInput('scriptContent')" - placeholder="璇疯緭鍏ラ鐩唴瀹�" - ></el-input> - </el-form-item> - <el-form-item label="棰樼洰璇存槑"> - <el-input - style="width: 40vw" - type="textarea" - v-model="topicobj.scriptDesc" - placeholder="璇疯緭鍏ヨ鏄�" - ></el-input> - </el-form-item> - - <el-form-item label="棰樺共鏂囦欢" prop="sickness"> - <div style="width: 40vw"> - <el-upload - class="upload-demo" - :action="uploadImgUrl" - :headers="headers" - accept=".jpg,.png,image/*" - :on-success="handleChangetg" - > - <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button> - <div slot="tip" class="el-upload__tip"> - 鍙兘涓婁紶jpg/png绫诲瀷鏂囦欢 - </div> - </el-upload> - - <div style="margin: 20px"> - <el-image - style="width: 100px; height: 100px" - :src="topicobj.picturePath" - :preview-src-list="[...topicobj.picturePath]" - > - </el-image> - </div> - </div> - </el-form-item> - - <el-row> - <el-form-item label="鏍囩" prop="desc"> - <div class="xinz-inf"> - <el-tag - :key="tag.tagname" - type="success" - v-for="tag in dynamicTags" - closable - :disable-transitions="false" - @close="handleClosetag(tag)" - > - {{ tag.tagname }} - </el-tag> - <el-select - v-model="inputValue" - v-if="inputVisible" - @change="handleInputConfirm" - filterable - remote - allow-create - reserve-keyword - default-first-option - :remote-method="remoteMethodtag" - :loading="loading" - placeholder="璇烽�夋嫨" - > - <el-option - v-for="item in optionstag" - :key="item.tagid" - :label="item.tagname" - :value="item.tagname" - > - </el-option> - </el-select> - <el-button - v-else - class="button-new-tag" - size="small" - @click="showInput" - >+ 鏂板鏍囩</el-button - > - </div> - </el-form-item> - </el-row> - <!-- <el-row> - <el-form-item label="閫傜敤鐤剧梾" prop="region"> - <div class="xinz-inf"> - <el-tag - :key="item.icd10name" - type="warning" - v-for="item in illnesslist" - closable - :disable-transitions="false" - @close="handleCloseillness(item)" - > - {{ item.icd10name }} - </el-tag> - <el-select - v-model="inputValueillness" - v-if="inputVisibleillness" - @change="illnessConfirm" - :remote-method="remoteMethod" - filterable - remote - allow-create - default-first-option - placeholder="璇烽�夋嫨/鏌ヨ" - :loading="loading" - > - <el-option - v-for="item in optionsillness" - :key="item.icdid" - :label="item.icdname" - :value="item.icdid" - > - </el-option> - </el-select> - <el-button - v-else - class="button-new-tag" - size="small" - @click="inputVisibleillness = true" - >+ 鏂板鐤剧梾</el-button - > - </div> - </el-form-item> - </el-row> --> - <el-form-item label="閫変腑鎸囨爣锛�"> - <span style="margin-left: 30px" - ><el-tag type="success" effect="dark">{{ - topicobj.targetname ? topicobj.targetname : "鏈�夋嫨" - }}</el-tag></span - > - <span style="margin-left: 30px" - ><el-button type="success" round @click="gettargetInfo" - >+閫夋嫨鎸囨爣</el-button - ></span - > - </el-form-item> - </div> - - <div v-if="topicobj.scriptType != 3 && topicobj.scriptType != 4"> - <div class="headline"> - 閫夐」璁剧疆<span style="margin-left: 30px" - ><el-button type="primary" round @click="addoption" - >+鏂板</el-button - ></span - > - </div> - <div - class="topicxq" - v-for="item in topicobj.svyLibScriptOptions" - v-if="item.isoperation != 3" - > - <el-row :gutter="10"> - <el-col :span="11" - ><el-form-item label="閫夐」"> + </el-select> + </el-form-item> + </el-col> + <el-col :span="8" v-if="topicobj.scoretype == 1"> + <el-form-item label="棰樼洰寰楀垎"> <el-input - type="text" - placeholder="璇疯緭鍏ラ�夐」" - v-model="item.optioncontent" - show-word-limit - > - </el-input> </el-form-item + v-model="topicobj.score" + placeholder="璇疯緭鍏ュ垎鏁�" + ></el-input> + </el-form-item> + </el-col> + </el-row> + + <el-row :gutter="10"> + <el-col :span="8" + ><el-form-item label="棰樼洰鏍囬"> + <el-input + v-model="topicobj.scriptTopic" + placeholder="璇疯緭鍏ユ爣棰�" + ></el-input> </el-form-item ></el-col> - <el-col :span="11"> - <el-form-item v-if="topicobj.scoretype == 1" label="鍒嗗��"> - <el-input - type="text" - placeholder="璇疯緭鍏ラ�夐」鍒嗗��" - v-model="item.score" - show-word-limit - > - </el-input> - </el-form-item> - <el-form-item - v-else-if="topicobj.scoretype == 2" - label="ABC绛夌骇" - > - <el-radio-group v-model="item.score"> - <el-radio label="A">A</el-radio> - <el-radio label="B">B</el-radio> - <el-radio label="C">C</el-radio> + <el-col :span="8" + ><el-form-item label="鏄惁鍙敤"> + <el-radio-group v-model="topicobj.isavailable"> + <el-radio + @change="$forceUpdate()" + v-for="(item, index) in usable" + :label="item.value" + >{{ item.label }}</el-radio + > + </el-radio-group> + </el-form-item></el-col + > + <el-col :span="8"> + <el-form-item label="鏄惁蹇呭~"> + <el-radio-group v-model="topicobj.ismandatory"> + <el-radio + @change="$forceUpdate()" + v-for="(item, index) in required" + :label="item.value" + >{{ item.label }}</el-radio + > </el-radio-group> </el-form-item> - <el-form-item - v-else-if="topicobj.scoretype == 3" - label="浼樿壇绛夌骇" - > - <el-radio-group v-model="item.score"> - <el-radio label="浼�">浼�</el-radio> - <el-radio label="鑹�">鑹�</el-radio> - <el-radio label="宸�">宸�</el-radio> - </el-radio-group> - </el-form-item> - </el-col> - - <el-col :span="2" :offsset="topicobj.scoretype == 4 ? 11 : 0"> - <el-button - type="danger" - icon="el-icon-delete" - circle - @click="deletexuanx(item)" - ></el-button> </el-col> </el-row> <el-row :gutter="10"> - <el-form-item label="棰勮鎻愰啋"> - <el-radio-group v-model="item.isabnormal"> - <el-radio :label="1">鏄�</el-radio> - <el-radio :label="0">鍚�</el-radio> - </el-radio-group> + <el-col :span="8"> + <el-form-item label="璇█"> + <el-select + v-model="topicobj.language" + size="medium" + filterable + placeholder="璇烽�夋嫨鍒嗙被" + > + <el-option + class="topicobjaa" + v-for="item in languagelist" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + </el-col> + <el-col :span="8" + ><el-form-item label="棰樼洰绫诲瀷"> + <el-select + v-model="topicobj.scriptType" + @change="changefn" + size="medium" + filterable + placeholder="璇烽�夋嫨鍒嗙被" + > + <el-option + class="topicobjaa" + v-for="item in valuetype" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> </el-form-item + ></el-col> + <el-col :span="8" + ><el-form-item label="閫傜敤鏂瑰紡"> + <el-select + v-model="topicobj.suitway" + disabled + placeholder="璇烽�夋嫨" + > + <el-option + class="topicobjaa" + v-for="item in mode" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> </el-select></el-form-item + ></el-col> + </el-row> + <el-form-item label="棰樼洰鍐呭"> + <el-input + style="width: 40vw" + type="textarea" + id="scriptContent" + v-model="topicobj.scriptContent" + @focus="handleInput('scriptContent')" + placeholder="璇疯緭鍏ラ鐩唴瀹�" + ></el-input> + </el-form-item> + <!-- <el-form-item + label="" + prop="scriptContent" + v-if="topicobj.scriptType == 3" + > + <div style="display: flex; margin-bottom: 10px"> + <div class="tsgnames" @click="tsgnametos">鎻掑叆濉┖鏍囪</div> + </div> + </el-form-item> --> + <!-- <el-row> + <el-col :span="20"> + <el-form-item + label="濉┖淇℃伅" + v-if=" + topicobj.scriptType == 3 && + topicobj.svyLibScriptOptions.length + " + > + <el-card class="box-card" style="width: 200%"> + <div + v-for="item in topicobj.svyLibScriptOptions" + v-if="item.isoperation != 3" + style="margin-bottom: 10px" + > + <el-input + type="text" + placeholder="濉叆鍐呭淇℃伅" + v-model="item.aaa" + > + <el-button + slot="append" + @click="deletexuanx(item)" + type="danger" + icon="el-icon-delete" + circle + ></el-button> + <span slot="prepend">{{ + "(" + item.orderno + ")" + }}</span> + </el-input> + </div> + </el-card> + </el-form-item> + </el-col> + </el-row> --> + <el-form-item label="棰樼洰璇存槑"> + <el-input + style="width: 40vw" + type="textarea" + v-model="topicobj.scriptDesc" + placeholder="璇疯緭鍏ヨ鏄�" + ></el-input> + </el-form-item> + + <!-- <el-form-item label="閫変腑鎸囨爣锛�"> + <span style="margin-left: 30px" + ><el-tag type="success" effect="dark">{{ + topicobj.targetname ? topicobj.targetname : "鏈�夋嫨" + }}</el-tag></span + > + <span style="margin-left: 30px" + ><el-button type="success" round @click="gettargetInfo" + >+閫夋嫨鎸囨爣</el-button + ></span + > + </el-form-item> --> + </div> + <div class="headline">鍏宠仈淇℃伅閰嶇疆</div> + <el-divider></el-divider> + + <div style="margin-left: 8%"> + <el-row> + <el-form-item label="鏍囩" prop="desc"> + <div class="xinz-inf"> + <el-tag + :key="tag.tagname" + type="success" + v-for="tag in dynamicTags" + closable + :disable-transitions="false" + @close="handleClosetag(tag)" + > + {{ tag.tagname }} + </el-tag> + <el-select + v-model="inputValue" + v-if="inputVisible" + @change="handleInputConfirm" + filterable + remote + allow-create + reserve-keyword + default-first-option + :remote-method="remoteMethodtag" + :loading="loading" + placeholder="璇烽�夋嫨" + > + <el-option + v-for="item in optionstag" + :key="item.tagid" + :label="item.tagname" + :value="item.tagname" + > + </el-option> + </el-select> + <el-button + v-else + class="button-new-tag" + size="small" + @click="showInput" + >+ 鏂板鏍囩</el-button + > + </div> </el-form-item> </el-row> - <el-row :gutter="10"> - <el-form-item label="閫変腑鎻愮ず"> - <el-input - style="width: 40vw" - type="textarea" - autosize - placeholder="璇疯緭鍏ュ唴瀹�" - v-model="item.prompt" - > - </el-input - ></el-form-item> - </el-row> - <el-form-item label="閫夐」鏂囦欢" prop="sickness"> + + <el-form-item label="棰樺共鏂囦欢" prop="sickness"> <div style="width: 40vw"> <el-upload class="upload-demo" :action="uploadImgUrl" :headers="headers" accept=".jpg,.png,image/*" - :on-success="handleChange.bind(this, item)" + :on-success="handleChangetg" > <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button> + <div slot="tip" class="el-upload__tip"> + 鍙兘涓婁紶jpg/png绫诲瀷鏂囦欢 + </div> </el-upload> + <div style="margin: 20px"> <el-image style="width: 100px; height: 100px" - :src="item.picturePath" - :preview-src-list="[...item.picturePath]" + :src="topicobj.picturePath" + :preview-src-list="[...topicobj.picturePath]" > </el-image> </div> </div> </el-form-item> </div> - </div> - </el-form> - </el-card> + </el-form> + </el-card> + </div> + <div v-if="Editprogress == 2"> + <el-card class="box-card"> + <el-form :inline="true" :model="topicobj" class="demo-form-inline"> + <div class="headline"> + 鎸囨爣璁剧疆璇︽儏 + <span v-if="topicobj.targetname" style="margin-left: 30px" + ><el-button type="success" @click="topicVisible = true" + >棰勮</el-button + ></span + > + <span style="margin-left: 30px" + ><el-button type="primary" round @click="gettargetInfo">{{ + topicobj.targetname ? "淇敼鎸囨爣" : "+閫夋嫨鎸囨爣" + }}</el-button></span + > + <span style="margin-left: 30px" + ><el-button type="primary" @click="Saveproblem" + >淇� 瀛�</el-button + > + </span> + </div> + <el-divider></el-divider> + <el-form ref="form"> + <el-row> + <el-col :span="10"> + <el-form-item label="鎸囨爣鍚嶇О" prop="deptId"> + <el-input + disabled + v-model="topicobj.targetname" + placeholder="璇疯緭鍏ユ寚鏍囧悕绉�" + maxlength="20" + /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鎸囨爣鎻忚堪" prop="deptId"> + <el-input + disabled + v-model="topicobj.targetdesc" + placeholder="璇疯緭鍏ユ寚鏍囨弿杩�" + maxlength="60" + /> + </el-form-item> + </el-col> + </el-row> + + <el-row> + <el-col :span="10"> + <el-form-item label="鍊肩被鍨�"> + <el-radio-group + :disabled="true" + v-model="topicobj.valueType" + > + <el-radio :label="1">閫夐」</el-radio> + <el-radio :label="2">鏂囨湰</el-radio> + <el-radio :label="3">鏁板��</el-radio> + </el-radio-group> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="棰樼洰绫诲瀷"> + <el-radio-group + :disabled="true" + v-model="topicobj.scriptType" + > + <el-radio :label="'1'">鍗曢��</el-radio> + <el-radio :label="'2'">澶氶��</el-radio> + <el-radio :label="'4'">闂瓟</el-radio> + </el-radio-group> + </el-form-item> + </el-col> + </el-row> + </el-form> + <div> + <el-divider></el-divider> + <div v-if="topicobj.scriptType != 4"> + <div class="headline"> + 閫夐」璁剧疆<span style="margin-left: 30px" + ><el-button type="primary" round @click="addoption" + >+鏂板</el-button + ></span + > + </div> + <div + class="topicxq" + v-for="item in topicobj.svyLibScriptOptions" + v-if="item.isoperation != 3" + > + <el-row :gutter="10"> + <el-col :span="11" + ><el-form-item label="閫夐」鍚嶇О"> + <el-input + type="text" + placeholder="璇疯緭鍏ラ�夐」鍒嗗��" + v-model="item.optioncontent" + show-word-limit + > + </el-input> </el-form-item + ></el-col> + <el-col :span="11"> + <el-form-item v-if="topicobj.scoretype == 1" label="鍒嗗��"> + <el-input + type="text" + placeholder="璇疯緭鍏ラ�夐」鍒嗗��" + v-model="item.score" + show-word-limit + > + </el-input> + </el-form-item> + <el-form-item + v-else-if="topicobj.scoretype == 2" + label="ABC绛夌骇" + > + <el-radio-group v-model="item.score"> + <el-radio label="A">A</el-radio> + <el-radio label="B">B</el-radio> + <el-radio label="C">C</el-radio> + </el-radio-group> + </el-form-item> + <el-form-item + v-else-if="topicobj.scoretype == 3" + label="浼樿壇绛夌骇" + > + <el-radio-group v-model="item.score"> + <el-radio label="浼�">浼�</el-radio> + <el-radio label="鑹�">鑹�</el-radio> + <el-radio label="宸�">宸�</el-radio> + </el-radio-group> + </el-form-item> + </el-col> + + <el-col + :span="2" + :offsset="topicobj.scoretype == 4 ? 11 : 0" + > + <el-button + type="danger" + icon="el-icon-delete" + circle + @click="deletexuanx(item)" + ></el-button> + </el-col> + </el-row> + <el-row :gutter="10"> + <el-form-item label="棰勮鎻愰啋"> + <el-radio-group v-model="item.isabnormal"> + <el-radio :label="1">鏄�</el-radio> + <el-radio :label="0">鍚�</el-radio> + </el-radio-group> + </el-form-item> + </el-row> + <el-row :gutter="10"> + <el-form-item label="閫変腑鎻愮ず"> + <el-input + style="width: 40vw" + type="textarea" + autosize + placeholder="璇疯緭鍏ュ唴瀹�" + v-model="item.prompt" + > + </el-input + ></el-form-item> + </el-row> + <el-form-item label="閫夐」鏂囦欢" prop="sickness"> + <div style="width: 40vw"> + <el-upload + class="upload-demo" + :action="uploadImgUrl" + :headers="headers" + accept=".jpg,.png,image/*" + :on-success="handleChange.bind(this, item)" + > + <el-button size="small" type="primary" + >鐐瑰嚮涓婁紶</el-button + > + </el-upload> + <div style="margin: 20px"> + <el-image + style="width: 100px; height: 100px" + :src="item.picturePath" + :preview-src-list="[...item.picturePath]" + > + </el-image> + </div> + </div> + </el-form-item> + </div> + </div> + <div v-else class="topicxq"> + <el-input + type="textarea" + :rows="4" + placeholder="姝ゅ灞曠ず鏀堕泦淇℃伅" + v-model="testgovalue" + > + </el-input> + </div> + </div> + </el-form> + </el-card> + </div> </div> <el-drawer title="閫夋嫨鎸囨爣" @@ -505,11 +621,11 @@ <el-table-column label="鏄惁鍙敤" align="center" - key="isAvailable" - prop="isAvailable" + key="isavailable" + prop="isavailable" > <template slot-scope="scope"> - <dict-tag :options="usable" :value="scope.row.isAvailable" /> + <dict-tag :options="usable" :value="scope.row.isavailable" /> </template> </el-table-column> <el-table-column @@ -534,6 +650,7 @@ <el-table-column label="鎿嶄綔" align="center" + fixed="right" class-name="small-padding fixed-width" > <template slot-scope="scope"> @@ -557,6 +674,35 @@ /> </div> </el-drawer> + <el-dialog title="棰樼洰棰勮" :visible.sync="topicVisible" width="50%"> + <div class="preview-left"> + <div class="dev-text"> + <span>{{ topicobj.scriptContent }}</span> + </div> + + <div + class="dev-xx" + v-if="topicobj.scriptType != 3 && topicobj.scriptType != 4" + > + <el-radio-group v-model="topicobj.asrtext"> + <el-radio + v-for="(topicobjs, index) in topicobj.svyLibScriptOptions" + :key="topicobjs.optioncontent" + :label="topicobjs.optioncontent" + >{{ topicobjs.optioncontent }}</el-radio + > + </el-radio-group> + </div> + <div v-else> + <el-input + type="textarea" + placeholder="璇疯緭鍏ュ唴瀹�" + v-model.sync="topicobj.asrtext" + :rows="2" + /> + </div> + </div> + </el-dialog> </div> </template> @@ -598,6 +744,7 @@ total: 0, drawer: false, loading: false, + topicVisible: false, //棰勮寮规 id: [], suitwaylist: [], targetList: [], @@ -620,12 +767,14 @@ isavailable: "", scriptType: "", }, + Editprogress: 1, optionlist: [ { value: "scriptTopic", table: "scriptTopic" }, { value: "scriptTopic", table: "scriptTopic" }, { value: "scriptTopic", table: "scriptTopic" }, ], inputValueillness: "", + testgovalue: "", required: [], themelist: [], languagelist: [], @@ -692,19 +841,26 @@ // 鑾峰彇鏁版嵁 getissueinfo() { this.id = this.$route.query.id; + if (this.$route.query.categoryid) { + this.topicobj.categoryid = Number(this.$route.query.categoryid); + } + // 鍒嗙被 getissueclassify({}).then((res) => { this.classifylist = res.rows; - console.log(this.classifylist, "鍒嗙被"); }); if (!this.id) { return; } getissuelist({ id: this.id }).then((res) => { this.topicobj = res.rows[0]; + if (!this.topicobj.svyLibScriptTagList) { + this.topicobj.svyLibScriptTagList = []; + } this.dynamicTags = this.topicobj.svyLibScriptTagList.map( this.processElement ); + this.scriptTypels = this.topicobj.scriptType; this.variablelist = JSON.parse(this.topicobj.otherdata) ? JSON.parse(this.topicobj.otherdata) : this.variablelist; @@ -720,16 +876,10 @@ }); }, gettargetInfo() { - if (!this.topicobj.scriptType) { - this.$message({ - message: "璇峰厛閫夋嫨棰樼洰绫诲瀷", - type: "error", - }); - return; - } - if (this.topicobj.scriptType) { + if (!this.queryParams.scriptType) { this.queryParams.scriptType = this.topicobj.scriptType; } + this.queryParams.suitWay = 1; gettargetInfo(this.queryParams).then((res) => { this.targetList = res.rows; @@ -797,35 +947,54 @@ // 鍒ゆ柇鍒嗗�� Scorejudgment() { let scorearr = this.topicobj.svyLibScriptOptions; - let isValid = scorearr.every((score) => { - if (score.score) { - console.log(Number(score.score), this.topicobj.score, "鍒嗗��"); - if ( - Number(score.score) < 0 || - Number(score.score) > Number(this.topicobj.score) - ) { - console.log(score, "閿欒鍒嗗��"); + let isValid = scorearr.every((score, index) => { + if (this.topicobj.scriptType == 1) { + if (score.score) { + if ( + Number(score.score) < 0 || + Number(score.score) > Number(this.topicobj.score) + ) { + console.log(score, "閿欒鍒嗗��"); + this.$message({ + message: "閫夐」鍒嗗�煎繀椤诲湪0鍒�" + this.topicobj.score + "鍒嗕箣闂�", + type: "warning", + }); + return false; + } + return true; + } else { this.$message({ - message: "閫夐」鍒嗗�煎繀椤诲湪0鍒�" + this.topicobj.score + "鍒嗕箣闂�", + message: "閫夐」鍒嗗�兼湭璁剧疆", type: "warning", }); return false; } + } else if (this.topicobj.scriptType == 2) { + // 绱姞鍒嗗�� + const totalScore = scorearr.reduce((acc, score) => { + if (score.score) { + return acc + Number(score.score); + } + return acc; // 濡傛灉 score.score 涓嶅瓨鍦紝涓嶇疮鍔� + }, 0); + + // 妫�鏌ョ疮鍔犵殑鍒嗗�兼槸鍚︾瓑浜� this.topicobj.score + if (totalScore !== Number(this.topicobj.score)) { + this.$message({ + message: + "澶氶�夐閫夐」鍒嗗�兼�诲拰蹇呴』绛変簬 " + this.topicobj.score + " 鍒�", + type: "warning", + }); + return false; + } + return true; // 濡傛灉鎬诲垎姝g‘锛岃繑鍥� true + } else if (this.topicobj.scriptType == 4) { return true; - } else if (this.topicobj.scriptType == 3) { - return true; - } else { - this.$message({ - message: "閫夐」鍒嗗�兼湭璁剧疆", - type: "warning", - }); - return false; } }); if (isValid) { this.compileissue(); - // console.log("鍒颁繚瀛樹簡"); } }, Saveproblem() { @@ -837,11 +1006,15 @@ }, // 鍒ゆ柇鎸囨爣 changefn(item) { - if (this.topicobj.targetname) { + console.log(item); + if (this.topicobj.targetname || this.topicobj.svyLibScriptOptions[0]) { this.$modal .confirm("鏇存敼绫诲瀷鍚庨�夐」灏嗘竻绌烘槸鍚︾户缁紵") .then(() => { this.scriptTypels = this.topicobj.scriptType; + this.topicobj.svyLibScriptOptions.forEach((item) => { + item.isoperation = 3; + }); }) .catch(() => { this.topicobj.scriptType = this.scriptTypels; @@ -855,6 +1028,8 @@ this.topicobj.svyLibScriptOptions, row ); + console.log(this.topicobj.svyLibScriptOptions); + if (this.topicobj.svyLibScriptOptions[index].id) { this.topicobj.svyLibScriptOptions[index].isoperation = 3; } else { @@ -881,11 +1056,10 @@ console.log(row); this.topicobj.scriptTopic = row.targetname; this.topicobj.valueType = row.valueType; + this.topicobj.scriptType = row.scriptType; this.topicobj.scriptContent = row.targetdesc; this.topicobj.targetid = row.id; this.topicobj.targetname = row.targetname; - this.topicobj.isavailable = "0"; - this.topicobj.language = "鏅�氳瘽"; this.topicobj.svyLibScriptOptions = []; const labellist = row.targetoptionList; labellist.forEach((item) => { @@ -907,12 +1081,10 @@ tagcategoryid: "0", }; listtag(tagqueryParams).then((response) => { - console.log(response, "寰呴�夋爣绛�"); this.optionstag = response.rows; }); }, handleClosetag(tag) { - console.log(tag); console.log(this.dynamicTags.indexOf(tag)); const lindex = this.dynamicTags.indexOf(tag); this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1); @@ -1022,21 +1194,18 @@ }; this.gettargetInfo(); }, - // 渚挎嵎鏍囩 - tsgnameto(row) { + + // 渚挎嵎鏍囩鎻掑叆濉┖ + tsgnametos(row) { let inputValueArr = ""; + let value = this.topicobj.svyLibScriptOptions.length + 1; + let el = document.querySelector("#" + this.currentInputId); //el.selectionStart; 杩欏氨鏄綋鍓嶅厜鏍囨墍鍦ㄧ殑浣嶇疆锛堝瓧绗︿覆涓瓧绗︾殑index锛� if (this.currentInputId == "scriptContent") { + console.log(1); inputValueArr = this.topicobj.scriptContent.split(""); - } else if (this.currentInputId == "nomatchtext") { - inputValueArr = this.topicobj.nomatchtext.split(""); - } else if (this.currentInputId == "sliencetext") { - inputValueArr = this.topicobj.sliencetext.split(""); - } else if (this.currentInputId == "noclearlytext") { - inputValueArr = this.topicobj.noclearlytext.split(""); - } else if (this.currentInputId == "submoduletext") { - inputValueArr = this.topicobj.submoduletext.split(""); + console.log(2); } else { return; } @@ -1045,20 +1214,22 @@ // 鎷垮埌閫変腑鏂囧瓧鐨勯暱搴︼紙鍚庣画鍙互鐢ㄦ潵鏇挎崲閫変腑鐨勬枃瀛楋級 let selectLength = el.selectionEnd - el.selectionStart; // 灏嗚鎻掑叆/鏇挎崲鐨勬枃瀛楁彃鍏�/鏇挎崲锛坴alue.name鏄鎻掑叆/鏇挎崲鐨勫瓧绗︿覆锛� - inputValueArr.splice(el.selectionStart, selectLength, `${row.variate}`); + inputValueArr.splice( + el.selectionStart, + selectLength, + "__" + value + "__" + ); + this.topicobj.svyLibScriptOptions.push({ + orderno: value, + optiondesc: "", + isoperation: 1, + }); // 鎶婃暟缁勯噸鏂拌浆鎹负瀛楃涓插苟璧嬪�� inputValueArr = inputValueArr.join(""); + console.log(inputValueArr); if (this.currentInputId == "scriptContent") { this.topicobj.scriptContent = inputValueArr; - } else if (this.currentInputId == "nomatchtext") { - this.topicobj.nomatchtext = inputValueArr; - } else if (this.currentInputId == "sliencetext") { - this.topicobj.sliencetext = inputValueArr; - } else if (this.currentInputId == "noclearlytext") { - this.topicobj.noclearlytext = inputValueArr; - } else if (this.currentInputId == "submoduletext") { - this.topicobj.submoduletext = inputValueArr; } else { return; } @@ -1152,6 +1323,21 @@ this.$message.error("鍥剧墖鎻掑叆澶辫触"); } }, + // 涓嬩竴姝� + nextstep() { + if (this.Editprogress <= 1) { + // if (this.indexform.targetid) { + return this.Editprogress++; + // } else { + // this.$message.warning("璇峰厛閫夋嫨鍏宠仈鎸囨爣"); + // } + } else { + } + }, + // 涓婁竴姝� + laststep() { + this.Editprogress = this.Editprogress - 1; + }, }, }; </script> @@ -1162,20 +1348,14 @@ padding: 0 20px; font-size: 18px; overflow: auto; - .headline { - font-size: 20px; - border-left: 3px solid #41a1be; - padding-left: 5px; - margin: 15px 0; - } + .topicxq { width: 72%; background-color: #e2f5fc; border-radius: 4px; margin-top: 15px; margin-left: 10%; - padding-left: 20px; - padding-top: 15px; + padding: 20px; border: 1px solid #dcdfe6; -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04); @@ -1205,6 +1385,21 @@ } } } +.sidecolumn { + margin-bottom: 10px; + padding: 15px; + background: #edf1f7; + border: 1px solid #dcdfe6; + -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), + 0 0 6px 0 rgba(0, 0, 0, 0.04); +} +.headline { + display: flex; + font-size: 20px; + border-left: 4px solid #41a1be; + padding-left: 5px; + margin: 15px 0; +} .tsgname { width: 90px; margin-right: 10px; @@ -1220,6 +1415,21 @@ .tsgname:hover { background: #3366f5; } +.tsgnames { + width: 120px; + margin-right: 10px; + text-align: center; + cursor: pointer; + height: 40px; + line-height: 40px; + background: #66c18c; + color: #ffff; + font-size: 18px; + border-radius: 5px; +} +.tsgnames:hover { + background: #20894d; +} .preview-left { margin: 20px; // margin: 20px; -- Gitblit v1.9.3