Files
frontend-app/pages/other_package/pointsRedemption/pointsRedemption.vue
T

144 lines
11 KiB
Vue
Raw Normal View History

2025-08-05 15:25:23 +08:00
<template>
<view class="preference_warp">
<view class="header_comm">
<up-image src="/static/common/left.png" width="20" height="20" bgColor="#f1f6ff00" @click="jumpHome"></up-image>
<view>积分兑换专区</view>
<up-image src="/static/common/share.png" width="20" height="20" bgColor="#f1f6ff00" @click="jumpInviteFriends"></up-image>
</view>
<view class="preference_content_warp">
<up-swiper
:list="swiperList"
height="140"
>
</up-swiper>
<view class="preference_title">
<up-image src="/static/product/bk_l.png" width="60" height="2" bgColor="#f1f6ff00"></up-image>
<view class="msg">信任桥积分</view>
<up-image src="/static/product/bk_r.png" width="60" height="2" bgColor="#f1f6ff00"></up-image>
</view>
<view class="preference_product">
<up-loading-page :loading="productListLoading"></up-loading-page>
<view class="product_item" v-for="(item,index) in productList" :key="index" @click="jumpInfo(item)">
<view class="product_item_left">
<up-image :src="item.url" width="100" height="100" bgColor="#f1f6ff00"></up-image>
<view class="product_item_left_bz product_item_left_bz_img">
<view>爆款专区</view>
</view>
</view>
<view class="product_item_right">
<view class="title_warp">{{item.title}}</view>
<view class="price_warp">
<view class="price_jf_warp">
{{item.adPrice}}
<text style="font-size: 18rpx;">积分</text>
</view>
<view class="price_dh_but">
立即兑换
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</template>
<script>
import { searchList } from '@/api/product.js';
import { SEARCH_TYPE,APP_PAGE_TYPE } from '@/utils/enumUtils.js';
import { getCarouselImage } from '@/api/common.js';
2025-08-06 20:25:41 +08:00
2025-08-05 15:25:23 +08:00
export default {
data() {
return {
swiperList:[],
productList:[],
productListLoading:false,
}
},
onLoad() {
this.getSearchList();
this.getCarouselImage();
},
methods: {
// 查询轮播图
async getCarouselImage(){
const params={
pageUi:APP_PAGE_TYPE.INTEGRAL,
}
const resp = await getCarouselImage(params);
if(resp && resp.bizcode === 100){
const data = resp.data || [];
this.swiperList = data.length !== 0 ? data.map(obj=>obj.carouselImage) : [];
}
},
jumpHome(){
uni.switchTab({
url: '/pages/home/home',
})
},
// 邀请好友
jumpInviteFriends(){
uni.navigateTo({
2025-08-06 20:25:41 +08:00
url: '/pages/other_package/invite_friends/invite_friends',
2025-08-05 15:25:23 +08:00
})
},
async getSearchList(){
this.productListLoading = true;
const params = {
type:SEARCH_TYPE.EXPLOSIVE,
page:1,
pageSize:99,
}
const resp = await searchList(params);
if(resp && resp.bizcode === 100){
const data = resp.data || [];
if(data && data.length !==0){
data.map(item=>{
const priceN = item.price.split("-");
item.priceN = priceN[0];
})
}
this.productList = data;
}
this.productListLoading = false;
},
/**
* 跳转到商品详情
* @param {Object} item
*/
jumpInfo(item){
uni.navigateTo({
2025-08-06 20:25:41 +08:00
url: '/pages/other_package/productInfo/productInfo?id='+item.id,
2025-08-05 15:25:23 +08:00
})
}
}
}
</script>
<style lang="scss" scoped>
.product_item_left_bz_img{
height: 40rpx;
width: 150rpx;
background-image: url("data:image/png;base64,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
background-size: 100% 100%;
background-position: center; /* 将图片居中显示 */
}
.price_jf_warp{
width: 50%;
font-weight: 600;
font-size: 31rpx;
color: #F24A00;
}
.price_dh_but{
width: 50%;
background: linear-gradient( 90deg, #FEA500 0%, #FD2824 100%);
border-radius: 8rpx;
font-size: 28rpx;
text-align: center;
color: #FFFFFF;
padding: 10rpx 0;
}
</style>