diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 4fbdefe..8945713 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -66,11 +66,11 @@ importers:
specifier: 1.11.10
version: 1.11.10
pinia:
- specifier: 2.0.36
- version: 2.0.36(typescript@5.7.2)(vue@3.4.21(typescript@5.7.2))
+ specifier: ^3.0.1
+ version: 3.0.1(typescript@5.7.2)(vue@3.4.21(typescript@5.7.2))
pinia-plugin-persistedstate:
specifier: 3.2.1
- version: 3.2.1(pinia@2.0.36(typescript@5.7.2)(vue@3.4.21(typescript@5.7.2)))
+ version: 3.2.1(pinia@3.0.1(typescript@5.7.2)(vue@3.4.21(typescript@5.7.2)))
pinyin-pro:
specifier: ^3.26.0
version: 3.26.0
@@ -2109,6 +2109,15 @@ packages:
'@vue/devtools-api@6.6.4':
resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==}
+ '@vue/devtools-api@7.7.2':
+ resolution: {integrity: sha512-1syn558KhyN+chO5SjlZIwJ8bV/bQ1nOVTG66t2RbG66ZGekyiYNmRO7X9BJCXQqPsFHlnksqvPhce2qpzxFnA==}
+
+ '@vue/devtools-kit@7.7.2':
+ resolution: {integrity: sha512-CY0I1JH3Z8PECbn6k3TqM1Bk9ASWxeMtTCvZr7vb+CHi+X/QwQm5F1/fPagraamKMAHVfuuCbdcnNg1A4CYVWQ==}
+
+ '@vue/devtools-shared@7.7.2':
+ resolution: {integrity: sha512-uBFxnp8gwW2vD6FrJB8JZLUzVb6PNRG0B0jBnHsOH8uKyva2qINY8PTF5Te4QlTbMDqU5K6qtJDr6cNsKWhbOA==}
+
'@vue/language-core@1.8.27':
resolution: {integrity: sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==}
peerDependencies:
@@ -2424,6 +2433,9 @@ packages:
bing-translate-api@4.0.2:
resolution: {integrity: sha512-JJ8XUehnxzOhHU91oy86xEtp8OOMjVEjCZJX042fKxoO19NNvxJ5omeCcxQNFoPbDqVpBJwqiGVquL0oPdQm1Q==}
+ birpc@0.2.19:
+ resolution: {integrity: sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==}
+
bluebird@3.7.2:
resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==}
@@ -2719,6 +2731,10 @@ packages:
resolution: {integrity: sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==}
engines: {node: '>= 0.6'}
+ copy-anything@3.0.5:
+ resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==}
+ engines: {node: '>=12.13'}
+
copy-descriptor@0.1.1:
resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==}
engines: {node: '>=0.10.0'}
@@ -3768,6 +3784,9 @@ packages:
resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
hasBin: true
+ hookable@5.5.3:
+ resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==}
+
hosted-git-info@2.8.9:
resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
@@ -4155,6 +4174,10 @@ packages:
resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==}
engines: {node: '>= 0.4'}
+ is-what@4.1.16:
+ resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==}
+ engines: {node: '>=12.13'}
+
is-windows@1.0.2:
resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
engines: {node: '>=0.10.0'}
@@ -4774,6 +4797,9 @@ packages:
mitt@1.1.2:
resolution: {integrity: sha512-3btxP0O9iGADGWAkteQ8mzDtEspZqu4I32y4GZYCV5BrwtzdcRpF4dQgNdJadCrbBx7Lu6Sq9AVrerMHR0Hkmw==}
+ mitt@3.0.1:
+ resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==}
+
mixin-deep@1.3.2:
resolution: {integrity: sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==}
engines: {node: '>=0.10.0'}
@@ -5150,15 +5176,12 @@ packages:
peerDependencies:
pinia: ^2.0.0
- pinia@2.0.36:
- resolution: {integrity: sha512-4UKApwjlmJH+VuHKgA+zQMddcCb3ezYnyewQ9NVrsDqZ/j9dMv5+rh+1r48whKNdpFkZAWVxhBp5ewYaYX9JcQ==}
+ pinia@3.0.1:
+ resolution: {integrity: sha512-WXglsDzztOTH6IfcJ99ltYZin2mY8XZCXujkYWVIJlBjqsP6ST7zw+Aarh63E1cDVYeyUcPCxPHzJpEOmzB6Wg==}
peerDependencies:
- '@vue/composition-api': ^1.4.0
typescript: '>=4.4.4'
- vue: ^2.6.14 || ^3.2.0
+ vue: ^2.7.0 || ^3.5.11
peerDependenciesMeta:
- '@vue/composition-api':
- optional: true
typescript:
optional: true
@@ -5795,6 +5818,10 @@ packages:
spdx-license-ids@3.0.20:
resolution: {integrity: sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==}
+ speakingurl@14.0.1:
+ resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==}
+ engines: {node: '>=0.10.0'}
+
split-string@3.1.0:
resolution: {integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==}
engines: {node: '>=0.10.0'}
@@ -5973,6 +6000,10 @@ packages:
engines: {node: '>=18.12.0'}
hasBin: true
+ superjson@2.2.2:
+ resolution: {integrity: sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==}
+ engines: {node: '>=16'}
+
supports-color@2.0.0:
resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==}
engines: {node: '>=0.8.0'}
@@ -9500,6 +9531,24 @@ snapshots:
'@vue/devtools-api@6.6.4': {}
+ '@vue/devtools-api@7.7.2':
+ dependencies:
+ '@vue/devtools-kit': 7.7.2
+
+ '@vue/devtools-kit@7.7.2':
+ dependencies:
+ '@vue/devtools-shared': 7.7.2
+ birpc: 0.2.19
+ hookable: 5.5.3
+ mitt: 3.0.1
+ perfect-debounce: 1.0.0
+ speakingurl: 14.0.1
+ superjson: 2.2.2
+
+ '@vue/devtools-shared@7.7.2':
+ dependencies:
+ rfdc: 1.4.1
+
'@vue/language-core@1.8.27(typescript@5.7.2)':
dependencies:
'@volar/language-core': 1.11.1
@@ -9869,6 +9918,8 @@ snapshots:
dependencies:
got: 11.8.6
+ birpc@0.2.19: {}
+
bluebird@3.7.2: {}
bmp-js@0.1.0: {}
@@ -10201,6 +10252,10 @@ snapshots:
cookie@0.7.1: {}
+ copy-anything@3.0.5:
+ dependencies:
+ is-what: 4.1.16
+
copy-descriptor@0.1.1: {}
core-js-compat@3.39.0:
@@ -11473,6 +11528,8 @@ snapshots:
he@1.2.0: {}
+ hookable@5.5.3: {}
+
hosted-git-info@2.8.9: {}
hosted-git-info@4.1.0:
@@ -11837,6 +11894,8 @@ snapshots:
call-bind: 1.0.7
get-intrinsic: 1.2.4
+ is-what@4.1.16: {}
+
is-windows@1.0.2: {}
is-wsl@2.2.0:
@@ -12673,6 +12732,8 @@ snapshots:
mitt@1.1.2: {}
+ mitt@3.0.1: {}
+
mixin-deep@1.3.2:
dependencies:
for-in: 1.0.2
@@ -13080,15 +13141,14 @@ snapshots:
pify@2.3.0: {}
- pinia-plugin-persistedstate@3.2.1(pinia@2.0.36(typescript@5.7.2)(vue@3.4.21(typescript@5.7.2))):
+ pinia-plugin-persistedstate@3.2.1(pinia@3.0.1(typescript@5.7.2)(vue@3.4.21(typescript@5.7.2))):
dependencies:
- pinia: 2.0.36(typescript@5.7.2)(vue@3.4.21(typescript@5.7.2))
+ pinia: 3.0.1(typescript@5.7.2)(vue@3.4.21(typescript@5.7.2))
- pinia@2.0.36(typescript@5.7.2)(vue@3.4.21(typescript@5.7.2)):
+ pinia@3.0.1(typescript@5.7.2)(vue@3.4.21(typescript@5.7.2)):
dependencies:
- '@vue/devtools-api': 6.6.4
+ '@vue/devtools-api': 7.7.2
vue: 3.4.21(typescript@5.7.2)
- vue-demi: 0.14.10(vue@3.4.21(typescript@5.7.2))
optionalDependencies:
typescript: 5.7.2
@@ -13798,6 +13858,8 @@ snapshots:
spdx-license-ids@3.0.20: {}
+ speakingurl@14.0.1: {}
+
split-string@3.1.0:
dependencies:
extend-shallow: 3.0.2
@@ -14023,6 +14085,10 @@ snapshots:
- supports-color
- typescript
+ superjson@2.2.2:
+ dependencies:
+ copy-anything: 3.0.5
+
supports-color@2.0.0: {}
supports-color@3.2.3:
diff --git a/src/components/home/Banner.vue b/src/components/home/Banner.vue
index ae1d0b9..d5724ef 100644
--- a/src/components/home/Banner.vue
+++ b/src/components/home/Banner.vue
@@ -9,20 +9,18 @@
-
一键填报
-
-
+
+
diff --git a/src/components/navbar/Navbar.vue b/src/components/navbar/Navbar.vue
new file mode 100644
index 0000000..b1557e8
--- /dev/null
+++ b/src/components/navbar/Navbar.vue
@@ -0,0 +1,205 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ title }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/login-sub/components/LoginMask.vue b/src/login-sub/components/LoginMask.vue
index 983d65b..f7eff32 100644
--- a/src/login-sub/components/LoginMask.vue
+++ b/src/login-sub/components/LoginMask.vue
@@ -24,10 +24,10 @@
手机号快捷登录
-
-
-
-
+
+
+
+
已阅读并同意《服务条款》和《隐私条款》
@@ -42,6 +42,8 @@
+
+
diff --git a/src/login-sub/components/radio-group/RadioGroup.vue b/src/login-sub/components/radio-group/RadioGroup.vue
new file mode 100644
index 0000000..e1fd2d7
--- /dev/null
+++ b/src/login-sub/components/radio-group/RadioGroup.vue
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/pages-sub/components/badge/Badge.vue b/src/pages-sub/components/badge/Badge.vue
new file mode 100644
index 0000000..2f1d0f8
--- /dev/null
+++ b/src/pages-sub/components/badge/Badge.vue
@@ -0,0 +1,121 @@
+
+
+
+
+ {{ finalContent }}
+
+
+
+
+
+
+
diff --git a/src/pages-sub/components/check-group/CheckGroup.vue b/src/pages-sub/components/check-group/CheckGroup.vue
new file mode 100644
index 0000000..38fc909
--- /dev/null
+++ b/src/pages-sub/components/check-group/CheckGroup.vue
@@ -0,0 +1,96 @@
+
+
+
+ {{ item[labelKey] }}
+
+
+
+
+
+
+
diff --git a/src/pages-sub/components/check-group/Checkbox.vue b/src/pages-sub/components/check-group/Checkbox.vue
new file mode 100644
index 0000000..39d7bcf
--- /dev/null
+++ b/src/pages-sub/components/check-group/Checkbox.vue
@@ -0,0 +1,133 @@
+
+
+
+
+
+
+ {{ label }}
+
+
+
+
+
+
+
diff --git a/src/pages-sub/components/check-group/CheckboxGroup.vue b/src/pages-sub/components/check-group/CheckboxGroup.vue
new file mode 100644
index 0000000..c1194e8
--- /dev/null
+++ b/src/pages-sub/components/check-group/CheckboxGroup.vue
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/pages-sub/components/drop-menu/DropMenu.vue b/src/pages-sub/components/drop-menu/DropMenu.vue
new file mode 100644
index 0000000..87ba2c9
--- /dev/null
+++ b/src/pages-sub/components/drop-menu/DropMenu.vue
@@ -0,0 +1,158 @@
+
+
+
+
+
+
+
diff --git a/src/pages-sub/components/drop-menu/DropMenuItem.vue b/src/pages-sub/components/drop-menu/DropMenuItem.vue
new file mode 100644
index 0000000..6a6c018
--- /dev/null
+++ b/src/pages-sub/components/drop-menu/DropMenuItem.vue
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
diff --git a/src/pages-sub/components/radio-group/Radio.vue b/src/pages-sub/components/radio-group/Radio.vue
new file mode 100644
index 0000000..3d191df
--- /dev/null
+++ b/src/pages-sub/components/radio-group/Radio.vue
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+ {{ label }}
+
+
+
+
+
+
+
diff --git a/src/pages-sub/components/radio-group/RadioGroup.vue b/src/pages-sub/components/radio-group/RadioGroup.vue
new file mode 100644
index 0000000..e1fd2d7
--- /dev/null
+++ b/src/pages-sub/components/radio-group/RadioGroup.vue
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/pages-sub/home/components/Table.vue b/src/pages-sub/components/table/Table.vue
similarity index 93%
rename from src/pages-sub/home/components/Table.vue
rename to src/pages-sub/components/table/Table.vue
index 4478614..928daf7 100644
--- a/src/pages-sub/home/components/Table.vue
+++ b/src/pages-sub/components/table/Table.vue
@@ -1,6 +1,5 @@
-
-
-
+
{{ item.name }}
-
-
+
+
import { useUserStore } from '@/store/user'
+import Navbar from '@/pages-sub/components/navbar/Navbar.vue'
+import CheckboxGroup from '@/pages-sub/components/check-group/CheckboxGroup.vue'
+import Checkbox from '@/pages-sub/components/check-group/Checkbox.vue'
+import RadioGroup from '@/pages-sub/components/radio-group/RadioGroup.vue'
+import Radio from '@/pages-sub/components/radio-group/Radio.vue'
import {
useRules,
@@ -191,33 +183,65 @@ const saveScore = () => {
diff --git a/src/pages-sub/home/line/index.vue b/src/pages-sub/home/line/index.vue
index e0b6758..3f2fada 100644
--- a/src/pages-sub/home/line/index.vue
+++ b/src/pages-sub/home/line/index.vue
@@ -1,5 +1,168 @@
+
+{
+ layout: 'page',
+ style: {
+ navigationStyle: 'custom',
+ },
+}
+
+
- 批次线
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
diff --git a/src/pages-sub/home/major/components/MajorBaseInfo.vue b/src/pages-sub/home/major/components/MajorBaseInfo.vue
index ce19c50..e11e62f 100644
--- a/src/pages-sub/home/major/components/MajorBaseInfo.vue
+++ b/src/pages-sub/home/major/components/MajorBaseInfo.vue
@@ -67,7 +67,7 @@