Commit 94296ceb authored by youjie's avatar youjie

no message

parent 37fd9618
......@@ -11,7 +11,7 @@
</div>
</div>
<div class="col row wrap">
<div class="col row wrap" v-if="$q.platform.is.desktop">
<template v-for="(x, i) in chosenAddress">
<!-- <q-chip
v-if="i==0"
......@@ -359,6 +359,7 @@
$q.loading.hide();
if (r.data.resultCode == ApiResult.SUCCESS) {
if (r.data.data) {
data.msg.pageIndex = 1
data.PageCount = r.data.data.pageCount;
data.TotalCount = r.data.data.count;
var tempArray = r.data.data.pageData;
......
......@@ -14,32 +14,16 @@
<div class="rounded-borders q-my-md q-px-xs q-py-xs bg-grey-3">
<div class="q-px-sm q-py-xs row justify-between">
<span>公司所在地</span>
<span class="text-primary" v-if="chosenAddress.length>0">{{chosenAddress[0].Name}}</span>
<template v-for="(x, i) in chosenAddress">
<span class="text-primary" v-if="i==0">{{x.Name}}</span>
</template>
</div>
<q-popup-proxy :offset="[0, 10]">
<q-popup-proxy :offset="[0, 10]" ref="qDateProxy0">
<div class="bg-white q-pb-lg" style="width: 300px;">
<div class="q-px-lg q-py-md fz18">公司所在地</div>
<div v-for="(x, i) in sites" :key="i">
<div class="addr">
<!-- <div
class="addr-list q-px-md q-py-sm cursor-pointer row items-center"
v-if="x.isShow"
>
<span class="col" @click="changeExplesdHandler(x)">公司所在地</span>
<q-icon
@click="changeExplesdHandler(x)"
v-if="
searchClone.searchKey.length == 0 ||
(searchClone.searchKey.length > 0 && x.isShowChild)
"
:name="!x.explsed ? 'keyboard_arrow_down' : 'keyboard_arrow_up'"
size="20px"
/>
</div> -->
<!-- v-if="
x.explsed ||
(x.SubList && x.isShowChild && searchClone.searchKey.length > 0)
" -->
<div
class="q-mx-md"
>
......@@ -56,67 +40,139 @@
</q-popup-proxy>
</div>
<div class="rounded-borders q-my-md q-px-xs q-py-xs bg-grey-3">
<div v-if="searchClone.teamType.length==0" class="q-px-sm q-py-xs">{{$t('v103.scheduledTrip.allcommoditytype')}}</div>
<template v-else>
<q-chip
v-for="(x, i) in searchClone.teamType"
size="12px"
:key="i"
removable
outline
color="grey"
:label="x==2?$t('v103.scheduledTrip.daytrip'):$t('v103.scheduledTrip.multiday')"
@remove="removeChosen(x,i,2)"
/>
<div class="q-px-sm q-py-xs row justify-between">
<span>线路</span>
<template v-for="(x, i) in chosenAddress">
<span class="text-primary" v-if="x.type==1">
{{x.Name}}
<q-icon class="cursor-pointer text-grey-6" name="close" @click.stop="removeChosen(x,i,1)"/>
</span>
</template>
<q-popup-proxy :offset="[0, 10]">
</div>
<q-popup-proxy :offset="[0, 10]" ref="qDateProxy1">
<div class="bg-white q-pb-lg" style="width: 300px;">
<div class="q-px-lg q-py-md fz18">{{$t('v103.scheduledTrip.allcommoditytype')}}</div>
<div class="add" v-for="(x, i) in goodsType" :key="i">
<div class="q-mx-md" v-if="x.explsed">
<div
<div class="q-px-lg q-py-md fz18">线路</div>
<div class="add" v-for="(x, i) in lines" :key="i">
<div class="q-mx-md">
<template v-for="(y, yi) in x.SubList">
<q-radio
class="addr-list q-px-md q-py-sm row items-center"
v-for="(y, yi) in x.SubList"
:key="yi"
>
<q-checkbox
v-model="y.checked"
size="xs"
@update:model-value="changeGoodTypeHandler(y)"
/>
<span class="col">{{ y.Name }}</span>
v-if="y.isShow" v-model="searchClone.lineId" checked-icon="task_alt" unchecked-icon="panorama_fish_eye" :val="y.id" :label="y.name" size="sm" @update:model-value="changeCheckHandler(y, x,1)"/>
</template>
</div>
</div>
</div>
</q-popup-proxy>
</div>
<div v-if="searchClone.lineId&&xilies.length>0" class="rounded-borders q-my-md q-px-xs q-py-xs bg-grey-3">
<div class="q-px-sm q-py-xs row justify-between">
<span>{{$t('v103.scheduledTrip.allcommoditytype')}}</span>
<template v-for="(x, i) in chosenAddress">
<span class="text-primary" v-if="x.type==2">
{{x.Name}}
<q-icon class="cursor-pointer text-grey-6" name="close" @click.stop="removeChosen(x,i,2)"/>
</span>
</template>
</div>
<q-popup-proxy :offset="[0, 10]" ref="qDateProxy2">
<div class="bg-white q-pb-lg" style="width: 300px;">
<div class="q-px-lg q-py-md fz18">系列</div>
<div class="add" v-for="(x, i) in xilies" :key="i">
<div class="q-mx-md">
<template v-for="(y, yi) in x.SubList">
<q-radio
class="addr-list q-px-md q-py-sm row items-center"
:key="yi"
v-if="y.isShow" v-model="searchClone.lineTeamId" checked-icon="task_alt" unchecked-icon="panorama_fish_eye" :val="y.id" :label="y.name" size="sm" @update:model-value="changeCheckHandler(y, x,2)"/>
</template>
</div>
</div>
</div>
</q-popup-proxy>
</div>
<div class="q-my-md row no-padding bg-grey-3">
<div
class="q-px-md q-py-sm"
style="border-right: 1px solid #eee; border-radius: 0 !important"
>
<q-icon name="event" size="24px" />
<div class="rounded-borders q-my-md q-px-xs q-py-xs bg-grey-3">
<div class="q-px-sm q-py-xs row justify-between">
<span>出发城市</span>
<template v-for="(x, i) in chosenAddress">
<span class="text-primary" v-if="x.type==3">
{{x.Name}}
<q-icon class="cursor-pointer text-grey-6" name="close" @click.stop="removeChosen(x,i,3)"/>
</span>
</template>
</div>
<div class="row items-center justify-center col">
<span class="text-grey-8">{{
dateRange.from
? `${dateRange.from} - ${dateRange.to}`
: $t('v103.scheduledTrip.screeningdate')
}}</span>
<q-popup-proxy :offset="[0, 0]" ref="qDateProxy">
<div>
<q-date
v-model="dateRange"
:options="optionsFn"
range
@range-end="dateRangeHandler"
mask="YYYY/MM/DD"
></q-date>
<q-popup-proxy :offset="[0, 10]" ref="qDateProxy3">
<div class="bg-white q-pb-lg" style="width: 300px;">
<div class="q-px-lg q-py-md fz18">出发城市</div>
<div class="add" v-for="(x, i) in startCitys" :key="i">
<div class="q-mx-md">
<template v-for="(y, yi) in x.SubList">
<q-radio
class="addr-list q-px-md q-py-sm row items-center"
:key="yi"
v-if="y.isShow" v-model="searchClone.startCityId" checked-icon="task_alt" unchecked-icon="panorama_fish_eye" :val="y.id" :label="y.startCityName" size="sm" @update:model-value="changeCheckHandler(y, x,3)"/>
</template>
</div>
</div>
</div>
</q-popup-proxy>
</div>
<div>
<div v-if="(searchClone.startDate&&!searchClone.endDate)||(!searchClone.startDate&&!searchClone.endDate)" class="rounded-borders q-my-md q-px-xs q-py-xs bg-grey-3">
<div class="q-px-sm q-py-xs row justify-between">
<span>出发日期</span>
<template v-for="(x, i) in chosenAddress">
<span class="text-primary" v-if="x.type==5">
{{x.Name}}
<q-icon class="cursor-pointer text-grey-6" name="close" @click.stop="removeChosen(x,i,5)"/>
</span>
</template>
</div>
<q-popup-proxy :offset="[0, 10]" ref="qDateProxy5">
<div class="bg-white q-pb-lg" style="width: 300px;">
<div class="q-px-lg q-py-md fz18">出发日期</div>
<div class="add" v-for="(x, i) in dates" :key="i">
<div class="q-mx-md">
<template v-for="(y, yi) in x.SubList">
<q-radio class="addr-list q-px-md q-py-sm row items-center"
:key="yi"
v-if="y.isShow" v-model="datesId" checked-icon="task_alt" unchecked-icon="panorama_fish_eye" :val="y.id" :label="y.Name" size="sm"
@update:model-value="changeCheckHandler(y, x,5)"/>
</template>
</div>
</div>
</q-popup-proxy>
</div>
</q-popup-proxy>
</div>
<div class="q-my-md row no-padding bg-grey-3" v-if="(!searchClone.startDate&&!searchClone.endDate)||(searchClone.startDate&&searchClone.endDate)">
<div
class="q-px-md q-py-sm"
style="border-right: 1px solid #eee; border-radius: 0 !important"
>
<q-icon name="event" size="24px" />
</div>
<div class="row items-center justify-center col">
<span class="text-grey-8">{{
dateRange.from
? `${dateRange.from} - ${dateRange.to}`
: $t('v103.scheduledTrip.screeningdate')
}}
</span>
<q-popup-proxy :offset="[0, 0]" ref="qDateProxy">
<div>
<q-date
v-model="dateRange"
:options="optionsFn"
range
@range-end="dateRangeHandler"
mask="YYYY/MM/DD"
></q-date>
</div>
</q-popup-proxy>
</div>
</div>
</div>
<div class="q-my-md">
<div class="text-subtitle1 text-weight-bold">{{$t('v103.scheduledTrip.screeningprice')}}(CNY)</div>
<div class="q-mt-md text-grey-6 text-subtitle1">
......@@ -133,38 +189,23 @@
/>
</div>
<div class="rounded-borders q-my-md q-px-xs q-py-xs bg-grey-3">
<div v-if="dayArray.findIndex((x)=>{ return x.checked})" class="q-px-sm q-py-xs">{{$t('v103.scheduledTrip.journeytime')}}</div>
<template v-else>
<template v-for="(x, i) in dayArray">
<q-chip
v-if="x.checked"
size="12px"
:key="i"
removable
outline
color="grey"
:label="x.text"
@remove="removeChosen(x,i,3)"
/>
<div class="q-px-sm q-py-xs row justify-between">
<span>{{$t('v103.scheduledTrip.journeytime')}}</span>
<template v-for="(x, i) in chosenAddress">
<span class="text-primary" v-if="x.type==4">
{{x.Name}}
<q-icon class="cursor-pointer text-grey-6" name="close" @click.stop="removeChosen(x,i,4)"/>
</span>
</template>
</template>
<q-popup-proxy :offset="[0, 10]">
</div>
<q-popup-proxy :offset="[0, 10]" ref="qDateProxy4">
<div class="bg-white q-pb-lg" style="width: 300px;">
<div class="q-px-lg q-py-md fz18">{{$t('v103.scheduledTrip.journeytime')}}</div>
<div
class="addr-list q-px-md q-py-sm row items-center"
class="addr-list q-px-md q-py-sm row items-center">
<q-radio class="addr-list q-px-md q-py-sm row items-center"
v-for="(y, yi) in dayArray"
:key="yi"
>
<q-checkbox
v-model="y.checked"
size="xs"
@update:model-value="changeTripDayHandler"
/>
<span class="col text-grey-8" style="font-weight: 400">{{
y.text
}}</span>
:key="yi" v-model="DayId" checked-icon="task_alt" unchecked-icon="panorama_fish_eye" :val="y.id" :label="y.text" size="sm" @update:model-value="changeCheckHandler(y,dayArray,4)"/>
</div>
</div>
</q-popup-proxy>
......@@ -428,6 +469,13 @@
setup(props, context) {
const $q = useQuasar()
const qDateProxy = ref(null) as any
const qDateProxy0 = ref(null) as any
const qDateProxy1 = ref(null) as any
const qDateProxy2 = ref(null) as any
const qDateProxy3 = ref(null) as any
const qDateProxy4 = ref(null) as any
const qDateProxy5 = ref(null) as any
const qDateProxy6 = ref(null) as any
const qNameProxy = ref(null) as any
const { locale, t } = useI18n()
const data = reactive({
......@@ -526,34 +574,24 @@
},
// 删除目的地、商品类别、旅游时间
removeChosen(x,i,type) {
if(type==1){
if(data.chosenAddress.length==1){
search.deleteChosen = null as any
}else{
search.deleteChosen = JSON.parse(JSON.stringify(x))
if(type==1||type==2){
if(type==1){
search.msg.lineId = 0
}if(type==2){
search.msg.lineTeamId = 0
}
data.chosenAddress.splice(i,1)
// search.chosenAddress = JSON.parse(JSON.stringify(data.chosenAddress))
data.chosenAddress.length==0&&data.areaList.forEach(y=>{
y.checked = false
y.SubList.forEach(z=>{
z.checked = false
})
})
}else if(type==2){
data.goodsType.forEach(y=>{
y.SubList.forEach(z=>{
if(x==z.Id){
z.checked = false
}
})
})
data.searchClone.teamType.splice(i,1)
// search.msg = JSON.parse(JSON.stringify(data.searchClone))
}else if(type==3){
data.dayArray[i].checked = false
search.msg.startCityId = 0
}else if(type==4){
search.DayId = 0
search.msg.minTripDay = ""
search.msg.maxTripDay = ""
}else if(type==5){
search.datesId = 0
search.msg.startDate = ''
search.msg.endDate = ''
}
search.chosenAddress.splice(i,1)
},
// 初始化出发城市
initCityList() {
......@@ -752,6 +790,9 @@
type: type
}
search.chosenAddress.splice(0,1);
if($q.platform.is.mobile){
if(qDateProxy0.value) qDateProxy0.value.hide()
}
setTimeout(()=>{
search.chosenAddress.unshift(obj);
},200)
......@@ -761,9 +802,11 @@
Id: x.id,
type: type
}
// let status = false
p.SubList.forEach(y=>{
search.chosenAddress.forEach((z,index)=>{
if(y.id==z.id&&type==z.type){
if(y.id==z.Id&&type==z.type){
// status = true
search.chosenAddress.splice(index,1);
}
})
......@@ -773,6 +816,10 @@
}if(type==2){
search.msg.lineTeamId = data.searchClone.lineTeamId
}
if($q.platform.is.mobile){
if(type==1&&qDateProxy1.value) qDateProxy1.value.hide()
if(type==2&&qDateProxy2.value) qDateProxy2.value.hide()
}
setTimeout(()=>{
search.chosenAddress.push(obj);
},200)
......@@ -790,9 +837,12 @@
})
})
search.msg.startCityId = data.searchClone.startCityId
if($q.platform.is.mobile){
if(qDateProxy3.value) qDateProxy3.value.hide()
}
setTimeout(()=>{
search.chosenAddress.push(obj);
},200)
},500)
}else if(type==4){
obj= {
Name: x.text,
......@@ -811,6 +861,9 @@
search.DayId = data.DayId
search.msg.maxTripDay = x.min
search.msg.maxTripDay = x.max
if($q.platform.is.mobile){
if(qDateProxy4.value) qDateProxy4.value.hide()
}
setTimeout(()=>{
search.chosenAddress.push(obj);
methods.changeTripDayHandler()
......@@ -829,6 +882,9 @@
}
})
})
if($q.platform.is.mobile){
if(qDateProxy5.value) qDateProxy5.value.hide()
}
setTimeout(()=>{
search.datesId = x.id
search.msg.startDate = obj.d
......@@ -845,6 +901,9 @@
search.chosenAddress.splice(index,1);
}
})
if($q.platform.is.mobile){
if(qDateProxy6.value) qDateProxy6.value.hide()
}
setTimeout(()=>{
search.chosenAddress.push(obj);
},200)
......@@ -945,14 +1004,9 @@
}
},{deep: true})
const searchCnt = computed(() => {
let setCnt = 0
let setCnt = 2
if ($q.platform.is.mobile) {
if (search.chosenAddress.length>0) setCnt++
if (search.msg.teamType.length>0) setCnt++
if (search.msg.priceRange.min) setCnt++
if (data.dateRange.from) setCnt++
let days = data.dayArray.map(x=>x.checked)
if (days.indexOf(true)!=-1) setCnt++
setCnt = setCnt+search.chosenAddress.length-1
}
return setCnt
})
......@@ -965,6 +1019,13 @@
search,
searchCnt,
qDateProxy,
qDateProxy0,
qDateProxy1,
qDateProxy2,
qDateProxy3,
qDateProxy4,
qDateProxy5,
qDateProxy6,
qNameProxy,
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment