e41b1a70 by zhangmeng

Merge branch 'dev' into 票档显示

2 parents fa292b80 f8ec2f11
......@@ -4,8 +4,8 @@
close-icon="CircleClose" destroy-on-close
width="900px"
>
<div class="boxInvitation pd20" >
<div v-if="!showR" >
<div class="boxInvitation pd20">
<div v-if="!showR">
<el-form ref="iformRef" :label-width="language==0?'120px':'240px'" :model="form" :rules="rules"
label-position="right">
<el-form-item :label="language==0?'服务类型':'Service Type '" prop="type" required style="margin-bottom: 0px">
......@@ -13,14 +13,17 @@
<el-checkbox label="1">{{ language == 0 ? '接机' : 'airport pickup' }}</el-checkbox>
<el-checkbox label="2">{{ language == 0 ? '送机' : 'airport drop-off' }}</el-checkbox>
</el-checkbox-group>
<!-- <span style="color: red;margin-left: 10px">{{language==0?'仅限境外及港澳台人员填写':'For overseas and Hong Kong, Macao, and Taiwan personnel only.'}}</span>-->
<!-- <span style="color: red;margin-left: 10px">{{language==0?'仅限境外及港澳台人员填写':'For overseas and Hong Kong, Macao, and Taiwan personnel only.'}}</span>-->
</el-form-item>
<div style="padding-left: 48px;color:red;margin-bottom: 18px">
{{language==0?'仅限境外及港澳台人员填写':'For overseas and Hong Kong, Macao, and Taiwan personnel only.'}}
{{
language == 0 ? '仅限境外及港澳台人员填写' : 'For overseas and Hong Kong, Macao, and Taiwan personnel only.'
}}
</div>
<div v-if="form.type?.some(v=>v==1)">
<h3 class="leftboderTT">{{ language == 0 ? '接机信息' : 'Pick-up information' }}</h3>
<el-form-item :label="language==0?'抵达人员身份':'Role of Person-Arrival'" prop="pickUpBo.standing" required>
<el-form-item :label="language==0?'抵达人员身份':'Role of Person-Arrival'" prop="pickUpBo.standing"
required>
<el-checkbox-group v-model="form.pickUpBo.standing">
<el-checkbox :label="language==0?'运动员':'Athlete'" name="1"/>
<el-checkbox :label="language==0?'随队人员':'Accompanying Person'" name="2"/>
......@@ -44,18 +47,21 @@
</el-form-item>
<el-form-item :label="language==0?'接机人数':'Number of People'" prop="pickUpBo.counts" required>
<el-input-number v-model="form.pickUpBo.counts"/>
<span style="color: red;margin-left: 10px">{{language==0?'(填写的人数需是乘坐同一航班/车次)':'The number of people to be filled in must be on the same flight/train'}}</span>
<span
style="color: red;margin-left: 10px">{{
language == 0 ? '(填写的人数需是乘坐同一航班/车次)' : 'The number of people to be filled in must be on the same flight/train'
}}</span>
</el-form-item>
<!-- <div style="padding-left: 48px;color: red;margin-bottom: 18px">-->
<!-- {{language==0?'填写的人数需是乘坐同一航班/车次':'The number of people to be filled in must be on the same flight/train'}}-->
<!-- <div style="padding-left: 48px;color: red;margin-bottom: 18px">-->
<!-- {{language==0?'填写的人数需是乘坐同一航班/车次':'The number of people to be filled in must be on the same flight/train'}}-->
<!-- </div>-->
<!-- </div>-->
<el-form-item :label="language==0?'抵达日期':'Flight/Train Arrival Date'"
prop="pickUpBo.arrivalDate"
required>
<div style="padding: 1px">
<el-date-picker
:disabled-date="disabledDateRZ" default-value="'2024-07'"
:disabled-date="disabledDateRZ" default-value="'2024-09-27'"
v-model="form.pickUpBo.arrivalDate" format="YYYY-MM-DD"
placeholder="YYYY-MM-DD"
style="width: 100%;" type="date" value-format="YYYY-MM-DD"
......@@ -69,7 +75,8 @@
<!-- format="YYYY-MM-DD" placeholder="YYYY-MM-DD"-->
<!-- style="width: 100%;" type="date" value-format="YYYY-MM-DD"-->
<!-- />-->
<el-time-picker v-model="form.pickUpBo.arrivaTime" placeholder="HH:mm:ss" value-format="HH:mm:ss" format="HH:mm:ss" style="width: 100%;"/>
<el-time-picker v-model="form.pickUpBo.arrivaTime" placeholder="HH:mm:ss" value-format="HH:mm:ss"
format="HH:mm:ss" style="width: 100%;"/>
</el-form-item>
<el-form-item :label="language==0?'航班/车次':'Flight/Train Number'" prop="pickUpBo.flight" required>
......@@ -93,13 +100,13 @@
</div>
<div v-if="form.type?.some(v=>v==2)">
<!-- <el-form-item :label="language == 0 ? '送机信息' : 'Delivery information' ">-->
<!-- </el-form-item>-->
<h3 class="leftboderTT">{{language == 0 ? '送机信息' : 'Delivery information'}}</h3>
<!-- <el-form-item :label="language == 0 ? '送机信息' : 'Delivery information' ">-->
<!-- </el-form-item>-->
<h3 class="leftboderTT">{{ language == 0 ? '送机信息' : 'Delivery information' }}</h3>
<el-form-item
:label="language==0?'离会人员身份':'Role of Person-Departure'"
prop="downOffBo.standing" required>
<!-- <el-input v-model="form.downOffBo.standing"/>-->
<!-- <el-input v-model="form.downOffBo.standing"/>-->
<el-checkbox-group v-model="form.downOffBo.standing">
<el-checkbox :label="language==0?'运动员':'Athlete'" name="1"/>
<el-checkbox :label="language==0?'随队人员':'Accompanying Person'" name="2"/>
......@@ -107,7 +114,7 @@
<el-checkbox :label="language==0?'其他':'Others'" name="4"/>
</el-checkbox-group>
</el-form-item>
<el-form-item :label="language==0?'国家/地区':'Country/Region'" prop="downOffBo.nationalitys" required >
<el-form-item :label="language==0?'国家/地区':'Country/Region'" prop="downOffBo.nationalitys" required>
<el-select v-model="form.downOffBo.nationalitys" filterable multiple style="width: 100%;">
<el-option v-for="item in countrys"
:key="item.id"
......@@ -124,31 +131,36 @@
<el-form-item :label="language==0?'送机人数':'Number of People'" prop="downOffBo.counts" required>
<el-input-number v-model="form.downOffBo.counts"/>
<span style="color: red;margin-left: 10px">{{language==0?'(填写的人数需是乘坐同一航班/车次)':'The number of people to be filled in must be on the same flight/train'}}</span>
<span
style="color: red;margin-left: 10px">{{
language == 0 ? '(填写的人数需是乘坐同一航班/车次)' : 'The number of people to be filled in must be on the same flight/train'
}}</span>
</el-form-item>
<!-- <div style="padding-left: 48px;color: red;margin-bottom: 18px">-->
<!-- {{language==0?'填写的人数需是乘坐同一航班/车次':'The number of people to be filled in must be on the same flight/train'}}-->
<!-- <div style="padding-left: 48px;color: red;margin-bottom: 18px">-->
<!-- {{language==0?'填写的人数需是乘坐同一航班/车次':'The number of people to be filled in must be on the same flight/train'}}-->
<!-- </div>-->
<!-- </div>-->
<el-form-item :label="language==0?'离开日期':'Departure Date from Hotel'" prop="downOffBo.arrivalDate"
required >
required>
<div style="padding: 1px">
<el-date-picker
v-model="form.downOffBo.arrivalDate" format="YYYY-MM-DD"
placeholder="YYYY-MM-DD" :disabled-date="disabledDateDP"
default-value="'2024-07'"
default-value="'2024-09-30'"
style="width: 100%;" type="date" value-format="YYYY-MM-DD"
/>
</div>
</el-form-item>
<el-form-item :label="language==0?'离开时间':'Departure Time from Hotel'" prop="downOffBo.arrivaTime" required>
<el-form-item :label="language==0?'离开时间':'Departure Time from Hotel'" prop="downOffBo.arrivaTime"
required>
<!-- <el-date-picker-->
<!-- v-model="form.downOffBo.rrivaTime"-->
<!-- format="YYYY-MM-DD" placeholder="YYYY-MM-DD"-->
<!-- style="width: 100%;" type="date" value-format="YYYY-MM-DD"-->
<!-- />-->
<el-time-picker v-model="form.downOffBo.arrivaTime" placeholder="HH:mm:ss" value-format="HH:mm:ss" format="HH:mm:ss" style="width: 100%;"/>
<el-time-picker v-model="form.downOffBo.arrivaTime" placeholder="HH:mm:ss" value-format="HH:mm:ss"
format="HH:mm:ss" style="width: 100%;"/>
</el-form-item>
<el-form-item :label="language==0?'航班/车次':'Flight/Train Number'" prop="downOffBo.flight" required>
......@@ -178,10 +190,12 @@
</div>
</el-form>
</div>
<div >
<div>
<div v-if="showR" class="text-center pd20">
<img class="mauto" src="@/assets/dance/ok.png"/>
<h2 class="text-center">{{ language == 0 ? '境外及港澳台接送信息已提交' : 'Request Form for Overseas, HKT, Mau, China and TPE Athletes Arrival and Departure' }}</h2>
<h2 class="text-center">{{
language == 0 ? '境外及港澳台接送信息已提交' : 'Request Form for Overseas, HKT, Mau, China and TPE Athletes Arrival and Departure'
}}</h2>
<h4 v-if="language == 0" class="text-center">
我们已收到您的申请
</h4>
......@@ -204,15 +218,16 @@ import {nextTick} from "@vue/runtime-core";
import {dayjs, ElMessage, ElMessageBox} from "element-plus";
import {addInvitation, countryList} from "@/apiPc/match";
import ImageUpload from "@/components/ImageUpload";
import {masterClassList, getByCard, submitMasterApply, getMasterApply, delByCard,addPickup} from "@/apiPc/common";
import {masterClassList, getByCard, submitMasterApply, getMasterApply, delByCard, addPickup} from "@/apiPc/common";
const {proxy} = getCurrentInstance()
const language = useStorage('language', 0)
const form = ref({
pickUpBo: {
serviceType:1
serviceType: 1,
},
downOffBo: {
serviceType:2
serviceType: 2,
},
type: ['1']
})
......@@ -237,7 +252,11 @@ const rules = ref(
message: language.value == 0 ? '请选择' : 'Please choose'
},],
'pickUpBo.name': [{required: true, trigger: 'change', message: language.value == 0 ? '请输入' : 'Please enter'},],
'pickUpBo.phone': [{required: true, trigger: 'change', message: language.value == 0 ? '请输入' : 'Please enter'},],
'pickUpBo.phone': [{
required: true,
trigger: 'change',
message: language.value == 0 ? '请输入' : 'Please enter'
},],
'pickUpBo.counts': [{
required: true,
trigger: 'change',
......@@ -268,7 +287,11 @@ const rules = ref(
trigger: 'change',
message: language.value == 0 ? '请输入' : 'Please enter'
},],
'pickUpBo.hotle': [{required: true, trigger: 'change', message: language.value == 0 ? '请输入' : 'Please enter'},],
'pickUpBo.hotle': [{
required: true,
trigger: 'change',
message: language.value == 0 ? '请输入' : 'Please enter'
},],
'pickUpBo.itinerary': [{
required: true,
trigger: 'change',
......@@ -284,7 +307,11 @@ const rules = ref(
trigger: 'change',
message: language.value == 0 ? '请选择' : 'Please choose'
},],
'downOffBo.name': [{required: true, trigger: 'change', message: language.value == 0 ? '请输入' : 'Please enter'},],
'downOffBo.name': [{
required: true,
trigger: 'change',
message: language.value == 0 ? '请输入' : 'Please enter'
},],
'downOffBo.phone': [{
required: true,
trigger: 'change',
......@@ -334,13 +361,15 @@ const rules = ref(
})
const open = (params) => {
show.value = true
showR.value=false
form.value={
showR.value = false
form.value = {
pickUpBo: {
serviceType:1
serviceType: 1,
arrivalDate:'2024-09-27'
},
downOffBo: {
serviceType:2
serviceType: 2,
arrivalDate:'2024-09-30'
},
type: ['1'],
}
......@@ -374,27 +403,27 @@ function setActive(n) {
function submitForm() {
proxy.$refs['iformRef'].validate(async valid => {
if (valid) {
form.value.pickUpBo.cptId=cptId.value
form.value.downOffBo.cptId=cptId.value
form.value.pickUpBo.cptId = cptId.value
form.value.downOffBo.cptId = cptId.value
// form.value.pickUpBo.serviceType=1
// form.value.downOffBo.serviceType=2
console.log(form.value)
let forms=JSON.parse(JSON.stringify(form.value))
forms.pickUpBo.nationalitys=forms.pickUpBo.nationalitys?.join(',')
forms.pickUpBo.standing=forms.pickUpBo.standing?.join(',')
forms.downOffBo.nationalitys=forms.downOffBo.nationalitys?.join(',')
forms.downOffBo.standing=forms.downOffBo.standing?.join(',')
forms.type=null
if(!form.value.type.includes('1')) forms.pickUpBo={}
if(!form.value.type.includes('2')) forms.downOffBo={}
const res=await addPickup(forms)
if (res.code==200) {
let forms = JSON.parse(JSON.stringify(form.value))
forms.pickUpBo.nationalitys = forms.pickUpBo.nationalitys?.join(',')
forms.pickUpBo.standing = forms.pickUpBo.standing?.join(',')
forms.downOffBo.nationalitys = forms.downOffBo.nationalitys?.join(',')
forms.downOffBo.standing = forms.downOffBo.standing?.join(',')
forms.type = null
if (!form.value.type.includes('1')) forms.pickUpBo = {}
if (!form.value.type.includes('2')) forms.downOffBo = {}
const res = await addPickup(forms)
if (res.code == 200) {
proxy.$modal.msgSuccess('操作成功!')
showR.value=true
showR.value = true
// show.value=false
}
} else {
proxy.$modal.msgError(language.value==0?'请完善信息!':'Please complete the information!')
proxy.$modal.msgError(language.value == 0 ? '请完善信息!' : 'Please complete the information!')
}
}
)
......@@ -454,6 +483,7 @@ function getCountryList() {
countrys.value = res.data
})
}
// function initdateRZ() {
// const today = dayjs().format('YYYY-MM-DD')
// form.value.pickUpBo.arrivalDate ='2024-07'
......@@ -466,21 +496,22 @@ function disabledDateRZ(date) {
// 16-20
//判读今天大与2024-07-16
const today = dayjs().format('YYYY-MM-DD')
if ('2024-07-16' < today) {
return !((date.getTime() >= dayjs(today).valueOf()) && (date.getTime() <= dayjs('2024-07-20').valueOf()))
} else {
return !((date.getTime() >= dayjs('2024-07-16').valueOf()) && (date.getTime() <= dayjs('2024-07-20').valueOf()))
}
// if ('2024-07-16' < today) {
// return !((date.getTime() >= dayjs(today).valueOf()) && (date.getTime() <= dayjs('2024-09-27').valueOf()))
// } else {
// return !((date.getTime() >= dayjs('2024-07-16').valueOf()) && (date.getTime() <= dayjs('2024-07-20').valueOf()))
// }
return !(date.getTime() == dayjs('2024-09-27').valueOf())
}
function disabledDateDP(date) {
// 18-22
//判读今天大与2024-07-18
const today = dayjs().format('YYYY-MM-DD')
if ('2024-07-18' < today) {
return !((date.getTime() >= dayjs(today).valueOf()) && (date.getTime() <= dayjs('2024-07-22').valueOf()))
} else {
return !((date.getTime() >= dayjs('2024-07-18').valueOf()) && (date.getTime() <= dayjs('2024-07-22').valueOf()))
}
// if ('2024-07-18' < today) {
// return !((date.getTime() >= dayjs(today).valueOf()) && (date.getTime() <= dayjs('2024-07-22').valueOf()))
// } else {
// return !((date.getTime() >= dayjs('2024-07-18').valueOf()) && (date.getTime() <= dayjs('2024-07-22').valueOf()))
// }
return !(date.getTime() == dayjs('2024-09-30').valueOf())
}
</script>
......
......@@ -294,7 +294,15 @@
</div>
<div class="content flex" v-if="activeName==8">
<label>Download:</label>
<div style="word-break: break-all;text-indent: 0">
<div style="word-break: break-all;text-indent: 0;text-transform:capitalize;">
<div>
<a target="_blank" class="text-primary" href="https://wdsfwuxicenter.com/stage-api/fs/file/0826_Accommodation_Guide_V4_WDSF_World%20Youth_Breaking_Championships.pdf">
<el-icon style="position: relative;top: 2px">
<download/>
</el-icon>
Accommodation Guide V4 WDSF World Youth Breaking Championships
</a>
</div>
<div>
<a target="_blank" class="text-primary" href="https://wdsfwuxicenter.com/stage-api/fs/file/2024_WDSF_ASIAN_DANCESPORT_FESTIVAL_ENTRY_GUIDE.pdf">
<el-icon style="position: relative;top: 2px">
......
......@@ -318,7 +318,7 @@
</div>
</el-dialog>
<!-- <a class="ding" @click="openPickup" v-if="matchData.leagueId==0">{{ language==0?'接 / 送机服务':'Pick-up/drop-off service' }}</a>-->
<a class="ding" @click="openPickup" v-if="matchData.leagueId==0&&matchId=='1802602359043600385'">{{ language==0?'接 / 送机服务':'Pick-up/drop-off service' }}</a>
<pickup ref="pickupRef"></pickup>
</div>
</template>
......@@ -330,7 +330,7 @@ import MatchNews from "@/viewsPc/match/components/matchNews";
import SubstationList from "@/viewsPc/match/components/substation-list";
import MatchInfoProjectList from "@/viewsPc/match/components/matchInfo-projectList";
import QuickRow from "@/viewsPc/match/components/quick-row";
import pickup from '@/viewsPc/components/pickup'
import Pickup from '@/viewsPc/components/pickup'
import {getCurrentInstance, ref} from 'vue'
import {reactive, onMounted} from '@vue/runtime-core'
import {useRoute, useRouter} from 'vue-router'
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!