douzhuo 1 anno fa
parent
commit
a3d283b630
8 ha cambiato i file con 65 aggiunte e 57 eliminazioni
  1. +1
    -1
      manifest.json
  2. +20
    -19
      pages.json
  3. +11
    -11
      pages/center/Piabodata/requireminingAnalysis.vue
  4. +5
    -4
      pages/center/consumer/consumerDetail.vue
  5. +2
    -1
      pages/center/records/index.vue
  6. +2
    -2
      pages/index/index.vue
  7. +5
    -8
      pages/login/index.vue
  8. +19
    -11
      pages/mine/details2.vue

+ 1
- 1
manifest.json Vedi File

@@ -96,7 +96,7 @@
"urlCheck" : false,
"es6" : true,
"postcss" : true,
"minified" : true
"minified" : false
},
"usingComponents" : true,
"permission" : {},


+ 20
- 19
pages.json Vedi File

@@ -60,25 +60,6 @@
"navigationBarBackgroundColor": "#2671E2",
"navigationBarTextStyle": "white"
}
},
{
"path": "pages/reportExcel/dayReport",
"style": {
"navigationBarTitleText": "数智工牌日报",
"navigationBarBackgroundColor": "#ffffff",
"navigationBarTextStyle": "black"
}
},
{
"path": "pages/reportExcel/weekReport",
"style": {
"navigationBarTitleText": "数智工牌周报",
"navigationBarBackgroundColor": "#ffffff",
"navigationBarTextStyle": "black"
}
}
],
//这下面是分包
@@ -377,6 +358,26 @@
]
},
{
"root": "pages/reportExcel", //中心逻辑的模块都放到这里
"name": "reportExcel",
"pages": [{
"path": "weekReport",
"style": {
"navigationBarTitleText": "数智工牌周报",
"navigationBarBackgroundColor": "#ffffff",
"navigationBarTextStyle": "black"
}
},{
"path": "dayReport",
"style": {
"navigationBarTitleText": "数智工牌日报",
"navigationBarBackgroundColor": "#ffffff",
"navigationBarTextStyle": "black"
}
}
]
},
{
"root": "pages/center", //中心逻辑的模块都放到这里
"name": "center",


+ 11
- 11
pages/center/Piabodata/requireminingAnalysis.vue Vedi File

@@ -57,10 +57,10 @@
<view class="title">
<view class="title1">平均需求挖掘率趋势</view>
</view>
<!-- <view class="uchaserbox">
<view class="uchaserbox">
<qiun-data-charts type="line" :chartData="lineOptsect" :opts="lineOpts" background="none"
:ontouch="true" canvasId="wangxiaohuaerlingilingwuyiba1" :canvas2d="true" />
</view> -->
</view>
</view>
<view style="width: 100%;height: 20rpx;background: #FAFAFA;"></view>
<view class="single">
@@ -264,7 +264,7 @@
this.getdata()
},
onReady: function(){
// this.getRingData()
this.getRingData()
},
onPullDownRefresh() {
},
@@ -273,11 +273,11 @@
// 需求挖掘分析-简报
this.wordMiningAnalyze()
// 挖掘趋势图
// this.getwordMiningAnalyzePercentage()
// //需求挖掘排行
// this.getwordMiningRank()
// // 需求挖掘f分布图
// this.getRingData()
this.getwordMiningAnalyzePercentage()
//需求挖掘排行
this.getwordMiningRank()
// 需求挖掘f分布图
this.getRingData()
},
// 需求挖掘排行
getwordMiningRank(){
@@ -310,7 +310,7 @@
deptId: this.deptVal,
createUser: this.guwenVal,
"firstStartDate":!this.activeTotal?this.startDate:'',
"firstEndDate":!this.activeTotal?this.endDate:'',
"firstEndDate":!this.activeTotal?this.endDate:'',
"dateType":this.activeTotal
})
.then(res => {
@@ -345,7 +345,7 @@
}
this.$u.post("/cusLvStatistics/wordMiningAnalyze",params).then(res => {
// console.log(res.contrast)
res.contrast.wordFraction = (res.contrast.fraction || 0) + '%'
res.contrast.wordFraction = (res.contrast.wordFraction || 0) + '%'
this.numlist.forEach(item => {
item.duibinum = res.contrast[item.setName]
item.endnum = res.end[item.setName]
@@ -399,7 +399,7 @@
let categories3 =[]
categories1.forEach(item1=>{
categories2.forEach(item2=>{
categories3.push(item1+ 'vs' + item2)
categories3.push(item1+ '/' + item2)
})
})
this.lineOptsect.categories = categories3


+ 5
- 4
pages/center/consumer/consumerDetail.vue Vedi File

@@ -269,8 +269,9 @@
<view class="title1">{{item.name}}</view>
<view class="leve1-jindu">
<view class="jindutiao">
<view class="huanxing" :style="{width: item.fraction||0 +'%'}"></view>
<view class="text">{{item.fraction||0}}%</view>
<view class="huanxing" v-if="item.selected==0" :style="{width: item.fraction+'%'}"></view>
<view class="huanxing" v-else style="width: 0"></view>
<view class="text">{{item.selected==0?item.fraction:0}}%</view>
</view>
</view>
<view class="jiantobox">
@@ -282,7 +283,7 @@
<view v-if="item.showLevel==1">
<view class="hhhbox" v-if="item.show" style="padding: 30rpx;">
<view class="hsnrtest">话术内容</view>
<view class="Level3che" @tap="clickaudeopal(che)"
<view class="Level3che"
v-for="(che,inc) in item.questionList" :key='inc'>
<view class="title1">{{inc+1}}.{{che.question}}</view>
<view class="jiantobox">
@@ -311,7 +312,7 @@
</view>
<view v-if="subitem.show" style="padding: 30rpx 0;">
<view class="hsnrtest">话术内容</view>
<view class="Level3che" @tap="clickaudeopal(che)"
<view class="Level3che"
v-for="(che,inc) in subitem.questionList" :key='inc'>
<view class="title1">{{inc+1}}.{{che.question}}</view>
<view class="jiantobox">


+ 2
- 1
pages/center/records/index.vue Vedi File

@@ -529,6 +529,7 @@
var item = {
bg: 0,
customerId: item.id,
wordFraction: item.wordFraction
}
uni.setStorageSync("searchobj", item); //写入缓存
uni.setStorageSync("entrance", 1); //写入缓存
@@ -549,7 +550,7 @@
let newobj = res[0];
if (res[0].merge == 0) {
uni.navigateTo({
url: `/pages/mine/details2?customerId=${newobj.customerId}&status=${newobj.status}&stateisshow=${"2"}`
url: `/pages/mine/details2?customerId=${newobj.customerId}&status=${newobj.status}&stateisshow=${"2"}&wordFraction=${item.wordFraction}`
})
} else {
uni.navigateTo({


+ 2
- 2
pages/index/index.vue Vedi File

@@ -119,7 +119,7 @@
<view class="realnum">{{realtimeobj.fraction || 0}}%</view>
<view class="realtext">平均执行率</view>
</view>
<view class="real" @click="towajue">
<view class="real" @click="tapjumpreception('6')">
<view class="realnum">{{realtimeobj.wordFraction || 0}}%</view>
<view class="realtext">平均挖掘率</view>
</view>
@@ -160,7 +160,7 @@
<view class="realnum">{{Thisweekobj.avgDuration|| 0}}</view>
<view class="realtext">平均接待时长</view>
</view>
<view class="real" @click="towajue">
<view class="real" @click="tapjumpreception('3')">
<view class="realnum">{{Thisweekobj.wordFraction || 0}}%</view>
<view class="realtext">平均挖掘率</view>
</view>


+ 5
- 8
pages/login/index.vue Vedi File

@@ -8,15 +8,15 @@
<view class="cwjs-item center">
<image src="https://qufang.oss-cn-beijing.aliyuncs.com/channelHelper/user.png" class="logo_input">
</image>
<input class="cwjs-item cwjs-input" v-model="username" placeholder="请输入账号名" type="number" maxlength="11" placeholder-style="color:#AAAAAA"></input>
<input class="cwjs-item cwjs-input" v-model="username" placeholder="请输入账号名" type="number" maxlength="11" placeholder-style="color:#AAAAAA"/>
</view>
</view>
<view class="cwjs-cells item-flex" style="margin-top:13rpx;">
<view class="cwjs-item center">
<image src="https://qufang.oss-cn-beijing.aliyuncs.com/channelHelper/lock.png" class="logo_input">
</image>
<input class="cwjs-item cwjs-input" placeholder="请输入密码" placeholder-style="color:#AAAAAA" type="password" v-model="password" maxlength="16" v-if="passwordType"></input>
<input class="cwjs-item cwjs-input" placeholder="请输入密码" placeholder-style="color:#AAAAAA" maxlength="16" v-model="password" v-else></input>
<input class="cwjs-item cwjs-input" placeholder="请输入密码" placeholder-style="color:#AAAAAA" type="password" v-model="password" maxlength="16" v-if="passwordType"/>
<input class="cwjs-item cwjs-input" placeholder="请输入密码" placeholder-style="color:#AAAAAA" maxlength="16" v-model="password" v-else/>
</view>
<view class="imagesBox" @tap="changeBindPassword">
<image v-if="passwordType==false" src="../../static/images/zhengkai.png" class="images" mode="scaleToFill"></image>
@@ -42,9 +42,7 @@
data() {
return {
username: '',//18831048327 ,18888888800
//获取到的用户名的值
password: '',//123456
//获取到的密码栏中的值
passwordType: true,
agreeChecked: true
};
@@ -94,7 +92,8 @@
method: "POST",
data: loginParams,
success: function(result) {
var data = result.data; //console.log("登陆信息", data);
var data = result.data;
//console.log("登陆信息", data);
if (data && data.code == 10000) {
var res = data.data;
if (res) {
@@ -149,8 +148,6 @@
uni.setStorageSync("weapp_session_Menu_data", data)
})
}
}
};
</script>


+ 19
- 11
pages/mine/details2.vue Vedi File

@@ -252,7 +252,7 @@
</view>
</view>
<view class="Level-box" v-for="(item,index) in ratelist" :key="index">
<view class="Level1che" @click="item.show = !item.show">
<view class="Level1che" @click="hangeshow2(item,1)">
<view class="title1">{{item.name.substring(0,8)}}</view>
<view class="leve1-jindu">
<view class="jindutiao">
@@ -266,7 +266,7 @@
</view>
</view>
<view class="hhhbox" v-if="item.show" v-for="(subitem,i) in item.children" :key="i">
<view class="Level2che" @click="item.show = !item.show">
<view class="Level2che" @click="hangeshow2(subitem,1)">
<view class="title1">{{subitem.name.substring(0,8)}}</view>
<view class="leve1-jindu">
<view class="zhixing" v-if="!subitem.selected">已执行</view>
@@ -309,12 +309,13 @@
</view>
</view>
<view class="Level-box" v-for="(item,index) in KeyWordsfractionList" :key="index">
<view class="Level1che" @click="item.show = !item.show">
<view class="Level1che" @click="hangeshow2(item,1)">
<view class="title1">{{item.name}}</view>
<view class="leve1-jindu">
<view class="jindutiao">
<view class="huanxing" :style="{width: item.fraction||0+'%'}"></view>
<view class="text">{{item.fraction||0}}%</view>
<view class="huanxing" v-if="item.selected==0" :style="{width: item.fraction+'%'}"></view>
<view class="huanxing" v-else style="width: 0"></view>
<view class="text">{{item.selected==0?item.fraction:0}}%</view>
</view>
</view>
<view class="jiantobox">
@@ -326,7 +327,7 @@
<view v-if="item.showLevel==1">
<view class="hhhbox" v-if="item.show" style="padding: 30rpx;">
<view class="hsnrtest">话术内容</view>
<view class="Level3che" @tap="clickaudeopal(che)"
<view class="Level3che"
v-for="(che,inc) in item.questionList" :key='inc'>
<view class="title1">{{inc+1}}.{{che.question}}</view>
<view class="jiantobox">
@@ -341,7 +342,7 @@
<!-- 话术在二级下 -->
<view v-if="item.showLevel==2">
<view class="hhhbox" v-if="item.show" v-for="(subitem,i) in item.children" :key="i">
<view class="Level2che" @click="item.show = !item.show">
<view class="Level2che" @click="hangeshow2(subitem,1)">
<view class="title1 u-line-1">{{subitem.name}}</view>
<view class="leve1-jindu">
<view class="zhixing" v-if="!subitem.selected">已执行</view>
@@ -355,7 +356,7 @@
</view>
<view v-if="subitem.show" style="padding: 30rpx 0;">
<view class="hsnrtest">话术内容</view>
<view class="Level3che" @tap="clickaudeopal(che)"
<view class="Level3che"
v-for="(che,inc) in subitem.questionList" :key='inc'>
<view class="title1">{{inc+1}}.{{che.question}}</view>
<view class="jiantobox">
@@ -634,6 +635,7 @@
this.status = options.status;
this.customerId = options.customerId;
this.KeyWordsfraction = options.wordFraction||0;
this.itemobj = uni.getStorageSync('searchobj');
console.log(this.itemobj)
this.stateisshow = options.stateisshow;
@@ -709,6 +711,9 @@
},

methods: {
hangeshow2(item,type){
item.show = !item.show;
},
eqLogClick(){
uni.navigateTo({
url:`./equipmentLog?id=${this.customerId}`
@@ -794,7 +799,7 @@
//评分点击
clickaudeopal(item) {
if (item.selected == 0 && item.viewFlag != 1) {
console.log(item)
// console.log(item)
this.Pinspeak = false
uni.navigateTo({
url: '/pages/mine/ScoringPlaylist?customerId=' + this.customerId + "&id=" + item
@@ -1019,6 +1024,7 @@
this.gituserlist()
} else if (stringa == 'Pinspeak') {
this.getRatelist()
this.getfindKeyWordsBycusId()
this.Pinspeak = true;
} else {
if (this.kehuyixiangcenterindex == 0) {
@@ -1587,9 +1593,11 @@
this.$u.get("/cusLvStatistics/findKeyWordsBycusId?cusId=" + this.customerId).then(res => {
// console.log(res)
if(res.length){
this.KeyWordsfraction = 0
// this.KeyWordsfraction = 0
res.forEach(item=>{
this.KeyWordsfraction += +item.fraction // 总执行率
// if(item.selected==0){
// this.KeyWordsfraction += +item.fraction // 总执行率
// }
item.show = false
item.children.forEach(obj=>{
obj.show = false


Caricamento…
Annulla
Salva