cf1d45b8 by 杨炀

no message

2 parents 30ff7d2f f3b3387a
This diff could not be displayed because it is too large.
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
49 <el-form-item :label="language==0?'证件号':'Passport number'"> 49 <el-form-item :label="language==0?'证件号':'Passport number'">
50 <el-input v-model="myform.passportNumber"/> 50 <el-input v-model="myform.passportNumber"/>
51 </el-form-item> 51 </el-form-item>
52 <el-form-item :label="language==0?'有效证件':'Valid Certificates Scanning Copy'" required> 52 <el-form-item :label="language==0?'有效证件':'Valid Passport'" required>
53 <file-upload v-model="myform.passportUrl" :limit="1" :is-show-tip="false" :button-text="'Upload'"/> 53 <file-upload v-model="myform.passportUrl" :limit="1" :is-show-tip="false" :button-text="'Upload'"/>
54 </el-form-item> 54 </el-form-item>
55 <el-form-item :label="language==0?'WDSF会员号':'WDSF MIN'" prop="wdsfMin"> 55 <el-form-item :label="language==0?'WDSF会员号':'WDSF MIN'" prop="wdsfMin">
......
...@@ -49,11 +49,14 @@ ...@@ -49,11 +49,14 @@
49 49
50 <!-- 添加人员--> 50 <!-- 添加人员-->
51 <addCoach ref="dialogAddCoach" @submitForm="getList"/> 51 <addCoach ref="dialogAddCoach" @submitForm="getList"/>
52 <add-coach-en ref="dialogAddCoachEn" @submitForm="getList"/>
53 <add-wdsf ref="dialogAddWDSF" @submitForm="getList"/>
52 <Import ref="dialogImportProps" @submitForm="getList"/> 54 <Import ref="dialogImportProps" @submitForm="getList"/>
53 </template> 55 </template>
54 56
55 <script setup> 57 <script setup>
56 import addCoach from '../match/components/addCoach' 58 import AddCoachEn from '../match/components/addCoach_en'
59 import AddCoach from '../match/components/addCoach'
57 import personTable from '../match/components/personTable' 60 import personTable from '../match/components/personTable'
58 import Import from '../match/components/import' 61 import Import from '../match/components/import'
59 import {ref, watch} from 'vue' 62 import {ref, watch} from 'vue'
...@@ -68,6 +71,7 @@ import {getGroupPersonList, getPerPersonList} from "@/apiPc/match"; ...@@ -68,6 +71,7 @@ import {getGroupPersonList, getPerPersonList} from "@/apiPc/match";
68 import PersonTable from "@/viewsPc/match/components/personTable"; 71 import PersonTable from "@/viewsPc/match/components/personTable";
69 import useUserStore from "@/store/modules/user"; 72 import useUserStore from "@/store/modules/user";
70 import {useStorage} from "@vueuse/core/index"; 73 import {useStorage} from "@vueuse/core/index";
74 import AddWdsf from "@/viewsPc/match/components/addWdsf";
71 const language= useStorage('language',0) 75 const language= useStorage('language',0)
72 const tableData = ref([]) 76 const tableData = ref([])
73 const labelArr = ref([]) 77 const labelArr = ref([])
...@@ -116,7 +120,7 @@ function addMember() { ...@@ -116,7 +120,7 @@ function addMember() {
116 id: 0, 120 id: 0,
117 groupId: groupId.value 121 groupId: groupId.value
118 } 122 }
119 proxy.$refs['dialogAddCoach'].open(params) 123 proxy.$refs['dialogAddCoachEn'].open(params)
120 } 124 }
121 125
122 function importSportman() { 126 function importSportman() {
...@@ -150,7 +154,11 @@ function editCoach(row,title) { ...@@ -150,7 +154,11 @@ function editCoach(row,title) {
150 groupId: row.groupId, 154 groupId: row.groupId,
151 title: title 155 title: title
152 } 156 }
153 proxy.$refs['dialogAddCoach'].open(params) 157 if(row.label=='0'&&row.wdsfMin){
158 proxy.$refs['dialogAddWDSF'].open(params)
159 } else {
160 proxy.$refs['dialogAddCoachEn'].open(params)
161 }
154 } 162 }
155 163
156 function delperson(p) { 164 function delperson(p) {
......
...@@ -28,12 +28,14 @@ ...@@ -28,12 +28,14 @@
28 <div>运动队从一楼正大门通过安检进入馆内,乘坐扶梯上二楼,到达 竞赛区域。技术官员乘坐组委会安排通行车辆从场馆北坡道直接到达 二楼平台B5馆出入口进入馆内。</div> 28 <div>运动队从一楼正大门通过安检进入馆内,乘坐扶梯上二楼,到达 竞赛区域。技术官员乘坐组委会安排通行车辆从场馆北坡道直接到达 二楼平台B5馆出入口进入馆内。</div>
29 <div>整个二层按不同的功能分为五个区域,所有人员根据所持证件规 定权限到达不同的区域,红色为VIP区,蓝色为办公工作区,黄色为 观赛区,紫色为竞赛区,粉色为公共区域。</div> 29 <div>整个二层按不同的功能分为五个区域,所有人员根据所持证件规 定权限到达不同的区域,红色为VIP区,蓝色为办公工作区,黄色为 观赛区,紫色为竞赛区,粉色为公共区域。</div>
30 </div> 30 </div>
31 31 <div class="content" v-if="activeName!=0&&activeName<8">
32 <div class="content" v-if="activeName==1"> 32 待更新
33 </div>
34 <div class="content" v-if="activeName==11">
33 <div>注册报到中心位于酒店大堂,服务时间为7月19-22日10:00-22:00, 同时也作为咨询台。</div> 35 <div>注册报到中心位于酒店大堂,服务时间为7月19-22日10:00-22:00, 同时也作为咨询台。</div>
34 <div>相关紧急通知、餐食安排和交通服务等信息将公布在公告栏,如有疑 问或需服务,可前往注册报到中心进行咨询。</div> 36 <div>相关紧急通知、餐食安排和交通服务等信息将公布在公告栏,如有疑 问或需服务,可前往注册报到中心进行咨询。</div>
35 </div> 37 </div>
36 <div class="content" v-if="activeName==2"> 38 <div class="content" v-if="activeName==21">
37 <h4>一、证件使用与保管</h4> 39 <h4>一、证件使用与保管</h4>
38 <p>证件要妥善保管,不得故意损毁,证件仅限本人使用,严禁转让, 严禁超范围使用,严禁私自增减,涂改证件内容。 40 <p>证件要妥善保管,不得故意损毁,证件仅限本人使用,严禁转让, 严禁超范围使用,严禁私自增减,涂改证件内容。
39 </p> 41 </p>
...@@ -45,10 +47,10 @@ ...@@ -45,10 +47,10 @@
45 <p>本次赛事将使用以下颜色和数字表示相关注册分区:</p> 47 <p>本次赛事将使用以下颜色和数字表示相关注册分区:</p>
46 <img src="@/assets/zhinan/6.jpg"/> 48 <img src="@/assets/zhinan/6.jpg"/>
47 </div> 49 </div>
48 <div class="content" v-if="activeName==3"> 50 <div class="content" v-if="activeName==31">
49 <el-empty description="暂未上线"></el-empty> 51 <el-empty description="暂未上线"></el-empty>
50 </div> 52 </div>
51 <div class="content" v-if="activeName==4"> 53 <div class="content" v-if="activeName==41">
52 <h4>一、抵离安排</h4> 54 <h4>一、抵离安排</h4>
53 <p>所有技术官员、运动队接送站由组委会统一安排车辆接送,抵达站 应选择无锡苏南硕放机场、上海浦东国际机场和上海虹桥国际机场。 55 <p>所有技术官员、运动队接送站由组委会统一安排车辆接送,抵达站 应选择无锡苏南硕放机场、上海浦东国际机场和上海虹桥国际机场。
54 </p> 56 </p>
...@@ -77,7 +79,7 @@ ...@@ -77,7 +79,7 @@
77 <p>4. 下车时务必带齐自身携带物品,谨防遗失。</p> 79 <p>4. 下车时务必带齐自身携带物品,谨防遗失。</p>
78 <p>5. 如错失赛会车辆或中途临时需要出行,请及时与咨询台联系。</p> 80 <p>5. 如错失赛会车辆或中途临时需要出行,请及时与咨询台联系。</p>
79 </div> 81 </div>
80 <div class="content" v-if="activeName==5"> 82 <div class="content" v-if="activeName==51">
81 <h4>一、服务时间安排</h4> 83 <h4>一、服务时间安排</h4>
82 <p>2023年7月20日-2023年7月23日</p> 84 <p>2023年7月20日-2023年7月23日</p>
83 <h4>二、医疗点位设置</h4> 85 <h4>二、医疗点位设置</h4>
...@@ -89,13 +91,14 @@ ...@@ -89,13 +91,14 @@
89 </p> 91 </p>
90 <p>120急救车一辆及急救转运车一辆停在G14通道口等候,车上均配 备除颤仪、氧气钢瓶等急救器材。</p> 92 <p>120急救车一辆及急救转运车一辆停在G14通道口等候,车上均配 备除颤仪、氧气钢瓶等急救器材。</p>
91 </div> 93 </div>
92 <div class="content" v-if="activeName==6"><el-empty description="暂未上线"></el-empty></div> 94 <div class="content" v-if="activeName==61"><el-empty description="暂未上线"></el-empty></div>
93 <div class="content" v-if="activeName==7"><el-empty description="暂未上线"></el-empty></div> 95 <div class="content" v-if="activeName==71"><el-empty description="暂未上线"></el-empty></div>
96
94 <div class="content" v-if="activeName==8"> 97 <div class="content" v-if="activeName==8">
95 <label>点击下载:</label> 98 <label>点击下载:</label>
96 <a target="_blank" class="text-primary"> 99 <a target="_blank" class="text-primary" @click="showBuilding">
97 <el-icon style="position: relative;top: 2px"><download/></el-icon> 100 <el-icon style="position: relative;top: 2px"><download/></el-icon>
98 WDSF亚洲体育舞蹈节参赛指南0714 101 2024 WDSF亚洲体育舞蹈节参赛指南
99 </a> 102 </a>
100 </div> 103 </div>
101 </div> 104 </div>
...@@ -127,11 +130,11 @@ ...@@ -127,11 +130,11 @@
127 <div>The second floor is divided into five areas according to different functions. All personnel may arrive at different areas according to their access permissions. Red is the VIP area, blue is the office area, yellow is the spectator area, purple is the competition area and pink is the public area.</div> 130 <div>The second floor is divided into five areas according to different functions. All personnel may arrive at different areas according to their access permissions. Red is the VIP area, blue is the office area, yellow is the spectator area, purple is the competition area and pink is the public area.</div>
128 </div> 131 </div>
129 132
130 <div class="content" v-if="activeName==1"> 133 <div class="content" v-if="activeName==11">
131 <div>The Registration Center is located in the hotel lobby from 10:00-22:00 on July 19-22, also serves as the info desk.</div> 134 <div>The Registration Center is located in the hotel lobby from 10:00-22:00 on July 19-22, also serves as the info desk.</div>
132 <div>For information about emergency notices, catering services, and transportation services will be announced on the notice board. If you have any questions or need services, please contact the Registration Center.</div> 135 <div>For information about emergency notices, catering services, and transportation services will be announced on the notice board. If you have any questions or need services, please contact the Registration Center.</div>
133 </div> 136 </div>
134 <div class="content" v-if="activeName==2"> 137 <div class="content" v-if="activeName==21">
135 <h4>1 Use and Storage of Licenses</h4> 138 <h4>1 Use and Storage of Licenses</h4>
136 <p>Licenses shall be properly kept and shall not be intentionally damaged. Licenses shall be used only by the holders, which shall not be transferred to others, used for unauthorized purposes, or altered.</p> 139 <p>Licenses shall be properly kept and shall not be intentionally damaged. Licenses shall be used only by the holders, which shall not be transferred to others, used for unauthorized purposes, or altered.</p>
137 <p>For access to relevant activity and competition venue, license holders shall wear licenses in a conspicuous position against the chest.</p> 140 <p>For access to relevant activity and competition venue, license holders shall wear licenses in a conspicuous position against the chest.</p>
...@@ -144,10 +147,10 @@ ...@@ -144,10 +147,10 @@
144 <p>The following colors and numbers will be used to indicate the different areas:</p> 147 <p>The following colors and numbers will be used to indicate the different areas:</p>
145 <img src="@/assets/zhinan/5.jpg"/> 148 <img src="@/assets/zhinan/5.jpg"/>
146 </div> 149 </div>
147 <div class="content" v-if="activeName==3"> 150 <div class="content" v-if="activeName==31">
148 <el-empty description="no data"></el-empty> 151 <el-empty description="no data"></el-empty>
149 </div> 152 </div>
150 <div class="content" v-if="activeName==4"> 153 <div class="content" v-if="activeName==41">
151 <h4>1.Arrivals and Departures</h4> 154 <h4>1.Arrivals and Departures</h4>
152 <p>All technical officials and sports teams will be picked up by the organizing committee, 155 <p>All technical officials and sports teams will be picked up by the organizing committee,
153 and the arrival stations should be Wuxi Sunan Shuofang International Airport, Shanghai Pudong International Airport, and Shanghai Hongqiao International Airport.</p> 156 and the arrival stations should be Wuxi Sunan Shuofang International Airport, Shanghai Pudong International Airport, and Shanghai Hongqiao International Airport.</p>
...@@ -180,7 +183,7 @@ ...@@ -180,7 +183,7 @@
180 <p>4. When getting off the vehicles, make sure to bring all belongings with you.</p> 183 <p>4. When getting off the vehicles, make sure to bring all belongings with you.</p>
181 <p>5. If you miss the vehicle or need to make an unplanned travel, please contact the info desk in time.</p> 184 <p>5. If you miss the vehicle or need to make an unplanned travel, please contact the info desk in time.</p>
182 </div> 185 </div>
183 <div class="content" v-if="activeName==5"> 186 <div class="content" v-if="activeName==51">
184 <h4>1. Service Time</h4> 187 <h4>1. Service Time</h4>
185 <p>July 20-23, 2023</p> 188 <p>July 20-23, 2023</p>
186 <h4>2. Medical Stations</h4> 189 <h4>2. Medical Stations</h4>
...@@ -192,13 +195,13 @@ ...@@ -192,13 +195,13 @@
192 one nurse, two first aiders, one English-speaking volunteer, and one staff. Both medical stations are fully equipped with medicines needed for on-site medical emergencies.</p> 195 one nurse, two first aiders, one English-speaking volunteer, and one staff. Both medical stations are fully equipped with medicines needed for on-site medical emergencies.</p>
193 <p>One ambulance and one emergency transfer vehicle are waiting at the entrance of G14, and all of them are equipped with first aid equipment such as defibrilla- tors and oxygen cylinders.</p> 196 <p>One ambulance and one emergency transfer vehicle are waiting at the entrance of G14, and all of them are equipped with first aid equipment such as defibrilla- tors and oxygen cylinders.</p>
194 </div> 197 </div>
195 <div class="content" v-if="activeName==6"><el-empty description="no data"></el-empty></div> 198 <div class="content" v-if="activeName>0&&activeName<8"><el-empty description="no data"></el-empty></div>
196 <div class="content" v-if="activeName==7"><el-empty description="no data"></el-empty></div> 199 <div class="content" v-if="activeName==71"><el-empty description="no data"></el-empty></div>
197 <div class="content" v-if="activeName==8"> 200 <div class="content" v-if="activeName==8">
198 <label>Download:</label> 201 <label>Download:</label>
199 <a target="_blank" class="text-primary" > 202 <a target="_blank" class="text-primary" @click="showBuilding">
200 <el-icon style="position: relative;top: 2px"><download/></el-icon> 203 <el-icon style="position: relative;top: 2px"><download/></el-icon>
201 WDSF ASIAN DANCESPORT FESTIVAL ENTRY GUIDE 0714 204 2024 WDSF ASIAN DANCESPORT FESTIVAL ENTRY GUIDE
202 </a> 205 </a>
203 </div> 206 </div>
204 </div> 207 </div>
...@@ -209,10 +212,13 @@ ...@@ -209,10 +212,13 @@
209 <script setup> 212 <script setup>
210 import { onMounted, ref } from 'vue' 213 import { onMounted, ref } from 'vue'
211 import { getNewsListById, getRuleKind } from '@/apiPc/webSite' 214 import { getNewsListById, getRuleKind } from '@/apiPc/webSite'
212 import { useRouter } from 'vue-router' 215 import {useRoute, useRouter} from 'vue-router'
213 import {useStorage} from "@vueuse/core"; 216 import {useStorage} from "@vueuse/core";
217 import {getCurrentInstance} from "@vue/runtime-core";
214 const language = useStorage('language', 0) 218 const language = useStorage('language', 0)
215 const router = useRouter() 219 const router = useRouter()
220 const route = useRoute()
221 const { proxy } = getCurrentInstance()
216 const activeName = ref(0) 222 const activeName = ref(0)
217 const showVipFee = ref(false) 223 const showVipFee = ref(false)
218 const list = ref([ 224 const list = ref([
...@@ -247,17 +253,25 @@ const query = ref({ ...@@ -247,17 +253,25 @@ const query = ref({
247 pageNum: 1 253 pageNum: 1
248 }) 254 })
249 onMounted(() => { 255 onMounted(() => {
256 if(route.query.index){
257 changeTab(route.query.index)
258 } else {
250 getKindList() 259 getKindList()
260 }
261
251 }) 262 })
252 const getKindList = () => { 263 const getKindList = () => {
253 changeTab(0) 264 changeTab(0)
254 } 265 }
255 const changeTab = (n) => { 266 const changeTab = (n) => {
267 n = Number(n)
256 if(language.value==0){ 268 if(language.value==0){
257 nowTab.value = list.value[n] 269 nowTab.value = list.value[n]
258 } else { 270 } else {
259 nowTab.value = list_en.value[n] 271 nowTab.value = list_en.value[n]
260 } 272 }
273 console.log(nowTab.value)
274 activeName.value = n
261 if (nowTab.value.tag == 'fee') { 275 if (nowTab.value.tag == 'fee') {
262 showVipFee.value = true 276 showVipFee.value = true
263 } else { 277 } else {
...@@ -290,6 +304,9 @@ const goDetail = (n) => { ...@@ -290,6 +304,9 @@ const goDetail = (n) => {
290 }) 304 })
291 } 305 }
292 } 306 }
307 const showBuilding = () => {
308 proxy.$message.warning(language.value==0?'待更新':'Building')
309 }
293 </script> 310 </script>
294 <style lang="scss" scoped> 311 <style lang="scss" scoped>
295 .content{margin: 20px 0 0;text-indent: 2em; 312 .content{margin: 20px 0 0;text-indent: 2em;
......
...@@ -387,7 +387,7 @@ function editPerson(id) { ...@@ -387,7 +387,7 @@ function editPerson(id) {
387 groupId: groupId.value || 0 387 groupId: groupId.value || 0
388 } 388 }
389 if(language.value==0){ 389 if(language.value==0){
390 proxy.$refs['dialogAddCoachRef'].open(obj) 390 proxy.$refs['dialogAddCoachRef_En'].open(obj)
391 }else { 391 }else {
392 proxy.$refs['dialogAddCoachRef_En'].open(obj) 392 proxy.$refs['dialogAddCoachRef_En'].open(obj)
393 } 393 }
...@@ -400,11 +400,11 @@ function addCoach(n) { ...@@ -400,11 +400,11 @@ function addCoach(n) {
400 label: n, 400 label: n,
401 groupId: groupId.value 401 groupId: groupId.value
402 } 402 }
403 if(language.value==0){ 403 // if(language.value==0){
404 proxy.$refs['dialogAddCoachRef'].open(obj) 404 // proxy.$refs['dialogAddCoachRef'].open(obj)
405 }else { 405 // }else {
406 proxy.$refs['dialogAddCoachRef_En'].open(obj) 406 proxy.$refs['dialogAddCoachRef_En'].open(obj)
407 } 407 // }
408 } 408 }
409 </script> 409 </script>
410 410
......
...@@ -26,6 +26,11 @@ ...@@ -26,6 +26,11 @@
26 {{ c.realName }} 26 {{ c.realName }}
27 <img v-if="c.sex=='0'" src="@/assets/img/female.png"/> 27 <img v-if="c.sex=='0'" src="@/assets/img/female.png"/>
28 <img v-if="c.sex=='1'" src="@/assets/img/male.png"/> 28 <img v-if="c.sex=='1'" src="@/assets/img/male.png"/>
29
30 {{c.representing}}
31 {{c.ageGroup}}
32 {{c.division}}
33
29 <!-- -{{ c.age }}--> 34 <!-- -{{ c.age }}-->
30 </div> 35 </div>
31 </el-option> 36 </el-option>
......
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
37 <el-form-item :label="language==0?'证件号码':'ID NO'" prop="idcCode" required> 37 <el-form-item :label="language==0?'证件号码':'ID NO'" prop="idcCode" required>
38 <el-input v-model="form.idcCode" @blur="checkCode" :disabled="editgay"/> 38 <el-input v-model="form.idcCode" @blur="checkCode" :disabled="editgay"/>
39 </el-form-item> 39 </el-form-item>
40 <el-form-item :label="language==0?'有效证件':'Valid Certificates Scanning Copy'" required :required="form.idcType!='0'"> 40 <el-form-item :label="language==0?'有效证件':'Valid Passport'" required :required="form.idcType!='0'">
41 <file-upload v-model="form.passportUrl" :limit="1" :is-show-tip="false" /> 41 <file-upload v-model="form.passportUrl" :limit="1" :is-show-tip="false" />
42 </el-form-item> 42 </el-form-item>
43 <el-form-item :label="language==0?'性别':'Gender'" prop="sex"> 43 <el-form-item :label="language==0?'性别':'Gender'" prop="sex">
......
...@@ -32,13 +32,13 @@ ...@@ -32,13 +32,13 @@
32 <el-input v-model="form.ming" :disabled="editDis"/> 32 <el-input v-model="form.ming" :disabled="editDis"/>
33 </el-form-item> 33 </el-form-item>
34 <el-form-item :label="language==0?'性别':'Gender'" prop="sex"> 34 <el-form-item :label="language==0?'性别':'Gender'" prop="sex">
35 <el-radio-group v-model="form.sex" :disabled="form.idcType=='0'"> 35 <el-radio-group v-model="form.sex">
36 <el-radio value="0">{{ language == 0 ? '女' : 'female' }}</el-radio> 36 <el-radio value="0">{{ language == 0 ? '女' : 'female' }}</el-radio>
37 <el-radio value="1">{{ language == 0 ? '男' : 'male' }}</el-radio> 37 <el-radio value="1">{{ language == 0 ? '男' : 'male' }}</el-radio>
38 </el-radio-group> 38 </el-radio-group>
39 </el-form-item> 39 </el-form-item>
40 <el-form-item :label="language==0?'所属国家/地区':'Nationality'" prop="countryId" required> 40 <el-form-item :label="language==0?'所属国家/地区':'Nationality'" prop="countryId" required>
41 <el-select filterable v-model="form.countryId" style="width: 100%;"> 41 <el-select filterable v-model="form.countryId" style="width: 100%;" @change="changeCountry">
42 <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName" 42 <el-option v-for="item in countryList" :key="item.id" :label="language==0?item.name:item.enName"
43 :value="item.id"/> 43 :value="item.id"/>
44 </el-select> 44 </el-select>
...@@ -48,12 +48,13 @@ ...@@ -48,12 +48,13 @@
48 <el-option v-for="l in labels" :key="l.value" :value="l.value" :label="language==0?l.label:l.enlabel"/> 48 <el-option v-for="l in labels" :key="l.value" :value="l.value" :label="language==0?l.label:l.enlabel"/>
49 </el-select> 49 </el-select>
50 </el-form-item> 50 </el-form-item>
51 <el-form-item :label="language==0?'有效证件':'Valid Documents Scanning Copy'" required> 51 <el-form-item :label="language==0?'有效证件':'Valid Passport'" required>
52 <file-upload v-model="form.passportUrl" :limit="1" :is-show-tip="false" 52 <file-upload v-model="form.passportUrl" :limit="1" :is-show-tip="false"
53 :button-text="language==0?'上传':'Upload'"/> 53 :button-text="language==0?'上传':'Upload'"/>
54 <div class="tip"> 54 <div class="tip">
55 <span v-if="language==0">请上传护照副本,用于认证 </span> 55 <span v-if="language==0">请上传有效身份证件扫描件,用于核实身份信息、申请签证邀请函及购买保险等</span>
56 <span v-else>Please upload a passport copy for authentication</span> 56 <span v-else>Please upload a scanned copy of your valid passport for verification of identity information,
57 application of visa invitation letter and purchasing insurance etc.</span>
57 </div> 58 </div>
58 </el-form-item> 59 </el-form-item>
59 60
...@@ -66,11 +67,10 @@ ...@@ -66,11 +67,10 @@
66 :is-show-tip="false" 67 :is-show-tip="false"
67 /> 68 />
68 </el-form-item> 69 </el-form-item>
69 <el-form-item :label="language==0?'证件号码':'ID NO'" prop="idcCode"> 70
70 <el-input v-model="form.idcCode" :disabled="editgay"/> 71 <el-form-item :label="language==0?'证件类型':'ID Type'" prop="idcType"
71 </el-form-item> 72 :required="!form.wdsfMin&&form.labelArr.indexOf('0')>-1">
72 <el-form-item :label="language==0?'证件类型':'ID Type'" prop="idcType"> 73 <el-select v-model="form.idcType" style="width: 100%;" :disabled="editgay&&form.idcType!=''">
73 <el-select v-model="form.idcType" style="width: 100%;" :disabled="editgay">
74 <el-option 74 <el-option
75 v-for="item in certificates" 75 v-for="item in certificates"
76 :key="item.value" 76 :key="item.value"
...@@ -79,13 +79,18 @@ ...@@ -79,13 +79,18 @@
79 /> 79 />
80 </el-select> 80 </el-select>
81 </el-form-item> 81 </el-form-item>
82 <!-- <el-form-item :label="language==0?'出生日期':'Birth'" prop="birth">--> 82 <el-form-item :label="language==0?'证件号码':'ID NO'" prop="idcCode"
83 <!-- <el-date-picker--> 83 :required="!form.wdsfMin&&form.labelArr.indexOf('0')>-1">
84 <!-- v-model="form.birth" :disabled="form.idcType=='0'"--> 84 <el-input v-model="form.idcCode" :disabled="editgay&&form.idcCode!=''" @blur="giveBirthDay"/>
85 <!-- style="width: 100%;"--> 85 </el-form-item>
86 <!-- type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD"--> 86 <el-form-item :label="language==0?'出生日期':'Birth'" prop="birth"
87 <!-- />--> 87 :required="!form.wdsfMin&&form.labelArr.indexOf('0')>-1">
88 <!-- </el-form-item>--> 88 <el-date-picker
89 v-model="form.birth" :disabled="form.idcType=='0'"
90 style="width: 100%;"
91 type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD"
92 />
93 </el-form-item>
89 94
90 <el-form-item :label="language==0?'手机号码':'Phone'" prop="phone"> 95 <el-form-item :label="language==0?'手机号码':'Phone'" prop="phone">
91 <el-input v-model="form.phone" type="number"/> 96 <el-input v-model="form.phone" type="number"/>
...@@ -132,10 +137,11 @@ import {checkWdsf, getCaptchaSms} from "@/apiPc/match"; ...@@ -132,10 +137,11 @@ import {checkWdsf, getCaptchaSms} from "@/apiPc/match";
132 137
133 const language = useStorage('language', 0) 138 const language = useStorage('language', 0)
134 const certificates = ref([ 139 const certificates = ref([
135 // { 140 {
136 // value: '0', 141 value: '0',
137 // label: language.value == 0 ? '居民身份证' : 'Resident ID card' 142 disabled: language.value == 0 ? false : true,
138 // }, 143 label: language.value == 0 ? '居民身份证' : 'Resident ID card'
144 },
139 { 145 {
140 value: '1', 146 value: '1',
141 label: language.value == 0 ? '护照' : 'Passport' 147 label: language.value == 0 ? '护照' : 'Passport'
...@@ -149,7 +155,7 @@ const {proxy} = getCurrentInstance() ...@@ -149,7 +155,7 @@ const {proxy} = getCurrentInstance()
149 const emit = defineEmits(['submitForm']) 155 const emit = defineEmits(['submitForm'])
150 const data = reactive({ 156 const data = reactive({
151 form: { 157 form: {
152 // countryId: 240 158 // countryId: 240,
153 sex: '0' 159 sex: '0'
154 }, 160 },
155 rules: { 161 rules: {
...@@ -184,7 +190,7 @@ const data = reactive({ ...@@ -184,7 +190,7 @@ const data = reactive({
184 countryList: [], 190 countryList: [],
185 regionsList: [], 191 regionsList: [],
186 labels: [ 192 labels: [
187 // {value: '0', label: '运动员', enlabel: 'Athletes'}, 193 {value: '0', label: '运动员', enlabel: 'Athletes'},
188 {value: '1', label: '教练', enlabel: 'Coach'}, 194 {value: '1', label: '教练', enlabel: 'Coach'},
189 {value: '2', label: '领队', enlabel: 'Leader'}, 195 {value: '2', label: '领队', enlabel: 'Leader'},
190 {value: '4', label: '队医', enlabel: 'Nurse'}, 196 {value: '4', label: '队医', enlabel: 'Nurse'},
...@@ -305,6 +311,9 @@ function checkCard() { ...@@ -305,6 +311,9 @@ function checkCard() {
305 form.value.xing = res.data.surname 311 form.value.xing = res.data.surname
306 form.value.ming = res.data.name 312 form.value.ming = res.data.name
307 form.value.representing = res.data.representing 313 form.value.representing = res.data.representing
314 form.value.ageGroup = res.data.ageGroup
315 form.value.division = res.data.division
316 form.value.status = res.data.status
308 if (!form.value.sex) { 317 if (!form.value.sex) {
309 form.value.sex = '0' 318 form.value.sex = '0'
310 } 319 }
...@@ -336,7 +345,11 @@ function checkCode() { ...@@ -336,7 +345,11 @@ function checkCode() {
336 } 345 }
337 } 346 }
338 347
339 348 function changeCountry() {
349 if( form.value.countryId = 240 ){
350 form.value.idcType = '0'
351 }
352 }
340 function giveBirthDay() { 353 function giveBirthDay() {
341 // 判断身份证正确性/赋值生日 354 // 判断身份证正确性/赋值生日
342 if (form.value.idcType == '0') { 355 if (form.value.idcType == '0') {
......
...@@ -72,12 +72,14 @@ ...@@ -72,12 +72,14 @@
72 type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD" 72 type="date" format="YYYY-MM-DD" value-format="YYYY-MM-DD"
73 /> 73 />
74 </el-form-item> 74 </el-form-item>
75 <el-form-item :label="language==0?'有效证件':'Valid Certificates Scanning Copy'" required> 75 <el-form-item :label="language==0?'有效证件':'Valid Passport'" required>
76 <file-upload v-model="form.passportUrl" :limit="1" :is-show-tip="false" 76 <file-upload v-model="form.passportUrl" :limit="1" :is-show-tip="false"
77 :button-text="language==0?'上传':'Upload'"/> 77 :button-text="language==0?'上传':'Upload'"/>
78 <div class="tip"> 78 <div class="tip">
79 <span v-if="language==0">请上传护照副本,用于认证 </span> 79 <span v-if="language==0">请上传有效身份证件扫描件,用于核实身份信息、申请签证邀请函及购买保险等 </span>
80 <span v-else>Please upload a passport copy for authentication</span> 80 <span v-else>
81 Please upload a scanned copy of your valid passport for verification of identity information,
82 application of visa invitation letter and purchasing insurance etc.</span>
81 </div> 83 </div>
82 84
83 </el-form-item> 85 </el-form-item>
......
...@@ -4,11 +4,20 @@ ...@@ -4,11 +4,20 @@
4 <el-table-column type="index" :label="language==0?'序号':'Index'" width="80" align="center"/> 4 <el-table-column type="index" :label="language==0?'序号':'Index'" width="80" align="center"/>
5 <el-table-column :label="language==0?'姓氏':'Surname'" prop="xing" min-width="100"/> 5 <el-table-column :label="language==0?'姓氏':'Surname'" prop="xing" min-width="100"/>
6 <el-table-column :label="language==0?'名':'Name'" prop="ming" min-width="100"/> 6 <el-table-column :label="language==0?'名':'Name'" prop="ming" min-width="100"/>
7 <el-table-column :label="language==0?'所属国家/地区':'Nationality'" prop="countryName" min-width="100"/> 7 <el-table-column :label="language==0?'所属国家/地区':'Nationality'" prop="countryName" min-width="110"/>
8 <el-table-column :label="language==0?'性别':'Gender'" prop="sexStr"/> 8 <el-table-column :label="language==0?'性别':'Gender'" prop="sexStr"/>
9 <!-- <el-table-column :label="language==0?'年龄':'Age'" prop="age"/>--> 9 <!-- <el-table-column :label="language==0?'年龄':'Age'" prop="age"/>-->
10 <el-table-column :label="language==0?'证件类型':'ID Type'" prop="idcTypeStr" :min-width="language==0?'80':'160'"/> 10 <el-table-column :label="language==0?'证件类型':'ID Type'" prop="idcTypeStr" :min-width="language==0?'80':'160'"/>
11 <el-table-column :label="language==0?'证件号码':'ID NO.'" prop="idcCode" width="200"/> 11 <el-table-column :label="language==0?'证件号码':'ID NO.'" prop="idcCode" width="200">
12 <template #default="scope">
13 <span v-if="scope.row.wdsfMin"></span>
14 <span v-else>{{ scope.row.idcCode }}</span>
15 </template>
16 </el-table-column>
17 <el-table-column align="center" :label="language==0?'代表':'Representing'" prop="representing" min-width="120"/>
18 <el-table-column align="center" :label="language==0?'年龄组':'Age group'" prop="ageGroup" min-width="100"/>
19 <el-table-column align="center" :label="language==0?'舞种':'Division'" prop="division" min-width="100"/>
20
12 <el-table-column :label="language==0?'出生日期':'Birth'" prop="birth" width="110"/> 21 <el-table-column :label="language==0?'出生日期':'Birth'" prop="birth" width="110"/>
13 <el-table-column :label="language==0?'会员角色':'Role'" width="150"> 22 <el-table-column :label="language==0?'会员角色':'Role'" width="150">
14 <template #default="scope"> 23 <template #default="scope">
......
...@@ -63,12 +63,13 @@ ...@@ -63,12 +63,13 @@
63 <el-radio value="1">{{ language == 0 ? '男' : 'male' }}</el-radio> 63 <el-radio value="1">{{ language == 0 ? '男' : 'male' }}</el-radio>
64 </el-radio-group> 64 </el-radio-group>
65 </el-form-item> 65 </el-form-item>
66 <el-form-item :label="language==0?'有效证件':'Valid Certificates Scanning Copy'" required> 66 <el-form-item :label="language==0?'有效证件':'Valid Passport'" required>
67 <file-upload v-model="wdsfData.passportUrl" :limit="1" :is-show-tip="false" 67 <file-upload v-model="wdsfData.passportUrl" :limit="1" :is-show-tip="false"
68 :button-text="language==0?'上传':'Upload'"/> 68 :button-text="language==0?'上传':'Upload'"/>
69 <div class="tip"> 69 <div class="tip">
70 <span v-if="language==0">请上传护照副本,用于认证 </span> 70 <span v-if="language==0">请上传有效身份证件扫描件,用于核实身份信息、申请签证邀请函及购买保险等</span>
71 <span v-else>Please upload a passport copy for authentication</span> 71 <span v-else>Please upload a scanned copy of your valid passport for verification of identity information,
72 application of visa invitation letter and purchasing insurance etc.</span>
72 </div> 73 </div>
73 </el-form-item> 74 </el-form-item>
74 <el-form-item :label="language==0?'证件号':'Passport number'"> 75 <el-form-item :label="language==0?'证件号':'Passport number'">
......
...@@ -204,6 +204,16 @@ const goStep1 = () => { ...@@ -204,6 +204,16 @@ const goStep1 = () => {
204 const goStep3 = () => { 204 const goStep3 = () => {
205 proxy.$refs.registerRef.validate(valid => { 205 proxy.$refs.registerRef.validate(valid => {
206 if (valid) { 206 if (valid) {
207
208 if(language.value==0){
209 var pattern = /^1[3456789]\d{9}$/
210 if (!pattern.test(form.value.contactTel)) {
211 ElMessage.warning(language.value == 0 ?'请输入正确的手机号':'Please enter the correct mobile phone number')
212 return
213 }
214 }
215
216
207 if (!isAgree.value) { 217 if (!isAgree.value) {
208 ElMessage.warning(language.value == 0?'请勾选接受':'Please check the acceptance') 218 ElMessage.warning(language.value == 0?'请勾选接受':'Please check the acceptance')
209 return 219 return
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!