From f40caeb6c81e54ad2b6af827139aaf93304e9317 Mon Sep 17 00:00:00 2001
From: lin <1005713861@163.com>
Date: Fri, 24 Apr 2026 17:32:26 +0800
Subject: [PATCH] feat: 澜品优选权益+权收+绑卡
---
static/img/qsLife2.png | 0
pages/quanyi/add.vue | 232 ++++++++-----
pages/quanshou/index - 副本.vue | 387 ++++++++++++++++++++++
static/img/off.png | 0
static/img/qsLife.png | 0
static/img/smsSetBg.png | 0
static/img/yifa.png | 0
static/img/smsCodeBg.png | 0
/dev/null | 0
pages/quanshou/index.vue | 346 +++++++++++++------
static/img/codeSetUi.png | 0
static/img/qsBg.png | 0
static/img/qsBg3.png | 0
static/img/qsLifeIcon.png | 0
static/img/qsPhysical.png | 0
15 files changed, 761 insertions(+), 204 deletions(-)
diff --git "a/pages/quanshou/index - \345\211\257\346\234\254.vue" "b/pages/quanshou/index - \345\211\257\346\234\254.vue"
new file mode 100644
index 0000000..f1d2c75
--- /dev/null
+++ "b/pages/quanshou/index - \345\211\257\346\234\254.vue"
@@ -0,0 +1,387 @@
+<script>
+
+import tehuichongzhi from "@/pages/quanshou/components/tehuichongzhi.vue"; //虚拟
+import lanyaerji from "@/pages/quanshou/components/lanyaerji.vue"; // 实物
+
+export default {
+ name: "index",
+ components: {
+ tehuichongzhi,
+ lanyaerji,
+ },
+ data() {
+ return {
+ tips:'',
+ active: 0,
+ VIP: 1, // 1黄金 2铂金 3黑金
+ lst:[],
+ vipConfig: {
+ 1: {
+ bg: "/static/imgs/quanshou/TBBG1.png",
+ box: "/static/imgs/quanshou/NEWBOX1.png",
+ title: "/static/imgs/quanshou/VIPTXT1.png",
+ level: "/static/imgs/quanshou/VIP1.png",
+ textClass: "vip1-text",
+ progressBg: "#BBA767",
+ growText: " 88800/100000",
+ benefitText: "297.00"
+ },
+ 2: {
+ bg: "/static/imgs/quanshou/TBBG2.png",
+ box: "/static/imgs/quanshou/NEWBOX2.png",
+ title: "/static/imgs/quanshou/VIPTXT2.png",
+ level: "/static/imgs/quanshou/VIP2.png",
+ textClass: "vip2-text",
+ progressBg: "#8094A6",
+ growText: " 88800/100000",
+ benefitText: "594.00"
+ },
+ 3: {
+ bg: "/static/imgs/quanshou/TBBG3.png",
+ box: "/static/imgs/quanshou/VIPBOX3.png",
+ title: "/static/imgs/quanshou/VIPTXT3.png",
+ level: "/static/imgs/quanshou/VIPLVL3.png",
+ textClass: "vip3-text",
+ progressBg: "#7B776E",
+ growText: " 88800/100000",
+ benefitText: "891.00"
+ }
+ },
+ total: 0,
+ };
+ },
+ computed: {
+ currentVip() {
+ return this.vipConfig[this.VIP] || this.vipConfig[1];
+ }
+ },
+ onLoad(pro) {
+
+ const _this = this;
+ uni.request({
+ url: _this.$webHost+'/api/v2/customer/getRyxBenefitsRecordList?phone='+_this.$util.getUserInfo().phone,
+ data:{
+ customerId: uni.getStorageSync('qxgLogin').customerId,
+ appId: uni.getStorageSync('qxgLogin').appId
+ },
+ success: function (res) {
+ if(res.data.code==200){
+ _this.lst = res.data.data;
+ _this.lst.forEach(item=>{
+ if(item && item.isBuy === 1 && [1,2,3].includes(item.period)) {_this.VIP = item.period;}
+ })
+ _this.lst.forEach(item=>{
+ if(item.isBuy === 1 ) {
+ // 保留两位小数
+ _this.total += parseFloat(item.amount);
+ }
+ })
+ _this.total = Intl.NumberFormat('zh-CN', {
+ minimumFractionDigits: 2,
+ maximumFractionDigits: 2,
+ }).format(_this.total);
+ } else {
+
+
+ }
+ }
+ })
+ },
+ methods: {
+ numbs(period) {
+ const obj ={
+ 1:'一',
+ 2:'二',
+ 3:'三'
+ }
+ return obj[period]
+ },
+ toHuiyuan(){
+ const _this = this;
+ uni.request({
+ url: _this.$webHost+'/api/v2/memberEquity/getUrlByShop/'+_this.$util.getUserInfo().phone,
+ data:{
+ customerId: uni.getStorageSync('qxgLogin').customerId,
+ appId: uni.getStorageSync('qxgLogin').appId
+ },
+ success: function (res) {
+ if(res.data.code==200){
+ uni.request( {
+ url: _this.$webHost+'/api/v2/memberEquity/clickUrlByShop/'+_this.$util.getUserInfo().phone,
+ })
+ uni.navigateTo( {
+ url: '/pages/web/index?webUel=' + encodeURIComponent(res.data.data.url)
+ })
+ } else {
+ uni.showToast( {
+ title: res.data.data || res.data.msg,
+ icon: 'none'
+ })
+ }
+ }
+ })
+
+
+ },
+ getTips(){
+ const _this = this;
+ uni.request({
+ url: _this.$webHost+'/api/v2/shop/findExpressNo?phone='+_this.$util.getUserInfo().phone,
+ data:{
+ customerId: uni.getStorageSync('qxgLogin').customerId,
+ appId: uni.getStorageSync('qxgLogin').appId
+ },
+ success: function (res) {
+ if(res.data.code==200){
+ _this.tips = res.data.data;
+ _this.$refs.comment.open()
+
+ } else {
+ uni.showToast( {
+ title: res.data.data || res.data.msg,
+ icon: 'none'
+ })
+ }
+ }
+ })
+ },
+ }
+};
+</script>
+
+<template>
+ <view style="background: white;">
+ <!-- 顶部 VIP 卡片 -->
+ <view class="vip-box" :style="{ backgroundImage: `url(${currentVip.box})` }" >
+ <view style="position: relative">
+ <image :src="currentVip.level" style="height: 200rpx;width: 100%;"></image>
+ <view style="position: absolute;top: 120rpx;left: 48rpx;color: #754200;font-size: 28rpx;" :class="VIP==1?'vip1-num':'vip2-num'">已购会员{{ total }}</view>
+ </view>
+ <view class="card-wrap" style="margin-top: 38rpx;">
+ <view class="card-item" v-for="i in lst" :class="i.isBuy?'card-item-buy':''">
+<!-- <view class="card-title">{{numbs(i.period)}}期会员</view>-->
+ <view class="card-title">{{i.buyDate}}</view>
+ <view class="card-price">
+ <text>¥</text>
+ <text class="card-num" >{{ i.amount }}</text>
+ </view>
+ <view class="card-date" style="height: 40rpx"> </view>
+ <!-- <view class="card-date">{{ i.buyDate }}</view>-->
+ <view class="has-buy">{{ i.isBuy?'已扣款' : '待扣款' }}</view>
+ </view>
+ </view>
+ </view>
+
+ <!-- 会员购买 + 权益部分 -->
+ <view class="content-wrap">
+
+
+ <view class="tab-wrap">
+ <text @click="active=0" :class="active==0?'active':''">实物权益</text>
+ <text @click="active=1" :class="active==1?'active':''">虚拟权益</text>
+ </view>
+
+ <view class="note" style="margin-bottom: 20rpx;text-align: center" v-if="active==0">页面展示为实物样例,实际以用户收到的商品为准</view>
+
+ <lanyaerji v-if="active==0" style="margin:0 30rpx;"/>
+
+ <tehuichongzhi v-else :VIP="VIP" style="margin-top: 50rpx;" />
+
+ <view style="text-align: center;margin: 30rpx;">
+ <button class="exchange-btn" v-if="active==0" @click="getTips">我要查物流</button>
+ <button class="exchange-btn" v-else @click="toHuiyuan">我要兑换</button>
+ <view class="note" v-if="active==0">* 页面为实物样例,实际用户收到的商品为准</view>
+ <view class="note" v-else>* 页面为虚拟权益预览,实际用户以当日兑换内容为准</view>
+ </view>
+ </view>
+
+
+ <uni-popup type="center" ref="comment" >
+ <view style="background-image: url('/static/imgs/BOXSDF.png');border-radius: 48rpx;padding: 28rpx ;width: 650rpx;background-repeat: no-repeat;background-size: 100% 100%">
+ <view style="text-align: center;padding-top: 30rpx;" >
+ <image src="/static/imgs/yifa.png" style="width:372rpx;height: 240rpx;"></image>
+ </view>
+ <view style="font-size: 32rpx;font-weight: 600;color: #333333;text-align: center;margin-top: 34rpx;margin-bottom: 80rpx;padding: 0 28rpx;">
+ <view>{{ tips }}</view>
+ </view>
+ <view @click="$refs.comment.close()" style="font-weight: 500;font-size: 32rpx;color: #fff;text-align: center;padding: 24rpx 28rpx;border-top: 2rpx solid #EEEEEE;background: #FF1472;border-radius: 40rpx ;">好的</view>
+ </view>
+ </uni-popup>
+ </view>
+</template>
+
+<style scoped lang="scss">
+
+/* 顶部 VIP 样式 */
+.vip-bg {
+ background-size: 100%;
+ background-repeat: no-repeat;
+ padding-top: 60rpx;
+ padding-bottom: 150rpx;
+}
+.vip-box {
+ background-repeat: no-repeat;padding:20rpx 30rpx 60rpx 30rpx;
+}
+.gradient-text {
+ -webkit-background-clip: text;
+ -webkit-text-fill-color: transparent;
+ font-weight: 600;
+}
+.big-text {
+ margin-top: 20rpx;
+ font-size: 28rpx;
+}
+.small-text {
+ margin-top: 20rpx;
+ font-size: 24rpx;
+}
+.vip1-text {
+ background: linear-gradient(90deg, #754200, #ff9900);
+ -webkit-background-clip: text;
+ -webkit-text-fill-color: transparent;
+}
+.vip2-text {
+ background: linear-gradient(90deg, #425268, #8094A6);
+ -webkit-background-clip: text;
+ -webkit-text-fill-color: transparent;
+}
+.vip3-text {
+ background: linear-gradient(90deg, #ECD4C6, #C79372);
+ -webkit-background-clip: text;
+ -webkit-text-fill-color: transparent;
+}
+.progress-bar {
+ height: 16rpx;
+ border-radius: 20rpx;
+ width: 100%;
+ margin-top: 24rpx;
+ position: relative;
+}
+.progress-inner {
+ position: absolute;
+ background: #fff;
+ border-radius: 6rpx;
+ left: 0;
+ top: 0;
+ width: 50%;
+ height: 16rpx;
+}
+
+/* 内容区 */
+.content-wrap {
+ padding: 30rpx 0;
+ background: #fff;
+ border-radius: 50rpx 50rpx 0 0;
+ position: relative;
+ top: -60rpx;
+}
+.card-wrap {
+ display: flex;
+ justify-content: space-between;
+ margin-bottom: 40rpx;
+}
+.card-item {
+ background: #f5f5f5;
+ border-radius: 24rpx;
+ padding-top: 60rpx;
+ text-align: center;
+ //width: calc(50% - 14rpx);
+ width: 100%;
+ position: relative;
+}
+.card-title {
+ font-size: 32rpx;
+ font-weight: 600;
+ margin-bottom: 34rpx;
+}
+.card-price {
+ color: #333;
+ font-size: 28rpx;
+ font-weight: 600;
+}
+.card-num {
+ font-size: 48rpx;
+ font-weight: bold;
+ margin: 0 8rpx;
+}
+.card-date {
+ font-size: 24rpx;
+ margin-top: 28rpx;
+ border-radius: 0rpx 0rpx 24rpx 24rpx;
+ background: #fff;
+ //background: #EAEAEA;
+ color: #666666;
+ padding: 16rpx 0;
+}
+.has-buy {
+ background: #FF922C;
+ border-radius: 8rpx;
+ height: 42rpx;
+ width: 92rpx;
+ font-size: 24rpx;
+ color: #fff;
+ position: absolute;
+ top: -21rpx;
+ left: 28rpx;
+ line-height: 42rpx;
+ display: none;
+}
+.card-item-buy {
+ background: #fff;
+}
+.card-item-buy{
+ .card-date{
+ //background: #FF922C;
+ background: #fff;
+ color: white;
+ }
+ .has-buy{
+ display: block;
+ }
+
+}
+/* tab */
+.tab-wrap {
+ display: flex;
+ justify-content: space-evenly;
+ margin-bottom: 50rpx;
+}
+.tab-wrap text {
+ font-weight: 600;
+ font-size: 36rpx;
+ color: #666;
+}
+.active {
+ color: #333 !important;
+ position: relative;
+ &::after {
+ content: "";
+ display: block;
+ width: 50rpx;
+ height: 8rpx;
+ background: linear-gradient( 91deg, #FDFAFF 0%, #F9C969 100%);
+ border-radius: 32rpx;
+ position: absolute;
+ bottom: -20rpx;
+ left: calc(50% - 25rpx);
+ }
+}
+
+/* 按钮 */
+.exchange-btn {
+ font-weight: 600;
+ font-size: 36rpx;
+ color: #FFD39A;
+ padding: 10rpx;
+ background: linear-gradient( 91deg, #A97132 0%, #542C09 100%);
+ border-radius: 200rpx;
+}
+.note {
+ font-size: 24rpx;
+ color: #999;
+ margin-top: 20rpx;
+}
+.vip2-num{
+ color: #8E1768 !important;
+}
+</style>
diff --git a/pages/quanshou/index.vue b/pages/quanshou/index.vue
index f1d2c75..d2b0e55 100644
--- a/pages/quanshou/index.vue
+++ b/pages/quanshou/index.vue
@@ -1,46 +1,51 @@
<script>
-
-import tehuichongzhi from "@/pages/quanshou/components/tehuichongzhi.vue"; //虚拟
-import lanyaerji from "@/pages/quanshou/components/lanyaerji.vue"; // 实物
+import xianlianghaojjuab from "@/pages/quanshou/components/xianlianghaojjuab.vue";
+import tehuichongzhi from "@/pages/quanshou/components/tehuichongzhi.vue";
+import lanyaerji from "@/pages/quanshou/components/lanyaerji.vue";
+import list from "@/pages/quanshou/components/list.vue";
+import heijing from "@/pages/quanshou/components/heijing.vue";
export default {
name: "index",
components: {
+ xianlianghaojjuab,
tehuichongzhi,
lanyaerji,
+ list,
+ heijing
},
data() {
return {
tips:'',
active: 0,
- VIP: 1, // 1黄金 2铂金 3黑金
+ VIP: 2, // 1黄金 2铂金 3黑金
lst:[],
vipConfig: {
1: {
- bg: "/static/imgs/quanshou/TBBG1.png",
- box: "/static/imgs/quanshou/NEWBOX1.png",
- title: "/static/imgs/quanshou/VIPTXT1.png",
- level: "/static/imgs/quanshou/VIP1.png",
+ bg: "/static/img/quanshou/TBBG1.png",
+ box: "/static/img/quanshou/VIPBOX1.png",
+ title: "/static/img/quanshou/VIPTXT1.png",
+ level: "/static/img/quanshou/VIPLVL1.png",
textClass: "vip1-text",
progressBg: "#BBA767",
growText: " 88800/100000",
benefitText: "297.00"
},
2: {
- bg: "/static/imgs/quanshou/TBBG2.png",
- box: "/static/imgs/quanshou/NEWBOX2.png",
- title: "/static/imgs/quanshou/VIPTXT2.png",
- level: "/static/imgs/quanshou/VIP2.png",
+ bg: "/static/img/quanshou/TBBG2.png",
+ box: "/static/img/quanshou/VIPBOX2.png",
+ title: "/static/img/quanshou/VIPTXT2.png",
+ level: "/static/img/quanshou/VIPLVL2.png",
textClass: "vip2-text",
progressBg: "#8094A6",
growText: " 88800/100000",
benefitText: "594.00"
},
3: {
- bg: "/static/imgs/quanshou/TBBG3.png",
- box: "/static/imgs/quanshou/VIPBOX3.png",
- title: "/static/imgs/quanshou/VIPTXT3.png",
- level: "/static/imgs/quanshou/VIPLVL3.png",
+ bg: "/static/img/quanshou/TBBG3.png",
+ box: "/static/img/quanshou/VIPBOX3.png",
+ title: "/static/img/quanshou/VIPTXT3.png",
+ level: "/static/img/quanshou/VIPLVL3.png",
textClass: "vip3-text",
progressBg: "#7B776E",
growText: " 88800/100000",
@@ -48,6 +53,7 @@
}
},
total: 0,
+ isAgree: 0,
};
},
computed: {
@@ -58,12 +64,9 @@
onLoad(pro) {
const _this = this;
+ this.isAgree = uni.getStorageSync('boughtEquity')
uni.request({
- url: _this.$webHost+'/api/v2/customer/getRyxBenefitsRecordList?phone='+_this.$util.getUserInfo().phone,
- data:{
- customerId: uni.getStorageSync('qxgLogin').customerId,
- appId: uni.getStorageSync('qxgLogin').appId
- },
+ url: _this.$webHost+'/api/v2/customer/getRyxBenefitsRecordList?phone='+uni.getStorageSync('phone')+'&appId='+'47be9559-6b1b-42dd-84ed-25d028065013',
success: function (res) {
if(res.data.code==200){
_this.lst = res.data.data;
@@ -76,6 +79,7 @@
_this.total += parseFloat(item.amount);
}
})
+ console.log('_this.lst',_this.lst)
_this.total = Intl.NumberFormat('zh-CN', {
minimumFractionDigits: 2,
maximumFractionDigits: 2,
@@ -88,6 +92,12 @@
})
},
methods: {
+ goHome(){
+ // uni.switchTab({
+ // url: '/pages/user/index'
+ // });
+ uni.navigateBack()
+ },
numbs(period) {
const obj ={
1:'一',
@@ -99,24 +109,22 @@
toHuiyuan(){
const _this = this;
uni.request({
- url: _this.$webHost+'/api/v2/memberEquity/getUrlByShop/'+_this.$util.getUserInfo().phone,
- data:{
- customerId: uni.getStorageSync('qxgLogin').customerId,
- appId: uni.getStorageSync('qxgLogin').appId
- },
+ url: _this.$webHost+'/api/v2/memberEquity/getUrlByShop/'+uni.getStorageSync('phone'),
success: function (res) {
if(res.data.code==200){
uni.request( {
- url: _this.$webHost+'/api/v2/memberEquity/clickUrlByShop/'+_this.$util.getUserInfo().phone,
+ url: _this.$webHost+'/api/v2/memberEquity/clickUrlByShop/'+uni.getStorageSync('phone'),
})
uni.navigateTo( {
- url: '/pages/web/index?webUel=' + encodeURIComponent(res.data.data.url)
+ url: '/pages/users/web_page/index?webUel=' + encodeURIComponent(res.data.data.url)
})
} else {
- uni.showToast( {
- title: res.data.data || res.data.msg,
- icon: 'none'
- })
+ _this.tips = res.data.data || res.data.msg;
+ _this.$refs.life.open()
+ // uni.showToast( {
+ // title: res.data.data || res.data.msg,
+ // icon: 'none'
+ // })
}
}
})
@@ -126,11 +134,7 @@
getTips(){
const _this = this;
uni.request({
- url: _this.$webHost+'/api/v2/shop/findExpressNo?phone='+_this.$util.getUserInfo().phone,
- data:{
- customerId: uni.getStorageSync('qxgLogin').customerId,
- appId: uni.getStorageSync('qxgLogin').appId
- },
+ url: _this.$webHost+'/api/v2/shop/findExpressNo?phone='+uni.getStorageSync('phone'),
success: function (res) {
if(res.data.code==200){
_this.tips = res.data.data;
@@ -150,68 +154,200 @@
</script>
<template>
- <view style="background: white;">
+ <view style="background: url('/static/img/qsBg.png') no-repeat top center; background-size: 100%;background-color: #fff;height: 100%;">
<!-- 顶部 VIP 卡片 -->
- <view class="vip-box" :style="{ backgroundImage: `url(${currentVip.box})` }" >
- <view style="position: relative">
- <image :src="currentVip.level" style="height: 200rpx;width: 100%;"></image>
- <view style="position: absolute;top: 120rpx;left: 48rpx;color: #754200;font-size: 28rpx;" :class="VIP==1?'vip1-num':'vip2-num'">已购会员{{ total }}</view>
- </view>
- <view class="card-wrap" style="margin-top: 38rpx;">
- <view class="card-item" v-for="i in lst" :class="i.isBuy?'card-item-buy':''">
-<!-- <view class="card-title">{{numbs(i.period)}}期会员</view>-->
- <view class="card-title">{{i.buyDate}}</view>
- <view class="card-price">
- <text>¥</text>
- <text class="card-num" >{{ i.amount }}</text>
+<!-- <view-->
+<!-- class="vip-bg"-->
+<!-- :style="{ backgroundImage: `url(${currentVip.bg})` }"-->
+<!-- >-->
+<!-- <view-->
+<!-- class="vip-box"-->
+<!-- :style="{ backgroundImage: `url(${currentVip.box})` }"-->
+<!-- >-->
+<!-- <view>-->
+<!-- <image :src="currentVip.title" style="width: 160rpx;height: 45rpx;" />-->
+<!-- </view>-->
+
+<!-- <view class="gradient-text big-text" :class="currentVip.textClass">-->
+<!-- 成长值 {{ currentVip.growText }}-->
+<!-- </view>-->
+
+<!-- <view-->
+<!-- class="progress-bar"-->
+<!-- :style="{ background: currentVip.progressBg }"-->
+<!-- >-->
+<!-- <view class="progress-inner" v-if="VIP==1" style="width: 29.7%"/>-->
+<!-- <view class="progress-inner" v-if="VIP==2" style="width: 59.4%"/>-->
+<!-- <view class="progress-inner" v-if="VIP==3" style="width: 89.1%"/>-->
+<!-- </view>-->
+
+<!-- <view class="gradient-text small-text" :class="currentVip.textClass">-->
+<!-- 已购会员{{ total }}-->
+<!-- </view>-->
+
+<!-- <image-->
+<!-- :src="currentVip.level"-->
+<!-- style="width: 210rpx;height: 210rpx;position: absolute;top: -70rpx;right: 0;"-->
+<!-- />-->
+<!-- </view>-->
+<!-- </view>-->
+ <!-- 新版 -->
+ <view style="padding-bottom: 200rpx;">
+ <!-- 返回 -->
+ <view class="head" style="position: relative;height: 90rpx;padding:0 30rpx;">
+ <view style="display: flex;justify-content: flex-start;position: absolute;left: 0;top: 15rpx;padding-left: 30rpx;z-index: 9;color: #FFFFFF;">
+ <view @tap="goHome" id="home" class="home acea-row row-center-wrapper iconfont icon-fanhui2 h5_back arrow-left" style="margin-top: 80rpx;">
+ <uv-icon name="arrow-left" color="#ffffff" size="22"></uv-icon>
+ <!-- <view @tap="goHome" id="home" class="home acea-row row-center-wrapper iconfont icon-fanhui2 h5_back icon-shouye4" :style="{ height: '80rpx',lineHeight: '80rpx'}" >-->
</view>
- <view class="card-date" style="height: 40rpx"> </view>
- <!-- <view class="card-date">{{ i.buyDate }}</view>-->
- <view class="has-buy">{{ i.isBuy?'已扣款' : '待扣款' }}</view>
</view>
+ </view>
+ <!-- 尊享会员年卡 -->
+ <view style="background: url('/static/img/qsBg3.png') no-repeat top center; background-size: 100%;width: 690rpx;height: 388rpx;margin: 0 auto;margin-bottom: 40rpx;margin-top: 35rpx;">
+ <view style="padding: 40rpx;padding-top: 220rpx;">
+<!-- <view style="font-size: 44rpx;font-weight: bold;background: -webkit-linear-gradient(#FFEEE7, #F4936F);-webkit-background-clip: text;-webkit-text-fill-color: transparent;">尊享会员年卡</view>-->
+<!-- <view style="font-size: 28rpx;font-weight: 400;background: -webkit-linear-gradient(#FFEEE7, #F4936F);-webkit-background-clip: text;-webkit-text-fill-color: transparent;">会员预计最高节省1359.27元</view>-->
+ <view style="display: flex;margin-top: 30rpx;align-items: self-end;">
+ <view v-if="lst.length" style="font-size: 24rpx;width: 70%;">
+ <p style="font-size: 36rpx;color: #253567;font-weight: bold;">¥{{lst[0].amount.toFixed(2)}} 99<span style="font-size: 28rpx;margin-left: 20rpx;">{{lst[0].isBuy?'已扣款' : '待扣款'}}</span></p>
+<!-- <p style="font-size: 48rpx;color: #253567;font-weight: bold;">¥99.00<span style="font-size: 28rpx;margin-left: 20rpx;">已扣款</span></p>-->
+<!-- <p style="background: -webkit-linear-gradient(#FFEEE7, #F4936F);-webkit-background-clip: text;-webkit-text-fill-color: transparent;">{{lst[0].buyDate}}</p>-->
+ </view>
+ <view v-if="lst.length" style="width: 164rpx;height: 58rpx;text-align: center;line-height: 58rpx;margin-top: 40rpx;display: flex;justify-content: center;align-items: center;">
+ <p style="color: #253567;font-size: 28rpx;">{{lst[0].buyDate}}</p>
+<!-- <p style="color: #253567;font-size: 28rpx;">2026-02-03</p>-->
+ </view>
+ </view>
+ </view>
+ </view>
+ <!-- 专享会员生活权益 -->
+ <view style="padding: 0 30rpx; background-color: #FFFFFF;padding-top: 3rpx;border-top-left-radius: 50rpx;border-top-right-radius: 50rpx;">
+ <view class="content-title" style="text-align: center;margin-top: 50rpx;margin-bottom: 40rpx;">
+<!-- <image style="width: 111rpx;height: 8rpx;" src="/static/img/qsLeft.png"></image>-->
+ <view style="font-size: 36rpx;color: #333333;margin: 0 20rpx;">
+ <span class="content-title-item">虚拟权益</span>
+ </view>
+ <view style="color: #666666;font-size: 24rpx;">专享权益以实际兑换页面为准</view>
+<!-- <image style="width: 111rpx;height: 8rpx;" src="/static/img/qsRight.png"></image>-->
+ </view>
+ <view class="life" style="background: url('/static/img/qsLife.png') no-repeat top center; background-size: 100%;width: 100%;height: 500rpx;">
+
+ </view>
+ <view class="life" style="background: url('/static/img/qsLife2.png') no-repeat top center; background-size: 100%;width: 100%;height: 700rpx;margin-top: 40rpx;">
+
+ </view>
+<!-- <view style="width: 690rpx;margin-top: 40rpx;text-align: center;">-->
+<!-- <button @click="toHuiyuan" style="height: 100rpx;padding: 25rpx 0;color: #370606;border-radius: 50rpx;font-size: 34rpx;background-image: linear-gradient(to right, #FFEAE2, #FF6F55);">兑换生活权益</button>-->
+<!-- <view style="color: #FFFFFF;font-size: 24rpx;padding-top: 20rpx;padding-bottom: 10rpx;">以上权益仅为预览展示,实际以兑换页面为准</view>-->
+<!-- </view>-->
+ <view class="content-title" style="text-align: center;margin-top: 50rpx;margin-bottom: 40rpx;">
+<!-- <image style="width: 111rpx;height: 8rpx;" src="/static/img/qsLeft.png"></image>-->
+ <view style="font-size: 36rpx;color: #333333;margin: 0 20rpx;">
+ <span class="content-title-item">实物权益</span>
+ </view>
+ <view style="color: #666666;font-size: 24rpx;">专享权益以实际兑换页面为准</view>
+<!-- <image style="width: 111rpx;height: 8rpx;" src="/static/img/qsRight.png"></image>-->
+ </view>
+ <view class="physical" style="background: url('/static/img/qsPhysical.png') no-repeat top center; background-size: 100%;width: 100%;height: 982rpx;">
+
+ </view>
+<!-- <view style="width: 690rpx;margin-top: 40rpx;text-align: center;">-->
+<!-- <button @click="getTips" style="height: 100rpx;padding: 25rpx 0;color: #370606;border-radius: 50rpx;font-size: 34rpx;background-image: linear-gradient(to right, #FFEAE2, #FF6F55);">查询实物权益</button>-->
+<!-- <view style="color: #FFFFFF;font-size: 24rpx;padding-top: 20rpx;padding-bottom: 40rpx;">以上权益仅为预览展示,实际以商城发出为准</view>-->
+<!-- </view>-->
+ </view>
+ <view style="width: 690rpx;display: flex;gap: 20rpx;position: fixed;bottom: 40rpx;left: 30rpx;z-index: 5;">
+ <button @click="toHuiyuan" style="width:50%;height: 100rpx;line-height: 100rpx;color: #ffffff;border-radius: 50rpx;font-size: 34rpx;background-color: #CD8319">虚拟权益</button>
+ <button @click="getTips" style="width:50%;height: 100rpx;line-height: 100rpx;color: #ffffff;border-radius: 50rpx;font-size: 34rpx;background-color: #4766FE">实物权益</button>
</view>
</view>
<!-- 会员购买 + 权益部分 -->
- <view class="content-wrap">
+<!-- <view class="content-wrap">-->
+<!-- <view class="card-wrap">-->
+<!-- <view class="card-item" v-for="i in lst">-->
+<!-- <view class="card-title">{{numbs(i.period)}}期会员</view>-->
+<!-- <view class="card-price">-->
+<!-- <text>¥</text>-->
+<!-- <text class="card-num">{{ i.amount }}</text>-->
+<!-- <text>/{{i.dateType}}</text>-->
+<!-- </view>-->
+<!-- <view class="card-date">{{ i.buyDate }}</view>-->
+<!-- <view class="has-buy">{{ i.isBuy?'已扣款' : '待扣款' }}</view>-->
+<!-- </view>-->
+<!-- </view>-->
+<!-- <view class="tab-wrap">-->
+<!-- <text @click="active=0" :class="active==0?'active':''">实物权益</text>-->
+<!-- <text @click="active=1" :class="active==1?'active':''">虚拟权益</text>-->
+<!-- </view>-->
- <view class="tab-wrap">
- <text @click="active=0" :class="active==0?'active':''">实物权益</text>
- <text @click="active=1" :class="active==1?'active':''">虚拟权益</text>
- </view>
+<!-- <view class="note" style="margin-bottom: 20rpx;" v-if="active==0">页面展示为实物样例,实际以用户收到的商品为准</view>-->
- <view class="note" style="margin-bottom: 20rpx;text-align: center" v-if="active==0">页面展示为实物样例,实际以用户收到的商品为准</view>
+<!-- <lanyaerji v-if="active==0" />-->
- <lanyaerji v-if="active==0" style="margin:0 30rpx;"/>
+<!-- <template v-else>-->
+<!-- <xianlianghaojjuab v-show="VIP==1" />-->
+<!-- <tehuichongzhi v-show="VIP==1" style="margin-top: 50rpx;" />-->
+<!-- <list v-show="VIP==2" style="margin-top: 10rpx;" />-->
+<!-- <heijing v-show="VIP==3" style="margin-top: 10rpx;" />-->
+<!-- </template>-->
- <tehuichongzhi v-else :VIP="VIP" style="margin-top: 50rpx;" />
-
- <view style="text-align: center;margin: 30rpx;">
- <button class="exchange-btn" v-if="active==0" @click="getTips">我要查物流</button>
- <button class="exchange-btn" v-else @click="toHuiyuan">我要兑换</button>
- <view class="note" v-if="active==0">* 页面为实物样例,实际用户收到的商品为准</view>
- <view class="note" v-else>* 页面为虚拟权益预览,实际用户以当日兑换内容为准</view>
- </view>
- </view>
+<!-- <view style="margin-top: 30rpx;text-align: center">-->
+<!-- <button class="exchange-btn" v-if="active==0" @click="getTips">查询物流单号</button>-->
+<!-- <button class="exchange-btn" v-else @click="toHuiyuan">兑换我的虚拟权益</button>-->
+<!-- <view class="note" v-if="active==0"></view>-->
+<!-- <view class="note" v-else>* 虚拟权益以实际兑换为准</view>-->
+<!-- </view>-->
+<!-- </view>-->
<uni-popup type="center" ref="comment" >
- <view style="background-image: url('/static/imgs/BOXSDF.png');border-radius: 48rpx;padding: 28rpx ;width: 650rpx;background-repeat: no-repeat;background-size: 100% 100%">
- <view style="text-align: center;padding-top: 30rpx;" >
- <image src="/static/imgs/yifa.png" style="width:372rpx;height: 240rpx;"></image>
+ <view style="border-radius: 48rpx;padding: 28rpx 0;width: 538rpx;background: #FFFFFF;padding-top: 0;">
+ <view style="width: 100%;height: 200rpx;border-radius: 48rpx;">
+ <view style="text-align: center;padding-top: 30rpx;" >
+ <image src="/static/img/yifa.png" style="width: 560rpx;height: 252rpx;"></image>
+ </view>
</view>
- <view style="font-size: 32rpx;font-weight: 600;color: #333333;text-align: center;margin-top: 34rpx;margin-bottom: 80rpx;padding: 0 28rpx;">
+ <view style="font-size: 32rpx;font-weight: 600;color: #333333;text-align: center;margin-top: 84rpx;margin-bottom: 40rpx;padding: 0 28rpx;">
<view>{{ tips }}</view>
</view>
- <view @click="$refs.comment.close()" style="font-weight: 500;font-size: 32rpx;color: #fff;text-align: center;padding: 24rpx 28rpx;border-top: 2rpx solid #EEEEEE;background: #FF1472;border-radius: 40rpx ;">好的</view>
+ <view @click="$refs.comment.close()" style="font-weight: 500;font-size: 32rpx;color: #ffffff;text-align: center;padding: 24rpx 28rpx;border-top: 2rpx solid #EEEEEE;background-color: #4766FE;margin-left: 30rpx;margin-right: 30rpx;border-radius: 56rpx">好的</view>
+ </view>
+ </uni-popup>
+
+ <uni-popup type="center" ref="life" >
+ <view style="border-radius: 48rpx;padding: 28rpx 0;width: 538rpx;background: #FFFFFF;padding-top: 0;">
+ <view style="width: 100%;height: 200rpx;border-radius: 48rpx;">
+ <view style="text-align: center;padding-top: 30rpx;">
+ <image src="/static/img/qsLifeIcon.png" style="width: 560rpx;height: 252rpx;"></image>
+ </view>
+ </view>
+ <view style="font-size: 32rpx;font-weight: 600;color: #333333;text-align: center;margin-top: 84rpx;margin-bottom: 40rpx;padding: 0 28rpx;">
+ <view>{{ tips }}</view>
+ </view>
+ <view @click="$refs.life.close()" style="font-weight: 500;font-size: 32rpx;color: #ffffff;text-align: center;padding: 24rpx 28rpx;border-top: 2rpx solid #EEEEEE;background-color: #4766FE;margin-left: 30rpx;margin-right: 30rpx;border-radius: 56rpx">好的</view>
</view>
</uni-popup>
</view>
</template>
<style scoped lang="scss">
-
+.content-title-item {
+ position: relative;
+ z-index: 2;
+}
+.content-title-item::after {
+ content: '';
+ position: absolute;
+ left: -5rpx;
+ z-index: -1;
+ bottom: 6rpx; /* 根据需要调整距离 */
+ width: calc(100% + 10rpx); /* 与标题宽度相同 */
+ height: 10rpx; /* 边框厚度 */
+ border-radius: 10rpx;
+ background: linear-gradient(90deg, #9DB7FF, #6584DB)
+}
/* 顶部 VIP 样式 */
.vip-bg {
background-size: 100%;
@@ -220,7 +356,12 @@
padding-bottom: 150rpx;
}
.vip-box {
- background-repeat: no-repeat;padding:20rpx 30rpx 60rpx 30rpx;
+ background-repeat: no-repeat;
+ background-size: 100% 100%;
+ height: 280rpx;
+ margin: 0 30rpx;
+ padding: 35rpx;
+ position: relative;
}
.gradient-text {
-webkit-background-clip: text;
@@ -269,11 +410,11 @@
/* 内容区 */
.content-wrap {
- padding: 30rpx 0;
- background: #fff;
- border-radius: 50rpx 50rpx 0 0;
+ padding: 30rpx;
+ background: #F4F4F4;
+ border-radius: 24rpx 24rpx 0 0;
position: relative;
- top: -60rpx;
+ top: -100rpx;
}
.card-wrap {
display: flex;
@@ -281,12 +422,12 @@
margin-bottom: 40rpx;
}
.card-item {
- background: #f5f5f5;
+ background: #fff;
border-radius: 24rpx;
padding-top: 60rpx;
text-align: center;
- //width: calc(50% - 14rpx);
- width: 100%;
+ padding-bottom: 48rpx;
+ width: calc(50% - 15rpx);
position: relative;
}
.card-title {
@@ -305,41 +446,23 @@
margin: 0 8rpx;
}
.card-date {
- font-size: 24rpx;
- margin-top: 28rpx;
- border-radius: 0rpx 0rpx 24rpx 24rpx;
- background: #fff;
- //background: #EAEAEA;
- color: #666666;
- padding: 16rpx 0;
+ font-size: 20rpx;
+ color: #666;
+ margin-top: 18rpx;
}
.has-buy {
background: #FF922C;
- border-radius: 8rpx;
+ border-radius: 0 24rpx 0 24rpx;
height: 42rpx;
width: 92rpx;
font-size: 24rpx;
color: #fff;
position: absolute;
- top: -21rpx;
- left: 28rpx;
+ top: 0;
+ right: 0;
line-height: 42rpx;
- display: none;
}
-.card-item-buy {
- background: #fff;
-}
-.card-item-buy{
- .card-date{
- //background: #FF922C;
- background: #fff;
- color: white;
- }
- .has-buy{
- display: block;
- }
-}
/* tab */
.tab-wrap {
display: flex;
@@ -359,7 +482,7 @@
display: block;
width: 50rpx;
height: 8rpx;
- background: linear-gradient( 91deg, #FDFAFF 0%, #F9C969 100%);
+ background: linear-gradient(271deg, #FFE4A1 0%, #FFC57A 51%, #FFE1B9 100%);
border-radius: 32rpx;
position: absolute;
bottom: -20rpx;
@@ -372,16 +495,13 @@
font-weight: 600;
font-size: 36rpx;
color: #FFD39A;
- padding: 10rpx;
- background: linear-gradient( 91deg, #A97132 0%, #542C09 100%);
+ padding: 26rpx;
+ background: linear-gradient(271deg, #2A1601 0%, #3B2106 51%);
border-radius: 200rpx;
}
.note {
font-size: 24rpx;
color: #999;
margin-top: 20rpx;
-}
-.vip2-num{
- color: #8E1768 !important;
}
</style>
diff --git a/pages/quanyi/add.vue b/pages/quanyi/add.vue
index ff70d94..b67f32c 100644
--- a/pages/quanyi/add.vue
+++ b/pages/quanyi/add.vue
@@ -79,7 +79,7 @@
customStyle() {
return {
height: "100rpx",
- background: "#EE2626",
+ background: "#4766FE",
color: "#fff",
borderRadius: "50rpx",
fontSize: "34rpx",
@@ -171,6 +171,7 @@
},
mounted(){
+ this.$refs.codeUi.open()
this.windowHeight = uni.getSystemInfoSync().windowHeight;
this.interval = setInterval(() => {
let newHeight = window.innerHeight;
@@ -998,146 +999,191 @@
<uv-popup mode="center" round="20" ref="codeUi" :closeOnClickOverlay="false" >
- <view style="padding: 40rpx;width: 690rpx;background: url('/static/img/smsBg.png') no-repeat top center; background-size: 100%;height: 650rpx;">
+ <view style="padding: 40rpx 0;width: 690rpx;background: url('/static/img/smsCodeBg.png') no-repeat top center; background-size: 100%;height: 650rpx;position: relative;">
<view class="head">
<view
style="
text-align: center;
font-weight: bold;
font-size: 36rpx;
- position: relative;
- height: 50rpx;
+ position: absolute;
+ height: 190rpx;
+ right: 0;
+ top: -30rpx;
+ z-index: 1;
"
>
<image
- @click="$refs.codeUi.close()"
- src="@/static/img/off.png"
+ src="@/static/img/codeSetUi.png"
style="
- width: 50rpx;
- height: 50rpx;
- position: absolute;
- right: 0;
- top: -2rpx;
+ width: 190rpx;
+ height: 190rpx;
"
></image>
</view>
</view>
- <view style="
+ <!-- <view style="
font-weight: bold;
font-size: 36rpx;
position: relative;
margin-bottom: 12rpx;
text-align: center;
- ">短信确认</view>
- <view style="font-size: 28rpx;color: #252938;text-align: center;">为确保安全到账,需再次对您的收款账户进行短信验证</view>
+ ">短信确认</view> -->
+
+
+ <view class="close">
+ <view
+ style="
+ text-align: center;
+ font-weight: bold;
+ font-size: 36rpx;
+ height: 56rpx;
+ position: absolute;
+ left: 315rpx;
+ bottom: -80rpx;
+ "
+ >
+ <image
+ @click="$refs.codeUi.close()"
+ src="@/static/img/off.png"
+ style="
+ width: 56rpx;
+ height: 56rpx;
+ "
+ ></image>
+ </view>
+ </view>
+ <view style="margin-top: 100rpx;background: linear-gradient( -160deg, #D0FDFF 0%, #FFFBFC 50%, #FFFBFC 100%);border-radius: 40rpx 40rpx 40rpx 40rpx;border: 1px solid #fff;padding: 30rpx;position: relative;z-index: 2;">
+ <view style="font-size: 28rpx;color: #252938;text-align: center;">为确保安全到账,需再次对您的收款账户进行短信验证</view>
+ <view class="content">
+ <uv-form
+ :labelStyle="lstyle"
+ labelPosition="left"
- <view class="content">
- <uv-form
- :labelStyle="lstyle"
- labelPosition="left"
+ ref="form"
+ labelWidth="100"
+ >
- ref="form"
- labelWidth="100"
- >
+ <uv-form-item
+ class="item"
+ label=""
+ prop="repayTermStr"
- <uv-form-item
- class="item"
- label=""
- prop="repayTermStr"
+ >
+ <uv-input
+ :adjustPosition="true"
+ readonly
+ v-model="cardPhone"
+ maxlength="11"
+ :customStyle="inputStyle"
+ disabledColor="none"
- >
- <uv-input
- :adjustPosition="true"
- readonly
- v-model="cardPhone"
- maxlength="11"
- :customStyle="inputStyle"
- disabledColor="none"
+ border="none"
+ placeholder="请输入手机号"
+ style="height: 100rpx;border: 1px solid #EEEEEE;border-radius: 30rpx;padding: 0 20rpx;"
+ ></uv-input>
+ </uv-form-item>
- border="none"
- placeholder="请输入手机号"
- style="height: 100rpx;border: 1px solid #EEEEEE;border-radius: 30rpx;padding: 0 20rpx;"
- ></uv-input>
- </uv-form-item>
+ <uv-form-item
+ class="item"
+ label=""
+ prop="needVerify"
- <uv-form-item
- class="item"
- label=""
- prop="needVerify"
-
- >
- <uv-input
- :adjustPosition="true"
- maxlength="6"
- v-model="verificationCodeT"
- border="none"
- placeholder="请输入验证码"
- style="height: 100rpx;border: 1px solid #EEEEEE;border-radius: 30rpx;padding: 0 20rpx;"
- >
- <template #suffix>
- <text
- class="code"
- style="color: red;"
- :class="isCounting_A ? 'ks' : ''"
- @click="getCode"
- >{{ isCounting_A ? countText_A : "获取验证码" }}</text
- >
- </template>
- </uv-input>
- </uv-form-item>
- <uv-form-item >
- <view class="but" style="width: 100%;">
- <uv-button
- :customStyle="customStyle"
- shape="circle"
- @click="submitPlan"
- >确认</uv-button
- >
- </view>
- </uv-form-item>
- </uv-form>
- </view>
+ >
+ <uv-input
+ :adjustPosition="true"
+ maxlength="6"
+ v-model="verificationCodeT"
+ border="none"
+ placeholder="请输入验证码"
+ style="height: 100rpx;border: 1px solid #EEEEEE;border-radius: 30rpx;padding: 0 20rpx;"
+ >
+ <template #suffix>
+ <text
+ class="code"
+ style="color: #4766FE;"
+ :class="isCounting_A ? 'ks' : ''"
+ @click="getCode"
+ >{{ isCounting_A ? countText_A : "获取验证码" }}</text
+ >
+ </template>
+ </uv-input>
+ </uv-form-item>
+ <uv-form-item >
+ <view class="but" style="width: 100%;">
+ <uv-button
+ :customStyle="customStyle"
+ shape="circle"
+ @click="submitPlan"
+ >确认</uv-button
+ >
+ </view>
+ </uv-form-item>
+ </uv-form>
+ </view>
+ </view>
</view>
</uv-popup>
<uv-popup mode="center" round="20" ref="setUi" :closeOnClickOverlay="false" >
- <view style="padding: 40rpx;width: 690rpx;background: url('/static/img/smsBg.png') no-repeat top center; background-size: 100%;height: 650rpx;">
+ <view style="padding: 40rpx 0;width: 690rpx;background: url('/static/img/smsSetBg.png') no-repeat top center; background-size: 100%;height: 650rpx;">
<view class="head">
<view
style="
text-align: center;
font-weight: bold;
font-size: 36rpx;
- position: relative;
- height: 50rpx;
+ position: absolute;
+ height: 190rpx;
+ right: 0;
+ top: -30rpx;
+ z-index: 1;
"
>
-
+
<image
- @click="$refs.setUi.close()"
- src="@/static/img/off.png"
+ src="@/static/img/codeSetUi.png"
style="
- width: 50rpx;
- height: 50rpx;
- position: absolute;
- right: 0;
- top: -2rpx;
+ width: 190rpx;
+ height: 190rpx;
"
></image>
</view>
</view>
- <view style="
+ <!-- <view style="
font-weight: bold;
font-size: 36rpx;
position: relative;
margin-bottom: 12rpx;
text-align: center;
- ">本人提交确认</view>
+ ">本人提交确认</view> -->
+ <view class="close">
+ <view
+ style="
+ text-align: center;
+ font-weight: bold;
+ font-size: 36rpx;
+ height: 56rpx;
+ position: absolute;
+ left: 315rpx;
+ bottom: -80rpx;
+ "
+ >
+ <image
+ @click="$refs.setUi.close()"
+ src="@/static/img/off.png"
+ style="
+ width: 56rpx;
+ height: 56rpx;
+ "
+ ></image>
+ </view>
+ </view>
+ <view style="margin-top: 100rpx;background: linear-gradient( -160deg, #D0FDFF 0%, #FFFBFC 50%, #FFFBFC 100%);border-radius: 40rpx 40rpx 40rpx 40rpx;border: 1px solid #fff;padding: 30rpx;position: relative;z-index: 2;">
<view style="font-size: 28rpx;color: #252938;text-align: center;">根据合规要求我们将进行本人提交意愿确认的短信校验,请注意查看短信验证码</view>
-
<view class="content">
<uv-form
:labelStyle="lstyle"
@@ -1184,7 +1230,7 @@
<template #suffix>
<text
class="code"
- style="color: red;"
+ style="color: #4766FE;"
:class="isCounting_B ? 'ks' : ''"
@click="getCode_san"
>{{ isCounting_B ? countText_B : "获取验证码" }}</text
@@ -1204,7 +1250,8 @@
</uv-form-item>
</uv-form>
</view>
- </view>
+ </view>
+ </view>
</uv-popup>
<uv-popup mode="bottom" round="20" ref="address" >
@@ -1219,6 +1266,9 @@
.uv-checkbox-group--row {
align-items: center;
}
+ ::v-deep .uv-popup .uv-popup__content {
+ overflow: visible !important;
+ }
.a3{
color: #BDBDBE;
font-size: 30rpx;
diff --git a/static/img/codeSetUi.png b/static/img/codeSetUi.png
new file mode 100644
index 0000000..00814b5
--- /dev/null
+++ b/static/img/codeSetUi.png
Binary files differ
diff --git a/static/img/off.png b/static/img/off.png
index 2758512..fce8ca1 100644
--- a/static/img/off.png
+++ b/static/img/off.png
Binary files differ
diff --git a/static/img/qsBg.png b/static/img/qsBg.png
index 6a3f742..cd77e1f 100644
--- a/static/img/qsBg.png
+++ b/static/img/qsBg.png
Binary files differ
diff --git a/static/img/qsBg3.png b/static/img/qsBg3.png
new file mode 100644
index 0000000..86060eb
--- /dev/null
+++ b/static/img/qsBg3.png
Binary files differ
diff --git a/static/img/qsLife.png b/static/img/qsLife.png
index 99559b7..dcf3b50 100644
--- a/static/img/qsLife.png
+++ b/static/img/qsLife.png
Binary files differ
diff --git a/static/img/qsLife2.png b/static/img/qsLife2.png
new file mode 100644
index 0000000..b953850
--- /dev/null
+++ b/static/img/qsLife2.png
Binary files differ
diff --git a/static/img/qsLifeIcon.png b/static/img/qsLifeIcon.png
index d53f50b..f6d6d4c 100644
--- a/static/img/qsLifeIcon.png
+++ b/static/img/qsLifeIcon.png
Binary files differ
diff --git a/static/img/qsPhysical.png b/static/img/qsPhysical.png
index ca0de17..9df8b33 100644
--- a/static/img/qsPhysical.png
+++ b/static/img/qsPhysical.png
Binary files differ
diff --git a/static/img/smsBg.png b/static/img/smsBg.png
deleted file mode 100644
index 1e6fdf7..0000000
--- a/static/img/smsBg.png
+++ /dev/null
Binary files differ
diff --git a/static/img/smsCodeBg.png b/static/img/smsCodeBg.png
new file mode 100644
index 0000000..7a451cc
--- /dev/null
+++ b/static/img/smsCodeBg.png
Binary files differ
diff --git a/static/img/smsSetBg.png b/static/img/smsSetBg.png
new file mode 100644
index 0000000..9efc17e
--- /dev/null
+++ b/static/img/smsSetBg.png
Binary files differ
diff --git a/static/img/yifa.png b/static/img/yifa.png
index d19255a..6fd4dd7 100644
--- a/static/img/yifa.png
+++ b/static/img/yifa.png
Binary files differ
--
Gitblit v1.9.3