chat
This commit is contained in:
@@ -125,6 +125,7 @@
|
||||
.height-190{height:190rpx;box-sizing:border-box;}
|
||||
.height-240{height:240rpx;box-sizing:border-box;}
|
||||
.height-400{height:400rpx;box-sizing:border-box;}
|
||||
.height-450{height:450rpx;box-sizing:border-box;}
|
||||
.height-500{height:500rpx;box-sizing:border-box;}
|
||||
.height-600{height:600rpx;box-sizing:border-box;}
|
||||
.height-800{height:800rpx;box-sizing:border-box;}
|
||||
|
||||
@@ -73,6 +73,7 @@ api = {
|
||||
appStatisticsStats: "app/statistics/stats", //获取渠道经理数据分析入口数据
|
||||
appStatisticsStats_days: "app/statistics/stats_days", //获取渠道经理数据分析数据
|
||||
appStatisticsStats_customer: "app/statistics/stats_customer", //获取渠道经理数据分析数据
|
||||
appStatisticsStats_customer_pid: "app/statistics/stats_customer_pid", //客户数据二级
|
||||
|
||||
|
||||
appUserResetbiz: "app/user/resetbiz", //更新用户店铺id
|
||||
|
||||
@@ -348,6 +348,13 @@ apiQuery.getAppStatisticsCust = function(params){
|
||||
})
|
||||
}
|
||||
|
||||
//客户数据二级
|
||||
apiQuery.appStatisticsStats_customer_pid = function (params) {
|
||||
return new Promise(function (resolve, reject) {
|
||||
HttpRequest(false, Config.api.appStatisticsStats_customer_pid, 2, params, "GET", resolve, reject)
|
||||
})
|
||||
}
|
||||
|
||||
//获取渠道订单统计
|
||||
apiQuery.getAppStatisticsOrders = function(params){
|
||||
return new Promise(function (resolve, reject) {
|
||||
|
||||
+103
-433
@@ -1,12 +1,11 @@
|
||||
import _ from '../../../commons/js/commons';
|
||||
import popularData from '../../../commons/js/lib/popularData';
|
||||
import * as echarts from '../../../ecCanvas/components/ec-canvas/echarts';
|
||||
const app = getApp()
|
||||
|
||||
let BarChartData;
|
||||
let Pie1ChartData;
|
||||
let Pie2ChartData;
|
||||
let Pie3ChartData;
|
||||
|
||||
function BarChart(canvas, width, height, dpr) {
|
||||
const chart = echarts.init(canvas, null, {
|
||||
width: width,
|
||||
@@ -31,10 +30,8 @@ function Pie1Chart(canvas, width, height, dpr) {
|
||||
let option = Pie1ChartData
|
||||
chart.setOption(option);
|
||||
chart.on('click',function(e){
|
||||
console.log(e)
|
||||
if(e.data.id>0){
|
||||
let obj = {}
|
||||
obj.type = 1
|
||||
obj.id = e.data.id
|
||||
_.eventBus.emit("customerstats",obj)
|
||||
}
|
||||
@@ -55,20 +52,6 @@ function Pie2Chart(canvas, width, height, dpr) {
|
||||
});
|
||||
return chart;
|
||||
}
|
||||
function Pie3Chart(canvas, width, height, dpr) {
|
||||
const chart = echarts.init(canvas, null, {
|
||||
width: width,
|
||||
height: height,
|
||||
devicePixelRatio: dpr // new
|
||||
});
|
||||
canvas.setChart(chart);
|
||||
let option = Pie3ChartData
|
||||
chart.setOption(option);
|
||||
chart.on('click',function(e){
|
||||
//_.eventBus.emit("pinpai",e.name)
|
||||
});
|
||||
return chart;
|
||||
}
|
||||
|
||||
Page({
|
||||
data: {
|
||||
@@ -77,13 +60,10 @@ Page({
|
||||
ecPie1:{},
|
||||
showPie2Chart:false,//是否显示Pie2图表
|
||||
ecPie2:{},
|
||||
showPie3Chart:false,//是否显示Pie3图表
|
||||
ecPie3:{},
|
||||
showBarChart:false,//是否显示Bar图表
|
||||
ecBar:{},
|
||||
Pie1title:'',
|
||||
Pie2title:'',
|
||||
Pie3title:'',
|
||||
Bartitle:'',
|
||||
},
|
||||
|
||||
@@ -97,27 +77,105 @@ Page({
|
||||
this.getAppArea()
|
||||
|
||||
let that = this
|
||||
//消息通讯 是否显示授权用户信息按钮
|
||||
|
||||
//消息通讯
|
||||
_.eventBus.on("customerstats", this, function(res){
|
||||
let url = '/pages/storeData/subData/index?from=customer&type=' + res.type + '&id=' + res.id + '&s_date=' + that.data.s_date + '&e_date=' + that.data.e_date + '¤t_date=' + that.data.current_date
|
||||
|
||||
_.$router.openUrlScheme(url)
|
||||
let that = this;
|
||||
let params = {};
|
||||
params['id'] = res.id;
|
||||
params['type'] = that.data.type;
|
||||
params['province_id'] = that.data.province_id;
|
||||
params['city_id'] = that.data.city_id;
|
||||
params['s_time'] = that.data.s_date;
|
||||
params['e_time'] = that.data.e_date;
|
||||
|
||||
_.apiQuery.appStatisticsStats_customer_pid(params, that).then(res => {
|
||||
|
||||
if(that.data.Pie2title){
|
||||
this.setData({
|
||||
pie2noData:true,
|
||||
})
|
||||
}
|
||||
|
||||
this.setData({
|
||||
Pie2title:res.data.title,
|
||||
})
|
||||
if(res.data.series_data.length==0){
|
||||
this.setData({
|
||||
pie2noData:true,
|
||||
})
|
||||
}else{
|
||||
Pie2ChartData = {
|
||||
tooltip: {
|
||||
trigger: 'item',
|
||||
formatter: '{b}: {c} ({d}%)'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: 'Access From',
|
||||
type: 'pie',
|
||||
bottom:'12%',
|
||||
radius: ['0', '55%'],
|
||||
avoidLabelOverlap: false,
|
||||
labelLine: {
|
||||
fontSize:5,
|
||||
length:10
|
||||
},
|
||||
label: {
|
||||
formatter: '{b| {b} }{abg|}\n{hr|}\n{c| {c}({d}%) }',
|
||||
backgroundColor: '#F6F8FC',
|
||||
borderColor: '#8C8D8E',
|
||||
borderWidth: 1,
|
||||
borderRadius: 4,
|
||||
rich: {
|
||||
hr: {
|
||||
borderColor: '#8C8D8E',
|
||||
width: '100%',
|
||||
borderWidth: 1,
|
||||
height: 0
|
||||
},
|
||||
b: {
|
||||
color: '#4C5058',
|
||||
fontSize:10,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
c: {
|
||||
color: '#4C5058',
|
||||
fontSize:8,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
}
|
||||
},
|
||||
data: []
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
Pie2ChartData.series[0].data = res.data.series_data
|
||||
this.setData({
|
||||
pie2noData:false,
|
||||
showPie2Chart:true,
|
||||
['ecPie2.onInit']:Pie2Chart,
|
||||
pie2Bottom:res.data.bottom,
|
||||
})
|
||||
}
|
||||
wx.stopPullDownRefresh()
|
||||
});
|
||||
})
|
||||
|
||||
},
|
||||
|
||||
//20240526 获取系统配置城市省市
|
||||
getAppArea(){
|
||||
_.apiQuery.getAppCityLists().then(res => {
|
||||
let area_list = res.data.area_list
|
||||
let area_id = res.data.default_area_id
|
||||
let area_id = [this.data.province_id, this.data.city_id]
|
||||
let areaArr = []
|
||||
// let cur_index = []
|
||||
area_list.forEach((item,index) => {
|
||||
if(item.province_id==area_id[0]){
|
||||
item.children.forEach((it,idx)=>{
|
||||
if(it.city_id==area_id[1]){
|
||||
// cur_index = [item.province_id,it.city_id]
|
||||
this.setData({
|
||||
areaIndex: [index,idx]
|
||||
})
|
||||
@@ -154,23 +212,22 @@ Page({
|
||||
this.getAppStatisticsStats_customer()
|
||||
},
|
||||
|
||||
//20240526地区联动
|
||||
columnChangeArea(e){
|
||||
let multiData = this.data.area_list;
|
||||
let multiIndex = this.data.areaIndex;
|
||||
let columnIndex = e.detail.column;
|
||||
let columnValue = e.detail.value;
|
||||
//20240526地区联动
|
||||
columnChangeArea(e){
|
||||
let multiData = this.data.area_list;
|
||||
let multiIndex = this.data.areaIndex;
|
||||
let columnIndex = e.detail.column;
|
||||
let columnValue = e.detail.value;
|
||||
|
||||
multiIndex[columnIndex] = columnValue;
|
||||
|
||||
this.setData({
|
||||
areaArr: [
|
||||
multiData,
|
||||
multiData[multiIndex[0]].children
|
||||
],
|
||||
})
|
||||
},
|
||||
multiIndex[columnIndex] = columnValue;
|
||||
|
||||
this.setData({
|
||||
areaArr: [
|
||||
multiData,
|
||||
multiData[multiIndex[0]].children
|
||||
],
|
||||
})
|
||||
},
|
||||
|
||||
//选择日期
|
||||
changeDate(e){
|
||||
@@ -240,7 +297,6 @@ columnChangeArea(e){
|
||||
this.setData({
|
||||
showPie1Chart:false,
|
||||
showPie2Chart:false,
|
||||
showPie3Chart:false,
|
||||
showBarChart:false,
|
||||
})
|
||||
|
||||
@@ -251,7 +307,6 @@ columnChangeArea(e){
|
||||
params['s_time'] = this.data.s_date;
|
||||
params['e_time'] = this.data.e_date;
|
||||
_.apiQuery.getAppStatisticsStats_customer(params).then(res => {
|
||||
|
||||
wx.setNavigationBarTitle({
|
||||
title: res.data.title
|
||||
})
|
||||
@@ -259,11 +314,9 @@ columnChangeArea(e){
|
||||
this.setData({
|
||||
Pie1title:res.data.pie1?res.data.pie1.title:'',
|
||||
Pie2title:res.data.pie2?res.data.pie2.title:'',
|
||||
Pie3title:res.data.pie3?res.data.pie3.title:'',
|
||||
Bartitle:res.data.bar?res.data.bar.title:'',
|
||||
})
|
||||
|
||||
//Pie1ChartData = getPie1Option()
|
||||
|
||||
if(res.data.pie1){
|
||||
if(res.data.pie1.series_data_1.length==0){
|
||||
this.setData({
|
||||
@@ -343,153 +396,6 @@ columnChangeArea(e){
|
||||
}
|
||||
}
|
||||
|
||||
//Pie2ChartData = getPie2Option()
|
||||
if(res.data.pie2){
|
||||
if(res.data.pie2.series_data_1.length==0){
|
||||
this.setData({
|
||||
pie2noData:true,
|
||||
})
|
||||
}else{
|
||||
Pie2ChartData = {
|
||||
tooltip: {
|
||||
trigger: 'item',
|
||||
formatter: '{b}: {c} ({d}%)'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: 'Access From',
|
||||
type: 'pie',
|
||||
bottom:'12%',
|
||||
radius: '70%',
|
||||
// avoidLabelOverlap: false,
|
||||
// itemStyle: {
|
||||
// borderRadius: 10,
|
||||
// borderColor: '#fff',
|
||||
// borderWidth: 2
|
||||
// },
|
||||
label: {
|
||||
show: false,
|
||||
position: 'center'
|
||||
},
|
||||
labelLine: {
|
||||
fontSize:5,
|
||||
length:10
|
||||
},
|
||||
label: {
|
||||
formatter: '{b| {b} }{abg|}\n{hr|}\n{c| {c}({d}%) }',
|
||||
backgroundColor: '#F6F8FC',
|
||||
borderColor: '#8C8D8E',
|
||||
borderWidth: 1,
|
||||
borderRadius: 4,
|
||||
rich: {
|
||||
hr: {
|
||||
borderColor: '#8C8D8E',
|
||||
width: '100%',
|
||||
borderWidth: 1,
|
||||
height: 0
|
||||
},
|
||||
b: {
|
||||
color: '#4C5058',
|
||||
fontSize:10,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
c: {
|
||||
color: '#4C5058',
|
||||
fontSize:8,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
}
|
||||
},
|
||||
data: []
|
||||
}
|
||||
]
|
||||
};
|
||||
Pie2ChartData.series[0].data = res.data.pie2.series_data_1
|
||||
this.setData({
|
||||
pie2noData:false,
|
||||
showPie2Chart:true,
|
||||
['ecPie2.onInit']:Pie2Chart,
|
||||
pie2Bottom:res.data.pie2.bottom,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
//Pie3ChartData = getPie3Option()
|
||||
if(res.data.pie3){
|
||||
if(res.data.pie3.series_data_1.length==0){
|
||||
this.setData({
|
||||
pie3noData:true,
|
||||
})
|
||||
}else{
|
||||
Pie3ChartData = {
|
||||
tooltip: {
|
||||
trigger: 'item',
|
||||
formatter: '{b}: {c} ({d}%)'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: 'Access From',
|
||||
type: 'pie',
|
||||
bottom:'12%',
|
||||
radius: '70%',
|
||||
// avoidLabelOverlap: false,
|
||||
// itemStyle: {
|
||||
// borderRadius: 10,
|
||||
// borderColor: '#fff',
|
||||
// borderWidth: 2
|
||||
// },
|
||||
label: {
|
||||
show: false,
|
||||
position: 'center'
|
||||
},
|
||||
labelLine: {
|
||||
fontSize:5,
|
||||
length:10
|
||||
},
|
||||
label: {
|
||||
formatter: '{b| {b} }{abg|}\n{hr|}\n{c| {c}({d}%) }',
|
||||
backgroundColor: '#F6F8FC',
|
||||
borderColor: '#8C8D8E',
|
||||
borderWidth: 1,
|
||||
borderRadius: 4,
|
||||
rich: {
|
||||
hr: {
|
||||
borderColor: '#8C8D8E',
|
||||
width: '100%',
|
||||
borderWidth: 1,
|
||||
height: 0
|
||||
},
|
||||
b: {
|
||||
color: '#4C5058',
|
||||
fontSize:10,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
c: {
|
||||
color: '#4C5058',
|
||||
fontSize:8,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
}
|
||||
},
|
||||
data: []
|
||||
}
|
||||
]
|
||||
};
|
||||
Pie3ChartData.series[0].data = res.data.pie3.series_data_1
|
||||
this.setData({
|
||||
pie3noData:false,
|
||||
showPie3Chart:true,
|
||||
['ecPie3.onInit']:Pie3Chart,
|
||||
pie3Bottom:res.data.pie3.bottom,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
//BarChartData = getBarOption()
|
||||
if(res.data.bar){
|
||||
BarChartData = {
|
||||
tooltip: {
|
||||
@@ -546,7 +452,6 @@ columnChangeArea(e){
|
||||
}
|
||||
|
||||
wx.stopPullDownRefresh()
|
||||
|
||||
});
|
||||
},
|
||||
|
||||
@@ -571,239 +476,4 @@ columnChangeArea(e){
|
||||
this.getAppStatisticsStats_customer()
|
||||
},
|
||||
|
||||
})
|
||||
|
||||
function getPie1Option() {
|
||||
return {
|
||||
tooltip: {
|
||||
trigger: 'item',
|
||||
formatter: '{b}: {c} ({d}%)'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: 'Access From',
|
||||
type: 'pie',
|
||||
selectedMode: 'single',
|
||||
radius: [0, '30%'],
|
||||
label: {
|
||||
position: 'inner',
|
||||
fontSize: 10
|
||||
},
|
||||
labelBar: {
|
||||
show: false
|
||||
},
|
||||
data: [
|
||||
{ value: 1548, name: 'H' },
|
||||
{ value: 775, name: 'A' },
|
||||
{ value: 679, name: 'B', }
|
||||
]
|
||||
},
|
||||
{
|
||||
name: 'Access From',
|
||||
type: 'pie',
|
||||
radius: ['45%', '65%'],
|
||||
labelLine: {
|
||||
fontSize:5,
|
||||
length:10
|
||||
},
|
||||
label: {
|
||||
formatter: '{b| {b} }{abg|}\n{hr|}\n{c| {c}({d}%) }',
|
||||
backgroundColor: '#F6F8FC',
|
||||
borderColor: '#8C8D8E',
|
||||
borderWidth: 1,
|
||||
borderRadius: 4,
|
||||
rich: {
|
||||
hr: {
|
||||
borderColor: '#8C8D8E',
|
||||
width: '100%',
|
||||
borderWidth: 1,
|
||||
height: 0
|
||||
},
|
||||
b: {
|
||||
color: '#4C5058',
|
||||
fontSize:10,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
c: {
|
||||
color: '#4C5058',
|
||||
fontSize:8,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
}
|
||||
},
|
||||
data: [
|
||||
{ value: 1048, name: '转介绍' },
|
||||
{ value: 335, name: '网络推广' },
|
||||
{ value: 310, name: '外展外拓' },
|
||||
{ value: 251, name: '自媒体' },
|
||||
]
|
||||
},
|
||||
]
|
||||
};
|
||||
}
|
||||
|
||||
function getPie2Option() {
|
||||
return {
|
||||
// tooltip: {
|
||||
// trigger: 'item',
|
||||
// formatter: '{b}: {c} ({d}%)'
|
||||
// },
|
||||
series: [
|
||||
{
|
||||
name: 'Access From',
|
||||
type: 'pie',
|
||||
bottom:'10%',
|
||||
radius: ['40%', '70%'],
|
||||
avoidLabelOverlap: false,
|
||||
itemStyle: {
|
||||
borderRadius: 10,
|
||||
borderColor: '#fff',
|
||||
borderWidth: 2
|
||||
},
|
||||
label: {
|
||||
show: false,
|
||||
position: 'center'
|
||||
},
|
||||
labelLine: {
|
||||
fontSize:5,
|
||||
length:10
|
||||
},
|
||||
label: {
|
||||
formatter: '{b| {b} }{abg|}\n{hr|}\n{c| {c}({d}%) }',
|
||||
backgroundColor: '#F6F8FC',
|
||||
borderColor: '#8C8D8E',
|
||||
borderWidth: 1,
|
||||
borderRadius: 4,
|
||||
rich: {
|
||||
hr: {
|
||||
borderColor: '#8C8D8E',
|
||||
width: '100%',
|
||||
borderWidth: 1,
|
||||
height: 0
|
||||
},
|
||||
b: {
|
||||
color: '#4C5058',
|
||||
fontSize:10,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
c: {
|
||||
color: '#4C5058',
|
||||
fontSize:8,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
}
|
||||
},
|
||||
data: [
|
||||
{ value: 48, name: '转介绍' },
|
||||
{ value: 35, name: '网络推广' },
|
||||
{ value: 30, name: '外展外拓' },
|
||||
{ value: 21, name: '自媒体' },
|
||||
]
|
||||
}
|
||||
]
|
||||
};
|
||||
}
|
||||
|
||||
function getPie3Option() {
|
||||
return {
|
||||
// tooltip: {
|
||||
// trigger: 'item',
|
||||
// formatter: '{b}: {c} ({d}%)'
|
||||
// },
|
||||
series: [
|
||||
{
|
||||
name: 'Access From',
|
||||
type: 'pie',
|
||||
bottom:'10%',
|
||||
radius: ['40%', '70%'],
|
||||
avoidLabelOverlap: false,
|
||||
itemStyle: {
|
||||
borderRadius: 10,
|
||||
borderColor: '#fff',
|
||||
borderWidth: 2
|
||||
},
|
||||
label: {
|
||||
show: false,
|
||||
position: 'center'
|
||||
},
|
||||
labelLine: {
|
||||
fontSize:5,
|
||||
length:10
|
||||
},
|
||||
label: {
|
||||
formatter: '{b| {b} }{abg|}\n{hr|}\n{c| {c}({d}%) }',
|
||||
backgroundColor: '#F6F8FC',
|
||||
borderColor: '#8C8D8E',
|
||||
borderWidth: 1,
|
||||
borderRadius: 4,
|
||||
rich: {
|
||||
hr: {
|
||||
borderColor: '#8C8D8E',
|
||||
width: '100%',
|
||||
borderWidth: 1,
|
||||
height: 0
|
||||
},
|
||||
b: {
|
||||
color: '#4C5058',
|
||||
fontSize:10,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
c: {
|
||||
color: '#4C5058',
|
||||
fontSize:8,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
}
|
||||
},
|
||||
data: [
|
||||
{ value: 48, name: '转介绍' },
|
||||
{ value: 35, name: '网络推广' },
|
||||
{ value: 30, name: '外展外拓' },
|
||||
{ value: 21, name: '自媒体' },
|
||||
]
|
||||
}
|
||||
]
|
||||
};
|
||||
}
|
||||
|
||||
function getBarOption() {
|
||||
|
||||
return{
|
||||
tooltip: {
|
||||
trigger: 'axis',
|
||||
axisPointer: {
|
||||
type: 'shadow'
|
||||
}
|
||||
},
|
||||
xAxis: {
|
||||
type: 'value',
|
||||
data: []
|
||||
},
|
||||
yAxis: {
|
||||
type: 'category',
|
||||
data: ['张三', '李四', '王五', '赵六', '孙七', '周八', '吴九','郑十']
|
||||
},
|
||||
grid: {
|
||||
top: '5%',
|
||||
left: '2%',
|
||||
right: '5%',
|
||||
bottom: '3%',
|
||||
containLabel: true
|
||||
},
|
||||
series: [
|
||||
|
||||
{
|
||||
data: [20, 20, 10, 20, 20, 20, 25, 2],
|
||||
type: 'bar',
|
||||
top: 0,
|
||||
bottom:'0',
|
||||
}
|
||||
]
|
||||
};
|
||||
}
|
||||
})
|
||||
@@ -37,7 +37,7 @@
|
||||
</view>
|
||||
<view class="absolute left-0 bottom-0 right-0 text-center font-22 color-888">{{pie1Bottom}}</view>
|
||||
</view>
|
||||
<view class="text-center font-22 color-f9394d" wx:if="{{showPie1Chart}}">点击分类卡片查看具体数据</view>
|
||||
<view class="text-center font-22 color-f9394d" wx:if='{{!pie1noData}}' >点击分类扇区可查看下级来源数据</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -51,23 +51,7 @@
|
||||
<view class="absolute wp100 height-600" wx:if="{{showPie2Chart}}">
|
||||
<ec-canvas class="absolute top-0 bottom-0 left-0 right-0" ec="{{ ecPie2 }}"></ec-canvas>
|
||||
</view>
|
||||
<!--view class="absolute left-0 bottom-0 right-0 text-center font-22 color-888" >{{pie2Bottom}}</view-->
|
||||
<view class="text-center font-22 color-f9394d" wx:if='{{!pie1noData}}'>点击分类卡片查看具体数据</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="mb30 pl30 pr30" wx:if="{{Pie3title != ''}}">
|
||||
<view class="inner30 pt40 bg-fff box-shadow-000-10-10 ulib-r10">
|
||||
<view class="relative">
|
||||
<view class="font-36">{{Pie3title}}</view>
|
||||
</view>
|
||||
<lcb-listmore isNoData='{{pie3noData}}' noDataMsg='暂无数据'></lcb-listmore>
|
||||
<view class="mt50 mb20 relative height-600 z-index-0" wx:if="{{!pie3noData}}">
|
||||
<view class="absolute wp100 height-600" wx:if="{{showPie3Chart}}">
|
||||
<ec-canvas class="absolute top-0 bottom-0 left-0 right-0" ec="{{ ecPie3 }}"></ec-canvas>
|
||||
</view>
|
||||
<view class="absolute left-0 bottom-0 right-0 text-center font-22 color-888" >{{pie3Bottom}}</view>
|
||||
<view class="absolute left-0 bottom-0 right-0 text-center font-22 color-888" >{{pie2Bottom}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -187,6 +187,7 @@ Page({
|
||||
params['city_id'] = this.data.city_id;
|
||||
params['s_time'] = this.data.s_date;
|
||||
params['e_time'] = this.data.e_date;
|
||||
|
||||
_.apiQuery.getAppStatisticsStats(params).then(res => {
|
||||
|
||||
wx.setNavigationBarTitle({
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
<view class="mt10 mb40 pl30 pr30 fn-flex text-center color-fff">
|
||||
<block wx:for='{{tabs}}' wx:key='index'>
|
||||
<view class="fn-flex-item" bindtap="pushLink" data-url="{{item.url}}&province_id={{province_id}}&s_date={{s_date}}&e_date={{e_date}}¤t_date={{current_date}}">
|
||||
<view class="fn-flex-item" bindtap="pushLink" data-url="{{item.url}}&province_id={{province_id}}&city_id={{city_id}}&s_date={{s_date}}&e_date={{e_date}}¤t_date={{current_date}}">
|
||||
<view class="inline-block text-left">
|
||||
<view class="text-center">
|
||||
<text class="font-40">{{item.value_1}}</text>
|
||||
|
||||
@@ -12,6 +12,7 @@ function Pie1Chart(canvas, width, height, dpr) {
|
||||
});
|
||||
canvas.setChart(chart);
|
||||
let option = Pie1ChartData
|
||||
console.log(option)
|
||||
chart.setOption(option);
|
||||
chart.on('click',function(e){
|
||||
console.log(e)
|
||||
@@ -33,7 +34,6 @@ Page({
|
||||
})
|
||||
}
|
||||
this.getAppBizStats()
|
||||
|
||||
},
|
||||
|
||||
|
||||
@@ -114,6 +114,8 @@ Page({
|
||||
params['id'] = this.data.id;
|
||||
params['s_time'] = this.data.s_date;
|
||||
params['e_time'] = this.data.e_date;
|
||||
params['province_id'] = this.data.province_id;
|
||||
params['city_id'] = this.data.city_id;
|
||||
|
||||
if(this.data.from=='customer'){
|
||||
_.apiQuery.getAppBizStats_customer_pid(params).then(res => {
|
||||
@@ -122,6 +124,168 @@ Page({
|
||||
title: res.data.title
|
||||
})
|
||||
|
||||
this.setData({
|
||||
Pie1title:res.data.title,
|
||||
})
|
||||
if(res.data.series_data.length==0){
|
||||
this.setData({
|
||||
pie1noData:true,
|
||||
})
|
||||
}else{
|
||||
Pie1ChartData = {
|
||||
tooltip: {
|
||||
trigger: 'item',
|
||||
formatter: '{b}: {c} ({d}%)'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: 'Access From',
|
||||
type: 'pie',
|
||||
bottom:'15%',
|
||||
radius: ['0', '70%'],
|
||||
avoidLabelOverlap: false,
|
||||
itemStyle: {
|
||||
borderRadius: 10,
|
||||
borderColor: '#fff',
|
||||
borderWidth: 2
|
||||
},
|
||||
label: {
|
||||
show: false,
|
||||
position: 'center'
|
||||
},
|
||||
labelLine: {
|
||||
fontSize:5,
|
||||
length:10
|
||||
},
|
||||
label: {
|
||||
formatter: '{b| {b} }{abg|}\n{hr|}\n{c| {c}({d}%) }',
|
||||
backgroundColor: '#F6F8FC',
|
||||
borderColor: '#8C8D8E',
|
||||
borderWidth: 1,
|
||||
borderRadius: 4,
|
||||
rich: {
|
||||
hr: {
|
||||
borderColor: '#8C8D8E',
|
||||
width: '100%',
|
||||
borderWidth: 1,
|
||||
height: 0
|
||||
},
|
||||
b: {
|
||||
color: '#4C5058',
|
||||
fontSize:10,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
c: {
|
||||
color: '#4C5058',
|
||||
fontSize:8,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
}
|
||||
},
|
||||
data: []
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
Pie1ChartData.series[0].data = res.data.series_data
|
||||
this.setData({
|
||||
pie1noData:false,
|
||||
showPie1Chart:true,
|
||||
['ecPie1.onInit']:Pie1Chart,
|
||||
pie1Bottom:res.data.pie1.bottom,
|
||||
})
|
||||
}
|
||||
wx.stopPullDownRefresh()
|
||||
|
||||
});
|
||||
}else if(this.data.from=='order'){
|
||||
_.apiQuery.getAppBizStats_order_series(params).then(res => {
|
||||
|
||||
wx.setNavigationBarTitle({
|
||||
title: res.data.title
|
||||
})
|
||||
if(res.data.series_data.length==0){
|
||||
this.setData({
|
||||
pie1noData:true,
|
||||
})
|
||||
}else{
|
||||
Pie1ChartData = {
|
||||
tooltip: {
|
||||
trigger: 'item',
|
||||
formatter: '{b}: {c} ({d}%)'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: 'Access From',
|
||||
type: 'pie',
|
||||
bottom:'15%',
|
||||
radius: ['0', '70%'],
|
||||
avoidLabelOverlap: false,
|
||||
itemStyle: {
|
||||
borderRadius: 10,
|
||||
borderColor: '#fff',
|
||||
borderWidth: 2
|
||||
},
|
||||
label: {
|
||||
show: false,
|
||||
position: 'center'
|
||||
},
|
||||
labelLine: {
|
||||
fontSize:5,
|
||||
length:10
|
||||
},
|
||||
label: {
|
||||
formatter: '{b| {b} }{abg|}\n{hr|}\n{c| {c}({d}%) }',
|
||||
backgroundColor: '#F6F8FC',
|
||||
borderColor: '#8C8D8E',
|
||||
borderWidth: 1,
|
||||
borderRadius: 4,
|
||||
rich: {
|
||||
hr: {
|
||||
borderColor: '#8C8D8E',
|
||||
width: '100%',
|
||||
borderWidth: 1,
|
||||
height: 0
|
||||
},
|
||||
b: {
|
||||
color: '#4C5058',
|
||||
fontSize:10,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
c: {
|
||||
color: '#4C5058',
|
||||
fontSize:8,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
}
|
||||
},
|
||||
data: []
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
Pie1ChartData.series[0].data = res.data.series_data
|
||||
this.setData({
|
||||
pie1noData:false,
|
||||
showPie1Chart:true,
|
||||
['ecPie1.onInit']:Pie1Chart,
|
||||
pie1Bottom:res.data.pie1.bottom,
|
||||
})
|
||||
}
|
||||
wx.stopPullDownRefresh()
|
||||
|
||||
});
|
||||
}else{
|
||||
_.apiQuery.appStatisticsStats_customer_pid(params).then(res => {
|
||||
|
||||
wx.setNavigationBarTitle({
|
||||
title: res.data.title
|
||||
})
|
||||
|
||||
this.setData({
|
||||
Pie1title:res.data.title,
|
||||
})
|
||||
@@ -147,10 +311,6 @@ Page({
|
||||
borderColor: '#fff',
|
||||
borderWidth: 2
|
||||
},
|
||||
label: {
|
||||
show: false,
|
||||
position: 'center'
|
||||
},
|
||||
labelLine: {
|
||||
fontSize:5,
|
||||
length:10
|
||||
@@ -192,93 +352,11 @@ Page({
|
||||
pie1noData:false,
|
||||
showPie1Chart:true,
|
||||
['ecPie1.onInit']:Pie1Chart,
|
||||
pie1Bottom:res.data.bottom,
|
||||
})
|
||||
}
|
||||
wx.stopPullDownRefresh()
|
||||
|
||||
});
|
||||
}else if(this.data.from=='order'){
|
||||
_.apiQuery.getAppBizStats_order_series(params).then(res => {
|
||||
|
||||
wx.setNavigationBarTitle({
|
||||
title: res.data.title
|
||||
})
|
||||
|
||||
// this.setData({
|
||||
// Pie1title:res.data.title,
|
||||
// })
|
||||
if(res.data.series_data.length==0){
|
||||
this.setData({
|
||||
pie1noData:true,
|
||||
})
|
||||
}else{
|
||||
Pie1ChartData = {
|
||||
tooltip: {
|
||||
trigger: 'item',
|
||||
formatter: '{b}: {c} ({d}%)'
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: 'Access From',
|
||||
type: 'pie',
|
||||
bottom:'15%',
|
||||
radius: ['40%', '70%'],
|
||||
avoidLabelOverlap: false,
|
||||
itemStyle: {
|
||||
borderRadius: 10,
|
||||
borderColor: '#fff',
|
||||
borderWidth: 2
|
||||
},
|
||||
label: {
|
||||
show: false,
|
||||
position: 'center'
|
||||
},
|
||||
labelLine: {
|
||||
fontSize:5,
|
||||
length:10
|
||||
},
|
||||
label: {
|
||||
formatter: '{b| {b} }{abg|}\n{hr|}\n{c| {c}({d}%) }',
|
||||
backgroundColor: '#F6F8FC',
|
||||
borderColor: '#8C8D8E',
|
||||
borderWidth: 1,
|
||||
borderRadius: 4,
|
||||
rich: {
|
||||
hr: {
|
||||
borderColor: '#8C8D8E',
|
||||
width: '100%',
|
||||
borderWidth: 1,
|
||||
height: 0
|
||||
},
|
||||
b: {
|
||||
color: '#4C5058',
|
||||
fontSize:10,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
c: {
|
||||
color: '#4C5058',
|
||||
fontSize:8,
|
||||
lineHeight:20,
|
||||
align: 'center',
|
||||
},
|
||||
}
|
||||
},
|
||||
data: []
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
Pie1ChartData.series[0].data = res.data.series_data
|
||||
this.setData({
|
||||
pie1noData:false,
|
||||
showPie1Chart:true,
|
||||
['ecPie1.onInit']:Pie1Chart,
|
||||
})
|
||||
}
|
||||
wx.stopPullDownRefresh()
|
||||
|
||||
});
|
||||
});
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
@@ -23,8 +23,8 @@
|
||||
<view class="font-36">{{Pie1title}}</view>
|
||||
</view>
|
||||
<lcb-listmore isNoData='{{pie1noData}}' noDataMsg='暂无数据'></lcb-listmore>
|
||||
<view class="mt50 mb20 relative height-500 z-index-0" wx:if="{{!pie1noData}}">
|
||||
<view class="absolute wp100 height-600" wx:if="{{showPie1Chart}}">
|
||||
<view class="mt50 mb20 relative height-450 z-index-0" wx:if="{{!pie1noData}}">
|
||||
<view class="absolute wp100 height-450" wx:if="{{showPie1Chart}}">
|
||||
<ec-canvas class="absolute top-0 bottom-0 left-0 right-0" ec="{{ ecPie1 }}"></ec-canvas>
|
||||
</view>
|
||||
<view class="absolute left-0 bottom-0 right-0 text-center font-22 color-888">{{pie1Bottom}}</view>
|
||||
|
||||
Reference in New Issue
Block a user