This commit is contained in:
zhangmanman
2021-08-13 13:30:35 +08:00
parent 540d76bdb8
commit 8f7cc986c2
46 changed files with 1582 additions and 1056 deletions

View File

@@ -59,7 +59,10 @@ const washcarBuy = (welfare_id, right_id, qty, address_id, is_deliver) => req({u
const washcarCreate = (welfare_id, right_id, qty, address_id, is_deliver) => req({url: "washcar/create", method: "POST", data:{welfare_id : welfare_id, right_id : right_id, qty : qty, address_id : address_id || '', is_deliver : is_deliver}})
// 我的分享
const myshare = (parent_id) => req({url: "user/share",data:{parent_id : parent_id || ''}})
const myshare = (channel,parent_id,url) => req({url: "user/share",data:{channel: channel,parent_id : parent_id || '', url: url}})
// 我的分享-展示参数
const wechatShares = () => req({url: "ajax/wechat_shares"})
// 我的推荐
const childs = (page) => req({url: "user/childs",data:{page : page || ''}})
@@ -118,6 +121,12 @@ const storedList = () => req({url: "shares/recharges"})
// 产品分享二维码+储值分享二维码
const publicCode = (channel, type, url) => req({url: "user/share/goods", data:{channel: channel, type : type, url: url}})
// 订单收益列表
const profits = (page) => req({url: "data/profits", data:{page : page || ''}})
// 订单收益列表-下级明细
const profitsNext = (order_type, order_id, page) => req({url: "data/profitlogs", data:{order_type : order_type, order_id : order_id, page : page || ''}})
export default({
index,
mobiles,
@@ -139,6 +148,7 @@ export default({
washcarBuy,
washcarCreate,
myshare,
wechatShares,
childs,
ajaxTel,
transfers,
@@ -158,5 +168,7 @@ export default({
productInfo,
productPoster,
storedList,
publicCode
publicCode,
profits,
profitsNext
})

13
app.js
View File

@@ -9,7 +9,10 @@ var QQMapWX = require('utils/qqmap-wx-jssdk.min.js');
var qqmapsdk;
App({
onLaunch() {
onLaunch(e) {
// 获取打开场景值
this.globalData.scene = e.scene
// 沃支付是否开启
api.index.woPayment().then(res=>{
this.globalData.unicomPay = res.data.unicom_pay
@@ -61,6 +64,7 @@ App({
wx.$api = api
},
globalData: {
scene : '',
isUser : false,
userInfo : null,
token : "",
@@ -72,6 +76,11 @@ App({
adcode : '',
longitude : '',
latitude : '',
unicomPay : false
unicomPay : '',
shareObj : {
type : '',
goodsId : '',
userId : ''
}
}
})

View File

@@ -45,7 +45,8 @@
"pages/userGoods/userGoods",
"pages/userGoods/goodsCode/goodsCode",
"pages/userGoods/goodsDet/goodsDet",
"pages/cashier/cashier"
"pages/cashier/cashier",
"pages/myBalance/myBalance_list/myBalance_list"
],
"window": {
"backgroundTextStyle": "light",

View File

@@ -25,21 +25,20 @@ Page({
score : '', //应付总积分
freight : '', //运费
welfareType : '', //权益类型
noticeShow : false, //须知显示状态
noticeShow : true, //须知显示状态
addressShow : false, //收货地址显示
payWayIndex : 0,
unicomPay : getApp().globalData.unicomPay //是否有沃支付
unicomPay : '' //是否有沃支付
},
/**
* 生命周期函数--监听页面加载
*/
onLoad (options) {
console.log(getApp().globalData.unicomPay)
this.setData({
rightId : options.right_id,
welfareId: options.welfare_id
welfareId: options.welfare_id,
unicomPay: getApp().globalData.unicomPay
})
// 获取卡券列表

View File

@@ -1,118 +1,105 @@
<!-- 下单状态 -->
<view class="state {{platformCp[platIndex].name == '快递' ? 'active' : ''}}">
<view class="state-title">
等待买家付款
<text>请您尽快下单购买</text>
</view>
<image class="state-img" src="/static/img/car_state.png"></image>
<!-- 立即购买 -->
<view class="newrightsBtn" bindtap="submitOrder">
<view class="rightsBtn-text">
<view class="rightsBtn-text-num">共:{{num}}件商品 </view>
<view>实付:<text>¥{{amount}}</text></view>
</view>
<button disabled="{{disabled}}">立即购买</button>
</view>
<!-- 默认地址 -->
<view class="content">
<view class="site" wx:if="{{platformCp[platIndex].name == '快递'}}">
<view class="siteCont" wx:if="{{address != ''}}" bindtap="addressTap">
<image class="siteCont-site" src="/static/img/car_site.png"></image>
<view class="siteCont-right">
<view class="site-text">
{{address.name}} <text>{{address.mobile}}</text>
</view>
<view class="site-all">{{address.all_address}}</view>
</view>
<image class="state-arrow" src="/static/icon/arrow_left.png"></image>
</view>
<navigator hover-class="none" url="/pages/address/address?type=selectAddress" class="siteTips" wx:else>
<view class="siteTips-tips"><image src="/static/img/carSite_add.png"></image> 暂无收货地址</view>
</navigator>
</view>
<view class="goods">
<view class="goods-content">
<view class="goods-cover">
<image class="goods-image" src="{{detail.cover}}"></image>
<view class="goods-type {{detail.type == 'virtual' ? 'active' : ''}}">
<text>{{detail.type == 'virtual' ? '券' : '实'}}</text>
</view>
</view>
<view class="goods-cont">
<view class="nowrap goods-title">
<view style="padding-bottom: 100px">
<view class="cont">
<view class="contBack">
<image class="classBack" src="https://lifetest.ysd-bs.com/storage/materials/2021/08/09/class_back_02.png"
mode="scaleToFill"></image>
<view class="classCircle"></view>
<view class="rightsCont">
<scroll-view scroll-x class="welfareCont-top" scroll-with-animation>
<view class="welfareCont-list-img" wx:for="{{detail.logos}}" wx:key="logos">
<image src="{{item}}" mode="aspectFill"></image>
</view>
</scroll-view>
<view class="nowrap rightsCont-btn">
{{detail.title}}
</view>
<view class="goods-qty">
数量x{{num}}
</view>
</view>
</view>
<view class="rightsNumber">
<image class="rightsGoods-img" src="{{detail.cover}}" mode="aspectFill"></image>
<view class="rightsGoods">
<view class="nowrap rightsGoods-text">
{{detail.title}}
</view>
<view class="rightsGoods-price">
<view class="rightsGoods-number"><text>¥</text>{{detail.price}}</view>
<view class="rightsAdd">
<view class="rightsAdd-btn rightsAdd-remove {{num != 1 ? 'active' : ''}}" bindtap="goodsNumber"
data-type="remove">-</view>
<input class="rightsAdd-input" data-num="{{num}}" value="{{num}}" type="number" maxlength='4'
bindblur="goodsNumberInput" disabled></input>
<view class="rightsAdd-btn rightsAdd-plus" bindtap="goodsNumber" data-type="plus">+</view>
</view>
</view>
</view>
</view>
<view class="rightsList" style="padding: 0 0 2rpx">
<view class="rightsLabel">
<view class="rightsLabel-left">{{detail.attribute.form_type}}</view>
<view class="rightsLabel-right rightsLabel-red">-¥{{score}}</view>
</view>
<view class="rightsLabel">
<view class="rightsLabel-left">{{detail.attribute.form_pay}}</view>
<view class="rightsLabel-right">¥{{amount}}</view>
</view>
</view>
<!-- 规格 -->
<view class="label">
<view class="labelList">
<view class="labelList-label">
{{detail.attribute.form_price}}
</view>
<view class="labelList-price">
¥{{moreAmount}}
</view>
</view>
<view class="labelList">
<view class="labelList-label">{{detail.attribute.form_type}}</view>
<view class="labelList-price rightsLabel-red">¥{{score}}</view>
</view>
<view class="labelList">
<view class="labelList-label">{{detail.attribute.form_pay}}</view>
<view class="labelList-price rightsLabel-red">¥{{amount}}</view>
</view>
<view class="labelList" wx:if="{{platformCp[platIndex].name == '快递'}}">
<view class="labelList-label">
运费
</view>
<view class="labelList-price">
¥{{freight}}
</view>
</view>
</view>
<!-- 购买数量 -->
<view class="label">
<view class="labelList">
<view class="labelList-label">
购买数量
</view>
<view class="rightsAdd">
<view class="rightsAdd-btn" bindtap="goodsNumber" data-type="remove">-</view>
<text class="rightsAdd-input">{{num}}</text>
<view class="rightsAdd-btn" bindtap="goodsNumber" data-type="plus">+</view>
</view>
</view>
</view>
<!-- 提交方式 -->
<view class="label">
<view class="labelList">
<view class="labelList-label">请选择提交方式</view>
<view class="rightsLabel-range">
<picker range="{{platformCp}}" range-key="name" bindchange="platBind">
<view class="tabs-text">
{{platformCp[platIndex].name}}
</view>
</picker>
<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
</view>
</view>
</view>
<view class="rightsList" wx:if="{{detail.type == 'physical'}}">
<block wx:if="{{detail.type == 'physical'}}">
<view class="rightsLabel">
<view class="rightsLabel-left">提交方式</view>
<view class="rightsLabel-right rightsLabel-range">
<picker range="{{platformCp}}" range-key="name" bindchange="platBind">
<view class="tabs-text">
{{platformCp[platIndex].name}}
</view>
</picker>
<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
</view>
</view>
<view class="rightsLabel rightsLabel-address" wx:if="{{platformCp[platIndex].name == '快递'}}">
<image class="rightsLabel-icon" src="/static/img/new_rightsAddress.png"></image>
<block wx:if="{{address != ''}}">
<view class="rightsLabel-right" bindtap="addressTap">
<view class="rightsLabel-address-text">
<view class="rightsLabel-address-name">{{address.name}}<view class="rightsLabel-address-tel">{{address.mobile}}</view></view>
<text class="nowrap">{{address.all_address}}</text>
</view>
<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
</view>
</block>
<block wx:else>
<navigator class="rightsLabel-right" hover-class="none" url="/pages/address_form/address_form?type=Add">
<view class="rightsLabel-address-text" style="line-height: 90rpx;">
添加收货地址
</view>
<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
</navigator>
</block>
</view>
<view class="rightsLabel" wx:if="{{platformCp[platIndex].name == '快递'}}">
<view class="rightsLabel-left">快递运费</view>
<view class="rightsLabel-right rightsLabel-freight">{{freight}}</view>
</view>
</block>
</view>
<!-- 支付方式 -->
<view class="label">
<view class="radioList">
<view class="radioList-label">请选择支付方式</view>
<!-- <view class="rightsLabel-range">
<picker range="{{payWay}}" range-key="name" bindchange="payBind">
<view class="tabs-text">
{{payWay[payWayIndex].name}}
</view>
</picker>
<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
</view> -->
<view class="rightsList" style="padding: 0 0 2rpx">
<view class="radioList" style="padding: 30rpx">
<radio-group bindchange="payBind">
<view class="payContList-label">
<view class="payContList-label-name">
@@ -129,12 +116,8 @@
<radio class="radio" value="1"></radio>
</view>
</radio-group>
</view>
<!-- <view class="labelList">
<view class="labelList-label">支付方式</view>
<view class="labelList-price">{{payWay[payWayIndex].name}}</view>
</view> -->
</view>
</view>
</view>
<!-- 购买须知 -->
<view class="notice">
@@ -159,14 +142,9 @@
</view>
</view>
<!-- 立即购买 -->
<view class="buy">
<view class="buy-price">实际付款<text>¥{{amount}}</text></view>
<view class="buy-btn" bindtap="submitOrder">立即购买</view>
</view>
<!-- 选择收货地址 -->
<view class="addressBack {{addressShow ? 'active':''}}"></view>
<view class="addressBack {{addressShow ? 'active':''}}" bindtap="addressHide"></view>
<view class="addressCont {{addressShow ? 'active':''}}">
<view class="addressCont-title uni-border-bottom">
<view class="addressCont-left">请选择收货地址</view>

View File

@@ -1,226 +1,131 @@
/* 下单状态 */
.state {
background: #2e71e3;
padding: 30rpx 60rpx;
.cont {
width: 100%;
box-sizing: border-box;
color: #fff;
font-size: 26rpx;
display: flex;
overflow: hidden;
}
.state.active {
padding: 30rpx 100rpx 60rpx;
}
.state-title {
flex: 1;
font-size: 32rpx;
}
.state-title text {
opacity:.8;
display: block;
font-size: 28rpx;
margin-top: 10rpx;
}
.state-img {
width: 70rpx;
height: 70rpx;
margin-top: 10rpx;
}
/* 默认地址 */
.content {
padding: 0 30rpx;
box-sizing: border-box;
width: 100%;
border-bottom: solid transparent 120rpx;
}
.site {
background-color: #fff;
margin-top: -30rpx;
border-radius: 10rpx;
padding: 30rpx;
box-sizing: border-box;
box-shadow: 0 0 10rpx rgba(0, 0, 0, .1);
}
.siteTips {
/* 卡券权益 */
.contBack {
position: relative;
width: 200%;
height: 340rpx;
left: -50%;
text-align: center;
background: #000000;
border-radius: 0 0 100% 100%;
overflow: hidden;
}
.siteTips-tips {
color: #2e71e3;
border: #2e71e3 2rpx solid;
.classBack {
position: absolute;
left: 28%;
right: 30%;
width: 44%;
top: 40rpx;
}
.classCircle {
position: relative;
}
.classCircle::after,
.contBack::before {
position: absolute;
border-radius: 50%;
content: '';
z-index: 1;
background-color: rgba(255,255,255,.1);
}
.classCircle::after {
left: 20%;
top: -20rpx;
width: 260rpx;
height: 260rpx;
}
.contBack::before {
right: 20%;
top: 55%;
width: 300rpx;
height: 300rpx;
}
.welfareCont-top{
white-space: nowrap;
flex-direction: row;
align-items: center;
justify-content: space-around;
width: 100%;
padding: 0 10rpx;
box-sizing: border-box;
margin: 50rpx 0 20rpx;
height: 120rpx;
}
.welfareCont-list-img {
border-radius: 50%;
width: 120rpx;
height: 120rpx;
display: inline-block;
font-size: 28rpx;
line-height: 70rpx;
padding: 0 20rpx;
text-align: center;
margin: 0 auto;
margin: 0 15rpx;
overflow: hidden;
}
.siteTips-tips image {
width: 32rpx;
height: 32rpx;
vertical-align: -5rpx;
padding-right: 10rpx;
}
.siteCont {
display: flex;
position: relative;
}
.siteCont-right {
width: calc(100% - 70rpx);
margin-left: 30rpx;
}
.state-arrow {
position: absolute;
right: 0;
top: 24rpx;
width: 34rpx;
height: 34rpx;
}
.siteCont-site {
width: 40rpx;
height: 40rpx;
margin-top: 24rpx;
}
.site-text {
margin-bottom: 10rpx;
}
.site-text text {
padding-left: 10rpx;
color: #999;
font-size: 28rpx;
}
.site-all {
font-size: 26rpx;
}
.goods {
width: 100%;
background-color: #fff;
border-radius: 10rpx;
padding: 30rpx;
box-sizing: border-box;
box-shadow: 0 0 10rpx rgba(0, 0, 0, .1);
margin: 30rpx 0;
}
.goods-content {
position: relative;
}
.goods-cont {
position: absolute;
left: 0;
top: 0;
width: 100%;
padding-left: 150rpx;
box-sizing: border-box;
}
.goods-title {
margin: 10rpx 0 20rpx;
font-weight: 600;
font-size: 30rpx;
}
.goods-qty {
color: #999;
font-size: 28rpx;
}
.goods-cover {
position: relative;
width: 130rpx;
height: 130rpx;
}
.goods-image {
position: absolute;
left: 0;
top: 0;
.welfareCont-list-img image {
width: 100%;
height: 100%;
}
.goods-type {
position: absolute;
z-index: 2;
left: 15rpx;
top: 15rpx;
font-size: 24rpx;
background-color: #5d69fb;
color: #fff;
border-radius: 50rpx;
height: 36rpx;
line-height: 34rpx;
padding: 0 6rpx;
}
.goods-type.active {
background-color: #fb5d64;
}
.goods-type text {
transform: scale(.9);
display: inline-block;
}
/* 规格 */
.label {
background-color: #fff;
border-radius: 10rpx;
padding: 10rpx 30rpx;
width: 100%;
box-sizing: border-box;
box-shadow: 0 0 10rpx rgba(0, 0, 0, .1);
margin-bottom: 30rpx;
.rightsNumber {
background-color: #ffffff;
position: relative;
padding: 30rpx 40rpx;
box-sizing: border-box;
}
.labelList {
.rightsGoods-img {
width: 200rpx;
height: 200rpx;
border-radius: 10rpx;
}
.rightsGoods {
position: absolute;
left: 0;
top: 0;
width: 100%;
padding: 80rpx 40rpx 0 270rpx;
box-sizing: border-box;
}
.rightsGoods-text {
margin-bottom: 40rpx;
font-weight: 600;
}
.rightsGoods-price {
display: flex;
line-height: 80rpx;
font-size: 28rpx;
}
.labelList-label {
.rightsGoods-number {
flex: 1;
font-size: 34rpx;
}
.rightsLabel-range {
display: flex;
color: #000;
}
.rightsLabel-row {
width: 38rpx;
height: 38rpx;
margin: 20rpx 0 0 6rpx;
.rightsGoods-number>text {
font-size: 28rpx;
}
.rightsAdd {
display: flex;
padding-top: 14rpx;
}
.rightsAdd-btn {
background: #eaeaea;
color: #535353;
border-radius: 50%;
border-radius: 4rpx;
text-align: center;
width: 50rpx;
height: 50rpx;
@@ -229,62 +134,251 @@
font-weight: 600;
}
.rightsAdd-remove {
background: #f8f8f8;
color: #d9d9d9;
}
.rightsAdd-remove.active,
.rightsAdd-plus {
background: #e8e4e5;
color: #6b6768;
}
.rightsAdd-input {
width: 60rpx;
width: 100rpx;
text-align: center;
font-size: 28rpx;
line-height: 50rpx;
}
/* 购买 */
.buy {
position: fixed;
width: 100%;
left: 0;
bottom: 0;
height: 100rpx;
line-height: 100rpx;
background-color: #fff;
/* 支付类型选择 */
.radioList-label {
padding: 20rpx 0 40rpx;
font-size: 28rpx
}
.buy-price {
background-color: #f1cb4c;
color: #8d5226;
width: calc(100% - 240rpx);
.payContList-label {
font-size: 28rpx;
display: flex;
margin-bottom: 40rpx;
}
.payContList-label:last-child {
border:none;
margin-bottom: 0;
}
.payContList-label-name {
flex: 1;
font-size: 32rpx;
display: flex;
line-height: 46rpx;
}
.payContList-label-img {
width: 46rpx;
height: 46rpx;
margin-right: 20rpx;
}
radio {
transform:scale(0.8);
}
.rightsCont {
position: absolute;
left: 0;
top: 0;
height: 100%;
padding-left: 50rpx;
z-index: 3;
left: calc(28% - 2rpx);
right: calc(30% - 2rpx);
width: calc(44% + 4rpx);
top: 50rpx;
}
.rightsCont-btn {
background: rgba(255, 255, 0255, .4);
width: 100%;
line-height: 70rpx;
font-size: 40rpx;
font-weight: 600;
color: #000000;
padding: 0 20rpx;
box-sizing: border-box;
}
.rightsCont-tips {
color: #fff;
}
.rightsNumber {
background-color: #ffffff;
position: relative;
padding: 30rpx 40rpx;
box-sizing: border-box;
}
/* 购买按钮 */
.rightsBtn,
.newrightsBtn {
position: fixed;
bottom: 0;
left: 0;
width: 100%;
height: 160rpx;
z-index: 9;
background: #fff;
padding: 30rpx;
box-sizing: border-box;
display: flex;
}
.rightsBtn button,
.rightsBtn text {
display: block;
margin: 12rpx 30rpx;
width: calc(100% - 60rpx) !important;
height: 74rpx !important;
line-height: 74rpx !important;
padding: 0;
background: #eacf88;
text-align: center;
border-radius: 60rpx;
font-size: 30rpx;
}
.rightsBtn-text {
flex: 1;
font-weight: 600;
font-size: 30rpx;
}
.rightsBtn-text-num {
font-size: 30rpx;
margin-bottom: 10rpx;
}
.rightsBtn-text text {
font-size: 38rpx;
color: #fe2d55;
}
.newrightsBtn button {
width: 280rpx !important;
background-color: #000000;
color: #ffffff;
border-radius: 80rpx;
height: 100rpx;
line-height: 100rpx;
padding: 0;
margin: 0;
}
.rightsBtn.active text {
background: #dedede;
color: #888;
}
.rightsList,
.notice,
.detailsStore {
background: white;
border-radius: 10rpx;
padding: 10rpx 0;
margin-top: 20rpx;
box-sizing: border-box;
}
.rightsLabel,
.rightsLabel-pay {
display: flex;
padding: 20rpx 40rpx;
color: #6c6c6c;
font-weight: 600;
font-size: 30rpx;
}
.rightsLabel .rightsLabel-left {
flex: 1;
color: #747d86;
}
.rightsLabel .rightsLabel-icon {
width: 70rpx;
height: 70rpx;
margin-top: 14rpx;
}
.rightsLabel-address .rightsLabel-right {
width: calc(100% - 90rpx);
margin-left: 20rpx;
color: #000000;
}
.rightsLabel-address .rightsLabel-row {
margin-top: 30rpx;
}
.rightsLabel-address-name {
display: flex;
font-size: 32rpx;
margin-bottom: 10rpx;
}
.rightsLabel-address-tel {
padding-left: 30rpx;
color: #959595;
}
.rightsLabel-freight {
color: #000000;
}
.rightsLabel-black {
padding-top: 30rpx;
}
.rightsLabel-range {
display: flex;
color: #000;
font-weight: 600;
}
.rightsLabel-row {
width: 42rpx;
height: 42rpx;
margin: 0 0 0 6rpx;
}
.rightsLabel-black .rightsLabel-right,
.rightsLabel-red {
color: #ff5b5d;
font-weight: 600;
font-size: 32rpx;
}
.buy-price text {
font-size: 42rpx;
.rightsLabel-black .rightsLabel-left {
color: #000;
}
.buy .buy-btn {
background-color: #2e71e3;
color: #fff;
position: absolute;
right: 0;
top: 0;
width: 240rpx;
text-align: center;
height: 100%;
.rightsLabel-score {
font-weight: 600;
color: #000;
font-size: 38rpx;
}
.rightsLabel-pay {
color: #000;
}
.rightsLabel-pay .rightsLabel-left {
flex: 1;
}
/* 购买须知 */
.notice {
background: white;
margin: 30rpx 0;
border-radius: 10rpx;
padding: 10rpx 0;
box-sizing: border-box;
box-shadow: 0 0 30rpx rgba(0,0,0,.15);
padding: 20rpx;
padding: 20rpx 30rpx;
}
.noticeTitle {
@@ -294,7 +388,7 @@
.noticeTitle-flex {
flex: 1;
display: flex;
font-size: 28rpx;
font-size: 30rpx;
line-height: 46rpx;
}
@@ -332,6 +426,47 @@
transform: rotate(90deg);
}
.rightsLabel-address {
display: flex;
position: relative;
margin: 10rpx 0;
padding: 25rpx 40rpx;
}
.rightsLabel-address::after,
.rightsLabel-address::before {
position: absolute;
content: '';
left: 30rpx;
width: calc(100% - 60rpx);
height: 2rpx;
background-color: #bfbfbf;
}
.rightsLabel-address::after {
top: 0;
}
.rightsLabel-address::before {
bottom: 0;
}
.rightsLabel-address text {
display: inline-block;
width: calc(100% - 46rpx);
}
.rightsLabel-address .rightsLabel-right {
display: flex;
font-size: 28rpx;
}
.rightsLabel-address-text {
flex: 1;
}
/* 选择收货地址 */
.addressBack {
position: fixed;
@@ -412,6 +547,45 @@
border: none;
}
.rightsLabel-address {
display: flex;
position: relative;
margin: 10rpx 0;
padding: 25rpx 40rpx;
}
.rightsLabel-address::after,
.rightsLabel-address::before {
position: absolute;
content: '';
left: 30rpx;
width: calc(100% - 60rpx);
height: 2rpx;
background-color: #bfbfbf;
}
.rightsLabel-address::after {
top: 0;
}
.rightsLabel-address::before {
bottom: 0;
}
.rightsLabel-address text {
display: inline-block;
width: calc(100% - 46rpx);
}
.rightsLabel-address .rightsLabel-right {
display: flex;
font-size: 28rpx;
}
.rightsLabel-address-text {
flex: 1;
}
.address-tool {
display: flex;
float: right;
@@ -451,35 +625,123 @@
font-size: 24rpx;
}
/* 支付类型选择 */
.radioList-label {
padding: 20rpx 0 40rpx;
font-size: 28rpx
.rightsPoint {
position: fixed;
left: 0;
bottom: 160rpx;
background: #eeeeee;
z-index: 9;
width: 100%;
padding: 20rpx 20rpx 10rpx;
box-sizing: border-box;
}
.payContList-label {
.rightsPoint-cont {
width: 100%;
background: #eeeeee;
border-radius: 10rpx;
position: relative;
max-height: 50vh;
overflow-y: scroll;
}
.rightsPoint-top {
font-size: 28rpx;
display: flex;
margin-bottom: 40rpx;
padding: 0 20rpx 20rpx;
box-sizing: border-box;
font-weight: 600;
}
.payContList-label:last-child {
border:none
.rightsPoint-top image {
width: 36rpx;
height: 36rpx;
margin-right: 10rpx;
}
.payContList-label-name {
flex: 1;
font-size: 32rpx;
display: flex;
line-height: 46rpx;
.rightsPoint-text {
padding: 0 20rpx;
box-sizing: border-box;
font-size: 24rpx;
line-height: 44rpx;
height: 90rpx;
transition: height 25s;
overflow: hidden;
}
.payContList-label-img {
width: 46rpx;
height: 46rpx;
margin-right: 20rpx;
.rightsPoint-text.active {
height: auto;
transition: 2s;
}
radio {
transform:scale(0.8);
.rightsPoint-text view {
position: relative;
padding-left: 40rpx;
}
.rightsPoint-text view::after {
position: absolute;
content: '';
left: 10rpx;
top: 20rpx;
background: #000;
width: 10rpx;
height: 10rpx;
border-radius: 50%;
}
.rightsPoint-bolck {
position: absolute;
top: 0;
left: 0;
height: calc(100% - 40rpx);
}
.pointMore {
text-align: center;
width: 100%;
background: #eeeeee;
height: 80rpx;
line-height: 82rpx;
position: relative;
margin-top: 10rpx;
}
.pointMore::after {
position: absolute;
content: '';
left: 0;
top: 0;
width: 100%;
height: 2rpx;
background: #f2ecde;
}
.pointMore text {
font-size: 28rpx;
color: #c38e00;
animation: dong 1.8s infinite;
display: inline-block;
}
.pointMore image {
width: 30rpx;
height: 30rpx;
margin-left: 4rpx;
vertical-align: -4rpx;
animation: dong 1.8s infinite;
}
@keyframes dong {
0% {
transform: translate(0px, 0px);
}
50% {
transform: translate(0px, -6rpx);
}
100% {
transform: translate(0px, 0px);
}
}

View File

@@ -7,11 +7,11 @@ Page({
data: {
allAmount: '', //支付金额
tradeNo : '', //支付订单
current : 1, //支付方式类型
current : '', //支付方式类型
paytType : '', //支付来源类型 welfarePay为周五福利支付 rightsPay为权益支付
isDeliver: '', //提货方式 1为自提 0为快递
barHeight: getApp().globalData.statusBarHeight, //顶部菜单栏
unicomPay: getApp().globalData.unicomPay //是否有沃支付
unicomPay: '' //是否有沃支付
},
/**
@@ -22,10 +22,19 @@ Page({
allAmount : options.amount,
tradeNo : options.trade_no,
paytType : options.pay_type,
isDeliver : options.is_deliver
isDeliver : options.is_deliver,
unicomPay: getApp().globalData.unicomPay
})
console.log(getApp().globalData.unicomPay)
if(getApp().globalData.unicomPay == true) {
this.setData({
current: 1
})
} else {
this.setData({
current: 2
})
}
},
/**

View File

@@ -8,30 +8,37 @@
* 页面的初始数据
*/
data: {
qrcode : '', //二维码
userInfo : '', //我的信息
isImgLay : false,//是否显示图片弹出层
parentId : '', //是否分享进入
shareState : false //显示分享朋友圈弹出层
qrcode : '', //二维码
userInfo : '', //我的信息
isImgLay : false, //是否显示图片弹出层
shareState : false, //显示分享朋友圈弹出层
sharesData : '' //分享携带参数
},
/**
* 生命周期函数--监听页面加载
*/
onLoad (options) {
// 判断是否由分享进入
if(options.type == "share"){
// 写入缓存
this.setData({
parentId: options.parent_id
if(getApp().globalData.scene === 1155 && options.type === "shareLogin"){
wx.switchTab({
url: '/pages/index/index',
})
}
wx.$api.user.myshare(this.data.parentId).then(res=>{
// 获取用户信息和二维码
wx.$api.user.myshare('mini','','pages/index/index?type=shareLogin').then(res=>{
this.setData({
qrcode : res.data.qrcode,
userInfo : res.data.user
})
}).catch(err=>{})
// 获取分享好友标题
wx.$api.user.wechatShares().then(res=>{
this.setData({
sharesData: res.data
})
}).catch(err=>{})
},
/**
@@ -176,20 +183,20 @@
*/
onShareAppMessage(){
return {
title : this.data.userInfo.nickname + "邀请您进入本时生活",
imageUrl: "",
path : "/pages/index/index?parent_id=" + this.data.userInfo.user_id + "&type=share"
title : this.data.userInfo.nickname + this.data.sharesData.title,
path : "/pages/index/index?parent_id=" + this.data.userInfo.user_id + "&type=shareLogin",
imageUrl: this.data.sharesData.image
}
},
/**
* 用户点击右上角分享朋友圈
*/
onShareTimeline () {
return {
title : this.data.userInfo.nickname + "邀请您进入本时生活",
path : "/pages/index/index?parent_id=" + this.data.userInfo.user_id + "&type=share",
imageUrl: ''
}
}
// onShareTimeline () {
// return {
// title : this.data.userInfo.nickname + this.data.sharesData.title,
// query : "type=shareLogin",
// imageUrl: this.data.sharesData.image
// }
// }
})

View File

@@ -39,13 +39,12 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad(options) {
// 判断是否由分享进入
if(options.parent_id !== ""){
// 写入缓存
wx.setStorage({
key : 'parentId',
data : options.parent_id
})
if(options.type){
getApp().globalData.shareObj = {
type : options.type,
goodsId : '',
userId : options.parent_id
}
}
},
@@ -242,14 +241,14 @@ Page({
canId = e.currentTarget.dataset.id,
canFrom = e.currentTarget.dataset.from,
canRightid = e.currentTarget.dataset.rightid
if(!canBuy) {
wx.showToast({
title : canText,
icon : 'none',
duration: 2000
})
return
}
// if(!canBuy) {
// wx.showToast({
// title : canText,
// icon : 'none',
// duration: 2000
// })
// return
// }
wx.getStorage({
key : 'token',

View File

@@ -33,7 +33,8 @@
bindchange="swiperChange">
<swiper-item wx:for="{{adverts}}" wx:key="adverts" bindtap="navigato" data-url="{{item.url}}">
<image class="banner-img" src="{{item.cover}}" show-menu-by-longpress="true" mode="aspectFill"
bindtap="clickImg" data-img="{{item.qrcode}}" data-url="{{item.url}}" data-channel="{{item.channel}}">
bindtap="clickImg" data-img="{{item.qrcode}}" data-url="{{item.url}}"
data-channel="{{item.channel}}">
</image>
<i class="light"></i>
</swiper-item>
@@ -149,11 +150,14 @@
</block>
<!-- 漂浮窗 -->
<view class="indexFloat">
<view bindtap="userUrl" data-url="/pages/favour/favour" class="indexFloat-img">
<image src="https://lifetest.ysd-bs.com/storage/materials/2021/08/06/index_float_00.png" mode="aspectFill" class="indexFloat-animation"></image>
</view>
<view bindtap="userUrl" data-url="/pages/code/code" class="indexFloat-img">
<image src="/static/img/index_float_01.png" mode="aspectFill"></image>
</view>
</view>
<movable-area class="indexFloat">
<movable-view y="340" direction="vertical" class="indexFloat-movable">
<view bindtap="userUrl" data-url="/pages/favour/favour" class="indexFloat-img">
<image src="https://lifetest.ysd-bs.com/storage/materials/2021/08/06/index_float_00.png"
mode="aspectFill" class="indexFloat-animation"></image>
</view>
<view bindtap="userUrl" data-url="/pages/code/code" class="indexFloat-img">
<image src="/static/img/index_float_01.png" mode="aspectFill"></image>
</view>
</movable-view>
</movable-area>

View File

@@ -691,8 +691,19 @@ page {
/* 漂浮弹出层 */
.indexFloat {
position: fixed;
height: 70%;
width: 110rpx;
right: 20rpx;
bottom: 30rpx;
bottom: 0;
z-index: 99;
}
.indexFloat-movable {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 280rpx;
z-index: 99;
}

View File

@@ -90,14 +90,21 @@ Page({
userLogin(){
let code = this.data.loginCode,
iv = this.data.iv,
encryptedData = this.data.encryptedData
encryptedData = this.data.encryptedData,
shareObj = getApp().globalData.shareObj
// 检查用户扫码进入
const parentId = wx.getStorageSync("parentId")
wx.$api.enroll.record(code, iv, encryptedData, parentId).then(res=>{
wx.$api.enroll.record(code, iv, encryptedData, shareObj.userId).then(res=>{
getApp().globalData.token = res.data.token
// 清空分享信息
if(shareObj.type == 'shareLogin'){
getApp().globalData.shareObj = {
type : '',
goodsId : '',
userId : ''
}
}
// 更新全局存储器用户状态
getApp().globalData.isUser = true
@@ -130,9 +137,6 @@ Page({
key : 'users',
data : res.data.users
})
// 清除扫码进入获取parent_id的缓存
wx.removeStorageSync('parentId')
}).catch(err => {});
}

View File

@@ -8,22 +8,6 @@ Page({
type : "balance ", //卡类型
number : '', //账户余额
accounts : '', //账户列表
screenArray : [
{
channel: 'all',
name: '全部'
},
{
channel: 'in',
name: '入账'
},
{
channel: 'out',
name: '出账'
}
], //账变记录筛选数组
screenChannel: '', //账变记录筛选数组标识
screenIndex : 0, //账变记录筛选index
page : {}, //分页信息
lodingStats : false, //加载状态
},
@@ -31,47 +15,41 @@ Page({
/**
* 生命周期函数--监听页面加载
*/
onLoad (options) {},
onLoad (options) {
// 获取余额数量
wx.$api.user.logs().then(res=>{
this.setData({
number : res.data.account.balance
})
}).catch(err => {});
},
/**
* 生命周期函数--监听页面显示
*/
onShow () {
// 获取账变记录
// 获取收益订单记录
this.accountInfo();
},
/**
* 账变记录
* 收益订单记录
*/
accountInfo(page) {
wx.$api.user.logs(this.data.type, this.data.screenChannel, page).then(res=>{
wx.$api.user.profits(page).then(res=>{
console.log(res.data.data)
let listArr = this.data.accounts,
newData = []
if(page == 1 || page == undefined) listArr = []
newData = listArr.concat(res.data.data)
this.setData({
number : res.data.account.balance,
accounts : newData,
page : res.data.page
})
}).catch(err => {});
},
/**
* 筛选账变记录-条件
*/
screenBind(e) {
this.setData({
screenIndex : e.detail.value,
screenChannel: this.data.screenArray[e.detail.value].channel
})
// 获取账变记录
this.accountInfo();
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/

View File

@@ -25,39 +25,24 @@
<image class="labelLeft-arrow" src="/static/icon/rightsArrow.png"></image>
</navigator>
<!-- 账变记录 -->
<!-- 收益订单列表 -->
<view class="record">
<view class="integra-cont-title">
<view class="record-title">账变记录</view>
<view class="integra-cont-picker">
<picker bindchange="screenBind" value="{{screenIndex}}" range-key="name" range="{{screenArray}}">
{{screenArray[screenIndex].name}}
</picker>
<image class="integra-cont-icon" src="/static/icon/arrow_down.png"></image>
</view>
<view class="record-title">收益订单列表</view>
</view>
<block wx:if="{{accounts.length > 0}}">
<view class="record-list" wx:for="{{accounts}}" wx:key="accounts">
<view class="record-list-cont">
<image class="record-list-img" src="{{item.channel == 'in' ? '/static/img/balance-icon-02.png' : '/static/img/balance-icon-03.png'}}"></image>
<view class="record-list-top">
<view class="record-list-left">
<view class="record-list-name">
{{item.title}}
</view>
<view class="record-list-time">
{{item.created_at}}
</view>
</view>
<view class="record-list-right {{item.channel == 'in' ? 'active' : ''}}">
{{item.variable}}
</view>
</view>
<navigator hover-class="none" url="/pages/myBalance/myBalance_list/myBalance_list?id={{item.order_id}}&type={{item.order_type}}" class="record-list" wx:for="{{accounts}}" wx:key="accounts">
<view class="accounts-title">{{item.right}}</view>
<view class="accounts-user">
<image class="accounts-user-icon" src="/static/img/accountsIcon_00.png"></image>
<view class="accounts-user-name"><text>{{item.user.nickname}}</text>{{item.user.username}}</view>
</view>
<view class="record-list-remark">
{{item.remark}}
<view class="accounts-user">
<image class="accounts-user-icon" src="/static/img/accountsIcon_01.png"></image>
<view class="accounts-user-name">{{item.created_at}}</view>
</view>
</view>
<view class="accounts-more"><image src="/static/icon/arrow_tips.png"></image></view>
</navigator>
<view class="pagesLoding" wx:if="{{lodingStats}}">
<block wx:if="{{page.has_more}}">
<image class="pagesLoding-icon" src="/static/icon/refresh_loding.gif" mode="widthFix"></image>加载中...

View File

@@ -83,106 +83,78 @@
}
/* 账变记录 */
.record {
padding: 20rpx 25rpx;
box-sizing: border-box;
}
.record-title {
padding: 0 30rpx;
box-sizing: border-box;
color: #404040;
font-weight: 600;
font-size: 36rpx;
line-height: 60prx;
margin-bottom: 40rpx;
margin: 40rpx 0 30rpx;
flex: 1;
}
.integra-cont-title {
display: flex;
}
.integra-cont-picker {
display: flex;
color: #797979;
font-size: 30rpx;
padding-top: 4rpx;
}
.integra-cont-icon {
width: 28rpx;
height: 28rpx;
margin: 6rpx 0 0 10rpx;
}
/* 记录列表 */
.record-list {
background-color: #fff;
border-radius: 10rpx;
padding: 25rpx;
background-color: #ffffff;
margin-bottom: 50rpx;
padding: 0 30rpx 20rpx 30rpx;
box-sizing: border-box;
margin-bottom: 30rpx;
}
.record-list-img {
width: 50rpx;
height: 50rpx;
margin-top: 6rpx;
}
.record-list-cont {
display: flex;
width: 100%;
}
.record-list-top {
display: flex;
padding-left: 30rpx;
width: 100%;
box-sizing: border-box;
}
.record-list-left {
flex: 1;
margin-right: 20rpx;
}
.record-list-time {
margin-top: 10rpx;
font-size: 28rpx;
color: #999;
}
.record-list-right {
color: green;
}
.record-list-right.active {
color: red;
}
.record-list-remark {
color: #333;
font-size: 28rpx;
margin: 30rpx 0 0;
background-color: #f5f5f5;
padding: 10rpx 15rpx;
display: inline-block;
border-radius: 4rpx;
border-top: 2rpx solid #e9e9e9;
border-bottom: 2rpx solid #e9e9e9;
position: relative;
box-sizing: border-box;
}
.record-list-remark::after {
.accounts-more {
position: absolute;
bottom: -20rpx;
left: calc(50% - 40rpx);
width: 80rpx;
height: 40rpx;
text-align: center;
border-radius: 10rpx;
z-index: 9;
background-color: #ffffff;
border: #e9e9e9 2rpx solid;
}
.accounts-more image {
width: 28rpx;
height: 28rpx;
margin: 8rpx 26rpx;
}
.accounts-title {
position: relative;
padding: 30rpx 0 30rpx 35rpx;
}
.accounts-title::after {
position: absolute;
left: 20rpx;
top: -14rpx;
content: '';
width: 0;
height: 0;
border-left: 14rpx solid transparent;
border-right: 14rpx solid transparent;
border-bottom: 14rpx solid #f5f5f5;
left: 6rpx;
top: 37%;
width: 8rpx;
height: 30%;
background-color: #000000;
}
.accounts-user {
color: #838383;
display: flex;
border-top: 2rpx solid #f5f5f5;
padding: 30rpx 0;
}
.accounts-user text {
display: block;
margin-bottom: 20rpx;
}
.accounts-user-icon {
width: 36rpx;
height: 36rpx;
margin-right: 20rpx;
margin-top: 4rpx;
}
@@ -196,4 +168,6 @@
.recommend-hint image {
width: 200rpx;
height: 200rpx;
border-radius: 50%;
margin-bottom: 20rpx;
}

View File

@@ -0,0 +1,51 @@
Page({
/**
* 页面的初始数据
*/
data: {
accounts : '' //账户列表
},
/**
* 生命周期函数--监听页面加载
*/
onLoad (options) {
// 获取账变记录
this.accountInfo(options.type, options.id);
},
/**
* 账变记录
*/
accountInfo(type, id, page) {
wx.$api.user.profitsNext(type, id, page).then(res=>{
this.setData({
accounts : res.data
})
}).catch(err => {});
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
// 获取账变记录
this.accountInfo();
},
/**
* 上拉加载
*/
onReachBottom(){
this.setData({
lodingStats: true
})
let pageNumber = this.data.page.current
if(this.data.page.has_more){
pageNumber++
// 获取账变记录
this.accountInfo('', '', pageNumber);
}
}
})

View File

@@ -0,0 +1,3 @@
{
"usingComponents": {}
}

View File

@@ -0,0 +1,29 @@
<!-- 收益订单列表 -->
<view class="record" wx:if="{{accounts.length > 0}}">
<view class="record-list" wx:for="{{accounts}}" wx:key="accounts">
<view class="record-list-cont">
<image class="record-list-img" src="/static/img/balance-icon-02.png"></image>
<view class="record-list-top">
<view class="record-list-left">
<view class="record-list-name">
{{item.rule.title}}
</view>
<view class="record-list-time">
{{item.created_at}}
</view>
</view>
<view class="record-list-right">
+{{item.bonus}}
</view>
</view>
</view>
<view class="record-list-remark">
{{item.remark}}
</view>
</view>
</view>
<!-- 暂无内容 -->
<view class="recommend-hint" wx:else>
<image src="/static/img/null_icon.png"></image>
<view>抱歉,目前暂无内容~</view>
</view>

View File

@@ -0,0 +1,84 @@
/* 账变记录 */
.record {}
/* 记录列表 */
.record-list {
background-color: #fff;
border-radius: 10rpx;
padding: 25rpx;
box-sizing: border-box;
margin-bottom: 30rpx;
}
.record-list-img {
width: 50rpx;
height: 50rpx;
margin-top: 6rpx;
}
.record-list-cont {
display: flex;
width: 100%;
}
.record-list-top {
display: flex;
padding-left: 30rpx;
width: 100%;
box-sizing: border-box;
}
.record-list-left {
flex: 1;
margin-right: 20rpx;
}
.record-list-time {
margin-top: 10rpx;
font-size: 28rpx;
color: #999;
}
.record-list-right {
color: red;
}
.record-list-remark {
color: #333;
font-size: 28rpx;
margin: 30rpx 0 0;
background-color: #f5f5f5;
padding: 10rpx 15rpx;
display: inline-block;
border-radius: 4rpx;
position: relative;
box-sizing: border-box;
}
.record-list-remark::after {
position: absolute;
left: 20rpx;
top: -14rpx;
content: '';
width: 0;
height: 0;
border-left: 14rpx solid transparent;
border-right: 14rpx solid transparent;
border-bottom: 14rpx solid #f5f5f5;
}
/* 暂无内容 */
.recommend-hint {
text-align: center;
color: #999;
padding: 100rpx 0;
}
.recommend-hint image {
width: 200rpx;
height: 200rpx;
border-radius: 50%;
margin-bottom: 20rpx;
}

View File

@@ -25,8 +25,9 @@ Page({
publicData : [], //订单与团队 公共数据列表
//我的团队筛选列表
teamWay : [
{value: 0, name: "用户"},
{value: 1, name: "达人"}
{value: 0, name: "全部"},
{value: 1, name: "用户"},
{value: 2, name: "达人"}
],
teamIndex : 0, //我的团队筛选列表index
teamValue : 0, //我的团队筛选列表value
@@ -154,7 +155,7 @@ Page({
screenTeam(val) {
this.setData({
teamIndex: val.detail.value,
teamValue: this.data.ordersWay[val.detail.value].value
teamValue: this.data.teamWay[val.detail.value].value
})
// 获取收益订单列表 + 我的团队列表
this.publicInfo();

View File

@@ -31,7 +31,7 @@ page {
height: 300rpx;
position: absolute;
top: -50rpx;
right: -40rpx;
right: 0;
}
/* 内容 */

View File

@@ -15,7 +15,8 @@ Page({
payTips : 1, //支付方式
payState : false, //支付状态
orderId : '', //支付订单
}
},
unicomPay : '' //是否有沃支付
},
/**
@@ -24,7 +25,8 @@ Page({
onLoad (options) {
this.setData({
orderType: options.orderType,
stateType: options.stateType
stateType: options.stateType,
unicomPay: getApp().globalData.unicomPay
})
},

View File

@@ -95,7 +95,7 @@
</view>
<radio class="radio" value="1" checked></radio>
</view>
<view class="payContList-label">
<view class="payContList-label" wx:if="{{unicomPay}}">
<view class="payContList-label-name">
<image class="payContList-label-img" src="/static/img/wqb.jpg"></image>
沃钱包支付

View File

@@ -35,7 +35,8 @@ Page({
payWay :[
{value: 0, name: "微信支付"},
{value: 1, name: "沃钱包支付"}
]
],
orderType : '' //订单类型
},
/**
@@ -47,17 +48,19 @@ Page({
typeWeb : options.type,
getType : options.getType,
openid : options.openid || '',
parentId : options.parentid || ''
orderType : options.orderType
})
// 获取详情
this.rightsInfo();
console.log(getApp().globalData.shareObj)
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {},
onShow() {
// 获取详情
this.rightsInfo();
},
/**
* 详情
@@ -259,13 +262,24 @@ Page({
isdeliver: this.data.detail.def_get
})
}
let right_id = this.data.detail.right_id,
address_id = this.data.address.id,
is_deliver = this.data.isdeliver,
qty = this.data.num,
parent_id = this.data.parentId
newParent = '',
shareObj = getApp().globalData.shareObj
wx.$api.index.rightStore(right_id, address_id, is_deliver, qty, parent_id).then(res=>{
if(shareObj.type == 'shareStored' && shareObj.type == this.data.orderType){
newParent = shareObj.userId
}
if(shareObj.type == 'shareGoods' && shareObj.goodsId == right_id){
console.log(22222)
newParent = shareObj.userId
}
wx.$api.index.rightStore(right_id, address_id, is_deliver, qty, newParent).then(res=>{
if(res.data.canPay == false) {
wx.showToast({
title : '支付成功',
@@ -287,6 +301,24 @@ Page({
rightsTap: true
})
}else {
// 储值
if(shareObj.type == 'shareStored'){
getApp().globalData.shareObj = {
type : '',
goodsId : '',
userId : ''
}
}
// 商品
if(shareObj.type == 'shareGoods' && shareObj.goodsId == right_id){
getApp().globalData.shareObj = {
type : '',
goodsId : '',
userId : ''
}
}
// 跳转收银台
wx.navigateTo({
url: "/pages/cashier/cashier?trade_no=" + res.data.trade_no + "&amount=" + this.data.amount + "&is_deliver=" + is_deliver + "&pay_type=rightsPay"

View File

@@ -61,11 +61,11 @@
{{detail.title}}
</view>
<view class="rightsGoods-price">
<view class="rightsGoods-number"><text>¥</text>{{detail.price}}</view>
<view class="rightsGoods-number"><text>¥</text>{{detail.amount}}</view>
<view class="rightsAdd">
<view class="rightsAdd-btn rightsAdd-remove {{num != 1 ? 'active' : ''}}" bindtap="goodsNumber" data-type="remove">-</view>
<input class="rightsAdd-input" data-num="{{num}}" value="{{num}}" type="number" maxlength='4'
bindblur="goodsNumberInput"></input>
bindblur="goodsNumberInput" disabled></input>
<view class="rightsAdd-btn rightsAdd-plus" bindtap="goodsNumber" data-type="plus">+</view>
</view>
</view>
@@ -78,34 +78,15 @@
<view class="rightsLabel-left">{{detail.attribute.form_type}}</view>
<view class="rightsLabel-right rightsLabel-red">-¥{{score}}</view>
</view>
<!-- <view class="rightsLabel uni-border-top">
<view class="rightsLabel-left">{{detail.attribute.form_pay}}</view>
<view class="rightsLabel-right rightsLabel-score">¥{{amount}}</view>
</view> -->
</view>
<!-- 规格 -->
<view class="rightsList" wx:if="{{detail.type == 'physical'}}">
<!-- <view class="rightsLabel">
<view class="rightsLabel-left">{{detail.attribute.form_price}}</view>
<view class="rightsLabel-right">¥{{moreAmount}}</view>
</view> -->
<view class="rightsLabel" wx:if="{{platIndex == 1}}">
<view class="rightsLabel-left">电子券</view>
<view class="rightsLabel-right">{{detail.qty}}张</view>
</view>
<!-- <view class="rightsLabel">
<view class="rightsLabel-left">需要兑换的积分</view>
<view class="rightsLabel-right">{{detail.score}}</view>
</view> -->
<!-- <view class="rightsLabel">
<view class="rightsLabel-left">卡余额抵扣</view>
<view class="rightsLabel-right">-¥0.00</view>
</view> -->
<!-- <view class="rightsLabel">
<view class="rightsLabel-left">总金额</view>
<view class="rightsLabel-right">¥{{detail.price}}</view>
</view> -->
<block wx:if="{{detail.type == 'physical'}}">
<view class="rightsLabel">
<view class="rightsLabel-left">提交方式</view>
@@ -130,9 +111,11 @@
</view>
</block>
<block wx:else>
<navigator class="rightsLabel-right" hover-class="none"
url="/pages/address_form/address_form?type=Add">
添加收货地址<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
<navigator class="rightsLabel-right" hover-class="none" url="/pages/address_form/address_form?type=Add">
<view class="rightsLabel-address-text" style="line-height: 90rpx;">
添加收货地址
</view>
<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
</navigator>
</block>
</view>
@@ -143,36 +126,6 @@
</block>
</view>
<!-- 支付方式 -->
<!-- <view class="rightsList">
<view class="rightsLabel">
<view class="rightsLabel-left">请选择支付方式</view>
<view class="rightsLabel-right rightsLabel-range">
<picker range="{{payWay}}" range-key="name" bindchange="payBind">
<view class="tabs-text">
{{payWay[payWayIndex].name}}
</view>
</picker>
<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
</view>
</view>
<view class="rightsLabel-pay">
<view class="rightsLabel-left">支付方式</view>
<view class="rightsLabel-right">{{payWay[payWayIndex].name}}</view>
</view>
</view> -->
<!-- 自提商家 -->
<!-- <view class="detailsStore" wx:if="{{platIndex == 0}}">
<view class="detailsStore-top">
自提门店
</view>
<view class="detailsStore-see">
<text>查看提货点信息</text>
<image src="/static/icon/storeArrow.png"></image>
</view>
</view> -->
<!-- 购买须知 -->
<view class="notice">
<view class="noticeTitle" bindtap="noticeTap">
@@ -214,14 +167,6 @@
{{item.all_address}}
</view>
<view class="address-tool-icon">选择地址</view>
<!-- <view class="address-tool">
<view class="address-tool-btn" bindtap="addressEdit" data-id="">编辑地址</view>
<view class="address-tool-btn address-tool-btn-del">删除地址</view>
</view> -->
</view>
</scroll-view>
</view>
<!-- <view class="webBack {{webShow == true ? '' : 'active'}}">
获取失败,请重新获取
</view> -->

View File

@@ -20,17 +20,6 @@ page {
overflow: hidden;
}
/* .contBack::after {
width: 100%;
height: 30rpx;
position: absolute;
left: 0;
bottom: 0;
z-index: 2;
content: '';
background-image: linear-gradient(transparent, rgba(0,0,0,.25));
} */
.classBack {
position: absolute;
left: 28%;
@@ -712,6 +701,7 @@ page {
padding: 0 10rpx;
box-sizing: border-box;
margin: 50rpx 0 20rpx;
height: 120rpx;
}
.welfareCont-list-img {

View File

@@ -49,6 +49,11 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad (options) {
// 写入缓存
wx.setStorage({
key : 'parentId',
data : options.parent_id
})
},
/**
* 生命周期函数--监听页面显示

View File

@@ -22,15 +22,12 @@ Page({
*/
onLoad (options) {
this.setData({
rightId: options.rightid,
rightId : options.rightid,
parentId: options.parent_id
})
// 判断是否由分享进入
// if(options.type == "share"){}
// 获取二维码
wx.$api.user.publicCode('mini', 'goods', 'pages/userGoods/goodsDet/goodsDet?rightid=' + options.rightid + '&type=share').then(res=>{
wx.$api.user.publicCode('mini', 'goods', 'pages/userGoods/goodsDet/goodsDet?rightid=' + options.rightid + '&type=shareGoods').then(res=>{
this.setData({
qrcode : res.data.qrcode,
userInfo : res.data.user
@@ -203,19 +200,19 @@ Page({
onShareAppMessage(){
return {
title : this.data.userInfo.nickname + "邀请您进入本时生活",
imageUrl: this.data.pageShare,
path : "/pages/userGoods/goodsDet/goodsDet?parent_id=" + this.data.userInfo.user_id + "&rightid=" + this.data.rightId + "&type=share",
path : "/pages/userGoods/goodsDet/goodsDet?parent_id=" + this.data.userInfo.user_id + "&rightid=" + this.data.rightId + "&type=shareGoods",
imageUrl: this.data.pageShare
}
},
/**
* 用户点击右上角分享朋友圈
*/
onShareTimeline: function () {
return {
title : this.data.userInfo.nickname + "邀请您进入本时生活",
path : "/pages/userGoods/goodsDet/goodsDet?parent_id=" + this.data.userInfo.user_id + "&rightid=" + this.data.rightId + "&type=share",
imageUrl: this.data.pageShare
}
}
// onShareTimeline: function () {
// return {
// title : this.data.userInfo.nickname + "邀请您进入本时生活",
// path : "/pages/userGoods/goodsDet/goodsDet?parent_id=" + this.data.userInfo.user_id + "&rightid=" + this.data.rightId + "&type=shareGoods",
// imageUrl: this.data.pageShare
// }
// }
})

View File

@@ -126,6 +126,7 @@
margin-top: 20rpx;
padding: 0 !important;
width: 33.33%;
background-color: transparent;
}
.codeShare-label image {

View File

@@ -8,7 +8,7 @@ Page({
isUser : false, //用户登录状态
qrcode : '', //二维码
userInfo : '', //我的信息
current : 0, //产品轮播index
current : 1, //产品轮播index
rightId : '', //产品id
parentId : '', //分享人id
productData : '', //详情数据
@@ -21,21 +21,12 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad (options) {
// 判断是否由分享进入
if(options.type == "share"){
this.setData({
parentId: options.parent_id
})
// 写入缓存
wx.setStorage({
key : 'parentId',
data : options.parent_id
})
this.setData({
rightId : options.rightid
})
if(options.type){
getApp().globalData.shareObj = {
type : options.type,
goodsId : options.rightid,
userId : options.parent_id
}
}
this.setData({
@@ -52,6 +43,13 @@ Page({
})
},
// 商品轮播
swiperChange(e) {
this.setData({
current: e.detail.current + 1
})
},
/**
* 产品详情
*/

View File

@@ -5,7 +5,8 @@
<image class="swiperImg" src="{{item}}" mode="aspectFill"></image>
</swiper-item>
</swiper>
<view class="swiperDot" wx:if="{{productData.share.pictures.length != 1}}">{{current}}/{{productData.share.pictures.length}}</view>
<view class="swiperDot" wx:if="{{productData.share.pictures.length > 0}}">
{{current}}/{{productData.share.pictures.length}}</view>
</view>
<!-- 权益介绍 -->
@@ -18,14 +19,16 @@
<view class="contentText-price-close">门市价¥{{productData.share.cost}}</view>
</view>
</view>
<view bindtap="userNav" data-url="/pages/rights/rights?rightsId={{productData.right_config_id}}&parentid={{parentId}}" class="contentBuy">立即购买</view>
<view bindtap="userNav"
data-url="/pages/rights/rights?rightsId={{productData.right_config_id}}&parent_id={{parentId}}&type=share"
class="contentBuy">立即购买</view>
</view>
<!-- 规格 -->
<view class="specs">
<view class="specs-label">
<text>规格</text>
{{productData.share.type_name}}
<text>规格</text>
{{productData.share.type_name}}
</view>
<view class="specs-label">
<text>门店</text>
@@ -53,8 +56,11 @@
<!-- 漂浮窗 -->
<view class="indexFloat" wx:if="{{canShare}}">
<navigator hover-class="none" url="/pages/userGoods/goodsCode/goodsCode?rightid={{rightId}}" class="indexFloat-img">
<image src="/static/img/index_float_01.png" mode="aspectFill"></image>
</navigator>
</view>
<movable-area class="indexFloat" wx:if="{{canShare}}">
<movable-view y="400" direction="vertical" class="indexFloat-movable">
<navigator hover-class="none" url="/pages/userGoods/goodsCode/goodsCode?rightid={{rightId}}"
class="indexFloat-img">
<image src="/static/img/index_float_01.png" mode="aspectFill"></image>
</navigator>
</movable-view>
</movable-area>

View File

@@ -191,8 +191,19 @@ page {
/* 漂浮弹出层 */
.indexFloat {
position: fixed;
height: 52%;
width: 130rpx;
right: 20rpx;
bottom: 30rpx;
bottom: 40rpx;
z-index: 99;
}
.indexFloat-movable {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 150rpx;
z-index: 99;
}

View File

@@ -19,16 +19,8 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad (options) {
// 判断是否由分享进入
// if(options.type == "share"){
// // 写入缓存
// this.setData({
// parentId: options.parent_id
// })
// }
// 获取二维码
wx.$api.user.publicCode('mini', 'recharge', 'pages/userStored/userStored?type=share').then(res=>{
wx.$api.user.publicCode('mini', 'recharge', 'pages/userStored/userStored?type=shareStored').then(res=>{
this.setData({
qrcode : res.data.qrcode,
userInfo : res.data.user
@@ -173,19 +165,19 @@ Page({
onShareAppMessage(){
return {
title : this.data.userInfo.nickname + "邀请您进入本时生活",
imageUrl: "",
path : "/pages/userStored/userStored?parent_id=" + this.data.userInfo.user_id + "&type=share",
}
path : "/pages/userStored/userStored?parent_id=" + this.data.userInfo.user_id + "&type=shareStored",
imageUrl: "/static/img/storedCode.png"
}
},
/**
* 用户点击右上角分享朋友圈
*/
onShareTimeline: function () {
return {
title : this.data.userInfo.nickname + "邀请您进入本时生活",
path : "/pages/userStored/userStored?parent_id=" + this.data.userInfo.user_id + "&type=share",
imageUrl: ''
}
}
// onShareTimeline: function () {
// return {
// title : this.data.userInfo.nickname + "邀请您进入本时生活",
// path : "/pages/userStored/userStored?parent_id=" + this.data.userInfo.user_id + "&type=shareStored",
// imageUrl: "/static/img/storedCode.png"
// }
// }
})

View File

@@ -15,17 +15,12 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad (options) {
// 判断是否由分享进入
if(options.type == "share"){
this.setData({
parentId: options.parent_id
})
// 写入缓存
wx.setStorage({
key : 'parentId',
data : options.parent_id
})
if(options.type){
getApp().globalData.shareObj = {
type : options.type,
goodsId : '',
userId : options.parent_id
}
}
},

View File

@@ -27,19 +27,23 @@
<text>¥{{item.worth}}</text>(满{{item.full}}减{{item.worth}})
</view>
</view>
<view bindtap="userNav" data-url="/pages/rights/rights?rightsId={{item.right_config_id}}&parentid={{parentId}}" class="userStoredCont-rights-btn">立即儲值</view>
<view bindtap="userNav" data-url="/pages/rights/rights?rightsId={{item.right_config_id}}&orderType=shareStored" class="userStoredCont-rights-btn">立即儲值</view>
</view>
</view>
</view>
</view>
</view>
<navigator url="/pages/userStored/storedCode/storedCode" hover-class="none" class="userStoredBtn"
wx:if="{{canShare}}">
储值分享
</navigator>
</block>
<view class="pack-center pages-hint" wx:else>
<image src="/static/img/staff_null.png"></image>
<view>暂无订单</view>
</view>
<!-- 漂浮窗 -->
<movable-area class="indexFloat" wx:if="{{canShare}}">
<movable-view y="400" direction="vertical" class="indexFloat-movable">
<navigator hover-class="none" url="/pages/userStored/storedCode/storedCode" class="indexFloat-img">
<image src="/static/img/index_float_01.png" mode="aspectFill"></image>
</navigator>
</movable-view>
</movable-area>

View File

@@ -172,24 +172,23 @@
margin-top: 35rpx;
}
/* 分享按钮 */
.userStoredBtn {
background: #bca585;
border-radius: 80rpx;
margin: 40rpx 30rpx;
width: calc(100% - 60rpx);
line-height: 80rpx;
text-align: center;
color: #ffffff;
font-weight: 600;
}
/* 漂浮弹出层 */
/* .indexFloat {
.indexFloat {
position: fixed;
height: 70%;
width: 130rpx;
right: 20rpx;
bottom: 60rpx;
bottom: 40rpx;
z-index: 99;
}
.indexFloat-movable {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 150rpx;
z-index: 99;
}
@@ -197,4 +196,4 @@
width: 130rpx;
height: 130rpx;
margin-bottom: 20rpx;
} */
}

View File

@@ -8,7 +8,7 @@ Page({
amount : '', //总金额
allAddress : '', //收货地址列表
addressShow : false, //收货地址显示
noticeShow : false, //须知显示状态
noticeShow : true, //须知显示状态
pointMoreShow : false, //重要提示显示状态
freight : '', //运费
isdeliver : -1,
@@ -20,12 +20,7 @@ Page({
remark : '', //使用须知
platformCp : [], //选择提交数组
platIndex : 0, //选择提交方式下标
payWayIndex : 0, //选择支付方式下标
subscribeTips : '', //订阅--临时舍去
payWay :[
{value: 0, name: "微信支付"}
// {value: 1, name: "沃钱包支付"}
]
subscribeTips : '' //订阅--临时舍去
},

View File

@@ -1,6 +1,10 @@
<!-- 按钮 -->
<view class="rightsBtn" bindtap="ordinary">
<button disabled="{{disabled}}">立即购买</button>
<view class="newrightsBtn" bindtap="ordinary">
<view class="rightsBtn-text">
<view class="rightsBtn-text-num">共1件商品 </view>
<view>实付:<text>¥{{amount}}</text></view>
</view>
<button disabled="{{disabled}}">立即购买</button>
</view>
@@ -23,37 +27,58 @@
</view>
<view style="padding-bottom: 220px">
<view class="cont">
<view class="contBack">
<image class="classBack" src="https://lifetest.ysd-bs.com/storage/materials/2021/08/09/class_back_02.png" mode="scaleToFill"></image>
<view class="classCircle"></view>
<view class="rightsCont">
<scroll-view scroll-x class="welfareCont-top" scroll-with-animation>
<view class="welfareCont-list-img" wx:for="{{rightData.logos}}" wx:key="logos">
<image src="{{item}}" mode="aspectFill"></image>
</view>
</scroll-view>
<view class="nowrap rightsCont-btn">
{{rightData.subtitle}}
</view>
</view>
</view>
</view>
<!-- 卡券权益 -->
<view class="welfare">
<view class="welfareCont">
<view class="welfareCont-top">
<image class="welfareCont-list-img" src="{{item}}" mode="aspectFill" wx:for="{{rightData.logos}}"
wx:key="logos"></image>
</view>
<view class="welfareCont-text">
<view class="nowrap welfareCont-title">{{rightData.title}}</view>
<view class="nowrap welfareCont-tips">{{rightData.subtitle}}</view>
</view>
</view>
</view>
<view class="rightsNumber">
<image class="rightsGoods-img" src="{{rightData.cover}}" mode="aspectFill"></image>
<view class="rightsGoods">
<view class="nowrap rightsGoods-text">
{{rightData.title}}
</view>
<view class="rightsGoods-price">
<view class="rightsGoods-number"><text>¥</text>{{contData.price}}</view>
<view class="rightsAdd">
<view class="rightsAdd-btn rightsAdd-remove {{num != 1 ? 'active' : ''}}" data-type="remove">-</view>
<input class="rightsAdd-input" value="1" type="number" maxlength='4'
bindblur="goodsNumberInput" disabled></input>
<view class="rightsAdd-btn rightsAdd-plus" data-type="plus">+</view>
</view>
</view>
</view>
</view>
<view class="rightsList" style="padding: 0 0 2rpx">
<!-- 规格 -->
<view class="rightsList">
<view class="rightsLabel">
<view class="rightsLabel-left">{{contData.attribute.form_price}}</view>
<view class="rightsLabel-left">{{contData.attribute.form_pay}}</view>
<view class="rightsLabel-right">¥{{contData.total}}</view>
</view>
<view class="rightsLabel uni-border-top">
<view class="rightsLabel-left">{{contData.attribute.form_qty}}</view>
<view class="rightsLabel-right">1</view>
<view class="rightsLabel-right">1</view>
</view>
<view class="rightsLabel uni-border-top">
<view class="rightsLabel-left">{{contData.attribute.form_type}}</view>
<view class="rightsLabel-right rightsLabel-red">¥{{contData.score}}</view>
<view class="rightsLabel-right rightsLabel-red">-¥{{contData.score}}</view>
</view>
<block wx:if="{{rightData.type == 'physical'}}">
<block wx:if="{{rightData.type == 'physical'}}">
<view class="rightsLabel">
<view class="rightsLabel-left">请选择提交方式</view>
<view class="rightsLabel-left">提交方式</view>
<view class="rightsLabel-right rightsLabel-range">
<picker range="{{platformCp}}" range-key="name" bindchange="platBind">
<view class="tabs-text">
@@ -64,53 +89,39 @@
</view>
</view>
<view class="rightsLabel rightsLabel-address" wx:if="{{platformCp[platIndex].name == '快递'}}">
<view class="rightsLabel-left">收货地址</view>
<image class="rightsLabel-icon" src="/static/img/new_rightsAddress.png"></image>
<block wx:if="{{address != ''}}">
<view class="rightsLabel-right" bindtap="addressTap">
<text class="nowrap">{{address.all_address}}</text>
<view class="rightsLabel-address-text">
<view class="rightsLabel-address-name">{{address.name}}<view class="rightsLabel-address-tel">{{address.mobile}}</view></view>
<text class="nowrap">{{address.all_address}}</text>
</view>
<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
</view>
</block>
<block wx:else>
<navigator class="rightsLabel-right" hover-class="none"
url="/pages/address_form/address_form?type=Add">
添加收货地址<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
<navigator class="rightsLabel-right" hover-class="none" url="/pages/address_form/address_form?type=Add">
<view class="rightsLabel-address-text" style="line-height: 90rpx;">
添加收货地址
</view>
<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
</navigator>
</block>
</view>
<view class="rightsLabel" wx:if="{{platformCp[platIndex].name == '快递'}}">
<view class="rightsLabel" wx:if="{{platformCp[platIndex].name == '快递'}}">
<view class="rightsLabel-left">快递运费</view>
<view class="rightsLabel-right">¥{{freight}}</view>
<view class="rightsLabel-right rightsLabel-freight">¥{{freight}}</view>
</view>
</block>
</view>
</view>
<!-- 应付总金额 -->
<view class="rightsList">
<!-- <view class="rightsList">
<view class="rightsLabel-pay" style="font-weight: 600;">
<view class="rightsLabel-left">{{contData.attribute.form_pay}}</view>
<view class="rightsLabel-right">¥<text style="font-size: 36rpx;">{{amount}}</text></view>
</view>
</view>
<!-- 支付方式 -->
<view class="rightsList">
<view class="rightsLabel">
<view class="rightsLabel-left">请选择支付方式</view>
<view class="rightsLabel-right rightsLabel-range">
<picker range="{{payWay}}" range-key="name" bindchange="payBind">
<view class="tabs-text">
{{payWay[payWayIndex].name}}
</view>
</picker>
<image class="rightsLabel-row" src="/static/icon/rightsArrow.png"></image>
</view>
</view>
<view class="rightsLabel-pay">
<view class="rightsLabel-left">支付方式</view>
<view class="rightsLabel-right">{{payWay[payWayIndex].name}}</view>
</view>
</view>
</view> -->
<!-- 购买须知 -->
<view class="notice">

View File

@@ -1,70 +1,133 @@
page {
background-color: #eeeeee;
}
.cont {
width: 100%;
overflow: hidden;
}
/* 卡券权益 */
.welfare {
text-align: center;
width: 100%;
background-color: #fff;
padding: 30rpx;
box-sizing: border-box;
}
.welfareCont-top{
flex-wrap: wrap;
flex-direction: column;
margin: 10rpx 0;
}
.welfareCont-list-img {
border: 2rpx solid #eccc69;
border-radius: 50%;
width: 100rpx;
height: 100rpx;
display: inline-block;
margin: 0 10rpx;
}
.welfareCont-text {
.contBack {
position: relative;
padding: 20rpx 50rpx;
box-sizing: border-box;
width: 100%;
display: grid;
border-top: 4rpx dashed #ebcc68;
}
.welfareCont-tips {
background-color: #000000;
color: #ffd88d;
border-radius: 10rpx;
margin-top: 20rpx;
height: 54rpx;
line-height: 54rpx;
font-size: 27rpx;
display: inline-block;
font-weight: 600;
padding: 0 20rpx;
}
.welfareCont {
background: #fcf9e8;
border: 2rpx solid #eac85c;
border-radius: 20rpx;
display: inline-block;
width: 200%;
height: 340rpx;
left: -50%;
text-align: center;
background: #000000;
border-radius: 0 0 100% 100%;
overflow: hidden;
}
/* .contBack::after {
width: 100%;
height: 30rpx;
position: absolute;
left: 0;
bottom: 0;
z-index: 2;
content: '';
background-image: linear-gradient(transparent, rgba(0,0,0,.25));
} */
.classBack {
position: absolute;
left: 28%;
right: 30%;
width: 44%;
top: 40rpx;
}
.classCircle {
position: relative;
}
.classCircle::after,
.contBack::before {
position: absolute;
border-radius: 50%;
content: '';
z-index: 1;
background-color: rgba(255,255,255,.1);
}
.classCircle::after {
left: 20%;
top: -20rpx;
width: 260rpx;
height: 260rpx;
}
.contBack::before {
right: 20%;
top: 55%;
width: 300rpx;
height: 300rpx;
}
.rightsCont {
position: absolute;
z-index: 3;
left: calc(28% - 2rpx);
right: calc(30% - 2rpx);
width: calc(44% + 4rpx);
top: 50rpx;
}
.rightsCont-btn {
background: rgba(255, 255, 0255, .4);
width: 100%;
line-height: 70rpx;
font-size: 40rpx;
font-weight: 600;
color: #000000;
padding: 0 20rpx;
box-sizing: border-box;
}
.rightsCont-tips {
color: #fff;
}
.rightsNumber {
display: flex;
width: 100%;
margin: 30px 0 20px;
padding: 0 30rpx;
background-color: #ffffff;
position: relative;
padding: 30rpx 40rpx;
box-sizing: border-box;
}
.rightsNumber text {
display: inline-block;
.rightsGoods-img {
width: 200rpx;
height: 200rpx;
border-radius: 10rpx;
}
.rightsGoods {
position: absolute;
left: 0;
top: 0;
width: 100%;
padding: 80rpx 40rpx 0 270rpx;
box-sizing: border-box;
}
.rightsGoods-text {
margin-bottom: 40rpx;
font-weight: 600;
}
.rightsGoods-price {
display: flex;
}
.rightsGoods-number {
flex: 1;
font-size: 34rpx;
}
.rightsGoods-number>text {
font-size: 28rpx;
}
.rightsAdd {
@@ -72,9 +135,7 @@
}
.rightsAdd-btn {
background: #eaeaea;
color: #535353;
border-radius: 50%;
border-radius: 4rpx;
text-align: center;
width: 50rpx;
height: 50rpx;
@@ -83,6 +144,17 @@
font-weight: 600;
}
.rightsAdd-remove {
background: #f8f8f8;
color: #d9d9d9;
}
.rightsAdd-remove.active,
.rightsAdd-plus {
background: #e8e4e5;
color: #6b6768;
}
.rightsAdd-input {
width: 100rpx;
text-align: center;
@@ -101,17 +173,18 @@
.notice,
.detailsStore {
background: white;
margin: 30rpx;
border-radius: 10rpx;
padding: 10rpx 0;
margin-top: 20rpx;
box-sizing: border-box;
}
.rightsLabel,
.rightsLabel-pay {
display: flex;
padding: 20rpx;
color: #6f7880;
padding: 20rpx 40rpx;
color: #6c6c6c;
font-weight: 600;
font-size: 30rpx;
}
@@ -120,6 +193,37 @@
color: #747d86;
}
.rightsLabel .rightsLabel-icon {
width: 70rpx;
height: 70rpx;
margin-top: 14rpx;
}
.rightsLabel-address .rightsLabel-right {
width: calc(100% - 90rpx);
margin-left: 20rpx;
color: #000000;
}
.rightsLabel-address .rightsLabel-row {
margin-top: 30rpx;
}
.rightsLabel-address-name {
display: flex;
font-size: 32rpx;
margin-bottom: 10rpx;
}
.rightsLabel-address-tel {
padding-left: 30rpx;
color: #959595;
}
.rightsLabel-freight {
color: #000000;
}
.rightsLabel-black {
padding-top: 30rpx;
}
@@ -131,14 +235,15 @@
}
.rightsLabel-row {
width: 38rpx;
height: 38rpx;
margin: 2rpx 0 0 6rpx;
width: 42rpx;
height: 42rpx;
margin: 0 0 0 6rpx;
}
.rightsLabel-black .rightsLabel-right,
.rightsLabel-red {
color: #ff5b5d;
font-weight: 600;
font-size: 32rpx;
}
@@ -161,12 +266,11 @@
}
.notice {
padding: 20rpx;
padding: 20rpx 30rpx;
}
.noticeTitle {
display: flex;
margin-bottom: 20rpx;
}
.noticeTitle-flex {
@@ -199,7 +303,6 @@
.noticeText-cont {
line-height: 60rpx;
color: #666;
}
.noticeTitle-row {
@@ -244,14 +347,18 @@
}
/* 购买按钮 */
.rightsBtn {
.rightsBtn,
.newrightsBtn {
position: fixed;
bottom: 0;
left: 0;
width: 100%;
height: 100rpx;
height: 160rpx;
z-index: 9;
background: #fff;
padding: 30rpx;
box-sizing: border-box;
display: flex;
}
.rightsBtn button,
@@ -268,6 +375,33 @@
font-size: 30rpx;
}
.rightsBtn-text {
flex: 1;
font-weight: 600;
font-size: 30rpx;
}
.rightsBtn-text-num {
font-size: 30rpx;
margin-bottom: 10rpx;
}
.rightsBtn-text text {
font-size: 38rpx;
color: #fe2d55;
}
.newrightsBtn button {
width: 280rpx !important;
background-color: #000000;
color: #ffffff;
border-radius: 80rpx;
height: 100rpx;
line-height: 100rpx;
padding: 0;
margin: 0;
}
.rightsBtn.active text {
background: #dedede;
@@ -356,6 +490,27 @@
.rightsLabel-address {
display: flex;
position: relative;
margin: 10rpx 0;
padding: 25rpx 40rpx;
}
.rightsLabel-address::after,
.rightsLabel-address::before {
position: absolute;
content: '';
left: 30rpx;
width: calc(100% - 60rpx);
height: 2rpx;
background-color: #bfbfbf;
}
.rightsLabel-address::after {
top: 0;
}
.rightsLabel-address::before {
bottom: 0;
}
.rightsLabel-address text {
@@ -368,6 +523,10 @@
font-size: 28rpx;
}
.rightsLabel-address-text {
flex: 1;
}
.address-tool {
display: flex;
float: right;
@@ -410,8 +569,8 @@
.rightsPoint {
position: fixed;
left: 0;
bottom: 100rpx;
background: #fff;
bottom: 160rpx;
background: #eeeeee;
z-index: 9;
width: 100%;
padding: 20rpx 20rpx 10rpx;
@@ -420,8 +579,7 @@
.rightsPoint-cont {
width: 100%;
background: #fcf9e8;
border: 2rpx solid #ecd390;
background: #eeeeee;
border-radius: 10rpx;
position: relative;
max-height: 50vh;
@@ -431,7 +589,7 @@
.rightsPoint-top {
font-size: 28rpx;
display: flex;
padding: 20rpx;
padding: 0 20rpx 20rpx;
box-sizing: border-box;
font-weight: 600;
}
@@ -483,7 +641,7 @@
.pointMore {
text-align: center;
width: 100%;
background: #fff8e5;
background: #eeeeee;
height: 80rpx;
line-height: 82rpx;
position: relative;
@@ -497,7 +655,7 @@
top: 0;
width: 100%;
height: 2rpx;
background: #ecd390;
background: #f2ecde;
}
.pointMore text {
@@ -529,27 +687,6 @@
}
}
.rightsCont-btn {
display:inline-block;
text-align: center;
background-image: linear-gradient(to right, #eaaaa8, #f4e5c2, #eaaaa8);
box-shadow: 0 0 10rpx rgba(233, 166, 166, .9);
border-radius: 30px;
padding: 5rpx;
line-height: 40rpx;
}
.rightsCont-btn text {
border-radius: 30px;
width: 100%;
height: 100%;
display: block;
padding: 10rpx 20rpx;
box-sizing: border-box;
background: linear-gradient(#fefcfa, #f9f0db, #f7ebcf);
font-size: 30rpx;
}
.webBack {
position: fixed;
width: 100%;
@@ -566,51 +703,28 @@
display: block;
}
.subscribe {
position: fixed;
bottom: 400rpx;
right: 20rpx;
z-index: 999;
width: 100rpx;
height: 100rpx;
-webkit-animation: Tada 3s both infinite;
-moz-animation: Tada 3s both infinite;
-ms-animation: Tada 3s both infinite;
animation: Tada 3s both infinite;
.welfareCont-top{
white-space: nowrap;
flex-direction: row;
align-items: center;
justify-content: space-around;
width: 100%;
padding: 0 10rpx;
box-sizing: border-box;
margin: 50rpx 0 20rpx;
height: 120rpx;
}
.subscribe.active {
display: none;
.welfareCont-list-img {
border-radius: 50%;
width: 120rpx;
height: 120rpx;
display: inline-block;
margin: 0 15rpx;
overflow: hidden;
}
@keyframes Tada {
0% {
transform: scale(1);
transform: scale(1)
}
70%,73%{
transform: scale(1) rotate(-3deg);
transform: scale(1) rotate(-3deg)
}
77%,83%,90%,97% {
transform: scale(1) rotate(3deg);
transform: scale(1) rotate(3deg)
}
80%,87%,93%{
transform: scale(1) rotate(-3deg);
transform: scale(1) rotate(-3deg)
}
100% {
transform: scale(1) rotate(0);
transform: scale(1) rotate(0)
}
}
.subscribe image {
.welfareCont-list-img image {
width: 100%;
height: 100%;
}

View File

@@ -5,9 +5,10 @@ Page({
* 页面的初始数据
*/
data: {
balance : '', //余额
tax : '', //手续费
disabled: false //按钮状态
balance : '', //余额
tax : '', //手续费
amount : '', //提现金额
disabled : false //按钮状态
},
/**
@@ -31,11 +32,26 @@ Page({
}).catch(err=>{})
},
/**
* 获取提现金额
*/
getAmount (val) {
var money;
if (/^(\d?)+(\.\d{0,1})?$/.test(val.detail.value)) { //正则验证,提现金额小数点后不能大于两位数字
money = val.detail.value;
} else {
money = val.detail.value.substring(0, val.detail.value.length - 1);
}
this.setData({
amount: money
})
},
/**
* 提现表单填写
*/
formSubmit(e) {
let newAmount = e.detail.value.amount
let newAmount = this.data.amount
if(newAmount > 1) {
wx.$api.user.withdrawsForm(newAmount, "mini").then(res=>{
this.setData({
@@ -48,7 +64,7 @@ Page({
setTimeout(()=>{
wx.redirectTo({
url: '/pages/withdrawal_record/withdrawal_record'
url: "/pages/withdrawal_record/withdrawal_record?status=''&idx=0"
})
},2000)

View File

@@ -12,7 +12,7 @@
<form bindsubmit="formSubmit">
<view class="withdrawalForm-label">
<view class="withdrawalForm-label-name">提现金额</view>
<input type="number" name="amount" placeholder="请输入提现金额" />
<input type="digit" value="{{amount}}" placeholder="请输入提现金额" bindinput="getAmount" />
</view>
<view class="withdrawalForm-label">
提现费用收取,手续费{{tax}}%

View File

@@ -4,130 +4,65 @@
"ignore": []
},
"setting": {
"urlCheck": false,
"bundle": false,
"userConfirmedBundleSwitch": false,
"urlCheck": true,
"scopeDataCheck": false,
"coverView": true,
"es6": true,
"enhance": false,
"postcss": true,
"compileHotReLoad": false,
"lazyloadPlaceholderEnable": false,
"preloadBackgroundData": false,
"minified": true,
"newFeature": false,
"coverView": true,
"nodeModules": false,
"autoAudits": false,
"showShadowRootInWxmlPanel": true,
"scopeDataCheck": false,
"newFeature": false,
"uglifyFileName": false,
"checkInvalidKey": true,
"checkSiteMap": true,
"uploadWithSourceMap": true,
"compileHotReLoad": false,
"useIsolateContext": true,
"nodeModules": false,
"enhance": true,
"useMultiFrameRuntime": true,
"useApiHook": true,
"useApiHostProcess": true,
"babelSetting": {
"ignore": [],
"disablePlugins": [],
"outputPath": ""
},
"enableEngineNative": false,
"useIsolateContext": true,
"userConfirmedBundleSwitch": false,
"useApiHostProcess": false,
"showShadowRootInWxmlPanel": true,
"packNpmManually": false,
"enableEngineNative": false,
"packNpmRelationList": [],
"minifyWXSS": true,
"showES6CompileOption": false
},
"compileType": "miniprogram",
"libVersion": "2.18.1",
"libVersion": "2.19.1",
"appid": "wx8e424dbdc443381f",
"projectname": "%E4%BA%BF%E6%97%B6%E4%BB%A3%EF%BC%88%E6%B5%8B%E8%AF%95%EF%BC%89",
"projectname": "本时生活-小程序",
"debugOptions": {
"hidedInDevtools": []
},
"scripts": {},
"staticServerOptions": {
"baseURL": "",
"servePath": ""
},
"isGameTourist": false,
"simulatorType": "wechat",
"simulatorPluginLibVersion": {},
"condition": {
"plugin": {
"search": {
"list": []
},
"conversation": {
"list": []
},
"game": {
"list": []
},
"plugin": {
"list": []
},
"gamePlugin": {
"list": []
},
"miniprogram": {
"list": [
{
"id": 0,
"name": "pages/user/user",
"pathName": "pages/user/user",
"query": "",
"scene": null
},
{
"id": 1,
"name": "pages/activityInfo/activityInfo",
"pathName": "pages/activityInfo/activityInfo",
"query": "",
"scene": null
},
{
"id": -1,
"name": "pages/activityOrder/activityOrder",
"pathName": "pages/activityOrder/activityOrder",
"query": "",
"scene": null
},
{
"id": 3,
"name": "pages/activate/activate",
"pathName": "pages/activate/activate",
"query": "",
"scene": null
},
{
"id": -1,
"name": "pages/index/index",
"pathName": "pages/index/index",
"query": "",
"scene": null
},
{
"id": 5,
"name": "pages/login/login",
"pathName": "pages/login/login",
"query": "",
"scene": null
},
{
"id": -1,
"name": "pages/coupon/coupon",
"pathName": "pages/coupon/coupon",
"query": "",
"scene": null
},
{
"name": "pages/frozen/frozen",
"pathName": "pages/frozen/frozen",
"query": "",
"scene": null
},
{
"name": "pages/account/account",
"pathName": "pages/account/account",
"query": "",
"scene": null
},
{
"name": "pages/packet/packet",
"pathName": "pages/packet/packet",
"query": "",
"scene": null
}
]
"list": []
}
}
}

View File

@@ -67,6 +67,84 @@
"pathName": "pages/userGoods/userGoods",
"query": "",
"scene": null
},
{
"name": "pages/index/index",
"pathName": "pages/index/index",
"query": "parent_id=2",
"scene": null
},
{
"name": "pages/index/index",
"pathName": "pages/index/index",
"query": "parent_id=2",
"scene": null
},
{
"name": "pages/index/index",
"pathName": "pages/index/index",
"query": "",
"scene": null
},
{
"name": "pages/index/index",
"pathName": "pages/index/index",
"query": "type=share",
"scene": null
},
{
"name": "pages/index/index",
"pathName": "pages/index/index",
"query": "",
"scene": null
},
{
"name": "pages/index/index",
"pathName": "pages/index/index",
"query": "parent_id=2",
"scene": null
},
{
"name": "pages/index/index",
"pathName": "pages/index/index",
"query": "",
"scene": null
},
{
"name": "pages/code/code",
"pathName": "pages/code/code",
"query": "parent_id=2",
"scene": null
},
{
"name": "储值分享",
"pathName": "/pages/userStored/userStored",
"query": "parent_id=2&type=shareStored",
"scene": null
},
{
"name": "产品分享",
"pathName": "pages/userGoods/goodsDet/goodsDet",
"query": "parent_id=2&rightid=41&type=shareGoods",
"scene": null
},
{
"name": "邀请用户进入",
"pathName": "pages/index/index",
"query": "parent_id=2&type=shareLogin",
"scene": null
},
{
"name": "pages/myBalance/myBalance",
"pathName": "pages/myBalance/myBalance",
"query": "",
"scene": null
},
{
"name": "通过朋友圈进入",
"pathName": "pages/code/code",
"query": "type=shareLogin",
"scene": 1155
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
static/img/userOrder_11.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB