确认报名:比赛信息和项目信息对接

main
significative 8 months ago
parent 4298d0b84c
commit 4ddf40c46d
  1. 4
      src/api/person.ts
  2. 2
      src/views/competition/index.vue
  3. 2
      src/views/projectName/index.vue
  4. 54
      src/views/registrationGroup/index.vue
  5. 50
      src/views/registrationPersonage/index.vue

@ -49,6 +49,8 @@ enum api {
membersList = '/online/cgreport/api/getData/1696139786651197442', // 团队成员列表
adviserList = '/online/cgreport/api/getData/1828357196360998913', // 指导老师列表
listStudent = '/AnnualCompPoint/annualCompPoint/listStudent', // 比赛项目报名表
findndbswxq = '/annualcomp/annualComp/findndbswxq', // 年度比赛详情
findcomppxq = '/AnnualCompPoint/annualCompPoint/findcomppxq', // 年度比赛项目详情
}
@ -88,3 +90,5 @@ export const getSignUpApi = (data: SignUpData) => request.post(api.signUp, data)
export const getMembersList = (params: MembersOrAdviser) => request.get(api.membersList, { params });
export const getAdviserList = (params: MembersOrAdviser) => request.get(api.adviserList, { params });
export const getNdbswxqList = (id:string) => request.get(api.findndbswxq, { params:{id} });
export const getComppxqList = (id:string) => request.get(api.findcomppxq, { params:{id} });

@ -126,7 +126,7 @@ getList();
//
function goProjectName(id: any) {
router.push(`/projectName?id=${id}`)
router.push(`/projectName?id=${id}&bcId=${route.query.id}`)
}
</script>

@ -84,7 +84,7 @@ function handleSub() {
let path;
if (data.value.entryForm === 'Y') path = '/registrationGroup';
else path = '/registrationPersonage';
router.push({ path, query: { id: route.query.id,objName:data.value.objName } })
router.push({ path, query: { id: route.query.id,objName:data.value.objName,bcId:route.query.bcId } })
}
getData();

@ -23,26 +23,26 @@
<el-card class="com">
<div class="title">比赛信息</div>
<div class="content">
<div class="card-annual">
<div class="annual">2023年度</div>
<div class="card-annual padding">
<div class="annual">{{ ndbs.annualid }}年度</div>
<div class="title-box">
<div class="text">河南省大学生创新创业大赛</div>
<div class="text">{{ ndbs.name }}</div>
<img src="../../assets/images/编组.png" alt="">
</div>
</div>
<div class="right">
<div class="info-box">
<div class="name">比赛年度</div>
<div class="title">2024年度</div>
<div class="title">{{ ndbs.annualid }}年度</div>
<div class="name">比赛名称</div>
<div class="title">河南省大学生创新创业大赛</div>
<div class="title">{{ ndbs.name }}</div>
<div class="date-box">
<div class="label">开始报名时间</div>
<div class="date">2323.6.1 18:00</div>
<div class="date">{{ ndbs.starttime }}</div>
</div>
<div class="date-box">
<div class="label">开始截至时间</div>
<div class="date">2323.6.1 18:00</div>
<div class="date">{{ ndbs.endtime }}</div>
</div>
</div>
</div>
@ -52,22 +52,22 @@
<el-card class="com">
<div class="title">项目信息</div>
<div class="content track">
<div class="card-annual">
<p>红色之旅赛道</p>
<div class="card-annual padding">
<p>{{ ndbsXm.objName }}</p>
</div>
<div class="right">
<div class="info-box">
<div class="name">项目名称</div>
<div class="title">红色之旅赛道</div>
<div class="title">{{ ndbsXm.objName }}</div>
<div class="name">要求人数</div>
<div class="title">1</div>
<div class="title">{{ ndbsXm.workCount }}</div>
<div class="date-box">
<div class="label">开始报名时间</div>
<div class="date">2323.6.1 18:00</div>
<div class="date">{{ ndbsXm.starttime?.split(' ')[0] }}</div>
</div>
<div class="date-box">
<div class="label">开始截至时间</div>
<div class="date">2323.6.1 18:00</div>
<div class="date">{{ ndbsXm.endtime?.split(' ')[0] }}</div>
</div>
</div>
</div>
@ -128,8 +128,8 @@
</el-tabs>
<!-- 动画区域 -->
<div class="animation-box" :class="{ translate: activeName === 'adviser' }">
<stu-list ref="stuRef"/>
<tea-list ref="teaRef"/>
<stu-list ref="stuRef" />
<tea-list ref="teaRef" />
</div>
</div>
</el-card>
@ -150,6 +150,8 @@ import { ElMessage } from 'element-plus';
import { getSignUpApi } from '@/api/person';
import stuList from './components/stuList.vue';
import teaList from './components/teaList.vue';
import { getNdbswxqList, getComppxqList } from '@/api/person';
const user = userStore();
const route = useRoute();
@ -163,6 +165,17 @@ function pasSex(num: number) {
else return '保密'
}
//
const ndbs = ref<any>({})
const ndbsXm = ref<any>({})
getNdbswxqList(route.query.bcId as string).then((res: any) => {
if (res.result) ndbs.value = res.result
})
getComppxqList(route.query.id as string).then((res: any) => {
console.log(res.result, 'xm');
if (res.result) ndbsXm.value = res.result
})
// members: adviser:
const activeName = ref('members');
@ -319,7 +332,10 @@ const submit = () => {
gap: 22px;
.card-annual {
padding: 28px 0 0 28px;
&.padding {
padding: 20px;
}
width: 340px;
height: 182px;
background: linear-gradient(90deg, #21ACA5 0%, #42D9AC99 100%);
@ -380,6 +396,9 @@ const submit = () => {
align-items: center;
.label {
text-overflow: ellipsis;
overflow: hidden;
text-wrap: nowrap;
height: 20px;
font-family: Microsoft YaHei UI, Microsoft YaHei UI;
font-weight: 400;
@ -389,6 +408,9 @@ const submit = () => {
}
.date {
text-overflow: ellipsis;
overflow: hidden;
text-wrap: nowrap;
font-family: Microsoft YaHei UI, Microsoft YaHei UI;
font-weight: bold;
font-size: 18px;

@ -23,26 +23,26 @@
<el-card class="com">
<div class="title">比赛信息</div>
<div class="content">
<div class="card-annual">
<div class="annual">2023年度</div>
<div class="card-annual padding">
<div class="annual">{{ ndbs.annualid }}年度</div>
<div class="title-box">
<div class="text">河南省大学生创新创业大赛</div>
<div class="text">{{ ndbs.name }}</div>
<img src="../../assets/images/编组.png" alt="">
</div>
</div>
<div class="right">
<div class="info-box">
<div class="name">比赛年度</div>
<div class="title">2024年度</div>
<div class="title">{{ ndbs.annualid }}年度</div>
<div class="name">比赛名称</div>
<div class="title">河南省大学生创新创业大赛</div>
<div class="title">{{ ndbs.name }}</div>
<div class="date-box">
<div class="label">开始报名时间</div>
<div class="date">2323.6.1 18:00</div>
<div class="date">{{ ndbs.starttime }}</div>
</div>
<div class="date-box">
<div class="label">开始截至时间</div>
<div class="date">2323.6.1 18:00</div>
<div class="date">{{ ndbs.endtime }}</div>
</div>
</div>
</div>
@ -52,22 +52,22 @@
<el-card class="com">
<div class="title">项目信息</div>
<div class="content track">
<div class="card-annual">
<p>红色之旅赛道</p>
<div class="card-annual padding">
<p>{{ ndbsXm.objName }}</p>
</div>
<div class="right">
<div class="info-box">
<div class="name">项目名称</div>
<div class="title">红色之旅赛道</div>
<div class="title">{{ ndbsXm.objName }}</div>
<div class="name">要求人数</div>
<div class="title">1</div>
<div class="title">{{ ndbsXm.workCount }}</div>
<div class="date-box">
<div class="label">开始报名时间</div>
<div class="date">2323.6.1 18:00</div>
<div class="date">{{ ndbsXm.starttime?.split(' ')[0] }}</div>
</div>
<div class="date-box">
<div class="label">开始截至时间</div>
<div class="date">2323.6.1 18:00</div>
<div class="date">{{ ndbsXm.endtime?.split(' ')[0] }}</div>
</div>
</div>
</div>
@ -152,6 +152,8 @@ import { getSignUpApi } from '@/api/person';
import { ElMessage } from 'element-plus';
import { useRoute, useRouter } from 'vue-router';
import userStore from '@/store/module/user';
import { getNdbswxqList, getComppxqList } from '@/api/person';
const user = userStore();
const route = useRoute();
const router = useRouter();
@ -175,6 +177,17 @@ const upData = ref<Parameters<typeof getSignUpApi>[0]>({
teamName: ""
});
//
const ndbs = ref<any>({})
const ndbsXm = ref<any>({})
getNdbswxqList(route.query.bcId as string).then((res: any) => {
if (res.result) ndbs.value = res.result
})
getComppxqList(route.query.id as string).then((res: any) => {
console.log(res.result, 'xm');
if (res.result) ndbsXm.value = res.result
})
const subLoading = ref(false);
async function submit() {
@ -301,7 +314,10 @@ async function submit() {
gap: 22px;
.card-annual {
padding: 28px 0 0 28px;
&.padding {
padding: 20px;
}
width: 340px;
height: 182px;
background: linear-gradient(90deg, #21ACA5 0%, #42D9AC99 100%);
@ -362,6 +378,9 @@ async function submit() {
align-items: center;
.label {
text-overflow: ellipsis;
overflow: hidden;
text-wrap: nowrap;
height: 20px;
font-family: Microsoft YaHei UI, Microsoft YaHei UI;
font-weight: 400;
@ -371,6 +390,9 @@ async function submit() {
}
.date {
text-overflow: ellipsis;
overflow: hidden;
text-wrap: nowrap;
font-family: Microsoft YaHei UI, Microsoft YaHei UI;
font-weight: bold;
font-size: 18px;

Loading…
Cancel
Save