Compare commits

..

3 Commits

Author SHA1 Message Date
195547d86a [最新更新] 2024-03-04 15:39:57 +08:00
a8a1c06ae4 [最新更新] 2024-03-04 15:20:20 +08:00
ee98f5921d [最新更新] 2024-03-04 15:13:17 +08:00
45 changed files with 1850 additions and 86 deletions

View File

@@ -39,6 +39,9 @@ import refund from "./interfaces/refund"
// 购物袋 // 购物袋
import bag from "./interfaces/bag" import bag from "./interfaces/bag"
// 增收赋能
import empower from "./interfaces/empower"
export default { export default {
auth, auth,
bank, bank,
@@ -51,5 +54,6 @@ export default {
idcard, idcard,
withdraw, withdraw,
refund, refund,
bag bag,
empower
} }

72
api/interfaces/empower.js Normal file
View File

@@ -0,0 +1,72 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
import { req } from "../request"
//增收赋能
const lists = () => req({
url: "empower/index"
})
//增收赋能-详情
const info = (id) => req({
url: "empower/" + id + "/show"
})
//下单前置
const buyInit = (id, data) => req({
url : "empower/" + id + "/buy/init",
method : "POST",
data : data
})
//下单购买
const buy = (data) => req({
url : "empower/buy/order",
method : "POST",
data : data
})
// 订单列表初始化
const orderInit = () => req({
url : "empower/order/init"
})
// 订单列表
const orderList = (data) => req({
url : "empower/order/index",
data : data
})
// 取消订单
const orderCancel = (order) => req({
url : "empower/order/" + order + "/cancel",
})
// 核验列表
const codes = (data) => req({
url : "empower/code",
method : "POST",
data : data
})
// 确认核验
const sign = (data) => req({
url : "empower/code/sign",
method : "POST",
data : data
})
export default ({
lists,
info,
buyInit,
buy,
orderInit,
orderList,
orderCancel,
codes,
sign
})

View File

@@ -7,9 +7,9 @@ import { errInfo } from './err'
import { updToken } from './updateToken' import { updToken } from './updateToken'
// 正式地址 // 正式地址
const api = "https://api.xuanhuojk.com/api/" // const api = "https://api.xuanhuojk.com/api/"
// 测试地址 // 测试地址
// const api = "https://api.xhtest.douhuofalv.com/api/" const api = "https://api.xhtest.douhuofalv.com/api/"
const header = { const header = {
"Accept" : "application/json" "Accept" : "application/json"
} }

View File

@@ -41,7 +41,11 @@
"pages/richText/richText", "pages/richText/richText",
"pages/bag/bag", "pages/bag/bag",
"pages/bag/bagConfirm/bagConfirm", "pages/bag/bagConfirm/bagConfirm",
"pages/store/store" "pages/empower/index",
"pages/empower/writeOff/writeOff",
"pages/empower/empowerInfo/empowerInfo",
"pages/empower/empowerBuy/empowerBuy",
"pages/empower/empowerOrder/empowerOrder"
], ],
"window": { "window": {
"backgroundTextStyle": "light", "backgroundTextStyle": "light",

View File

@@ -20,11 +20,18 @@
<!-- 进图条 --> <!-- 进图条 -->
<view class="bar" wx:if="{{examine.show}}"> <view class="bar" wx:if="{{examine.show}}">
<view class="bar-title">销售补贴考核进度</view> <view class="bar-title">
<view class="bar-title-left">销售补贴考核进度</view>
<view>¥{{examine.amount}} <text>元</text></view>
</view>
<view class="bar-line"> <view class="bar-line">
<view class="progress" style="width: 100%"></view> <view class="progress" style="width: 100%"></view>
<view class="progress-box" style="width: {{examine.amount < examine.need ? examine.amount : '100'}}%"> <view class="progress-box" style="width: {{examine.amount < examine.need ? examine.amount : '100'}}%">
<view class="progress-box-name {{examine.amount == 0 ? 'active' : ''}}" wx:if="{{examine.need != examine.amount}}">{{examine.amount}}</view> <!-- <view class="progress-box-name {{examine.amount == 0 ? 'active' : ''}}" wx:if="{{examine.need != examine.amount}}">{{examine.amount}}</view> -->
</view>
<view class="progress-see-name">
<view class="progress-see-name-left">0</view>
<view>{{examine.need}}</view>
</view> </view>
<!-- <view class="progress" style="width: {{examine.need}}%"> <!-- <view class="progress" style="width: {{examine.need}}%">
<view class="progress-box" style="width: {{examine.amount < examine.need ? examine.amount : '100'}}%"> <view class="progress-box" style="width: {{examine.amount < examine.need ? examine.amount : '100'}}%">

View File

@@ -15,13 +15,16 @@ page { background-color: #f6f6f6; }
/* 进度条 */ /* 进度条 */
.bar {margin: 30rpx; background-color: #ffffff; border-radius: 20rpx;box-sizing: border-box; padding: 30rpx;} .bar {margin: 30rpx; background-color: #ffffff; border-radius: 20rpx;box-sizing: border-box; padding: 30rpx;}
.bar-title {font-weight: 600; margin-bottom: 30rpx;} .bar-title {font-weight: 600; margin-bottom: 30rpx; display: flex;}
.bar-line {width: 100%; height: 60rpx; overflow: hidden;position: relative;} .bar-title-left {flex: 1;}
.bar-line {width: 100%; height: 70rpx; overflow: hidden;position: relative;}
.progress {height: 20rpx; background-color: #ffb0c2;position: absolute; left: 0; top: 0;} .progress {height: 20rpx; background-color: #ffb0c2;position: absolute; left: 0; top: 0;}
.progress-box {position: absolute; background-color: #dc3159; height: 20rpx;} .progress-box {position: absolute; background-color: #dc3159; height: 20rpx;}
.progress-box-name {right: 0rpx;top: 35rpx;position: absolute; font-size: 24rpx; color: #dc3159;} .progress-box-name {right: 0rpx;top: 35rpx;position: absolute; font-size: 24rpx; color: #dc3159;}
.progress-box-name.active {right: -15rpx;} .progress-box-name.active {right: -15rpx;}
.progress-name {position: absolute;right: 0rpx;top: 35rpx; font-size: 24rpx; color: rgb(146, 146, 146);} .progress-name {position: absolute;right: 0rpx;top: 35rpx; font-size: 24rpx; color: rgb(146, 146, 146);}
.progress-see-name {display: flex; margin-top: 30rpx;}
.progress-see-name-left {flex: 1;}
/* 收益明细 */ /* 收益明细 */
.listTitle { padding: 30rpx 30rpx 0; font-weight: 600; box-sizing: border-box; font-size: 30rpx; } .listTitle { padding: 30rpx 30rpx 0; font-weight: 600; box-sizing: border-box; font-size: 30rpx; }

View File

@@ -172,13 +172,18 @@ Page({
if (goodsList[j].shop.mallState){ if (goodsList[j].shop.mallState){
sellerLengh++ sellerLengh++
if (sellerLengh == goodsList.length){ if (sellerLengh == goodsList.length){
console.log('全选')
allCheckbox = true allCheckbox = true
}else{ }else{
console.log('取消全选')
allCheckbox = false allCheckbox = false
} }
} }
} }
if(sellerLengh == 0) {allCheckbox = false}
this.allCheckbox('checkbox') this.allCheckbox('checkbox')
this.setData({ this.setData({
@@ -192,6 +197,7 @@ Page({
* 全选 * 全选
*/ */
allCheckbox(type){ allCheckbox(type){
console.log(type)
let goodsLenght = 0, let goodsLenght = 0,
allCheckbox = this.data.allCheckbox, allCheckbox = this.data.allCheckbox,
goodsList = this.data.bags goodsList = this.data.bags

View File

@@ -1,4 +1,3 @@
<view class="content"> <view class="content">
<block wx:if="{{isUser}}"> <block wx:if="{{isUser}}">
<!-- 工具栏 --> <!-- 工具栏 -->
@@ -61,7 +60,6 @@
<block wx:else> <block wx:else>
<!-- 用户未登录 --> <!-- 用户未登录 -->
<view class="pack-center pages-loding auth-login"> <view class="pack-center pages-loding auth-login">
<image src="/static/icons/carnull_icon.png"></image>
<view>您还未登录,无法查看您的购物车信息</view> <view>您还未登录,无法查看您的购物车信息</view>
<navigator class="auth-btn" url="/pages/login/index">登录</navigator> <navigator class="auth-btn" url="/pages/login/index">登录</navigator>
</view> </view>

View File

@@ -18,12 +18,11 @@ Page({
freight : '', // 运费 freight : '', // 运费
weight : '', // 重量 weight : '', // 重量
distribution : [ distribution : [
{ type: 2, title: "选择配送方式" }, { type: 0, title: "选择配送方式" },
{ type: 0, title: "快递" }, { type: 1, title: "快递" },
{ type: 1, title: "自提" }, { type: 2, title: "自提" },
], ],
distributionIndex: 0, distributionIndex: 0
distributionType : 2
}, },
/** /**
@@ -43,8 +42,7 @@ Page({
distributionChange(e){ distributionChange(e){
if(e.detail.value === this.data.distributionIndex) return if(e.detail.value === this.data.distributionIndex) return
this.setData({ this.setData({
distributionIndex : e.detail.value, distributionIndex: e.detail.value
distributionType : this.data.distribution[e.detail.value].type
}) })
this.placeInfo(this.data.skuId); this.placeInfo(this.data.skuId);
}, },
@@ -96,7 +94,7 @@ Page({
cart_ids : this.data.skuId, cart_ids : this.data.skuId,
address_id : this.data.address.address_id, address_id : this.data.address.address_id,
remark : '', remark : '',
delivery_type : this.data.distributionType delivery_type : this.data.distributionIndex
}).then(res => { }).then(res => {
wx.redirectTo({ wx.redirectTo({
url: '/pages/pay/index?params=' + encodeURIComponent(JSON.stringify(res.data)) url: '/pages/pay/index?params=' + encodeURIComponent(JSON.stringify(res.data))

View File

@@ -0,0 +1,137 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
Page({
/**
* 页面的初始数据
*/
data: {
semesters : [],
formData : [{
name : '',
mobile : '',
index : 0
}],
empower : {},
allPrice : '0.00',
semestersIndex : 0
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
this.setData({
empowerId: options.id
})
this.indexInfo(options.id)
},
/**
* 增收赋能-报名
*/
indexInfo(id) {
wx.$api.empower.buyInit(id).then(res => {
let { empower, semesters } = res.data;
this.setData({
empower : empower,
semesters : semesters
})
this.getTotalPrice()
}).catch(err => {})
},
// 计算价格
getTotalPrice(){
let totalPrice = 0
this.data.formData.map(val => {
totalPrice += Number(this.data.semesters[val.index].price)
})
this.setData({
allPrice : totalPrice.toFixed(2)
})
},
/**
* 选择学期
*/
onChange(e) {
let that = this
var val = e.detail.value;
let index = e.currentTarget.dataset.index // 获取数据的索引
let reward = 'formData[' + index +'].index' // 获取lists[index].reward
that.setData({
[reward]: val
})
},
// 添加新用户
onAddUser(){
var lists = this.data.formData;
var newData = {
name : '',
mobile : '',
index : 0
};
lists.push(newData);
this.setData({
formData: lists,
})
this.getTotalPrice()
},
// 删除用户
onRemoveUser (e) {
var lists = this.data.formData;
let index = e.currentTarget.dataset.index
lists.splice(index,1)
this.setData({
formData: lists,
})
},
// 真实姓名
bindName(e) {
let that = this
var val = e.detail.value;
let index = e.currentTarget.dataset.index // 获取数据的索引
let reward = 'formData[' + index +'].name' // 获取lists[index].reward
that.setData({
[reward]: val
})
},
// 手机号码
bindTel(e) {
let that = this
var val = e.detail.value;
let index = e.currentTarget.dataset.index // 获取数据的索引
let reward = 'formData[' + index +'].mobile' // 获取lists[index].reward
that.setData({
[reward]: val
})
},
// 提交报名
onSubmit(){
let submitData = this.data.formData.map(val => {
return {
name : val.name,
mobile : val.mobile,
semester_id : this.data.semesters[val.index].id
}
})
wx.$api.empower.buy({
empower_id : this.data.empowerId,
data : submitData
}).then(res => {
wx.redirectTo({
url: '/pages/pay/index?params=' + encodeURIComponent(JSON.stringify(res.data))
})
}).catch(err => {})
}
})

View File

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

View File

@@ -0,0 +1,42 @@
<view class="content">
<!-- 课程信息 -->
<view class="info">
<image class="info-cover" src="{{empower.cover}}" mode="aspectFill"></image>
<view class="info-text">
<view class="info-title">{{empower.title}}</view>
<view class="info-subtitle">{{empower.sub_title}}</view>
<view class="info-price"><text>¥</text>{{empower.price}}</view>
</view>
</view>
<!-- 报名信息 -->
<view class="user-title">报名人</view>
<view class="user-block" wx:for="{{formData}}" wx:key="formData">
<view class="user-block-flex">报名信息{{index + 1}}<view class="user-block-remove" wx:if="{{formData.length > 1}}" bindtap="onRemoveUser" data-index="{{index}}">删除</view>
</view>
<view class="user-block-input">
<label>真实姓名</label>
<input placeholder="输入姓名" value="{{item.name}}" data-index="{{index}}" maxlength="10" bindinput="bindName" />
</view>
<view class="user-block-input">
<label>手机号码</label>
<input placeholder="输入手机号码" value="{{item.mobile}}" data-index="{{index}}" bindinput="bindTel" maxlength="11" type="number" />
</view>
<view class="user-block-input" wx:if="{{semesters.length > 0}}">
<label>选择学期</label>
<picker mode="selector" value="{{semestersIndex}}" data-index="{{index}}" range="{{semesters}}" range-key="title" bindchange="onChange">
<view class="nowrap user-block-picker">{{semesters[item.index].title}}</view>
<image class="picker-icon" src="/static/icons/empowerArrow.png"></image>
</picker>
</view>
</view>
<view class="user-add" bindtap="onAddUser">
<image src="/static/icons/siteIcon.png"></image>添加报名人
</view>
<view class="footer">
<view class="footer-text">
<view class="footer-text-price"><text>¥</text>{{allPrice}}</view>
<view class="footer-text-subtitle">共计{{formData.length}}人报名</view>
</view>
<button class="footer-btn" bindtap="onSubmit">提交</button>
</view>
</view>

View File

@@ -0,0 +1,190 @@
.content {
background: #f7f8f9;
padding: 30rpx 30rpx 210rpx;
min-height: calc(100vh - 44px);
box-sizing: border-box;
}
/* 报名人信息 */
.user-title {
padding-top: 30rpx;
font-size: 30rpx;
line-height: 40rpx;
color: gray;
}
.user-block {
background: white;
margin-top: 30rpx;
border-radius: 20rpx;
padding: 20rpx 30rpx;
}
.user-block-flex {
display: flex;
justify-content: space-between;
height: 90rpx;
align-items: center;
font-size: 30rpx;
color: gray;
}
.user-block-remove {
color: #da2b56;
line-height: 90rpx;
}
.user-block-input {
display: flex;
justify-content: space-between;
height: 90rpx;
align-items: center;
flex-wrap: wrap;
}
label {
font-size: 32rpx;
width: 200rpx;
}
picker,
input {
width: calc(100% - 200rpx);
font-size: 32rpx;
}
picker {
position: relative;
}
.user-block-picker {
padding-right: 30rpx;
box-sizing: border-box;
position: relative;
width: calc(100% - 42rpx);
display: inline-block;
}
.picker-icon {
width: 42rpx;
height: 42rpx;
}
.user-add {
text-align: center;
background: white;
border-radius: 20rpx;
margin-top: 30rpx;
display: flex;
align-items: center;
height: 120rpx;
justify-content: center;
color: #da2b56;
font-size: 32rpx;
}
.user-add image {
width: 38rpx;
height: 38rpx;
margin-right: 15rpx;
}
/* 报名课程信息 */
.info {
display: flex;
background: white;
padding: 30rpx;
border-radius: 20rpx;
flex-wrap: wrap;
justify-content: space-between;
}
.info-cover {
width: 180rpx;
height: 180rpx;
border-radius: 10rpx;
}
.info-text {
width: calc(100% - 210rpx);
}
.info-title {
font-size: 38rpx;
font-weight: bold;
line-height: 50rpx;
height: 50rpx;
}
.info-subtitle {
line-height: 40rpx;
height: 80rpx;
font-size: 30rpx;
}
.info-price {
font-weight: bold;
color: #da2b56;
font-size: 42rpx;
font-family: Arial, Helvetica, sans-serif;
line-height: 50rpx;
height: 50rpx;
}
.info-price text {
font-size: 80%;
margin-right: 5rpx;
}
/* 底部 */
.footer {
position: fixed;
bottom: 0;
left: 0;
right: 0;
padding: 30rpx 30rpx 50rpx;
display: flex;
flex-wrap: wrap;
align-items: center;
z-index: 99;
box-shadow: 0 0 10rpx 10rpx rgba(0, 0, 0, .04);
background: white;
}
.footer-text {
width: 200rpx;
margin-right: 30rpx;
flex: 1;
}
.footer-text-price {
font-weight: bold;
color: #da2b56;
font-size: 40rpx;
}
.footer-text-price text {
font-size: 80%;
margin-right: 5rpx;
}
.footer-text-subtitle {
font-size: 28rpx;
color: gray;
}
.footer-btn {
background: #da2b56;
color: white;
line-height: 100rpx;
border-radius: 50rpx;
flex: 1;
text-align: center;
font-weight: bold;
font-size: 36rpx;
padding: 0 80rpx;
}
.footer-btn::after {
display: none;
}

View File

@@ -0,0 +1,75 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
Page({
/**
* 页面的初始数据
*/
data: {
empowerId : '', //增收赋能id
id : '',
cover : '',
title : '',
subtitle : '',
price : '0.00',
semester : null,
count : {},
content : []
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
this.setData({
empowerId: options.id
})
this.indexInfo(options.id)
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {},
/**
* 增收赋能-详情
*/
indexInfo(id) {
wx.$api.empower.info(id).then(res => {
console.log(res.data)
let { cover, title, subtitle, price, semester_current, count, content, id } = res.data;
this.setData({
id : id,
cover : cover,
title : title,
subtitle : subtitle,
price : price,
semester : semester_current,
count : count,
content : content.replace(/\<img/gi, '<img style="width:100%;height:auto"')
})
wx.setNavigationBarTitle({ title })
}).catch(err => {})
},
/**
* 增收赋能-立即购买
*/
onBuy(){
if(this.data.count.ing <= 0){
wx.showToast({
title: '暂无可报名学期',
icon : 'none'
})
return
}
wx.navigateTo({
url: "/pages/empower/empowerBuy/empowerBuy?id=" + this.data.id
})
}
})

View File

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

View File

@@ -0,0 +1,36 @@
<view class="content">
<!-- 封面 -->
<view class="cover">
<image class="cover-src" src="{{cover}}" mode="aspectFill"></image>
</view>
<!-- 课程信息 -->
<view class="info">
<view class="info-title">{{ title }}</view>
<view class="info-subtitle">{{ subtitle }}</view>
<view class="info-info">
<view class="info-info-item">
<label>总学期</label>
<view class="info-value">{{count.all || '-'}}期</view>
</view>
<view class="info-info-item">
<label>已结束</label>
<view class="info-value">{{count.over || 0}}期</view>
</view>
<view class="info-info-item" wx:if="{{semester != null}}">
<label>当期时间</label>
<view class="info-value">{{semester.time.start || '-'}}</view>
</view>
<view class="info-info-item" wx:if="{{semester != null}}">
<label>报名价格</label>
<view class="info-value price">¥{{semester.price || '0.00'}}</view>
</view>
</view>
</view>
<!-- 课程介绍 -->
<rich-text nodes="{{content}}"></rich-text>
<!-- 报名信息 -->
<view class="footer">
<view class="footer-btn {{count.ing <= 0 ? 'in' : ''}}" bindtap="onBuy">立即购买</view>
</view>
</view>

View File

@@ -0,0 +1,104 @@
.content {
padding-bottom: 180rpx;
}
/* 封面图 */
.cover {
position: relative;
padding-top: 70%;
background: #f7f8f9;
}
.cover-src {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
/* 信息 */
.info {
padding: 40rpx;
}
.info-title {
font-weight: bold;
font-size: 50rpx;
margin-bottom: 20rpx;
line-height: 65rpx;
color: #333;
text-align: justify;
}
.info-subtitle {
font-size: 30rpx;
line-height: 50rpx;
margin-bottom: 40rpx;
color: #333;
text-align: justify;
}
.info-info {
background: #f7f8f9;
padding: 0 30rpx;
font-size: 30rpx;
border-radius: 20rpx;
}
.info-info-item {
padding: 30rpx 0;
line-height: 40rpx;
display: flex;
justify-content: space-between;
}
label {
font-weight: bold;
width: 170rpx;
}
.info-info-item:last-child::after {
display: none;
}
.info-value {
width: calc(100% - 170rpx);
text-align: right;
font-family: Arial, Helvetica, sans-serif;
}
.info-value.price {
font-weight: bold;
color: #da2b56;
}
/* 底部 */
.footer {
position: fixed;
bottom: 0;
left: 0;
right: 0;
padding: 30rpx 30rpx 50rpx;
display: flex;
flex-wrap: wrap;
align-items: center;
z-index: 99;
background-color: white;
box-shadow: 0 0 10rpx 10rpx rgba(0, 0, 0, .04);
}
.footer-btn {
background: #da2b56;
color: white;
line-height: 100rpx;
border-radius: 50rpx;
flex: 1;
text-align: center;
font-weight: bold;
font-size: 36rpx;
}
.footer-btn.in {
opacity: .6;
}

View File

@@ -0,0 +1,178 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
Page({
/**
* 页面的初始数据
*/
data: {
statusArr : [{ title: '全部订单', id: '' }],
empowerArr : [{ title: '全部课程', id: '' }],
statusIndex : 0,
empowerIndex: 0,
// 报名信息
users : [],
usersTotal : 0,
usersShow : false,
// 订单列表
orders : [],
// 分页
page : {}, // 分页信息
lodingStats : false,// 加载状态
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
wx.$api.empower.orderInit().then(res => {
let { status, empower } = res.data;
this.setData({
statusArr : status,
empowerArr : [...this.data.empowerArr, ...empower]
})
// 获取列表
this.getList()
}).catch(err => {})
},
// 筛选类型
onPickerChange(e){
this.setData({
statusIndex: e.detail.value
})
this.getList()
},
// 筛选类型-课程
onPickerClass(e){
this.setData({
empowerIndex: e.detail.value
})
this.getList()
},
/**
* 获取列表
*/
getList(page) {
wx.$api.empower.orderList({
page : page || 1,
status : this.data.statusArr[this.data.statusIndex].id,
empower : this.data.empowerArr[this.data.empowerIndex].id
}).then(res => {
let listArr = this.data.orders,
newData = []
if(page == 1 || page == undefined) listArr = []
newData = listArr.concat(res.data.data)
newData.map(val => {
val.is_show_type = false
})
this.setData({
orders : newData,
page : res.data.page,
lodingStats : false
})
wx.stopPullDownRefresh()
}).catch(err => {})
},
/**
* 课程数量
*/
typeTap(e) {
let index = e.currentTarget.dataset.index
this.setData({
[`orders[${index}].is_show_type`]: !this.data.orders[index].is_show_type
});
},
/**
* 报名信息
*/
onShowUsers(val) {
let { count, lists } = val.currentTarget.dataset.items
this.setData({
users : lists,
usersTotal : count,
usersShow : true
})
},
/**
* 报名信息弹出关闭
*/
usersHide() {
this.setData({
usersShow: false
})
},
/**
* 取消订单
*/
onCancel(e){
let id = e.currentTarget.dataset.id
wx.showModal({
title : '提示',
content : '取消订单后无法找回,确认取消吗?',
success : modalRes => {
if(modalRes.confirm){
wx.showLoading({
title: '加载中...',
mask : true
})
wx.$api.empower.orderCancel(id).then(res => {
wx.showToast({
title: '订单已取消',
icon : 'none'
})
this.getList()
}).catch(err => {})
}
}
})
},
/**
* 支付
*/
onPay(e){
let data = e.currentTarget.dataset.item
wx.redirectTo({
url: '/pages/pay/index?params=' + encodeURIComponent(JSON.stringify(data))
})
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
// 获取订单列表
this.getList()
},
/**
* 上拉加载
*/
onReachBottom(){
this.setData({
lodingStats: true
})
let pageNumber = this.data.page.current
if(this.data.page.has_more){
pageNumber++
// 获取订单列表
this.getList(pageNumber)
}
},
})

View File

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

View File

@@ -0,0 +1,98 @@
<view class="content">
<!-- tabs -->
<view class="screen-flex">
<view class="screen-picker">
<picker range="{{statusArr}}" range-key="title" value="{{statusIndex}}" bindchange="onPickerChange">
<view class="screen-text">
{{ statusArr[statusIndex].title }}<image class="screen-icon" src="/static/icons/empowerArrow.png"></image>
</view>
</picker>
</view>
<view class="screen-picker">
<picker range="{{empowerArr}}" range-key="title" value="{{empowerIndex}}" bindchange="onPickerClass">
<view class="screen-text">
{{ empowerArr[empowerIndex].title }}<image class="screen-icon" src="/static/icons/empowerArrow.png"></image>
</view>
</picker>
</view>
</view>
<!-- 订单管理列表 -->
<view class="orders" wx:if="{{orders.length > 0}}">
<view class="orders-item" wx:for="{{orders}}" wx:key="orders">
<view class="orders-flex">
<view class="no nowrap" bindtap="copyNo" data-no="item.order_no">
<text class="orders-tag" wx:if="{{!item.is_my}}">客户</text>
<text class="orders-tag order-tag-my" wx:else>个人</text>
{{item.order_no}}
</view>
<view class="state">{{item.status_text}}</view>
</view>
<view class="orders-content">
<view class="orders-content-item">
<label>课程名称</label>
<view class="nowrap orders-content-type">{{item.empower.title}}</view>
</view>
<view class="orders-content-item orders-content-bottom" bindtap="typeTap" data-index="{{index}}" data-type="{{item.is_show_type}}">
<label>课程数量</label>
<view class="nowrap orders-content-type">
×{{item.items.count}}<image class="orders-content-icon {{item.is_show_type ? 'active' : ''}}" src="/static/icons/arrow_more.png"></image>
</view>
</view>
<view class="orders-content-block" wx:if="{{item.is_show_type}}">
<view class="item-flex" wx:for="{{item.items.lists}}" wx:key="lists" wx:for-item="citem">
<view class="item-flex-title">{{citem.semester.subtitle}}({{citem.name}})</view>
<view class="item-flex-value">¥{{citem.price}}</view>
</view>
</view>
<view class="orders-content-item">
<label>支付金额</label>
<view class="nowrap">¥{{item.price}}</view>
</view>
<view class="orders-content-item">
<label>下单时间</label>
<view class="nowrap">{{item.created_at}}</view>
</view>
<view class="orders-content-item" wx:if="{{item.paid_at != ''}}">
<label>支付时间</label>
<view class="nowrap">{{item.paid_at}}</view>
</view>
</view>
<view class="orders-flex">
<view class="btns">
<view class="btns-item btns-border" wx:if="{{item.status == 0}}" bindtap="onCancel" data-id="{{item.order_id}}">取消</view>
<view class="btns-item btns-border" wx:if="{{item.status == 0}}" bindtap="onPay" data-item="{{item}}">支付</view>
<view class="btns-item" bindtap="onShowUsers" data-items="{{item.items}}">报名信息</view>
</view>
</view>
</view>
<view class="pagesLoding" wx:if="{{lodingStats}}">
<block wx:if="{{page.has_more}}">
<image class="pagesLoding-icon" src="/static/icons/refresh_loding.gif" mode="widthFix"></image>加载中...
</block>
<block wx:else>
没有更多了~
</block>
</view>
</view>
<view class="pack-center pages-hint" wx:else>
<image src="/static/imgs/text_null.png"></image>
<view>暂无数据</view>
</view>
<!-- 弹出报名人信息 -->
<view class="users-back {{usersShow ? 'active' : ''}}"></view>
<view class="users-content {{usersShow ? 'active' : ''}}">
<view class="users-title">报名信息<image class="users-content-icon" bindtap="usersHide" src="/static/icons/close.png"></image></view>
<view class="users-lists">
<view class="users-lists-item" wx:for="{{users}}" wx:key="index">
<view class="users-item nowrap"><label>报名姓名</label>{{item.name}}</view>
<view class="users-item nowrap"><label>报名手机</label>{{item.mobile}}</view>
<view class="users-item nowrap"><label>课程名称</label>{{item.semester.subtitle}}</view>
<view class="users-item nowrap"><label>签到状态</label><text class="bold">{{item.status_text}}</text></view>
<view class="users-item"><label>课程地址</label>{{item.semester.address}}</view>
</view>
</view>
</view>
</view>

View File

@@ -0,0 +1,271 @@
.content {
background: #f7f8f9;
min-height: calc(100vh - 44px);
}
/* 订单弹出层 */
.users-back {
position: fixed;
height: 100vh;
width: 100%;
left: 0;
bottom: 0;
z-index: 100;
background-color: rgba(0, 0, 0, .4);
display: none;
}
.users-back.active {
display: block;
}
.users-content {
position: fixed;
height: 80vh;
width: 100%;
left: 0;
bottom: 0;
z-index: 101;
background-color: white;
display: none;
}
.users-content.active {
display: block;
}
.users-title {
text-align: center;
font-weight: bold;
font-size: 40rpx;
color: #333;
height: 70rpx;
line-height: 70rpx;
padding: 30rpx;
position: relative;
}
.users-content-icon {
position: absolute;
right: 30rpx;
top: 44rpx;
width: 40rpx;
height: 40rpx;
}
.users-lists {
padding: 0 30rpx 50rpx;
max-height: 70vh;
overflow-y: scroll;
}
.users-lists-item {
background: #f7f8f9;
padding: 30rpx;
border-radius: 20rpx;
font-size: 30rpx;
margin-bottom: 30rpx;
}
.users-item {
position: relative;
line-height: 45rpx;
min-height: 45rpx;
padding-left: 160rpx;
margin: 5rpx 0;
text-align: right;
}
.users-item label {
position: absolute;
left: 0;
top: 0;
color: gray;
}
.users-item .bold {
font-weight: bold;
color: #da2b56;
}
/* 订单筛选 */
.screen-flex {
display: flex;
flex-wrap: wrap;
position: fixed;
width: 100%;
left: 0;
top: 0;
height: 90rpx;
background-color: white;
z-index: 99;
}
.screen-picker {
width: 50%;
text-align: center;
}
.screen-text {
line-height: 90rpx;
height: 90rpx;
display: inline-block;
font-size: 30rpx;
}
.screen-icon {
margin-left: 5rpx;
width: 34rpx;
height: 34rpx;
vertical-align: -6rpx;
}
/* 订单为空 */
.order-null {
height: 80vh;
display: flex;
justify-content: center;
align-items: center;
}
/* 订单列表 */
.orders {
padding: 30rpx 0 10rpx;
margin-top: 90rpx;
}
.orders-item {
margin: 0 30rpx 20rpx;
background-color: white;
border-radius: 20rpx;
}
.orders-content {
padding: 20rpx 30rpx;
}
.orders-content-item {
line-height: 70rpx;
display: flex;
justify-content: space-between;
font-size: 30rpx;
color: #111111;
}
.orders-content-item label {
color: #999999;
}
.orders-content .orders-content-bottom {
padding-right: 30rpx;
position: relative;
}
.orders-content-type {
display: flex;
}
.orders-content-icon {
width: 20rpx;
height: 20rpx;
margin-top: 26rpx;
transition: .3s;
}
.orders-content-icon.active {
transform: rotate(90deg);
}
.orders-content-icon {
position: absolute;
right: 0;
top: 0;
}
.orders-content-block {
background: rgba(68, 110, 254, .03);
padding: 20rpx;
font-size: 28rpx;
border-radius: 10rpx;
margin: 10rpx 0;
}
.item-flex {
display: flex;
justify-content: space-between;
line-height: 50rpx;
}
.orders-flex {
border-bottom: solid 1rpx #F6F6F6;
display: flex;
justify-content: space-between;
align-items: center;
padding: 20rpx 30rpx;
}
.orders-flex:last-child {
border-top: solid 1rpx #F6F6F6;
border-bottom: none;
}
.orders-tag {
display: inline-block;
background: #da2b56;
font-size: 26rpx;
color: white;
border-radius: 10rpx;
padding: 0 10rpx;
height: 40rpx;
line-height: 40rpx;
margin-right: 10rpx;
}
.orders-tag.order-tag-my {
background: #da2b56;
}
.no {
font-size: 30rpx;
color: #111;
line-height: 60rpx;
width: calc(100% - 150rpx);
}
.state {
color: #da2b56;
font-weight: bold;
font-size: 30rpx;
line-height: 60rpx;
width: 150rpx;
text-align: right;
}
.btns {
text-align: right;
width: 100%;
}
.btns-item {
display: inline-block;
height: 70rpx;
line-height: 70rpx;
background: #da2b56;
color: white;
border-radius: 35rpx;
padding: 0 30rpx;
font-size: 30rpx;
}
.btns-item.btns-border {
line-height: 68rpx;
box-sizing: border-box;
border: solid 1rpx #da2b56;
background: white;
color: #da2b56;
margin-right: 20rpx;
}
.pack-center {
z-index: 0;
}

66
pages/empower/index.js Normal file
View File

@@ -0,0 +1,66 @@
// pages/empower/index.js
Page({
/**
* 页面的初始数据
*/
data: {
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})

3
pages/empower/index.json Normal file
View File

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

2
pages/empower/index.wxml Normal file
View File

@@ -0,0 +1,2 @@
<!--pages/empower/index.wxml-->
<text>pages/empower/index.wxml</text>

1
pages/empower/index.wxss Normal file
View File

@@ -0,0 +1 @@
/* pages/empower/index.wxss */

View File

@@ -0,0 +1,76 @@
/*
* 手太欠
* 愿这世界都如故事里一样 美好而动人~
*/
Page({
/**
* 页面的初始数据
*/
data: {
popupShow : false,
code : '',
vouchers : [],
layIndex : 0
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
this.setData({
code: options.scene
})
this.codesInfo();
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {},
/**
* 核销列表
*/
codesInfo() {
wx.$api.empower.codes({
code: this.data.code
}).then(res => {
this.setData({
vouchers: res.data
})
}).catch(err => {})
},
/**
* 报名信息弹出关闭
*/
usersHide() {
this.setData({
popupShow: false
})
},
// 显示确认弹出层
onShowLay(e){
let index = e.currentTarget.dataset.index
this.setData({
layIndex : index,
popupShow: true
})
},
// 签到
onSign(e){
let id = e.currentTarget.dataset.id
wx.$api.empower.sign({
item_id: id
}).then(res => {
this.setData({
popupShow: false
})
this.codesInfo();
}).catch(err => { })
}
})

View File

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

View File

@@ -0,0 +1,72 @@
<view class="content">
<!-- 核销凭证列表 -->
<block wx:if="{{vouchers.length > 0}}">
<view class="vouchers" wx:for="{{vouchers}}" wx:key="vouchers">
<image class="vouchers-icon" src="/static/icons/sign.png" mode="widthFix" wx:if="{{!item.can_sign}}"></image>
<view class="vouchers-info">
<view class="vouchers-info-item title">{{item.empower.title}}(第{{item.semester.no}}期)</view>
<view class="vouchers-info-item">报名人:{{item.name}}</view>
<view class="vouchers-info-item">有效期:{{item.semester.end}}</view>
</view>
<view class="vouchers-btns">
<view class="vouchers-btn" bindtap="onShowLay" data-index="{{index}}">{{item.can_sign ? '立即使用': '查看凭证'}}</view>
</view>
</view>
</block>
<view class="pack-center pages-hint" wx:else>
<image src="/static/imgs/text_null.png"></image>
<view>暂无数据</view>
</view>
<!-- 核销弹出层 -->
<view class="lay-back {{popupShow ? 'active' : ''}}"></view>
<view class="lay-info {{popupShow ? 'active' : ''}}">
<block wx:if="{{vouchers.length > 0}}">
<view class="lay-title">报名信息<image class="lay-title-icon" bindtap="usersHide" src="/static/icons/close.png"></image></view>
<view class="lay-content">
<view class="lay-item">
<label>报名课程</label>
<view class="lay-item-val">{{vouchers[layIndex].empower.title}}</view>
</view>
<view class="lay-item">
<label>学期名称</label>
<view class="lay-item-val">{{vouchers[layIndex].empower.subtitle}}</view>
</view>
<view class="lay-item">
<label>报名姓名</label>
<view class="lay-item-val">{{vouchers[layIndex].name}}</view>
</view>
<view class="lay-item">
<label>报名电话</label>
<view class="lay-item-val">{{vouchers[layIndex].mobile}}</view>
</view>
<view class="lay-item">
<label>开始时间</label>
<view class="lay-item-val">{{vouchers[layIndex].semester.start}}</view>
</view>
<view class="lay-item">
<label>结束时间</label>
<view class="lay-item-val">{{vouchers[layIndex].semester.end}}</view>
</view>
<view class="lay-item">
<label>课程地点</label>
<view class="lay-item-val">{{vouchers[layIndex].semester.address}}</view>
</view>
</view>
<view class="lay-border"></view>
<view class="lay-content">
<view class="lay-item">
<label>签到状态</label>
<view class="lay-item-val bold">{{vouchers[layIndex].can_sign ? '未签到': '已签到'}}</view>
</view>
<view class="lay-item" wx:if="{{!vouchers[layIndex].can_sign}}">
<label>签到时间</label>
<view class="lay-item-val">{{vouchers[layIndex].sign_at}}</view>
</view>
</view>
<view class="lay-btns">
<button class="lay-btn" disabled="{{!vouchers[layIndex].can_sign}}" bindtap="onSign" data-id="{{vouchers[layIndex].item_id}}">{{vouchers[layIndex].can_sign ? '签到': '已签到'}}</button>
</view>
</block>
</view>
</view>

View File

@@ -0,0 +1,194 @@
page {
background-color: #f7f7f7;
padding: 30rpx;
box-sizing: border-box;
}
/* 票券 */
.vouchers {
background: white;
border-radius: 20rpx;
margin-bottom: 30rpx;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
position: relative;
}
.vouchers-icon {
position: absolute;
width: 100rpx;
height: 100rpx;
z-index: 1;
top: 15%;
left: 53%;
opacity: .5;
}
.vouchers-info {
position: relative;
padding: 20rpx 30rpx;
font-size: 28rpx;
border-right: dashed 2rpx #ddd;
width: calc(100% - 200rpx);
box-sizing: border-box;
}
.vouchers-info::after,
.vouchers-info::before {
content: " ";
height: 22rpx;
width: 22rpx;
background: #f7f7f7;
position: absolute;
right: -11rpx;
border-radius: 50%;
}
.vouchers-info::after {
top: -11rpx;
}
.vouchers-info::before {
bottom: -11rpx;
}
.vouchers-info-item {
line-height: 40rpx;
font-size: 26rpx;
color: gray;
}
.vouchers-info-item.bold {
font-weight: bold;
}
.vouchers-info-item.title {
font-size: 30rpx;
margin-bottom: 10rpx;
font-weight: bold;
color: #333;
}
.vouchers-btns {
width: 200rpx;
text-align: center;
}
.vouchers-btn {
background: #da2b56;
color: white;
line-height: 60rpx;
border-radius: 30rpx;
width: 150rpx;
font-size: 26rpx;
display: inline-block;
}
/* 核销凭证弹出层 */
.lay-back {
top: 0;
left: 0;
position: fixed;
width: 100vw;
height: 100vh;
z-index: 998;
background-color: rgba(0, 0, 0, .5);
display: none;
}
.lay-back.active {
display: block;
}
.lay-info {
width: 100vw;
box-sizing: border-box;
padding-bottom: 50rpx;
position: fixed;
left: 0;
bottom: 0;
z-index: 999;
background-color: #ffffff;
display: none;
transition: .2s;
height: 65vh;
overflow-y: scroll;
}
.lay-info.active {
display: block;
}
.lay-title {
font-size: 40rpx;
font-weight: bold;
text-align: center;
color: #333;
line-height: 60rpx;
padding: 50rpx;
position: relative;
}
.lay-title-icon {
position: absolute;
right: 30rpx;
top: 44rpx;
width: 40rpx;
height: 40rpx;
}
.lay-content {
padding: 0 40rpx;
}
.lay-item {
display: flex;
justify-content: space-between;
font-size: 30rpx;
padding: 10rpx 0;
line-height: 40rpx;
}
.lay-item label {
color: gray;
width: 160rpx;
}
.lay-item-val {
width: calc(100% - 160rpx);
}
.lay-item-val.bold {
color: #da2b56;
font-weight: bold;
}
.lay-border {
border-bottom: dashed 2rpx #ddd;
margin: 40rpx 0;
}
.lay-btns {
padding: 40rpx;
}
button.lay-btn {
width: 100%;
margin: 0;
background: #da2b56;
color: white;
height: 90rpx;
line-height: 90rpx;
padding: 0;
border-radius: 45rpx;
}
button.lay-btn ::after {
display: none;
}
button.lay-btn [disabled] {
opacity: .7;
}

View File

@@ -88,8 +88,8 @@ Page({
mask : true mask : true
}) })
wx.request({ wx.request({
// url : 'https://api.xhtest.douhuofalv.com/api/mall/goods/' + this.data.goodsId, url : 'https://api.xhtest.douhuofalv.com/api/mall/goods/' + this.data.goodsId,
url : 'https://api.xuanhuojk.com/api/mall/goods/' + this.data.goodsId, // url : 'https://api.xuanhuojk.com/api/mall/goods/' + this.data.goodsId,
header : { header : {
"Accept" : "application/json", "Accept" : "application/json",
"channel" : "client", "channel" : "client",
@@ -138,9 +138,12 @@ Page({
this.setData({ this.setData({
[temp1]: valueid [temp1]: valueid
}) })
let newlist = [] let newlist = []
let str = '' let str = ''
for (var i in this.data.specselect) { for (var i in this.data.specselect) {
console.log(this.data.specselect)
if (i == index) { if (i == index) {
newlist.push(valueid); newlist.push(valueid);
if (i == 0) { if (i == 0) {
@@ -164,6 +167,8 @@ Page({
}) })
break; break;
} }
console.log(this.data.selectSkusValues)
} }
this.setData({ this.setData({
specselect: newlist specselect: newlist

View File

@@ -19,6 +19,8 @@ Page({
buy_sku_id : false,// 身份包产品 buy_sku_id : false,// 身份包产品
can_buy : false,// 是否可购买 can_buy : false,// 是否可购买
certification : false,// 是否已认证 certification : false,// 是否已认证
empowerArr : [] // 增收赋能
}, },
/** /**
@@ -55,6 +57,20 @@ Page({
// 获取身份包产品 // 获取身份包产品
this.getidpackage() this.getidpackage()
// 增收赋能接口
this.getEmpower()
},
/**
* 增收赋能接口
*/
getEmpower(){
wx.$api.empower.lists().then(res => {
this.setData({
empowerArr: res.data
})
})
}, },
/** /**
@@ -189,6 +205,21 @@ Page({
}) })
}, },
/**
* 查看增收赋能详情
*/
onEmpower(e){
if(wx.getStorageSync("token") != ''){
wx.navigateTo({
url: '/pages/empower/empowerInfo/empowerInfo?id=' + e.currentTarget.dataset.id
})
return
}
wx.navigateTo({
url: "/pages/login/index"
})
},
/** /**
* 页面相关事件处理函数--监听用户下拉动作 * 页面相关事件处理函数--监听用户下拉动作
*/ */

View File

@@ -117,6 +117,7 @@
</scroll-view> </scroll-view>
</view> </view>
<!-- 商品 -->
<view class="goods"> <view class="goods">
<view class="goodsList" wx:if="{{goodsArr.length > 0}}"> <view class="goodsList" wx:if="{{goodsArr.length > 0}}">
<navigator hover-class="none" url="./details/details?id={{item.goods_id}}" class="goodsItem" wx:for="{{goodsArr}}" wx:key="goodsArr"> <navigator hover-class="none" url="./details/details?id={{item.goods_id}}" class="goodsItem" wx:for="{{goodsArr}}" wx:key="goodsArr">
@@ -137,7 +138,7 @@
<image class="pagesLoding-icon" src="/static/icons/refresh_loding.gif" mode="widthFix"></image>加载中... <image class="pagesLoding-icon" src="/static/icons/refresh_loding.gif" mode="widthFix"></image>加载中...
</block> </block>
<block wx:else> <block wx:else>
没有更多了~ <!-- 没有更多了~ -->
</block> </block>
</view> </view>
</view> </view>
@@ -146,3 +147,20 @@
<view>暂无商品</view> <view>暂无商品</view>
</view> </view>
</view> </view>
<!-- 增收赋能 -->
<view class="module" wx:if="{{empowerArr.length > 0}}">
<view class="module-title">
增收赋能类
</view>
<view class="enable-scroll">
<view class="enable-label" wx:for="{{empowerArr}}" wx:key="empowerArr" bindtap="onEmpower" data-id="{{item.id}}">
<image class="enable-img" src="{{item.cover}}" alt="" mode="widthFix"></image>
<view class="enable-cont">
<view class="nowrap enable-title">{{item.title}}</view>
<view class="nowrap enable-text">{{item.sub_title}}</view>
<view class="enable-price">¥{{item.price}}/年</view>
</view>
</view>
</view>
</view>

View File

@@ -266,6 +266,7 @@ page {
.goodsList { .goodsList {
flex-wrap: wrap; flex-wrap: wrap;
justify-content: flex-start; justify-content: flex-start;
margin: 0 -10rpx;
} }
.goodsItem { .goodsItem {
@@ -331,3 +332,54 @@ page {
padding: 30rpx 30rpx 60rpx; padding: 30rpx 30rpx 60rpx;
box-sizing: border-box; box-sizing: border-box;
} }
/* 增收赋能 */
.module {
padding: 30rpx;
box-sizing: border-box;
}
.module-title {
margin-bottom: 20rpx;
color: #000000;
font-size: 32rpx;
font-weight: 600;
}
.enable-label {
background-color: #ffffff;
padding: 20rpx;
box-sizing: border-box;
border-radius: 20rpx;
position: relative;
margin-bottom: 30rpx;
}
.enable-img {
width: 200rpx;
border-radius: 20rpx;
}
.enable-cont {
position: absolute;
left: 0;
top: 0;
padding: 20rpx 20rpx 20rpx 240rpx;
box-sizing: border-box;
}
.enable-title {
font-size: 34rpx;
margin: 10rpx 0 15rpx;
}
.enable-price {
font-size: 36rpx;
color: #f0115c;
font-weight: 600;
}
.enable-text {
color: #999999;
margin: 10rpx 0 40rpx;
}

View File

@@ -75,7 +75,7 @@ Page({
loding: false loding: false
}) })
break; break;
case 'baofu': case 'baofoo':
this.baofuPay() this.baofuPay()
break; break;
} }

View File

@@ -31,12 +31,12 @@
</view> </view>
<radio class="radio-radio" value="coin" color="#da2b54" checked="{{payType == 'coin'}}"/> <radio class="radio-radio" value="coin" color="#da2b54" checked="{{payType == 'coin'}}"/>
</label> </label>
<label class="radio-flex" wx:if="{{can.baofu == 1}}"> <label class="radio-flex" wx:if="{{can.baofoo == 1}}">
<view class="radio-text"> <view class="radio-text">
<image class="radio-icon" src="/static/pay/wechat.png"></image> <image class="radio-icon" src="/static/pay/wechat.png"></image>
<text>微信支付(宝付)</text> <text>微信支付(宝付)</text>
</view> </view>
<radio class="radio-radio" value="baofu" color="#da2b54" checked="{{payType == 'baofu'}}"/> <radio class="radio-radio" value="baofoo" color="#da2b54" checked="{{payType == 'baofoo'}}"/>
</label> </label>
</radio-group> </radio-group>
<view class="radio-lay" wx:if="{{loding}}"></view> <view class="radio-lay" wx:if="{{loding}}"></view>

View File

@@ -1,4 +1,3 @@
// pages/sign/sign.js
Page({ Page({
/** /**
@@ -11,56 +10,56 @@ Page({
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad: function (options) {
}, },
/** /**
* 生命周期函数--监听页面初次渲染完成 * 生命周期函数--监听页面初次渲染完成
*/ */
onReady() { onReady: function () {
}, },
/** /**
* 生命周期函数--监听页面显示 * 生命周期函数--监听页面显示
*/ */
onShow() { onShow: function () {
}, },
/** /**
* 生命周期函数--监听页面隐藏 * 生命周期函数--监听页面隐藏
*/ */
onHide() { onHide: function () {
}, },
/** /**
* 生命周期函数--监听页面卸载 * 生命周期函数--监听页面卸载
*/ */
onUnload() { onUnload: function () {
}, },
/** /**
* 页面相关事件处理函数--监听用户下拉动作 * 页面相关事件处理函数--监听用户下拉动作
*/ */
onPullDownRefresh() { onPullDownRefresh: function () {
}, },
/** /**
* 页面上拉触底事件的处理函数 * 页面上拉触底事件的处理函数
*/ */
onReachBottom() { onReachBottom: function () {
}, },
/** /**
* 用户点击右上角分享 * 用户点击右上角分享
*/ */
onShareAppMessage() { onShareAppMessage: function () {
} }
}) })

View File

@@ -1,2 +1 @@
<!--pages/sign/sign.wxml--> <view></view>
<text>pages/sign/sign.wxml</text>

View File

@@ -1 +0,0 @@
/* pages/sign/sign.wxss */

View File

@@ -1,4 +1,3 @@
<view class="content"> <view class="content">
<view class="store-city">当前所在城市:哈尔滨市</view> <view class="store-city">当前所在城市:哈尔滨市</view>
<view class="store-title">请选择自提门店</view> <view class="store-title">请选择自提门店</view>

View File

@@ -89,6 +89,13 @@
<view class="userCont"> <view class="userCont">
<view class="white"> <view class="white">
<view class="tool-list"> <view class="tool-list">
<view class="order-item" bindtap="userNav" data-url="/pages/empower/empowerOrder/empowerOrder">
<image class="tool-icon" src="/static/imgs/tool_00.png" mode="widthFix"></image>
<view class="order-label">增收赋能类</view>
<block wx:if="{{userLogin}}">
<view class="order--number tool--number" wx:if="{{userData.empower.count > 0}}">{{userData.empower.count}}</view>
</block>
</view>
<view class="order-item" bindtap="userNav" data-url="/pages/account/index"> <view class="order-item" bindtap="userNav" data-url="/pages/account/index">
<image class="tool-icon" src="/static/imgs/tool_05.png" mode="widthFix"></image> <image class="tool-icon" src="/static/imgs/tool_05.png" mode="widthFix"></image>
<view class="order-label">我的账户</view> <view class="order-label">我的账户</view>

View File

@@ -130,6 +130,12 @@ page {
border: 4rpx solid #ffffff; border: 4rpx solid #ffffff;
} }
.tool--number {
border-radius: 30rpx;
padding: 0 8rpx;
right: 30rpx;
}
.parent-user { .parent-user {
display: flex; display: flex;
padding: 30rpx; padding: 30rpx;

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
static/icons/sign.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

BIN
static/imgs/tool_00.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB