Browse Source

移动端修改和接口接通

master
123456 3 years ago
parent
commit
39d6d7b2bf
  1. 13725
      package-lock.json
  2. 40
      src/api/home.js
  3. BIN
      src/assets/img/安静.png
  4. BIN
      src/assets/img/拥挤.png
  5. BIN
      src/assets/img/舒适.png
  6. 290
      src/views/HomeView.vue
  7. 54
      src/views/WhView.vue

13725
package-lock.json

File diff suppressed because it is too large

40
src/api/home.js

@ -15,3 +15,43 @@ export function allGroupTimeNum(param) {
params:param,
})
}
export function homeBarData(param) {
return request({
url: 'http://btgym.xingtongworld.com/index.php?s=/api/pass.passcc/allGroupTimeNum&granularity=daily',
method: 'post',
param,
})
}
export function allGroupNum(param) {
return request({
url: 'http://btgym.xingtongworld.com/index.php?s=/api/pass.passcc/allGroupNum',
method: 'post',
param,
})
}
export function allInfoDatas(param) {
return request({
url: 'http://btgym.xingtongworld.com/index.php?s=/api/pass.passcc/realTimeData',
method: 'post',
param,
})
}
export function allGcgNumDatas(param) {
return request({
url: 'http://btgym.xingtongworld.com/index.php?s=/api/pass.passcc/toDayGroupsEnterNum',
method: 'post',
param,
})
}
export function allTsgInfoDatas(param) {
return request({
url: 'http://btgym.xingtongworld.com/index.php?s=/api/library.pass/allFlowTrends',
method: 'post',
param,
})
}

BIN
src/assets/img/安静.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
src/assets/img/拥挤.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
src/assets/img/舒适.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

290
src/views/HomeView.vue

@ -8,14 +8,14 @@
</div>
<div class="gymnum">
<span>年度进馆总人数</span>
<p>23,556</p>
<p>{{ year_num }}</p>
</div>
</div>
<!-- 今日进馆 -->
<div class="numbox">
<span class="numicon"><img src="../assets/img/icon01.png" /></span>
<div class="numdiv">
<p class="ndtitle">23566</p>
<p class="ndtitle">{{ day_num }}</p>
<p class="nddesc">今日进馆总人数</p>
</div>
</div>
@ -23,7 +23,7 @@
<div class="numbox">
<span class="numicon"><img src="../assets/img/icon02.png" /></span>
<div class="numdiv">
<p class="ndtitle">23566</p>
<p class="ndtitle">{{ week_num }}</p>
<p class="nddesc">本周进馆总人数</p>
</div>
</div>
@ -31,7 +31,7 @@
<div class="numbox">
<span class="numicon"><img src="../assets/img/icon03.png" /></span>
<div class="numdiv">
<p class="ndtitle">23566</p>
<p class="ndtitle">{{ mon_num }}</p>
<p class="nddesc">本月进馆总人数</p>
</div>
</div>
@ -59,13 +59,13 @@
<span><img src="../assets/img/tyc_icon.png" /></span>
</li>
<li>
<span>体育</span>
<span>20%</span>
<span>体育</span>
<span>12%</span>
<span><img src="../assets/img/tyc_icon.png" /></span>
</li>
<li>
<span>体育场</span>
<span>20%</span>
<span>游泳场馆</span>
<span>12%</span>
<span><img src="../assets/img/tyc_icon.png" /></span>
</li>
</ul>
@ -78,17 +78,17 @@
<li>
<span><img src="../assets/img/tyc_icon.png" /></span>
<span>20%</span>
<span>体育场</span>
<span>图书馆</span>
</li>
<li>
<span><img src="../assets/img/tyc_icon.png" /></span>
<span>20%</span>
<span>体育场</span>
<span>12%</span>
<span>文化馆</span>
</li>
<li>
<span><img src="../assets/img/tyc_icon.png" /></span>
<span>20%</span>
<span>体育场</span>
<span>12%</span>
<span>博物馆</span>
</li>
</ul>
</div>
@ -107,41 +107,41 @@
<div class="pcgrs">
<div class="pcgrs_title">各场馆实时进馆人数</div>
<!-- 場館實時 -->
<div class="pcg_item">
<div class="pcg_item" v-for="item in ssjgNumDatas" :key="item.groupId">
<span class="pcpos">体育场</span>
<p class="pcval">23,456</p>
<span class="pcrate">40%</span>
<p class="pcval">{{ item.allEnter }}</p>
<span class="pcrate" :class="[{pcrate2: parseInt(item.proportion) >= 80 && parseInt(item.proportion) < 90},{pcrate3: parseInt(item.proportion) >= 90 }]">{{ item.proportion }}</span>
</div>
<!-- #2 -->
<div class="pcg_item">
<span class="pcpos">体育场</span>
<!-- <div class="pcg_item">
<span class="pcpos">图书馆</span>
<p class="pcval">23,456</p>
<span class="pcrate">40%</span>
</div>
<!-- 3 -->
<div class="pcg_item">
<span class="pcpos">体育</span>
<span class="pcpos">体育</span>
<p class="pcval">23,456</p>
<span class="pcrate">40%</span>
</div>
<!-- 4 -->
<div class="pcg_item">
<span class="pcpos">体育场</span>
<span class="pcpos">文化馆</span>
<p class="pcval">23,456</p>
<span class="pcrate">40%</span>
</div>
<!-- 5 -->
<div class="pcg_item">
<span class="pcpos">体育场</span>
<span class="pcpos">游泳场馆</span>
<p class="pcval">23,456</p>
<span class="pcrate">40%</span>
</div>
<!-- 6 -->
<div class="pcg_item">
<span class="pcpos">体育场</span>
<span class="pcpos">博物馆</span>
<p class="pcval">23,456</p>
<span class="pcrate">40%</span>
</div>
</div> -->
</div>
@ -153,6 +153,9 @@
import * as echarts from 'echarts';
import * as btApi from '../api/home'
// api
import * as homeApi from '@/api/home'
export default {
name: 'HomeView',
data() {
@ -160,37 +163,48 @@ export default {
// ,
klselt: "d",
//
kltdata:[],
kltdata: [],
//
klvdata:[],
klvdata: [],
day_num: 0,
week_num: 0,
mon_num: 0,
year_num: 0,
klqsDatas: [],
ssjgNumDatas: []
}
},
mounted() {
this.showorders()
this.cgrs_line()
this.cgchart()
this.getStat();
this.getHomeBarData();
this.getInfoDatas();
this.getGcgNumDatas()
//
// this.btgetdata(this.klselt)
},
//
methods: {
//
btgetdata(type){
btgetdata(type) {
console.log(type)
let rqtp;
switch(type) {
case 'd':rqtp ="daily";break;
case 'm':rqtp ="monthly";break;
case 'y':rqtp ="yearly";break;
switch (type) {
case 'd': rqtp = "daily"; break;
case 'm': rqtp = "monthly"; break;
case 'y': rqtp = "yearly"; break;
}
//
btApi.allGroupTimeNum({'granularity':rqtp}).then(res=>{
btApi.allGroupTimeNum({ 'granularity': rqtp }).then(res => {
const kldata = res.data.data.allTimeData
//
let kltd=new Array;
let tmpkvd=new Array;
let kltd = new Array;
let tmpkvd = new Array;
const dkeys = res.data.data.dkeys
dkeys.forEach(function(item,idx){
dkeys.forEach(function (item, idx) {
kltd.push(item)
tmpkvd.push(kldata[item].num)
})
@ -211,8 +225,8 @@ export default {
//
var option;
//var data = [100, 200, 100, 200, 100, 200, 250, 50, 30, 130, 150, 110, 120]
var data = this.klvdata
var data = [100, 200, 100, 200, 100, 200, 250, 50, 30, 130, 150, 110, 120]
// var data = this.klvdata
// var data = [Math.random() * 300]
option = {
// backgroundColor: '#031245',
@ -576,6 +590,120 @@ export default {
},
getStat() {
let that = this
console.log(that);
homeApi.allGroupNum().then(res => {
// get allTimeData
const tmpdata = res.data.returnData
console.log(tmpdata);
this.day_num = tmpdata.day.noRepeatInNum
this.week_num_num = tmpdata.week.noRepeatInNum
this.mon_num = tmpdata.month.noRepeatInNum
this.year_num = tmpdata.year.noRepeatInNum
// let btdata = new Array();
// let bvdata = new Array();
// tmpdata.foreach(function(item,index){
// console.log(item);
// console.log(index);
// });
});
},
getHomeBarData() {
let that = this
console.log(that);
homeApi.homeBarData().then(res => {
// get allTimeData
const tmpdata = res.data.data.allTimeData
let datas = []
Object.values(tmpdata).forEach((value) => {
console.log(value.num);
datas.push(value.num)
});
console.log(datas);
this.klqsDatas = datas
console.log(tmpdata);
// this.day_num = tmpdata.day.noRepeatInNum
// this.week_num_num = tmpdata.week.noRepeatInNum
// this.mon_num = tmpdata.month.noRepeatInNum
// this.year_num = tmpdata.year.noRepeatInNum
// let btdata = new Array();
// let bvdata = new Array();
// tmpdata.foreach(function(item,index){
// console.log(item);
// console.log(index);
// });
});
},
getInfoDatas() {
let that = this
console.log(that);
homeApi.allInfoDatas().then(res => {
// get allTimeData
this.ssjgNumDatas = res.data.returnData
// let ssjgNumDatas = this.ssjgNumDatas
// ssjgNumDatas.forEach(item => {
// console.log(parseInt(item.proportion));
// let proportion = parseInt(item.proportion)
// if (proportion >= 80 && proportion <= 90) {
// console.log('11111111');
// this.$refs.proportionbox.addClass('rbrate2')
// }
// if (proportion > 90) {
// console.log('222222');
// // console.log(this.$refs.proportionbox)
// this.$refs.proportionbox.addClass('rbrate3')
// }
// })
// console.log(tmpdata);
// console.log(tmpdata.01.proportion);
// let arr = JSON.stringify(tmpdata)
// console.log(arr);
// this.day_num = tmpdata.day.noRepeatInNum
// this.week_num_num = tmpdata.week.noRepeatInNum
// this.mon_num = tmpdata.month.noRepeatInNum
// this.year_num = tmpdata.year.noRepeatInNum
// let btdata = new Array();
// let bvdata = new Array();
// tmpdata.foreach(function(item,index){
// console.log(item);
// console.log(index);
// });
});
},
getGcgNumDatas() {
let that = this
console.log(that);
homeApi.allGcgNumDatas().then(res => {
// get allTimeData
const tmpdata = res.data.returnData
console.log(tmpdata);
// this.day_num = tmpdata.day.noRepeatInNum
// this.week_num_num = tmpdata.week.noRepeatInNum
// this.mon_num = tmpdata.month.noRepeatInNum
// this.year_num = tmpdata.year.noRepeatInNum
// let btdata = new Array();
// let bvdata = new Array();
// tmpdata.foreach(function(item,index){
// console.log(item);
// console.log(index);
// });
});
}
}
}
@ -645,11 +773,12 @@ export default {
}
.gymbox .gymnum p {
line-height: 1.2;
line-height: 26px;
height: 26px;
font-size: 14px;
font-size: 18px;
font-weight: 600;
display: block;
margin: 0.2667rem auto;
}
/* 數據box */
@ -687,13 +816,15 @@ export default {
}
.numbox .numdiv .ndtitle {
padding-top: 0.4rem;
padding-top: 0.2rem;
font-size: 1.08rem;
font-size: 1.1rem;
margin: 1.3rem 0 1rem;
}
.numbox .numdiv .nddesc {
color: #ccc;
font-size: 0.4rem;
font-size: 0.32rem;
padding-bottom: 0.2rem;
}
@ -712,7 +843,9 @@ export default {
/* width: 80%; */
margin-left: 4rem;
/* padding-left: 6.4rem; */
font-size: 1.6rem;
line-height: 2.8rem;
font-size: 1.1rem;
color: gray;
}
.klqs .klbtn {
@ -801,6 +934,18 @@ export default {
margin-left: 0.46rem;
}
.cgbox .cgleft ul li:nth-child(3) span:nth-child(2) {
display: block;
float: left;
margin-left: 0.06rem;
}
.cgbox .cgleft ul li:nth-child(3) span:nth-child(3) {
display: block;
float: left;
margin-left: 0.16rem;
}
.cgbox .cglist ul li span img {
width: 0.68rem;
height: 0.68rem;
@ -824,10 +969,11 @@ export default {
background-size: 100% 100%;
background-position: 0 0;
height: 3.2rem;
line-height: 2.86rem;
line-height: 2.8rem;
background-position: -1.04rem 0.2rem;
padding-left: 4.6rem;
font-size: 1.6rem;
font-size: 1.1rem;
color: gray;
}
/** 各場館實時 */
@ -842,9 +988,11 @@ export default {
background-repeat: no-repeat;
background-size: 100%;
height: 3.8rem;
line-height: 2.8rem;
background-position: -1.04rem 0.2rem;
padding-left: 4.6rem;
font-size: 1.6rem;
font-size: 1.1rem;
color: gray;
}
.pcgrs .pcg_item {
@ -855,31 +1003,61 @@ export default {
width: 48%;
float: left;
margin-left: 2%;
position: relative;
}
.pcgrs .pcg_item .pcpos {
text-align: right;
font-size: 0.68rem;
display: block;
width: 3.5rem;
text-align: left;
float: right;
margin-top: 1.6rem;
padding-right: 1.18rem;
/* padding-right: 0.9rem; */
}
.pcgrs .pcg_item .pcval {
font-size: 1.086rem;
margin-top: 6rem;
width: 68%;
margin-top: 3.75rem;
width: 69%;
display: block;
float: left;
text-align: center;
}
/* .pcgrs .pcg_item:nth-child(6) .pcval {
font-size: 1.086rem;
margin-top: 3.5rem;
width: 66%;
display: block;
float: left;
text-align: center;
} */
.pcgrs .pcg_item .pcrate {
/* width: 32%; */
width: 32%;
height: 3.3rem;
line-height: 3.3rem;
display: block;
float: left;
font-size: 0.86rem;
margin-top: 4rem;
font-size: 0.46rem;
margin-top: 3.78rem;
text-align: center;
}</style>
position: absolute;
bottom: 3.5rem;
right: 0.8rem;
background-image: url('../assets/img/安静.png');
background-size: 100% 100%;
background-position: 100% 100%;
background-repeat: no-repeat;
}
.pcgrs .pcg_item .pcrate2 {
background-image: url('../assets/img/舒适.png');
}
.pcgrs .pcg_item .pcrate3 {
background-image: url('../assets/img/拥挤.png');
}
</style>

54
src/views/WhView.vue

@ -50,13 +50,13 @@
</div>
</div>
<!-- 24小时进馆人数趋势 -->
<div class="gcins">
<div class="gcins_title">24小时进馆人数趋势</div>
<div id="gcins_charts" style="height:16rem"></div>
</div>
<!-- 各场馆人数趋势 -->
<div class="gcgrs">
<div class="gcgrs_title">各场馆人数趋势</div>
@ -128,7 +128,7 @@
background-repeat: no-repeat;
background-size: 100% 100%;
background-position: 0 0;
padding-left: 3.2rem;
padding-left: 4.6rem;
height: 2.06rem;
line-height: 2.06rem;
}
@ -160,6 +160,7 @@
.jgbox .jgcon .jgitem .jgival {
font-size: 1.06rem;
font-weight: bold;
}
.jgbox .jgcon .jgitem .jgdesc {
@ -168,31 +169,37 @@
}
/* 24小时进馆人数 */
.dgins{
.dgins {
margin-top: 1.2rem;
}
.dgins .dgins_title{
.dgins .dgins_title {
background-image: url("../assets/img/wh_24ins_bg.png");
background-position: 0 0;
background-repeat: no-repeat;
background-size: 100% 100%;
height: 3rem;
}
.dgins .dgins_title span{
.dgins .dgins_title span {
display: block;
line-height: 1.8rem;
line-height: 2rem;
width: 100%;
text-align: center;
font-size: 0.9rem;
}
.dgins .dgins_con{
.dgins .dgins_con {
height: 6rem;
padding-top: 1rem;
}
.dgins .dgins_con .dgitem{
.dgins .dgins_con .dgitem {
width: 30%;
margin-left: 3%;
float: left;
}
.dgins .dgins_con .dgitem .dgimg {
margin-left: auto;
margin-right: auto;
@ -216,6 +223,7 @@
background-position: center center;
background-repeat: no-repeat;
}
/* 24小时总进馆人数趋势 */
.gcins {
margin-top: 2.6rem;
@ -275,6 +283,10 @@
</style>
<script>
import * as echarts from 'echarts';
// api
import * as homeApi from '@/api/home'
export default {
name: 'TycView',
data() {
@ -289,6 +301,8 @@ export default {
this.gc_line()
//
this.tsg_line()
this.getTsgInfoDatas()
},
methods: {
//
@ -738,6 +752,28 @@ export default {
option && myChart.setOption(option);
},
getTsgInfoDatas() {
let that = this
console.log(that);
homeApi.allTsgInfoDatas().then(res => {
// get allTimeData
const tmpdata = res.data
console.log(tmpdata);
// this.day_num = tmpdata.day.noRepeatInNum
// this.week_num_num = tmpdata.week.noRepeatInNum
// this.mon_num = tmpdata.month.noRepeatInNum
// this.year_num = tmpdata.year.noRepeatInNum
// let btdata = new Array();
// let bvdata = new Array();
// tmpdata.foreach(function(item,index){
// console.log(item);
// console.log(index);
// });
});
}
},
}
</script>
Loading…
Cancel
Save