1
This commit is contained in:
@@ -15,7 +15,6 @@
|
|||||||
<HelloWorld msg="Vite + Vue" /> -->
|
<HelloWorld msg="Vite + Vue" /> -->
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import HelloWorld from "./components/HelloWorld.vue";
|
|
||||||
import TopHeader from "./components/TopHeader.vue";
|
import TopHeader from "./components/TopHeader.vue";
|
||||||
import Header from "./components/Header.vue";
|
import Header from "./components/Header.vue";
|
||||||
|
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ let departmentList = [
|
|||||||
|
|
||||||
{ key: "1", name: "电子信息工程系" },
|
{ key: "1", name: "电子信息工程系" },
|
||||||
{ key: "2", name: "通信工程系" },
|
{ key: "2", name: "通信工程系" },
|
||||||
// { key: "4", name: "本科实验教学中心" },
|
// { key: "4", name: "未知" },
|
||||||
{ key: "5", name: "数据统计" },
|
{ key: "5", name: "数据统计" },
|
||||||
];
|
];
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -1,21 +1,31 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="w-full flex justify-between py-[18px] px-[40px] bg-white">
|
<div class="w-full flex justify-between py-[18px] px-[40px] bg-white">
|
||||||
<div>
|
<div>
|
||||||
<img
|
<img src="../assets/web/weblogo1.png" alt="" class="w-[372px] h-[60px]" />
|
||||||
src="../assets/web/statisTop.png"
|
|
||||||
alt=""
|
|
||||||
class="w-[167px] h-[60px]"
|
|
||||||
/>
|
|
||||||
</div>
|
</div>
|
||||||
<div
|
<el-popover placement="top-start" :width="120" trigger="hover">
|
||||||
v-if="userStore.userInfo && userStore.userInfo.data"
|
<div
|
||||||
class="h-[48px] flex py-[6px] px-[14px] bg-[#F6F8FA] rounded-[10px]"
|
@click="toLogin"
|
||||||
>
|
class="px-[12px] py-[4px] cursor-pointer text-[#333] hover:bg-[#F5F5F5]"
|
||||||
<div class="avatar"></div>
|
>
|
||||||
<div class="leading-[34px] ml-[10px]">
|
重新登录
|
||||||
{{ userStore.userInfo.data.name }}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<template #reference>
|
||||||
|
<div
|
||||||
|
v-if="
|
||||||
|
userStore.userInfo &&
|
||||||
|
userStore.userInfo.data &&
|
||||||
|
route.path != '/login'
|
||||||
|
"
|
||||||
|
class="h-[48px] flex py-[6px] px-[14px] bg-[#F6F8FA] rounded-[10px] cursor-pointer"
|
||||||
|
>
|
||||||
|
<div class="avatar"></div>
|
||||||
|
<div class="leading-[34px] ml-[10px]">
|
||||||
|
{{ userStore.userInfo.data.name }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-popover>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -23,8 +33,13 @@
|
|||||||
import { watch } from "vue";
|
import { watch } from "vue";
|
||||||
import { useUserStore } from "@/store/user.ts";
|
import { useUserStore } from "@/store/user.ts";
|
||||||
import { useRouter, useRoute } from "vue-router";
|
import { useRouter, useRoute } from "vue-router";
|
||||||
|
const route = useRoute();
|
||||||
|
const router = useRouter();
|
||||||
|
|
||||||
let userStore: any = useUserStore();
|
let userStore: any = useUserStore();
|
||||||
|
function toLogin() {
|
||||||
|
router.push("/login");
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
|||||||
@@ -28,17 +28,21 @@ export const LogoutAPI = (): Res<null> => instance.post("/admin/logout");
|
|||||||
// post请求,有参数,如传用户名和密码
|
// post请求,有参数,如传用户名和密码
|
||||||
export const loginAPI = (data: any): Res<any> =>
|
export const loginAPI = (data: any): Res<any> =>
|
||||||
instance.post(
|
instance.post(
|
||||||
`/basic-api/auth/login?teacherId=${data.teacherId}&password=${data.password}`,
|
`/basic-api/auth/login`,
|
||||||
{}
|
// `/basic-api/auth/login`,
|
||||||
|
{ teacherId: data.teacherId, password: data.password }
|
||||||
);
|
);
|
||||||
|
|
||||||
// post请求 ,没参数,但要路径传参
|
// post请求 ,没参数,但要路径传参
|
||||||
export const StatusAPI = (data: ReqStatus): Res<null> =>
|
export const StatusAPI = (data: ReqStatus): Res<null> =>
|
||||||
instance.post(`/productCategory?ids=${data.id}&navStatus=${data.navStatus}`);
|
instance.post(`/productCategory`, {
|
||||||
|
ids: data.id,
|
||||||
|
navStatus: data.navStatus,
|
||||||
|
});
|
||||||
|
|
||||||
// get请求,没参数,
|
// get请求,没参数,
|
||||||
export const getTeacherListApi = (params: any): Res<null> =>
|
export const getTeacherListApi = (params: any): Res<null> =>
|
||||||
instance.get(`/basic-api/mentors/lsit?id=${params}`);
|
instance.get(`/basic-api/mentors/list?id=${params}`);
|
||||||
export const getStuListApi = (params: any) =>
|
export const getStuListApi = (params: any) =>
|
||||||
instance.get(`/basic-api/mentors/studentList?teacherId=${params.teacherId}`);
|
instance.get(`/basic-api/mentors/studentList?teacherId=${params.teacherId}`);
|
||||||
//获取用户信息
|
//获取用户信息
|
||||||
|
|||||||
@@ -75,44 +75,35 @@
|
|||||||
<div class="text-[#333]">学生号:</div>
|
<div class="text-[#333]">学生号:</div>
|
||||||
<div class="text-[#666]">{{ stuDetail.data.studentId || "-" }}</div>
|
<div class="text-[#666]">{{ stuDetail.data.studentId || "-" }}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex mb-[10px]">
|
<!-- <div class="flex mb-[10px]">
|
||||||
<div class="text-[#333]">性别:</div>
|
<div class="text-[#333]">性别:</div>
|
||||||
<div class="text-[#666]">{{ stuDetail.data.gender || "-" }}</div>
|
<div class="text-[#666]">{{ stuDetail.data.gender || "-" }}</div>
|
||||||
</div>
|
</div> -->
|
||||||
<div class="flex mb-[10px]">
|
<div class="flex mb-[10px]">
|
||||||
<div class="text-[#333]">院系:</div>
|
<div class="text-[#333]">院系:</div>
|
||||||
<div class="text-[#666]">
|
<div class="text-[#666]">
|
||||||
{{
|
{{ stuDetail.data.departmentName || "-" }}
|
||||||
(stuDetail.data.department && stuDetail.data.department.name) ||
|
|
||||||
"-"
|
|
||||||
}}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex mb-[10px]">
|
<div class="flex mb-[10px]">
|
||||||
<div class="text-[#333]">专业:</div>
|
<div class="text-[#333]">专业:</div>
|
||||||
<div class="text-[#666]">
|
<div class="text-[#666]">
|
||||||
{{ (stuDetail.data.major && stuDetail.data.major.name) || "-" }}
|
{{ stuDetail.data.majorName || "-" }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex mb-[10px]">
|
<!-- <div class="flex mb-[10px]">
|
||||||
<div class="text-[#333]">班级:</div>
|
<div class="text-[#333]">年级:</div>
|
||||||
<div class="text-[#666]">
|
<div class="text-[#666]">
|
||||||
{{
|
{{ stuDetail.data.currentGrade || "-" }}
|
||||||
(stuDetail.data.academicClass &&
|
|
||||||
stuDetail.data.academicClass.name) ||
|
|
||||||
"-"
|
|
||||||
}}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> -->
|
||||||
<div class="flex mb-[10px]">
|
<div class="flex mb-[10px]">
|
||||||
<div class="text-[#333]">书院:</div>
|
<div class="text-[#333]">书院:</div>
|
||||||
<div class="text-[#666]">
|
<div class="text-[#666]">
|
||||||
{{
|
{{ stuDetail.data.collegeName || "-" }}
|
||||||
(stuDetail.data.college && stuDetail.data.college.name) || "-"
|
|
||||||
}}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex mb-[10px]">
|
<!-- <div class="flex mb-[10px]">
|
||||||
<div class="text-[#333]">班级:</div>
|
<div class="text-[#333]">班级:</div>
|
||||||
<div class="text-[#666]">
|
<div class="text-[#666]">
|
||||||
{{
|
{{
|
||||||
@@ -121,7 +112,7 @@
|
|||||||
"-"
|
"-"
|
||||||
}}
|
}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> -->
|
||||||
<div>
|
<div>
|
||||||
<div class="mb-[10px]">学生评估:</div>
|
<div class="mb-[10px]">学生评估:</div>
|
||||||
<el-input
|
<el-input
|
||||||
@@ -169,6 +160,12 @@
|
|||||||
{{ teacherDail.data.birthYear || "-" }}
|
{{ teacherDail.data.birthYear || "-" }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="flex mb-[10px]">
|
||||||
|
<div class="text-[#333]">入职时间:</div>
|
||||||
|
<div class="text-[#666]">
|
||||||
|
{{ teacherDail.data.hireDate || "-" }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="flex mb-[10px]">
|
<div class="flex mb-[10px]">
|
||||||
<div class="text-[#333]">职称:</div>
|
<div class="text-[#333]">职称:</div>
|
||||||
<div class="text-[#666]">
|
<div class="text-[#666]">
|
||||||
@@ -360,10 +357,11 @@ const columns = [
|
|||||||
key: "collegeName",
|
key: "collegeName",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "班级",
|
title: "辅导员",
|
||||||
dataIndex: "collegeClassName",
|
dataIndex: "counselor",
|
||||||
key: "collegeClassName",
|
key: "counselor",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
title: "详情",
|
title: "详情",
|
||||||
key: "action",
|
key: "action",
|
||||||
@@ -506,12 +504,10 @@ async function getStuList() {
|
|||||||
|
|
||||||
if (res?.data?.students?.length) {
|
if (res?.data?.students?.length) {
|
||||||
res?.data?.students.forEach((item) => {
|
res?.data?.students.forEach((item) => {
|
||||||
item.collegeClassName = item?.collegeClass?.name || "-";
|
item.collegeName = item?.collegeName || "-";
|
||||||
item.collegeName = item?.college?.name || "-";
|
item.majorName = item?.majorName || "-";
|
||||||
item.majorName = item?.major?.name || "-";
|
item.departmentName = item?.departmentName || "-";
|
||||||
item.departmentName = item?.department?.name || "-";
|
item.counselor = item?.counselor || "-";
|
||||||
// item.collegeClassName = item.collegeClass.name;
|
|
||||||
// item.collegeClassName = item.collegeClass.name;
|
|
||||||
});
|
});
|
||||||
stuList.data.push(...res.data.students);
|
stuList.data.push(...res.data.students);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -113,8 +113,8 @@ const InputPassword = Input.Password;
|
|||||||
const formRef = ref();
|
const formRef = ref();
|
||||||
const loading = ref(false);
|
const loading = ref(false);
|
||||||
const formData: any = reactive({
|
const formData: any = reactive({
|
||||||
teacherId: "995042",
|
teacherId: "",
|
||||||
password: "123456",
|
password: "",
|
||||||
});
|
});
|
||||||
async function handleLogin() {
|
async function handleLogin() {
|
||||||
// let res1 = await getTeacherListApi();
|
// let res1 = await getTeacherListApi();
|
||||||
|
|||||||
@@ -1,14 +1,15 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="sta_bg p-[20px] mt-[96px] relative">
|
<div class="sta_bg p-[20px] mt-[96px] relative pt-[50px]">
|
||||||
<div class="absolute left-[250px] top-[-65px]">
|
<div class="absolute left-[20px] top-[8px]">
|
||||||
<div class="mr-[20px]">
|
<div class="mr-[20px]">
|
||||||
<!-- <Button type="primary" size="large" block @click="back"> 返回 </Button> -->
|
<!-- <Button type="primary" size="large" block @click="back"> 返回 </Button> -->
|
||||||
<div
|
<!-- <div
|
||||||
@click="back"
|
@click="back"
|
||||||
class="cursor-pointer px-[20px] py-[6px] rounded-[6px] bg-[#F5F6FA]"
|
class="cursor-pointer px-[20px] py-[6px] rounded-[6px] bg-[#F5F6FA]"
|
||||||
>
|
>
|
||||||
< 返回
|
< 返回
|
||||||
</div>
|
</div> -->
|
||||||
|
<el-button type="primary" @click="back">< 返回</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="w-full h-[calc(100%-132px)]">
|
<div class="w-full h-[calc(100%-132px)]">
|
||||||
|
|||||||
@@ -34,7 +34,9 @@ export default defineConfig({
|
|||||||
// target: 'http://lh.holo.huatengkexun.com/',
|
// target: 'http://lh.holo.huatengkexun.com/',
|
||||||
// target: "http://chen.hnedu.huatengkexun.com/",
|
// target: "http://chen.hnedu.huatengkexun.com/",
|
||||||
// target: "https://hnaicm.admin.huatengkexun.com/",
|
// target: "https://hnaicm.admin.huatengkexun.com/",
|
||||||
target: " http://localhost:6669/",
|
// target: "https://tk2.aicm.huatengkexun.com/",
|
||||||
|
// target: "https://hnaicm.admin.huatengkexun.com/",
|
||||||
|
target: "http://localhost:6669/", //生产
|
||||||
|
|
||||||
changeOrigin: true,
|
changeOrigin: true,
|
||||||
// ws: true,
|
// ws: true,
|
||||||
|
|||||||
Reference in New Issue
Block a user