|
|
@@ -2,59 +2,59 @@
|
|
|
<view class="common_page adffc" :style="{'height':h+'px', 'padding-top':mt+'px'}">
|
|
|
<cus-header title="我的成就" bgColor="transparent"></cus-header>
|
|
|
<image src="https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/8dbf51e7-85cb-496a-b3d0-d5816fa8ff34.png" class="top_bg_img" mode="widthFix"></image>
|
|
|
- <div class="info">
|
|
|
- <div class="info-top adfac">
|
|
|
+ <view class="info">
|
|
|
+ <view class="info-top adfac">
|
|
|
<image class="avatar" :src="userInfo?.avatarPath||'https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/5dded84d-8594-4bbe-9204-c693098e7532.png'"></image>
|
|
|
- <div class="name">Hi~ {{userInfo?.realName??''}}</div>
|
|
|
- <div class="level adfac"><text>LV</text><text>{{userInfo?.userLevel??1}}</text></div>
|
|
|
- </div>
|
|
|
- <div class="info-num">收获勋章:{{numInfo?.myMedals??0}} <text>枚</text></div>
|
|
|
- <div class="info-memo">共参与<text>{{numInfo?.activityCount??0}}</text>次公益活动,累计义工时长<text>{{numInfo?.volunteerHours??0}}</text>小时</div>
|
|
|
- </div>
|
|
|
- <div class="tab adfacjc">
|
|
|
- <div class="tab-pre" :class="{'active':queryParams.obtained===''}" @tap="changeTab('')">全部</div>
|
|
|
- <div class="tab-pre" :class="{'active':queryParams.obtained===1}" @tap="changeTab(1)">已获得</div>
|
|
|
- </div>
|
|
|
- <div class="list" v-if="list.length">
|
|
|
- <div class="list-pre adffcac" v-for="(item,index) in list" :key="index" @tap="showSz(item)">
|
|
|
+ <view class="name">Hi~ {{userInfo?.realName??''}}</view>
|
|
|
+ <view class="level adfac"><text>LV</text><text>{{userInfo?.userLevel??1}}</text></view>
|
|
|
+ </view>
|
|
|
+ <view class="info-num">收获勋章:{{numInfo?.myMedals??0}} <text>枚</text></view>
|
|
|
+ <view class="info-memo">共参与<text>{{numInfo?.activityCount??0}}</text>次公益活动,累计义工时长<text>{{numInfo?.volunteerHours??0}}</text>小时</view>
|
|
|
+ </view>
|
|
|
+ <view class="tab adfacjc">
|
|
|
+ <view class="tab-pre" :class="{'active':queryParams.obtained===''}" @click="changeTab('')">全部</view>
|
|
|
+ <view class="tab-pre" :class="{'active':queryParams.obtained===1}" @click="changeTab(1)">已获得</view>
|
|
|
+ </view>
|
|
|
+ <view class="list" v-if="list.length">
|
|
|
+ <view class="list-pre adffcac" v-for="(item,index) in list" :key="index" @click="showSz(item)">
|
|
|
<image :src="item.imageUrl??''"></image>
|
|
|
- <div class="p">{{item?.medalName||''}}</div>
|
|
|
- <div class="p tip" v-if="item?.lightUp">{{item?.lightUpDate2??''}}点亮</div>
|
|
|
- <div class="p tip" v-else>未获得</div>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="dataEmpty" v-else>
|
|
|
+ <view class="p">{{item?.medalName||''}}</view>
|
|
|
+ <view class="p tip" v-if="item?.lightUp">{{item?.lightUpDate2??''}}点亮</view>
|
|
|
+ <view class="p tip" v-else>未获得</view>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="dataEmpty" v-else>
|
|
|
<page-empty text="暂无勋章"></page-empty>
|
|
|
- </div>
|
|
|
- <div class="btn" @tap="showSave">晒出我的成就</div>
|
|
|
- <div class="dialog adffcac" :style="{'height':'calc(100vh - '+mt+')px', 'top':mt+'px'}" v-if="xzShow">
|
|
|
- <div class="title">"恭喜您获得荣誉勋章"</div>
|
|
|
- <div class="img adfacjc">
|
|
|
- <image :src="xzInfo.img"></image>
|
|
|
- </div>
|
|
|
- <div class="name adfac">
|
|
|
+ </view>
|
|
|
+ <view class="btn" @click="showSave">晒出我的成就</view>
|
|
|
+ <view class="dialog adffcac" :style="{'height':'calc(100vh - '+mt+')px', 'top':mt+'px'}" v-if="xzShow">
|
|
|
+ <view class="title">"恭喜您获得荣誉勋章"</view>
|
|
|
+ <view class="img adfacjc">
|
|
|
+ <image :src="xzInfo.imageUrl"></image>
|
|
|
+ </view>
|
|
|
+ <view class="name adfac">
|
|
|
<image src="https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/902a8c25-9961-48fd-b869-8fd1ac47b271.png"></image>
|
|
|
- <text>{{xzInfo.title}}</text>
|
|
|
+ <text>{{xzInfo.medalName}}</text>
|
|
|
<image src="https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/0f48d5d2-2961-4d95-9bf9-148b7f615227.png"></image>
|
|
|
- </div>
|
|
|
- <div class="heartnum">累计捐赠爱心值{{xzInfo.heartnum||10000}}</div>
|
|
|
- <div class="date">{{xzInfo.date}}获得</div>
|
|
|
- <div class="btn adfacjc">
|
|
|
+ </view>
|
|
|
+ <!-- <view class="heartnum">累计捐赠爱心值{{xzInfo.heartnum||10000}}</view> -->
|
|
|
+ <view class="date">{{xzInfo.lightUpDate}}获得</view>
|
|
|
+ <view class="btn adfacjc">
|
|
|
<image src="https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/4e76f71e-cd46-4380-8437-04b83eec40f3.png"></image>
|
|
|
<text>炫耀一下</text>
|
|
|
- </div>
|
|
|
- <image class="close" @tap="xzShow=false;xzInfo=null" src="https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/34582f76-ea26-4e83-8172-e1f81c0634aa.png"></image>
|
|
|
- </div>
|
|
|
- <div class="save adffcacjc" :style="{'height':'calc(100vh - '+mt+')px', 'top':mt+'px'}" v-if="saveShow">
|
|
|
- <div class="box">
|
|
|
- <image class="close" @tap="saveShow=false" src="https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/d1bbde08-3c0f-44bb-bed6-a6c3fce72aa2.png"></image>
|
|
|
- <div class="top adfac">
|
|
|
- <image :src="'https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/98671459-4599-44d2-a5ca-bb8200d42436.png'"></image>
|
|
|
- <text>{{'周晓瑾'}}的公益勋章墙</text>
|
|
|
- </div>
|
|
|
- <div class="num"><text>{{4}}</text> 枚公益勋章</div>
|
|
|
- <div class="xzimgs adfac">
|
|
|
- <div class="imgbox">
|
|
|
+ </view>
|
|
|
+ <image class="close" @click="xzShow=false;xzInfo=null" src="https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/34582f76-ea26-4e83-8172-e1f81c0634aa.png"></image>
|
|
|
+ </view>
|
|
|
+ <view class="save adffcacjc" :style="{'height':'calc(100vh - '+mt+')px', 'top':mt+'px'}" v-if="saveShow">
|
|
|
+ <view class="box">
|
|
|
+ <image class="close" @click="saveShow=false" src="https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/d1bbde08-3c0f-44bb-bed6-a6c3fce72aa2.png"></image>
|
|
|
+ <view class="top adfac">
|
|
|
+ <image :src="userInfo?.avatarPath||'https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/98671459-4599-44d2-a5ca-bb8200d42436.png'"></image>
|
|
|
+ <text>{{userInfo?.realName||''}}的公益勋章墙</text>
|
|
|
+ </view>
|
|
|
+ <view class="num"><text>{{numInfo?.myMedals||0}}</text> 枚公益勋章</view>
|
|
|
+ <view class="xzimgs adfac">
|
|
|
+ <view class="imgbox">
|
|
|
<scroll-view class="scroll-view_H" scroll-x="true" scroll-with-animation="true">
|
|
|
<view class="scroll-view-item_H" v-for="(item,index) in xzImgList" :key="index">
|
|
|
<view class="cl_item">
|
|
|
@@ -62,23 +62,23 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
</scroll-view>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="bottom adfacjb">
|
|
|
- <div class="left adfac">
|
|
|
- <div class="img">
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="bottom adfacjb">
|
|
|
+ <view class="left adfac">
|
|
|
+ <view class="img">
|
|
|
<image src=""></image>
|
|
|
- </div>
|
|
|
- <div class="texts adffc">
|
|
|
+ </view>
|
|
|
+ <view class="texts adffc">
|
|
|
<text>扫描二维码</text>
|
|
|
<text>查看你的公益勋章</text>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="right">善行少年</div>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="text">长按图片,保存到手机</div>
|
|
|
- </div>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="right">善行少年</view>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="text">长按图片,保存到手机</view>
|
|
|
+ </view>
|
|
|
</view>
|
|
|
</template>
|
|
|
|
|
|
@@ -112,14 +112,7 @@
|
|
|
const xzShow = ref(false)
|
|
|
const xzInfo = ref(null)
|
|
|
const saveShow = ref(false)
|
|
|
- const xzImgList = ref([
|
|
|
- 'https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/94bda1ce-50c2-4e49-90ed-90db9b98c390.png',
|
|
|
- 'https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/7c0b9a7c-a095-495b-a3e9-d953417ebfb1.png',
|
|
|
- 'https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/94bda1ce-50c2-4e49-90ed-90db9b98c390.png',
|
|
|
- 'https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/7c0b9a7c-a095-495b-a3e9-d953417ebfb1.png',
|
|
|
- 'https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/94bda1ce-50c2-4e49-90ed-90db9b98c390.png',
|
|
|
- 'https://transcend.ringzle.com/xiaozhi-app/profile/2025/09/29/7c0b9a7c-a095-495b-a3e9-d953417ebfb1.png',
|
|
|
- ])
|
|
|
+ const xzImgList = ref([])
|
|
|
|
|
|
const changeTab = type => {
|
|
|
queryParams.value.obtained = type;
|
|
|
@@ -127,12 +120,13 @@
|
|
|
}
|
|
|
|
|
|
const showSz = item => {
|
|
|
- if(!item.date) return
|
|
|
+ if(!item.lightUpDate) return
|
|
|
xzInfo.value = item;
|
|
|
xzShow.value = true;
|
|
|
}
|
|
|
|
|
|
const showSave = () => {
|
|
|
+ xzImgList.value = list.value.filter(l=>l.lightUpDate).map(l=>l.imageUrl)||[]
|
|
|
saveShow.value = true;
|
|
|
}
|
|
|
|
|
|
@@ -367,7 +361,7 @@
|
|
|
color: #B2AB95;
|
|
|
line-height: 37rpx;
|
|
|
text-align: center;
|
|
|
- margin-top: 13rpx;
|
|
|
+ margin-top: 23rpx;
|
|
|
}
|
|
|
.btn{
|
|
|
width: 368rpx;
|