diff --git a/src/assets/images/basic/footerBtnTextBG.png b/src/assets/images/basic/footerBtnTextBG.png
new file mode 100644
index 0000000..4b0f8e7
Binary files /dev/null and b/src/assets/images/basic/footerBtnTextBG.png differ
diff --git a/src/assets/images/entities/1.jpg b/src/assets/images/entities/1.jpg
new file mode 100644
index 0000000..bb3e3bc
Binary files /dev/null and b/src/assets/images/entities/1.jpg differ
diff --git a/src/assets/images/entities/2.jpg b/src/assets/images/entities/2.jpg
new file mode 100644
index 0000000..78d0e30
Binary files /dev/null and b/src/assets/images/entities/2.jpg differ
diff --git a/src/assets/images/entities/3.jpg b/src/assets/images/entities/3.jpg
new file mode 100644
index 0000000..f92e46f
Binary files /dev/null and b/src/assets/images/entities/3.jpg differ
diff --git a/src/assets/images/entities/4.jpg b/src/assets/images/entities/4.jpg
new file mode 100644
index 0000000..a2a5cd8
Binary files /dev/null and b/src/assets/images/entities/4.jpg differ
diff --git a/src/assets/images/entities/5.jpg b/src/assets/images/entities/5.jpg
new file mode 100644
index 0000000..86eb982
Binary files /dev/null and b/src/assets/images/entities/5.jpg differ
diff --git a/src/assets/images/entities/6.jpg b/src/assets/images/entities/6.jpg
new file mode 100644
index 0000000..6120647
Binary files /dev/null and b/src/assets/images/entities/6.jpg differ
diff --git a/src/assets/images/entities/7.jpg b/src/assets/images/entities/7.jpg
new file mode 100644
index 0000000..c42dd37
Binary files /dev/null and b/src/assets/images/entities/7.jpg differ
diff --git a/src/assets/images/entities/8.png b/src/assets/images/entities/8.png
new file mode 100644
index 0000000..cacd91c
Binary files /dev/null and b/src/assets/images/entities/8.png differ
diff --git a/src/assets/images/entities/goodsBG.png b/src/assets/images/entities/goodsBG.png
new file mode 100644
index 0000000..62a3b97
Binary files /dev/null and b/src/assets/images/entities/goodsBG.png differ
diff --git a/src/assets/images/entities/leftArrowBG.png b/src/assets/images/entities/leftArrowBG.png
new file mode 100644
index 0000000..63ee629
Binary files /dev/null and b/src/assets/images/entities/leftArrowBG.png differ
diff --git a/src/assets/images/entities/rightArrowBG.png b/src/assets/images/entities/rightArrowBG.png
new file mode 100644
index 0000000..f449ed1
Binary files /dev/null and b/src/assets/images/entities/rightArrowBG.png differ
diff --git a/src/assets/images/entities/tomatoImg.png b/src/assets/images/entities/tomatoImg.png
new file mode 100644
index 0000000..7b449f6
Binary files /dev/null and b/src/assets/images/entities/tomatoImg.png differ
diff --git a/src/components/custom-echart-column-line/index.vue b/src/components/custom-echart-column-line/index.vue
index 90107f7..02c91bb 100644
--- a/src/components/custom-echart-column-line/index.vue
+++ b/src/components/custom-echart-column-line/index.vue
@@ -124,80 +124,8 @@ export default {
if (props.option) {
Object.assign(option, cloneDeep(props.option));
}
- option.series = [
- {
- name: '总产量(吨)',
- type: 'bar',
- data: yDataColumn.value,
- barWidth: '15px',
- barGap: '50%',
- itemStyle: {
- normal: {
- borderColor: '#3681FF',
- // color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
- // {
- // offset: 0,
- // color: 'rgba(15, 51, 82, 1)',
- // },
-
- // {
- // offset: 1,
- // color: 'rgba(0, 168, 255, 1)',
- // },
- // ]),
- },
- },
- label: {
- show: false,
- position: 'top',
- fontSize: 12,
- color: '#F5F5F5',
- offset: [0, -5],
- formatter: '{c}',
- },
- },
- {
- name: '平均产量(吨)',
- type: 'line',
- yAxisIndex: 1,
- showSymbol: true,
- symbolSize: 8,
- smooth: true,
- symbol: 'circle',
- lineStyle: {
- normal: {
- color: '#02D6B0',
- },
- },
- itemStyle: {
- color: '#02D6B0',
- borderColor: '#fff',
- borderWidth: 1,
- },
- // areaStyle: {
- // normal: {
- // color: new echarts.graphic.LinearGradient(
- // 0,
- // 0,
- // 0,
- // 1,
- // [
- // {
- // offset: 0,
- // color: 'rgba(0, 255, 246, 0)',
- // },
- // {
- // offset: 1,
- // color: 'rgba(0, 255, 246, 0.5)',
- // },
- // ],
- // false
- // ),
- // },
- // },
- data: yDataLine.value, // 折线图的数据
- },
- ];
+ option.series[0].data = yDataColumn.value;
+ option.series[1].data = yDataLine.value;
option.xAxis.data = xData.value;
setOptions(option);
// startAutoPlay({
diff --git a/src/components/custom-echart-hyaline-cake/index.vue b/src/components/custom-echart-hyaline-cake/index.vue
index f0d2d69..dfbfbfa 100644
--- a/src/components/custom-echart-hyaline-cake/index.vue
+++ b/src/components/custom-echart-hyaline-cake/index.vue
@@ -27,7 +27,14 @@ export default {
},
option: {
type: Object,
- default: () => ({}),
+ default: () => ({
+ k: 1,
+ opacity: '0,6',
+ itemGap: 0.2,
+ itemHeight: 120,
+ autoItemHeight: 0,
+ legendSuffix: '',
+ }),
},
type: {
type: String,
@@ -51,18 +58,15 @@ export default {
const chartRef = ref(null);
const { setOptions, getInstance, startAutoPlay } = useEcharts(chartRef);
const option = ref({});
- const itemHeight = ref(120);
- // let colors = ['#07daf2', '#64de8a', '#ecc23c', '#ffdb5c', '#ff9f7f', '#9fe6b8', '#67e0e3', '#32c5e9', '#fb7293', '#9A60B4', '#ea7ccc'];
-
watchEffect(() => {
props.chartData && initCharts();
});
function initCharts() {
if (props.option) {
- Object.assign(option, cloneDeep(props.option));
+ option.value = Object.assign(option, cloneDeep(props.option));
}
- option.value = getPie3D(props.chartData, 0.5);
+ option.value = getPie3D(props.chartData, props.option.opacity);
setOptions(option.value);
}
@@ -75,8 +79,8 @@ export default {
isSelected = false;
}
k = typeof k !== 'undefined' ? k : 1 / 3;
- const offsetX = Math.cos(midRadian) * 0.2;
- const offsetY = Math.sin(midRadian) * 0.2;
+ const offsetX = Math.cos(midRadian) * props.option.itemGap;
+ const offsetY = Math.sin(midRadian) * props.option.itemGap;
const hoverRate = 1;
return {
u: {
@@ -127,7 +131,7 @@ export default {
let startValue = 0;
let endValue = 0;
const legendData = [];
- const k = 1;
+ const k = props.option.k ?? 1;
for (let i = 0; i < pieData.length; i += 1) {
sumValue += pieData[i].value;
@@ -142,7 +146,7 @@ export default {
itemStyle: {
// color: colors[i], // 自定义颜色
- opacity: '0.6',
+ opacity: props.option.opacity,
borderRadius: 300,
borderColor: '#fff',
borderWidth: 0,
@@ -171,40 +175,41 @@ export default {
false,
false,
k,
- itemHeight.value
+ props.option.autoItemHeight > 0 ? props.option.autoItemHeight * series[i].pieData.value : props.option.itemHeight
);
startValue = endValue;
legendData.push(series[i].name);
}
- const option = {
- tooltip: {
- position: function (point, params, dom, rect, size) {
- var x = point[0];
- var y = point[1];
- var viewWidth = size.viewSize[0];
- var viewHeight = size.viewSize[1];
- var boxWidth = size.contentSize[0];
- var boxHeight = size.contentSize[1];
- // 判断 tooltip 位置,调整其位置使其不会超出图表边界
- if (x + boxWidth > viewWidth) {
- x = x - boxWidth;
- }
- if (y + boxHeight > viewHeight) {
- y = y - boxHeight;
- }
- // 保证 tooltip 始终在图表内部
- if (x < 0) {
- x = 0;
- }
- if (y < 0) {
- y = 0;
- }
+ const option = Object.assign(
+ {
+ tooltip: {
+ position: function (point, params, dom, rect, size) {
+ var x = point[0];
+ var y = point[1];
+ var viewWidth = size.viewSize[0];
+ var viewHeight = size.viewSize[1];
+ var boxWidth = size.contentSize[0];
+ var boxHeight = size.contentSize[1];
+ // 判断 tooltip 位置,调整其位置使其不会超出图表边界
+ if (x + boxWidth > viewWidth) {
+ x = x - boxWidth;
+ }
+ if (y + boxHeight > viewHeight) {
+ y = y - boxHeight;
+ }
+ // 保证 tooltip 始终在图表内部
+ if (x < 0) {
+ x = 0;
+ }
+ if (y < 0) {
+ y = 0;
+ }
- return [x, y];
- },
- formatter: (params) => {
- if (params.seriesName !== 'mouseoutSeries') {
- return `
+ return [x, y];
+ },
+ formatter: (params) => {
+ if (params.seriesName !== 'mouseoutSeries') {
+ return `
${params.seriesName}
${option.series[params.seriesIndex].pieData.value}
`;
- }
- return '';
+ }
+ return '';
+ },
},
- },
- xAxis3D: {
- min: -1,
- max: 1.5,
- },
- yAxis3D: {
- min: -1,
- max: 1.5,
- },
- zAxis3D: {
- min: -1,
- max: 1.5,
- },
- itemGap: 20,
- grid3D: {
- itemGap: 20,
- show: false,
- boxHeight: 5,
- top: '0',
- left: '-20%',
- viewControl: {
- //3d效果可以放大、旋转等,请自己去查看官方配置
- alpha: 60, //角度(这个很重要 调节角度的)
- distance: 260, //调整视角到主体的距离,类似调整zoom(这是整体大小)
- rotateSensitivity: 10, //设置旋转灵敏度,为0无法旋转
- zoomSensitivity: 10, //设置缩放灵敏度,为0无法缩放
- panSensitivity: 10, //设置平移灵敏度,0无法平移
- autoRotate: true, //自动旋转
- autoRotateAfterStill: 2, //在鼠标静止操作后恢复自动旋转的时间间隔,在开启 autoRotate 后有效
+ xAxis3D: {
+ min: -1,
+ max: 1,
},
- },
- legend: {
- show: true,
- right: '5%',
- top: '25%',
- orient: 'vertical',
- icon: 'circle',
- itemHeight: 12,
- itemWidth: 12,
- itemGap: 10,
- textStyle: {
- color: '#fff',
- fontSize: 14,
- fontWeight: '400',
+ yAxis3D: {
+ min: -1,
+ max: 1,
},
- formatter: (name) => {
- if (props.chartData.length) {
- const item = props.chartData.filter((item) => item.name === name)[0];
- return ` ${name} ${item.value}万亩`;
- }
+ zAxis3D: {
+ min: -1,
+ max: 1,
},
+ grid3D: {
+ show: false,
+ boxHeight: 5,
+ top: '0',
+ left: '-20%',
+ viewControl: {
+ //3d效果可以放大、旋转等,请自己去查看官方配置
+ alpha: 60, //角度(这个很重要 调节角度的)
+ distance: 240, //调整视角到主体的距离,类似调整zoom(这是整体大小)
+ rotateSensitivity: 10, //设置旋转灵敏度,为0无法旋转
+ zoomSensitivity: 10, //设置缩放灵敏度,为0无法缩放
+ panSensitivity: 10, //设置平移灵敏度,0无法平移
+ autoRotate: true, //自动旋转
+ autoRotateAfterStill: 2, //在鼠标静止操作后恢复自动旋转的时间间隔,在开启 autoRotate 后有效
+ },
+ },
+ legend: {
+ show: true,
+ right: '5%',
+ top: '25%',
+ orient: 'vertical',
+ icon: 'circle',
+ itemHeight: 12,
+ itemWidth: 12,
+ itemGap: 10,
+ textStyle: {
+ color: '#fff',
+ fontSize: 14,
+ fontWeight: '400',
+ },
+ formatter: (name) => {
+ if (props.chartData.length) {
+ const item = props.chartData.filter((item) => item.name === name)[0];
+ return ` ${name} ${item.value}${props.option.legendSuffix ?? ''}`;
+ }
+ },
+ },
+ series,
},
- series,
- };
+ props.option
+ );
return option;
}
function onClick(params) {
diff --git a/src/views/entities/components/benefitCharts.vue b/src/views/entities/components/benefitCharts.vue
index 68fd3f8..a2c3616 100644
--- a/src/views/entities/components/benefitCharts.vue
+++ b/src/views/entities/components/benefitCharts.vue
@@ -1,194 +1,67 @@
-
+