From 4dc66a6c347a4483e72892ed4195e597b9d43f8f Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期一, 29 四月 2024 15:02:28 +0800
Subject: [PATCH] 测试完成
---
src/views/repositoryai/verbaltrick/particulars/index.vue | 1204 ++++++++++++++++++++++++++++++---------------------------
1 files changed, 635 insertions(+), 569 deletions(-)
diff --git a/src/views/repositoryai/verbaltrick/particulars/index.vue b/src/views/repositoryai/verbaltrick/particulars/index.vue
index 6c50e91..8e0978c 100644
--- a/src/views/repositoryai/verbaltrick/particulars/index.vue
+++ b/src/views/repositoryai/verbaltrick/particulars/index.vue
@@ -2,10 +2,22 @@
<div class="Questionnairemanagement">
<!-- 宸︿晶鏍� -->
<div class="sidecolumn">
- <div style="height: 300px">
- <el-steps direction="vertical" :active="Editprogress">
- <el-step title="闂搴撶紪杈�"></el-step>
- <el-step title="闂鎸囨爣缂栬緫"></el-step>
+ <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>
@@ -39,9 +51,12 @@
</el-col>
<el-col :span="12">
<el-form-item label="鍙敤鐘舵��" prop="status">
- <el-select v-model="indexform.status" placeholder="璇烽�夋嫨鐘舵��">
+ <el-select
+ v-model="indexform.isAvailable"
+ placeholder="璇烽�夋嫨鐘舵��"
+ >
<el-option
- v-for="item in qyoptions"
+ v-for="item in usable"
:key="item.value"
:label="item.label"
:value="item.value"
@@ -51,23 +66,185 @@
</el-form-item>
</el-col>
</el-row>
+
<el-row :gutter="20">
<el-col :span="12">
- <el-form-item label="闂涓绘棬" prop="nickName">
+ <el-form-item label="闂鍒嗙被" prop="status">
+ <el-select
+ v-model="indexform.assortid"
+ filterable
+ placeholder="璇烽�夋嫨鍒嗙被"
+ >
+ <el-option-group
+ v-for="group in questionclass"
+ :key="group.id"
+ :label="group.indexAssortName"
+ >
+ <el-option
+ v-for="item in group.ivrLibaScriptAssortList"
+ :key="item.id"
+ :label="item.indexAssortName"
+ :value="item.id"
+ >
+ </el-option>
+ </el-option-group>
+ </el-select>
+ </el-form-item>
+ </el-col>
+
+ <el-col :span="5">
+ <el-form-item label="鐗堟湰鍙�" prop="version">
<el-input
- v-model="indexform.nickName"
+ v-model="indexform.version"
+ placeholder="璇疯緭鍏�"
+ maxlength="80"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="20">
+ <el-col :span="20">
+ <el-form-item label="闂涓绘棬" prop="questiontitle">
+ <el-input
+ v-model="indexform.questiontitle"
placeholder="璇疯緭鍏ラ棶棰樹富鏃�"
maxlength="80"
/>
</el-form-item>
</el-col>
- <el-col :span="5">
- <el-form-item label="鐗堟湰鍙�" prop="nickName">
- <el-input
- v-model="indexform.nickName"
- placeholder="璇疯緭鍏�"
- maxlength="80"
- />
+ </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
+ 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-form-item label="閫氱煡鍙橀噺" prop="name">
+ <div style="margin-bottom: 5px" v-for="item in variablelist">
+ <el-row>
+ <el-col :span="5">
+ <el-input
+ v-model="item.variatename"
+ placeholder="璇疯緭鍏ュ彉閲忓悕"
+ ></el-input>
+ </el-col>
+ <el-col :span="8" :offset="1">
+ <el-input
+ v-model="item.variate"
+ placeholder="璇疯緭鍏ュ彉閲忓唴瀹�"
+ ></el-input>
+ </el-col>
+ <el-col :span="8" :offset="1">
+ <el-button
+ type="success"
+ icon="el-icon-plus"
+ circle
+ @click="addvariable(item)"
+ ></el-button>
+ <el-button
+ v-if="!item.default"
+ type="danger"
+ icon="el-icon-delete"
+ circle
+ @click="delvariable(item)"
+ ></el-button>
+ </el-col>
+ </el-row>
+ </div>
+ </el-form-item>
+
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="浠呴檺闄㈠尯" prop="region">
+ <el-select
+ v-model="indexform.campus"
+ size="medium"
+ filterable
+ placeholder="璇烽�夋嫨"
+ >
+ <el-option
+ class="indexformaa"
+ v-for="item in courtyardlist"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="閫傜敤鏂瑰紡" prop="status">
+ <el-select
+ v-model="indexform.suitway"
+ multiple
+ placeholder="璇烽�夋嫨"
+ >
+ <el-option
+ v-for="item in mode"
+ :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="鍏宠仈鎸囨爣" prop="region">
+ <el-select
+ v-model="indexform.targetid"
+ filterable
+ remote
+ reserve-keyword
+ placeholder="璇疯緭鍏ュ叧閿瘝"
+ :remote-method="remoteMethod"
+ @change="targetchange"
+ :loading="loading"
+ >
+ <el-option
+ v-for="item in targetlist"
+ :key="item.id"
+ :label="item.targetname"
+ :value="item.id"
+ >
+ </el-option>
+ </el-select>
</el-form-item>
</el-col>
</el-row>
@@ -76,26 +253,27 @@
<div
style="display: flex; margin-left: 100px; margin-bottom: 10px"
>
- <div class="tsgname" @click="tsgnameto()">鍖婚櫌鍚嶇О</div>
- <div class="tsgname" @click="tsgnameto()">鍖婚櫌鐢佃瘽</div>
- <div class="tsgname" @click="tsgnameto()">鍖婚櫌濮撳悕</div>
- <div class="tsgname" @click="tsgnameto()">闅忚濮撳悕</div>
- <div class="tsgname" @click="tsgnameto()">闅忚鐢佃瘽</div>
- <div class="tsgname" @click="tsgnameto()">鎬у埆</div>
- <div class="tsgname" @click="tsgnameto()">骞撮緞</div>
- <div class="tsgname" @click="tsgnameto()">鍦板潃</div>
+ <div
+ v-for="item in variablelist"
+ class="tsgname"
+ @click="tsgnameto(item)"
+ >
+ {{ item.variatename }}
+ </div>
</div>
</el-col></el-row
>
<el-row>
<el-col :span="24">
- <el-form-item label="闂鏂囨湰" prop="verbaltricktext">
+ <el-form-item label="闂鏂囨湰" prop="questionText">
<el-input
+ :rows="2"
type="textarea"
- :rows="2"
+ id="questionText"
+ show-word-limit
placeholder="璇疯緭鍏ュ唴瀹�"
- v-model="indexform.userName"
- maxlength="30"
+ v-model.sync="indexform.questionText"
+ @focus="handleInput('questionText')"
/>
</el-form-item> </el-col
></el-row>
@@ -112,19 +290,22 @@
>
<el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
</el-upload>
- <!-- <el-input v-model="indexform.userName" maxlength="30" /> -->
+ <!-- <el-input v-model="indexform.userName" maxlength="66"
+ show-word-limit /> -->
</el-form-item>
</el-col></el-row
>
<el-row>
<el-col :span="24">
- <el-form-item label="鏃犲尮閰嶆枃鏈�" prop="matchtext">
+ <el-form-item label="鏃犲尮閰嶆枃鏈�" prop="noMatchText">
<el-input
type="textarea"
:rows="2"
+ id="noMatchText"
placeholder="璇疯緭鍏ュ唴瀹�"
- v-model="indexform.userName"
- maxlength="30"
+ v-model.sync="indexform.noMatchText"
+ @focus="handleInput('noMatchText')"
+ show-word-limit
/>
</el-form-item> </el-col
></el-row>
@@ -146,13 +327,15 @@
>
<el-row>
<el-col :span="24">
- <el-form-item label="鏃犲0鏂囨湰" prop="silenttext">
+ <el-form-item label="鏃犲0鏂囨湰" prop="slienceText">
<el-input
type="textarea"
:rows="2"
+ id="slienceText"
placeholder="璇疯緭鍏ュ唴瀹�"
- v-model="indexform.userName"
- maxlength="30"
+ v-model.sync="indexform.slienceText"
+ @focus="handleInput('slienceText')"
+ show-word-limit
/>
</el-form-item> </el-col
></el-row>
@@ -172,43 +355,18 @@
</el-form-item>
</el-col></el-row
>
+
<el-row>
<el-col :span="24">
- <el-form-item label="閫氱敤搴撴枃鏈�" prop="librarytext">
+ <el-form-item label="鍚笉娓呮枃鏈�" prop="noClearlyText">
<el-input
type="textarea"
+ id="noClearlyText"
:rows="2"
placeholder="璇疯緭鍏ュ唴瀹�"
- v-model="indexform.userName"
- maxlength="30"
- />
- </el-form-item> </el-col
- ></el-row>
- <el-row>
- <el-col :span="6">
- <el-form-item label="閫氱敤搴撹闊�" prop="libraryy">
- <el-upload
- class="upload-demo"
- action="https://jsonplaceholder.typicode.com/posts/"
- :on-change="handleChange"
- :file-list="fileList"
- :limit="1"
- :on-exceed="handleExceed"
- >
- <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
- </el-upload>
- </el-form-item>
- </el-col></el-row
- >
- <el-row>
- <el-col :span="24">
- <el-form-item label="鍚笉娓呮枃鏈�" prop="vaguetext">
- <el-input
- type="textarea"
- :rows="2"
- placeholder="璇疯緭鍏ュ唴瀹�"
- v-model="indexform.userName"
- maxlength="30"
+ @focus="handleInput('noClearlyText')"
+ v-model.sync="indexform.noClearlyText"
+ show-word-limit
/>
</el-form-item> </el-col
></el-row>
@@ -228,86 +386,11 @@
</el-form-item>
</el-col></el-row
>
- <el-form-item label="閫氱煡鍙橀噺" prop="name">
- <el-row v-for="item in variablelist">
- <el-col :span="4">
- <el-input v-model="item.variable"></el-input>
- </el-col>
- <el-col :span="8" :offset="1">
- <el-input v-model="item.value"></el-input>
- </el-col>
- <el-col :span="4" :offset="1">
- <el-button
- type="success"
- icon="el-icon-plus"
- circle
- @click="addvariable(item)"
- ></el-button>
- <el-button
- type="danger"
- icon="el-icon-delete"
- circle
- @click="delvariable(item)"
- ></el-button>
- </el-col>
- </el-row>
- </el-form-item>
-
- <el-row>
- <el-col :span="24">
- <el-form-item label="鎸囨爣璇存槑">
- <el-input
- v-model="indexform.remark"
- type="textarea"
- placeholder="璇疯緭鍏ュ唴瀹�"
- ></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="12">
- <el-form-item label="浠呴檺闄㈠尯" prop="region">
- <el-select
- v-model="indexform.courtyard"
- size="medium"
- filterable
- placeholder="璇烽�夋嫨"
- >
- <el-option
- class="indexformaa"
- v-for="item in options"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鍏宠仈鎸囨爣" prop="region">
- <el-select
- v-model="indexform.relevance"
- size="medium"
- filterable
- placeholder="璇烽�夋嫨鍒嗙被"
- >
- <el-option
- class="indexformaa"
- v-for="item in options"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- </el-row>
</el-form>
<div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="nextstep">纭� 瀹�</el-button>
+ <el-button type="primary" @click="nextstep">涓嬩竴姝�</el-button>
<el-button @click="closeFm">鍏� 闂�</el-button>
+ <el-button @click="Saveproblem()">淇濆瓨鏁版嵁</el-button>
</div>
</div>
<!-- 鎸囨爣璁剧疆 -->
@@ -324,243 +407,96 @@
<el-col :span="12">
<el-form-item label="鎸囨爣鍚嶇О" prop="deptId">
<el-input
- v-model="indexform.name"
- placeholder="璇疯緭鍏ユ寚鏍囩绫�"
- maxlength="40"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鐗堟湰鍙�" prop="deptId">
- <el-input
- v-model="indexform.versions"
- placeholder="璇疯緭鍏ユ寚鏍囩绫�"
+ v-model="indexform.targetname"
+ placeholder="璇疯緭鍏ユ寚鏍囧悕绉�"
maxlength="40"
/>
</el-form-item>
</el-col>
</el-row>
- <el-row>
- <el-col :span="12">
- <el-form-item label="璇█" prop="deptId">
- <el-select
- v-model="indexform.language"
- placeholder="璇烽�夋嫨璇█"
- >
- <el-option
- v-for="index in languagelist"
- :key="index.value"
- :label="index.label"
- :value="index.value"
- ></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鏄惁鍙敤" prop="deptId">
- <el-select v-model="indexform.useofstate" placeholder="璇烽�夋嫨">
- <el-option
- v-for="index in qyoptions"
- :key="index.value"
- :label="index.label"
- :value="index.value"
- ></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="24">
- <el-form-item label="鎸囨爣鎻忚堪" prop="nickName">
- <el-input
- v-model="indexform.nickName"
- placeholder="璇疯緭鍏ユ寚鏍囨弿杩�"
- maxlength="40"
- />
- </el-form-item> </el-col
- ></el-row>
- <el-form-item label="鏍囩" prop="desc">
- <div class="xinz-inf">
- <el-tag
- :key="tag"
- type="success"
- v-for="tag in dynamicTags"
- closable
- :disable-transitions="false"
- @close="handleClose(tag)"
- >
- {{ tag }}
- </el-tag>
- <el-select
- v-model="inputValue"
- v-if="inputVisible"
- @change="handleInputConfirm"
- filterable
- placeholder="璇烽�夋嫨"
- >
- <el-option
- v-for="item in optionss"
- :key="item.label"
- :label="item.label"
- :value="item.label"
- >
- </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-col :span="24">
<el-form-item label="鍊肩被鍨�">
- <el-radio-group v-model="indexform.resource">
- <el-radio label="閫夐」"></el-radio>
- <el-radio label="鏂囨湰"></el-radio>
- <el-radio label="鏁板��"></el-radio>
+ <el-radio-group v-model="indexform.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-row>
- <el-row>
- <el-col :span="24">
- <el-form-item label="閫傜敤鐤剧梾" prop="userName">
- <el-select v-model="indexform.useofstate" placeholder="璇烽�夋嫨">
- <el-option
- v-for="index in qyoptions"
- :key="index.value"
- :label="index.label"
- :value="index.value"
- ></el-option>
- </el-select>
- </el-form-item> </el-col
- ></el-row>
-
- <el-row>
- <el-col :span="24">
- <el-form-item label="閫傜敤鏂瑰紡" prop="email">
- <el-select v-model="indexform.useofstate" placeholder="璇烽�夋嫨">
- <el-option
- v-for="index in qyoptions"
- :key="index.value"
- :label="index.label"
- :value="index.value"
- ></el-option>
- </el-select>
</el-form-item>
- </el-col>
- </el-row>
- <el-card class="box-card" style="margin-bottom: 20px">
- <el-table v-loading="loading" :data="testuserList">
- <el-table-column
- label="搴忓彿"
- align="center"
- key="userid"
- prop="userid"
- width="50"
- />
- <el-table-column
- label="鎸囨爣閫夐」"
- align="center"
- key="nickName"
- prop="nickName"
- :show-overflow-tooltip="true"
- >
- <template slot-scope="scope">
- <el-input
- v-model="scope.row.nickName"
- placeholder="璇疯緭鍏ュ唴瀹�"
- ></el-input>
- </template>
- </el-table-column>
- <el-table-column
- label="瑙f瀽瑙勫垯"
- align="center"
- key="aphonenumber"
- prop="aphonenumber"
- width="460"
- :show-overflow-tooltip="true"
- >
- <template slot-scope="scope">
- <el-input
- v-model="scope.row.aphonenumber"
- placeholder="璇疯緭鍏ュ唴瀹�"
- ></el-input>
- </template>
- </el-table-column>
-
- <el-table-column
- label="鎿嶄綔"
- align="center"
- width="200"
- class-name="small-padding fixed-width"
- >
- <template slot-scope="scope">
- <el-button
- @click="addoption(scope.row)"
- type="success"
- icon="el-icon-circle-plus-outline"
- circle
- ></el-button>
- <el-button
- type="danger"
- icon="el-icon-delete"
- circle
- @click="deloption(scope.row)"
- ></el-button>
- <el-button
- @click="syioption(scope.row)"
- type="primary"
- icon="el-icon-top"
- circle
- ></el-button>
- <el-button
- @click="xiayioption(scope.row)"
- type="primary"
- icon="el-icon-bottom"
- circle
- ></el-button>
- </template>
- </el-table-column>
- </el-table>
- </el-card>
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="娴嬭瘯杈撳叆" prop="nickName">
- <el-input
- v-model="testvalue"
- placeholder="璇疯緭鍏ユ祴璇曞唴瀹�"
- maxlength="40"
- />
- </el-form-item>
- </el-col>
- <el-col :span="4">
- <el-button type="success">寮�濮嬫祴璇�</el-button>
- </el-col>
- </el-row>
- </el-form>
- <div style="margin-bottom: 10px">
- <el-input
- type="textarea"
- :rows="4"
- placeholder="姝ゅ灞曠ず璇嗗埆缁撴灉"
- v-model="testgovalue"
+ </el-col></el-row
>
- </el-input>
- </div>
+ <div v-if="indexform.valueType == 1">
+ <el-card class="box-card" style="margin-bottom: 20px">
+ <Regular
+ :TargetoptionList="indexform.ivrLibaScriptTargetoptionList"
+ @addoption="addoption"
+ @deloption="deloption"
+ @syioption="syioption"
+ @xiayioption="xiayioption"
+ />
+ </el-card>
+ <el-row :gutter="20">
+ <el-col :span="12">
+ <el-form-item label="娴嬭瘯杈撳叆" prop="targetvalue">
+ <el-input
+ v-model="testvalue"
+ placeholder="璇疯緭鍏ユ祴璇曞唴瀹�"
+ maxlength="40"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="4">
+ <el-button type="success">寮�濮嬫祴璇�</el-button>
+ </el-col>
+ </el-row>
+ <div style="margin-bottom: 20px">
+ <el-input
+ type="textarea"
+ :rows="4"
+ placeholder="姝ゅ灞曠ず璇嗗埆缁撴灉"
+ v-model="testgovalue"
+ >
+ </el-input>
+ </div>
+ </div>
+ <div style="margin-bottom: 20px" v-else>
+ <el-input
+ type="textarea"
+ :rows="4"
+ placeholder="姝ゅ灞曠ず鏀堕泦淇℃伅"
+ v-model="testgovalue"
+ >
+ </el-input>
+ </div>
+ </el-form>
+
<el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
- <el-button type="info" @click="closeFm('ruleForm')">鍏抽棴</el-button>
- <el-button @click="Saveproblem('ruleForm')">淇濆瓨鎸囨爣鏁版嵁</el-button>
+ <el-button type="info" @click="closeFm()">鍏抽棴</el-button>
+ <el-button @click="Saveproblem()">淇濆瓨鏁版嵁</el-button>
</div>
</div>
</div>
</template>
<script>
+import { listtag } from "@/api/system/label";
+import {
+ getverbaltricklist,
+ verbaltrickinfo,
+ delverbaltrickinfo,
+ compileverbaltrick,
+ getverbaltrick,
+ getbaltrickclassify,
+ gettargetInfolist,
+ gettargetInfo,
+} from "@/api/AiCentre/index";
+import Regular from "@/components/Regular"; //姝e垯缁勪欢
+import store from "@/store";
+
export default {
+ name: "Verbalproblem",
+ components: { Regular },
data() {
return {
Editprogress: 1, //缂栬緫杩涘害
@@ -568,141 +504,50 @@
radio: "false", //鍗曢�夐閫変腑
radios: [], //澶氶�夐閫変腑
radioas: "", //濉┖棰樼瓟妗�
- dynamicTags: ["鏍囩涓�", "鏍囩浜�", "鏍囩涓�"],
+ dynamicTags: [],
+ dellist: [],
inputVisible: false,
inputValue: "",
testvalue: "",
testgovalue: "",
topicobj: {},
- indexform: {},
+ indexform: {
+ ivrLibaScriptTargetoptionList: [],
+ ivrLibaScriptTagList: [],
+ },
+ mode: [],
+ questionclass: [],
+ currentInputId: "",
+ courtyardlist: [],
// 鎬绘潯鏁�
total: 1,
- ruleForm: {
- name: "",
- region: "",
- date1: "",
- date2: "",
- delivery: false,
- type: [],
- resource: "",
- desc: "",
- templatevalue: "",
- data2: "",
- },
- rules: {},
- rulesa: {},
- xjxsoptions: [
+
+ targetlist: [
{
value: "閫夐」1",
label: "鍥炬枃",
},
- {
- value: "閫夐」2",
- label: "瑙嗛",
- },
- {
- value: "閫夐」3",
- label: "闊抽",
- },
],
+ rules: {},
+ rulesa: {},
+ optionstag: [],
+
fileList: [
{
name: "food.jpeg",
url: "https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100",
},
],
- qyoptions: [
- {
- value: 1,
- label: "鍙敤",
- },
- {
- value: 2,
- label: "绂佺敤",
- },
- ],
- options: [
- {
- value: "閫夐」1",
- label: "鐤剧梾鎸囨爣",
- },
- {
- value: "閫夐」2",
- label: "鍏ラ櫌鎸囨爣",
- },
- {
- value: "閫夐」3",
- label: "鎵嬫湳鎸囨爣",
- },
- {
- value: "閫夐」4",
- label: "鎶ょ悊鎸囨爣",
- },
- ],
+ usable: [],
+ options: [],
variablelist: [
- {
- variable: "paitent",
- value: "琛ㄧず鎮h�呯殑鏍囪瘑",
- },
- ],
- testuserList: [
- {
- userid: 1,
- nickName: "璐",
- aphonenumber: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
- },
- {
- userid: 2,
- nickName: "姝e父",
- aphonenumber: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
- },
- {
- userid: 55,
- nickName: "闈炴甯�",
- aphonenumber: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
- },
- {
- userid: 4,
- nickName: "a姝e父",
- aphonenumber: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
- status: "0",
- },
+ { variatename: "濮撳悕", variate: "${name}", default: 1 },
+ { variatename: "鐢佃瘽", variate: "${phone}", default: 1 },
+ { variatename: "鐥呮儏", variate: "${illness}", default: 1 },
],
addvalue: "娣诲姞棰樼洰",
- // 棰樼洰琛ㄦ牸鏁版嵁
- userList: [
- {
- userid: "1",
- userName: "涓�鍙锋寚鏍�",
- },
- {
- userid: "2",
- userName: "浜屽彿鎸囨爣",
- },
- {
- userid: "3",
- userName: "涓夊彿鎸囨爣",
- },
- {
- userid: "4",
- userName: "鍥涘彿鎸囨爣",
- },
- ],
- languagelist: [
- {
- value: 1,
- label: "鏅�氳瘽",
- },
- {
- value: 2,
- label: "绮よ",
- },
- {
- value: 3,
- label: "鑻辫",
- },
- ], //璇█鍒楄〃
+ languagelist: [], //璇█鍒楄〃
// 鏌ヨ鍙傛暟
queryParams: {
pageNum: 1,
@@ -716,27 +561,146 @@
};
},
- created() {},
+ created() {
+ this.gettabList();
+ this.getverbaltrick();
+ this.mode = store.getters.mode;
+ this.valuetype = store.getters.valuetype;
+ this.languagelist = store.getters.languagelist;
+ this.usable = store.getters.usable;
+ this.courtyardlist = store.getters.courtyardlist;
+ },
methods: {
- submitForm(formName) {
- this.rules = this.rulesa;
- // 鎻愪氦
- this.$refs[formName].validate((valid) => {
- if (valid) {
- alert("submit!");
- } else {
- console.log("error submit!!");
- return false;
- }
+ // 鑾峰彇璇︽儏鏁版嵁
+ getverbaltrick() {
+ let id = this.$route.query.id;
+ if (id) {
+ getverbaltrick({ id: id }).then((res) => {
+ this.indexform = res.data;
+ if (this.indexform.suitway)
+ this.indexform.suitway = this.indexform.suitway.split(",");
+ this.indexform.assortid = parseInt(this.indexform.assortid);
+ this.variablelist = JSON.parse(this.indexform.otherdata).length
+ ? JSON.parse(this.indexform.otherdata)
+ : this.variablelist;
+ this.dynamicTags = this.indexform.ivrLibaScriptTagList.map(
+ this.processElement
+ );
+
+ // this.targetlist = [
+ // {
+ // id: this.indexform.targetid,
+ // targetname: this.indexform.targetname,
+ // },
+ // ];
+ });
+ }
+ gettargetInfolist({ pageSize: 100, pageNum: 1 }).then((res) => {
+ this.targetlist = res.rows;
+ });
+ // 鏍�
+ getbaltrickclassify({}).then((res) => {
+ this.questionclass = res.rows;
+ console.log(res);
});
},
+
+ // 淇濆瓨璇︾粏淇℃伅
+ Saveproblem() {
+ this.indexform.otherdata = JSON.stringify(this.variablelist);
+ if (this.indexform.suitway) {
+ this.indexform.suitway = this.indexform.suitway.join(",");
+ }
+
+ if (this.indexform.id) {
+ this.indexform.ivrLibaScriptTargetoptionList =
+ this.indexform.ivrLibaScriptTargetoptionList.map((res) => {
+ if (res.isoperation != 1) {
+ res.isoperation = 2;
+ }
+ return res;
+ });
+
+ this.indexform.isoperation = 2;
+ console.log(this.dellist);
+ this.indexform.ivrLibaScriptTargetoptionList =
+ this.indexform.ivrLibaScriptTargetoptionList.concat(this.dellist);
+ compileverbaltrick(this.indexform).then((res) => {
+ if (res.code == 200) {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.$router.go(-1);
+ } else {
+ this.$message({
+ message: "淇敼澶辫触",
+ type: "error",
+ });
+ }
+ });
+ } else {
+ this.indexform.isoperation = 1;
+
+ compileverbaltrick(this.indexform).then((res) => {
+ if (res.code == 200) {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.$router.go(-1);
+ } else {
+ this.$message({
+ message: "鏂板澶辫触",
+ type: "error",
+ });
+ }
+ });
+ }
+ },
+ remoteMethod(query) {
+ if (query !== "") {
+ this.loading = true;
+ setTimeout(() => {
+ this.loading = false;
+ gettargetInfolist({ targetname: query }).then((res) => {
+ this.targetlist = res.rows;
+ });
+ }, 200);
+ } else {
+ this.targetlist = [];
+ }
+ },
+ targetchange(res) {
+ console.log(res);
+ gettargetInfo({ id: res }).then((res) => {
+ console.log(res.rows[0]);
+ this.$modal
+ .confirm('鏄惁娣诲姞"' + res.rows[0].targetname + '"鎸囨爣鐨勯�夐」锛�')
+ .then(() => {
+ this.indexform.valueType = res.rows[0].valueType;
+ this.indexform.questiontitle = res.rows[0].targetname;
+ this.indexform.targetname = res.rows[0].targetname;
+ this.indexform.questionText = res.rows[0].targetdesc;
+ this.indexform.isAvailable = "0";
+ this.indexform.language = "鏅�氳瘽";
+ this.indexform.isenable = res.rows[0].isenable;
+ this.$forceUpdate()
+ res.rows[0].targetoptionList.forEach((item) => {
+ item.isoperation = 1;
+ this.indexform.ivrLibaScriptTargetoptionList.push(item);
+ });
+ })
+ .catch(() => {
+ this.$modal.msgSuccess("宸插彇娑�");
+ });
+ });
+ },
+
// 涓嬩竴姝�
nextstep() {
- if (this.Editprogress <= 1 && this.indexform.relevance) {
+ if (this.Editprogress <= 1) {
+ // if (this.indexform.targetid) {
return this.Editprogress++;
+ // } else {
+ // this.$message.warning("璇峰厛閫夋嫨鍏宠仈鎸囨爣");
+ // }
} else {
- this.$message.warning("璇峰厛閫夋嫨鍏宠仈鎸囨爣");
}
},
// 涓婁竴姝�
@@ -760,40 +724,7 @@
});
});
},
- // 淇濆瓨棰樼洰淇℃伅
- Saveproblem() {},
- /** 鏌ヨ棰樼洰鍒楄〃 */
- getList() {
- // this.loading = true;
- listUser().then((response) => {
- console.log(response);
- // this.userList = response.data;
- // this.total = response.total;
- // this.loading = false;
- console.log(this.userList);
- });
- // const { rows } = await listUser();
- // console.log(rows);
- // this.list = rows;
- },
- // 淇敼棰樼洰淇℃伅
- Submittopicobj() {},
- // 鏂板鍙橀噺
- addvariable() {
- this.variablelist.push({
- variable: "",
- value: "",
- });
- },
- // 鍒犻櫎鍙橀噺
- delvariable(item) {
- const index = this.variablelist.indexOf(item);
- if (index !== -1) {
- this.variablelist.splice(index, 1); // 浠庣储寮曚綅缃垹闄や竴涓厓绱�
- } else {
- console.log("鏈壘鍒拌瀵硅薄");
- }
- },
+ // 鏂囦欢----------------------
// 鎺у埗鏂囦欢
handleChange(file, fileList) {
this.fileList = fileList.slice(-3);
@@ -807,102 +738,237 @@
);
},
// 鏍囩-----------------
- handleClose(tag) {
+ gettabList() {
+ const tagqueryParams = {
+ pageNum: 1,
+ pageSize: 1000,
+ 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);
+ this.indexform.ivrLibaScriptTagList[lindex].isoperation = 3;
},
handleInputConfirm() {
- let inputValue = this.inputValue;
- if (inputValue) {
- this.dynamicTags.push(inputValue);
+ let tagvalue = {};
+ let tagname = this.inputValue;
+ if (tagname) {
+ listtag({
+ pageNum: 1,
+ pageSize: 1000,
+ tagcategoryid: "0",
+ tagname: tagname,
+ }).then((res) => {
+ if (res.rows[0]) {
+ tagvalue = res.rows[0];
+ tagvalue.isoperation = 1;
+ } else {
+ tagvalue = {
+ tagname: tagname,
+ isoperation: 1,
+ };
+ }
+ this.indexform.ivrLibaScriptTagList.push(tagvalue);
+ this.dynamicTags.push(tagvalue);
+ });
}
this.inputVisible = false;
this.inputValue = "";
},
+ remoteMethodtag(query) {
+ if (query !== "") {
+ this.loading = true;
+ setTimeout(() => {
+ this.loading = false;
+ listtag({ tagname: query, tagcategoryid: "0" }).then((res) => {
+ this.optionstag = res.rows;
+ });
+ }, 200);
+ } else {
+ this.optionstag = [];
+ }
+ },
showInput() {
this.inputVisible = true;
- // 鑷姩鑾峰彇鐒︾偣
- // this.$nextTick((_) => {
- // this.$refs.saveTagInput.$refs.input.focus();
- // });
},
- // --------------------------
//娴嬭瘯琛ㄥ崟 --------------------------
+ gettagerlist() {
+ gettagerlist({ targetname: this.targetname }).then((response) => {
+ console.log(response);
+ this.optionstag = response.rows;
+ });
+ },
addoption() {
- this.testuserList.push({
- userid: 1,
- nickName: "璐",
- aphonenumber: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
+ this.indexform.ivrLibaScriptTargetoptionList.push({
+ guid: 1,
+ isoperation: 1,
+ targetvalue: "",
+ targetregex: "",
+ targetregex2: "",
+ dynamiccruxs: [],
+ nodynamiccruxs: [],
+ dynamiccruxsJson: "",
+ nodynamiccruxsJson: "",
});
this.sortFn();
},
- deloption() {
- const index = this.testuserList.indexOf(item);
+ deloption(item) {
+ const index = this.indexform.ivrLibaScriptTargetoptionList.indexOf(item);
if (index !== -1) {
- this.testuserList.splice(index, 1); // 浠庣储寮曚綅缃垹闄や竴涓厓绱�
+ if (item.id) {
+ console.log(item, "chunz");
+ item.isoperation = 3;
+ this.dellist.push(item);
+ }
+ console.log(this.dellist, "dellist");
+ this.indexform.ivrLibaScriptTargetoptionList.splice(index, 1); // 浠庣储寮曚綅缃垹闄や竴涓厓绱�
this.sortFn();
} else {
console.log("鏈壘鍒拌瀵硅薄");
}
},
+ getIndexInArray(arr, obj) {
+ return arr.indexOf(obj);
+ },
+ processElement(element) {
+ return { ...element, isoperation: 1 };
+ },
syioption(row) {
- const index = this.getIndexInArray(this.testuserList, row);
- const item = this.testuserList.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
- this.testuserList.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
+ const index = this.getIndexInArray(
+ this.indexform.ivrLibaScriptTargetoptionList,
+ row
+ );
+ const item = this.indexform.ivrLibaScriptTargetoptionList.splice(
+ index,
+ 1
+ )[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
+ this.indexform.ivrLibaScriptTargetoptionList.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
this.sortFn();
},
xiayioption(row) {
- const index = this.getIndexInArray(this.testuserList, row);
- const item = this.testuserList.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
- this.testuserList.splice(index + 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
+ const index = this.getIndexInArray(
+ this.indexform.ivrLibaScriptTargetoptionList,
+ row
+ );
+ const item = this.indexform.ivrLibaScriptTargetoptionList.splice(
+ index,
+ 1
+ )[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
+ this.indexform.ivrLibaScriptTargetoptionList.splice(index + 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
this.sortFn();
},
sortFn() {
- this.testuserList = this.testuserList.map((item, index) => {
- return {
- userid: index + 1,
- nickName: item.nickName,
- aphonenumber: item.aphonenumber,
- };
- });
- console.log(this.testuserList);
+ this.indexform.ivrLibaScriptTargetoptionList =
+ this.indexform.ivrLibaScriptTargetoptionList.map((item, index) => {
+ return {
+ guid: index + 1,
+ targetvalue: item.targetvalue,
+ targetregex2: item.targetregex2,
+ targetregex: item.targetregex,
+ id: item.id,
+ targettype: this.indexform.targettype,
+ isoperation: item.id ? 2 : 1,
+ categoryName: item.categoryName,
+ language: item.language,
+ dynamiccruxs: item.dynamiccruxs,
+ nodynamiccruxs: item.nodynamiccruxs,
+ dynamiccruxsJson: item.dynamiccruxsJson,
+ nodynamiccruxsJson: item.nodynamiccruxsJson,
+ };
+ });
+ console.log(this.indexform.ivrLibaScriptTargetoptionList);
},
// ---------------------
- // 鏌ヨ棰樺簱
- handleQuery() {},
- resetQuery() {},
- resetForm(formName) {
- this.$refs[formName].resetFields();
- },
// 渚挎嵎鏍囩
- tsgnameto() {},
+ tsgnameto(row) {
+ let inputValueArr = "";
+ let el = document.querySelector("#" + this.currentInputId);
+ //el.selectionStart; 杩欏氨鏄綋鍓嶅厜鏍囨墍鍦ㄧ殑浣嶇疆锛堝瓧绗︿覆涓瓧绗︾殑index锛�
+ if (this.currentInputId == "questionText") {
+ inputValueArr = this.indexform.questionText.split("");
+ } else if (this.currentInputId == "noMatchText") {
+ inputValueArr = this.indexform.noMatchText.split("");
+ } else if (this.currentInputId == "slienceText") {
+ inputValueArr = this.indexform.slienceText.split("");
+ } else if (this.currentInputId == "noClearlyText") {
+ inputValueArr = this.indexform.noClearlyText.split("");
+ } else if (this.currentInputId == "submoduletext") {
+ inputValueArr = this.indexform.submoduletext.split("");
+ } else {
+ return;
+ }
+ //灏嗚緭鍏ユ鍐呭鍒囨垚鏁扮粍锛屾柟渚垮悗缁搷浣�
+ // inputValueArr = this.inputValue.split("");
+ // 鎷垮埌閫変腑鏂囧瓧鐨勯暱搴︼紙鍚庣画鍙互鐢ㄦ潵鏇挎崲閫変腑鐨勬枃瀛楋級
+ let selectLength = el.selectionEnd - el.selectionStart;
+ // 灏嗚鎻掑叆/鏇挎崲鐨勬枃瀛楁彃鍏�/鏇挎崲锛坴alue.name鏄鎻掑叆/鏇挎崲鐨勫瓧绗︿覆锛�
+ inputValueArr.splice(el.selectionStart, selectLength, `${row.variate}`);
+ // 鎶婃暟缁勯噸鏂拌浆鎹负瀛楃涓插苟璧嬪��
+ inputValueArr = inputValueArr.join("");
+ console.log(inputValueArr);
+ if (this.currentInputId == "questionText") {
+ this.indexform.questionText = inputValueArr;
+ } else if (this.currentInputId == "noMatchText") {
+ this.indexform.noMatchText = inputValueArr;
+ } else if (this.currentInputId == "slienceText") {
+ this.indexform.slienceText = inputValueArr;
+ } else if (this.currentInputId == "noClearlyText") {
+ this.indexform.noClearlyText = inputValueArr;
+ } else if (this.currentInputId == "submoduletext") {
+ this.indexform.submoduletext = inputValueArr;
+ } else {
+ return;
+ }
+ },
+
+ // 鏂板鍙橀噺
+ addvariable() {
+ this.variablelist.push({
+ variatename: "",
+ variate: "",
+ });
+ },
+ // 鍒犻櫎鍙橀噺
+ delvariable(item) {
+ const index = this.variablelist.indexOf(item);
+ if (index !== -1) {
+ this.variablelist.splice(index, 1); // 浠庣储寮曚綅缃垹闄や竴涓厓绱�
+ } else {
+ console.log("鏈壘鍒拌瀵硅薄");
+ }
+ },
+ // 杈撳叆鑾峰彇id
+ handleInput(id) {
+ this.currentInputId = id;
+ console.log("杈撳叆妗嗙殑鍊煎凡鏇存柊:", this.currentInputId);
+ // 鍦ㄨ繖閲屾墽琛屾洿鏂版暟鎹殑閫昏緫
+ },
},
};
</script>
<style lang="scss" scoped>
.Questionnairemanagement {
- display: flex;
+ // display: flex;
}
.sidecolumn {
- width: 300px;
- min-height: 100vh;
- text-align: center;
- // display: flex;
- // margin-top: 20px;
margin: 20px;
margin-bottom: 0;
- padding: 30px;
+ padding: 20px;
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);
}
.leftvlue {
- // display: flex;
- // flex: 1;
- width: 80%;
- margin-top: 20px;
- // margin: 20px;
+ margin: 20px;
padding: 30px;
background: #ffff;
border: 1px solid #dcdfe6;
--
Gitblit v1.9.3