Browse Source

修改config文件

newStyle
douzhuo 1 year ago
parent
commit
830c147b8e
5 changed files with 149 additions and 161 deletions
  1. +124
    -0
      src/components/matchingRules/matchingRules.vue
  2. +5
    -40
      src/views/Template/labelModel.vue
  3. +5
    -40
      src/views/Template/modelTodo.vue
  4. +9
    -41
      src/views/Template/requiremining.vue
  5. +6
    -40
      src/views/Template/taboo.vue

+ 124
- 0
src/components/matchingRules/matchingRules.vue View File

@@ -0,0 +1,124 @@
<template>
<div>

<el-dialog
title="匹配规则"
:visible.sync="value"
append-to-body>
<div style="max-height: 430px;overflow: auto">
<p>
<b>匹配距离</b>:关键字匹配字数距离,主要针对near/after 生效;
</p>
<p style="padding-left: 15px">
例如:设置为10,面积 after 140</br>
命中话术:"想买一个面积在140平的"</br>
超出10个字,有关键字不命中话术参考:“房屋面积啊,你们这边有多大的,有没有140平左右的”;
</p>

<p>
<b>or(或)</b>:多个关键词,匹配上1个就行
</p>
<p style="padding-left: 15px">
例如标签:自住</br>
匹配模型:自己住 or 给自己</br>
命中话术:我们自己住/给自己买的
</p>

<p>
<b>and not(非)</b>:排除反面意思
</p>
<p style="padding-left: 15px">
例如:北京户口,</br>
匹配模型:是北京户口 and not 不是北京户口</br>
命中话术:我是北京户口;</br>
非面中话术:我不是北京户口
</p>

<p>
<b>near ( 临近)</b>:1个关键词前后一定范围出现过另一个关键词就算命中,有距离限制
</p>
<p style="padding-left: 15px">
例如标签:购房预算 140w</br>
匹配模型:预算 near 140</br>
命中话术:我的预算是140w或大概140w的购房预算
</p>

<p>
<b>after(后面)</b>:一段文本出现2个关键词,并且按照先后的顺序即算命中,有距离限制
</p>
<p style="padding-left: 15px">
例如标签:意向面积 140平</br>
匹配模型: 面积 after 140 ,140在面积后面才算生效;</br>
命中话术:想买一个面积在140平的;
</p>

<!-- <p><b>answer(挖掘话术业务)</b>:顾问执行了挖掘话术,客户回答结果,有距离限制,从客户话术文本开始</p>
<p style="padding-left: 15px">例如标签:北京户口</br>
匹配模型:(w-是 or w-有) and not (w-不是 or w-没有)</br>
命中话术:销售:你有北京户口吗?</br>
客户:有的;
</p> -->

<p>
<b>-n(自定义命中距离)</b>:near/after-n ,单个near/after的匹配距离,n大于0,小于500
</p>
<p style="padding-left: 15px">
例如 :面积 after-10 140</br>
10个字内,命中话术参考:"想买一个面积在140平的"</br>
超出10个字,有关键字不命中话术参考:“房屋面积啊,你们这边有多大的,有没有140平左右的”;
</p>

<p>
<b style="color: red;">注意</b>:-n 与 near/after/answer 之间<b style="color: red;">不能有空格</b>;
</p>

<p>
<b>挖掘话术中匹配标签</b>:是针对需求挖掘话术的回答,先选择画像标签,在设置对应的回答结果;
</p>
<p style="padding-left: 15px">
例如:</br>
挖掘话术:你想买个居室;</br>
标签一:一居 </br>
对应回答:一居or1居or1房or1房 </br>
标签二:两居 </br>
对应回答:2居or两居or2房or两房 </br>
</p>
<p>
<b style="font-weight: bold;">注</b>:优先匹配关键词可以排在前面;
</p>
</div>
</el-dialog>


</div>
</template>

<script>
export default {
data() {
return {
value: false,
};
},

props: {
// 控制显示的参数
innerVisible: {
type: Boolean,
default: false,
},
},

created () {
this.value = this.innerVisible
},

watch: {
innerVisible(newV, oldV) {
console.log(newV, oldV)
this.value = this.innerVisible
}
}
};
</script>

+ 5
- 40
src/views/Template/labelModel.vue View File

@@ -106,51 +106,13 @@
:close-on-click-modal="false"
:visible.sync="dialogVisible"
>
<el-dialog
title="匹配规则"
:visible.sync="innerVisible"
append-to-body>
<div style="max-height: 430px;overflow: auto">
<p><b>匹配距离</b>:关键字匹配字数距离,主要针对near/after/w- 生效,w- 的字数统计从挖掘话术后,客户的第一句话开始统计;</p>
<p style="padding-left: 15px">例如:设置为10,面积 after 140</br>
命中话术:"想买一个面积在140平的"</br>
超出10个字,有关键字不命中话术参考:“房屋面积啊,你们这边有多大的,有没有140平左右的”;</p>
<p><b>or(或)</b>:多个关键词,匹配上1个就行</p>
<p style="padding-left: 15px">例如标签:自住</br>
匹配模型:自己住 or 给自己</br>
命中话术:我们自己住/给自己买的</p>
<p><b>and not(非)</b>:排除反面意思</p>
<p style="padding-left: 15px">例如:北京户口,</br>
匹配模型:是北京户口 and not 不是北京户口</br>
命中话术:我是北京户口;</br>
反面话术:我不是北京户口</p>
<p><b>near ( 临近)</b>:1个关键词前后一定范围出现过另一个关键词就算命中,有距离限制</p>
<p style="padding-left: 15px">例如标签:购房预算 140w</br>
匹配模型:预算 near 140</br>
命中话术:我的预算是140w或大概140w的购房预算</p>
<p><b>after(后面)</b>:一段文本出现2个关键词,并且按照先后的顺序即算命中,有距离限制</p>
<p style="padding-left: 15px">例如标签:意向面积 140平</br>
匹配模型: 面积 after 140 ,140在面积后面才算生效;</br>
命中话术:想买一个面积在140平的;</p>
<p><b>answer(挖掘话术业务)</b>:顾问执行了挖掘话术,客户回答结果,有距离限制,从客户话术文本开始</p>
<p style="padding-left: 15px">例如标签:北京户口</br>
匹配模型:(w-是 or w-有) and not (w-不是 or w-没有)</br>
命中话术:销售:你有北京户口吗?</br>
客户:有的;</p>
<p><b>-n(命中距离)</b>:near/after-n ,单个near/after的匹配距离,n大于0,小于500</p>
<p style="padding-left: 15px">例如 :面积 after-10 140</br>
10个字内,命中话术参考:"想买一个面积在140平的"</br>
超出10个字,有关键字不命中话术参考:“房屋面积啊,你们这边有多大的,有没有140平左右的”;</p>
<p><b>注意</b>:-n 与 near/after/answer 之间<b>不能有空格</b>;</p></br>
<p><b>注意</b>:优先匹配关键词可以排在前面;</p>
</div>
</el-dialog>
<matching-rules :key="timer" :innerVisible="innerVisible"></matching-rules>
<el-form ref="form" size="mini" :inline="true" :model="form" label-position="right">
<el-form-item :label="keyType==0?'挖掘话术:':keyType==3?'违禁词:':'标签名称:'">
<div style="max-width:400px;min-width: 200px;">{{form.keywordsName}}</div>
</el-form-item>
<el-form-item label="after,near,answer 匹配距离:">
<el-input-number v-model="form.distance" controls-position="right" :min="0" :max="500"></el-input-number></el-input><span style="color:red;margin-left:10px">*请输入0~500内的整数</span> <el-button type="text" style="margin-left:30px" @click="innerVisible=true">规则说明</el-button>
<el-input-number v-model="form.distance" controls-position="right" :min="0" :max="500"></el-input-number></el-input><span style="color:red;margin-left:10px">*请输入0~500内的整数</span> <el-button type="text" style="margin-left:30px" @click="innerVisible=true;timer=new Date().getTime()">规则说明</el-button>
</el-form-item>
<div contentEditable="true"
@click="myeditorenter($event)"
@@ -199,9 +161,12 @@
</template>
<script>
import matchingRules from "@/components/matchingRules/matchingRules.vue";
export default {
components: { matchingRules },
data() {
return {
timer: 0,
dynamiclist: [],
taglist: [
{


+ 5
- 40
src/views/Template/modelTodo.vue View File

@@ -109,45 +109,8 @@
:close-on-click-modal="false"
:visible.sync="dialogVisible"
>
<el-dialog
title="匹配规则"
:visible.sync="innerVisible"
append-to-body>
<div style="max-height: 430px;overflow: auto">
<p><b>匹配距离</b>:关键字匹配字数距离,主要针对near/after/w- 生效,w- 的字数统计从挖掘话术后,客户的第一句话开始统计;</p>
<p style="padding-left: 15px">例如:设置为10,面积 after 140</br>
命中话术:"想买一个面积在140平的"</br>
超出10个字,有关键字不命中话术参考:“房屋面积啊,你们这边有多大的,有没有140平左右的”;</p>
<p><b>or(或)</b>:多个关键词,匹配上1个就行</p>
<p style="padding-left: 15px">例如标签:自住</br>
匹配模型:自己住 or 给自己</br>
命中话术:我们自己住/给自己买的</p>
<p><b>and not(非)</b>:排除反面意思</p>
<p style="padding-left: 15px">例如:北京户口,</br>
匹配模型:是北京户口 and not 不是北京户口</br>
命中话术:我是北京户口;</br>
反面话术:我不是北京户口</p>
<p><b>near ( 临近)</b>:1个关键词前后一定范围出现过另一个关键词就算命中,有距离限制</p>
<p style="padding-left: 15px">例如标签:购房预算 140w</br>
匹配模型:预算 near 140</br>
命中话术:我的预算是140w或大概140w的购房预算</p>
<p><b>after(后面)</b>:一段文本出现2个关键词,并且按照先后的顺序即算命中,有距离限制</p>
<p style="padding-left: 15px">例如标签:意向面积 140平</br>
匹配模型: 面积 after 140 ,140在面积后面才算生效;</br>
命中话术:想买一个面积在140平的;</p>
<p><b>answer(挖掘话术业务)</b>:顾问执行了挖掘话术,客户回答结果,有距离限制,从客户话术文本开始</p>
<p style="padding-left: 15px">例如标签:北京户口</br>
匹配模型:(w-是 or w-有) and not (w-不是 or w-没有)</br>
命中话术:销售:你有北京户口吗?</br>
客户:有的;</p>
<p><b>-n(命中距离)</b>:near/after-n ,单个near/after的匹配距离,n大于0,小于500</p>
<p style="padding-left: 15px">例如 :面积 after-10 140</br>
10个字内,命中话术参考:"想买一个面积在140平的"</br>
超出10个字,有关键字不命中话术参考:“房屋面积啊,你们这边有多大的,有没有140平左右的”;</p>
<p><b>注意</b>:-n 与 near/after/answer 之间<b>不能有空格</b>;</p></br>
<p><b>注意</b>:优先匹配关键词可以排在前面;</p>
</div>
</el-dialog>
<matching-rules :key="timer" :innerVisible="innerVisible"></matching-rules>

<el-form ref="form" size="mini" :inline="true" :model="form" label-position="right">
<el-form-item :label="keyType==0?'挖掘话术:':'标签名称:'">
<div style="max-width:400px;min-width: 200px;font-weight: bold">{{form.keywordsName}}</div>
@@ -157,7 +120,7 @@
<div v-else>暂无描述</div>
</el-form-item>
<el-form-item label="after,near,answer 匹配距离:">
<el-input-number v-model="form.distance" controls-position="right" :min="0" :max="500"></el-input-number><span style="color:red;margin-left:10px">*请输入0~500内的整数</span> <el-button type="text" style="margin-left:30px" @click="innerVisible=true">规则说明</el-button>
<el-input-number v-model="form.distance" controls-position="right" :min="0" :max="500"></el-input-number><span style="color:red;margin-left:10px">*请输入0~500内的整数</span> <el-button type="text" style="margin-left:30px" @click="innerVisible=true;timer=new Date().getTime()">规则说明</el-button>
</el-form-item>
<div contentEditable="true"
@click="myeditorenter($event)"
@@ -205,7 +168,9 @@
</template>

<script>
import matchingRules from "@/components/matchingRules/matchingRules.vue";
export default {
components: { matchingRules },
data() {
return {
huashu: "",


+ 9
- 41
src/views/Template/requiremining.vue View File

@@ -188,52 +188,16 @@
:close-on-click-modal="false"
:visible.sync="moxingVisible"
>
<el-dialog
title="匹配规则"
:visible.sync="innerVisible"
append-to-body>
<div style="max-height: 430px;overflow: auto">
<p><b>匹配距离</b>:关键字匹配字数距离,主要针对near/after/w- 生效,w- 的字数统计从挖掘话术后,客户的第一句话开始统计;</p>
<p style="padding-left: 15px">例如:设置为10,面积 after 140</br>
命中话术:"想买一个面积在140平的"</br>
超出10个字,有关键字不命中话术参考:“房屋面积啊,你们这边有多大的,有没有140平左右的”;</p>
<p><b>or(或)</b>:多个关键词,匹配上1个就行</p>
<p style="padding-left: 15px">例如标签:自住</br>
匹配模型:自己住 or 给自己</br>
命中话术:我们自己住/给自己买的</p>
<p><b>and not(非)</b>:排除反面意思</p>
<p style="padding-left: 15px">例如:北京户口,</br>
匹配模型:是北京户口 and not 不是北京户口</br>
命中话术:我是北京户口;</br>
反面话术:我不是北京户口</p>
<p><b>near ( 临近)</b>:1个关键词前后一定范围出现过另一个关键词就算命中,有距离限制</p>
<p style="padding-left: 15px">例如标签:购房预算 140w</br>
匹配模型:预算 near 140</br>
命中话术:我的预算是140w或大概140w的购房预算</p>
<p><b>after(后面)</b>:一段文本出现2个关键词,并且按照先后的顺序即算命中,有距离限制</p>
<p style="padding-left: 15px">例如标签:意向面积 140平</br>
匹配模型: 面积 after 140 ,140在面积后面才算生效;</br>
命中话术:想买一个面积在140平的;</p>
<p><b>w-(挖掘话术业务)</b>:顾问执行了挖掘话术,客户回答结果,有距离限制,从客户话术文本开始</p>
<p style="padding-left: 15px">例如标签:北京户口</br>
匹配模型:(w-是 or w-有) and not (w-不是 or w-没有)</br>
命中话术:销售:你有北京户口吗?</br>
客户:有的;</p>
<p><b>-n(命中距离)</b>:near/after-n ,单个near/after的匹配距离,n大于0,小于500</p>
<p style="padding-left: 15px">例如 :面积 after-10 140</br>
10个字内,命中话术参考:"想买一个面积在140平的"</br>
超出10个字,有关键字不命中话术参考:“房屋面积啊,你们这边有多大的,有没有140平左右的”;</p>
<p><b>注意</b>:-n 与 near/after/answer 之间<b>不能有空格</b>;</p></br>
<p><b>注意</b>:优先匹配关键词可以排在前面;</p>
</div>

</el-dialog>
<matching-rules :key="timer" :innerVisible="innerVisible"></matching-rules>


<el-form ref="form" size="mini" :inline="true" :model="form" label-position="right">
<el-form-item label="挖掘话术:">
<div style="max-width:400px;min-width: 200px;font-weight: bold">{{form.keywordsName}}</div>
</el-form-item>
<el-form-item label="after,near,w- 匹配距离:">
<el-input-number v-model="form.distance" controls-position="right" :min="0" :max="500"></el-input-number></el-input><span style="color:red;margin-left:10px">*请输入0~500内的整数</span> <el-button type="text" style="margin-left:30px" @click="innerVisible=true">规则说明</el-button>
<el-input-number v-model="form.distance" controls-position="right" :min="0" :max="500"></el-input-number></el-input><span style="color:red;margin-left:10px">*请输入0~500内的整数</span> <el-button type="text" style="margin-left:30px" @click="innerVisible=true;timer=new Date().getTime()">规则说明</el-button>
</el-form-item>
<div contentEditable="true"
@click="myeditorenter($event)"
@@ -276,12 +240,16 @@
<script>
import { mapGetters } from "vuex";
import draggable from 'vuedraggable'
import matchingRules from "@/components/matchingRules/matchingRules.vue";

export default {
components: {
draggable,
matchingRules,
},
data() {
return {
timer: 0,
moxingVisible: false,
innerVisible: false,
innerVisible1: false,
@@ -470,7 +438,7 @@ export default {
keywordsId: item.markid,
showFormatExpression: item.editText,//文本形式
formatExpression: this.replaceFun(item.editValue),// 问题表达式,关键词加#号
original: item.editValue // html,带span标签
originalExpression: item.editValue // html,带span标签
}
})
this.$api.api.updateKeywordsModel({


+ 6
- 40
src/views/Template/taboo.vue View File

@@ -123,45 +123,9 @@
:close-on-click-modal="false"
:visible.sync="modelVisible"
>
<el-dialog
title="匹配规则"
:visible.sync="innerVisible"
append-to-body>
<div style="max-height: 430px;overflow: auto">
<p><b>匹配距离</b>:关键字匹配字数距离,主要针对near/after/w- 生效,w- 的字数统计从挖掘话术后,客户的第一句话开始统计;</p>
<p style="padding-left: 15px">例如:设置为10,面积 after 140</br>
命中话术:"想买一个面积在140平的"</br>
超出10个字,有关键字不命中话术参考:“房屋面积啊,你们这边有多大的,有没有140平左右的”;</p>
<p><b>or(或)</b>:多个关键词,匹配上1个就行</p>
<p style="padding-left: 15px">例如标签:自住</br>
匹配模型:自己住 or 给自己</br>
命中话术:我们自己住/给自己买的</p>
<p><b>and not(非)</b>:排除反面意思</p>
<p style="padding-left: 15px">例如:北京户口,</br>
匹配模型:是北京户口 and not 不是北京户口</br>
命中话术:我是北京户口;</br>
反面话术:我不是北京户口</p>
<p><b>near ( 临近)</b>:1个关键词前后一定范围出现过另一个关键词就算命中,有距离限制</p>
<p style="padding-left: 15px">例如标签:购房预算 140w</br>
匹配模型:预算 near 140</br>
命中话术:我的预算是140w或大概140w的购房预算</p>
<p><b>after(后面)</b>:一段文本出现2个关键词,并且按照先后的顺序即算命中,有距离限制</p>
<p style="padding-left: 15px">例如标签:意向面积 140平</br>
匹配模型: 面积 after 140 ,140在面积后面才算生效;</br>
命中话术:想买一个面积在140平的;</p>
<p><b>answer(挖掘话术业务)</b>:顾问执行了挖掘话术,客户回答结果,有距离限制,从客户话术文本开始</p>
<p style="padding-left: 15px">例如标签:北京户口</br>
匹配模型:(w-是 or w-有) and not (w-不是 or w-没有)</br>
命中话术:销售:你有北京户口吗?</br>
客户:有的;</p>
<p><b>-n(命中距离)</b>:near/after-n ,单个near/after的匹配距离,n大于0,小于500</p>
<p style="padding-left: 15px">例如 :面积 after-10 140</br>
10个字内,命中话术参考:"想买一个面积在140平的"</br>
超出10个字,有关键字不命中话术参考:“房屋面积啊,你们这边有多大的,有没有140平左右的”;</p>
<p><b>注意</b>:-n 与 near/after/answer 之间<b>不能有空格</b>;</p></br>
<p><b>注意</b>:优先匹配关键词可以排在前面;</p>
</div>
</el-dialog>
<matching-rules :key="timer" :innerVisible="innerVisible"></matching-rules>


<el-form ref="form" size="mini" :inline="true" :model="form" label-position="right">
<el-form-item label="敏感词:">
<div style="max-width:400px;min-width: 200px;font-weight: bold">{{form.keywordsName||''}}</div>
@@ -173,7 +137,7 @@
<el-form-item label="after,near,answer 匹配距离:">
<el-input-number v-model="form.distance" controls-position="right" :min="0" :max="500"></el-input-number>
<span style="color:red;margin-left:10px">*请输入0~500内的整数</span>
<el-button type="text" style="margin-left:30px" @click="innerVisible=true">规则说明</el-button>
<el-button type="text" style="margin-left:30px" @click="innerVisible=true;timer=new Date().getTime()">规则说明</el-button>
</el-form-item>
<div contentEditable="true"
@click="myeditorenter($event)"
@@ -198,7 +162,9 @@
<script>
import { mapGetters } from "vuex";
import { exportMethodPost } from "@/util/util";
import matchingRules from "@/components/matchingRules/matchingRules.vue";
export default {
components: { matchingRules },
data() {
return {
dynamiclist: [],


Loading…
Cancel
Save