北斗应用技术培训报名系统入口页面

This commit is contained in:
2026-03-27 17:47:10 +08:00
commit 2c9a2100c7
24 changed files with 4107 additions and 0 deletions

24
.gitignore vendored Normal file
View File

@@ -0,0 +1,24 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
*.local
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

3
.vscode/extensions.json vendored Normal file
View File

@@ -0,0 +1,3 @@
{
"recommendations": ["Vue.volar"]
}

5
README.md Normal file
View File

@@ -0,0 +1,5 @@
# Vue 3 + Vite
This template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.
Learn more about IDE Support for Vue in the [Vue Docs Scaling up Guide](https://vuejs.org/guide/scaling-up/tooling.html#ide-support).

13
index.html Normal file
View File

@@ -0,0 +1,13 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="icon" href="/src/assets/bdjy.png" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>北斗应用技术培训证书考试报名系统</title>
</head>
<body>
<div id="app" class="text-white"></div>
<script type="module" src="/src/main.js"></script>
</body>
</html>

3847
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

22
package.json Normal file
View File

@@ -0,0 +1,22 @@
{
"name": "home",
"version": "0.0.0",
"private": true,
"type": "module",
"scripts": {
"dev": "vite --port=7024",
"build": "vite build",
"preview": "vite preview"
},
"dependencies": {
"element-plus": "^2.9.4",
"home": "file:",
"vue": "^3.5.13"
},
"devDependencies": {
"@tailwindcss/vite": "^4.0.7",
"@vitejs/plugin-vue": "^5.2.1",
"tailwindcss": "^4.0.7",
"vite": "^6.1.0"
}
}

BIN
public/bdjy.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

BIN
public/bg/1.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 254 KiB

BIN
public/bg/2.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

BIN
public/bg/3.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

BIN
public/bg/4.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 759 KiB

BIN
public/bg/5.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 395 KiB

BIN
public/bg/6.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 276 KiB

BIN
public/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

BIN
public/partners/1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

BIN
public/partners/2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
public/partners/3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

164
src/App.vue Normal file
View File

@@ -0,0 +1,164 @@
<template>
<div>
<div class="w-full px-4 my-2 fixed top-0 left-0 z-40">
<div
class="w-full px-20 py-6 rounded-lg bg-sky-500/50 flex justify-between items-center"
>
<div class="w-2/3 flex justify-between">
<a
:class="light == 'article' ? 'text-sky-300' : ''"
href="#article"
@click="active('article')"
>首页</a
>
<a
:class="light == 'training' ? 'text-sky-300' : ''"
href="#training"
@click="active('training')"
>培训课程</a
>
<a
:class="light == 'exam' ? 'text-sky-300' : ''"
href="#exam"
@click="active('exam')"
>考试平台</a
>
<a
:class="light == 'publish' ? 'text-sky-300' : ''"
href="#publish"
@click="active('publish')"
>信息发布</a
>
<a
:class="light == 'certificate' ? 'text-sky-300' : ''"
href="#certificate"
@click="active('certificate')"
>证书查询</a
>
<a
:class="light == 'partners' ? 'text-sky-300' : ''"
href="#partners"
@click="active('partners')"
>合作伙伴</a
>
<a
:class="light == 'aboutUs' ? 'text-sky-300' : ''"
href="#aboutUs"
@click="active('aboutUs')"
>关于我们</a
>
</div>
<div>
<el-button
style="width: 160px; height: 40px"
type="primary"
@click="application"
>考试报名</el-button
>
</div>
</div>
</div>
<a id="training" href="https://edu.mohrss.gov.cn/jnpx/zcdh/gxjn/bdyyjs.htm">
<img id="article" class="w-full" src="../public/bg/1.jpg" alt="" />
</a>
<a
id="training"
href="https://apphhz10f2w7582.h5.xiaoeknow.com/p/course/ecourse/course_2un90Qw1MS5wzgHxrQFe8kvt7wA?shareBind=true"
>
<img class="w-full" src="../public/bg/2.jpg" alt="" />
</a>
<img id="exam" class="w-full" src="../public/bg/3.jpg" alt="" />
<img id="publish" class="w-full" src="../public/bg/4.jpg" alt="" />
<a id="certificate" href="http://edu.mohrss.gov.cn/">
<img class="w-full" src="../public/bg/5.jpg" alt="" />
</a>
<div class="bg-slate-100 p-6" id="partners">
<div class="w-full text-black text-6xl text-center mb-6">合作伙伴</div>
<div class="w-full grid grid-cols-4">
<div
v-for="(item, index) in partnersUrl"
:key="index"
style="box-shadow: 0 0 5px 5px rgb(0 0 0 / 0.1)"
class="m-5"
>
<a :href="item.websiteUrl">
<img class="" :src="item.imgUrl" alt="" />
</a>
</div>
</div>
</div>
<img id="aboutUs" class="w-full" src="../public/bg/6.jpg" alt="" />
<div class="bg-black text-center py-2">
北京北斗教仪科技有限公司
<br />
<a href="https://beian.miit.gov.cn/#/Integrated/index">京ICP备15049214号</a>
</div>
</div>
</template>
<script setup>
import { ref } from "vue";
import bdjy from "../public/partners/3.png";
const light = ref("article");
const active = (id) => {
light.value = id;
};
const application = () => {
window.location.href = "http://certlogin.hwasmart.com/main";
};
const partnersUrl = {
1: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
2: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
3: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
4: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
5: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
6: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
7: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
8: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
9: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
10: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
11: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
12: {
websiteUrl: "http://www.beidouin.com/",
imgUrl: bdjy,
},
};
</script>
<style scoped></style>

BIN
src/assets/bdjy.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.8 KiB

BIN
src/assets/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

BIN
src/assets/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

11
src/assets/main.css Normal file
View File

@@ -0,0 +1,11 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@import "tailwindcss";
@layer components {
.w-h-full {
@apply w-full h-full m-0 p-0 overflow-hidden;
}
}

10
src/main.js Normal file
View File

@@ -0,0 +1,10 @@
import './assets/main.css'
import { createApp } from 'vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import App from './App.vue'
const app = createApp(App)
app.use(ElementPlus)
app.mount('#app')

8
vite.config.js Normal file
View File

@@ -0,0 +1,8 @@
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import tailwindcss from '@tailwindcss/vite'
export default defineConfig({
publicPath: './',
plugins: [ vue(), tailwindcss()]
})