diff --git a/components/Head/index.js b/components/Head/index.js
new file mode 100644
index 0000000..90d9c00
--- /dev/null
+++ b/components/Head/index.js
@@ -0,0 +1,21 @@
+const App = getApp();
+Component({
+ properties: {},
+
+ data: {
+ statusHeight: 0,
+ navigationHeight: 0,
+ agencyName: '',
+ },
+ lifetimes: {
+ ready: function () {
+ this.setData({
+ statusHeight: App.globalData.deviceInfo.statusHeight,
+ navigationHeight: App.globalData.deviceInfo.navigationHeight,
+ agencyName: App.globalData.user.agencyName,
+ })
+ },
+ },
+
+ methods: {}
+});
diff --git a/components/Head/index.json b/components/Head/index.json
new file mode 100644
index 0000000..78013bd
--- /dev/null
+++ b/components/Head/index.json
@@ -0,0 +1,5 @@
+{
+ "component": true,
+ "usingComponents": {
+ }
+}
\ No newline at end of file
diff --git a/components/Head/index.wxml b/components/Head/index.wxml
new file mode 100644
index 0000000..a1f4ed1
--- /dev/null
+++ b/components/Head/index.wxml
@@ -0,0 +1,10 @@
+
+
\ No newline at end of file
diff --git a/components/Head/index.wxss b/components/Head/index.wxss
new file mode 100644
index 0000000..63c4b37
--- /dev/null
+++ b/components/Head/index.wxss
@@ -0,0 +1,44 @@
+.header {
+
+}
+
+.header .navigation {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: start;
+ font-size: 32rpx;
+ font-weight: 500;
+ color: #333333;
+ padding-left: 20rpx;
+ overflow: hidden;
+ z-index: 999999;
+}
+
+.header .navigation .icon {
+ width: 34rpx;
+ height: 34rpx;
+ margin-right: 17rpx;
+}
+.header .navigation .con {
+ position: relative;
+ z-index: 2;
+}
+.header .navigation .nav-bg {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: unset;
+}
+.header-bg {
+ width: 100%;
+ overflow: hidden;
+ position: absolute;
+ top: 0;
+ left: 0;
+ z-index: -1;
+}
diff --git a/components/Tabs/index.js b/components/Tabs/index.js
new file mode 100644
index 0000000..1fdb5be
--- /dev/null
+++ b/components/Tabs/index.js
@@ -0,0 +1,18 @@
+Component({
+ properties: {
+ tabList: {
+ type: Array
+ }
+ },
+ data: {
+ cur: 0
+ },
+ methods: {
+ tabChange(e) {
+ this.setData({
+ cur: e.currentTarget.dataset.index
+ })
+ this.triggerEvent("tabChange",e.currentTarget.dataset.index)
+ }
+ }
+});
diff --git a/components/Tabs/index.json b/components/Tabs/index.json
new file mode 100644
index 0000000..78013bd
--- /dev/null
+++ b/components/Tabs/index.json
@@ -0,0 +1,5 @@
+{
+ "component": true,
+ "usingComponents": {
+ }
+}
\ No newline at end of file
diff --git a/components/Tabs/index.wxml b/components/Tabs/index.wxml
new file mode 100644
index 0000000..1bfbae4
--- /dev/null
+++ b/components/Tabs/index.wxml
@@ -0,0 +1,11 @@
+
+
+ {{item.label}}
+
+
+
\ No newline at end of file
diff --git a/components/Tabs/index.wxss b/components/Tabs/index.wxss
new file mode 100644
index 0000000..0ecb90c
--- /dev/null
+++ b/components/Tabs/index.wxss
@@ -0,0 +1,40 @@
+.tab {
+ display: flex;
+}
+.tab .tab-item {
+ background: #F4F8FE;
+ border: 2px solid #D6E6FC;
+ border-radius: 6rpx;
+ flex: 1;
+ padding: 25rpx 0;
+ font-size: 30rpx;
+ font-weight: 500;
+ color: #999999;
+ margin: 0 15rpx 30rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+.tab .tab-item.cur {
+ color: #3A80E7;
+ position: relative;
+}
+.cur-img {
+ display: none;
+}
+.tab .tab-item.cur:before {
+ content: '';
+ display: block;
+ height: 5rpx;
+ width: 100%;
+ background: #3A80E7;
+ position: absolute;
+ bottom: 0;
+ left: 0;
+}
+.tab .tab-item.cur .cur-img {
+ display: block;
+ position: absolute;
+ bottom: -8rpx;
+ left: calc(50% - 6rpx);
+}
\ No newline at end of file
diff --git a/images/statistics/icon-home.png b/images/statistics/icon-home.png
new file mode 100644
index 0000000..e0b2a78
Binary files /dev/null and b/images/statistics/icon-home.png differ
diff --git a/images/statistics/nav_bg.jpg b/images/statistics/nav_bg.jpg
new file mode 100644
index 0000000..1b9dda1
Binary files /dev/null and b/images/statistics/nav_bg.jpg differ
diff --git a/images/statistics/sel.png b/images/statistics/sel.png
new file mode 100644
index 0000000..5cd89eb
Binary files /dev/null and b/images/statistics/sel.png differ
diff --git a/images/statistics/sub-tit.png b/images/statistics/sub-tit.png
new file mode 100644
index 0000000..f8e061d
Binary files /dev/null and b/images/statistics/sub-tit.png differ
diff --git a/pages/statistics/modules/CrowdPortrait/CrowdPortrait.js b/pages/statistics/modules/CrowdPortrait/CrowdPortrait.js
new file mode 100644
index 0000000..c6850e4
--- /dev/null
+++ b/pages/statistics/modules/CrowdPortrait/CrowdPortrait.js
@@ -0,0 +1,20 @@
+Component({
+ properties: {},
+ data: {
+ tabList: [{
+ label: "按省及社区满意度\n调查结果",
+ value: 1
+ },{
+ label: '按12345热线\n投诉结果',
+ value: 2
+ }],
+ tabValue: ''
+ },
+ methods: {
+ tabChange(index) {
+ this.setData({
+ tabValue: this.tabList[index].value
+ })
+ }
+ }
+});
diff --git a/pages/statistics/modules/CrowdPortrait/CrowdPortrait.json b/pages/statistics/modules/CrowdPortrait/CrowdPortrait.json
new file mode 100644
index 0000000..1681017
--- /dev/null
+++ b/pages/statistics/modules/CrowdPortrait/CrowdPortrait.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "Tabs": "../../../../components/Tabs"
+ }
+}
\ No newline at end of file
diff --git a/pages/statistics/modules/CrowdPortrait/CrowdPortrait.wxml b/pages/statistics/modules/CrowdPortrait/CrowdPortrait.wxml
new file mode 100644
index 0000000..03bfb1a
--- /dev/null
+++ b/pages/statistics/modules/CrowdPortrait/CrowdPortrait.wxml
@@ -0,0 +1,5 @@
+
+
+
+ 不满意人员画像
+
\ No newline at end of file
diff --git a/pages/statistics/modules/CrowdPortrait/CrowdPortrait.wxss b/pages/statistics/modules/CrowdPortrait/CrowdPortrait.wxss
new file mode 100644
index 0000000..6f1f139
--- /dev/null
+++ b/pages/statistics/modules/CrowdPortrait/CrowdPortrait.wxss
@@ -0,0 +1,14 @@
+
+.sub-tit {
+ font-size: 32rpx;
+ font-weight: 500;
+ color: #333333;
+ display: flex;
+ align-items: center;
+ margin: 30rpx 0;
+}
+.sub-tit image {
+ margin-right: 12rpx;
+ width: 20rpx;
+ height: 20rpx;
+}
\ No newline at end of file
diff --git a/pages/statistics/modules/EventPrediction/EventPrediction.js b/pages/statistics/modules/EventPrediction/EventPrediction.js
new file mode 100644
index 0000000..ee42eae
--- /dev/null
+++ b/pages/statistics/modules/EventPrediction/EventPrediction.js
@@ -0,0 +1,5 @@
+Component({
+ properties: {},
+ data: {},
+ methods: {}
+});
diff --git a/pages/statistics/modules/EventPrediction/EventPrediction.json b/pages/statistics/modules/EventPrediction/EventPrediction.json
new file mode 100644
index 0000000..78013bd
--- /dev/null
+++ b/pages/statistics/modules/EventPrediction/EventPrediction.json
@@ -0,0 +1,5 @@
+{
+ "component": true,
+ "usingComponents": {
+ }
+}
\ No newline at end of file
diff --git a/pages/statistics/modules/EventPrediction/EventPrediction.wxml b/pages/statistics/modules/EventPrediction/EventPrediction.wxml
new file mode 100644
index 0000000..0705d21
--- /dev/null
+++ b/pages/statistics/modules/EventPrediction/EventPrediction.wxml
@@ -0,0 +1,23 @@
+
+
+
+ 事件未解决
+ 的人数
+
+ 76
+
+
+
+ 需求未满足
+ 的人数
+
+ 24
+
+
+
+ 应享未享服务
+ 的人数
+
+ 13
+
+
\ No newline at end of file
diff --git a/pages/statistics/modules/EventPrediction/EventPrediction.wxss b/pages/statistics/modules/EventPrediction/EventPrediction.wxss
new file mode 100644
index 0000000..f2bae88
--- /dev/null
+++ b/pages/statistics/modules/EventPrediction/EventPrediction.wxss
@@ -0,0 +1,41 @@
+.num-list {
+ display: flex;
+ width: 100%;
+ justify-content: space-between;
+ position: relative;
+}
+.num-list .num-item {
+}
+.num-list .num-item:after {
+ content: '';
+ display: block;
+ position: absolute;
+ right: 0;
+ top: calc(50% - 45rpx);
+ width: 1rpx;
+ height: 90rpx;
+ background: #C1C1C1;
+ opacity: 0.66;
+}
+.num-list .num-item:nth-of-type(1):after {
+ left: 33.333333%;
+}
+.num-list .num-item:nth-of-type(2):after {
+ left: 66.666666%;
+}
+.num-list .num-item:last-child:after {
+ display: none;
+}
+.num-list .num-item .txt {
+ font-size: 28rpx;
+ font-weight: 500;
+ color: #999999;
+ line-height: 38rpx;
+ margin-bottom: 30rpx;
+}
+.num-list .num-item .num {
+ font-size: 42rpx;
+ font-weight: bold;
+ color: #333333;
+ line-height: 42rpx;
+}
\ No newline at end of file
diff --git a/pages/statistics/modules/HotlineComplaints/HotlineComplaints.js b/pages/statistics/modules/HotlineComplaints/HotlineComplaints.js
new file mode 100644
index 0000000..7f6353e
--- /dev/null
+++ b/pages/statistics/modules/HotlineComplaints/HotlineComplaints.js
@@ -0,0 +1,95 @@
+import * as echarts from '../../../../ec-canvas/echarts';
+function initChart(canvas, width, height, dpr) {
+ const chart = echarts.init(canvas, null, {
+ width: width,
+ height: height,
+ devicePixelRatio: dpr // 像素比
+ });
+ canvas.setChart(chart);
+
+ let data = [
+ {value: 120, name: '市容环境'},
+ {value: 150, name: '停车管理'},
+ {value: 210, name: '物业服务'},
+ {value: 177, name: '城市低保'},
+ {value: 194, name: '违章建房'},
+ ];
+ let color = ["#4F94FF","#A182FB","#27D1A7","#FCBF06","#FF7108"]
+ var option = {
+ color,
+ tooltip: {
+ show: true,
+ textStyle: {
+ color: '#fff',
+ fontSize: 14
+ },
+ backgroundColor: "#04229a",
+ // extraCssText: "box-shadow: 2px 2px 4px 0px rgba(0,0,0,0.3);",
+ formatter(params) {
+ // console.log(params)
+ if (params.name === '') {
+ return '';
+ }
+ return `${params.name} : ${params.percent}%`;
+ },
+ },
+ series: [
+ {
+ name: '',
+ type: 'pie',
+ radius: ['40%', '70%'],
+ center: ['50%', '50%'], // 修改为居中
+ avoidLabelOverlap: true,
+ label: {
+ color: '#333333',
+ alignTo: 'labelLine',
+ formatter: '{num|{c}}\n{name|{b}}',
+ minMargin: 5,
+ edgeDistance: 10,
+ lineHeight: 15,
+ rich: {
+ num: {
+ fontSize: 17,
+ color: '#333333'
+ },
+ zb: {
+ fontSize: 14,
+ color: '#333333'
+ }
+ }
+ },
+ labelLine: {
+ length: 15,
+ length2: 0,
+ maxSurfaceAngle: 80
+ },
+ data: data
+ }
+ ]
+ };
+ chart.setOption(option);
+ return chart;
+}
+Component({
+ properties: {},
+ data: {
+ ec: {
+ onInit: initChart
+ },
+ tabList: [{
+ label: "问题突出类别",
+ value: 1
+ },{
+ label: '行业领域分析',
+ value: 2
+ }],
+ tabValue: ''
+ },
+ methods: {
+ tabChange(index) {
+ this.setData({
+ tabValue: this.tabList[index].value
+ })
+ }
+ }
+});
diff --git a/pages/statistics/modules/HotlineComplaints/HotlineComplaints.json b/pages/statistics/modules/HotlineComplaints/HotlineComplaints.json
new file mode 100644
index 0000000..2b0583c
--- /dev/null
+++ b/pages/statistics/modules/HotlineComplaints/HotlineComplaints.json
@@ -0,0 +1,7 @@
+{
+ "component": true,
+ "usingComponents": {
+ "Tabs": "../../../../components/Tabs",
+ "ec-canvas": "../../../../ec-canvas/ec-canvas"
+ }
+}
\ No newline at end of file
diff --git a/pages/statistics/modules/HotlineComplaints/HotlineComplaints.wxml b/pages/statistics/modules/HotlineComplaints/HotlineComplaints.wxml
new file mode 100644
index 0000000..21b6e53
--- /dev/null
+++ b/pages/statistics/modules/HotlineComplaints/HotlineComplaints.wxml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/pages/statistics/modules/HotlineComplaints/HotlineComplaints.wxss b/pages/statistics/modules/HotlineComplaints/HotlineComplaints.wxss
new file mode 100644
index 0000000..55fdd89
--- /dev/null
+++ b/pages/statistics/modules/HotlineComplaints/HotlineComplaints.wxss
@@ -0,0 +1,8 @@
+ec-canvas {
+ width: 100%;
+ height: 100%;
+}
+.hotlineComplaints {
+ width: 100%;
+ height: 318rpx;
+}
\ No newline at end of file
diff --git a/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.js b/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.js
new file mode 100644
index 0000000..7715b7c
--- /dev/null
+++ b/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.js
@@ -0,0 +1,141 @@
+import * as echarts from '../../../../ec-canvas/echarts';
+
+function initChart(canvas, width, height, dpr) {
+ const chart = echarts.init(canvas, null, {
+ width: width,
+ height: height,
+ devicePixelRatio: dpr // 像素比
+ });
+ canvas.setChart(chart);
+ var dataname = ['老有所养', '社会治安', '生态环境', '体育设施', '社会救助', '文化设施', '基础教育', '病有所医']
+ var datamax = [20, 20, 20, 20, 20, 20, 20, 20]
+ var datavaule = [10, 16, 18, 15, 12, 18, 18, 18]
+ var datavaule2 = [12, 17, 20, 16, 13, 19, 19, 19]
+ var indicator = []
+ for (var i = 0; i < dataname.length; i++) {
+ indicator.push({
+ name: dataname[i],
+ max: datamax[i],
+ })
+ }
+ var option = {
+ tooltip: {
+ show: false,
+ trigger: "item",
+ },
+ legend: {
+ show: true,
+ textStyle: {
+ color: '#999999',
+ rich: {
+ name: {
+ fontSize: 14,
+ lineHeight: 19,
+ padding: [20, 0, 0, 0]
+ },
+ }
+ },
+ itemWidth: 6,
+ itemHeight: 6,
+ y: 'bottom',
+ x: 'center',
+ formatter: name => {
+ return `{name|${name}}`
+ },
+ data: ['省满意度调查\n各项不满意人数', '社区满意度自查\n各项不满意人数'],
+ },
+ radar: {
+ center: ["50%", "40%"],
+ radius: "50%",
+ startAngle: 90,
+ splitNumber: 5,
+ splitArea: {
+ areaStyle: {
+ color: 'transparent'
+ }
+ },
+ axisLabel: {
+ show: false,
+ },
+ axisLine: {
+ show: true,
+ lineStyle: {
+ color: "rgba(226,226,226,0.28)"
+ }
+ },
+ splitLine: {
+ show: true,
+ lineStyle: {
+ color: "rgba(226,226,226,0.61)"
+ }
+ },
+ name: {
+ textStyle: {
+ color: '#333333',
+ fontSize: 14,
+ borderRadius: 3,
+ }
+ },
+ indicator: indicator
+ },
+
+ series: [{
+ name: "省满意度调查\n各项不满意人数",
+ type: "radar",
+ symbol: "circle",
+ symbolSize: 0,
+ areaStyle: {
+ normal: {
+ color: 'rgba(58,128,231,0.36)',
+ }
+ },
+ itemStyle: {
+ color: '#3A80E7',
+ borderColor: '#3AB7FF',
+ borderWidth: 1,
+ },
+ lineStyle: {
+ normal: {
+ color: "#3AB7FF",
+ width: 2
+ }
+ },
+ data: [datavaule]
+ }, {
+ name: "社区满意度自查\n各项不满意人数",
+ type: "radar",
+ symbol: "circle",
+ symbolSize: 0,
+ areaStyle: {
+ normal: {
+ color: 'rgba(170, 216, 255, 0)',
+ }
+ },
+ itemStyle: {
+ color: '#EB8E16',
+ borderColor: '#EF9700',
+ borderWidth: 1,
+ },
+ lineStyle: {
+ normal: {
+ color: "#EF9700",
+ width: 2
+ }
+ },
+ data: [datavaule2]
+ }]
+ };
+ chart.setOption(option);
+ return chart;
+}
+
+Component({
+ properties: {},
+ data: {
+ ec: {
+ onInit: initChart
+ }
+ },
+ methods: {
+ }
+});
diff --git a/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.json b/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.json
new file mode 100644
index 0000000..fd2b1bc
--- /dev/null
+++ b/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "ec-canvas": "../../../../ec-canvas/ec-canvas"
+ }
+}
\ No newline at end of file
diff --git a/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.wxml b/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.wxml
new file mode 100644
index 0000000..18faa43
--- /dev/null
+++ b/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.wxml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.wxss b/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.wxss
new file mode 100644
index 0000000..d034ecb
--- /dev/null
+++ b/pages/statistics/modules/SmyddcSqmydzc/SmyddcSqmydzc.wxss
@@ -0,0 +1,8 @@
+ec-canvas {
+ width: 100%;
+ height: 100%;
+}
+.smyddcSqmydzc {
+ width: 100%;
+ height: 558rpx;
+}
\ No newline at end of file
diff --git a/pages/statistics/modules/Trend/Trend.js b/pages/statistics/modules/Trend/Trend.js
new file mode 100644
index 0000000..8ac27a9
--- /dev/null
+++ b/pages/statistics/modules/Trend/Trend.js
@@ -0,0 +1,176 @@
+import * as echarts from '../../../../ec-canvas/echarts';
+
+function initChart(canvas, width, height, dpr) {
+ const chart = echarts.init(canvas, null, {
+ width: width,
+ height: height,
+ devicePixelRatio: dpr // 像素比
+ });
+ canvas.setChart(chart);
+ let xData = ['10月', '11月', '12月', '1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月'];
+ let tq1 = [12, 20, 30, 60, 49, 18, 90, 48, 39, 30, 27, 40, 48, 39, 27, 49];
+ let tq2 = [10, 50, 50, 27, 49, 58, 80, 80, 19, 60, 30, 30, 49, 18, 90, 20];
+ let tq3 = [300, 90, 48, 39, 30, 27, 49, 18, 90, 39, 27, 49, 30, 100, 49, 100];
+
+ var option = {
+ title: {
+ show: false,
+ text: '',
+ x: 'center',
+ top: '15px',
+ textStyle: {
+ color: '#333333',
+ fontWeight: 500,
+ fontSize: 18,
+ },
+ },
+
+ legend: {
+ // icon: 'circle',
+ data: ['12345投诉事件数', '省调查不满意数', '社区自查不满意数'],
+ itemGap: 12,
+ itemWidth: 12,
+ itemHeight: 5,
+ x: 'left',
+ top: '0%',
+ textStyle: {
+ color: '#999999',
+ fontSize: 10,
+ // padding:[0, 10, 0, 10],
+ }
+ },
+ grid: {
+ top: '18%',
+ left: '2%',
+ right: '4%',
+ bottom: '8%',
+ containLabel: true
+ },
+ xAxis: [
+ {
+ type: 'category',
+ axisTick: {
+ show: false,
+ },
+ splitLine: {
+ show: false,
+ },
+ axisLine: {
+ lineStyle: {
+ color: '#323c41'
+ }
+ },
+ axisLabel: {
+ interval: 0,
+ align: 'center',
+ textStyle: {
+ fontSize: 11,
+ color: '#C1C1C1'
+ }
+ },
+ boundaryGap: true,
+ data: xData,
+ },
+ ],
+
+ yAxis: [
+ {
+ type: 'value',
+ splitLine: {
+ show: false
+ },
+ axisLabel: {
+ show: true,
+ color: '#999999',
+ textStyle: {
+ fontSize: 11
+ }
+ },
+ axisTick: {
+ show: false
+ }
+ }
+
+ ],
+ series: [
+ {
+ name: '12345投诉事件数',
+ type: 'line',
+ showAllSymbol: true,
+ symbol: 'circle',
+ symbolSize: 0,
+ lineStyle: {
+ normal: {
+ color: '#3A80E7',
+ },
+ },
+ label: {
+ show: false,
+ },
+ itemStyle: {
+ show: false,
+ color: '#FFF',
+ borderColor: '#3A80E7',
+ borderWidth: 1,
+ },
+ data: tq1,
+ },
+ {
+ name: '省调查不满意数',
+ type: 'line',
+ showAllSymbol: true,
+ symbol: 'circle',
+ symbolSize: 0,
+ lineStyle: {
+ normal: {
+ color: '#EB8E16',
+ },
+ },
+ label: {
+ show: false,
+ },
+ itemStyle: {
+ color: '#fff',
+ borderColor: '#EB8E16',
+ borderWidth: 1,
+ },
+ data: tq2, //data.values
+ },
+ {
+ name: '社区自查不满意数',
+ type: 'line',
+ yIndex: 0,
+ showAllSymbol: true,
+ symbol: 'circle',
+ symbolSize: 0,
+ lineStyle: {
+ normal: {
+ color: '#10B2A5',
+ },
+ },
+ label: {
+ show: false,
+ },
+ itemStyle: {
+ color: '#fff',
+ borderColor: '#10B2A5',
+ borderWidth: 1,
+ },
+ data: tq3, //data.values
+ }
+ ],
+ };
+ chart.setOption(option);
+ return chart;
+}
+
+Component({
+ properties: {},
+ data: {
+ ec: {
+ onInit: initChart
+ }
+ },
+ methods: {
+ }
+});
diff --git a/pages/statistics/modules/Trend/Trend.json b/pages/statistics/modules/Trend/Trend.json
new file mode 100644
index 0000000..fd2b1bc
--- /dev/null
+++ b/pages/statistics/modules/Trend/Trend.json
@@ -0,0 +1,6 @@
+{
+ "component": true,
+ "usingComponents": {
+ "ec-canvas": "../../../../ec-canvas/ec-canvas"
+ }
+}
\ No newline at end of file
diff --git a/pages/statistics/modules/Trend/Trend.wxml b/pages/statistics/modules/Trend/Trend.wxml
new file mode 100644
index 0000000..2dc7f02
--- /dev/null
+++ b/pages/statistics/modules/Trend/Trend.wxml
@@ -0,0 +1,3 @@
+
+
+
diff --git a/pages/statistics/modules/Trend/Trend.wxss b/pages/statistics/modules/Trend/Trend.wxss
new file mode 100644
index 0000000..eebed58
--- /dev/null
+++ b/pages/statistics/modules/Trend/Trend.wxss
@@ -0,0 +1,8 @@
+ec-canvas {
+ width: 100%;
+ height: 100%;
+}
+.trend {
+ width: 100%;
+ height: 338rpx;
+}
\ No newline at end of file
diff --git a/pages/statistics/statistics.js b/pages/statistics/statistics.js
index 4108baf..1bd80a7 100644
--- a/pages/statistics/statistics.js
+++ b/pages/statistics/statistics.js
@@ -1,6 +1,24 @@
const app = getApp()
Page({
data: {
+ monthOptions: [{
+ value: 1,
+ label: '本月'
+ },{
+ value: 2,
+ label: '上月'
+ },{
+ value: 3,
+ label: '近3月'
+ },{
+ value: 4,
+ label: '近半年'
+ },{
+ value: 5,
+ label: '近1年'
+ }],
+ monthIndex: 0,
+
},
onLoad(options) {
this.setData({
@@ -8,5 +26,10 @@ Page({
navigationHeight: app.globalData.deviceInfo.navigationHeight,
agencyName:app.globalData.user.agencyName,
})
+ },
+ monthChange({currentTarget:{dataset:{index}}}) {
+ this.setData({
+ monthIndex: index
+ })
}
})
\ No newline at end of file
diff --git a/pages/statistics/statistics.json b/pages/statistics/statistics.json
index cf3facb..6fe2293 100644
--- a/pages/statistics/statistics.json
+++ b/pages/statistics/statistics.json
@@ -1,4 +1,11 @@
{
"navigationStyle": "custom",
- "usingComponents": {}
+ "usingComponents": {
+ "Head": "../../components/Head",
+ "Trend": "./modules/Trend/Trend",
+ "SmyddcSqmydzc": "./modules/SmyddcSqmydzc/SmyddcSqmydzc",
+ "HotlineComplaints": "./modules/HotlineComplaints/HotlineComplaints",
+ "EventPrediction": "./modules/EventPrediction/EventPrediction",
+ "CrowdPortrait": "./modules/CrowdPortrait/CrowdPortrait"
+ }
}
\ No newline at end of file
diff --git a/pages/statistics/statistics.wxml b/pages/statistics/statistics.wxml
index a5f3769..7ed2778 100644
--- a/pages/statistics/statistics.wxml
+++ b/pages/statistics/statistics.wxml
@@ -1,7 +1,53 @@
-
diff --git a/pages/statistics/statistics.wxss b/pages/statistics/statistics.wxss
index c3923ef..915a893 100644
--- a/pages/statistics/statistics.wxss
+++ b/pages/statistics/statistics.wxss
@@ -1,34 +1,76 @@
-
-.header {
- width: 100%;
- height: 470rpx;
- /* position: fixed;
- top: 0;
- left: 0;
- z-index: 1000; */
- background: linear-gradient(180deg, #116FED 0%, #66A6FD 63%, #F7F7F7 100%);
- overflow: hidden;
-}
-.header .header-bg {
- width: 100%;
- height: 444rpx;
- position: absolute;
- height: 100%;
- z-index: -999;
+.statistics-container {
+ padding: 20rpx;
}
-.header .navigation {
- width: 100%;
+.card {
+ background: #fff;
+ border-radius: 20rpx;
+ padding: 30rpx;
+ margin-bottom: 20rpx;
+}
+.card .title {
+ font-size: 34rpx;
+ font-weight: bold;
+ color: #333333;
display: flex;
align-items: center;
- justify-content: start;
- color: #fff;
- font-size: 32rpx;
+ margin-left: -30rpx;
+ margin-bottom: 39rpx;
position: relative;
- padding-left: 20rpx;
- z-index: 100;
}
-.header .navigation image{
- width: 34rpx;
- height: 34rpx;
- margin-right: 17rpx;
+.card .title:before {
+ content: '';
+ display: block;
+ width: 10rpx;
+ height: 28rpx;
+ background: #3A80E7;
+ border-radius: 4rpx;
+ margin-right: 20rpx;
+}
+.card .title .view {
+ font-size: 28rpx;
+ font-weight: 400;
+ color: #999999;
+ display: flex;
+ align-items: center;
+ position: absolute;
+ right: 0;
+ top: 0;
+}
+.card .title .view image {
+ width: 24rpx;
+}
+page {
+ background: #f7f7f7;
+}
+
+.tag-list {
+ display: flex;
+ margin: 0 -8rpx;
+ justify-content: space-between;
+}
+.tag-list .tag {
+ padding: 10rpx 20rpx;
+ font-size: 28rpx;
+ margin: 0 8rpx;
+ color: #3A80E7;
+ background: #F1F6FF;
+ border: 1px solid #3A80E7;
+ border-radius: 1000rpx;
+}
+.tag-list .tag.cur {
+ background: #3A80E7;
+ color: #ffff;
+}
+.sub-tit {
+ font-size: 32rpx;
+ font-weight: 500;
+ color: #333333;
+ display: flex;
+ align-items: center;
+ margin: 30rpx 0;
+}
+.sub-tit image {
+ margin-right: 12rpx;
+ width: 20rpx;
+ height: 20rpx;
}
\ No newline at end of file