passenger.vue
2.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<template>
<view>
<headerComp :title="titleStr"></headerComp>
<view class="listBox">
<view class="itemBox" v-for="item in listData" :key="item.src" @tap="goReport(item.src)">
<img class="icons" :src="item.iconSrc"/>
<span class="texts">{{item.text}}</span>
<img class="arrows" :src="item.rArrow" alt=""/>
</view>
</view>
</view>
</template>
<script>
import headerComp from '../../components/header'
import arrow from '../../static/analysis/rArrow.png'
import baseIcon from '../../static/analysis/base.png'
import inout from '../../static/analysis/inout.png'
import { mapState } from 'vuex'
export default {
components: {
headerComp
},
data() {
return {
titleStr:'精准客流',
listData:[{
text:"抓拍记录",
iconSrc:baseIcon,
rArrow:arrow,
src:'captureReport/capture'
},{
text:"客群分时统计",
iconSrc:inout,
rArrow:arrow,
src:'groupTimeReport/groupTime'
}],
}
},
created() {
this.$store.dispatch('malls/getMallList', {
data: {
accountId: this.getStorage('accountId'),
_t:Date.parse(new Date()) / 1000
},
header: {
'Authorization': this.getStorage('atoken') //自定义请求头信息
},
isMultiple: true
})
this.$store.dispatch('malls/getDateData', 15);
uni.setStorage({
key: 'personType',
data: JSON.stringify({id: 1, name: '全部类型', value: ''})
})
},
computed: {
...mapState({
checkedMallId: state => state.malls.checkedMallId
})
},
watch: {
checkedMallId(val) {
this.$store.dispatch('malls/getGateList', {
data: {
mallId: val.id,
status: 1,
isHasFace: 1,
_t:Date.parse(new Date()) / 1000
},
header: {
'Authorization': this.getStorage('atoken') //自定义请求头信息
},
isMultiple: true
})
},
},
methods: {
goReport(url){
uni.navigateTo({
url:url,
animationType: 'slide-in-right',
animationDuration: 200
})
},
},
}
</script>
<style>
.listBox{
padding: 18.11upx 21.73upx;
}
.itemBox{
padding: 25.36upx 0;
background: #FFFFFF;
position: relative;
margin-bottom: 18.11upx;
}
.itemBox:active{
background: #EEEEEE;
}
.icons{
width: 28.98upx;
position: absolute;
top: 48.91upx;
left: 43.47upx;
}
.texts{
display: inline-block;
height: 68.84upx;
line-height: 68.84upx;
border-left:3.62upx #EEEEEE solid;
padding-left: 34.42upx;
font-size: 25.4upx;
color: #000000;
margin-left:115.94upx;
}
.arrows{
width: 14.49upx;
height: 25.36upx;
position: absolute;
right: 25.36upx;
top: 47.1upx;
}
</style>