增加新模块

This commit is contained in:
何江明
2025-05-10 18:17:24 +08:00
parent 7e7a096151
commit 8217069b9a
427 changed files with 2069 additions and 1941 deletions
+161 -103
View File
@@ -4,9 +4,9 @@
<view class="home_header_warp"></view>
<view class="home_content_z_warp">
<view class="header_title_warp">
<up-image src="/static/home/logo.png" width="114" height="42" bgColor="#f1f6ff00"></up-image>
<up-image src="/static/home/logo.png" width="86" height="30" bgColor="#f1f6ff00"></up-image>
<view class="header_right_warp">
<view class="language_warp" style="width: 200rpx;justify-content: flex-start;" @click="jumpSearch">
<view class="language_warp" style="width: 100%;justify-content: flex-start;" @click="jumpSearch">
<up-image src="/static/home/search.png" width="18" height="18" bgColor="#f1f6ff00"></up-image>
<text class="search_msg_warp">搜索</text>
</view>
@@ -50,25 +50,25 @@
<!-- 带灰色背景的内容 -->
<view class="home_content_warp">
<!-- 转盘 -->
<up-image src="/static/home/turntable.png" width="100%" height="134" bgColor="#f1f6ff00" @click="jumpTurntable"></up-image>
<!-- <up-image src="/static/home/turntable.png" width="100%" height="128" bgColor="#f1f6ff00" @click="jumpTurntable"></up-image> -->
<!-- 爆款专区-->
<view class="product_comm hx_warp" v-if="faddishProduct && faddishProduct.length!==0">
<view class="product_title">
<view class="product_title_left">
<text class="product_title_z">德商汇优品</text>
<text class="product_title_yp">德商汇优品</text>
<up-image src="/static/home/youxuan.png" width="10" height="10" bgColor="#f1f6ff00" ></up-image>
<text style="margin-left: 6rpx;">品牌5折秒杀福利</text>
<text style="margin-left: 6rpx;color: #FFFFFF;">品牌5折秒杀福利</text>
</view>
<view class="product_title_f" style="font-weight: bold;" @click="jumpWelcome">
<text style="margin-right: 10rpx;">立即抢购</text>
<view style="margin-top: 10rpx;"><up-image src="/static/common/right_y_st2.png" width="12" height="12" bgColor="#f1f6ff00"></up-image></view>
</view>
</view>
<view class="product_content">
<view :class="faddishProduct && faddishProduct.length > 2 ? 'product_content product_content2':'product_content'">
<up-loading-icon :show="productLoading"></up-loading-icon>
<view class="product_item" v-for="item in faddishProduct" :key="item.id" @click="jumpInfo(item)">
<up-image :src="item.url" width="100%" height="100" bgColor="#f1f6ff00" shape="square" radius='16'></up-image>
<view :class="faddishProduct && faddishProduct.length > 2 ? 'product_item2':'product_item'" v-for="item in faddishProduct" :key="item.id" @click="jumpInfo(item)">
<up-image :src="item.url" width="100%" height="130" bgColor="#f1f6ff00" shape="square" radius='15'></up-image>
<view class="product_f_item">
<view class="product_f_item_name">{{item.title}}</view>
<view class="product_f_item_price product_f_item_price_hx">优选价{{item.adPrice}}元</view>
@@ -76,64 +76,58 @@
</view>
</view>
</view>
<!-- 好物优选 -->
<view class="product_comm yx_warp" v-if="yxProduct && yxProduct.length!==0">
<view class="product_title">
<view class="product_title_left">
<text class="product_title_z">德商汇优选</text>
<text>品牌5折秒杀福利</text>
</view>
<view class="product_title_f" style="font-weight: bold;" @click="jumpPrdference">
<text style="margin-right: 10rpx;">立即抢购</text>
<view style="margin-top: 10rpx;"><up-image src="/static/common/right_y_st2.png" width="12" height="12" bgColor="#f1f6ff00"></up-image></view>
<!-- 积分兑换,红包抽奖 -->
<view class="min_card_warp">
<!-- 积分兑换 -->
<view class="min_card_item min_card_item_jf" @click="jumpPrdference">
<up-image src="/static/home/min_card_jfdh.png" width="60" height="14" bgColor="#f1f6ff00" ></up-image>
<view class="min_card_item_content">
<view class="content_msg">
<view>好礼随心兑</view>
<view style="display: flex;align-items: center;">
兑换
<view style="margin-top: 6rpx;margin-left: 4rpx;"><up-image src="/static/common/right_y.png" width="10" height="10" bgColor="#f1f6ff00"></up-image></view>
</view>
</view>
<up-image src="/static/home/min_card_jfdh_2.png" width="66" height="46" bgColor="#f1f6ff00" ></up-image>
</view>
</view>
<view class="product_content">
<up-loading-icon :show="productLoading"></up-loading-icon>
<view class="product_item" v-for="item in yxProduct" :key="item.id" @click="jumpInfo(item)">
<up-image :src="item.url" width="100%" height="100" bgColor="#f1f6ff00" shape="square" radius='16'></up-image>
<view class="product_f_item">
<view class="product_f_item_name">{{item.title}}</view>
<view class="product_f_item_price product_f_item_price_yx">优选价{{item.adPrice}}元</view>
<!-- 红包抽奖 -->
<view class="min_card_item min_card_item_cj" @click="jumpTurntable">
<up-image src="/static/home/min_card_hbcj.png" width="60" height="14" bgColor="#f1f6ff00" ></up-image>
<view class="min_card_item_content">
<view class="content_msg">
<view>现金红包等你拿!</view>
<view style="display: flex;align-items: center;">
抽奖
<view style="margin-top: 6rpx;margin-left: 4rpx;"><up-image src="/static/common/right_y.png" width="10" height="10" bgColor="#f1f6ff00"></up-image></view>
</view>
</view>
<up-image src="/static/home/min_card_hbcj_2.png" width="66" height="46" bgColor="#f1f6ff00" ></up-image>
</view>
</view>
</view>
<!-- 热门榜 -->
<!-- <view class="hot_warp">
<view class="hot_title_warp">
<view class="title_warp">
<text class="title_">热门榜</text>
<view class="good_warp">
<view style="margin-top: 10rpx;">
<up-image src="/static/home/hot.png" width="20" height="20" bgColor="#f1f6ff00"></up-image>
</view>
<view class="good__msg_warp">精选好货</view>
</view>
<!-- 好物优选 -->
<view class="product_comm yx_warp" v-if="yxProduct && yxProduct.length!==0" @click="jumpPrdference">
<view class="product_title">
<view class="product_title_left">
<text class="product_title_z">德商汇优选</text>
<text class="product_title_zk">4折起 ></text>
</view>
<view class="more_warp">
<text style="margin-right: 10rpx;">更多</text>
<up-image src="/static/common/right_y_st.png" width="12" height="12" bgColor="#f1f6ff00"></up-image>
<view class="product_title_f" style="font-weight: bold; color: #999999FF;">
<text style="margin-right: 4rpx;">立即抢购</text>
<view style="margin-top: 10rpx;"><up-image src="/static/common/right.png" width="12" height="12" bgColor="#f1f6ff00"></up-image></view>
</view>
</view>
<view class="hot_content_warp">
<view v-for="item in hotList" :key="item.id" class="hot_item">
<up-image :src="item.url" width="100%" height="100" bgColor="#f1f6ff00"></up-image>
<view class="hot_item_name">{{item.name}}</view>
<view class="hot_item_price">
<up-image src="/static/home/hot_price.png" width="12" height="12" bgColor="#f1f6ff00"></up-image>
<view >¥{{item.price}}</view>
</view>
</view>
</view>
</view> -->
<!-- 哈希商学院 -->
<view class="business_school_warp" @click="openShow=true;">
<view>
<view class="title">德商汇商学院</view>
<view class="msg">
<text>带你快速入门</text>
<view style="margin-top: 10rpx;"><up-image src="/static/common/right_b.png" width="10" height="10" bgColor="#f1f6ff00"></up-image></view>
<view class="product_tips">平价专区 抢到就是赚到!</view>
<view :class="yxProduct && yxProduct.length > 3 ? 'product_content_yx product_content2':'product_content_yx'">
<up-loading-icon :show="productLoading"></up-loading-icon>
<view :class="yxProduct && yxProduct.length < 4 ? 'product_item_yx product_item_yx2':'product_item_yx'" v-for="item in yxProduct" :key="item.id">
<up-image :src="item.url" width="100%" height="80" bgColor="#f1f6ff00" shape="square" radius='10'></up-image>
<!-- <view class="product_f_item">
<view class="product_f_item_name">{{item.title}}</view>
<view class="product_f_item_price product_f_item_price_yx">优选价{{item.adPrice}}元</view>
</view> -->
</view>
</view>
</view>
@@ -188,10 +182,11 @@
<script>
import choiceness from '@/components/choiceness/choiceness.vue';
import { searchList } from '@/api/product.js';
import { getCascadeCategory } from '@/api/common.js';
import { getCascadeCategory,checkAppVersion } from '@/api/common.js';
import { SEARCH_TYPE } from '@/utils/enumUtils.js'
import CustomTabBar from '@/components/custom-tab-bar.vue'; // 引入自定义组件路径可能需要根据项目结构调整
import dayjs from 'dayjs';
import { comparisonVersionHandler } from '@/utils/index.js';
export default {
components:{choiceness,CustomTabBar},
@@ -265,6 +260,7 @@
const time2 = dayjs();
const diff = time2.diff(time1);
if(!versionUpdateTime || diff > 5 * 60 * 1000){
console.log("进来了...");
this.platformType = appUpdate == 'android' ? 'ANDROID' : 'IOS';
this.checkUpdate(); // 判断是否需要更新
}else{
@@ -290,7 +286,6 @@
versionCode:localAppVerson,
}
checkAppVersion(params).then(res => {
console.log("res",res);
if(res && res.bizcode === 100){
const data = res.data || {};
// app大版本更新,versionName:1.0.1 versionCode:102
@@ -314,7 +309,6 @@
if (platformType == 'ANDROID') {
// 弹出系统等待对话框
var dtask = plus.downloader.createDownload(updateApkObj.downloadUrl, {}, function(d, status) {
console.log("d, status",d, status);
// 下载完成
if (status == 200) {
plus.runtime.install(plus.io.convertLocalFileSystemURL(d.filename), {force: true}, function(resp){
@@ -400,7 +394,7 @@
const params = {
type,
page:1,
pageSize:3,
pageSize:type === SEARCH_TYPE.SOMETHING ? 4 : 3,
}
const resp = await searchList(params);
if(resp && resp.bizcode === 100){
@@ -446,22 +440,23 @@
position: relative;
}
.home_header_warp{
background-color: $app-bt-bj;
background-color: #AC2A29FF;
// background: linear-gradient(0deg, $app-bj, #AC2A29FF);
height: 500rpx;
padding: 100rpx 30rpx 0rpx;
}
.home_content_z_warp{
position: absolute;
top:70rpx;
top:90rpx;
.header_title_warp{
display: flex;
justify-content: space-between;
margin-bottom: 30rpx;
padding: 0 30rpx;
}
.header_right_warp{
display: flex;
align-items: center;
width: calc(100% - 140rpx);
}
.language_warp{
display: flex;
@@ -470,7 +465,7 @@
width: 100rpx;
background: #EEEEEEFF;
border-radius: 16rpx;
margin-left: 20rpx;
margin-left: 40rpx;
padding: 10rpx 20rpx;
}
.search_msg_warp{
@@ -517,10 +512,11 @@
margin-top: 20rpx;
}
.yx_warp{
background: linear-gradient(0deg, #FD2724,#FEA600);
// background: linear-gradient(0deg, #ffe0ccFF,#fff7f2FF);
background: linear-gradient(0deg, #ff8830ad,#fff7f2FF);
}
.hx_warp{
background: linear-gradient(0deg, #FD6C24, #F24A00);
background: linear-gradient(0deg, #ff3d3aFF, #ff8830FF);
}
.product_title{
display: flex;
@@ -528,15 +524,26 @@
align-items: center;
padding: 10rpx 20rpx;
}
.product_title_z{
.product_title_yp{
font-weight: 800;
font-size: 36rpx;
color: #FFFFFF;
margin-right: 10rpx;
}
.product_title_z{
font-weight: 800;
font-size: 36rpx;
color: #333333FF;
margin-right: 10rpx;
}
.product_title_zk{
border-radius: 15px;
border: 1px solid #F68103;
color: #F68103;
padding: 4rpx 20rpx;
}
.product_title_left{
font-size: 20rpx;
color: #FFFFFF;
display: flex;
align-items: center;
}
@@ -547,52 +554,103 @@
display: flex;
align-items: center;
}
.product_content_yx {
display: flex;
padding: 20rpx;
}
.product_content{
background-color: #FFFFFF;
padding: 20rpx;
border-radius: 24rpx;
display: flex;
// justify-content: space-between;
align-items: center;
.product_item{
width: 32%;
border-radius: 16rpx;
position: relative;
margin-right: 20rpx;
}
.product_content2 {
justify-content: space-between;
}
.product_item{
width: 32%;
position: relative;
margin-right: 20rpx;
}
.product_item2{
width: 32%;
position: relative;
}
.product_item_yx{
width: 23%;
position: relative;
}
.product_item_yx2{
margin-right: 20rpx;
}
.product_f_item{
position: absolute;
bottom: 0;
width: calc(100% - 40rpx);
height: 66rpx;
background: #F5F5F5;
border-radius: 24rpx;
padding: 10rpx 20rpx;
font-size: 18rpx;
color: #000000;
}
.product_f_item_name{
width: 172rpx;
white-space: nowrap; /* 防止文本换行 */
overflow: hidden; /* 隐藏溢出的文本 */
text-overflow: ellipsis; /* 使用省略号表示溢出的内容 */
font-weight: bold;
}
.product_f_item_price{
text-align: center;
border-radius: 10rpx;
color: #FFFFFF;
margin-top: 10rpx;
padding: 2rpx 0;
}
.product_f_item_price_yx{
background: #FFBA41;
}
.product_f_item_price_hx{
background: #FD6C24;
}
.product_tips{
font-size: 24rpx;
color: #F68103;
line-height: 40rpx;
margin-left: 20rpx;
}
// 积分兑换,红包
.min_card_warp{
display: flex;
justify-content: space-between;
margin-top: 20rpx;
.min_card_item{
padding: 20rpx;
width: 43%;
border-radius: 30rpx;
opacity: 0.8;
}
.product_f_item{
position: absolute;
bottom: 0;
width: calc(100% - 40rpx);
height: 66rpx;
background: #F5F5F5;
border-radius: 24rpx;
padding: 10rpx 20rpx;
font-size: 18rpx;
color: #000000;
.min_card_item_jf{
// background: linear-gradient(0deg,#FEF7EA, #FFFDFA);
background: linear-gradient(0deg,#fdeccd, #FFFDFA);
}
.product_f_item_name{
width: 172rpx;
white-space: nowrap; /* 防止文本换行 */
overflow: hidden; /* 隐藏溢出的文本 */
text-overflow: ellipsis; /* 使用省略号表示溢出的内容 */
font-weight: bold;
.min_card_item_cj{
// background: linear-gradient(0deg, #FFE5DC,#FFF9F6);
background: linear-gradient(0deg, #f5d5c9,#FFF9F6);
}
.product_f_item_price{
text-align: center;
border-radius: 10rpx;
color: #FFFFFF;
.min_card_item_content{
display: flex;
justify-content: space-between;
margin-top: 10rpx;
padding: 2rpx 0;
}
.product_f_item_price_yx{
background: #FFBA41;
}
.product_f_item_price_hx{
background: #FD6C24;
.content_msg{
font-size: 20rpx;
color: #808080;
display: grid;
}
}
}
// 热门榜
.hot_warp{
background: #FFFFFF;
+1 -1
View File
@@ -94,7 +94,7 @@
terminal: this.platformType,
versionCode:this.localAppVerson,
}
const res = await checkAppVersion(params)
const res = await checkAppVersion(params);
if(res && res.bizcode === 100){
const data = res.data || {};
if(data && Object.keys(data).length!==0 && comparisonVersionHandler(this.localAppVerson,data.versionCode)){
@@ -3,10 +3,12 @@
<Header :leftTitle="$t('authentication.title')" left-path-type="switchTab" left-path="/pages/mine/mine"/>
<view class="authentication_ok_content" v-if="currentUserData && Object.keys(currentUserData).length !==0">
<view class="authentication_result">
<view class="result_title">您的实名认证</view>
<!-- <view class="result_title">您的实名认证</view>
<view class="result_value">{{getValue(CERT_STATUS_OPTION,currentUserData.certStatus)}}</view> -->
<up-image src="/static/mine/auth_ok.png" mode="widthFix" shape="circle" width="140" height="140" bgColor="#f1f6ff00" :fade="true" duration="450"></up-image>
<view class="result_value">{{getValue(CERT_STATUS_OPTION,currentUserData.certStatus)}}</view>
</view>
<view class="authentication_info">
<!-- <view class="authentication_info">
<view class="info_item">
<text class="info_item_title">证件姓名:</text>
<text class="info_item_value">{{currentUserData.name}}</text>
@@ -27,7 +29,7 @@
<up-image :src="currentUserData.certBimg" mode="widthFix" width="100%" height="140" bgColor="#f1f6ff00" :fade="true" duration="450"></up-image>
</view>
</view>
</view>
</view> -->
</view>
<view v-else class="not_order_warp">
<up-image src="/static/common/not_order.png" width="80" height="80" bgColor="#f1f6ff00"></up-image>
+102 -110
View File
@@ -12,115 +12,120 @@
<view class="left_">
<up-image src="/static/logo_y.png" width="50" height="50" bgColor="#f1f6ff00" shape="circle"/>
<view class="left_msg">
<view>{{userData.name || '三荣优品用户'}}</view>
<view class="left_msg_title">{{userData.gradeName}}</view>
<view>
<text>{{userData.name || '德商汇用户'}}</text>
<text style="margin-left: 20rpx;">{{userData.gradeName}}</text>
</view>
<view class="left_msg_title">ID:{{userData.id || 0}}</view>
</view>
</view>
<view class="right_" v-if="performanceData && performanceData.seniorId">
我的上级ID:{{performanceData.seniorId || 0}}
<view>上级ID:{{performanceData.seniorId || 0}}</view>
</view>
</view>
<!-- 我的团队 -->
<view class="card_comm my_team" @click="jumpMyTeam">
<view class="card_title_comm">
我的团队
</view>
<view class="my_team_count">
<view style="margin-right: 10rpx;">{{(performanceData && performanceData.teamCount) || 0}}人</view>
<view style="margin-top: 10rpx;">
<up-image src="/static/common/right.png" width="16" height="16" bgColor="#f1f6ff00" />
</view>
</view>
</view>
<!-- 团队业绩 -->
<view class="card_comm">
<view class="card_title_comm card_title_comm2" >
<view>团队业绩</view>
<up-image src="/static/common/tips.png" width="16" height="16" bgColor="#f1f6ff00" @click="openTeamShow=true;"/>
</view>
<view class="performance">
<view class="performance_item">
<view class="title_comm">{{performanceData && performanceData.teamAmount || 0}}</view>
<view class="data_comm">订单金额</view>
</view>
<view class="fg_comm"></view>
<view class="performance_item">
<view class="title_comm">{{performanceData && performanceData.teamNum || 0}}</view>
<view class="data_comm">订单数量</view>
</view>
<view class="fg_comm"></view>
<view class="performance_item">
<view class="title_comm">{{performanceData && performanceData.myAmount || 0}}</view>
<view class="data_comm">直购订单金额</view>
</view>
<view class="fg_comm"></view>
<view class="performance_item">
<view class="title_comm">{{performanceData && performanceData.myNum || 0}}</view>
<view class="data_comm">直购订单数</view>
</view>
</view>
</view>
<!-- 提成统计-->
<view class="royalty_warp">
<!-- 提成货币 -->
<view class="card_item_comm" @click="currencyShowCheck(true)" style="padding: 30rpx 30rpx 0;">
<view class="my_team_content_warp">
<!-- 我的团队 -->
<view class="card_comm my_team" @click="jumpMyTeam">
<view class="card_title_comm">
提成货币
我的团队
</view>
<view class="commission_count">
<view style="margin-right: 10rpx;">
{{selAcctCategory && Object.keys(selAcctCategory).length !==0 ? selAcctCategory.value : '请选择'}}
</view>
<view class="my_team_count">
<view style="margin-right: 10rpx;">{{(performanceData && performanceData.teamCount) || 0}}人</view>
<view style="margin-top: 10rpx;">
<up-image src="/static/common/right.png" width="16" height="16" bgColor="#f1f6ff00" />
</view>
</view>
</view>
<view class="card_item_comm">
<view class="card_title_comm card_title_comm2">
<view>提成统计</view>
<up-image src="/static/common/tips.png" width="16" height="16" bgColor="#f1f6ff00" @click="openTcShow=true;"/>
<!-- 团队业绩 -->
<view class="card_comm">
<view class="card_title_comm card_title_comm2" >
<view>团队业绩</view>
<up-image src="/static/common/tips.png" width="16" height="16" bgColor="#f1f6ff00" @click="openTeamShow=true;"/>
</view>
<view class="performance">
<view class="amount_item">
<view class="title_comm">{{(rewardSummary && rewardSummary.todayAmount) || 0}}</view>
<view class="data_comm">今日</view>
<view class="performance_item">
<view class="title_comm">{{performanceData && performanceData.teamAmount || 0}}</view>
<view class="data_comm">订单金额</view>
</view>
<view class="fg_comm"></view>
<view class="amount_item">
<view class="title_comm">{{(rewardSummary && rewardSummary.unSettleAmount) || 0}}</view>
<view class="data_comm">当前未结算</view>
<view class="performance_item">
<view class="title_comm">{{performanceData && performanceData.teamNum || 0}}</view>
<view class="data_comm">订单数量</view>
</view>
<view class="fg_comm"></view>
<view class="amount_item">
<view class="title_comm">{{(rewardSummary && rewardSummary.settleAmount) || 0}}</view>
<view class="data_comm">已结清</view>
<view class="performance_item">
<view class="title_comm">{{performanceData && performanceData.myAmount || 0}}</view>
<view class="data_comm">直购订单金额</view>
</view>
<view class="fg_comm"></view>
<view class="performance_item">
<view class="title_comm">{{performanceData && performanceData.myNum || 0}}</view>
<view class="data_comm">直购订单数</view>
</view>
</view>
</view>
<view class="card_fg_comm"></view>
<view class="card_item_comm">
<view class="card_title_comm">提成来源</view>
<view class="royalty_list">
<scroll-view scroll-y="true" @scrolltolower="loadMore" :style="{'height': 'calc(100vh - 1220rpx)'}">
<view class="royalty_item" v-for="(item,index) in royaltyList" :key="index" v-if="royaltyList && royaltyList.length !==0">
<view>
<view class="royalty_title_">{{getValue(BALANCE_TYPE,item.bizType)}}</view>
<view class="royalty_data_">{{formatDate(item.ctdate)}}</view>
</view>
<view>
<view class="royalty_title_ royalty_title_amount">{{item.amount}}元</view>
<view class="royalty_data_">{{item.status ? "已结算" : "未结算"}}</view>
</view>
<!-- 提成统计-->
<view class="royalty_warp">
<!-- 提成货币 -->
<view class="card_item_comm" @click="currencyShowCheck(true)" style="padding: 30rpx 30rpx 0;">
<view class="card_title_comm">
提成货币
</view>
<view class="commission_count">
<view style="margin-right: 10rpx;">
{{selAcctCategory && Object.keys(selAcctCategory).length !==0 ? selAcctCategory.value : '请选择'}}
</view>
<view v-else class="not_order_warp">
<up-image src="/static/common/not_order.png" width="80" height="80" bgColor="#f1f6ff00"></up-image>
<view class="not_order_msg_warp">暂无相关数据</view>
<view style="margin-top: 10rpx;">
<up-image src="/static/common/right.png" width="16" height="16" bgColor="#f1f6ff00" />
</view>
<view v-if="royaltyLoading" style="text-align: center;">加载中...</view>
</scroll-view>
</view>
</view>
<view class="card_item_comm">
<view class="card_title_comm card_title_comm2">
<view>提成统计</view>
<up-image src="/static/common/tips.png" width="16" height="16" bgColor="#f1f6ff00" @click="openTcShow=true;"/>
</view>
<view class="performance">
<view class="amount_item">
<view class="title_comm">{{(rewardSummary && rewardSummary.todayAmount) || 0}}</view>
<view class="data_comm">今日</view>
</view>
<view class="fg_comm"></view>
<view class="amount_item">
<view class="title_comm">{{(rewardSummary && rewardSummary.unSettleAmount) || 0}}</view>
<view class="data_comm">当前未结算</view>
</view>
<view class="fg_comm"></view>
<view class="amount_item">
<view class="title_comm">{{(rewardSummary && rewardSummary.settleAmount) || 0}}</view>
<view class="data_comm">已结清</view>
</view>
</view>
</view>
<view class="card_fg_comm"></view>
<view class="card_item_comm">
<view class="card_title_comm">提成来源</view>
<view class="royalty_list">
<scroll-view scroll-y="true" @scrolltolower="loadMore" :style="{'height': 'calc(100vh - 1220rpx)'}">
<view class="royalty_item" v-for="(item,index) in royaltyList" :key="index" v-if="royaltyList && royaltyList.length !==0">
<view>
<view class="royalty_title_">{{getValue(BALANCE_TYPE,item.bizType)}}</view>
<view class="royalty_data_">{{formatDate(item.ctdate)}}</view>
</view>
<view>
<view class="royalty_title_ royalty_title_amount">{{item.amount}}元</view>
<view class="royalty_data_">{{item.status ? "已结算" : "未结算"}}</view>
</view>
</view>
<view v-else class="not_order_warp">
<up-image src="/static/common/not_order.png" width="80" height="80" bgColor="#f1f6ff00"></up-image>
<view class="not_order_msg_warp">暂无相关数据</view>
</view>
<view v-if="royaltyLoading" style="text-align: center;">加载中...</view>
</scroll-view>
</view>
</view>
</view>
</view>
<up-picker
@@ -333,10 +338,15 @@
background-color: $app-bt-bj;
height: calc(100vh - 144rpx);
overflow: hidden;
padding: 114rpx 30rpx 30rpx;
padding: 114rpx 0rpx 30rpx;
.my_team_content_warp{
padding: 0 30rpx;
}
.header_{
display: flex;
align-items: center;
padding: 0 30rpx;
}
.title_{
font-weight: bold;
@@ -347,8 +357,10 @@
.my_info{
display: flex;
justify-content: space-between;
align-items: center;
color: #FFFFFF;
margin-top: 30rpx;
padding-left: 30rpx;
.left_{
display: flex;
align-items: center;
@@ -366,33 +378,13 @@
margin-top: 10rpx;
}
.right_{
// display: flex;
// align-items: center;
font-size: 23rpx;
color: rgba(255,255,255,0.9);
color: #000000;
line-height: 33rpx;
// text-align: right;
// width: 50%;
// justify-content: space-between;
background-color: #EEEEEE;
border-radius: 30rpx 0 0 30rpx;
padding: 10rpx 20rpx;
}
// .right_item{
// margin-left: 20rpx;
// }
// .right_title{
// font-size: 20rpx;
// color: #FFFFFF;
// }
// .right_data{
// background: rgba(255,255,255,0.2);
// border-radius: 10rpx;
// border: 1px solid #FFFFFF;
// font-weight: bold;
// font-size: 40rpx;
// color: #FFFFFF;
// padding: 10rpx;
// text-align: center;
// margin-top: 10rpx;
// }
}
.card_comm{
@@ -39,7 +39,7 @@
<up-image :src="item.userUrl || '/static/logo.png'" width="50" height="50" bgColor="#f1f6ff00" shape="circle" radius='16'></up-image>
</view>
<view class="right_data">
<view class="name_">{{item.userName || '三荣优品用户'}}({{item.gradeName}})</view>
<view class="name_">{{item.userName || '德商汇优品用户'}}({{item.gradeName}})</view>
<view class="msg_">
ID:{{item.userId}}
</view>
+1 -5
View File
@@ -22,14 +22,10 @@
<text style="font-size: 28rpx;font-weight: bold;">需付款:</text>
<text style="font-size: 28rpx;">¥</text>
<text style="font-size: 36rpx;font-weight: bold;">{{orderInfo.sumAmount}}</text>
<!-- <text style="font-size: 28rpx;">.00</text> -->
<text style="font-size: 20rpx;font-weight: bold;margin-left: 20rpx;">订单</text>
<text style="font-size: 28rpx;font-weight: bold;margin-left: 10rpx;">{{formatDate1(orderInfo.expireTime)}}</text>
<text style="font-size: 20rpx;font-weight: bold;">&nbsp;自动取消</text>
</view>
<!-- <view class="payment_but">
<view class="but">去支付</view>
</view> -->
</view>
<view class="content_cancel" v-if="orderInfo.status === ORDER_TYPE.CANCELED">取消原因:超时未支付</view>
<!-- 地址 -->
@@ -545,7 +541,7 @@
}
.order_way_warp{
margin-bottom: 60rpx;
width: calc(100% - 60rpx);
width: calc(100% - 96rpx);
}
.content_info_title{
width: 370rpx;
-1
View File
@@ -37,7 +37,6 @@
import { formatDate,handleAmount } from '@/utils/index.js';
export default {
components:{},
components:{Header},
data() {
return {
@@ -56,7 +56,7 @@
</up-input>
<view class="amount_">
<view>可提现金额:¥{{withdrawAmount}}</view>
<view>手续费:{{form.rateAmount}}({{(ruleObj && ruleObj.rate) || 0}}%)</view>
<view>手续费:{{form.rateAmount}}({{(ruleObj && ruleObj.rate * 100) || 0}}%)</view>
</view>
</view>
</view>
@@ -64,9 +64,10 @@
<view class="warm_reminder">
<view>温馨提示</view>
<view>
<view>单笔最小提现金额:{{(ruleObj && ruleObj.minAmount) || 0}}</view>
<view>单日最大提现金额:{{(ruleObj && ruleObj.dayAmount) || 0}}</view>
<view>单日最大提现次数:{{(ruleObj && ruleObj.dayTimes) || 0}}</view>
<view>1、提现T+1到账,节假日顺延!</view>
<view>2、单笔最小提现金额:{{(ruleObj && ruleObj.minAmount) || 0}}</view>
<view>3、单日最大提现金额:{{(ruleObj && ruleObj.dayAmount) || 0}}</view>
<view>4、单日最大提现次数:{{(ruleObj && ruleObj.dayTimes) || 0}}</view>
</view>
</view>
@@ -151,6 +152,14 @@
});
return;
}
const withdrawAmount = this.withdrawAmount;
if(!withdrawAmount && withdrawAmount !=="0"){
this.$refs.uToastRef.show({
type: 'error',
message: "可提现余额不足",
});
return;
}
delete params.bankName;
const resp = await withdrawal(params);
if(resp && resp.bizcode === 100){
@@ -212,9 +221,13 @@
this.bankShowCheck(false);
},
amountChange(amount){
const withdrawAmount = this.withdrawAmount;
if(!withdrawAmount && withdrawAmount !=="0"){
return;
}
const rate = this.ruleObj.rate;
if(rate && amount){
const rateAmount = amount * (rate / 100);
const rateAmount = amount * rate;
this.form.rateAmount = rateAmount.toFixed(2);
this.form.dzAmount = (amount - rateAmount).toFixed(2);
}else{
+13 -6
View File
@@ -8,7 +8,7 @@
<up-image src="/static/logo_y.png" shape="circle" width="60" height="60" bgColor="#f1f6ff00"></up-image>
<view class="mine_info">
<view class="mine_info_name">{{userData.name || '德商汇用户'}}</view>
<view class="mine_info_id">邀请码:{{userData.inviteCode}}</view>
<view class="mine_info_id">注册手机号:{{userData.mobile}}</view>
</view>
</view>
<!-- <view @click="jumpSetting">
@@ -33,6 +33,11 @@
</view>
</view> -->
<view class="setting_comm">
<view class="item_comm">
<view>邀请码</view>
<view class="invite_code_">{{userData.inviteCode}}</view>
</view>
<view class="header_fg"></view>
<view class="item_comm" @click="jumpInfo('userAgreement')">
<view>用户协议</view>
<up-image src="/static/common/right.png" width="20" height="20" bgColor="#f1f6ff00"></up-image>
@@ -57,9 +62,9 @@
<view class="login_out_warp" @click="loginOutFun">
退出登录
</view>
<view class="cancel_but" @click="cancelAccount">
<!-- <view class="cancel_but" @click="cancelAccount">
注销账号
</view>
</view> -->
</view>
</view>
</template>
@@ -120,10 +125,10 @@
}
</script>
<style lang="scss">
<style lang="scss" scoped>
.mine_setting{
background-color: $app-bj;
height: calc(100% - 60rpx);
height: calc(100% - 20rpx);
.mine_setting_content{
padding: 30rpx;
}
@@ -173,7 +178,9 @@
display: flex;
justify-content: space-between;
}
.invite_code_{
color: $app-zt-color;
}
}
.login_out_warp{
+14 -3
View File
@@ -36,8 +36,8 @@
</view>
</view>
<view class="price_zq_warp">
<view class="price_lj_warp">专区立省{{item.adPrice - item.price}}元</view>
<view class="price_ds_warp">到手¥<text style="font-size: 31rpx;">{{item.price}}</text></view>
<view class="price_lj_warp">专区立省{{(item.adPrice - item.priceN).toFixed(2)}}元</view>
<view class="price_ds_warp">到手¥<text style="font-size: 31rpx;">{{item.priceN}}</text></view>
</view>
</view>
</view>
@@ -85,7 +85,14 @@
}
const resp = await searchList(params);
if(resp && resp.bizcode === 100){
this.productList = resp.data;
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;
},
@@ -128,4 +135,8 @@
background: #CE2300FF;
color: #FFF6ED;
}
.price_ds_warp{
color: #FFFFFF;
margin-top: 10rpx;
}
</style>
+33 -29
View File
@@ -13,7 +13,7 @@
<view class="content">
<view class="lottery">
<dengbo-lotteryWheel :prizes="prizes" :size="626" :duration="5000" @run="startClick(1)"
@done="Done" ref="luckyWheel" :lightImgs="lightImages" customStyle="borderRadius: 50%;">
@done="Done" ref="luckyWheel" :lightImgs="lightImages" customStyle="borderRadius: 50%;" :styleOpt="styleOpt">
<template v-slot:bg>
<image src="/static/turntable/turntable.png" style="width: 100%; height: 100%;" />
</template>
@@ -64,16 +64,36 @@
prizesObj:{},
prizes: [],
lotteryList:[],// 中奖的列表ID
styleOpt:{
prizeBgColors: ['#fff0a3', '#fffce6','#fdba64'],
},
isRun:false,// 是否正在抽奖
backPath:null,
}
},
onLoad(){
onLoad(option){
const backPath = option.backPath;
console.log("option backPath",backPath);
if( backPath && backPath !=='null'){
this.backPath = backPath;
}
},
mounted() {
this.getActivityList();
},
methods: {
jumpMine(){
uni.switchTab({
url: '/pages/mine/mine',
})
const backPath = this.backPath;
console.log("backPath",backPath);
if(backPath){
uni.switchTab({
url: '/pages/home/home',
})
}else{
uni.switchTab({
url: '/pages/mine/mine',
})
}
},
// 查询活动详情
async getActivityList() {
@@ -81,6 +101,9 @@
if(resp && resp.bizcode === 100){
this.prizesObj = resp.data;
this.prizes = resp.data.prizes || [];
if(this.prizes.length % 2 === 0){
this.styleOpt.prizeBgColors = ['#fff0a3','#fdba64'];
}
}
},
@@ -94,6 +117,9 @@
},
// 用户点击开始,需要请求后台,去算出抽奖的选中的哪个
async startClick(num) {
if(this.isRun){
return;
}
const count = this.prizesObj.times;// 当前拥有的抽奖次数
if(!count || count===0){
uni.showToast({
@@ -106,6 +132,7 @@
return;
}
this.isRun = true;
const params={
id:this.prizesObj.id,
times:num,
@@ -120,7 +147,6 @@
const prizes = this.prizes;
const lastData = data[data.length - 1];
for (let i = 0; i < prizes.length; i++) {
console.log("prizes[i]",prizes[i]);
if(prizes[i].id === lastData.prizeId){
runCount = i;
break;
@@ -135,8 +161,6 @@
return;
}
this.$refs.luckyWheel.run(runCount);
// this.$refs.luckyWheel.setCount(runCount);
// this.$refs.luckyWheel.setCount();
},
//prize
Done() {
@@ -154,7 +178,7 @@
icon: 'none'
});
}
this.isRun = false;
},
}
}
@@ -251,26 +275,6 @@
}
}
// .turntable_wp {
// width: 610rpx;
// height: 610rpx;
// position: relative;
// margin: 0 auto;
// top: -176rpx;
// }
// .turntable_wp image {
// display: block;
// width: 100%;
// height: 100%;
// }
// .turntable_wp .turntable_pointer {
// position: absolute;
// width: 224rpx;
// height: 224rpx;
// top: 50%;
// left: 50%;
// margin: -125rpx 0 0 -112rpx;
// }
.winning_record{
position: fixed;
+14 -3
View File
@@ -36,8 +36,8 @@
</view>
</view>
<view class="price_zq_warp">
<view class="price_lj_warp">爆款立减{{item.adPrice - item.price}}元</view>
<view class="price_ds_warp">到手¥<text style="font-size: 31rpx;">{{item.price}}</text></view>
<view class="price_lj_warp">爆款立减{{(item.adPrice - item.priceN).toFixed(2)}}元</view>
<view class="price_ds_warp">到手¥<text style="font-size: 31rpx;">{{item.priceN}}</text></view>
</view>
</view>
</view>
@@ -85,7 +85,14 @@
}
const resp = await searchList(params);
if(resp && resp.bizcode === 100){
this.productList = resp.data;
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;
},
@@ -130,6 +137,10 @@
border-radius: 4rpx;
opacity: 0.6;
}
.price_ds_warp{
color: #FFFFFF;
margin-top: 10rpx;
}
.preference_title{
// background-image: url("data:image/png;base64,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");
// background-size: 100% 100%;