master
鲁洪霞 2025-08-08 16:34:49 +08:00
parent 056713f0fa
commit af51897560
5 changed files with 111 additions and 15 deletions

View File

@ -1,2 +1,2 @@
VITE_BASE=/
VITE_BASE_URL=http://192.168.0.16:8471/qhd-regulatoryV2/
VITE_BASE_URL=http://192.168.0.14:8059/baoming/

View File

@ -1,2 +1,2 @@
VITE_BASE=/
VITE_BASE_URL=http://192.168.20.240:8471/qhd-regulatoryV2/
VITE_BASE_URL=http://192.168.0.14:8059/baoming/

View File

@ -26,6 +26,12 @@ const routes = [
meta: { title: "登录", isLogin: false },
component: () => import("@/views/login/index"),
},
{
path: "/enroll",
name: "/enroll",
meta: { title: "报名", isLogin: false },
component: () => import("@/views/enroll/index"),
},
{
path: "/",
name: "app",

101
src/views/enroll/index.vue Normal file
View File

@ -0,0 +1,101 @@
<template>
<div class="container">
<div class="main">
<el-form ref="formRef" :model="form" label-width="auto" :rules="rules">
<el-form-item label="姓名">
<el-input v-model="form.name" />
</el-form-item>
<el-form-item label="性别">
<el-select v-model="form.sex" placeholder="Select">
<el-option
v-for="item in sex_options"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item label="学历">
<el-select v-model="form.degree" placeholder="Select">
<el-option
v-for="item in degree_options"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item label="电话">
<el-input v-model="form.mobile" />
</el-form-item>
<el-form-item label="工作单位">
<el-input v-model="form.corp" />
</el-form-item>
<el-form-item>
<el-button type="primary" class="submit_btn">提交</el-button>
</el-form-item>
</el-form>
</div>
</div>
</template>
<script setup>
import { ref } from "vue";
const form = ref({
username: "",
sex: "",
degree: "",
mobile: "",
corp: "",
});
const rules = {
username: [{ required: true, message: "请输入用户名", trigger: "blur" }],
sex: [{ required: true, message: "请选择性别", trigger: "blur" }],
degree: [{ required: true, message: "请选择专业", trigger: "blur" }],
mobile: [{ required: true, message: "请输入电话", trigger: "blur" }],
corp: [{ required: true, message: "请输入请输入电话", trigger: "blur" }],
};
const sex_options = [
{
value: "Option1",
label: "男",
},
{
value: "Option2",
label: "女",
},
];
const degree_options = [
{
value: "Option1",
label: "本科",
},
{
value: "Option2",
label: "硕士",
},
{
value: "Option3",
label: "博士",
},
];
</script>
<style scoped lang="scss">
.container {
background: #0a7dfe;
padding: 20px;
width: 100vw;
height: 100vh;
.main {
width: 100%;
background: #ffffff;
border-radius: 20px 20px 4px 4px;
padding: 20px;
margin-top: 200px;
}
.submit_btn {
width: 100%;
}
}
</style>

View File

@ -69,14 +69,12 @@ import { ref } from "vue";
import { useRouter } from "vue-router";
import Verification from "@/components/verification/index";
import { useUserStore } from "@/pinia/user";
import { getAppPath, getUserInfo, Login } from "@/request/api";
import { getUserInfo, Login } from "@/request/api";
import { debounce } from "throttle-debounce";
import useForm from "@/hooks/useForm.js";
import dayjs from "dayjs";
import { encrypt } from "@/assets/js/aes_secret.js";
import { ElMessage } from "element-plus";
import { useQRCode } from "@vueuse/integrations/useQRCode";
import { getFileUrl } from "@/assets/js/utils.js";
const userStore = useUserStore();
const router = useRouter();
@ -93,16 +91,7 @@ const rules = {
password: [{ required: true, message: "请输入密码", trigger: "blur" }],
code: [{ required: true, message: "请输入验证码", trigger: "blur" }],
};
const fnGetAppDownloadPath = async () => {
const { versionmanager } = await getAppPath();
appPath.value = useQRCode(() => getFileUrl() + versionmanager.fileUrl, {
width: 100,
height: 100,
margin: 1,
correctLevel: "H",
});
};
fnGetAppDownloadPath();
const fnLogin = debounce(
1000,
() => {