update
This commit is contained in:
@@ -1,12 +1,16 @@
|
||||
<script setup>
|
||||
import {onMounted} from "vue";
|
||||
import {onMounted, reactive} from "vue";
|
||||
import XModal from "./XModal.vue";
|
||||
import XQrCode from "./XQrCode.vue";
|
||||
import Api from "../api/index.js";
|
||||
|
||||
const show = defineModel('show');
|
||||
|
||||
const detail = reactive({});
|
||||
onMounted(() => {
|
||||
|
||||
Api.system.getQrcode(1).then(({data}) => {
|
||||
Object.assign(detail, data);
|
||||
console.log('我坎坎坷坷', detail)
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
||||
@@ -14,11 +18,12 @@ onMounted(() => {
|
||||
<x-modal
|
||||
v-model:show="show">
|
||||
<view class="px-[30rpx] py-[40rpx] relative">
|
||||
<image @click="show=false" class="!w-[52rpx] !h-[52rpx] absolute top-[-110rpx] right-[calc(-100%-10rpx)]" src="/static/icons/close.png"></image>
|
||||
<image @click="show=false" class="!w-[52rpx] !h-[52rpx] absolute top-[-110rpx] right-[calc(-100%-10rpx)]"
|
||||
src="/static/icons/close.png"></image>
|
||||
|
||||
<view class="title">关注微信公众号</view>
|
||||
<view class="!mt-[24rpx] w-[320rpx] !mx-auto aspect-square">
|
||||
<x-qr-code size="320rpx" :qrSize="180" content="公众号"></x-qr-code>
|
||||
<image class="!size-[320rpx]" :src="detail.qrcode" mode="aspectFill"></image>
|
||||
</view>
|
||||
<view class="desc">截图后扫码,变现快人一步</view>
|
||||
</view>
|
||||
|
||||
65
src/components/WithdrawAgainModal.vue
Normal file
65
src/components/WithdrawAgainModal.vue
Normal file
@@ -0,0 +1,65 @@
|
||||
<script setup>
|
||||
import XModal from "./XModal.vue";
|
||||
import {reactive, ref} from "vue";
|
||||
import XSelect from "./XSelect.vue";
|
||||
import Api from "../api";
|
||||
import {debounce} from "lodash";
|
||||
import {showToast} from "../utils/uils.js";
|
||||
|
||||
const emits = defineEmits(['success']);
|
||||
const props = defineProps({
|
||||
id: {
|
||||
type: String,
|
||||
default: null,
|
||||
}
|
||||
});
|
||||
const show = ref(false);
|
||||
const form = reactive({
|
||||
payType: null,
|
||||
});
|
||||
|
||||
const getApi = async () => {
|
||||
const {data} = await Api.system.getWithdrawal();
|
||||
return {
|
||||
data: data.map(v => ({
|
||||
...v,
|
||||
id: v.id,
|
||||
name: `(${v.type_text}) ${v.realname} ${v.account}`,
|
||||
})),
|
||||
}
|
||||
}
|
||||
|
||||
const success = debounce(async () => {
|
||||
const {msg} = await Api.system.editWithdrawLog({
|
||||
id: props.id,
|
||||
wid: form.payType,
|
||||
});
|
||||
showToast(msg);
|
||||
show.value = false;
|
||||
emits('success')
|
||||
}, 500);
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<Text @click="show=true">
|
||||
<slot></slot>
|
||||
</Text>
|
||||
|
||||
<x-modal v-model:show="show">
|
||||
<view class="px-[16px] py-[20px] text-[#000]">
|
||||
<view class="text-[#000] text-center">提现失败</view>
|
||||
<view class="!my-2 text-black">请修改您的提现信息,确保所有信息都归属于用一个自然人。修改后,在下方选择正确的提现信息。
|
||||
</view>
|
||||
<x-select v-model:model-value="form.payType" :api="getApi"
|
||||
placeholder="请选择提现方式"></x-select>
|
||||
<view class="!flex gap-3 !mt-3">
|
||||
<tui-button height="80rpx" type="gray" @click="show=false">取消</tui-button>
|
||||
<tui-button height="80rpx" @click="success">重新提现</tui-button>
|
||||
</view>
|
||||
</view>
|
||||
</x-modal>
|
||||
</template>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
</style>
|
||||
@@ -8,9 +8,9 @@ const show = ref(false);
|
||||
|
||||
<template>
|
||||
<image v-if="!$slots.button" class="!size-[24rpx]" :src="ICON" mode="aspectFill" @click="show=true"></image>
|
||||
<div v-else @click="show=true">
|
||||
<Text v-else @click="show=true">
|
||||
<slot name="button"></slot>
|
||||
</div>
|
||||
</Text>
|
||||
|
||||
<x-confirm-modal
|
||||
width="500rpx"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<script setup>
|
||||
import {ref} from 'vue'
|
||||
import {ref, watch} from 'vue'
|
||||
import XModal from "./XModal.vue";
|
||||
import fmt from '../static/images/fmt.png';
|
||||
import play from '../static/icons/play.png';
|
||||
@@ -22,6 +22,16 @@ defineExpose({
|
||||
open
|
||||
});
|
||||
|
||||
watch(
|
||||
() => show.value,
|
||||
(val) => {
|
||||
if (!val) {
|
||||
playVideo.value = false;
|
||||
}
|
||||
},
|
||||
{deep: true}
|
||||
)
|
||||
|
||||
const changeSwiper = ({detail}) => {
|
||||
current.value = detail.current;
|
||||
}
|
||||
@@ -62,7 +72,7 @@ const changeSwiper = ({detail}) => {
|
||||
</image>
|
||||
|
||||
<view class="!w-full relative rounded-[16rpx] overflow-hidden">
|
||||
<image v-if="!playVideo" class="!w-full" mode="widthFix" :src="fmt"></image>
|
||||
<image v-if="!playVideo" class="!w-full" mode="widthFix" :src="options.file"></image>
|
||||
<view @click="playVideo=!playVideo" v-if="!playVideo"
|
||||
class="absolute left-0 top-0 w-full h-full bg-[rgba(0,0,0,.4)] z-10 !flex justify-center items-center">
|
||||
<image class="!w-[94rpx] !h-[94rpx]" :src="play"></image>
|
||||
@@ -73,7 +83,7 @@ const changeSwiper = ({detail}) => {
|
||||
@pause="playVideo=!playVideo"
|
||||
class="!w-full"
|
||||
v-else
|
||||
src="https://shopyunlng.oss-cn-beijing.aliyuncs.com/upload/2025/03-18/15-31-150289-429952696.m4v">
|
||||
:src="options.pop_video[0]">
|
||||
</video>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
Reference in New Issue
Block a user