From 1811ac2572dc2e7116f8ba4ea537abf7d57dd61e Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 02 八月 2024 16:31:01 +0800
Subject: [PATCH] 测试完成
---
src/views/repositoryai/intention/index.vue | 292 +++++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 209 insertions(+), 83 deletions(-)
diff --git a/src/views/repositoryai/intention/index.vue b/src/views/repositoryai/intention/index.vue
index 649217f..5950bd3 100644
--- a/src/views/repositoryai/intention/index.vue
+++ b/src/views/repositoryai/intention/index.vue
@@ -71,26 +71,24 @@
>
<el-form-item label="鎸囨爣鍚嶇О" prop="userName">
<el-input
- v-model="queryParams.userName"
+ v-model="queryParams.targetname"
placeholder="璇疯緭鍏�"
clearable
style="width: 200px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
- <el-form-item label="鏍囩" prop="sickness">
- <el-select v-model="queryParams.tag" placeholder="璇烽�夋嫨">
- <el-option
- v-for="item in dynamicTags"
- :key="item.tagid"
- :label="item.tagname"
- :value="item.tagid"
- >
- </el-option>
- </el-select>
+ <el-form-item label="鏍囩鍚嶇О" prop="userName">
+ <el-input
+ v-model="queryParams.tagName"
+ placeholder="璇疯緭鍏�"
+ clearable
+ style="width: 200px"
+ @keyup.enter.native="handleQuery"
+ />
</el-form-item>
- <el-form-item label="閫傜敤鏂瑰紡" prop="shape">
- <el-select v-model="queryParams.value" placeholder="璇烽�夋嫨">
+ <el-form-item label="閫傜敤鍦烘櫙" prop="shape">
+ <el-select v-model="queryParams.suitWay" placeholder="璇烽�夋嫨">
<el-option
v-for="item in mode"
:key="item.value"
@@ -102,7 +100,7 @@
</el-form-item>
<el-form-item label="鎸囨爣绫诲瀷" prop="classify">
<el-select
- v-model="queryParams.classifyvalue"
+ v-model="queryParams.scriptType"
placeholder="璇烽�夋嫨"
>
<el-option
@@ -114,13 +112,13 @@
</el-option>
</el-select>
</el-form-item>
- <el-form-item label="鍙敤鐘舵��" prop="classify">
+ <el-form-item label="鏄惁鍙敤" prop="classify">
<el-select
- v-model="queryParams.classifyvalue"
+ v-model="queryParams.isAvailable"
placeholder="璇烽�夋嫨"
>
<el-option
- v-for="(item, index) in qyoptions"
+ v-for="(item, index) in usable"
:key="item.value"
:label="item.label"
:value="item.value"
@@ -181,25 +179,25 @@
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="50" align="center" />
- <el-table-column
+ <!-- <el-table-column
label="搴忓彿"
fixed
align="center"
key="id"
prop="id"
- />
+ /> -->
<el-table-column
- label="鍊肩被鍨�"
+ label="鎸囨爣绫诲瀷"
fixed
align="center"
- key="valueType"
- prop="valueType"
+ key="scriptType"
+ prop="scriptType"
:show-overflow-tooltip="true"
>
<template slot-scope="scope">
<dict-tag
:options="valuetypelb"
- :value="scope.row.valueType"
+ :value="scope.row.scriptType"
/>
</template>
</el-table-column>
@@ -212,7 +210,7 @@
>
</el-table-column>
- <el-table-column
+ <!-- <el-table-column
label="姝e父鍊艰寖鍥�"
align="center"
key="warndown"
@@ -222,7 +220,7 @@
<template slot-scope="scope">
<span>{{ scope.row.warnup }}~{{ scope.row.warndown }}</span>
</template>
- </el-table-column>
+ </el-table-column> -->
<el-table-column
label="鎸囨爣鎻忚堪"
align="center"
@@ -230,14 +228,14 @@
prop="targetdesc"
width="200"
/><el-table-column
- label="閫傜敤鏂瑰紡"
+ label="閫傜敤鍦烘櫙"
align="center"
- key="suitWay"
- prop="suitWay"
+ key="suitWayList"
+ prop="suitWayList"
width="120"
>
<template slot-scope="scope">
- <dict-tag :options="mode" :value="scope.row.suitWay" />
+ <dict-tag :options="mode" :value="scope.row.suitWayList" />
</template>
</el-table-column>
<el-table-column
@@ -273,10 +271,7 @@
prop="isAvailable"
>
<template slot-scope="scope">
- <dict-tag
- :options="qyoptions"
- :value="scope.row.isAvailable"
- />
+ <dict-tag :options="usable" :value="scope.row.isAvailable" />
</template>
</el-table-column>
@@ -297,7 +292,7 @@
><i class="el-icon-edit"></i>淇敼</span
></el-button
>
- <el-button
+ <!-- <el-button
size="medium"
type="text"
@click="handlemeasurement(scope.row)"
@@ -305,7 +300,7 @@
><span class="button-textcs"
><i class="el-icon-help"></i>娴嬭瘯</span
></el-button
- >
+ > -->
<el-button
size="medium"
type="text"
@@ -333,6 +328,7 @@
<el-dialog
:title="title"
:visible.sync="indexopen"
+ :close-on-click-modal="false"
width="900px"
append-to-body
>
@@ -344,10 +340,10 @@
>
<el-row v-if="!measurement">
<el-col :span="12">
- <el-form-item label="鎸囨爣鍚嶇О" prop="deptId">
+ <el-form-item label="鎸囨爣鍚嶇О" prop="targetname">
<el-input
v-model="indexform.targetname"
- placeholder="璇疯緭鍏ユ寚鏍囩绫�"
+ placeholder="璇疯緭鍏ユ寚鏍囧悕绉�"
maxlength="40"
/>
</el-form-item>
@@ -365,7 +361,7 @@
<!-- deptOptions -->
<el-row v-if="!measurement">
<el-col :span="8">
- <el-form-item label="鎸囨爣鍒嗙被">
+ <el-form-item label="鎸囨爣鍒嗙被" prop="assortid">
<el-select
v-model="indexform.assortid"
size="medium"
@@ -389,7 +385,7 @@
</el-form-item>
</el-col>
<el-col :span="8">
- <el-form-item label="璇█" prop="deptId">
+ <el-form-item label="璇█" prop="language">
<el-select
v-model="indexform.language"
placeholder="璇烽�夋嫨璇█"
@@ -425,10 +421,17 @@
<el-input
v-model="indexform.targetdesc"
placeholder="璇疯緭鍏ユ寚鏍囨弿杩�"
+ id="targetdesc"
+ @focus="currentInputId = 'targetdesc'"
maxlength="40"
/>
</el-form-item> </el-col
></el-row>
+ <el-form-item label="鎻掑叆濉┖" prop="scriptContent">
+ <div style="display: flex; margin-bottom: 10px">
+ <div class="tsgname" @click="tsgnameto">鎻掑叆濉┖</div>
+ </div>
+ </el-form-item>
<el-form-item label="鏍囩" prop="desc" v-if="!measurement">
<div class="xinz-inf">
<el-tag
@@ -478,11 +481,32 @@
</el-form-item>
</el-col></el-row
>
+ <el-row v-if="!measurement">
+ <el-col :span="24">
+ <el-form-item label="棰樼洰绫诲瀷">
+ <el-radio-group
+ @input="Changtype"
+ v-model="indexform.scriptType"
+ >
+ <el-radio :label="1">鍗曢��</el-radio>
+ <el-radio :label="2">澶氶��</el-radio>
+ <el-radio :label="3">濉┖</el-radio>
+ <el-radio :label="4">闂瓟</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col></el-row
+ >
<el-row v-if="!measurement">
<el-col :span="24">
- <el-form-item label="閫傜敤鏂瑰紡" prop="email">
- <el-select v-model="indexform.suitWay" placeholder="璇烽�夋嫨">
+ <el-form-item label="閫傜敤鍦烘櫙" prop="suitWayList">
+ <el-select
+ class="el-select1"
+ v-model="indexform.suitWayList"
+ multiple
+ @change="changeselect"
+ placeholder="璇烽�夋嫨"
+ >
<el-option
v-for="index in mode"
:key="index.value"
@@ -497,39 +521,32 @@
<el-card
class="box-card"
style="margin-bottom: 20px"
- v-if="indexform.valueType == 1"
+ v-if="indexform.scriptType == 1 || indexform.scriptType == 2"
>
<Regular
:TargetoptionList="testuserList"
:intent="false"
+ :hasValue="hasValue"
@addoption="addoption"
@deloption="deloption"
@syioption="syioption"
@xiayioption="xiayioption"
/>
</el-card>
- <div v-if="indexform.valueType == 2">
+ <div v-if="indexform.scriptType == 3">
<el-form-item label="鏀堕泦淇℃伅">
- <el-input
- type="textarea"
- :rows="2"
- placeholder="濉叆鏀堕泦淇℃伅"
- v-model="indexform.reply"
- maxlength="50"
- show-word-limit
- >
- </el-input
- ></el-form-item>
- </div>
- <div v-if="indexform.valueType == 3">
- <el-form-item label="鏀堕泦淇℃伅">
- <el-input
- type="text"
- placeholder="濉叆鏀堕泦淇℃伅"
- v-model="indexform.reply"
- >
- </el-input
- ></el-form-item>
+ <el-card class="box-card">
+ <div v-for="item in indexform.targetoptionList">
+ <span>{{ "(" + item.orderno + ")" }}</span>
+ <el-input
+ type="text"
+ placeholder="濉叆鏀堕泦淇℃伅"
+ v-model="indexform.optiondesc"
+ >
+ </el-input>
+ </div>
+ </el-card>
+ </el-form-item>
</div>
<el-row :gutter="20">
<el-col :span="12">
@@ -693,6 +710,7 @@
showSearch: true,
measurement: false,
languagelist: [],
+ usable: [],
indexid: null,
// 鎬绘潯鏁�
total: 0,
@@ -704,6 +722,8 @@
radio: "涓诲垎绫�",
testvalue: "",
testgovalue: "",
+ creatype:'',//鎸囨爣涓存椂绫诲瀷
+ hasValue: true,
classifyform: {
categoryname: "",
}, //绫诲埆琛ㄥ崟
@@ -754,7 +774,20 @@
valuetypelb: [],
// 琛ㄥ崟鏍¢獙
- rules: {},
+ rules: {
+ targetname: [
+ { required: true, message: "鎸囨爣鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ assortid: [
+ { required: true, message: "鎸囨爣鍒嗙被涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ language: [
+ { required: true, message: "鎸囨爣璇█涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ isAvailable: [
+ { required: true, message: "鎸囨爣璇█涓嶈兘涓虹┖", trigger: "blur" },
+ ],
+ },
};
},
watch: {
@@ -770,9 +803,10 @@
this.gettabList();
this.getDeptTree();
this.mode = store.getters.mode;
- this.valuetypelb = store.getters.valuetypelb;
+ this.valuetypelb = store.getters.askvaluetype;
this.languagelist = store.getters.languagelist;
- this.qyoptions = store.getters.usable;
+ this.qyoptions = store.getters.askvaluetype;
+ this.usable = store.getters.usable;
},
methods: {
/** 鏌ヨ鎸囨爣鍒楄〃 */
@@ -795,6 +829,10 @@
// 杩斿洖鏁扮粍涓寚瀹氬厓绱犵殑绱㈠紩
return arr.indexOf(obj);
},
+ changeselect(row) {
+ console.log(row);
+ this.hasValue = row.includes("2");
+ },
//鍒犻櫎鍒嗙被
deletefenlei(row) {
if (this.deleteVisible) {
@@ -810,7 +848,54 @@
this.deletefenl = row.title;
}
},
+ // 渚挎嵎鏍囩
+ tsgnameto(row) {
+ let inputValueArr = "";
+ let value = indexform.targetoptionList.length + 1;
+ let el = document.querySelector("#" + this.currentInputId);
+ //el.selectionStart; 杩欏氨鏄綋鍓嶅厜鏍囨墍鍦ㄧ殑浣嶇疆锛堝瓧绗︿覆涓瓧绗︾殑index锛�
+ if (this.currentInputId == "targetdesc") {
+ inputValueArr = this.indexform.targetdesc.split("");
+ } else {
+ return;
+ }
+ //灏嗚緭鍏ユ鍐呭鍒囨垚鏁扮粍锛屾柟渚垮悗缁搷浣�
+ // inputValueArr = this.inputValue.split("");
+ // 鎷垮埌閫変腑鏂囧瓧鐨勯暱搴︼紙鍚庣画鍙互鐢ㄦ潵鏇挎崲閫変腑鐨勬枃瀛楋級
+ let selectLength = el.selectionEnd - el.selectionStart;
+ // 灏嗚鎻掑叆/鏇挎崲鐨勬枃瀛楁彃鍏�/鏇挎崲锛坴alue.name鏄鎻掑叆/鏇挎崲鐨勫瓧绗︿覆锛�
+ inputValueArr.splice(
+ el.selectionStart,
+ selectLength,
+ "__" + value + "__"
+ );
+ this.indexform.targetoptionList.push({
+ orderno: value,
+ optiondesc: "",
+ });
+ // 鎶婃暟缁勯噸鏂拌浆鎹负瀛楃涓插苟璧嬪��
+ inputValueArr = inputValueArr.join("");
+ console.log(inputValueArr);
+ if (this.currentInputId == "targetdesc") {
+ this.indexform.targetdesc = inputValueArr;
+ } else {
+ return;
+ }
+ },
+ Changtype(item) {
+ console.log(item, "閫夐」鍙樻洿鐨勫鐞�");
+ if (item==3) {
+ this.$modal
+ .confirm('鏇存敼绫诲瀷涓哄~绌哄悗閫夐」灏嗘竻绌烘槸鍚︾户缁紵')
+ .then(() => {
+
+ })
+ .catch(() => {
+
+ });
+ }
+ },
// 鐤剧梾-----------------------
illnessUpdate(row) {
this.illnessVisible = true;
@@ -897,7 +982,7 @@
console.log(this.dynamicTags.indexOf(tag));
const lindex = this.dynamicTags.indexOf(tag);
this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
- this.indexform.baseTagList[lindex].isoperation = 3;
+ this.indexform.ivrLibaTargetTagList[lindex].delFlag = 3;
},
handleInputConfirm() {
let tagvalue = {};
@@ -919,9 +1004,9 @@
};
}
console.log(tagvalue);
- this.indexform.baseTagList.push(tagvalue);
+ this.indexform.ivrLibaTargetTagList.push(tagvalue);
this.dynamicTags.push(tagvalue);
- console.log(this.indexform.baseTagList);
+ console.log(this.indexform.ivrLibaTargetTagList);
console.log(this.dynamicTags);
});
}
@@ -937,9 +1022,12 @@
guid: 1,
id: this.indexform.id,
targettype: this.indexform.targettype,
+ isoperation: 1,
+ isabnormal: 0,
targetvalue: "",
targetregex: "",
targetregex2: "",
+ picturePath: "",
dynamiccruxs: [],
nodynamiccruxs: [],
dynamiccruxsJson: "",
@@ -955,6 +1043,7 @@
if (index !== -1) {
this.testuserList[index].isoperation = 3;
this.targetoptionList.push(this.testuserList[index]);
+ console.log(this.targetoptionList, "aaaa.targetoptionList");
this.testuserList.splice(index, 1); // 浠庣储寮曚綅缃垹闄や竴涓厓绱�
this.sortFn();
} else {
@@ -982,13 +1071,16 @@
targetregex: item.targetregex,
id: this.indexform.id,
targettype: this.indexform.targettype,
- isoperation: item.id ? 2 : 1,
+ isoperation: item.targetoptionid ? 2 : 1,
categoryName: item.categoryName,
language: item.language,
dynamiccruxs: item.dynamiccruxs,
nodynamiccruxs: item.nodynamiccruxs,
dynamiccruxsJson: item.dynamiccruxsJson,
nodynamiccruxsJson: item.nodynamiccruxsJson,
+ targetoptionid: item.targetoptionid,
+ isabnormal: item.isabnormal,
+ picturePath: item.picturePath,
};
});
console.log(this.testuserList);
@@ -1090,6 +1182,7 @@
// 鍙栨秷鎸夐挳
cancel() {
+ this.indexform = null;
this.indexopen = false;
this.reset();
},
@@ -1097,13 +1190,13 @@
// 琛ㄥ崟閲嶇疆
reset() {
this.indexform = {
- suitWay: undefined,
+ suitWayList: undefined,
id: undefined,
targetdesc: undefined,
- baseTagList: [],
+ ivrLibaTargetTagList: [],
targetoptionList: [],
};
- this.resetForm("indexform");
+ // this.resetForm("indexform");
},
/** 鎼滅储鎸夐挳鎿嶄綔 */
handleQuery() {
@@ -1132,7 +1225,7 @@
this.reset();
this.title = "鏂板鎸囨爣";
this.indexform = {
- baseTagList: [],
+ ivrLibaTargetTagList: [],
targetoptionList: [],
};
this.dynamicTags = [];
@@ -1143,6 +1236,7 @@
targetregex: "",
targetregex2: "",
isoperation: 1,
+ picturePath: "",
dynamiccruxs: [],
nodynamiccruxs: [],
dynamiccruxsJson: "",
@@ -1155,9 +1249,10 @@
/** 淇敼鎸夐挳鎿嶄綔 */
handleUpdate(row) {
this.reset();
- console.log(row);
this.title = "鎸囨爣璇︽儏";
+ this.indexform = {};
this.indexform = row;
+ this.indexform.scriptType = Number(row.scriptType);
if (!row.targetoptionList[0]) {
row.targetoptionList = [
{
@@ -1173,8 +1268,9 @@
},
];
}
- this.dynamicTags = row.baseTagList.map(this.processElement);
+ this.dynamicTags = row.ivrLibaTargetTagList.map(this.processElement);
this.testuserList = row.targetoptionList;
+ console.log(this.testuserList, "bbbb");
this.testvalue = "";
this.indexopen = true;
this.measurement = false;
@@ -1194,18 +1290,30 @@
/** 鏇存柊/淇敼鎻愪氦鎸夐挳 */
submitForm: function () {
- // this.indexform.targetoptionList=[]
- this.indexform.targetoptionList = this.indexform.targetoptionList.map(
- (res) => {
- res.isoperation = 2;
- return res;
- }
- );
+ // this.indexform.targetoptionList = this.indexform.targetoptionList.map(
+ // (res) => {
+ // res.isoperation = 2;
+ // return res;
+ // }
+ // );
+
this.$refs["indexform"].validate((valid) => {
this.indexform.targetoptionList = this.testuserList.concat(
this.targetoptionList
);
+ console.log(this.indexform.targetoptionList, "11");
+ this.indexform.targetoptionList.forEach((item) => {
+ if (item.isoperation != 3 && item.targetoptionid) {
+ console.log(item, "item");
+ item.isoperation = 2;
+ } else {
+ }
+ });
if (valid) {
+ this.indexform.optionDesc = this.testuserList
+ .filter((item) => item.isoperation != 3)
+ .map((item) => item.targetvalue)
+ .join(", ");
if (!this.indexform.version) this.indexform.version = "1.0";
if (this.indexform.id != undefined) {
this.indexform.isoperation = 2;
@@ -1346,6 +1454,21 @@
display: center !important;
}
}
+.tsgname {
+ width: 90px;
+ margin-right: 10px;
+ text-align: center;
+ cursor: pointer;
+ height: 40px;
+ line-height: 40px;
+ background: #66c18c;
+ color: #ffff;
+ font-size: 18px;
+ border-radius: 5px;
+}
+.tsgname:hover {
+ background: #20894d;
+}
.qrcode-dialo {
text-align: center;
// display: flex;
@@ -1366,6 +1489,9 @@
height: 400px;
}
}
+.el-select {
+ width: 40%;
+}
::v-deep.el-tabs--left,
.el-tabs--right {
overflow: hidden;
--
Gitblit v1.9.3