|
@@ -54,19 +54,27 @@
|
|
|
<SimplePageContentLoader :loader="statsLoader">
|
|
<SimplePageContentLoader :loader="statsLoader">
|
|
|
<view v-if="statsLoader.content.value" class="d-flex flex-col justify-center mt-3 pt-3 b-3">
|
|
<view v-if="statsLoader.content.value" class="d-flex flex-col justify-center mt-3 pt-3 b-3">
|
|
|
<view class="d-flex flex-row align-center">
|
|
<view class="d-flex flex-row align-center">
|
|
|
- <StatsText
|
|
|
|
|
- width="calc(50%)"
|
|
|
|
|
- :title="statsLoader.content.value[0].title"
|
|
|
|
|
- :data="statsLoader.content.value[0].datas"
|
|
|
|
|
- :type="statsLoader.content.value[0].type"
|
|
|
|
|
- />
|
|
|
|
|
- <StatsText
|
|
|
|
|
- width="calc(50%)"
|
|
|
|
|
- classNames="border-left-forth"
|
|
|
|
|
- :title="statsLoader.content.value[1].title"
|
|
|
|
|
- :data="statsLoader.content.value[1].datas"
|
|
|
|
|
- :type="statsLoader.content.value[1].type"
|
|
|
|
|
- />
|
|
|
|
|
|
|
+ <view class="d-flex flex-col w-50">
|
|
|
|
|
+ <StatsText
|
|
|
|
|
+ :title="statsLoader.content.value[0].title"
|
|
|
|
|
+ :data="statsLoader.content.value[0].datas"
|
|
|
|
|
+ :type="statsLoader.content.value[0].type"
|
|
|
|
|
+ />
|
|
|
|
|
+ <view class="p-2">
|
|
|
|
|
+ <HorizontalScrollText :text="statsText1" :fontSize="26" color="text.second" />
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="d-flex flex-col w-50">
|
|
|
|
|
+ <StatsText
|
|
|
|
|
+ classNames="border-left-forth"
|
|
|
|
|
+ :title="statsLoader.content.value[1].title"
|
|
|
|
|
+ :data="statsLoader.content.value[1].datas"
|
|
|
|
|
+ :type="statsLoader.content.value[1].type"
|
|
|
|
|
+ />
|
|
|
|
|
+ <view class="p-2">
|
|
|
|
|
+ <HorizontalScrollText :text="statsText2" :fontSize="26" color="text.second" />
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </view>
|
|
|
</view>
|
|
</view>
|
|
|
<view class="border-top-forth pt-2 mt-3"></view>
|
|
<view class="border-top-forth pt-2 mt-3"></view>
|
|
|
<StatsText
|
|
<StatsText
|
|
@@ -176,6 +184,7 @@ import HomeTitle from '@/pages/parts/HomeTitle.vue';
|
|
|
import Tabbar from '@/common/components/tabs/tabbar.vue';
|
|
import Tabbar from '@/common/components/tabs/tabbar.vue';
|
|
|
import Box1AudioPlay from '@/pages/parts/Box1AudioPlay.vue';
|
|
import Box1AudioPlay from '@/pages/parts/Box1AudioPlay.vue';
|
|
|
import SimplePageContentLoader from "@/common/components/SimplePageContentLoader.vue";
|
|
import SimplePageContentLoader from "@/common/components/SimplePageContentLoader.vue";
|
|
|
|
|
+import HorizontalScrollText from '@/components/typography/HorizontalScrollText.vue';
|
|
|
|
|
|
|
|
const subTabs = [
|
|
const subTabs = [
|
|
|
{
|
|
{
|
|
@@ -302,6 +311,8 @@ const recommendLoader = useSimpleDataLoader(async () => {
|
|
|
})); */
|
|
})); */
|
|
|
return list;
|
|
return list;
|
|
|
});
|
|
});
|
|
|
|
|
+const statsText1 = ref('');
|
|
|
|
|
+const statsText2 = ref('');
|
|
|
const statsLoader = useSimpleDataLoader(async () => {
|
|
const statsLoader = useSimpleDataLoader(async () => {
|
|
|
const data = (await IndexContent.getStats());
|
|
const data = (await IndexContent.getStats());
|
|
|
|
|
|
|
@@ -311,6 +322,14 @@ const statsLoader = useSimpleDataLoader(async () => {
|
|
|
let sumInheritor = 0;
|
|
let sumInheritor = 0;
|
|
|
let sumProject = 0;
|
|
let sumProject = 0;
|
|
|
const topLevelProject = data.ichData.find((p: any) => p.level_text == '人类非遗')?.total || 0;
|
|
const topLevelProject = data.ichData.find((p: any) => p.level_text == '人类非遗')?.total || 0;
|
|
|
|
|
+ const secondLevelProject = data.ichData.find((p: any) => p.level_text == '国家级')?.total || 0;
|
|
|
|
|
+ const thirdLevelProject = data.ichData.find((p: any) => p.level_text == '省级')?.total || 0;
|
|
|
|
|
+ const forthLevelProject = data.ichData.find((p: any) => p.level_text == '市级')?.total || 0;
|
|
|
|
|
+
|
|
|
|
|
+ const topLevelInheritor = data.ichData.find((p: any) => p.level_text == '国家级')?.total || 0;
|
|
|
|
|
+ const secondLevelInheritor = data.ichData.find((p: any) => p.level_text == '省级')?.total || 0;
|
|
|
|
|
+ const thirdLevelInheritor = data.ichData.find((p: any) => p.level_text == '市级')?.total || 0;
|
|
|
|
|
+
|
|
|
const projects = (data.ichData as any[]).filter((p: any) => [ '人类非遗', '国家级', '省级', '市级' ].includes(p.level_text)).map((item: any) => {
|
|
const projects = (data.ichData as any[]).filter((p: any) => [ '人类非遗', '国家级', '省级', '市级' ].includes(p.level_text)).map((item: any) => {
|
|
|
sumProject += item.total;
|
|
sumProject += item.total;
|
|
|
return {
|
|
return {
|
|
@@ -318,20 +337,31 @@ const statsLoader = useSimpleDataLoader(async () => {
|
|
|
value: item.total,
|
|
value: item.total,
|
|
|
onClick: () => navTo('/pages/inhert/intangible/list', { tab: 0, level: item.level }),
|
|
onClick: () => navTo('/pages/inhert/intangible/list', { tab: 0, level: item.level }),
|
|
|
} as StatsTextItem
|
|
} as StatsTextItem
|
|
|
|
|
+ });
|
|
|
|
|
+ const inheritors = data.inheritorData.filter((p: any) => [ '国家级', '省级', '市级' ].includes(p.title)).map((item: any) => {
|
|
|
|
|
+ sumInheritor += item.total;
|
|
|
|
|
+ return {
|
|
|
|
|
+ title: item.title,
|
|
|
|
|
+ value: item.total,
|
|
|
|
|
+ onClick: () => navTo('/pages/inhert/inheritor/list', { level: item.level }),
|
|
|
|
|
+ }
|
|
|
}).concat([
|
|
}).concat([
|
|
|
{
|
|
{
|
|
|
- titlePrefix: '⭐',
|
|
|
|
|
- title: `目前厦门市非遗项目\n市级以上共有${sumProject}项`,
|
|
|
|
|
|
|
+ title: '',
|
|
|
value: '',
|
|
value: '',
|
|
|
- long: true,
|
|
|
|
|
}
|
|
}
|
|
|
]);
|
|
]);
|
|
|
|
|
+
|
|
|
|
|
+ statsText1.value = `目前厦门市非遗项目市级以上共有 ${sumProject} 项,其中:国家级 ${secondLevelProject} 项(含 ${topLevelProject} 项为人类非遗)、省级 ${thirdLevelProject} 项、市级 ${forthLevelProject} 项。`;
|
|
|
|
|
+ statsText2.value = `目前厦门市非遗传承人市级以上共有 ${sumInheritor} 人,其中:国家级 ${topLevelInheritor} 人、省级 ${secondLevelInheritor} 人、市级 ${thirdLevelInheritor} 人。`;
|
|
|
|
|
+
|
|
|
/* projects.splice(1, 0, {
|
|
/* projects.splice(1, 0, {
|
|
|
title: `(其中${topLevelProject}项为人类非遗)`,
|
|
title: `(其中${topLevelProject}项为人类非遗)`,
|
|
|
value: ' ',
|
|
value: ' ',
|
|
|
longTitle: true,
|
|
longTitle: true,
|
|
|
onClick: () => navTo('/pages/inhert/intangible/list', { tab: 0, level: 0 }),
|
|
onClick: () => navTo('/pages/inhert/intangible/list', { tab: 0, level: 0 }),
|
|
|
}) */
|
|
}) */
|
|
|
|
|
+
|
|
|
return [
|
|
return [
|
|
|
{
|
|
{
|
|
|
title: '非遗项目',
|
|
title: '非遗项目',
|
|
@@ -339,26 +369,7 @@ const statsLoader = useSimpleDataLoader(async () => {
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
title: '非遗传承人',
|
|
title: '非遗传承人',
|
|
|
- datas: data.inheritorData.filter((p: any) => [ '国家级', '省级', '市级' ].includes(p.title)).map((item: any) => {
|
|
|
|
|
- sumInheritor += item.total;
|
|
|
|
|
- return {
|
|
|
|
|
- title: item.title,
|
|
|
|
|
- value: item.total,
|
|
|
|
|
- onClick: () => navTo('/pages/inhert/inheritor/list', { level: item.level }),
|
|
|
|
|
- }
|
|
|
|
|
- }).concat([
|
|
|
|
|
- {
|
|
|
|
|
- title: '',
|
|
|
|
|
- value: '',
|
|
|
|
|
- }
|
|
|
|
|
- ], [
|
|
|
|
|
- {
|
|
|
|
|
- titlePrefix: '⭐',
|
|
|
|
|
- title: `目前厦门市非遗传承人\n市级以上共有${sumInheritor}人`,
|
|
|
|
|
- value: '',
|
|
|
|
|
- long: true,
|
|
|
|
|
- }
|
|
|
|
|
- ]),
|
|
|
|
|
|
|
+ datas: inheritors
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
|
datas: [
|
|
datas: [
|