0552625c by zhangmeng

高中生报名

1 parent ff58cc11
......@@ -720,29 +720,23 @@ const goPersonInfo = (row) => {
const flag2=row.signInfo.some(val=>val.cptProjectName.indexOf('高中')>-1)
const participantsInfoArr=_.cloneDeep(extraform.value)
if (flag){
for (const val of participantsInfoArr) {
for (const val of participantsInfoArr) {
if (flag){
if(val.name.indexOf('学生证')>-1||val.name.indexOf('毕业证')>-1){
val.status=0
}else{
val.status=1
}
}
}
if (flag2){
for (const val of participantsInfoArr) {
if (flag2){
if(val.name.indexOf('学生证')>-1){
val.status=0
}else{
val.status=1
}
}
}
debugger
const params = {
matchId: matchId.value,
title: language.value == 0 ? '完善补充信息' : 'Complete the supplementary information',
participantsInfoArr: flag||flag2?participantsInfoArr: extraform.value,
participantsInfoArr: flag||flag2?participantsInfoArr: _.cloneDeep(extraform.value),
personId: row.personInfo.id,
extraId: row.extraPersonInfo?.id || 0,
isNational: isNational.value
......
......@@ -4,46 +4,46 @@
</div>
<!-- 参赛人员清单-->
<el-table v-loading="loading" :data="list" :sum-text="sumText" border style="width: 100%">
<el-table-column :label="language==0?'序号':'Index'" align="center" type="index" width="70" />
<el-table-column :label="language==0?'序号':'Index'" align="center" type="index" width="70"/>
<el-table-column
v-if="!isNational" :label="language==0?'姓名':'Real Name'" align="center"
min-width="100" prop="personInfo.realName"
v-if="!isNational" :label="language==0?'姓名':'Real Name'" align="center"
min-width="100" prop="personInfo.realName"
/>
<el-table-column v-if="isNational" :label="language==0?'姓氏':'Surname'" min-width="100" prop="personInfo.xing" />
<el-table-column v-if="isNational" :label="language==0?'名':'Name'" min-width="100" prop="personInfo.ming" />
<el-table-column v-if="isNational" :label="language==0?'姓氏':'Surname'" min-width="100" prop="personInfo.xing"/>
<el-table-column v-if="isNational" :label="language==0?'名':'Name'" min-width="100" prop="personInfo.ming"/>
<el-table-column
:label="language==0?'所属国家/地区':'Country'" align="center" header-align="center"
min-width="120"
:label="language==0?'所属国家/地区':'Country'" align="center" header-align="center"
min-width="120"
>
<template #default="scope">
<span v-if="scope.row.personInfo.countryName">{{ scope.row.personInfo.countryName }}</span>
<span v-if="scope.row.personInfo.representing">{{ scope.row.personInfo.representing }}</span>
</template>
</el-table-column>
<el-table-column :label="language==0?'性别':'Gender'" align="center" prop="personInfo.sexStr" />
<el-table-column :label="language==0?'性别':'Gender'" align="center" prop="personInfo.sexStr"/>
<el-table-column
v-if="!isNational" :label="language==0?'证件类型':'ID Type'" :width="language==0?'':'140'"
align="center" header-align="center" prop="personInfo.idcTypeStr"
v-if="!isNational" :label="language==0?'证件类型':'ID Type'" :width="language==0?'':'140'"
align="center" header-align="center" prop="personInfo.idcTypeStr"
/>
<el-table-column
v-if="!isNational" :label="language==0?'证件号码':'ID NO.'" header-align="center" prop="personInfo.idcCode"
width="200"
v-if="!isNational" :label="language==0?'证件号码':'ID NO.'" header-align="center" prop="personInfo.idcCode"
width="200"
/>
<el-table-column
v-if="isNational" :label="language==0?'WDSF 会员号':'WDSF MIN'" header-align="center"
prop="personInfo.wdsfMin" width="200"
v-if="isNational" :label="language==0?'WDSF 会员号':'WDSF MIN'" header-align="center"
prop="personInfo.wdsfMin" width="200"
/>
<el-table-column
v-if="!isNational" :label="language==0?'出生日期':'Date of Birth'" align="center"
header-align="center" prop="personInfo.birth" width="130"
v-if="!isNational" :label="language==0?'出生日期':'Date of Birth'" align="center"
header-align="center" prop="personInfo.birth" width="130"
/>
<el-table-column
v-if="isNational" :label="language==0?'年龄组':'Age group'" header-align="center" prop="personInfo.ageGroup"
width="110"
v-if="isNational" :label="language==0?'年龄组':'Age group'" header-align="center" prop="personInfo.ageGroup"
width="110"
/>
<el-table-column
v-if="isNational" :label="language==0?'舞种':'Division'" header-align="center" prop="personInfo.division"
width="110"
v-if="isNational" :label="language==0?'舞种':'Division'" header-align="center" prop="personInfo.division"
width="110"
/>
<!-- <el-table-column :label="language==0?'会员角色':'Role'" width="150">-->
<!-- <template #default="scope">-->
......@@ -62,8 +62,8 @@
<!-- </el-table-column>-->
<!-- <el-table-column :label="language==0?'详细地址':'Detailed Address'" prop="personInfo.address" min-width="140"/>-->
<el-table-column
:fixed="hasAction?false:'right'" :label="language==0?'报项':'REGISTERED COMPETITION'" header-align="center"
min-width="300"
:fixed="hasAction?false:'right'" :label="language==0?'报项':'REGISTERED COMPETITION'" header-align="center"
min-width="300"
>
<template #default="props">
<ol>
......@@ -80,9 +80,9 @@
</template>
</el-table-column>
<el-table-column
v-if="showSummary"
:fixed="hasAction?false:'right'" :label="language==0?'保险费':'Premium'" align="center"
min-width="100" prop="insuranceFee"
v-if="showSummary"
:fixed="hasAction?false:'right'" :label="language==0?'保险费':'Premium'" align="center"
min-width="100" prop="insuranceFee"
>
<template #default="scope">
<span class="text-primary">{{ language == 0 ? '¥' : '€' }}{{ scope.row.insuranceFee }}</span>
......@@ -92,26 +92,27 @@
<el-table-column v-for="(e,index) in extraTableHead" :key="index" :label="e" align="center" min-width="110">
<template #default="scope">
<el-link
v-if="scope.row.signInfo[0].extraPersonInfoMapList[index]?.type=='2'"
:href="fillImgUrl(scope.row.signInfo[0].extraPersonInfoMapList[index]?.value?.url)"
target="_blank"
v-if="scope.row.signInfo[0].extraPersonInfoMapList[index]?.type=='2'"
:href="fillImgUrl(scope.row.signInfo[0].extraPersonInfoMapList[index]?.value?.url)"
target="_blank"
>
<span class="text-primary">{{ scope.row.signInfo[0].extraPersonInfoMapList[index]?.value?.name }}</span>
</el-link>
<img
v-else-if="scope.row.signInfo[0].extraPersonInfoMapList[index]?.type=='3'"
:src="fillImgUrl(scope.row.signInfo[0].extraPersonInfoMapList[index]?.value?.url||scope.row.signInfo[0]?.extraPersonInfoMapList[index]?.value)"
style="width: 50px;"
v-else-if="scope.row.signInfo[0].extraPersonInfoMapList[index]?.type=='3'"
:src="fillImgUrl(scope.row.signInfo[0].extraPersonInfoMapList[index]?.value?.url||scope.row.signInfo[0]?.extraPersonInfoMapList[index]?.value)"
style="width: 50px;"
>
<span v-else>{{ scope.row.signInfo[0].extraPersonInfoMapList[index]?.value }}</span>
</template>
</el-table-column>
<el-table-column v-if="hasAction" :label="language==0?'操作':'Actions'" align="center" fixed="right" width="150">
<template #default="scope">
<el-button v-if="extraform&&extraform.length>0&&handelRules(scope.row)" link type="primary" @click="goPersonInfo(scope.row)">
<span v-if="scope.row.extraPersonInfo">{{ language == 0 ? '修改' : 'Edit' }}</span>
<span v-else class="red">{{ language == 0 ? '完善补充信息' : 'Additional Information' }}</span>
</el-button>
<el-button v-if="extraform&&extraform.length>0&&handelRules(scope.row)" link type="primary"
@click="goPersonInfo(scope.row)">
<span v-if="scope.row.extraPersonInfo">{{ language == 0 ? '修改' : 'Edit' }}</span>
<span v-else class="red">{{ language == 0 ? '完善补充信息' : 'Additional Information' }}</span>
</el-button>
</template>
</el-table-column>
</el-table>
......@@ -120,11 +121,11 @@
<div style="display: inline-block">
{{ language == 0 ? '总人数' : 'Count' }}: <span class="mr20">{{ list.length }}</span>
</div>
<div v-if="showSummary" style="display: inline-block">
{{ language == 0 ? '金额小计' : 'Amount' }}: <span>{{ language == 0 ? '¥' : '€' }}{{ total }}</span>
</div>
</div>
</div>
......@@ -132,7 +133,7 @@
<script setup>
import * as match from '@/apiPc/match'
import { ref } from 'vue'
import {ref} from 'vue'
const emit = defineEmits(['editExtra'])
const props = defineProps({
......@@ -164,7 +165,7 @@ const props = defineProps({
default: 0
}
})
import { useStorage } from '@vueuse/core/index'
import {useStorage} from '@vueuse/core/index'
const language = useStorage('language', 0)
const extraTableHead = ref([])
......@@ -184,12 +185,15 @@ function getTableHead() {
})
}
function handelRules(row){
return row.signInfo.some(val=>val.cptProjectName?.indexOf('大学生')>-1||val.cptProjectName?.indexOf('高中')>-1)
function handelRules(row) {
const flag = row.signInfo.some(val => val.cptProjectName?.indexOf('大学生') > -1 || val.cptProjectName?.indexOf('高中') > -1)
const status = props.extraform.some(val => val.status == 0)
return flag || status
// return true
}
function getMatch() {
match.getMatchById({ id: props.matchId }).then(res => {
match.getMatchById({id: props.matchId}).then(res => {
if (res.data.languageSource == '100') {
isNational.value = false
} else {
......@@ -212,7 +216,7 @@ function totalMethod() {
font-size: 16px;
color: #95A1A6;
border: 1px solid #EEEFF0;
span {
font-size: 18px;
font-family: DIN Alternate;
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!