+
@@ -191,15 +191,38 @@ export default {
},
bindDateChange(e){
const date = new Date(e.detail.value)
+ const nowDate = new Date()
let m = date.getMonth() + 1
- if (m<10){
- m = '0' + m
+ let nowMonth = nowDate.getMonth() + 1
+ if (nowMonth === m){
+ let y = nowDate.getFullYear()
+ let nowMonth = nowDate.getMonth() + 1
+ let d = nowDate.getDate() - 1
+ if (m<10){
+ m = '0' + m
+ }
+ if (nowMonth<10){
+ nowMonth = '0' + nowMonth
+ }
+ if (d<10){
+ d = '0' + d
+ }
+ this.time =`${y}-${nowMonth}-${d}`
+ }else{
+ let y = date.getFullYear()
+ if (m<10){
+ m = '0' + m
+ }
+ let d = this.$util.getThisMonthDay(`${y}-${m}`)
+ this.time = `${y}-${m}-${d}`
}
+
+
+
this.month = m
this.single = e.detail.value
let d = this.$util.getThisMonthDay(e.detail.value)
this.endTime = e.detail.value + '-' + d
- this.time = e.detail.value
this.onRefresh()
},
async nearestService(){
@@ -220,16 +243,49 @@ export default {
uni.setStorageSync('currentService',res)
},
async getTransactionList(){
+ const nowDate = new Date()
+ const selectDate = new Date(this.time)
+ let selectMonth = selectDate.getMonth() + 1
+ let nowDateMonth = nowDate.getMonth() + 1
+ let time
+ if (selectMonth === nowDateMonth){
+ let nowYear = nowDate.getFullYear()
+ let m
+ let nowDay = nowDate.getDate() - 1
+ if (nowDateMonth<10){
+ m = '0' + nowDateMonth
+ }
+ if (nowDay<10){
+ nowDay = '0' + nowDay
+ }
+ time = `${nowYear}-${m}-${nowDay}`
+ }else{
+ let selectYear = selectDate.getFullYear()
+ let m
+ if (selectMonth<10){
+ m = '0' + selectMonth
+ }
+ let selectDay = this.$util.getThisMonthDay(`${selectYear}-${m}`)
+ time = `${selectYear}-${m}-${selectDay}`
+ }
+
+
let req = {
Province_Code:'340000',
- Statistics_Date:this.time,
+ Statistics_Date:time,
Serverpart_ID:this.serviceInfo.Serverpart_ID,
ShowConsumptionLevel:true,
ShowConvertRate:true
}
let totalData = await request.$webGet('CommercialApi/Revenue/GetTransactionAnalysis',req)
- this.transactionList = totalData.Result_Data
+ if (totalData.Result_Data){
+ this.transactionList = totalData.Result_Data
+ }else{
+ this.transactionList = null
+ }
+ this.$forceUpdate()
+ console.log('this.transactionList',this.transactionList)
},
async getTimePeriodList(){
let req = {
@@ -238,44 +294,49 @@ export default {
Serverpart_ID:this.serviceInfo.Serverpart_ID,
TimeSpan:1
}
- let totalData = await request.$webGet('CommercialApi/Revenue/GetTransactionTimeAnalysis',req)
+ let totalData = await request.$webGet('CommercialApi/Revenue/GetTransactionTimeAnalysis',req)
let list = [] //客单占比
let numberList = [] //数量数组
let moneyList = [] // 金额数组
- totalData.Result_Data.CommonScatterList.forEach(item=>{
- list.push(item.value)
- numberList.push(item.data)
- moneyList.push(item.key)
- })
- let res = {
- categories: [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],
- series:[
- {
- name:'客单占比',
- data: list,
- number: numberList,
- money : moneyList
- }
- ]
+ if (totalData.Result_Data){
+ totalData.Result_Data.CommonScatterList.forEach(item=>{
+ list.push(item.value)
+ numberList.push(item.data)
+ moneyList.push(item.key)
+ })
+ let res = {
+ categories: [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],
+ series:[
+ {
+ name:'客单占比',
+ data: list,
+ number: numberList,
+ money : moneyList
+ }
+ ]
+ }
+ // let res = {
+ // categories: ["2018","2019","2020","2021","2022","2023"],
+ // series: [
+ // {
+ // name: "成交量A",
+ // data: [35,8,25,37,4,20]
+ // },
+ // {
+ // name: "成交量B",
+ // data: [70,40,65,100,44,68]
+ // },
+ // {
+ // name: "成交量C",
+ // data: [100,80,95,150,112,132]
+ // }
+ // ]
+ // };
+ this.timePeriodList = res
+ }else{
+ this.timePeriodList = []
}
- // let res = {
- // categories: ["2018","2019","2020","2021","2022","2023"],
- // series: [
- // {
- // name: "成交量A",
- // data: [35,8,25,37,4,20]
- // },
- // {
- // name: "成交量B",
- // data: [70,40,65,100,44,68]
- // },
- // {
- // name: "成交量C",
- // data: [100,80,95,150,112,132]
- // }
- // ]
- // };
- this.timePeriodList = res
+
},
async getLevelTopList(){
let req = {
@@ -289,31 +350,36 @@ export default {
series:[]
}
let totalData = await request.$webGet('CommercialApi/Revenue/GetBusinessTradeLevel',req)
- res.categories = totalData.Result_Data.legend
- totalData.Result_Data.ColumnList.forEach(item=>{
- res.series.push({name:item.name,data:item.data})
- })
- // let res = {
- // categories:["商超","餐饮","水果饮品","小吃","连锁品牌","全业态"],
- // series: [
- // {
- // name: "低消费",
- // textColor: "#FFFFFF",
- // data: [20,27,21,24,6,28]
- // },
- // {
- // name: "普通消费",
- // textColor: "#FFFFFF",
- // data: [20,27,21,24,6,28]
- // },
- // {
- // name: "高消费",
- // textColor: "#FFFFFF",
- // data: [60,46,58,52,88,44]
- // }
- // ]
- // }
- this.levelTopList = res
+ if (totalData.Result_Data){
+ res.categories = totalData.Result_Data.legend
+ totalData.Result_Data.ColumnList.forEach(item=>{
+ res.series.push({name:item.name,data:item.data})
+ })
+ // let res = {
+ // categories:["商超","餐饮","水果饮品","小吃","连锁品牌","全业态"],
+ // series: [
+ // {
+ // name: "低消费",
+ // textColor: "#FFFFFF",
+ // data: [20,27,21,24,6,28]
+ // },
+ // {
+ // name: "普通消费",
+ // textColor: "#FFFFFF",
+ // data: [20,27,21,24,6,28]
+ // },
+ // {
+ // name: "高消费",
+ // textColor: "#FFFFFF",
+ // data: [60,46,58,52,88,44]
+ // }
+ // ]
+ // }
+ this.levelTopList = res
+ }else{
+ this.levelTopList = []
+ }
+
},
async getBandLevelList(){
let req = {
@@ -324,25 +390,30 @@ export default {
}
let res =[]
let totalData = await request.$webGet('CommercialApi/Revenue/GetBusinessBrandLevel',req)
- totalData.Result_Data.legend.forEach(item=>{
- res.push({name:item,small:0,normal:0,big:0})
- })
- res.forEach((item,index)=>{
- totalData.Result_Data.ColumnList.forEach((subItem,subIndex)=>{
- if (subItem.name==='低消费'){
- item.small = subItem.data[index]
- }else if(subItem.name==='普通消费'){
- item.normal = subItem.data[index]
- }else if(subItem.name==='高消费'){
- item.big = subItem.data[index]
- }
+ if (totalData.Result_Data){
+ totalData.Result_Data.legend.forEach(item=>{
+ res.push({name:item,small:0,normal:0,big:0})
})
- })
- // let res=[{name:'五芳斋',big:'14.8',normal:'41.7',small:'43.5'},
- // {name:'驿佰购',big:'44.1',normal:'31.7',small:'24.2'},
- // {name:'老娘舅',big:'15.2',normal:'70.1',small:'14.5'},
- // {name:'吉祥馄饨',big:'25.2',normal:'39.9',small:'34.7'}]
- this.bandLevelList = res
+ res.forEach((item,index)=>{
+ totalData.Result_Data.ColumnList.forEach((subItem,subIndex)=>{
+ if (subItem.name==='低消费'){
+ item.small = subItem.data[index]
+ }else if(subItem.name==='普通消费'){
+ item.normal = subItem.data[index]
+ }else if(subItem.name==='高消费'){
+ item.big = subItem.data[index]
+ }
+ })
+ })
+ // let res=[{name:'五芳斋',big:'14.8',normal:'41.7',small:'43.5'},
+ // {name:'驿佰购',big:'44.1',normal:'31.7',small:'24.2'},
+ // {name:'老娘舅',big:'15.2',normal:'70.1',small:'14.5'},
+ // {name:'吉祥馄饨',big:'25.2',normal:'39.9',small:'34.7'}]
+ this.bandLevelList = res
+ }else{
+ this.bandLevelList = []
+ }
+
},
async getBusinessTypeList(){
const req = {
@@ -354,24 +425,29 @@ export default {
const data = await request.$webGet('CommercialApi/Revenue/GetBusinessTradeRevenue',req)
let res = []
let all = 0
- data.Result_Data.BusinessTradeRank.forEach((item,index)=>{
- if (index<=10){
- res.push({name:`${item.name} ${item.value}%`,value:Number(item.value),text:item.data})
- all+=Number(item.value)
- }else if(index===11){
- if (all<100){
- res.push({name:`其他${(100-all).toFixed(2)}%`,value:Number((100 - all).toFixed(2)),text:item.data})
+ if (data.Result_Data){
+ data.Result_Data.BusinessTradeRank.forEach((item,index)=>{
+ if (index<=10){
+ res.push({name:`${item.name} ${item.value}%`,value:Number(item.value),text:item.data})
+ all+=Number(item.value)
+ }else if(index===11){
+ if (all<100){
+ res.push({name:`其他${(100-all).toFixed(2)}%`,value:Number((100 - all).toFixed(2)),text:item.data})
+ }
}
- }
- })
- let result= {
- series: [
- {
- data:res
- }
- ]
- };
- this.businessTypeList = result
+ })
+ let result= {
+ series: [
+ {
+ data:res
+ }
+ ]
+ };
+ this.businessTypeList = result
+ }else{
+ this.businessTypeList = []
+ }
+
},
async getCompareList(){
const req = {
@@ -384,7 +460,7 @@ export default {
let customerMax = 0
let carLit = []
let carLitMax = 0
- if (data.Result_Data.TransactionList.data.length>0){
+ if (data.Result_Data.TransactionList.data){
data.Result_Data.TransactionList.data.forEach((item,index)=>{
if (index % 2 === 1 && index!==data.Result_Data.TransactionList.data.length-1){
@@ -398,7 +474,7 @@ export default {
})
}
- if (data.Result_Data.BayonetList.data.length>0){
+ if (data.Result_Data.BayonetList.data){
data.Result_Data.BayonetList.data.forEach((item,index)=>{
if (index % 2 === 1 && index!==data.Result_Data.BayonetList.data.length-1){
@@ -409,6 +485,8 @@ export default {
carLit.push(item[1])
}
})
+ }else{
+ carLit = []
}
@@ -444,6 +522,7 @@ export default {
// }
// ]
// }
+ console.log('res',res)
this.compareList = res
},
async getBestsellerList(){
diff --git a/pages/commercialBI/carPortrait.vue b/pages/commercialBI/carPortrait.vue
index be8b53f..7d88777 100644
--- a/pages/commercialBI/carPortrait.vue
+++ b/pages/commercialBI/carPortrait.vue
@@ -50,11 +50,11 @@
{{time}}