diff --git a/src/assets/images/bg.jpg b/src/assets/images/bg.jpg index 80b13bb..0c775c6 100644 Binary files a/src/assets/images/bg.jpg and b/src/assets/images/bg.jpg differ diff --git a/src/router/index.ts b/src/router/index.ts index 4c99a0e..569a5bb 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -172,7 +172,7 @@ export const dynamicRoutes: RouteOption[] = [ path: '/activity', component: Layout, hidden: true, - permissions: ['scale:SysScale:edit'], + permissions: ['scale:publish:query'], children: [ { path: 'index/:batchNo/:sessionName', diff --git a/src/views/activity/component/schedule/index.vue b/src/views/activity/component/schedule/index.vue index 98b9acd..2c0e16c 100644 --- a/src/views/activity/component/schedule/index.vue +++ b/src/views/activity/component/schedule/index.vue @@ -124,6 +124,10 @@ const queryParams = ref({ const getTreeSelect = async () => { const res = await deptTreeSelect(); deptOptions.value = res.data; + + if (res.data && res.data.length > 0) { + queryParams.value.deptId = res.data[0].id; + } } const info = ref({ sessionName: '', createName: '', expireTime: '', scaleNames: [], deptNames: [] }) diff --git a/src/views/activity/component/statistics/index.vue b/src/views/activity/component/statistics/index.vue index 3008551..d33ee3d 100644 --- a/src/views/activity/component/statistics/index.vue +++ b/src/views/activity/component/statistics/index.vue @@ -117,60 +117,6 @@ use([ LegendComponent, ]); -const pieOption = ref({ - title: { - text: 'Traffic Sources', - left: 'center', - }, - tooltip: { - trigger: 'item', - formatter: '{a}
{b} : {c} ({d}%)', - }, - legend: { - orient: 'vertical', - left: 'left', - data: ['Direct', 'Email', 'Ad Networks', 'Video Ads', 'Search Engines'], - }, - series: [ - { - name: 'Traffic Sources', - type: 'pie', - radius: '55%', - center: ['50%', '60%'], - data: [ - { value: 335, name: 'Direct' }, - { value: 310, name: 'Email' }, - { value: 234, name: 'Ad Networks' }, - { value: 135, name: 'Video Ads' }, - { value: 1548, name: 'Search Engines' }, - ], - emphasis: { - itemStyle: { - shadowBlur: 10, - shadowOffsetX: 0, - shadowColor: 'rgba(0, 0, 0, 0.5)', - }, - }, - }, - ], -}); - -const barOption = ref({ - xAxis: { - type: 'category', - data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] - }, - yAxis: { - type: 'value' - }, - series: [ - { - data: [120, 200, 150, 80, 70, 110, 130], - type: 'bar' - } - ] -}) - const batchNo = props.batchNo const radio = ref(1) @@ -322,6 +268,7 @@ watch([scaleId, radio], ([newVal, oldVal]) => { warnTable.value = [] getwarnData() + factorDataList.value = [] getFactoryData() }) diff --git a/src/views/bigScreen/index.vue b/src/views/bigScreen/index.vue index bbd5a51..e2d4168 100644 --- a/src/views/bigScreen/index.vue +++ b/src/views/bigScreen/index.vue @@ -5,68 +5,129 @@
{{ showTime }}
-
-
- +
+
+
+
标题名称
+
+ +
+
+ +
+
标题名称
+
+ +
+
-
-
    -
  • 总人数
  • -
  • 总采集人数
  • -
  • 关注人次
  • -
  • 干预人次
  • -
+ +
+
+
数据统计
+
+
+
    +
  • 50
  • +
  • 164
  • +
  • 87
  • +
  • 1
  • +
+
+
+
    +
  • 总人数
  • +
  • 总采集人数
  • +
  • 关注人次
  • +
  • 干预人次
  • +
+
+
+
+ +
+
标题名称
+
+ +
+
+ +
+
标题名称
+
+ +
+
+
+ +
+
+
标题名称
+
+ +
+
+ +
+
标题名称
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
字段字段字段字段
字段809819.80%22368
字段75066.70%22339
字段326132.30%10325.7
字段1993 201%10 199
字段1993 201%10 199
+
+
+ +
+
标题名称
+
+ +
+
-
-

采集统计分析

- - -
- -
-

单位数据统计

- - -
- -
-

单位排名统计

-
- -
- -
-

心理咨询师

-
- - - - - -
- -
- -
-

数据统计分析

-
- -
- -
-

已测评人员

-
- -
- -
@@ -104,50 +165,6 @@ function time() { showTime.value = y + "年" + mt + "月" + day + "日" + h + "时" + m + "分" + s + "秒"; } -const tableData = [ - { - date: '2016-05-03', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { - date: '2016-05-02', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { - date: '2016-05-04', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, - { - date: '2016-05-01', - name: 'Tom', - address: 'No. 189, Grove St, Los Angeles', - }, -] - -const headerCellStyle = ({ row, column, rowIndex, columnIndex }) => { - if (rowIndex % 2 == 0) { - return { - backgroundColor: '#082187', - fontSize: '0.25rem' - } - } else { - return { - backgroundColor: '#0A27A8', - fontSize: '0.25rem' - } - } -} - -const cellStyle = ({ row, column, rowIndex, columnIndex }) => { - return { - backgroundColor: '#10215D', - color: '#fff', - fontSize: '0.25rem' - } -} onMounted(() => { time() @@ -160,149 +177,748 @@ onBeforeUnmount(() => { clearInterval(timer); }); -const pieOption = ref({ - tooltip: { - trigger: 'item' +const leftBar1Option = ref({ + grid: { + left: '2%', + top: '1%', + right: '5%', + bottom: '0%', + containLabel: true }, - legend: { - top: '5%', - left: 'center', - textStyle: { - color: '#fff', - fontSize: 20 + xAxis: [{ + show: false, + }], + yAxis: [{ + axisTick: 'none', + axisLine: 'none', + offset: '7', + axisLabel: { + textStyle: { + color: 'rgba(255,255,255,.6)', + fontSize: '14', + } }, - }, - series: [ - { - name: '采集统计分析', - type: 'pie', - radius: ['40%', '70%'], - avoidLabelOverlap: false, - itemStyle: { - borderRadius: 10, - borderColor: '#fff', - borderWidth: 2 - }, - label: { - show: false, - position: 'center' - }, - emphasis: { - label: { - show: true, - fontSize: 40, - fontWeight: 'bold' + data: ['字段1', '字段2', '字段3', '字段4', '字段5', '字段6', '字段7', '字段8', '字段9'] + + }, { + axisTick: 'none', + axisLine: 'none', + axisLabel: { + textStyle: { + color: 'rgba(255,255,255,.6)', + fontSize: '14', + } + }, + data: [1514, 1619, 1623, 1968, 2158, 2456, 3506, 4664, 8390] + + }, { + name: '单位:件', + nameGap: '50', + nameTextStyle: { + color: 'rgba(255,255,255,.6)', + fontSize: '16', + }, + axisLine: { + lineStyle: { + color: 'rgba(0,0,0,0)' + } + }, + data: [], + }], + series: [{ + name: '条', + type: 'bar', + yAxisIndex: 0, + data: [25, 30, 34, 40, 43, 48, 52, 56, 70], + label: { + normal: { + show: true, + position: 'right', + formatter: function (param) { + return param.value + '%'; + }, + textStyle: { + color: 'rgba(255,255,255,.8)', + fontSize: '12', } - }, - labelLine: { - show: false - }, - data: [ - { value: 1048, name: '中风险' }, - { value: 735, name: '低风险' }, - { value: 580, name: '高风险' }, - { value: 484, name: '未见异常' }, - { value: 300, name: '重大风险' } - ] - } - ] + } + }, + barWidth: 15, + itemStyle: { + normal: { + color: new echarts.graphic.LinearGradient(1, 0, 0, 0, [{ + offset: 0, + color: '#03c893' + }, + { + offset: 1, + color: '#0091ff' + } + ]), + barBorderRadius: 15, + } + }, + z: 2 + }, { + name: '白框', + type: 'bar', + yAxisIndex: 1, + barGap: '-100%', + data: [99.5, 99.5, 99.5, 99.5, 99.5, 99.5, 99.5, 99.5, 99.5, 99.5], + barWidth: 15, + itemStyle: { + normal: { + color: 'rgba(0,0,0,.2)', + barBorderRadius: 15, + } + }, + z: 1 + }] }); -const barOption = ref({ +const leftBar2Option = ref({ tooltip: { trigger: 'axis', - axisPointer: { - type: 'shadow' + axisPointer: { // 坐标轴指示器,坐标轴触发有效 + type: 'shadow' // 默认为直线,可选为:'line' | 'shadow' } }, legend: { + data: ['字段1', '字段2', '字段3'], + right: 'center', + top: 0, textStyle: { - color: '#fff', - fontSize: 20 + color: "#fff" }, + itemWidth: 12, + itemHeight: 10, + // itemGap: 35 }, grid: { - left: '3%', - right: '4%', - bottom: '3%', + left: '0', + right: '20', + bottom: '0', + top: '15%', containLabel: true }, xAxis: { - type: 'value' - }, - yAxis: { type: 'category', - data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'] + data: ['字段1', '字段2', '字段3', '字段3', '字段4', '字段5', '字段6', '字段7', '字段8', '字段9'], + axisLine: { + lineStyle: { + color: 'white' + + } + }, + axisLabel: { + //rotate:-90, + formatter: function (value: any) { return value.split("").join("\n"); }, + textStyle: { + color: "rgba(255,255,255,.6)", + fontSize: 14, + }, + lineStyle: { + color: 'rgba(255,255,255,0.3)' + } + } }, - series: [ + + yAxis: { + type: 'value', + splitNumber: 4, + axisTick: { show: false }, + splitLine: { + show: true, + lineStyle: { + color: 'rgba(255,255,255,0.1)' + } + }, + axisLabel: { + textStyle: { + color: "rgba(255,255,255,.6)", + fontSize: 14, + } + }, + axisLine: { show: false }, + }, + + series: [{ + name: '字段1', + type: 'bar', + stack: 'a', + barWidth: '30', barGap: 0, + itemStyle: { + normal: { + color: '#8bd46e', + } + }, + data: [331, 497, 440, 81, 163, 366, 57, 188, 172, 2295] + }, + { + name: '字段2', + type: 'bar', + stack: 'a', + barWidth: '30', barGap: 0, + itemStyle: { + normal: { + color: '#f5804d', + barBorderRadius: 0, + } + }, + data: [48, -97, 56, -59, 90, 98, 64, 61, -8, 253] + }, + { + name: '字段3', + type: 'bar', + stack: 'a', + barWidth: '30', barGap: 0, + itemStyle: { + normal: { + color: '#248ff7', + barBorderRadius: 0, + } + }, + data: [-13, -21, -112, 5, 0, -5, 72, -3, 8, -69] + } + ] +}) + + +const centerBar1Option = ref({ + tooltip: { + trigger: 'axis', + axisPointer: { type: 'shadow' }, + }, "grid": { + "top": "20%", + "right": "50", + "bottom": "20", + "left": "30", + }, + legend: { + data: ['字段1', '字段2', '字段3', '字段4', '字段5', '字段6'], + right: 'center', width: '100%', + textStyle: { + color: "#fff" + }, + itemWidth: 12, + itemHeight: 10, + }, + "xAxis": [ { - name: 'Direct', - type: 'bar', - stack: 'total', - label: { - show: true + "type": "category", + data: ['2016', '2017', '2018', '2019'], + axisLine: { lineStyle: { color: "rgba(255,255,255,.1)" } }, + axisLabel: { + textStyle: { color: "rgba(255,255,255,.7)", fontSize: '14', }, }, - emphasis: { - focus: 'series' + + }, + ], + "yAxis": [ + { + "type": "value", + "name": "单位万", + axisTick: { show: false }, + splitLine: { + show: false, + }, - data: [320, 302, 301, 334, 390, 330, 320] + "axisLabel": { + "show": true, + fontSize: 14, + color: "rgba(255,255,255,.6)" + + }, + axisLine: { + min: 0, + max: 10, + lineStyle: { color: 'rgba(255,255,255,.1)' } + },//左线色 + }, { - name: 'Mail Ad', - type: 'bar', - stack: 'total', - label: { - show: true + "type": "value", + "name": "增速", + "show": true, + "axisLabel": { + "show": true, + fontSize: 14, + formatter: "{value} %", + color: "rgba(255,255,255,.6)" }, - emphasis: { - focus: 'series' + axisTick: { show: false }, + axisLine: { lineStyle: { color: 'rgba(255,255,255,.1)' } },//右线色 + splitLine: { show: true, lineStyle: { color: 'rgba(255,255,255,.1)' } },//x轴线 + }, + ], + "series": [ + { + "name": "字段1", + "type": "bar", + "data": [36.6, 38.80, 40.84, 41.60], + "barWidth": "15%", + "itemStyle": { + "normal": { + barBorderRadius: 15, + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ + offset: 0, + color: '#8bd46e' + }, { + offset: 1, + color: '#09bcb7' + }]), + } }, - data: [120, 132, 101, 134, 90, 230, 210] + "barGap": "0.2" }, { - name: 'Affiliate Ad', - type: 'bar', - stack: 'total', - label: { - show: true + "name": "字段2", + "type": "bar", + "data": [14.8, 14.1, 15, 16.30], + "barWidth": "15%", + "itemStyle": { + "normal": { + barBorderRadius: 15, + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ + offset: 0, + color: '#248ff7' + }, { + offset: 1, + color: '#6851f1' + }]), + } }, - emphasis: { - focus: 'series' - }, - data: [220, 182, 191, 234, 290, 330, 310] + "barGap": "0.2" }, { - name: 'Video Ad', - type: 'bar', - stack: 'total', - label: { - show: true + "name": "字段3", + "type": "bar", + "data": [9.2, 9.1, 9.85, 8.9], + "barWidth": "15%", + "itemStyle": { + "normal": { + barBorderRadius: 15, + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ + offset: 0, + color: '#fccb05' + }, { + offset: 1, + color: '#f5804d' + }]), + } }, - emphasis: { - focus: 'series' - }, - data: [150, 212, 201, 154, 190, 330, 410] + "barGap": "0.2" }, { - name: 'Search Engine', - type: 'bar', - stack: 'total', - label: { - show: true + "name": "字段4", + "type": "line", + smooth: true, + "yAxisIndex": 1, + "data": [0, 6.01, 5.26, 1.48], + lineStyle: { + normal: { + width: 2 + }, }, - emphasis: { - focus: 'series' + "itemStyle": { + "normal": { + "color": "#86d370", + + } }, - data: [820, 832, 901, 934, 1290, 1330, 1320] + + } + , + { + "name": "字段5", + "type": "line", + "yAxisIndex": 1, + + "data": [0, -4.73, 6.38, 8.67], + lineStyle: { + normal: { + width: 2 + }, + }, + "itemStyle": { + "normal": { + "color": "#3496f8", + + } + }, + "smooth": true + }, + { + "name": "字段6", + "type": "line", + "yAxisIndex": 1, + + "data": [0, -1.09, 8.24, -9.64], + lineStyle: { + normal: { + width: 2 + }, + }, + "itemStyle": { + "normal": { + "color": "#fbc30d", + + } + }, + "smooth": true } ] }) + +const centerLine2Option = ref({ + tooltip: { + trigger: 'axis', + axisPointer: { type: 'shadow' }, + // formatter:'{c}' , + }, + grid: { + left: '0', + top: '30', + right: '10', + bottom: '-20', + containLabel: true + }, + legend: { + data: ['字段1', '字段2'], + right: 'center', + top: 0, + textStyle: { + color: "#fff" + }, + itemWidth: 12, + itemHeight: 10, + // itemGap: 35 + }, + + xAxis: [{ + type: 'category', + boundaryGap: false, + axisLabel: { + rotate: -90, + textStyle: { + color: "rgba(255,255,255,.6)", + fontSize: 14, + + }, + }, + axisLine: { + lineStyle: { + color: 'rgba(255,255,255,.1)' + } + + }, + + data: ['17年3月', '17年6月', '17年9月', '17年12月', '18年3月', '18年6月', '18年9月', '18年12月', '19年3月', '19年6月', '19年9月', '19年12月'] + + }, { + + axisPointer: { show: false }, + axisLine: { show: false }, + position: 'bottom', + offset: 20, + + + + }], + + yAxis: [{ + type: 'value', + axisTick: { show: false }, + // splitNumber: 6, + axisLine: { + lineStyle: { + color: 'rgba(255,255,255,.1)' + } + }, + axisLabel: { + formatter: "{value} %", + textStyle: { + color: "rgba(255,255,255,.6)", + fontSize: 14, + }, + }, + + splitLine: { + lineStyle: { + color: 'rgba(255,255,255,.1)' + } + } + }], + series: [ + { + name: '字段1', + type: 'line', + smooth: true, + symbol: 'circle', + symbolSize: 5, + showSymbol: false, + lineStyle: { + normal: { + color: 'rgba(228, 228, 126, 1)', + width: 2 + } + }, + areaStyle: { + normal: { + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ + offset: 0, + color: 'rgba(228, 228, 126, .2)' + }, { + offset: 1, + color: 'rgba(228, 228, 126, 0)' + }], false), + shadowColor: 'rgba(0, 0, 0, 0.1)', + } + }, + itemStyle: { + normal: { + color: 'rgba(228, 228, 126, 1)', + borderColor: 'rgba(228, 228, 126, .1)', + borderWidth: 12 + } + }, + data: [12.50, 14.4, 16.1, 14.9, 20.1, 17.2, 17.0, 13.42, 20.12, 18.94, 17.27, 16.10] + + }, { + name: '字段2', + type: 'line', + smooth: true, + symbol: 'circle', + symbolSize: 5, + showSymbol: false, + lineStyle: { + + normal: { + color: 'rgba(255, 128, 128, 1)', + width: 2 + } + }, + areaStyle: { + normal: { + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ + offset: 0, + color: 'rgba(255, 128, 128,.2)' + }, { + offset: 1, + color: 'rgba(255, 128, 128, 0)' + }], false), + shadowColor: 'rgba(0, 0, 0, 0.1)', + } + }, + itemStyle: { + normal: { + color: 'rgba(255, 128, 128, 1)', + borderColor: 'rgba(255, 128, 128, .1)', + borderWidth: 12 + } + }, + data: [-6.4, 0.1, 6.6, 11.2, 42.1, 26.0, 20.2, 18.31, 21.59, 24.42, 34.03, 32.9] + }, + ] +}) + +const rightBar1Option = ref({ + tooltip: { + trigger: 'axis', + axisPointer: { type: 'shadow' }, + }, "grid": { + "top": "15%", + "right": "10%", + "bottom": "20", + "left": "10%", + }, + legend: { + data: ['字段1', '字段2'], + right: 'center', + top: 0, + textStyle: { + color: "#fff" + }, + itemWidth: 12, + itemHeight: 10, + }, + "xAxis": [ + { + "type": "category", + + data: ['2016', '2017', '2018', '2019'], + axisLine: { lineStyle: { color: "rgba(255,255,255,.1)" } }, + axisLabel: { + textStyle: { color: "rgba(255,255,255,.7)", fontSize: '14', }, + }, + + }, + ], + "yAxis": [ + { + "type": "value", + "name": "单位1", + splitLine: { show: false }, + axisTick: { show: false }, + "axisLabel": { + "show": true, + color: "rgba(255,255,255,.6)" + + }, + axisLine: { lineStyle: { color: 'rgba(255,255,255,.1)' } },//左线色 + + }, + { + "type": "value", + "name": "单位2", + "show": true, + axisTick: { show: false }, + "axisLabel": { + "show": true, + formatter: "{value} %", + color: "rgba(255,255,255,.6)" + }, + axisLine: { lineStyle: { color: 'rgba(255,255,255,.1)' } },//右线色 + splitLine: { show: true, lineStyle: { color: 'rgba(255,255,255,.1)' } },//x轴线 + }, + ], + "series": [ + + { + "name": "字段1", + "type": "bar", + "data": [ + 18453.35, 20572.22, 24274.22, 30500.00 + ], + "barWidth": "20%", + + "itemStyle": { + "normal": { + barBorderRadius: 15, + color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ + offset: 0, + color: '#fccb05' + }, { + offset: 1, + color: '#f5804d' + }]), + } + }, + "barGap": "0" + }, + { + "name": "字段2", + "type": "line", + "yAxisIndex": 1, + + "data": [0, 11.48, 18.00, 25.65], + lineStyle: { + normal: { + width: 2 + }, + }, + "itemStyle": { + "normal": { + "color": "#ff3300", + + } + }, + "smooth": true + } + ] +}) + +const rightPie2Option = ref({ + title: { + text: '5132', + subtext: '总体', + x: 'center', + y: '40%', + textStyle: { + color: '#fff', + fontSize: 22, + lineHeight: 10, + }, + subtextStyle: { + color: '#90979c', + fontSize: 16, + lineHeight: 10, + + }, + }, + tooltip: { + trigger: 'item', + formatter: "{b} : {c} ({d}%)" + }, + + visualMap: { + show: false, + min: 500, + max: 600, + inRange: { + //colorLightness: [0, 1] + } + }, + series: [{ + name: '访问来源', + type: 'pie', + radius: ['50%', '70%'], + center: ['50%', '50%'], + color: ['rgb(131,249,103)', '#FBFE27', '#FE5050', '#1DB7E5'], //'#FBFE27','rgb(11,228,96)','#FE5050' + data: [{ + "value": 1924, + "name": "字段名称1" + }, { + "value": 1055, + "name": "字段名称2" + }, { + "value": 1532, + "name": "字段名称3" + } + ].sort(function (a, b) { + return a.value - b.value + }), + roseType: 'radius', + + label: { + normal: { + formatter: ['{c|{c}万}', '{b|{b}}'].join('\n'), + rich: { + c: { + color: 'rgb(241,246,104)', + fontSize: 20, + fontWeight: 'bold', + lineHeight: 5 + }, + b: { + color: 'rgb(98,137,169)', + fontSize: 14, + height: 44 + }, + }, + } + }, + labelLine: { + normal: { + lineStyle: { + color: 'rgb(98,137,169)', + }, + smooth: 0.2, + length: 10, + length2: 20, + + } + } + }] +}) \ No newline at end of file diff --git a/src/views/evaluate/evaluateList/index.vue b/src/views/evaluate/evaluateList/index.vue index d366c7a..76b1877 100644 --- a/src/views/evaluate/evaluateList/index.vue +++ b/src/views/evaluate/evaluateList/index.vue @@ -48,8 +48,9 @@