This commit is contained in:
2025-06-25 20:25:44 +08:00
parent 346471ab91
commit 5147d79bff
5 changed files with 45 additions and 30 deletions

View File

@@ -397,6 +397,13 @@ const system = {
data: data data: data
}); });
}, },
getUserIncome: async (data) => {
return request({
method: MethodsENUM.POST,
url: "/user/getUserIncome",
data: data
});
},
} }
export default system; export default system;

View File

@@ -1,6 +1,4 @@
<script setup> <script setup>
import dy from "../static/images/抖音.png";
import qrw from "../static/icons/qrw.png";
import XCountdown from "./XCountdown.vue"; import XCountdown from "./XCountdown.vue";
import {toPage} from "../utils/uils.js"; import {toPage} from "../utils/uils.js";
import FBENUM from "../enum/FBENUM.js"; import FBENUM from "../enum/FBENUM.js";
@@ -26,8 +24,9 @@ const {data} = defineProps({
<Text class="text-[#165DFF]">{{ dayjs(data.time).format('MM-DD-HH:mm') }}</Text> <Text class="text-[#165DFF]">{{ dayjs(data.time).format('MM-DD-HH:mm') }}</Text>
后可开始回填 后可开始回填
</view> </view>
<view v-else-if="data.status === -1" class="text-[rgb(78,89,105)]" style="font-size: 24rpx"> <view v-else-if="data.status === -1 || data.status === 3" class="text-[rgb(78,89,105)]"
已失效 style="font-size: 24rpx">
{{ data.time }}
</view> </view>
<x-countdown v-else :time="dayjs(data.time)"> <x-countdown v-else :time="dayjs(data.time)">
<view style="font-size: 24rpx;font-weight: 400;" class="text-[rgb(78,89,105)]">审核倒计时:</view> <view style="font-size: 24rpx;font-weight: 400;" class="text-[rgb(78,89,105)]">审核倒计时:</view>
@@ -45,7 +44,11 @@ const {data} = defineProps({
</view> </view>
</view> </view>
<view class="!h-[88rpx] !ml-auto !flex items-center gap-[6rpx]"> <view class="!h-[88rpx] !ml-auto !flex items-center gap-[6rpx]">
<view class="price-info">{{ data.status_text }}</view> <view class="price-info">
<text class="text-[rgb(255,87,34)]" v-if="data.is_settlement===1">{{ data.status_text }}</text>
<text class="text-black" v-if="data.is_settlement===0">{{ data.status_text }}</text>
<text class="text-[rgb(0,180,42)]" v-if="data.is_settlement===2">{{ data.status_text }}</text>
</view>
<view class="price"> <view class="price">
<text class="unit">¥</text> <text class="unit">¥</text>
{{ data.coin.toFixed(2) }} {{ data.coin.toFixed(2) }}

View File

@@ -1,4 +1,4 @@
<script setup lang="ts"> <script setup>
import CLOSE_ICON from "../static/icons/close2.png"; import CLOSE_ICON from "../static/icons/close2.png";
import ADDICON from "../static/icons/add.png"; import ADDICON from "../static/icons/add.png";
import {uploadFile} from "../utils/uils"; import {uploadFile} from "../utils/uils";

View File

@@ -1,7 +1,6 @@
<script setup> <script setup>
import {reactive, ref} from 'vue'; import {reactive, ref, watch} from 'vue';
import XNav from "../../components/XNav.vue"; import XNav from "../../components/XNav.vue";
import SETTING from "../../static/icons/setting.png";
import useTableQuery from "../../hooks/useTableQuery.js"; import useTableQuery from "../../hooks/useTableQuery.js";
import Api from "../../api/index.js"; import Api from "../../api/index.js";
import dropDown from "../../static/icons/drop-down.svg"; import dropDown from "../../static/icons/drop-down.svg";
@@ -13,7 +12,7 @@ import XConfirmModal from "../../components/XConfirmModal.vue";
const showModal = ref(false); const showModal = ref(false);
const po = reactive({ const po = reactive({
type: 0, type: 0,
datetime: dayjs().format("YYYY-MM"), time: dayjs().format("YYYY-MM"),
}); });
const vo = reactive({ const vo = reactive({
page: '', page: '',
@@ -23,12 +22,18 @@ const vo = reactive({
all_money: 0, all_money: 0,
}); });
const {loading, pagination, initFetchData} = useTableQuery({ const {loading, pagination, initFetchData} = useTableQuery({
api: Api.system.getWithdrawLog, api: Api.system.getUserIncome,
parameter: po, parameter: po,
callback: (data) => { callback: (data) => {
Object.assign(vo, data); Object.assign(vo, data);
} }
}); });
watch(
() => [po.type, po.time],
() => initFetchData(),
{deep: true}
)
</script> </script>
<template> <template>
@@ -44,22 +49,21 @@ const {loading, pagination, initFetchData} = useTableQuery({
@click="po.type=1"> @click="po.type=1">
团队收益 团队收益
</view> </view>
<view> <view :class="['top-filter transition-[500ms] !flex items-center', po.type === 2 ? 'top-filter-cur' : '']"
<view class="top-filter transition-[500ms] !flex items-center gap-[20rpx] h-full" @click="showModal=true"> @click="() => {po.type=2; showModal=true}">
<image class="!w-[22rpx] !h-[22rpx]" :src="SETTING"></image> 活动收益
活动收益
</view>
<x-confirm-modal
width="500rpx"
title="拉新奖励"
info="邀请新用户并完成首个任务,可以获得拉新奖励"
:cancel="false"
confirmText="知道了"
v-model:show="showModal">
</x-confirm-modal>
</view> </view>
</view> </view>
<x-confirm-modal
width="500rpx"
title="拉新奖励"
info="邀请新用户并完成首个任务,可以获得拉新奖励"
:cancel="false"
confirmText="知道了"
v-model:show="showModal">
</x-confirm-modal>
<scroll-view <scroll-view
scroll-y scroll-y
@refresherpulling="initFetchData()" @refresherpulling="initFetchData()"
@@ -76,10 +80,10 @@ const {loading, pagination, initFetchData} = useTableQuery({
<view class="test-24r">累计收益</view> <view class="test-24r">累计收益</view>
</view> </view>
<view class="flex-shrink-0"> <view class="flex-shrink-0">
<x-date-time v-model:model-value="po.datetime" fields="month" type="3"> <x-date-time v-model:model-value="po.time" fields="month" type="3">
<view <view
class="rounded-full bg-[#E8F3FF] text-[var(--primary-color)] px-[32rpx] py-[8rpx] !flex items-center gap-[14rpx]"> class="rounded-full bg-[#E8F3FF] text-[var(--primary-color)] px-[32rpx] py-[8rpx] !flex items-center gap-[14rpx]">
{{ po.datetime }} {{ po.time }}
<image class="!w-[18rpx]" mode="widthFix" :src="dropDown"></image> <image class="!w-[18rpx]" mode="widthFix" :src="dropDown"></image>
</view> </view>
</x-date-time> </x-date-time>
@@ -90,13 +94,15 @@ const {loading, pagination, initFetchData} = useTableQuery({
<view class="p-[20rpx] rounded-[12rpx] bg-[#fff] !flex justify-between items-center"> <view class="p-[20rpx] rounded-[12rpx] bg-[#fff] !flex justify-between items-center">
<view class="!flex flex-col gap-[24rpx]"> <view class="!flex flex-col gap-[24rpx]">
<view class="!flex items-center gap-[16rpx]"> <view class="!flex items-center gap-[16rpx]">
<view>提现退回</view> <view>个人收益</view>
<x-tag type="success">收入</x-tag> </view>
<view class="text-[#86909C] test-24r">收益日期:{{
dayjs(item.createtime).format('YYYY-MM-DD HH:mm:ss')
}}
</view> </view>
<view class="text-[#86909C] test-24r">{{ dayjs().format('YYYY-MM-DD HH:mm:ss') }}</view>
</view> </view>
<view class="test-36r font-bold HarmonyOS"> <view class="test-36r font-bold HarmonyOS">
+95.88 +{{ item.money.toFixed(2) }}
</view> </view>
</view> </view>
</view> </view>

View File

@@ -71,7 +71,6 @@ const confirmTask = async () => {
:pattern="1" :pattern="1"
:logId="item.id" :logId="item.id"
:data="data" :data="data"
:intervention="true"
@success="emits('success');"> @success="emits('success');">
<view <view
class="py-[15rpx] !flex justify-center flex-col items-center test-28r text-[#165DFF] bg-[#E8F3FF] px-[26rpx]"> class="py-[15rpx] !flex justify-center flex-col items-center test-28r text-[#165DFF] bg-[#E8F3FF] px-[26rpx]">