Commit 18232b63 authored by spc's avatar spc

Merge branch 'dev' of http://gitlab.dui88.com/fh/20250528_FHQ1 into dev

parents 33882f8f 2dd5ee3b
......@@ -26,8 +26,8 @@ export function fetchLotteryConfig (){
* 获取邀请助力组件信息
* @returns
*/
export function fetchInvitationInfo (unionId: string){
return api.post('/c/activity/use_invite_101/invitation/home', {wxUnionId: unionId}) as Promise<CodeResponse<InvitationInfo>>
export function fetchInvitationInfo (){
return api.post('/c/activity/use_invite_101/invitation/home') as Promise<CodeResponse<InvitationInfo>>
}
/**
......
......@@ -40,8 +40,7 @@ const inviteBtnProperties = computed(() => {
})
async function updateInvitationInfo() {
const unionId = uni.getStorageSync('unionId');
const resp = await fetchInvitationInfo(unionId)
const resp = await fetchInvitationInfo()
return invitationInfo.value = resp.data
}
......@@ -91,6 +90,8 @@ async function tryAssist() {
}
async function initComponent() {
await tryAssist()
await updateInvitationInfo()
updateShareData({
......@@ -106,8 +107,6 @@ async function initComponent() {
prizeImageUrl: firstPrize.prizeImageUrl,
})
}
await tryAssist()
}
watch(() => props.isLogin, async (newVal) => {
......
.task_person_overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: flex;
align-items: flex-end;
justify-content: center;
z-index: 9999;
.mask_overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.8);
}
.task_person_container {
position: relative;
width: 100%;
max-width: 750rpx;
background: #ffffff;
border-radius: 30rpx 30rpx 0 0;
box-shadow: 0 -4rpx 20rpx rgba(0, 0, 0, 0.1);
z-index: 2;
overflow-y: auto;
padding: 40rpx 30rpx;
animation: slideUp 0.3s ease-out;
.task_person_header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20rpx;
.task_person_title {
font-size: 50rpx;
font-weight: bold;
color: #D3A458;
text-align: center;
flex: 1;
}
.close_button {
width: 40rpx;
height: 40rpx;
display: flex;
align-items: center;
justify-content: center;
.close_icon {
font-size: 40rpx;
color: #333333;
font-weight: bold;
}
}
}
.task_person_description {
margin-bottom: 40rpx;
.description_text {
font-size: 24rpx;
color: #666666;
line-height: 1.5;
}
}
.task_person_info {
background: #f6f8fa;
border-radius: 20rpx;
margin-bottom: 40rpx;
padding: 20rpx;
box-sizing: border-box;
.form_row {
display: flex;
align-items: center;
justify-content: space-between;
border-bottom: 1rpx solid #f2f2f2;
height: 110rpx;
}
.form_line_hidden {
border-bottom: none;
}
.form_label {
width: 250rpx;
color: #222;
font-size: 28rpx;
.required {
color: #b88a3a;
margin-left: -4rpx;
}
}
.form_input {
flex: 1;
color: #6f6d67;
font-size: 28rpx;
background: none;
border: none;
outline: none;
text-align: right;
}
.form_input_icon {
width: 11rpx;
height: 19rpx;
margin-left: 16rpx;
display: block;
}
.form_input_box {
display: flex;
align-items: center;
justify-content: center;
}
.form_radio {
margin-right: 32rpx;
font-size: 28rpx;
}
}
.form_bottom_btn {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 80rpx;
.form_bottom_text {
font-size: 28rpx;
color: #6f6d67;
}
.form_bottom_icon {
width: 19rpx;
height: 12rpx;
margin-left: 13rpx;
display: block;
}
}
.agreement_section {
margin-bottom: 40rpx;
.agreement_checkbox {
display: flex;
align-items: center;
.checkbox {
width: 32rpx;
height: 32rpx;
border: 2rpx solid #ddd;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-right: 16rpx;
&.checked {
background-color: #D3A458;
border-color: #D3A458;
.checkmark {
color: #ffffff;
font-size: 20rpx;
font-weight: bold;
}
}
}
.agreement_text {
font-size: 24rpx;
color: #666666;
line-height: 1.4;
}
}
}
.form_btn {
width: 100%;
height: 94rpx;
border-radius: 46rpx;
background-color: #d3a358;
color: #ffffff;
font-size: 32rpx;
display: flex;
align-items: center;
justify-content: center;
border: none;
outline: none;
&.disabled {
background-color: #ccc;
color: #999;
}
}
}
}
@keyframes slideUp {
from {
transform: translateY(100%);
}
to {
transform: translateY(0);
}
}
This diff is collapsed.
......@@ -127,11 +127,6 @@ const handleTaskClick = (task, index) => {
return;
}
// 显示任务完成提示弹窗
currentTaskTitle.value = task.title;
currentTaskPoints.value = task.points;
// showTaskCompleteTips.value = true;
emit('taskClick', { task, index });
};
......
......@@ -179,7 +179,7 @@
<view class="privilege-container">
<!-- 第一行 -->
<view class="privilege-header">
<text class="quanyi-title" :style="{ color: getColor('quanyiTitle')[itemIndex].titleColor }">LV{{
<text class="quanyi-title" :style="{ color: getColor('quanyiTitle')[itemIndex].titleColor }" @click="testGoto195">LV{{
(Number(itemIndex) + 1) }}专享权益</text>
<text class="title-text" :style="{ color: getColor('quanyiTitle')[itemIndex].quanyiNumColor }">当前可享<text
class="highlight"
......@@ -343,17 +343,18 @@
<view class="goods-container" v-if="goodsDataArr?.length > 0">
<!-- 页签栏 -->
<view class="custom-tabs">
<view v-for="(tab, index) in goodsDataArr" :key="index" class="tab-item" :class="{
<view v-for="(tab, index) in tabInfo.tabTexts" :key="index" class="tab-item" :class="{
active: activeIndex === index && itemIndex !== 4,
active1: activeIndex === index && itemIndex === 4
}" @click="tabItemClick(index)">
<text class="tab-line1">{{ tab?.resourcePositionName }}</text>
<!-- <text class="tab-line1">{{ tab?.resourcePositionName }}</text> -->
<text class="tab-line1">{{ tab?.line1 }}</text>
<!-- <text class="tab-line2">{{ tab?.line2 }}</text> -->
<view class="select-line" v-if="activeIndex === index"></view>
</view>
</view>
<view class="goods-content" v-for="(goodItemList, index) in goodsDataArr" :key="index">
<view class="goods-content" v-for="(goodItemList, index) in goodsDataArr" :key="index" v-if="false">
<view class="goods-list" v-if="activeIndex === index">
<view class="goods-item" v-for="(goodItem, i) in goodItemList?.resourcePositionGoods" :key="i"
:style="{
......@@ -381,7 +382,7 @@
</view>
<!-- 商品内容 -->
<!-- <view class="goods-content">
<view class="goods-content">
<view
class="goods-list"
v-if="activeIndex === 0"
......@@ -464,7 +465,7 @@
</view>
</view>
</view> -->
</view>
</view>
<!-- 查看更多容器 -->
......@@ -503,6 +504,7 @@
<!-- 任务弹窗 -->
<TaskPop :visible="showTaskPop" @close="handleCloseTaskPop" @taskClick="handleTaskClick" />
<TaskPerson :visible="showTaskPerson" @close="handleCloseTaskPerson" @submit="handleTaskPersonSubmit" />
</view>
</template>
......@@ -538,6 +540,7 @@ import ShengriliTipPanel from '../components/quanyi/shengriliTipPanel.vue';
import SignedTips from '../components/qiandao/SignedTips.vue';
import SignRuleDes from '../components/qiandao/SignRuleDes.vue';
import TaskPop from '../components/renwu/TaskPop.vue';
import TaskPerson from '../components/renwu/TaskPerson.vue';
import bannerDataIntegral from '../mock/bannerDataIntegral.json';
import jifenGoodsData from '../mock/jifenGoodsData.json';
......@@ -547,6 +550,13 @@ const onProgressBarError = (e) => {
// 可以设置默认样式或显示错误提示
}
function testGoto195() {
jump({
type: JumpType.INNER,
url: '/activities/1015/home'
})
}
const orderUpgrade = ref(false);
// const maxVal = ref([]);
const integralData = ref({
......@@ -1473,6 +1483,7 @@ const showSignRuleDes = ref(false);
// 任务弹窗相关
const showTaskPop = ref(false);
const showTaskPerson = ref(false);
//今天已经签到过
const todaySigned = ref(true);
......@@ -2600,11 +2611,11 @@ const handleCloseSignRuleDes = () => {
// 任务按钮点击事件
const handleTaskButtonClick = () => {
jump({
type: JumpType.INNER,
url: '/activities/1015/home'
})
return
// jump({
// type: JumpType.INNER,
// url: '/activities/1015/home'
// })
// return
console.log('任务按钮点击');
showTaskPop.value = true;
......@@ -2615,9 +2626,37 @@ const handleCloseTaskPop = () => {
showTaskPop.value = false;
}
// 关闭任务信息弹窗
const handleCloseTaskPerson = () => {
showTaskPerson.value = false;
}
// 处理任务信息提交
const handleTaskPersonSubmit = (formData) => {
console.log('任务信息提交:', formData);
// 这里可以处理任务信息提交逻辑
showTaskPerson.value = false;
// 可以显示成功提示
uni.showToast({
title: '信息提交成功',
icon: 'success'
});
}
// 任务点击事件
const handleTaskClick = (data) => {
console.log('任务点击:', data);
// 如果是完善信息任务,显示TaskPerson弹窗
if (data.task && data.task.title === '完善信息') {
showTaskPop.value = false; // 先关闭TaskPop
setTimeout(() => {
showTaskPerson.value = true; // 延迟显示TaskPerson
}, 100);
return;
}
// 其他任务的处理逻辑
// 这里可以添加具体的任务跳转逻辑
// uni.showToast({
// title: `开始${data.task.title}`,
......
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