Browse Source

需求挖掘功能

yun
corala 1 year ago
parent
commit
bcd3a86f18
9 changed files with 140 additions and 200 deletions
  1. +2
    -0
      config.js
  2. +1
    -1
      manifest.json
  3. +3
    -14
      pages.json
  4. +7
    -7
      pages/center/Piabodata/requireminingAnalysis.vue
  5. +15
    -69
      pages/center/consumer/consumerDetail.vue
  6. +30
    -28
      pages/center/consumer/index.vue
  7. +31
    -44
      pages/center/records/index.vue
  8. +50
    -37
      pages/mine/details2.vue
  9. +1
    -0
      utils/domain.js

+ 2
- 0
config.js View File

@@ -81,6 +81,8 @@ var config = {
notReadNum: `${host}/zkMessage/findFlagCount`,
//设备日志
eqLog: `${host}/equipment/equipmentLog`,
//添加挖掘词
addWordMining: `${host}/corpus/addWordMining`,
}
};
module.exports = config;

+ 1
- 1
manifest.json View File

@@ -93,7 +93,7 @@
"mp-weixin" : {
"appid" : "wx8f883dca5ecc5510",
"setting" : {
"urlCheck" : false,
"urlCheck" : true,
"es6" : true,
"postcss" : true,
"minified" : true


+ 3
- 14
pages.json View File

@@ -2,7 +2,6 @@
"easycom": {
"^u-(.*)": "@/uview-ui/components/u-$1/u-$1.vue"
},
//这个pages里只放这五个页面,新增页面时请对应的放到下面的分包里
"pages": [
{
"path": "pages/index/guide",
@@ -45,7 +44,6 @@
}
}
],
//这下面是分包
"subPackages": [{
"root": "pages/login", //登录相关
"name": "login",
@@ -216,7 +214,6 @@
"navigationBarBackgroundColor": "#ffffff",
"navigationBarTextStyle": "black"
}
}, {
"path": "selectBuilding",
"style": {
@@ -224,7 +221,6 @@
"navigationBarBackgroundColor": "#FFFFFF",
"navigationBarTextStyle": "black"
}
}, {
"path": "registerCode",
"style": {
@@ -240,7 +236,6 @@
"navigationBarBackgroundColor": "#2671E2",
"navigationBarTextStyle": "white"
}
},
{
"path": "registerResult",
@@ -249,7 +244,6 @@
"navigationBarBackgroundColor": "#2671E2",
"navigationBarTextStyle": "white"
}
}, {
"path": "messageDetail",
"style": {
@@ -264,7 +258,6 @@
"navigationBarBackgroundColor": "#fff",
"navigationBarTextStyle": "black"
}
}, {
"path": "equipmentLog",
"style": {
@@ -273,7 +266,6 @@
"navigationBarTextStyle": "transparent",
"navigationStyle": "custom"
}
}
]
},
@@ -342,7 +334,7 @@
]
},
{
"root": "pages/reportExcel", //中心逻辑的模块都放到这里
"root": "pages/reportExcel",
"name": "reportExcel",
"pages": [{
"path": "weekReport",
@@ -362,7 +354,7 @@
]
},
{
"root": "pages/center", //中心逻辑的模块都放到这里
"root": "pages/center",
"name": "center",
"pages": [{
"path": "Piabodata/index",
@@ -477,7 +469,6 @@
"enablePullDownRefresh": true
}
},
{
"path": "records/index",
"style": {
@@ -563,9 +554,7 @@
}
}
]
}
],
}],
"permission": {
"scope.userLocation": {
"desc": "你的位置信息将用于小程序位置接口的效果展示"


+ 7
- 7
pages/center/Piabodata/requireminingAnalysis.vue View File

@@ -14,10 +14,10 @@
{{ guwen}}
<u-icon name="arrow-down" size="24" style="padding-left: 12rpx;"></u-icon>
</view>
<view class="tabbox" @click="huashushow=true">
<!-- <view class="tabbox" @click="huashushow=true">
{{ huashu}}
<u-icon name="arrow-down" size="24" style="padding-left: 12rpx;"></u-icon>
</view>
</view> -->
</view>
<view style="width: 100%;height: 20rpx;background: #FAFAFA;"></view>
<view class="boxzonglan" style="min-height: 400rpx;">
@@ -44,7 +44,7 @@
<view><text class="bold">平均需求挖掘率:</text>筛选时间内,有效接待中已标记顾问的需求挖掘执行率的平均值;</view>
<view><text class="bold">未标记:</text>筛选时间内,有效接待中未标记顾问的接待数;</view>
<view><text class="bold">有效接待:</text>筛选时间内,标记为有效的接待数,不包含待接单;</view>
<view><text class="bold">未挖掘需求数:</text>筛选时间内,需求挖掘平均执行率未0 的需求数;</view>
<view><text class="bold">未挖掘需求数:</text>筛选时间内,需求挖掘平均执行率为0的需求数;</view>
</view>
</view>
<view class="close" @click="showDesc=false">X</view>
@@ -118,8 +118,8 @@
:default-value='selindex'></u-select>
<u-select v-model="deptshow" :list="teamList" @confirm="deptCallback"
:default-value='selindex'></u-select>
<u-select v-model="hushushow" :list="hushuList" @confirm="huashuCallback"
:default-value='selindex'></u-select>
<!-- <u-select v-model="huashushow" :list="hushuList" @confirm="huashuCallback"
:default-value='selindex'></u-select> -->
<!-- 加载组件 -->
<loading v-model="LOADING"></loading>
</view>
@@ -136,7 +136,7 @@
data() {
return {
selindex: '',
huashushow: false,
// huashushow: false,
guwenshow: false,
timeshow: false,
selectshow: false,
@@ -190,7 +190,7 @@
},
activeTotal: 4,
houseId: '',
hushuList: [],// 业务话术
// hushuList: [],// 业务话术
staffList: [],// 员工列表
teamList: [],// 团队列表
team: {


+ 15
- 69
pages/center/consumer/consumerDetail.vue View File

@@ -48,7 +48,7 @@
>所属顾问:{{ customerInfo.agentName || "--" }}</view
>
<view class="content-sec-lab1" style="width: 44%"
>客户阶段:{{ customerInfo.agentName || "--" }}</view
>客户阶段:{{ customerInfo.stageName || "--" }}</view
>
</view>
<view class="content-sec-lab">
@@ -56,15 +56,6 @@
>上次到访:{{ customerInfo.createTime || "--" }}</view
>
</view>
<!-- <view class="content-sec-lab" @click.stop="tipupon">
客户标签:
<text v-if="!customerInfo.demand.cusSemanticWordsList">暂无</text>
<view v-else class="content-sec-tips"
v-for="(che,ind) in customerInfo.demand.cusSemanticWordsList" :key='ind'>{{che.name}}</view>
<view class="conmsg-msg-lab-img" v-if="customerInfo.demand.cusSemanticWordsList.length>0">
<image class="screen-sel-img" src="../../../static/images/right.png" mode=""></image>
</view>
</view> -->
</view>
<view class="content-last">
<view class="content-last-con">
@@ -83,7 +74,10 @@
<view :class="{ activecllasscet: activeTotal == 1 }" @click="tabtimetap(1)">跟进记录</view>
</view>
<view class="tabbox">
<view :class="{ activecllasscet: activeTotal == 2 }" @click="tabtimetap(2)">执行率</view>
<view :class="{ activecllasscet: activeTotal == 2 }" @click="tabtimetap(2)">销讲执行率</view>
</view>
<view class="tabbox">
<view :class="{ activecllasscet: activeTotal == 3 }" @click="tabtimetap(3)">挖掘执行率</view>
</view>
</view>

@@ -159,39 +153,13 @@
</view>
</view>

<!-- 评分 -->
<!-- 销讲执行率 -->
<view class="ratecenter" v-if="activeTotal==2">
<view class="my-tab">
<view class="tab-item" :class="tabactive==0?'tabactive':''" @click="tabactive=0">销讲执行率</view>
<view class="tab-item" :class="tabactive==1?'tabactive':''" @click="tabactive=1">需求挖掘执行率</view>
</view>
<view class="xiaojiang" v-if="tabactive==0">
<view class="ratetetle">执行总览</view>
<view class="rateyuanbox">
<view class="rateyuanboxzuo">
<view class="boxzuoview cccccc">{{customerInfo.visitRecord || '--'}}次</view>
<view style="color: #333333;font-size: 28rpx;font-weight: 400;text-align: center;">接待次数</view>
</view>
<view class="rateyuanboxyou">
<view class="boxzuoview" style="width: 100%;display: flex;justify-content: center;">
<u-circle-progress active-color="#4FC78F" width='139' :percent="customerInfo.fraction">
<view style="text-align: center;color: #4FC78F;">{{customerInfo.fraction}}%</view>
</u-circle-progress>
</view>
<view style="color: #333333;font-size: 28rpx;font-weight: 400;text-align: center;">销讲执行率</view>
</view>
<view class="rateyuanboxzuo">
<view class="boxzuoview cccccc">{{customerInfo.mm}}min</view>
<view style="color: #333333;font-size: 28rpx;font-weight: 400;text-align: center;">接待时长</view>
</view>
</view>
<view
style="width: 100%;height: 80rpx;border-bottom: 1rpx solid #E0E0E0;display: flex;align-items: center;">
<view style="width: 100%;height: 80rpx;border-bottom: 1rpx solid #E0E0E0;display: flex;align-items: center;">
<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-indent: 20rpx;">指标</view>
<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-indent: 170rpx;">执行率
</view>
</view>

</view>
<view v-if="ratelist.length==0" style="width: 100%;height: 100%;display: flex;align-items: center;">
<view style="width: 100%;padding-top: 60rpx;">
<view style="width: 100%;text-align: center;">
@@ -243,29 +211,10 @@
<view v-if="subitem.show" style="width: 100%;height: 30rpx;"></view>
</view>
</view>
</view>
<view class="xuqiu" v-if="tabactive==1">
<view class="ratetetle">执行总览</view>
<view class="rateyuanbox">
<view class="rateyuanboxzuo">
<view class="boxzuoview cccccc">{{customerInfo.visitRecord || '--'}}次</view>
<view style="color: #333333;font-size: 28rpx;font-weight: 400;text-align: center;">到访次数</view>
</view>
<view class="rateyuanboxyou">
<view class="boxzuoview" style="width: 100%;display: flex;justify-content: center;">
<u-circle-progress active-color="#4FC78F" width='139' :percent="customerInfo.wordFraction||0">
<view style="text-align: center;color: #4FC78F;">{{customerInfo.wordFraction||0}}%</view>
</u-circle-progress>
</view>
<view style="color: #333333;font-size: 28rpx;font-weight: 400;text-align: center;">需求挖掘执行率</view>
</view>
<view class="rateyuanboxzuo">
<view class="boxzuoview cccccc">{{customerInfo.mm}}min</view>
<view style="color: #333333;font-size: 28rpx;font-weight: 400;text-align: center;">接待时长</view>
</view>
</view>
<view
style="width: 100%;height: 80rpx;border-bottom: 1rpx solid #E0E0E0;display: flex;align-items: center;">
</view>
<!-- 需求挖掘执行率 -->
<view class="xuqiu" v-if="activeTotal==3">
<view style="width: 100%;height: 80rpx;border-bottom: 1rpx solid #E0E0E0;display: flex;align-items: center;background: #fff;">
<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-indent: 20rpx;">指标</view>
<view style="flex: 1;font-size: 28rpx;color: #333333;font-weight: 600;text-indent: 170rpx;">执行率
</view>
@@ -280,7 +229,7 @@
<view style="text-align: center;width: 100%;margin-top: 20rpx;color: #999999;">暂无数据</view>
</view>
</view>
<!-- 挖掘执行话术展示 -->
<!-- 挖掘执行话术展示 -->
<view class="Level-box" v-else v-for="(item,index) in KeyWordsfractionList" :key="index">
<view class="Level1che" @click="changeshowlevel1(item,1)">
<view class="title1">{{item.name}}</view>
@@ -343,7 +292,6 @@
</view>
</view>
</view>
</view>
</view>
</view>

@@ -356,7 +304,7 @@
<u-popup v-model="tipshow" mode="center" mask-close-able width="560rpx" border-radius="14">
<scroll-view scroll-y="true" style="height: 440rpx;">
<view style="display: flex; flex-wrap: wrap; padding:20rpx;">
<view class="upon-sec-tips" v-for="(item,index) in customerInfo.demand.cusSemanticWords"
<view class="upon-sec-tips" v-for="(item,index) in customerInfo.demand.cusSemanticWordsList"
:key="index">
{{item.name}}
</view>
@@ -1189,11 +1137,10 @@

.content-last {
padding: 30rpx;
height: 168rpx;

.content-last-con {
width: 690rpx;
height: 108rpx;
min-height: 108rpx;
background: #F8F8F8;
border-radius: 8rpx;
padding: 14rpx 20rpx;
@@ -1208,7 +1155,6 @@
}

.tabchange {
// background: #FFFFFF;
overflow: hidden;

.tabactive1 {


+ 30
- 28
pages/center/consumer/index.vue View File

@@ -126,18 +126,12 @@
}}</text></view
>
</view>
<!-- <view class="content-sec-lab" style="line-height: 46rpx;">
客户标签:
<text v-if="item.demand.cusSemanticWordsList==null">暂无</text>
<view v-else class="content-sec-tips" v-for="(che,ind) in item.demand.cusSemanticWordsList"
:key='ind'>{{che.name}}</view>
</view> -->
<view class="content-sec-lab">
<view class="content-sec-lab1"
>所属顾问:{{ item.agentName || "--" }}</view
>
<view class="content-sec-lab1" style="width: 44%"
>客户阶段:{{ item.agentName || "--" }}</view
>客户阶段:{{ item.stageName || "--" }}</view
>
</view>
<view class="content-sec-lab">
@@ -549,15 +543,15 @@ export default {
data() {
return {
huaxiangShow: false,
wajueArrow: false,
jieduanArrow: false,
sourceArrow: false,
levelArrow: false,
wajueArrow: true,
jieduanArrow: true,
sourceArrow: true,
levelArrow: true,
zixunArrow: true,
jiedaiArrow: false,
luyinArrow: false,
visitArrow: false,
xiaojiangArrow: false,
jiedaiArrow: true,
luyinArrow: true,
visitArrow: true,
xiaojiangArrow: true,
huaxiangList: [],
orderBylist: [
{
@@ -869,7 +863,7 @@ export default {
this.sortFilter = "排序";
this.receptionDuration = "所属顾问";
this.arriveFilter = "到访时间";
this.screen.orderBy = null;
this.screen.orderBy = '';
this.screen.staTime = "";
this.screen.endTime = "";
this.nextPage = 1;
@@ -882,7 +876,7 @@ export default {
//选择标签
selectCallback2(e) {
this.sortFilter = e[0].label;
this.orderBy = e[0].value;
this.screen.orderBy = e[0].value;
this.nextPage = 1;
this.recordList = [];
this.isRefresh = false;
@@ -952,6 +946,14 @@ export default {
});
},
getMyCustom() {
this.screen.visitRecord = []
this.screen.jiedaiVal = []
this.screen.wajueVal = []
this.screen.xiaojiangVal = []
this.screen.level = []
this.screen.clientStage = []
this.screen.sourceIds = []
let keywordsIds = []
let dateType = 0;
if (this.activeTotal == 5||this.activeTotal == 4) {
dateType = null;
@@ -986,7 +988,7 @@ export default {
this.sourceList.forEach(i => {
if(i.isShow) this.screen.sourceIds.push(i.value)
})
let keywordsIds = []
this.huaxiangList.forEach(item => {
if(item.children.length){
item.children.forEach(im=>{
@@ -999,19 +1001,19 @@ export default {
pageSize: 10,
query: {
projectId: this.buildingID,
fractions: this.screen.xiaojiangVal.join(','),// 销讲执行率
wordFractions: this.screen.wajueVal.join(','),//需求挖掘
visitRecordNum: this.screen.visitRecord.join(','),//到访次数
clientStages: this.screen.clientStage.join(','), // 客户阶段
sourceIds: this.screen.sourceIds.join(','),// 客户来源
level: this.screen.level.join(','),// 客户等级
duractionNums: this.screen.jiedaiVal.join(','),// 接待时长
fractions: this.screen.xiaojiangVal.length?this.screen.xiaojiangVal.join(','):'',// 销讲执行率
wordFractions: this.screen.wajueVal.length?this.screen.wajueVal.join(','):'',//需求挖掘
visitRecordNum: this.screen.visitRecord.length?this.screen.visitRecord.join(','):'',//到访次数
clientStages: this.screen.clientStage.length?this.screen.clientStage.join(','):'', // 客户阶段
sourceIds: this.screen.sourceIds.length?this.screen.sourceIds.join(','):'',// 客户来源
level: this.screen.level.length?this.screen.level.join(','):'',// 客户等级
duractionNums: this.screen.jiedaiVal.length?this.screen.jiedaiVal.join(','):'',// 接待时长
keywordsIds: keywordsIds.length?keywordsIds.join(','):'',// 画像标签
dateType: dateType, // 接待时间
staTime: this.screen.staTime,
endTime: this.screen.endTime,
agentId: this.screen.agentId,// 顾问
orderBy: this.screen.orderBy==0?null: this.screen.orderBy,// 排序
orderBy: this.screen.orderBy==''?'': this.screen.orderBy,// 排序
},
};
this.userInfo = uni.getStorageSync("weapp_session_userInfo_data");
@@ -1062,7 +1064,7 @@ export default {
// console.log(res)
if(res.length){
res.forEach(item=>{
item.isShow = false;
item.isShow = true;
if(item.children.length){
item.children.forEach(subitem=>{
subitem.isShow = false;
@@ -1165,7 +1167,7 @@ export default {
resetHuaXiang(){
if(this.huaxiangList.length){
this.huaxiangList.forEach(item=>{
item.isShow = false;
item.isShow = true;
if(item.children.length){
item.children.forEach(subitem=>{
subitem.isShow = false;


+ 31
- 44
pages/center/records/index.vue View File

@@ -82,7 +82,7 @@
<view class="text">访问次数</view>
</view>
<view class="cont-item">
<view class="count">{{item.wordFraction||'--'}}</view>
<view class="count">{{item.demand.cusSemanticWordsList?item.demand.cusSemanticWordsList.length:'--'}}</view>
<view class="text">画像标签</view>
</view>
<view class="cont-item">
@@ -167,15 +167,15 @@
<image v-else class="arrow" src="https://static.quhouse.com/17d69984ec7c4830b43f712016f06807.png" mode="" />
</view>
<view class="screen-record-tab" v-if="luyinArrow">
<view class="screen-record-item" :class="[screen.validInvalid==0?'screen-record-chose':'screen-record-nochose']"
<view class="screen-record-item" :class="[screen.validInvalid===0?'screen-record-chose':'screen-record-nochose']"
@click="screenvisivalidInvalid(0)">
有效接待
</view>
<view class="screen-record-item" :class="[screen.validInvalid==1?'screen-record-chose':'screen-record-nochose']"
<view class="screen-record-item" :class="[screen.validInvalid===1?'screen-record-chose':'screen-record-nochose']"
@click="screenvisivalidInvalid(1)">
无效接待
</view>
<view class="screen-record-item" :class="[screen.validInvalid==2?'screen-record-chose':'screen-record-nochose']"
<view class="screen-record-item" :class="[screen.validInvalid===2?'screen-record-chose':'screen-record-nochose']"
@click="screenvisivalidInvalid(2)">
无录音
</view>
@@ -192,7 +192,7 @@
@click="screenvisitRecord(1)">
标记
</view>
<view class="screen-record-item" :class="[screen.markAdvisor==0?'screen-record-chose':'screen-record-nochose']"
<view class="screen-record-item" :class="[screen.markAdvisor===0?'screen-record-chose':'screen-record-nochose']"
@click="screenvisitRecord(0)">
未标记
</view>
@@ -265,13 +265,13 @@
},
data() {
return {
wajueArrow: false,
wajueArrow: true,
zixunArrow: true,
jiedaiArrow: false,
luyinArrow: false,
visitArrow: false,
jiedaiArrow: true,
luyinArrow: true,
visitArrow: true,
xiaojiangArrow: true,
markArrow: false,
markArrow: true,
orderBylist: [{
label: '全部',
value: ''
@@ -422,13 +422,13 @@
screen: {
orderBy: '',//排序
agentId: '', //顾问id
markAdvisor: null,//标记顾问
markAdvisor: '',//标记顾问
visitRecord: [],// 到访次数
zixunVal: [],// 咨询业务
// zixunVal: [],// 咨询业务
wajueVal: [],// 需求挖掘
xiaojiangVal:[],//销讲执行率
jiedaiVal: [],// 接待时长
validInvalid: null,// 录音标识
validInvalid: ''// 录音标识
},
freeList: [], //顾问
recordList: [],
@@ -646,13 +646,13 @@
staTime: this.staTime,// 接待时间
endTime: this.endTime,// 接待时间
agentId: this.screen.agentId, // 顾问ID
visitRecordNum: this.screen.visitRecord.join(','),//到访次数
wordFractions: this.screen.wajueVal.join(','),//挖掘
duractionNums: this.screen.jiedaiVal.join(','),//接待时长
fractions: this.screen.xiaojiangVal.join(','),//销讲
visitRecordNum: this.screen.visitRecord.length?this.screen.visitRecord.join(','):'',//到访次数
wordFractions: this.screen.wajueVal.length?this.screen.wajueVal.join(','):'',//挖掘
duractionNums: this.screen.jiedaiVal.length?this.screen.jiedaiVal.join(','):'',//接待时长
fractions: this.screen.xiaojiangVal.length?this.screen.xiaojiangVal.join(','):'',//销讲
markAdvisor: this.screen.markAdvisor,//标记顾问
dateType: dateType,//时间类型
orderBy: this.orderBy==0?null:this.orderBy,//排序
orderBy: this.screen.orderBy==''?'':this.screen.orderBy,//排序
validInvalid: this.screen.validInvalid,//录音标识
clientStage: this.screen.clientStage,// 客户阶段
recording: this.screen.validInvalid == 2 ? 0 : null // 录音
@@ -705,8 +705,10 @@
reset() {
this.screen.agentId =''
this.screen.jiedaiVal =''
this.screen.validInvalid = ''
this.screen.markAdvisor = ''
this.screen.orderBy = '';
this.sortFilter = '排序';
this.orderBy = null;
this.arriveFilter = '到访时间';
this.staTime = '';
this.endTime = '';
@@ -720,7 +722,10 @@
this.jiedaiList.map(i => {
i.isShow = false
})
this.zixunList.map(i => {
// this.zixunList.map(i => {
// i.isShow = false
// })
this.wajueList.map(i => {
i.isShow = false
})
this.xiaojiangList.map(i => {
@@ -732,40 +737,22 @@
},
//标记顾问
screenvisitRecord(i) {
console.log(i)
if (this.screen.markAdvisor == i) {
this.screen.markAdvisor = null
// console.log(i)
if (this.screen.markAdvisor === i) {
this.screen.markAdvisor = ''
} else {
this.screen.markAdvisor = i
}
},
// 录音标识
screenvisivalidInvalid(i) {
console.log(this.screen.validInvalid, i)
if (this.screen.validInvalid == i) {
this.screen.validInvalid = null
// console.log(this.screen.validInvalid, i)
if (this.screen.validInvalid === i) {
this.screen.validInvalid = ''
} else {
this.screen.validInvalid = i
}
},
//咨询业务
screenzixunClick(i) {
console.log(this.screen.zixunVal, i)
if (this.screen.zixunVal == i) {
this.screen.zixunVal = null
} else {
this.screen.zixunVal = i
}
},
// 需求挖掘选择
screenwajueValClick(i) {
// console.log(this.screen.wajueVal, i)
if (this.screen.wajueVal == i) {
this.screen.wajueVal = null
} else {
this.screen.wajueVal = i
}
},
screensure() {
this.screenShow = false;
this.recordList = [];


+ 50
- 37
pages/mine/details2.vue View File

@@ -28,7 +28,7 @@
<view :id="'dialog'+i" class="fileName">录音文件</view>
<view class="text" :id="'dialog'+csdFileindex+'text'+item.bg"
:class="{active: Math.floor(item.bg/1000) <= playNow && Math.floor(item.ed/1000) > playNow, isGreen: item.isShow == 0}"
v-for="(item,index) in dialog.message" :key="index" :data-speaker="item.speaker" @click.stop>
v-for="(item,index) in dialog.message" :key="index" :data-speaker="item.speaker">
<template v-if="refined">
<view class="checkbox" :class="{select: item.checked}" @click="cbChange(item)">
<template v-if="item.checked">
@@ -147,30 +147,30 @@

<!-- 加入挖掘话术 -->
<view class="zhezhao" v-if="wajueshow" @tap="CancelAdd"></view>
<u-modal v-model="wajueshow" title="新增挖掘话术" :show-cancel-button="true" @cancel="CancelAdd" @confirm="wajueConfirm()">
<u-modal width="600rpx" v-model="wajueshow" title="新增挖掘话术" :show-cancel-button="true" @cancel="CancelAdd" @confirm="wajueConfirm()">
<view class="tian-view" style="margin-left: 20rpx;">
<viwe class="tian-view-t3">
<view class="tian-view-t3">
话术分类:<input class="huashu-input" disabled @click="treeshow=true" v-model="wordBiao.wordBiaoqian" type="text" placeholder="请选择" />
</viwe>
</view>
</view>
<view class="tian-view" style="margin-left: 20rpx;">
<viwe class="tian-view-t2">
话术内容:<textarea :auto-height="true" type="text" v-model="thewrongword" class="tian-input" placeholder="请输入" />
</viwe>
<view class="tian-view-t2">
话术内容:<u-input :auto-height="true" :height="80" type="textarea" v-model="thewrongword" :border="true" :custom-style="{'width': '320rpx','font-size':'34rpx'}" placeholder="请输入" />
</view>
</view>
</u-modal>
<!-- 加入常错词 -->
<view class="zhezhao" v-if="isshow2" @tap="Cancelout"></view>
<u-modal v-model="isshow2" title="添加常错词" :show-cancel-button="true" @cancel="Cancelout" @confirm="$noMultipleClicks(Confirmtheexit)">
<view class="tian-view">
<viwe class="tian-view-t2" style="margin-left: 20rpx;">
常错词:<textarea :auto-height="true" type="text" v-model="thewrongword" :disabled="isNum" class="tian-input" placeholder="请输入" />
</viwe>
<view class="tian-view-t2" style="margin-left: 20rpx;">
常错词:<u-input :auto-height="true" :height="80" type="textarea" v-model="thewrongword" :border="true" :custom-style="{'width': '320rpx','font-size':'34rpx'}" placeholder="请输入" />
</view>
</view>
<view class="tian-view">
<viwe class="tian-view-t3" style="margin-left: 20rpx;">正确词:<input class="huashu-input" v-model="reswrongword" type="text" placeholder="请输入" /></viwe>
<view class="tian-view-t3" style="margin-left: 20rpx;">正确词:<u-input :auto-height="true" :height="80" type="textarea" v-model="reswrongword" :border="true" :custom-style="{'width': '320rpx','font-size':'34rpx'}" placeholder="请输入" /></view>
</view>
</u-modal>

<!-- 加精华 -->
@@ -753,21 +753,44 @@
},
// 添加挖掘词
wajueConfirm(){
this.$u.post("/corpus/addWordMining", {
"houseId":this.buildingID,// 楼盘id
"cusId":this.customerId, //客户id
"question":this.thewrongword,// 问题
"keywordsId":this.wordBiao.wordBiaoqianId,// 标签id
"level":this.wordBiao.level // 标签等级
})
.then((res) => {
console.log(res)
this.wajueItem.isshow = false
uni.request({
url: config.service.addWordMining,
method: "post",
header: {
'content-type': 'application/json',
'Access-Token': uni.getStorageSync('weapp_session_login_data').token
},
data: {
"houseId":this.buildingID,// 楼盘id
"cusId":this.customerId, //客户id
"question":this.thewrongword,// 问题
"keywordsId":this.wordBiao.wordBiaoqianId,// 标签id
"level":this.wordBiao.level // 标签等级
},
success: (res) => {
// console.log(res)
if(res.data.code==10000){
this.wajueItem.isshow = false
this.wajueshow = false
uni.showToast({
title: '添加成功',
duration: 2000
});
}else{
this.wajueshow = true
this.wajueItem.isshow = false
uni.showToast({
title: '添加失败',
icon: 'none',
duration: 2000
});
}
}
})
},
// 挖掘话术分类树的选择
confirmTree(e){
console.log(e)
// console.log(e)
if(e[1].label=='--'){
this.wordBiao.wordBiaoqian = e[0].label
this.wordBiao.wordBiaoqianId = e[0].value
@@ -777,11 +800,12 @@
this.wordBiao.wordBiaoqianId= e[1].value
this.wordBiao.level = 2
}
console.log(this.wordBiao.wordBiaoqian)
// console.log(this.wordBiao.wordBiaoqian)
},
CancelAdd(){
this.wajueshow = false
this.wajueItem.isshow= false
this.wordBiao.wordBiaoqian = ''
},
// 选中取反
cbChange(item) {
@@ -2695,27 +2719,16 @@
width: 100%;
font-size: 34rpx;
display: flex;
align-items: center;
color: #333;
.tian-input {
width: 384rpx;
font-size: 34rpx;
padding: 0 10rpx;
border: none;
border-bottom: 1px solid #e0e0e0;
}
}
.tian-view-t3 {
width: 100%;
display: flex;
font-size: 34rpx;
align-items: center;
.huashu-input{
width: 384rpx;
height: 60rpx;
padding: 0 10rpx;
padding:0 10rpx;
font-size: 34rpx;
border-bottom: 1px solid #E0E0E0;
border-bottom: 1px solid #ccc;
}
}
}


+ 1
- 0
utils/domain.js View File

@@ -2,6 +2,7 @@
const baseUrl = 'http://81.70.55.170:9090/autoSR/api';// 最新测试
// const baseUrl = 'http://127.0.0.1:8080/autoSR/api'; // 本地
// const baseUrl = 'http://192.168.31.169:8080/autoSR/api'; // 长龙
// const baseUrl = 'http://192.168.31.231:8080/autoSR/api'; // 长龙
// const baseUrl = 'http://192.168.31.149:9090/api'; // 盛浩
// const baseUrl = 'https://zkgj.quhouse.com/api'; // 质控正式
// const baseUrl = 'https://hfju.com/api'; // 数智正式


Loading…
Cancel
Save