| | |
| | | <div class="presentation"> |
| | | <div class="presentation-left"> |
| | | <el-card class="box-card" style="min-height: 688px"> |
| | | <el-table v-loading="loading" :data="ruleForm.svyLibScripts"> |
| | | <el-table |
| | | v-loading="loading" |
| | | :data="ruleForm.svyTemplateLibScripts" |
| | | > |
| | | <el-table-column |
| | | label="序号" |
| | | align="center" |
| | |
| | | <el-table-column |
| | | label="题目标题" |
| | | align="center" |
| | | key="topic" |
| | | prop="topic" |
| | | key="scriptTopic" |
| | | prop="scriptTopic" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | <el-table-column |
| | | label="题目内容" |
| | | align="center" |
| | | key="script" |
| | | prop="script" |
| | | key="scriptContent" |
| | | prop="scriptContent" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | |
| | |
| | | </div> |
| | | <el-form-item label="题目标题"> |
| | | <el-input |
| | | v-model="topicobj.topic" |
| | | v-model="topicobj.scriptTopic" |
| | | placeholder="请输入标题" |
| | | ></el-input> |
| | | </el-form-item> |
| | |
| | | </el-select> </el-form-item |
| | | ></el-col> |
| | | </el-row> |
| | | <div class="headline">选项设置</div> |
| | | <div |
| | | class="topicxq" |
| | | v-for="item in topicobj.svyLibTemplateTargetoptions" |
| | | > |
| | | <el-row :gutter="10"> |
| | | <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 |
| | | <div v-if="topicobj.scriptType != 3"> |
| | | <div class="headline">选项设置</div> |
| | | <div |
| | | class="topicxq" |
| | | v-for="item in topicobj.svyLibTemplateTargetoptions" |
| | | > |
| | | <el-row :gutter="10"> |
| | | <el-col :span="11"> |
| | | <el-form-item |
| | | v-if="topicobj.scoretype == 1" |
| | | label="分值" |
| | | > |
| | | </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-row> |
| | | <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 |
| | | 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-input> </el-form-item |
| | | ></el-col> |
| | | <el-col :span="11" |
| | | ><el-form-item label="下题跳转"> |
| | | <el-input |
| | | type="text" |
| | | placeholder="请输入题号" |
| | | v-model="item.nextQuestion" |
| | | show-word-limit |
| | | <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-input> </el-form-item |
| | | ></el-col> |
| | | <!-- <el-col :span="2"> |
| | | <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-input |
| | | style="width: 20vw" |
| | | type="textarea" |
| | | autosize |
| | | placeholder="请输入内容" |
| | | v-model="item.prompt" |
| | | > |
| | | </el-input |
| | | ></el-form-item> |
| | | </el-row> |
| | | <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-row> |
| | | <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 label="下题跳转"> |
| | | <el-input |
| | | type="text" |
| | | placeholder="请输入题号" |
| | | v-model="item.nextQuestion" |
| | | show-word-limit |
| | | > |
| | | </el-input> </el-form-item |
| | | ></el-col> |
| | | <!-- <el-col :span="2"> |
| | | <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-input |
| | | style="width: 20vw" |
| | | type="textarea" |
| | | autosize |
| | | placeholder="请输入内容" |
| | | v-model="item.prompt" |
| | | > |
| | | </el-input |
| | | ></el-form-item> |
| | | </el-row> |
| | | </div> |
| | | </div> |
| | | <div v-else> |
| | | <div class="topicxq"> |
| | | <el-row :gutter="10"> |
| | | <el-form-item label="选中提示"> |
| | | <el-input |
| | | style="width: 20vw" |
| | | type="textarea" |
| | | autosize |
| | | placeholder="请输入内容" |
| | | v-model="item.prompt" |
| | | > |
| | | </el-input |
| | | ></el-form-item> |
| | | </el-row> |
| | | </div> |
| | | </div> |
| | | </el-form> |
| | | </el-card> |
| | |
| | | <el-divider></el-divider> |
| | | <div class="preview-left"> |
| | | <!-- 单选 --> |
| | | <div class="topic-dev" v-for="item in valssu" :key="item.aaa"> |
| | | <div class="scriptTopic-dev" v-for="item in valssu" :key="item.aaa"> |
| | | <div class="dev-text"> |
| | | {{ item.idd }}、[单选]<span>{{ item.wssd }}</span> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | <!-- 多选 --> |
| | | <div class="topic-dev" v-for="item in valssu" :key="item.aaa"> |
| | | <div class="scriptTopic-dev" v-for="item in valssu" :key="item.aaa"> |
| | | <div class="dev-text"> |
| | | {{ item.idd }}、[多选]<span>{{ item.wssd }}</span> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | <!-- 填空 --> |
| | | <div class="topic-dev" v-for="item in valssu" :key="item.aaa"> |
| | | <div class="scriptTopic-dev" v-for="item in valssu" :key="item.aaa"> |
| | | <div class="dev-text"> |
| | | {{ item.idd }}、[填空]<span>{{ item.wssd }}</span> |
| | | </div> |
| | |
| | | :inline="true" |
| | | label-width="98px" |
| | | > |
| | | <el-form-item label="问题标题" prop="topic"> |
| | | <el-form-item label="问题标题" prop="scriptTopic"> |
| | | <el-input |
| | | v-model="queryParams.topic" |
| | | v-model="queryParams.scriptTopic" |
| | | placeholder="请输入" |
| | | clearable |
| | | style="width: 200px" |
| | |
| | | <el-table-column |
| | | label="标题" |
| | | align="center" |
| | | key="topic" |
| | | prop="topic" |
| | | key="scriptTopic" |
| | | prop="scriptTopic" |
| | | width="100" |
| | | /> |
| | | <el-table-column |
| | | label="问题内容" |
| | | align="center" |
| | | key="script" |
| | | prop="script" |
| | | key="scriptContent" |
| | | prop="scriptContent" |
| | | width="200" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | |
| | | topicobj: {}, |
| | | // 总条数 |
| | | total: 1, |
| | | ruleForm: { svyLibScripts: [], tempDetpRelevances: [] }, |
| | | ruleForm: { svyTemplateLibScripts: [], tempDetpRelevances: [] }, |
| | | rules: {}, |
| | | rulesa: {}, |
| | | optionsclass: [], //分类列表 |
| | | optionlist: [ |
| | | { value: "topic", table: "topic" }, |
| | | { value: "topic", table: "topic" }, |
| | | { value: "scriptTopic", table: "scriptTopic" }, |
| | | { value: "scriptTopic", table: "scriptTopic" }, |
| | | ], |
| | | |
| | | appraiselist: [ |
| | | { label: "分数", value: "1" }, |
| | | { label: "ABC等级", value: "2" }, |
| | |
| | | this.required = store.getters.required; |
| | | this.valuetype = store.getters.valuetype; |
| | | this.courtyardlist = store.getters.courtyardlist; |
| | | this.test(); |
| | | // this.test(); |
| | | }, |
| | | |
| | | methods: { |
| | |
| | | Departmenttreatment() { |
| | | this.ruleForm.deptNames = JSON.stringify(this.tempDetpRelevanceslist); |
| | | console.log(this.tempDetpRelevanceslist); |
| | | this.ruleForm.svyLibScripts = this.ruleForm.svyLibScripts.concat( |
| | | this.delScriptVOList |
| | | ); |
| | | this.ruleForm.svyTemplateLibScripts = |
| | | this.ruleForm.svyTemplateLibScripts.concat(this.delScriptVOList); |
| | | console.log(this.tempDetpRelevanceslist, "this.tempDetpRelevanceslist"); |
| | | const result = this.tempDetpRelevanceslist.map( |
| | | (subArr) => subArr[subArr.length - 1] |
| | |
| | | item.isoperation = 1; |
| | | }); |
| | | row.svyLibTemplateTargetoptions = row.svyLibScriptOptions; |
| | | this.ruleForm.svyLibScripts.push(row); |
| | | this.ruleForm.svyTemplateLibScripts.push(row); |
| | | this.sortFn(); |
| | | this.$modal.msgSuccess("新增成功"); |
| | | }, |
| | | handleDelete(row) { |
| | | let index = this.ruleForm.svyLibScripts.indexOf(row); |
| | | this.ruleForm.svyLibScripts.splice(index, 1); |
| | | let index = this.ruleForm.svyTemplateLibScripts.indexOf(row); |
| | | this.ruleForm.svyTemplateLibScripts.splice(index, 1); |
| | | row.isoperation = 3; |
| | | this.delScriptVOList.push(row); |
| | | this.sortFn(); |
| | | }, |
| | | handleUpdate(row) { |
| | | console.log(row); |
| | | this.topicobj = row; |
| | | console.log(this.topicobj, "看数据"); |
| | | // getissuelist({ svyid: row.svyid }).then((res) => { |
| | | // }); |
| | | }, |
| | | syioption(row) { |
| | | const index = this.getIndexInArray(this.ruleForm.svyLibScripts, row); |
| | | const item = this.ruleForm.svyLibScripts.splice(index, 1)[0]; // 移除指定索引处的元素,并保存到item变量中 |
| | | this.ruleForm.svyLibScripts.splice(index - 1, 0, item); // 将item插入到索引位置的前一位 |
| | | const index = this.getIndexInArray( |
| | | this.ruleForm.svyTemplateLibScripts, |
| | | row |
| | | ); |
| | | const item = this.ruleForm.svyTemplateLibScripts.splice(index, 1)[0]; // 移除指定索引处的元素,并保存到item变量中 |
| | | this.ruleForm.svyTemplateLibScripts.splice(index - 1, 0, item); // 将item插入到索引位置的前一位 |
| | | this.sortFn(); |
| | | }, |
| | | xiayioption(row) { |
| | | const index = this.getIndexInArray(this.ruleForm.svyLibScripts, row); |
| | | const item = this.ruleForm.svyLibScripts.splice(index, 1)[0]; // 移除指定索引处的元素,并保存到item变量中 |
| | | this.ruleForm.svyLibScripts.splice(index + 1, 0, item); // 将item插入到索引位置的前一位 |
| | | const index = this.getIndexInArray( |
| | | this.ruleForm.svyTemplateLibScripts, |
| | | row |
| | | ); |
| | | const item = this.ruleForm.svyTemplateLibScripts.splice(index, 1)[0]; // 移除指定索引处的元素,并保存到item变量中 |
| | | this.ruleForm.svyTemplateLibScripts.splice(index + 1, 0, item); // 将item插入到索引位置的前一位 |
| | | this.sortFn(); |
| | | }, |
| | | sortFn() { |
| | | this.ruleForm.svyLibScripts.forEach((item, index) => { |
| | | this.ruleForm.svyTemplateLibScripts.forEach((item, index) => { |
| | | item.sort = index + 1; |
| | | item.svyLibTemplateTargetoptions.forEach((items) => { |
| | | items.nextQuestion = Number(item.sort) + 1; |
| | | }); |
| | | }); |
| | | console.log(this.ruleForm.svyLibScripts); |
| | | console.log(this.ruleForm.svyTemplateLibScripts); |
| | | }, |
| | | |
| | | // 修改题目信息 |
| | |
| | | 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); |
| | | .topic-dev { |
| | | .scriptTopic-dev { |
| | | margin-bottom: 25px; |
| | | font-size: 20px !important; |
| | | .dev-text { |
| | |
| | | width: 22px; |
| | | height: 22px; |
| | | } |
| | | // ::v-deep.topic-dev.el-radio__label { |
| | | // ::v-deep.scriptTopic-dev.el-radio__label { |
| | | // font-size: 24px; |
| | | // } |
| | | ::v-deep.el-radio-group { |