<template>
|
<div id="full" class="adScreening">
|
<div class="flex box-border items-center justify-between px-36 w-full mt-26 font-36 font-700 text-center">
|
<div></div>
|
<span class="c2cColor">{{ $t('广告筛选') }}</span>
|
<van-icon class="c2cColor" name="cross" @click="handlerBack" />
|
</div>
|
<div class="font-27 mb-35 text-grey ml-32 mt-40">{{ $t('总额') }}</div>
|
<div class="px-32">
|
<van-field v-model="amount" :size="large" :placeholder="$t('请输入总额')">
|
<template #extra>
|
<div class="tabBackground pr-30 box-border textColor">
|
{{ exchangeCurrency }}
|
</div>
|
</template>
|
</van-field>
|
</div>
|
<select-item class="mt-64" :title="$t('交易方式')" :options="fullPayMethods" v-model="method_type" />
|
<select-item class="mt-64" :title="$t('国家/地区')" :options="countries" v-model="country_code" />
|
<div class="px-32">
|
<van-cell class="c2cColor" center :title="$t('仅显示商家发布的广告')">
|
<template #right-icon>
|
<van-switch v-model="checked" size="24" @click="showAd = !showAd" />
|
</template>
|
</van-cell>
|
<van-collapse v-model="activeNames" v-show="showAd">
|
<van-collapse-item>
|
<template #title>
|
<div class="flex items-center">
|
<img class="w-24 h-24 mr-18" src="~@/assets/image/otc/wantBuyHead/tip_ico.png" alt="">
|
<span class="mr-16 font-24 text-grey">{{ $t('广告筛选说明') }}</span>
|
<van-icon name="arrow-down" class="block relative top-1 font-24 font-700"
|
:class="{ 'rotateZ': activeNames.length > 0 }" />
|
</div>
|
</template>
|
<template #right-icon><i></i></template>
|
<template #default>
|
<div class="font-28 c2cColor">
|
<div><span>{{ $t('交易方式:') }}</span><span class="font-700">{{ $t('仅显示可用的交易方式') }}</span></div>
|
<div class="mt-6"><span>{{ $t('国家/地区') }}</span><span class="font-700">{{ $t('仅显示可用的国家 / 地区') }}</span>
|
</div>
|
</div>
|
</template>
|
</van-collapse-item>
|
</van-collapse>
|
<div class="flex mt-56 mb-36 justify-center ">
|
<button class="w-370 h-82 tabBackground c2cColor rounded-lg font-400 font-30 border-none mr-21"
|
@click="onReset">{{ $t('重置') }}
|
</button>
|
<button class="w-370 h-82 bg-grey rounded-lg font-400 font-30 border-none"
|
:class="[{ 'btnMain': tabindex === 1 }, { 'text-white': tabindex === 1 }]" @click="onConfirm">{{ $t('确认') }}
|
</button>
|
</div>
|
</div>
|
</div>
|
</template>
|
|
<script>
|
import SelectItem from "@/page/placeAnOrder/components/selectItem/SelectItem";
|
import { Cell, Icon, Popup, DropdownMenu, DropdownItem, Field, Switch, Collapse, CollapseItem } from 'vant';
|
|
import { mapGetters, mapState } from 'vuex'
|
import countries from '@/components/country-list/countryList.js'
|
import { timeStamp } from 'console';
|
|
export default {
|
name: "adScreening",
|
components: {
|
[Icon.name]: Icon,
|
[Field.name]: Field,
|
[Popup.name]: Popup,
|
[Cell.name]: Cell,
|
[Switch.name]: Switch,
|
[DropdownMenu.name]: DropdownMenu,
|
[DropdownItem.name]: DropdownItem,
|
[Collapse.name]: Collapse,
|
[CollapseItem.name]: CollapseItem,
|
SelectItem,
|
},
|
computed: {
|
...mapGetters('c2c', ['payMethods']),
|
...mapGetters('c2c', ['symbolList', 'payMethods', 'exchangeCurrency']),
|
// 处理交易方式对象
|
fullPayMethods() {
|
const payMethods = [];
|
Object.keys(this.payMethods).forEach((key) => {
|
payMethods.push({
|
method_type: key,
|
title: this.payMethods[key]
|
})
|
})
|
payMethods.unshift({
|
method_type: '',
|
title: this.$t('全部')
|
})
|
|
return payMethods;
|
}
|
},
|
created() {
|
},
|
data() {
|
return {
|
countries, // 国家列表
|
activeNames: [],
|
amount: '',
|
// 0 代表全部
|
method_type: '', // 支付方式
|
country_code: 99, // 国家
|
tradeList: [
|
{
|
'': this.$t('全部'),
|
// Bank_card: '银行卡',
|
// Coin_collection: '币收款',
|
}
|
],
|
large: '80',
|
checked: false,
|
tabindex: 1,
|
showAd: false,
|
}
|
},
|
methods: {
|
onChooseType(key) { // 选择支付方式
|
this.method_type = key
|
this.$refs.paymentMethod[0].toggle()
|
},
|
onSelectCountry(item) {
|
this.country_code = item.code;
|
this.$refs.country.toggle()
|
},
|
onReset() { // 重置
|
this.amount = ''
|
this.method_type = 99
|
this.country_code = 99
|
},
|
onConfirm() { // 确认
|
console.log(this.amount, this.method_type, this.country_code, this.checked)
|
this.$emit('confirm', {
|
amount: this.amount,
|
method_type: this.method_type
|
})
|
|
this.$emit('back')
|
},
|
handlerBack() {
|
this.$emit('back')
|
},
|
payMethod(val) {
|
console.log(val);
|
this.method_type = val
|
},
|
address(val) {
|
this.country_code = val
|
}
|
}
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
.active_trade {
|
color: #ffffff;
|
|
@include themify() {
|
background: themed("color_main");
|
}
|
}
|
|
.rotateZ {
|
transform: rotateZ(180deg);
|
}
|
|
::v-deep {
|
.van-dropdown-menu__bar {
|
background: none;
|
box-shadow: none;
|
}
|
|
.van-collapse-item__content {
|
padding: 0;
|
}
|
}
|
|
#full {
|
::v-deep .van-cell {
|
@include themify() {
|
background: themed("main_background");
|
}
|
}
|
|
::v-deep .van-cell::after {
|
@include themify() {
|
border-bottom: 1px solid themed("divi_line");
|
}
|
}
|
|
.van-switch {
|
@include themify() {
|
background: themed("btn_main");
|
}
|
}
|
|
::v-deep .van-collapse-item__content {
|
@include themify() {
|
background: themed("main_background");
|
}
|
}
|
|
::v-deep .van-field__control {
|
@include themify() {
|
color: themed("text_color");
|
}
|
}
|
}
|
</style>
|