分享朋友圈调整
This commit is contained in:
@@ -32,9 +32,17 @@ const resetPassword = data => req({
|
||||
data
|
||||
})
|
||||
|
||||
/**
|
||||
* 隐私协议
|
||||
*/
|
||||
const richText = id => req({
|
||||
url: "cms/pages/" + id
|
||||
})
|
||||
|
||||
export default ({
|
||||
Login,
|
||||
register,
|
||||
getSms,
|
||||
resetPassword
|
||||
resetPassword,
|
||||
richText
|
||||
})
|
||||
@@ -14,11 +14,16 @@ const updIdcard = (path, data) => upload({
|
||||
})
|
||||
|
||||
// 提交身份信息
|
||||
const ocr = data => req({
|
||||
url : "user/certification",
|
||||
data,
|
||||
method : "POST"
|
||||
})
|
||||
const ocr = data => {
|
||||
|
||||
console.log(data)
|
||||
|
||||
return req({
|
||||
url : "user/certification",
|
||||
data,
|
||||
method : "POST"
|
||||
})
|
||||
}
|
||||
|
||||
// 获取认证信息
|
||||
const getInfo = () => req({
|
||||
|
||||
@@ -6,13 +6,10 @@
|
||||
import { errInfo } from './err'
|
||||
import { updToken } from './updateToken'
|
||||
|
||||
// 请求方式配置
|
||||
// //正式地址
|
||||
// https://api.xhtest.douhuofalv.com/api/ //测试地址
|
||||
// wx989712ad2d06a40b 测试appid 三猿
|
||||
// wx7662853c6f7f46b4 正式appid
|
||||
// 正式环境
|
||||
const api = "https://api.xhtest.douhuofalv.com/api/" // 测试环境
|
||||
// 正式地址
|
||||
const api = "https://api.xuanhuojk.com/api/"
|
||||
// 测试地址
|
||||
// const api = "https://api.xhtest.douhuofalv.com/api/"
|
||||
const header = {
|
||||
"Accept" : "application/json"
|
||||
}
|
||||
|
||||
3
app.json
3
app.json
@@ -37,7 +37,8 @@
|
||||
"pages/refund/aftersale/aftersale",
|
||||
"pages/refund/info/info",
|
||||
"pages/refund/deliver/deliver",
|
||||
"pages/refund/logs/logs"
|
||||
"pages/refund/logs/logs",
|
||||
"pages/richText/richText"
|
||||
],
|
||||
"window": {
|
||||
"backgroundTextStyle": "light",
|
||||
|
||||
@@ -76,22 +76,24 @@ Page({
|
||||
*/
|
||||
onSubmitIdcard(e){
|
||||
wx.showLoading({
|
||||
title: '提交证件信息...',
|
||||
mask : true
|
||||
title: '提交证件信息...'
|
||||
// mask : true
|
||||
})
|
||||
let { address } = e.detail.value
|
||||
wx.$api.idcard.ocr({
|
||||
front_card: this.data.front.path,
|
||||
back_card : this.data.back.path,
|
||||
front_card : this.data.front != null ? this.data.front.path : '',
|
||||
back_card : this.data.back != null ? this.data.back.path : '',
|
||||
address
|
||||
}).then(res => {
|
||||
let { name, id_card, created_at, verified, need_sign, address } = res.data
|
||||
let { address, name, id_card, created_at, verified, need_sign, is_sign_contract } = res.data
|
||||
this.setData({
|
||||
info : { name, id_card, created_at, verified, need_sign, address },
|
||||
procedure : need_sign ? 2 : 3,
|
||||
isSignContract : data.is_sign_contract,
|
||||
isSignContract : is_sign_contract,
|
||||
})
|
||||
wx.hideLoading()
|
||||
}).catch(err => {
|
||||
console.log(err)
|
||||
})
|
||||
},
|
||||
/**
|
||||
|
||||
@@ -44,8 +44,6 @@ Page({
|
||||
password : value.password,
|
||||
}
|
||||
wx.$api.auth.Login(data).then(res => {
|
||||
// 存储邀请码
|
||||
// let { invite, }
|
||||
// 存储登录信息
|
||||
wx.setStorage({
|
||||
key : 'token',
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<input type="number" placeholder="请输入账号" maxlength="11" name="username" />
|
||||
</view>
|
||||
<view class="inputs">
|
||||
<input type="safe-password" password placeholder="请输入密码" name="password" />
|
||||
<input password placeholder="请输入密码" name="password" />
|
||||
</view>
|
||||
<view class="forget"><navigator hover-class="none" url="/pages/resetPassword/resetPassword">忘记密码?</navigator></view>
|
||||
<button class="btn" type="default" form-type="submit">立即登录</button>
|
||||
@@ -20,6 +20,6 @@
|
||||
<checkbox color="#da2b54" checked="{{checked}}" size='10' class="radioGroup" />
|
||||
</checkbox-group>
|
||||
<view class="agreement-text">
|
||||
我已阅读并同意<navigator hover-class="none" url="./agreement/index?type=secret">《隐私协议》</navigator>和<navigator hover-class="none" url="./agreement/index?type=protocol">《服务协议》</navigator>
|
||||
我已阅读并同意<navigator hover-class="none" url="/pages/richText/richText?id=4">《隐私协议》</navigator>和<navigator hover-class="none" url="/pages/richText/richText?id=3">《服务协议》</navigator>
|
||||
</view>
|
||||
</view>
|
||||
@@ -9,16 +9,20 @@ Page({
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
disabled : true,//按钮
|
||||
disabled : true, //按钮
|
||||
skuId : '',
|
||||
goodsQty : '', // 产品数量
|
||||
address : '', // 地址
|
||||
addressId : '', // 地址id
|
||||
goodskData : '', // 数据
|
||||
amount : '', // 商品总金额
|
||||
total : '', // 支付金额
|
||||
freight : '', // 运费
|
||||
weight : '', // 重量
|
||||
goodsQty : '', // 产品数量
|
||||
address : '', // 地址
|
||||
goodskData : '', // 数据
|
||||
amount : '', // 商品总金额
|
||||
total : '', // 支付金额
|
||||
freight : '', // 运费
|
||||
weight : '', // 重量
|
||||
distribution : [
|
||||
{ type: 0, title: "快递" },
|
||||
{ type: 1, title: "自提" },
|
||||
],
|
||||
distributionIndex: 0
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -32,30 +36,43 @@ Page({
|
||||
// 获取商品下单信息
|
||||
this.placeInfo(options.skuId, options.qty);
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面显示
|
||||
* 配送方式选择
|
||||
*/
|
||||
onShow() {},
|
||||
|
||||
distributionChange(e){
|
||||
if(e.detail.value === this.data.distributionIndex) return
|
||||
this.setData({
|
||||
distributionIndex: e.detail.value
|
||||
})
|
||||
this.placeInfo(this.data.skuId, this.data.goodsQty);
|
||||
},
|
||||
/**
|
||||
* 商品下单信息
|
||||
*/
|
||||
placeInfo(skuid, qty) {
|
||||
placeInfo(skuid, qty, type) {
|
||||
wx.showLoading({
|
||||
title: '加载中...',
|
||||
mask : true
|
||||
})
|
||||
wx.$api.mall.place({
|
||||
goods_sku_id:skuid,
|
||||
qty: qty,
|
||||
address_id: this.data.addressId
|
||||
goods_sku_id : skuid,
|
||||
qty : qty,
|
||||
address_id : this.data.address.address_id || '',
|
||||
delivery_type: this.data.distributionIndex
|
||||
}).then(res => {
|
||||
if(type != 'chooseAdd'){
|
||||
this.setData({
|
||||
address: res.data.address,
|
||||
})
|
||||
}
|
||||
this.setData({
|
||||
address : res.data.address,
|
||||
addressId : res.data.address.address_id,
|
||||
goodskData: res.data.detail,
|
||||
amount : res.data.amount,
|
||||
total : res.data.total,
|
||||
freight : res.data.freight,
|
||||
weight : res.data.weight
|
||||
})
|
||||
wx.hideLoading()
|
||||
}).catch(err =>{})
|
||||
},
|
||||
|
||||
@@ -70,16 +87,13 @@ Page({
|
||||
wx.$api.mall.placeTrue({
|
||||
goods_sku_id : this.data.skuId,
|
||||
qty : this.data.goodsQty,
|
||||
address_id : this.data.addressId
|
||||
address_id : this.data.address.address_id,
|
||||
delivery_type : this.data.distributionIndex
|
||||
}).then(res => {
|
||||
|
||||
console.log(res)
|
||||
|
||||
wx.redirectTo({
|
||||
url: '/pages/pay/index?params=' + encodeURIComponent(JSON.stringify(res.data))
|
||||
})
|
||||
}).catch(() =>{}).finally(() => {
|
||||
wx.hideLoading()
|
||||
})
|
||||
}).catch(() =>{}).finally(() => {})
|
||||
},
|
||||
})
|
||||
@@ -1,6 +1,6 @@
|
||||
<!-- 地址 -->
|
||||
<view class="address">
|
||||
<navigator hover-class="none" url="/pages/site/index?type=goodsAddress" class="address-cont" wx:if="{{address}}">
|
||||
<view class="address" wx:if="{{distributionIndex == 0}}">
|
||||
<navigator hover-class="none" url="/pages/site/index?type=goodsAddress&skuid={{skuId}}&qty={{goodsQty}}" class="address-cont" wx:if="{{address}}">
|
||||
<view class="address-top">
|
||||
<view class="address-area">
|
||||
<image class="address-icon" src="/static/icons/address.png" mode="widthFix"></image>{{address.province.name}}{{address.city.name}}
|
||||
@@ -13,7 +13,7 @@
|
||||
<image class="address-arrow" src="/static/icons/orderArrow.png"></image>
|
||||
</navigator>
|
||||
<view class="address-add" wx:else>
|
||||
<navigator hover-class="none" url="/pages/site/index?type=goodsAddress" class="address-go">新增收货地址 +</navigator>
|
||||
<navigator hover-class="none" url="/pages/site/index?type=goodsAddress&skuid={{skuId}}&qty={{goodsQty}}" class="address-go">新增收货地址 +</navigator>
|
||||
</view>
|
||||
<image class="address-img" src="/static/imgs/address.png" mode="widthFix"></image>
|
||||
</view>
|
||||
@@ -34,9 +34,19 @@
|
||||
</block>
|
||||
</view>
|
||||
|
||||
<!-- 规格 -->
|
||||
<!-- 配送方式 -->
|
||||
<view class="label">
|
||||
<view class="label-item">
|
||||
<view class="label-name">配送方式</view>
|
||||
<picker range="{{distribution}}" range-key="title" class="label-picker" value="{{distributionIndex}}" bindchange="distributionChange">
|
||||
<view class="label-picker-val">{{distribution[distributionIndex].title}}<image class="label-picker-icon" src="/static/icons/arrow_more.png"></image></view>
|
||||
</picker>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 规格 -->
|
||||
<view class="label">
|
||||
<view class="label-item" wx:if="{{distributionIndex == 0}}">
|
||||
<view class="label-name">快递</view>
|
||||
<view class="label-text">{{freight == 0 ? '免邮' : freight + '元'}}</view>
|
||||
</view>
|
||||
|
||||
@@ -10,6 +10,7 @@ page {
|
||||
border-radius: 15rpx;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
margin-bottom: 30rpx;
|
||||
}
|
||||
|
||||
.address-arrow {
|
||||
@@ -77,7 +78,7 @@ page {
|
||||
|
||||
.list-goods {
|
||||
background-color: #FFFFFF;
|
||||
margin: 30rpx 0;
|
||||
margin: 0 0 30rpx 0;
|
||||
display: flex;
|
||||
padding: 30rpx;
|
||||
border-radius: 15rpx;
|
||||
@@ -124,6 +125,7 @@ page {
|
||||
border-radius: 15rpx;
|
||||
overflow: hidden;
|
||||
box-sizing: border-box;
|
||||
margin-bottom: 30rpx;
|
||||
}
|
||||
|
||||
.label-item {
|
||||
@@ -149,6 +151,10 @@ page {
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.label-picker{ width: 70%; }
|
||||
.label-picker-val{ text-align: right; display: flex; align-items: center; justify-content: flex-end;}
|
||||
.label-picker-icon{ width: 24rpx; height: 24rpx; margin-left: 10rpx; }
|
||||
|
||||
|
||||
/*checkbox选中后样式 */
|
||||
.label-text-checkbox {
|
||||
|
||||
@@ -32,8 +32,8 @@ Page({
|
||||
onLoad(options) {
|
||||
this.setData({
|
||||
goodsId: options.id,
|
||||
invite : options.invite || ''
|
||||
})
|
||||
getApp().globalData.invite = options.invite || ''
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -44,27 +44,95 @@ Page({
|
||||
this.goodsInfo();
|
||||
},
|
||||
|
||||
/**
|
||||
* 输入产品数量
|
||||
*/
|
||||
goodsNumberInput(e){
|
||||
let inventory = this.data.selectSkusValues.stock
|
||||
if(inventory < e.detail.value ){
|
||||
wx.showToast({
|
||||
title: '超出库存数量',
|
||||
icon : 'none',
|
||||
})
|
||||
this.setData({
|
||||
qtyNumber: Math.min(inventory, e.detail.value)
|
||||
})
|
||||
return
|
||||
}
|
||||
this.setData({
|
||||
qtyNumber: e.detail.value
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 离开产品数量
|
||||
*/
|
||||
goodsNumberBlur(e){
|
||||
let { value } = e.detail
|
||||
if(value == '' || value <= 0){
|
||||
this.setData({
|
||||
qtyNumber: 1
|
||||
})
|
||||
}
|
||||
},
|
||||
/**
|
||||
* 商品详情
|
||||
*/
|
||||
goodsInfo() {
|
||||
// 因分享朋友圈启动时未挂载全局接口方法,故这里只能使用微信原生方法
|
||||
wx.showLoading({
|
||||
title: '加载中...',
|
||||
mask : true
|
||||
})
|
||||
wx.$api.mall.goodsSee(this.data.goodsId).then(res => {
|
||||
this.setData({
|
||||
goodsData : res.data,
|
||||
mallContent : res.data.content.replace(/\<img/gi, '<img style="max-width:100%;height:auto;display:block;"'),
|
||||
skus : res.data.skus,
|
||||
skuid : res.data.skus[0].sku_id,
|
||||
selectSkusValues: res.data.skus[0],
|
||||
specselect : res.data.skus[0].unit.split('|'),
|
||||
invite : res.data.invite
|
||||
})
|
||||
}).catch(err =>{}).finally(() => {
|
||||
wx.hideLoading()
|
||||
wx.request({
|
||||
url : 'https://api.xhtest.douhuofalv.com/api/mall/goods/' + this.data.goodsId,
|
||||
header : {
|
||||
"Accept" : "application/json",
|
||||
"channel" : "client",
|
||||
"Authorization" : wx.getStorageSync("token") || ""
|
||||
},
|
||||
success: res => {
|
||||
wx.hideLoading()
|
||||
let { statusCode, data } = res
|
||||
if(statusCode == 200){
|
||||
let dataOBJ = data.data
|
||||
this.setData({
|
||||
goodsData : dataOBJ,
|
||||
mallContent : dataOBJ.content.replace(/\<img/gi, '<img style="max-width:100%;height:auto;display:block;"'),
|
||||
skus : dataOBJ.skus,
|
||||
skuid : dataOBJ.skus[0].sku_id,
|
||||
selectSkusValues: dataOBJ.skus[0],
|
||||
specselect : dataOBJ.skus[0].unit.split('|'),
|
||||
invite : dataOBJ.invite
|
||||
})
|
||||
return
|
||||
}
|
||||
wx.showToast({
|
||||
title: data.message,
|
||||
icon : 'none'
|
||||
})
|
||||
},
|
||||
fail: err => {
|
||||
wx.showToast({
|
||||
title: err.errMsg,
|
||||
icon : 'none'
|
||||
})
|
||||
}
|
||||
})
|
||||
// wx.$api.mall.goodsSee(this.data.goodsId).then(res => {
|
||||
// this.setData({
|
||||
// goodsData : res.data,
|
||||
// mallContent : res.data.content.replace(/\<img/gi, '<img style="max-width:100%;height:auto;display:block;"'),
|
||||
// skus : res.data.skus,
|
||||
// skuid : res.data.skus[0].sku_id,
|
||||
// selectSkusValues: res.data.skus[0],
|
||||
// specselect : res.data.skus[0].unit.split('|'),
|
||||
// invite : res.data.invite
|
||||
// })
|
||||
// }).catch(err =>{
|
||||
// console.log(err)
|
||||
// }).finally(() => {
|
||||
// wx.hideLoading()
|
||||
// })
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -185,11 +253,11 @@ Page({
|
||||
} = this.data.selectSkusValues;
|
||||
if (stock > 0) {
|
||||
this.setData({
|
||||
skuid: sku_id,
|
||||
goodsSize: false
|
||||
skuid : sku_id,
|
||||
goodsSize : false
|
||||
})
|
||||
wx.navigateTo({
|
||||
url: '/pages/mall/confirm/confirm?skuId=' + sku_id + '&qty=' + this.data.qtyNumber
|
||||
url: '/pages/mall/confirm/confirm?skuId=' + sku_id + '&qty=' + this.data.qtyNumber || 1
|
||||
})
|
||||
} else {
|
||||
uni.showToast({
|
||||
@@ -270,7 +338,7 @@ Page({
|
||||
onShareTimeline(){
|
||||
return{
|
||||
title : this.data.goodsData.name,
|
||||
query : '/pages/mall/details/details?id=' + this.data.goodsId + '&invite=' + this.data.invite,
|
||||
query : 'id=' + this.data.goodsId + '&invite=' + this.data.invite,
|
||||
imageUrl : this.data.goodsData.cover
|
||||
}
|
||||
}
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
<text class="goods-size-title">数量</text>
|
||||
<view class="goods-number" wx:if="{{selectSkusValues.stock != 0}}">
|
||||
<view class="goods-number-btn" bindtap="goodsNumber" data-type="remove">-</view>
|
||||
<input class="goods-number-input" value="{{qtyNumber}}" type="number" bindinput="goodsNumberInput" disabled></input>
|
||||
<input class="goods-number-input" value="{{qtyNumber}}" type="number" bindinput="goodsNumberInput" bindblur="goodsNumberBlur"></input>
|
||||
<view class="goods-number-btn" bindtap="goodsNumber" data-type="plus">+</view>
|
||||
</view>
|
||||
<view class="goods-number" wx:else>
|
||||
@@ -93,6 +93,6 @@
|
||||
<view class="active">抱歉,商品库存不足了 ~</view>
|
||||
</view>
|
||||
<view class="goods-size-btn" wx:else>
|
||||
<view bindtap="buyTap">立即购买</view>
|
||||
<button bindtap="buyTap" size="default" disabled="{{selectSkusValues.stock == 0 || qtyNumber == 0}}">立即购买</button>
|
||||
</view>
|
||||
</view>
|
||||
@@ -404,9 +404,11 @@ button[disabled]{
|
||||
border-right: 2rpx solid #d7d7d7;
|
||||
}
|
||||
|
||||
.goods-size-btn view {
|
||||
.goods-size-btn button[size="default"] {
|
||||
text-align: center;
|
||||
line-height: 90rpx;
|
||||
padding: 0;
|
||||
border-radius: 0;
|
||||
font-size: 28rpx;
|
||||
background: #da2b54;
|
||||
color: white;
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
<view class="nowrap goodsItem-text">{{item.description}}</view>
|
||||
<view class="goodsItem-tips">
|
||||
<view class="goodsItem-price">¥{{item.original_price}}</view>
|
||||
<view class="goodsItem-sales">月销 {{item.sales}}</view>
|
||||
<view class="goodsItem-sales">浏览 {{item.clicks}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -25,11 +25,15 @@ Page({
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
let sceneCode = options.scene || null
|
||||
if(sceneCode != null ){
|
||||
let inviteCode = decodeURIComponent(sceneCode)
|
||||
let invite = inviteCode.match(new RegExp("(^|&)" + 'invite' + "=([^&]*)(&|$)", "i"));
|
||||
getApp().globalData.invite = invite[2] || null
|
||||
if(options.invite){
|
||||
getApp().globalData.invite = options.invite || null
|
||||
}else{
|
||||
let sceneCode = options.scene || null
|
||||
if(sceneCode != null ){
|
||||
let inviteCode = decodeURIComponent(sceneCode)
|
||||
let invite = inviteCode.match(new RegExp("(^|&)" + 'invite' + "=([^&]*)(&|$)", "i"));
|
||||
getApp().globalData.invite = invite[2] || null
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -170,6 +174,21 @@ Page({
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 开通vip
|
||||
*/
|
||||
onVip(){
|
||||
if(wx.getStorageSync("token") != ''){
|
||||
wx.navigateTo({
|
||||
url: '/pages/idcard/idcard',
|
||||
})
|
||||
return
|
||||
}
|
||||
wx.navigateTo({
|
||||
url: "/pages/login/index"
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 页面相关事件处理函数--监听用户下拉动作
|
||||
*/
|
||||
|
||||
@@ -45,6 +45,11 @@
|
||||
<image class="capsule-src" src="/static/imgs/capsule.png" mode="widthFix" bind:tap="onCapsule"></image>
|
||||
</view>
|
||||
|
||||
<!-- 开通vip -->
|
||||
<view class="capsule" wx:if="{{certification}}">
|
||||
<image class="capsule-src" src="/static/imgs/vip.png" mode="widthFix" bind:tap="onVip"></image>
|
||||
</view>
|
||||
|
||||
<!-- 推荐 -->
|
||||
<view class="suggest">
|
||||
<view class="suggestLeft">
|
||||
@@ -123,7 +128,7 @@
|
||||
<view class="nowrap goodsItem-text">{{item.description}}</view>
|
||||
<view class="goodsItem-tips">
|
||||
<view class="goodsItem-price">¥{{item.original_price}}</view>
|
||||
<view class="goodsItem-sales">游览 {{item.clicks}}</view>
|
||||
<view class="goodsItem-sales">浏览 {{item.clicks}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</navigator>
|
||||
|
||||
@@ -10,13 +10,18 @@
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="orderData-cont-label">
|
||||
<view class="orderData-cont-label" wx:if="{{goodsData.delivery_type === 0}}">
|
||||
<image class="orderData-cont-img" src="/static/icons/siteIcon.png" mode="aspectFill"></image>
|
||||
<view class="orderData-cont-text orderData-cont-site">
|
||||
<view class="orderData-cont-name">{{ goodsData.express.name }} <text>{{ goodsData.express.mobile }}</text></view>
|
||||
<view class="orderData-cont-copy">
|
||||
{{ goodsData.express.full_address }}
|
||||
</view>
|
||||
<view class="orderData-cont-copy">{{ goodsData.express.full_address }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="orderData-cont-label" wx:if="{{goodsData.delivery_type === 1}}">
|
||||
<image class="orderData-cont-img" src="/static/icons/siteIcon.png" mode="aspectFill"></image>
|
||||
<view class="orderData-cont-text orderData-cont-site">
|
||||
<view class="orderData-cont-name">提货地址</view>
|
||||
<view class="orderData-cont-copy">{{ goodsData.pickup.address }}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -40,45 +45,61 @@
|
||||
</block>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="While reserveCont">
|
||||
<view class="reserveCont-title">订单信息</view>
|
||||
<view class="reserve-label">
|
||||
<view class="reserve-name">交易时间</view>
|
||||
<view class="reserve-name">下单人</view>
|
||||
<view class="reserve-text">{{goodsData.user.name}}</view>
|
||||
</view>
|
||||
<view class="reserve-label">
|
||||
<view class="reserve-name">下单人手机号</view>
|
||||
<view class="reserve-text">{{goodsData.user.mobile}}</view>
|
||||
</view>
|
||||
<view class="reserve-label">
|
||||
<view class="reserve-name">下单时间</view>
|
||||
<view class="reserve-text">{{goodsData.created_at}}</view>
|
||||
</view>
|
||||
<view class="reserve-label">
|
||||
<view class="reserve-name">运费</view>
|
||||
<view class="reserve-text">{{goodsData.freight == 0 ? '免邮' : goodsData.freight + '元'}}</view>
|
||||
<view class="reserve-name">付款时间</view>
|
||||
<view class="reserve-text">{{goodsData.paid_at}}</view>
|
||||
</view>
|
||||
<view class="reserve-label">
|
||||
<view class="reserve-name">交易状态</view>
|
||||
<view class="reserve-text reserve-status">{{goodsData.state}}</view>
|
||||
<view class="reserve-name">配送运费</view>
|
||||
<view class="reserve-text">{{goodsData.freight == 0 ? '免邮' : goodsData.freight}}</view>
|
||||
</view>
|
||||
<view class="reserve-label">
|
||||
<view class="reserve-name">订单金额</view>
|
||||
<view class="reserve-text">{{goodsData.amount}}</view>
|
||||
</view>
|
||||
<view class="reserve-label">
|
||||
<view class="reserve-name">实付金额</view>
|
||||
<view class="reserve-text reserve-price">¥{{goodsData.total}}</view>
|
||||
</view>
|
||||
<!--
|
||||
|
||||
<view class="reserve-label">
|
||||
<view class="reserve-name">实付款</view>
|
||||
<view class="reserve-text reserve-price">¥{{goodsData.total}}</view>
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
|
||||
<view class="While reserveCont" wx:if="{{goodsData.express.express_no}}">
|
||||
<view class="reserveCont-title">物流信息</view>
|
||||
<view class="reserve-label">
|
||||
<view class="reserve-name">物流名称</view>
|
||||
<view class="reserve-text">{{goodsData.express.express_name}}</view>
|
||||
<view class="reserve-name">快递公司</view>
|
||||
<view class="reserve-text">{{goodsData.express.express_name || '-'}}</view>
|
||||
</view>
|
||||
<view class="reserve-label">
|
||||
<view class="reserve-name">物流单号</view>
|
||||
<view class="reserve-name">快递单号</view>
|
||||
<view class="reserve-text reserve-text-copy">
|
||||
{{goodsData.express.express_no}}<view bindtap="copyExpress" class="reserve-text-tap" data-no="{{goodsData.express.express_no}}">复制</view>
|
||||
{{goodsData.express.express_no || '-'}}<view bindtap="copyExpress" class="reserve-text-tap" data-no="{{goodsData.express.express_no}}">复制</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="reserve-label">
|
||||
<!-- <view class="reserve-label">
|
||||
<view class="reserve-name">查看物流信息</view>
|
||||
<view class="reserve-text reserve-text-btn" bindtap="h5url">
|
||||
去查看
|
||||
</view>
|
||||
</view>
|
||||
</view> -->
|
||||
</view>
|
||||
</view>
|
||||
<view class="order-data-footer">
|
||||
|
||||
@@ -33,12 +33,6 @@
|
||||
<view class="list-total active" wx:else>
|
||||
兑换券兑换
|
||||
</view>
|
||||
<view class="list-tips">
|
||||
<view class="list-tips-left">
|
||||
<image class="list-tips-img" src="https://cdn.shuiganying.com/images/2023/04/04/d4543817b05d3aaac04dfb85ff9f8f8c.png"></image>收货城市
|
||||
</view>
|
||||
<view class="nowrap list-tips-right">{{item.province_city}}</view>
|
||||
</view>
|
||||
<view class="list-operate">
|
||||
<view class="list-more">
|
||||
<view class="list-more-go" bindtap="operateMore" data-order_no="{{item.order_no}}" wx:if="{{item.can.cancel}}">更多</view>
|
||||
|
||||
@@ -143,6 +143,9 @@ page {
|
||||
|
||||
.list-operate {
|
||||
display: flex;
|
||||
margin-top: 20rpx;
|
||||
padding-top: 30rpx;
|
||||
border-top: solid 1rpx #f7f8f9;
|
||||
}
|
||||
|
||||
.list-more {
|
||||
|
||||
@@ -27,7 +27,6 @@ Page({
|
||||
*/
|
||||
getPayState(trade_id){
|
||||
wx.$api.pay.payState(trade_id).then(res => {
|
||||
console.log(res.data.is_paid)
|
||||
let { is_paid } = res.data
|
||||
if(is_paid){
|
||||
this.setData({
|
||||
|
||||
@@ -20,8 +20,6 @@ Page({
|
||||
})
|
||||
wx.$api.refund.refundPreposition(options.id).then(res => {
|
||||
let { title, order } = res.data;
|
||||
console.log(order)
|
||||
console.log(title)
|
||||
this.setData({
|
||||
title,
|
||||
order,
|
||||
@@ -34,7 +32,9 @@ Page({
|
||||
* 选择退货理由
|
||||
*/
|
||||
onRadio(e){
|
||||
console.log(e.detail.value)
|
||||
this.setData({
|
||||
titleVal: e.detail.value
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 选择图片上传
|
||||
@@ -65,6 +65,7 @@ Page({
|
||||
mask : true
|
||||
})
|
||||
wx.$api.refund.submitRefund(this.data.order.order_no, data).then(res => {
|
||||
wx.hideLoading()
|
||||
wx.showModal({
|
||||
title : '提示',
|
||||
content : res.data,
|
||||
@@ -77,6 +78,6 @@ Page({
|
||||
wx.hideLoading()
|
||||
}
|
||||
})
|
||||
})
|
||||
}).catch(err => {})
|
||||
}
|
||||
})
|
||||
@@ -14,10 +14,13 @@
|
||||
<label>{{item.state.text}}</label>
|
||||
<view class="order-des">{{item.state.remark}}</view>
|
||||
</view>
|
||||
<view class="order-btns">
|
||||
<view class="item item-cancel" wx:if="{{item.can.user_cancel}}" bind:tap="onCancel" data-no="{{item.refund_no}}">取消售后</view>
|
||||
<view class="item item-ok" bind:tap="onInfo" data-no="{{item.refund_no}}">售后详情</view>
|
||||
<view class="item item-ok" wx:if="{{item.can.user_deliver}}" bind:tap="onDeliver" data-no="{{item.refund_no}}">寄回商品</view>
|
||||
<view class="order-footer">
|
||||
<view class="order-total">总退款<text>{{item.refund_total}}</text></view>
|
||||
<view class="order-btns">
|
||||
<view class="item item-cancel" wx:if="{{item.can.user_cancel}}" bind:tap="onCancel" data-no="{{item.refund_no}}">取消售后</view>
|
||||
<view class="item item-ok" bind:tap="onInfo" data-no="{{item.refund_no}}">售后详情</view>
|
||||
<view class="item item-ok" wx:if="{{item.can.user_deliver}}" bind:tap="onDeliver" data-no="{{item.refund_no}}">寄回商品</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="pagesLoding" wx:if="{{lodingStats}}">
|
||||
|
||||
@@ -16,8 +16,13 @@
|
||||
.order-state label{ width: 180rpx; }
|
||||
.order-des { padding-left: 20rpx; color: #777; width: calc(100% - 180rpx); }
|
||||
|
||||
/* 退款统计 */
|
||||
.order-footer{ display: flex; align-items: center; justify-content: space-between; border-top: solid 1rpx #f9f9f9; padding-top: 20rpx;}
|
||||
.order-total{ color: #da2b54; font-size: 28rpx; }
|
||||
.order-total text{ font-weight: bold; padding-left: 5rpx; }
|
||||
|
||||
/* 订单操作 */
|
||||
.order-btns { border-top: solid 1rpx #f9f9f9; display: flex; justify-content: flex-end; padding-top: 20rpx; }
|
||||
.order-btns { display: flex; justify-content: flex-end; }
|
||||
.order-btns .item{ font-size: 26rpx; margin-left: 20rpx; color: #da2b54; line-height: 56rpx; border: solid 1rpx #da2b54; padding: 0 20rpx; border-radius: 28rpx; }
|
||||
|
||||
/* 售后服务 */
|
||||
|
||||
@@ -32,33 +32,29 @@ page {
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
position: relative;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.inputs input {
|
||||
width: 100%;
|
||||
height: 100rpx;
|
||||
line-height: 100rpx;
|
||||
border: none;
|
||||
font-size: 32rpx;
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.inputs-see {
|
||||
position: absolute;
|
||||
right: 50rpx;
|
||||
top: 32rpx;
|
||||
width: 38rpx;
|
||||
height: 38rpx;
|
||||
z-index: 9;
|
||||
margin-left: 30rpx;
|
||||
}
|
||||
|
||||
.sms-btn[size='mini'] {
|
||||
font-weight: normal;
|
||||
height: 100rpx;
|
||||
line-height: 100rpx;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 30rpx;
|
||||
margin: 0;
|
||||
padding: 0 0 0 30rpx;
|
||||
border-radius: 0;
|
||||
border-left: solid 1rpx #f2f2f2;
|
||||
color: #da2b54 !important;
|
||||
|
||||
@@ -32,33 +32,29 @@ page {
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
position: relative;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.inputs input {
|
||||
width: 100%;
|
||||
height: 100rpx;
|
||||
line-height: 100rpx;
|
||||
border: none;
|
||||
font-size: 32rpx;
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.inputs-see {
|
||||
position: absolute;
|
||||
right: 50rpx;
|
||||
top: 32rpx;
|
||||
width: 38rpx;
|
||||
height: 38rpx;
|
||||
z-index: 9;
|
||||
margin-left: 30rpx;
|
||||
}
|
||||
|
||||
.sms-btn[size='mini'] {
|
||||
font-weight: normal;
|
||||
height: 100rpx;
|
||||
line-height: 100rpx;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 30rpx;
|
||||
margin: 0;
|
||||
padding: 0 0 0 30rpx;
|
||||
border-radius: 0;
|
||||
border-left: solid 1rpx #f2f2f2;
|
||||
color: #da2b54 !important;
|
||||
|
||||
28
pages/richText/richText.js
Normal file
28
pages/richText/richText.js
Normal file
@@ -0,0 +1,28 @@
|
||||
Page({
|
||||
|
||||
/**
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
content: ""
|
||||
},
|
||||
|
||||
/**
|
||||
* 生命周期函数--监听页面加载
|
||||
*/
|
||||
onLoad(options) {
|
||||
wx.showLoading({
|
||||
title: '加载中...',
|
||||
mask : true
|
||||
})
|
||||
wx.$api.auth.richText(options.id).then(res => {
|
||||
this.setData({
|
||||
content: res.data.content
|
||||
})
|
||||
wx.setNavigationBarTitle({
|
||||
title: res.data.title,
|
||||
})
|
||||
wx.hideLoading()
|
||||
})
|
||||
}
|
||||
})
|
||||
3
pages/richText/richText.json
Normal file
3
pages/richText/richText.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
4
pages/richText/richText.wxml
Normal file
4
pages/richText/richText.wxml
Normal file
@@ -0,0 +1,4 @@
|
||||
|
||||
<view class="content">
|
||||
<rich-text nodes="{{content}}"></rich-text>
|
||||
</view>
|
||||
2
pages/richText/richText.wxss
Normal file
2
pages/richText/richText.wxss
Normal file
@@ -0,0 +1,2 @@
|
||||
|
||||
.content{ padding: 30rpx 50rpx 50rpx; font-size: 30rpx; color: #333; line-height: 50rpx; }
|
||||
@@ -9,8 +9,10 @@ Page({
|
||||
* 页面的初始数据
|
||||
*/
|
||||
data: {
|
||||
type : '', //类型
|
||||
listArr : [] //收货地址
|
||||
qty : '', // 商品数量
|
||||
skuid : '', // skuid
|
||||
type : '', // 类型
|
||||
listArr : [] // 收货地址
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -19,7 +21,9 @@ Page({
|
||||
onLoad(options) {
|
||||
if(options) {
|
||||
this.setData({
|
||||
type: options.type
|
||||
type : options.type,
|
||||
qty : options.qty,
|
||||
skuid : options.skuid
|
||||
})
|
||||
}
|
||||
},
|
||||
@@ -40,6 +44,14 @@ Page({
|
||||
this.setData({
|
||||
listArr: res.data
|
||||
})
|
||||
if(res.data.length <= 0){
|
||||
let pages = getCurrentPages(),
|
||||
prepage = pages[pages.length-2]
|
||||
prepage.setData({
|
||||
address: ''
|
||||
})
|
||||
prepage.placeInfo(this.data.skuid, this.data.qty, "chooseAdd")
|
||||
}
|
||||
}).catch(err => { })
|
||||
},
|
||||
|
||||
@@ -47,21 +59,14 @@ Page({
|
||||
* 选择地址
|
||||
*/
|
||||
selectAddress(e){
|
||||
let atAdds = this.data.listArr[e.currentTarget.dataset.index]
|
||||
let pages = getCurrentPages(),
|
||||
prepage = pages[pages.length-2]
|
||||
|
||||
if(this.data.type == 'goodsAddress') {
|
||||
prepage.setData({
|
||||
address: atAdds,
|
||||
addressId: atAdds.address_id
|
||||
})
|
||||
wx.navigateBack()
|
||||
return
|
||||
}
|
||||
let atAdds = e.currentTarget.dataset.obj
|
||||
let pages = getCurrentPages(),
|
||||
prepage = pages[pages.length - 2]
|
||||
|
||||
prepage.setData({
|
||||
address: atAdds
|
||||
})
|
||||
prepage.placeInfo(this.data.skuid, this.data.qty, "chooseAdd")
|
||||
wx.navigateBack()
|
||||
},
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<image src="/static/icons/siteEdit.png" bindtap="addressEdit" data-id="{{item.address_id}}" class="address-btn" mode="widthFix"></image>
|
||||
</view>
|
||||
<view class="select" wx:if="{{type == 'selectAddress' || type == 'goodsAddress'}}">
|
||||
<view class="select-btn" bindtap="selectAddress" data-index="{{index}}">
|
||||
<view class="select-btn" bindtap="selectAddress" data-obj="{{item}}">
|
||||
选择地址
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
|
||||
/* 地址列表 */
|
||||
.list{ padding: 30rpx 0 180rpx; height: 100vh; box-sizing: border-box; background: #f7f8f9; }
|
||||
.address{ background: white; border-radius: 20rpx; margin: 0 30rpx; }
|
||||
.address{ background: white; border-radius: 20rpx; margin: 0 30rpx 30rpx; }
|
||||
.address-flex{ display: flex; justify-content: space-between; align-items: center; padding: 30rpx; }
|
||||
.address-icon{ width: 38rpx; height: 38rpx; }
|
||||
.address-btn{ width: 38rpx; height: 38rpx; }
|
||||
|
||||
@@ -10,9 +10,11 @@ Page({
|
||||
*/
|
||||
data: {
|
||||
barHeight : getApp().globalData.barHeight, // 状态栏高度
|
||||
shareSee : false, //分享弹出
|
||||
inviteText : '', //邀请码
|
||||
inviteCode : '', //二维码
|
||||
shareSee : false, // 分享弹出
|
||||
inviteText : '', // 邀请码
|
||||
inviteCode : '', // 二维码
|
||||
nickname : '', // 用户名称
|
||||
invite : '', // 邀请码
|
||||
//海报
|
||||
canvas : ''
|
||||
},
|
||||
@@ -38,6 +40,7 @@ Page({
|
||||
onShow() {
|
||||
// 小程序码
|
||||
this.ShareInfo();
|
||||
console.log(wx.getStorageSync("invite"))
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -47,12 +50,40 @@ Page({
|
||||
wx.$api.user.miniShare({
|
||||
url: 'pages/mall/index'
|
||||
}).then(res => {
|
||||
let { user_info, qrcode, invite } = res.data
|
||||
this.setData({
|
||||
inviteCode: res.data.qrcode
|
||||
invite : invite,
|
||||
inviteCode: qrcode,
|
||||
nickname : user_info.nickname
|
||||
})
|
||||
}).catch(err => {})
|
||||
},
|
||||
|
||||
/**
|
||||
* 检查授权信息
|
||||
*/
|
||||
onSetting(){
|
||||
wx.getSetting({
|
||||
success: res => {
|
||||
if(res.authSetting['scope.writePhotosAlbum'] || res.authSetting['scope.writePhotosAlbum'] === undefined){
|
||||
this.onCanvas()
|
||||
return
|
||||
}
|
||||
wx.showModal({
|
||||
title : '提示',
|
||||
content : '暂未授权小程序写入您的相册,无法存储海报',
|
||||
confirmColor: '#144592',
|
||||
confirmText : '去设置',
|
||||
success: res => {
|
||||
if (res.confirm) {
|
||||
wx.openSetting()
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
* 生成海报
|
||||
*/
|
||||
@@ -66,9 +97,8 @@ Page({
|
||||
const codeImgEl = canvas.createImage()
|
||||
const backBackEl = canvas.createImage()
|
||||
|
||||
// codeImgEl.src = this.data.inviteCode //二维码
|
||||
codeImgEl.src = '/static/imgs/userHead.png' //二维码
|
||||
backBackEl.src = 'https://cdn.douhuofalv.com/images/2023/08/11/cd8093d6ab1a248e5154be48b0ddcaac.jpg' //背景素材
|
||||
codeImgEl.src = this.data.inviteCode //二维码
|
||||
backBackEl.src = 'https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/08/31/555d989b496e6d68ee8405bcae16555e.jpg' //背景素材
|
||||
const codeImgLoding = new Promise((resolve, reason) => {
|
||||
codeImgEl.onload = () => {
|
||||
resolve()
|
||||
@@ -83,21 +113,27 @@ Page({
|
||||
ctx.drawImage(backBackEl, 0, 0, 375, 800)
|
||||
// 绘制[二维码-白色背景]
|
||||
ctx.fillStyle = "#ffffff";
|
||||
ctx.fillRect(140, 610, 130, 130);
|
||||
ctx.fillRect(140, 570, 130, 130);
|
||||
|
||||
// 绘制[二维码-白色背景黑框]
|
||||
ctx.strokeStyle = "#da2b54";
|
||||
ctx.lineWidth = 2
|
||||
ctx.strokeRect(140, 610, 132, 132);
|
||||
ctx.strokeRect(140, 570, 132, 132);
|
||||
|
||||
// 绘制[二维码]
|
||||
ctx.drawImage(codeImgEl, 150, 620, 110, 110)
|
||||
ctx.drawImage(codeImgEl, 150, 580, 110, 110)
|
||||
|
||||
// 文字
|
||||
ctx.font = "bold 14px Arial"; //字体大小
|
||||
ctx.fillStyle = "#ffffff"; //字体颜色
|
||||
ctx.textAlign = "center"
|
||||
ctx.fillText('保存并分享二维码', 208, 770);
|
||||
ctx.fillText('保存并分享二维码', 208, 740);
|
||||
|
||||
// 用户昵称
|
||||
ctx.font = "bold 14px Arial"; //字体大小
|
||||
ctx.fillStyle = "#ffffff"; //字体颜色
|
||||
ctx.textAlign = "center"
|
||||
ctx.fillText(this.data.nickname, 208, 770);
|
||||
|
||||
wx.hideLoading()
|
||||
wx.canvasToTempFilePath({
|
||||
@@ -116,22 +152,12 @@ Page({
|
||||
},
|
||||
fail: () => {
|
||||
wx.hideLoading()
|
||||
wx.showModal({
|
||||
title: '提示',
|
||||
content: '暂未授权小程序写入您的相册,无法存储海报',
|
||||
confirmColor: '#e50d01',
|
||||
confirmText: '去设置',
|
||||
success: res => {
|
||||
if (res.confirm) {
|
||||
wx.openSetting()
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
})
|
||||
}).catch(err => {
|
||||
wx.hideLoading()
|
||||
wx.showToast({
|
||||
title: '图片加载失败',
|
||||
icon : 'none'
|
||||
@@ -161,9 +187,9 @@ Page({
|
||||
shareSee: false
|
||||
})
|
||||
return {
|
||||
title : '水感应修复、紧致、舒缓喷雾',
|
||||
path : "/pages/index/index?invite=" + wx.getStorageSync("invite"),
|
||||
imageUrl: "https://cdn.shuiganying.com/images/2023/04/04/9cd9968136e7efd85028fba69e4c587a.jpg"
|
||||
title : '绚火健康,生命可以如此精彩~',
|
||||
path : "/pages/mall/index?invite=" + this.data.invite,
|
||||
imageUrl: "https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/08/31/555d989b496e6d68ee8405bcae16555e.jpg"
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
<!-- 二维码海报 -->
|
||||
<view class="code">
|
||||
<image src="https://cdn.douhuofalv.com/images/2023/08/11/cd8093d6ab1a248e5154be48b0ddcaac.jpg" class="code-back"></image>
|
||||
<image src="https://douhuo-storage.oss-cn-beijing.aliyuncs.com/images/2023/08/31/555d989b496e6d68ee8405bcae16555e.jpg" class="code-back"></image>
|
||||
<view class="code-cont">
|
||||
<view class="code-img">
|
||||
<image src="{{inviteCode}}" mode="widthFix"></image>
|
||||
@@ -30,7 +30,7 @@
|
||||
<image src="https://cdn.shuiganying.com/images/2023/03/28/f8b773edc2fe6db8e45f96773b9a8dc4.png"></image>
|
||||
微信好友
|
||||
</button>
|
||||
<view class="shareCont-label" bindtap="onCanvas">
|
||||
<view class="shareCont-label" bindtap="onSetting">
|
||||
<image src="https://cdn.shuiganying.com/images/2023/03/28/cfe0efbb53eaf7911ea5211923859c65.png"></image>
|
||||
保存二维码
|
||||
</view>
|
||||
|
||||
@@ -68,9 +68,10 @@
|
||||
</view>
|
||||
<view class="order-item" bindtap="userNav" data-url="/pages/user/team/index">
|
||||
<image class="tool-icon" src="/static/imgs/tool_06.png" mode="widthFix"></image>
|
||||
<view class="order-label">我的团队</view>
|
||||
<view class="order-label">我的市场</view>
|
||||
</view>
|
||||
<view class="order-item" bindtap="userNav" data-url="/pages/refund/refund">
|
||||
<text class="order-number" wx:if="{{userData.refund > 0}}">{{userData.refund}}</text>
|
||||
<image class="tool-icon" src="/static/imgs/tool_08.png" mode="widthFix"></image>
|
||||
<view class="order-label">售后记录</view>
|
||||
</view>
|
||||
@@ -113,7 +114,7 @@
|
||||
<view class="nowrap goodsItem-text">{{item.description}}</view>
|
||||
<view class="goodsItem-tips">
|
||||
<view class="goodsItem-price">¥{{item.original_price}}</view>
|
||||
<view class="goodsItem-sales">游览 {{item.clicks}}</view>
|
||||
<view class="goodsItem-sales">浏览 {{item.clicks}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -94,6 +94,19 @@ page {
|
||||
margin: 20rpx 0;
|
||||
}
|
||||
|
||||
.order-number{
|
||||
position: absolute;
|
||||
right: 25%;
|
||||
top: 0;
|
||||
background: #da2b54;
|
||||
color: white;
|
||||
font-size: 22rpx;
|
||||
min-width: 30rpx;
|
||||
height: 30rpx;
|
||||
line-height: 30rpx;
|
||||
border-radius: 15rpx;
|
||||
}
|
||||
|
||||
.order-icon {
|
||||
width: 52rpx;
|
||||
}
|
||||
|
||||
@@ -124,7 +124,6 @@ Page({
|
||||
if (res.confirm) {
|
||||
// 清理客户端登录缓存
|
||||
wx.removeStorageSync("token")
|
||||
|
||||
wx.switchTab({
|
||||
url: '/pages/user/index'
|
||||
})
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
<view class="item">
|
||||
<view class="item-label">
|
||||
<view class="item-name">个人当日消费额</view>
|
||||
<view class="item-name">个人当日销售额</view>
|
||||
<view class="item-number item-number-red">{{perfInfo.day_perf}}</view>
|
||||
<image class="item-icon" src="/static/imgs/teamIcon_01.png" mode="widthFix"></image>
|
||||
</view>
|
||||
<view class="item-label">
|
||||
<view class="item-name">个人累计消费额</view>
|
||||
<view class="item-name">个人累计销售额</view>
|
||||
<view class="item-number item-number-red">{{perfInfo.self_perf}}</view>
|
||||
<image class="item-icon" src="/static/imgs/teamIcon_02.png" mode="widthFix"></image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="item">
|
||||
<view class="item-label item-blue">
|
||||
<view class="item-name">个人当日消费额</view>
|
||||
<view class="item-name">市场业绩</view>
|
||||
<view class="item-number item-number-blue">{{perfInfo.group_perf}}</view>
|
||||
<image class="item-icon" src="/static/imgs/teamIcon_04.png" mode="widthFix"></image>
|
||||
</view>
|
||||
@@ -24,7 +24,7 @@
|
||||
<image class="item-icon" src="/static/imgs/teamIcon_03.png" mode="widthFix"></image>
|
||||
</view>
|
||||
<view class="item-label">
|
||||
<view class="item-name">团队客户</view>
|
||||
<view class="item-name">市场客户</view>
|
||||
<view class="item-number item-number-yellow">{{teamsInfo.group}}</view>
|
||||
<image class="item-icon" src="/static/imgs/teamIcon_03.png" mode="widthFix"></image>
|
||||
</view>
|
||||
@@ -37,19 +37,10 @@
|
||||
</view>
|
||||
<view class="listItem" wx:if="{{childrenArr.length > 0}}">
|
||||
<view class="listItem-item" wx:for="{{childrenArr}}" wx:key="childrenArr">
|
||||
<view class="listItem-top">
|
||||
<image class="listItem-head" src="/static/imgs/userHead.png" mode="widthFix"></image>
|
||||
<view class="listItem-cont">
|
||||
<view class="listItem-name">
|
||||
李莉莉
|
||||
</view>
|
||||
<view class="listItem-tel">
|
||||
152****7708
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="listItem-time">
|
||||
2023-08-18
|
||||
<image class="listItem-head" src="/static/imgs/userHead.png" mode="widthFix"></image>
|
||||
<view class="listItem-cont">
|
||||
<view class="listItem-name nowrap">{{item.nickname || '-'}}<text>{{item.hidden_username || '-'}}</text></view>
|
||||
<view class="listItem-time nowrap">{{item.created_at}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="pagesLoding" wx:if="{{lodingStats}}">
|
||||
|
||||
@@ -78,40 +78,37 @@ page {
|
||||
.listItem-item {
|
||||
background-color: #ffffff;
|
||||
border-radius: 20rpx;
|
||||
padding: 30rpx;
|
||||
padding: 25rpx 30rpx;
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
margin-bottom: 30rpx;
|
||||
}
|
||||
|
||||
.listItem-top {
|
||||
position: relative;
|
||||
flex: 1;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.listItem-head {
|
||||
width: 100rpx;
|
||||
width: 88rpx;
|
||||
}
|
||||
|
||||
.listItem-cont {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
padding-left: 130rpx;
|
||||
width: 100% - 88rpx;
|
||||
padding-left: 30rpx;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.listItem-name {
|
||||
font-weight: 600;
|
||||
line-height: 40rpx;
|
||||
}
|
||||
|
||||
.listItem-tel {
|
||||
margin-top: 20rpx;
|
||||
color: #666666;
|
||||
.listItem-name text {
|
||||
padding-left: 20rpx;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.listItem-time {
|
||||
line-height: 100rpx;
|
||||
font-size: 26rpx;
|
||||
color: gray;
|
||||
line-height: 40rpx;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -63,11 +63,14 @@ Page({
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
this.setData({
|
||||
bankNo : '',
|
||||
mobile : '',
|
||||
bankVal : 0
|
||||
})
|
||||
if(type == 1){
|
||||
this.setData({
|
||||
name : this.data.identity.name,
|
||||
idcard : this.data.identity.id_card_no
|
||||
name : this.data.identity.name
|
||||
})
|
||||
}else{
|
||||
this.setData({
|
||||
@@ -127,7 +130,7 @@ Page({
|
||||
name : valueObj.name,
|
||||
mobileNo : valueObj.mobile,
|
||||
bank_no : valueObj.bankNo,
|
||||
id_card : valueObj.idcard || '',
|
||||
id_card : this.data.type == 1 ? this.data.identity.id_card_no : valueObj.idcard || '',
|
||||
message_type: this.data.type,
|
||||
}
|
||||
wx.$api.withdraw.withdraws(data).then(res => {
|
||||
|
||||
@@ -3,15 +3,29 @@
|
||||
"projectname": "%E7%82%AB%E7%81%AB",
|
||||
"setting": {
|
||||
"compileHotReLoad": true,
|
||||
"urlCheck": true
|
||||
"urlCheck": false
|
||||
},
|
||||
"condition": {
|
||||
"miniprogram": {
|
||||
"list": [
|
||||
{
|
||||
"name": "朋友圈进入详情",
|
||||
"pathName": "pages/mall/details/details",
|
||||
"query": "id=3&invite=null",
|
||||
"launchMode": "default",
|
||||
"scene": 1084
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"pathName": "pages/mall/index",
|
||||
"query": "invite=233232",
|
||||
"launchMode": "default",
|
||||
"scene": null
|
||||
},
|
||||
{
|
||||
"name": "详情详情",
|
||||
"pathName": "pages/mall/details/details",
|
||||
"query": "id=4&invite=",
|
||||
"query": "id=1&invite=2222",
|
||||
"launchMode": "default",
|
||||
"scene": null
|
||||
},
|
||||
@@ -39,5 +53,5 @@
|
||||
]
|
||||
}
|
||||
},
|
||||
"libVersion": "2.33.0"
|
||||
"libVersion": "3.0.0"
|
||||
}
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 147 KiB After Width: | Height: | Size: 38 KiB |
BIN
static/imgs/vip.png
Normal file
BIN
static/imgs/vip.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 33 KiB |
Reference in New Issue
Block a user