From a3c3469d5d06772e157e493f8bc2855f5af99bd3 Mon Sep 17 00:00:00 2001 From: xjs Date: Thu, 27 Feb 2025 18:02:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .eslintrc-auto-import.json | 7 +- manifest.config.ts | 3 + pages.config.ts | 88 -------- src/components-sub/FilterMenu/FilterMenu.vue | 106 +++++++++ src/components-sub/FilterMenu/Nature.vue | 21 ++ src/components-sub/FilterMenu/Phase.vue | 66 ++++++ src/components-sub/FilterMenu/Region.vue | 34 +++ src/components-sub/FilterMenu/UniType.vue | 21 ++ src/components/checkGroup/CheckGroup.vue | 73 +++++++ src/components/fab/Fab.vue | 6 +- .../components/home/Banner.vue | 11 +- .../components/home/Consultation.vue | 0 .../components/home/HotRank.vue | 39 +++- .../components/home/SubMenu.vue | 0 src/hooks/useFilterSchool.ts | 57 +++++ src/hooks/useUnSortType.ts | 27 ++- src/layouts/demo.vue | 17 -- src/manifest.json | 5 +- src/pages-sub/customerService/index/index.vue | 15 +- src/pages-sub/home/autoFill/index.vue | 52 +++++ src/pages-sub/home/city/index.vue | 8 + src/pages-sub/home/inputScore/index.vue | 8 + src/pages-sub/home/schoolRank/index.vue | 25 ++- src/pages-sub/static/images/.gitkeep | 0 .../static/images/autoFill/auto-fill.svg | 21 ++ .../static/images/customerService/avatar.svg | 0 .../static/images/customerService/qrCode.svg | 0 .../static/images/customerService/vector.svg | 0 .../static/images/schoolRank/background.svg | 0 .../static/images/schoolRank/title.svg | 0 .../static/images/schoolRank/trophy.svg | 0 src/pages.json | 201 +++++++++--------- src/pages/about/about.vue | 4 +- src/pages/home/index/index.vue | 10 +- src/pages/index/index.vue | 58 ----- src/service/index/api.ts | 27 +++ src/static/{svg => images/home}/app-logo.svg | 0 .../customerService.svg | 0 src/store/user.ts | 3 + src/types/auto-import.d.ts | 11 +- src/types/uni-pages.d.ts | 13 +- vite.config.ts | 2 +- 42 files changed, 734 insertions(+), 305 deletions(-) create mode 100644 src/components-sub/FilterMenu/FilterMenu.vue create mode 100644 src/components-sub/FilterMenu/Nature.vue create mode 100644 src/components-sub/FilterMenu/Phase.vue create mode 100644 src/components-sub/FilterMenu/Region.vue create mode 100644 src/components-sub/FilterMenu/UniType.vue create mode 100644 src/components/checkGroup/CheckGroup.vue rename src/{pages-sub => }/components/home/Banner.vue (71%) rename src/{pages-sub => }/components/home/Consultation.vue (100%) rename src/{pages-sub => }/components/home/HotRank.vue (81%) rename src/{pages-sub => }/components/home/SubMenu.vue (100%) create mode 100644 src/hooks/useFilterSchool.ts delete mode 100644 src/layouts/demo.vue create mode 100644 src/pages-sub/home/autoFill/index.vue create mode 100644 src/pages-sub/static/images/.gitkeep create mode 100644 src/pages-sub/static/images/autoFill/auto-fill.svg rename src/{ => pages-sub}/static/images/customerService/avatar.svg (100%) rename src/{ => pages-sub}/static/images/customerService/qrCode.svg (100%) rename src/{ => pages-sub}/static/images/customerService/vector.svg (100%) rename src/{ => pages-sub}/static/images/schoolRank/background.svg (100%) rename src/{ => pages-sub}/static/images/schoolRank/title.svg (100%) rename src/{ => pages-sub}/static/images/schoolRank/trophy.svg (100%) delete mode 100644 src/pages/index/index.vue rename src/static/{svg => images/home}/app-logo.svg (100%) rename src/static/images/{customerService => home}/customerService.svg (100%) diff --git a/.eslintrc-auto-import.json b/.eslintrc-auto-import.json index c2ce1d4..5e29955 100644 --- a/.eslintrc-auto-import.json +++ b/.eslintrc-auto-import.json @@ -110,6 +110,11 @@ "optionalSubject": true, "requireSubject": true, "unSortTypeList": true, - "useUnSortType": true + "useUnSortType": true, + "useUniversityType": true, + "useRegionInfo": true, + "useUniversityLevel": true, + "useNatureList": true, + "useUniversityRank": true } } diff --git a/manifest.config.ts b/manifest.config.ts index 4259896..b8fcbd5 100644 --- a/manifest.config.ts +++ b/manifest.config.ts @@ -88,6 +88,9 @@ export default defineManifestConfig({ urlCheck: false, }, usingComponents: true, + optimization: { + subPackages: true, + }, // __usePrivacyCheck__: true, }, 'mp-alipay': { diff --git a/pages.config.ts b/pages.config.ts index 259bd04..f94dc90 100644 --- a/pages.config.ts +++ b/pages.config.ts @@ -89,94 +89,6 @@ export default defineUniPages({ navigationBarTitleText: '我的', }, }, - { - path: 'pages-sub/home/city/index', - type: 'page', - style: { - navigationStyle: 'custom', - navigationBarTitleText: '城市', - }, - }, - { - path: 'pages-sub/home/college/index', - type: 'page', - style: { - navigationBarTitleText: '大学', - }, - }, - { - path: 'pages-sub/home/career/index', - type: 'page', - style: { - navigationBarTitleText: '职业', - }, - }, - { - path: 'pages-sub/home/distinguish/index', - type: 'page', - style: { - navigationBarTitleText: '大学甄别', - }, - }, - { - path: 'pages-sub/home/evaluation/index', - type: 'page', - style: { - navigationBarTitleText: '专业测评', - }, - }, - { - path: 'pages-sub/home/expand/index', - type: 'page', - style: { - navigationBarTitleText: '查扩缩招', - }, - }, - { - path: 'pages-sub/home/line/index', - type: 'page', - style: { - navigationBarTitleText: '批次线', - }, - }, - { - path: 'pages-sub/home/major/index', - type: 'page', - style: { - navigationBarTitleText: '专业', - }, - }, - { - path: 'pages-sub/home/rank/index', - type: 'page', - style: { - navigationBarTitleText: '排名', - }, - }, - { - path: 'pages-sub/home/inputScore/index', - type: 'page', - style: { - navigationStyle: 'custom', - navigationBarTitleText: '输入成绩', - }, - }, - { - path: 'pages-sub/home/schoolRank/index', - type: 'page', - style: { - navigationStyle: 'custom', - navigationBarTitleText: '院校排行榜', - }, - }, - { - path: 'pages-sub/customerService/index/index', - type: 'page', - style: { - navigationBarTitleText: '在线客服', - navigationStyle: 'custom', - }, - }, ], preloadRule: { 'pages/home/index/index': { diff --git a/src/components-sub/FilterMenu/FilterMenu.vue b/src/components-sub/FilterMenu/FilterMenu.vue new file mode 100644 index 0000000..0db8c21 --- /dev/null +++ b/src/components-sub/FilterMenu/FilterMenu.vue @@ -0,0 +1,106 @@ + + + + + diff --git a/src/components-sub/FilterMenu/Nature.vue b/src/components-sub/FilterMenu/Nature.vue new file mode 100644 index 0000000..0ea3b1e --- /dev/null +++ b/src/components-sub/FilterMenu/Nature.vue @@ -0,0 +1,21 @@ + + + diff --git a/src/components-sub/FilterMenu/Phase.vue b/src/components-sub/FilterMenu/Phase.vue new file mode 100644 index 0000000..1b219f1 --- /dev/null +++ b/src/components-sub/FilterMenu/Phase.vue @@ -0,0 +1,66 @@ + + + + + diff --git a/src/components-sub/FilterMenu/Region.vue b/src/components-sub/FilterMenu/Region.vue new file mode 100644 index 0000000..775a11e --- /dev/null +++ b/src/components-sub/FilterMenu/Region.vue @@ -0,0 +1,34 @@ + + + + + diff --git a/src/components-sub/FilterMenu/UniType.vue b/src/components-sub/FilterMenu/UniType.vue new file mode 100644 index 0000000..07816a5 --- /dev/null +++ b/src/components-sub/FilterMenu/UniType.vue @@ -0,0 +1,21 @@ + + + diff --git a/src/components/checkGroup/CheckGroup.vue b/src/components/checkGroup/CheckGroup.vue new file mode 100644 index 0000000..f27d933 --- /dev/null +++ b/src/components/checkGroup/CheckGroup.vue @@ -0,0 +1,73 @@ + + + + + diff --git a/src/components/fab/Fab.vue b/src/components/fab/Fab.vue index 904680c..bb49bf6 100644 --- a/src/components/fab/Fab.vue +++ b/src/components/fab/Fab.vue @@ -4,7 +4,7 @@ @@ -12,9 +12,9 @@ diff --git a/src/pages-sub/components/home/Consultation.vue b/src/components/home/Consultation.vue similarity index 100% rename from src/pages-sub/components/home/Consultation.vue rename to src/components/home/Consultation.vue diff --git a/src/pages-sub/components/home/HotRank.vue b/src/components/home/HotRank.vue similarity index 81% rename from src/pages-sub/components/home/HotRank.vue rename to src/components/home/HotRank.vue index b38b070..12e3226 100644 --- a/src/pages-sub/components/home/HotRank.vue +++ b/src/components/home/HotRank.vue @@ -18,8 +18,8 @@ class="hot-rank-item flex-none pt-[32rpx] pb-[38rpx] px-[32rpx]" hover-class="none" :hover-stop-propagation="false" - v-for="item in swiperList" - :key="item.id" + v-for="item in unSortTypeList" + :key="item.type" @click="toSchool(item.type)" > @@ -51,19 +51,29 @@ diff --git a/src/pages-sub/components/home/SubMenu.vue b/src/components/home/SubMenu.vue similarity index 100% rename from src/pages-sub/components/home/SubMenu.vue rename to src/components/home/SubMenu.vue diff --git a/src/hooks/useFilterSchool.ts b/src/hooks/useFilterSchool.ts new file mode 100644 index 0000000..9325737 --- /dev/null +++ b/src/hooks/useFilterSchool.ts @@ -0,0 +1,57 @@ +import { + getUniversityType, + getRegionInfo, + getUniversityLevel, + getNature, +} from '@/service/index/api' + +export const useUniversityLevel = () => { + const phaseList = ref([]) + getUniversityLevel().then((res) => { + if (res.code === 200) { + phaseList.value = res.result as { code: number; name: string }[] + } + }) + + return { phaseList } +} + +interface Region { + code: string + name: string + parentcode: string + simplename: string + pinyin: string +} +export const useRegionInfo = () => { + const regionList = ref([]) + getRegionInfo().then((res) => { + if (res.code === 200) { + regionList.value = res.result as Region[] + } + }) + + return { regionList } +} + +export const useUniversityType = () => { + const typeList = ref([]) + getUniversityType().then((res) => { + if (res.code === 200) { + typeList.value = res.result as { id: number; name: string }[] + } + }) + + return { typeList } +} + +export const useNatureList = () => { + const natureList = ref([]) + getNature().then((res) => { + if (res.code === 200) { + natureList.value = res.result as { id: number; name: string }[] + } + }) + + return { natureList } +} diff --git a/src/hooks/useUnSortType.ts b/src/hooks/useUnSortType.ts index 4e2edda..b26d12e 100644 --- a/src/hooks/useUnSortType.ts +++ b/src/hooks/useUnSortType.ts @@ -1,11 +1,34 @@ // 高校排名类型 -import { getUnSortType } from '@/service/index/api' +import { getUnSortType, getUniversityRank } from '@/service/index/api' type UnSortType = { type: number; name: string }[] -export let unSortTypeList = ref([]) export const useUnSortType = () => { + let unSortTypeList = ref([]) getUnSortType().then((res) => { unSortTypeList.value = res.result as UnSortType }) + + return { unSortTypeList } +} + +export const useUniversityRank = ({ + Year, + Type, + PageSize, + PageIndex, +}: { + Year: number + Type: number + PageSize: number + PageIndex: number +}) => { + let universityRankList = ref([]) + getUniversityRank({ Year, Type, PageSize, PageIndex }).then((res) => { + if (res.code === 200) { + console.log(res.result) + } + }) + + return { universityRankList } } diff --git a/src/layouts/demo.vue b/src/layouts/demo.vue deleted file mode 100644 index 768d875..0000000 --- a/src/layouts/demo.vue +++ /dev/null @@ -1,17 +0,0 @@ - - - diff --git a/src/manifest.json b/src/manifest.json index 35420a2..ec70944 100644 --- a/src/manifest.json +++ b/src/manifest.json @@ -59,7 +59,10 @@ "setting": { "urlCheck": false }, - "usingComponents": true + "usingComponents": true, + "optimization": { + "subPackages": true + } }, "mp-alipay": { "usingComponents": true, diff --git a/src/pages-sub/customerService/index/index.vue b/src/pages-sub/customerService/index/index.vue index f37bdb1..0491aea 100644 --- a/src/pages-sub/customerService/index/index.vue +++ b/src/pages-sub/customerService/index/index.vue @@ -1,3 +1,12 @@ + +{ + layout: 'page', + style: { + navigationStyle: 'custom', + }, +} + +