微信支付、会员开通等

This commit is contained in:
高健 2021-09-01 16:55:20 +08:00
parent 2a6248fd37
commit 0b1a169901
193 changed files with 22153 additions and 1578 deletions

3
app.js
View File

@ -28,6 +28,7 @@ App({
globalData: { globalData: {
userInfo: {}, userInfo: {},
token: '', token: '',
userId: '' userId: '',
showUserId: '', //当前浏览的人的ID
}, },
}) })

View File

@ -35,9 +35,12 @@
"pages/mine/product/recycle/productrecycle", "pages/mine/product/recycle/productrecycle",
"pages/mine/product/coupon/couponlist", "pages/mine/product/coupon/couponlist",
"pages/mine/product/coupon/editcoupon", "pages/mine/product/coupon/editcoupon",
"pages/mine/product/coupon/choosegoods" "pages/mine/product/coupon/choosegoods",
"pages/mine/vip/vipcenter",
"pages/mine/income/incomelist"
], ],
"subPackages": [{ "subPackages": [
{
"root": "packagecard", "root": "packagecard",
"pages": [ "pages": [
"cardList/cardList", "cardList/cardList",
@ -59,21 +62,33 @@
"shop/product/goodsdetail", "shop/product/goodsdetail",
"shop/product/affirmorder", "shop/product/affirmorder",
"shop/catalog/bannerlist/goodscataloglist", "shop/catalog/bannerlist/goodscataloglist",
"common/corpperimg/cropperimg" "common/corpperimg/cropperimg",
"sharePage/cardcode",
"paypage/paypage",
"purse/takecash",
"marketing/marketinginfo",
"marketing/marketingposter",
"marketing/marketingpublish",
"marketing/posteredit",
"paypage/paystate",
"lucre/historylucre",
"purse/recordlist"
] ]
}], }
],
"window": { "window": {
"backgroundTextStyle": "dark", "backgroundTextStyle": "light",
"navigationBarBackgroundColor": "#fff", "navigationBarBackgroundColor": "#E6B980",
"navigationBarTitleText": "名片", "navigationBarTitleText": "服务",
"navigationBarTextStyle": "black", "navigationBarTextStyle": "white",
"navigationStyle": "custom" "navigationStyle": "custom"
}, },
"tabBar": { "tabBar": {
"color": "#000000", "color": "#000000",
"selectedColor": "#000000", "selectedColor": "#000000",
"borderStyle": "black", "borderStyle": "black",
"list": [{ "list": [
{
"text": "首页", "text": "首页",
"pagePath": "pages/index/index", "pagePath": "pages/index/index",
"iconPath": "images/ic_card_normal.png", "iconPath": "images/ic_card_normal.png",
@ -112,7 +127,12 @@
"van-switch": "/vant/dist/switch/index", "van-switch": "/vant/dist/switch/index",
"van-tab": "/vant/dist/tab/index", "van-tab": "/vant/dist/tab/index",
"van-tabs": "/vant/dist/tabs/index", "van-tabs": "/vant/dist/tabs/index",
"van-picker": "/vant/dist/picker/index" "van-picker": "/vant/dist/picker/index",
"van-popup": "/vant/dist/popup/index",
"van-dropdown-menu": "/vant/dist/dropdown-menu/index",
"van-dropdown-item": "/vant/dist/dropdown-item/index",
"van-collapse": "/vant/dist/collapse/index",
"van-collapse-item": "/vant/dist/collapse-item/index"
}, },
"plugins": { "plugins": {
"chooseLocation": { "chooseLocation": {

View File

@ -25,6 +25,14 @@ scroll-view {
border-bottom-color: #dfdfdf; border-bottom-color: #dfdfdf;
} }
.line-so-gray {
border-bottom-style: solid;
border-bottom-width: 2rpx;
border-bottom-color: #dfdfdf;
width: 100%;
margin: 15rpx;
}
.nav-list { .nav-list {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;

View File

@ -27,7 +27,7 @@ page {
--grey: #8799a3; --grey: #8799a3;
--black: #333333; --black: #333333;
--darkGray: #666666; --darkGray: #666666;
--gray: #aaaaaa; --gray: #999999;
--ghostWhite: #f1f1f1; --ghostWhite: #f1f1f1;
--white: #ffffff; --white: #ffffff;
--depBlack: #000000; --depBlack: #000000;
@ -3589,6 +3589,15 @@ scroll-view.cu-steps .cu-item {
color: var(--white); color: var(--white);
} }
.bg-yellowlight {
background-color: var(--yellowLight);
color: var(--white);
}
.line-yellowlight2 {
color: var(--yellowLight);
}
.bg-orange { .bg-orange {
background-color: var(--orange); background-color: var(--orange);
color: var(--white); color: var(--white);
@ -3613,6 +3622,10 @@ scroll-view.cu-steps .cu-item {
color: var(--white); color: var(--white);
} }
.bg-yellow-light-3 {
color: var(--yellowLight);
}
.bg-olive { .bg-olive {
background-color: var(--olive); background-color: var(--olive);
color: var(--white); color: var(--white);
@ -4149,6 +4162,56 @@ l .text-depblack {
} }
/* 自定义 */ /* 自定义 */
.tab {
position: fixed;
display: flex;
left: 0;
right: 0;
background: #fff;
flex-direction: column;
z-index: 100;
width: 100%;
}
.tab-box {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
width: 100%;
}
.options-box {
display: flex;
flex-direction: column;
justify-content: flex-start;
width: 100%;
flex-wrap: wrap;
padding: 15rpx;
box-shadow: 0rpx 2rpx 2rpx rgba(4, 0, 0, .2);
}
.options-box .item {
font-size: 28rpx;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
min-width: 20%;
border-radius: 20rpx;
padding: 7.5rpx 0rpx 7.5rpx 0rpx;
}
.options-box .item:nth-child(1) {
padding: 0rpx 0rpx 7.5rpx 0rpx;
}
.loading-box {
width: 100%;
display: flex;
justify-content: center;
}
.play-box { .play-box {
display: flex; display: flex;
margin-left: 20rpx; margin-left: 20rpx;

View File

@ -13,7 +13,11 @@ Component({
properties: { properties: {
bgColor: { bgColor: {
type: String, type: String,
default: 'title-bar-bg' default: '1'
},
isWhite: {
type: [Boolean, String],
default: false
}, },
isCustom: { isCustom: {
type: [Boolean, String], type: [Boolean, String],
@ -47,7 +51,7 @@ Component({
StatusBar: app.globalData.StatusBar, StatusBar: app.globalData.StatusBar,
CustomBar: app.globalData.CustomBar, CustomBar: app.globalData.CustomBar,
Custom: app.globalData.Custom, Custom: app.globalData.Custom,
userIcon: wx.getStorageSync('userIcon') || app.globalData.userIcon userIcon: wx.getStorageSync('userIcon') || '/images/ic_user_default.png'
}, },
/** /**
* 组件的方法列表 * 组件的方法列表
@ -82,7 +86,6 @@ Component({
}, },
// 点击标题 // 点击标题
showIcre() { showIcre() {
console.log('点击了')
this.triggerEvent('show', {}, {}) this.triggerEvent('show', {}, {})
} }
} }

View File

@ -1,6 +1,7 @@
<view class="cu-custom" style="height:{{CustomBar}}px"> <view class="cu-custom" style="height:{{CustomBar}}px">
<view class="cu-bar fixed {{bgImage!=''?'none-bg text-white bg-img':''}} {{bgColor}} title-bar-bg" <view
style="height:{{CustomBar}}px;padding-top:{{StatusBar}}px;{{bgImage?'background-image:url(' + bgImage+')':''}}"> class="cu-bar fixed {{bgImage!=''?'none-bg text-white bg-img':''}} {{isWhite ? 'title-bar-bg-white':'title-bar-bg'}}"
style="height:{{CustomBar}}px;padding-top:{{StatusBar}}px;">
<view class="action" bindtap="BackPage" wx:if="{{isBack}}"> <view class="action" bindtap="BackPage" wx:if="{{isBack}}">
<text class="cuIcon-back"></text> <text class="cuIcon-back"></text>
<slot name="backText"></slot> <slot name="backText"></slot>

View File

@ -26,3 +26,13 @@
color: #fff; color: #fff;
/* color: #000000; */ /* color: #000000; */
} }
.title-bar-bg-white {
background-color: #ffffff;
color: #000000;
}
.title-bar-bg-dark {
background-color: #000000;
color: #ffffff;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 885 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 625 B

BIN
images/htm.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 683 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 561 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 478 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 223 B

After

Width:  |  Height:  |  Size: 223 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 471 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 524 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 301 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 587 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 598 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 885 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
images/ic_cash.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 791 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 810 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 747 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 875 B

After

Width:  |  Height:  |  Size: 524 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 533 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 699 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 554 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 587 B

BIN
images/ic_hot_number_bg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 647 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 603 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 985 B

After

Width:  |  Height:  |  Size: 538 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 575 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

BIN
images/ic_order_all.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 498 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 842 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 862 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 897 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 874 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 826 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 909 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 839 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 620 B

BIN
images/ic_poster_icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 692 B

BIN
images/ic_purse.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 681 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
images/ic_scan_icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 829 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
images/ic_share_img.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
images/ic_share_moment.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1023 B

After

Width:  |  Height:  |  Size: 499 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 973 B

After

Width:  |  Height:  |  Size: 547 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 553 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 676 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 999 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 808 B

After

Width:  |  Height:  |  Size: 470 B

BIN
images/ic_vip_icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 785 B

BIN
images/ic_wait_pay.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 945 B

BIN
images/ic_wait_receipt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 805 B

BIN
images/ic_yellow_bg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
images/jpg.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
images/lib.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 925 B

BIN
images/map.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

BIN
images/mp3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
images/mp4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
images/txt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 913 B

View File

@ -29,7 +29,9 @@ Page({
oldToken: '', oldToken: '',
fromMine: false, fromMine: false,
imgTempSrc: '', imgTempSrc: '',
currentIndex: 0 currentIndex: 0,
windowWidth: app.globalData.windowWidth,
scale: 1
}, },
tabChange(e) { tabChange(e) {
this.setData({ this.setData({
@ -206,11 +208,6 @@ Page({
}) })
}) })
}, },
getPhoneNumber: function (e) {
console.log(e.detail.errMsg)
console.log(e.detail.iv)
console.log(e.detail.encryptedData)
},
// 获取名片信息 // 获取名片信息
getNameCard: function () { getNameCard: function () {
var self = this; var self = this;
@ -226,8 +223,10 @@ Page({
}, },
data: {} data: {}
}).then(res => { }).then(res => {
console.log(res.data)
var area = res.data.areaList var area = res.data.areaList
var scale = res.data.picturesTemplateWidth / self.data.windowWidth
res.data.picturesTemplateWidth = res.data.picturesTemplateWidth / scale
res.data.picturesTemplateHeight = res.data.picturesTemplateHeight / scale
for (let i = 0; i < area.length; i++) { for (let i = 0; i < area.length; i++) {
if (area[i].templateAreaFontCenter == '1') { if (area[i].templateAreaFontCenter == '1') {
area[i].templateAreaFontCenter = 'left' area[i].templateAreaFontCenter = 'left'
@ -248,7 +247,14 @@ Page({
// area[i].templateAreaFontValue = area[i].templateAreaFontValue.substring(area[i].templateAreaFontLength, -1) // area[i].templateAreaFontValue = area[i].templateAreaFontValue.substring(area[i].templateAreaFontLength, -1)
// } // }
// } // }
area[i].templateAreaFontSize = Math.floor(area[i].templateAreaFontSize * 750 / wx.getSystemInfoSync().windowWidth) + 'rpx' // area[i].templateAreaFontSize = Math.floor(() + 'rpx'
area[i].templateAreaFontSize = area[i].templateAreaFontSize / scale + 'px'
area[i].templateAreaHeight = area[i].templateAreaHeight / scale
area[i].templateAreaWidth = area[i].templateAreaWidth / scale
area[i].templateAreaDown = area[i].templateAreaDown / scale
area[i].templateAreaTop = area[i].templateAreaTop / scale
area[i].templateAreaRight = area[i].templateAreaRight / scale
area[i].templateAreaLeft = area[i].templateAreaLeft / scale
} }
self.setData({ self.setData({
cardInfo: res.data, cardInfo: res.data,
@ -258,36 +264,7 @@ Page({
.catch(err => { .catch(err => {
}) })
// app.restAjax.get(app.restAjax.path('{cardUrl}app/cardtemplate/getcardtemplatebyid/' + self.data.cardId + queryInfo, [app.cardUrl]), {}, {
// headers: {
// token: app.globalData.token
// }
// }, function (code, data) {
// for (let i = 0; i < self.data.fontFamilyList.length; i++) {
// if (data.templateTypeface == self.data.fontFamilyList[i].id) {
// self.setData({
// useFontFamily: self.data.fontFamilyList[i].name
// })
// }
// }
// if (self.data.fromMine) {
// self.setData({
// areaList: JSON.parse(data.content)
// })
// }
// self.setData({
// cardInfo: data
// })
// var query = wx.createSelectorQuery()
// query.select('.card').boundingClientRect()
// query.exec(function (res) {
// self.setData({
// cardHeight: res[0].height
// })
// })
// }, function (code, data) {
// app.dialog.msg(data.msg);
// });
}, },
// 获取名片内容区域 // 获取名片内容区域
getNameCradArea: function () { getNameCradArea: function () {
@ -417,12 +394,6 @@ Page({
}, },
openPage() { openPage() {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
}, },
/** /**
@ -435,10 +406,4 @@ Page({
} }
}, },
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
}) })

View File

@ -1,7 +1,6 @@
<cu-custom isCustom="{{false}}" isBack="{{true}}"> <cu-custom isCustom="{{false}}" isBack="{{true}}">
<view slot="content">创建名片</view> <view slot="content">创建名片</view>
</cu-custom> </cu-custom>
<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber" wx:if="{{bindPhone == '0'}}">获取手机号</button>
<view style="margin:15rpx;"> <view style="margin:15rpx;">
<view class="card" <view class="card"
style="padding-bottom:{{(cardInfo.picturesTemplateHeight / cardInfo.picturesTemplateWidth) *100 +'%'}};"> style="padding-bottom:{{(cardInfo.picturesTemplateHeight / cardInfo.picturesTemplateWidth) *100 +'%'}};">
@ -10,7 +9,7 @@
wx:if="{{cardInfo.picturesTemplateBackgroundImage}}"></image> wx:if="{{cardInfo.picturesTemplateBackgroundImage}}"></image>
<!-- 文字 --> <!-- 文字 -->
<view class="area-box" wx:for="{{areaList}}" data-cur="{{index}}" catchtap="giveFocus" wx:key="index" <view class="area-box" wx:for="{{areaList}}" data-cur="{{index}}" catchtap="giveFocus" wx:key="index"
style="position:absolute;top: {{(item.templateAreaTop / cardInfo.picturesTemplateHeight) * 100 + '%'}};left:{{(item.templateAreaLeft / cardInfo.picturesTemplateWidth) * 100 + '%'}};color:{{item.templateAreaFontColor}};;width:{{(item.templateAreaWidth / cardInfo.picturesTemplateWidth) * 100 + '%'}};height:{{(item.templateAreaHeight / cardInfo.picturesTemplateHeight) * 100 + '%'}};font-size:{{item.templateAreaFontSize}};font-style:{{item.templateAreaFontStyle}};font-weight:{{item.templateAreaFontBold}};text-align:{{item.templateAreaFontCenter}}" style="position:absolute;top: {{(item.templateAreaTop / cardInfo.picturesTemplateHeight) * 100 + '%'}};left:{{(item.templateAreaLeft / cardInfo.picturesTemplateWidth) * 100 + '%'}};color:{{item.templateAreaFontColor}};;width:{{item.templateAreaWidth }}px;height:{{item.templateAreaHeight}}px;font-size:{{item.templateAreaFontSize}};font-style:{{item.templateAreaFontStyle}};font-weight:{{item.templateAreaFontBold}};text-align:{{item.templateAreaFontCenter}};line-height: {{item.templateAreaHeight}}px;"
wx:if="{{item.templateAreaServerLink == '1' && item.templateAreaType != '1'}}"> wx:if="{{item.templateAreaServerLink == '1' && item.templateAreaType != '1'}}">
{{item.templateAreaFontValue}} {{item.templateAreaFontValue}}
</view> </view>

View File

@ -3,7 +3,6 @@
height: 0; height: 0;
position: relative; position: relative;
box-sizing: border-box; box-sizing: border-box;
background: #fff;
z-index: 100; z-index: 100;
/* text-align: center; */ /* text-align: center; */
} }

View File

@ -7,9 +7,70 @@ Page({
*/ */
data: { data: {
imgUrl: app.urls.baseImgUrl, imgUrl: app.urls.baseImgUrl,
cardList: [] cardList: [],
currentIndex: 0,
optionsList: [],
isNeedPay: false, //是否需要交费
needPayPrice: 0, //个人需要交费
needPayTeamPrice: 0, //团体需要交费
curTypeId: '',
isRefreshing: false, //是否在刷新
isRefresh: false,
isShowCodeInput: false, //测试true
code: '', //邀请码
}, },
getList: function () { /**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
// this.getPayState()
},
onShow() {
this.dorefreshList()
},
//列表刷新
dorefreshList() {
var _self = this
_self.setData({
isRefresh: false,
isRefreshing: true,
cardList: []
})
_self.getPayState()
},
//获取类型
getOptionsList() {
var _self = this
wx.showLoading({
title: '加载中...',
})
app.http.get(app.urls.getDictionaryList.format({
dataParentId: '4bf68c60-eac5-480d-b5e1-15203d0282f9'
}), {
header: {
token: app.globalData.token
}
})
.then(res => {
wx.hideLoading({})
if (res.data.length > 0) {
_self.setData({
optionsList: res.data,
curTypeId: res.data[0].dataId,
currentIndex: 0
})
//根据第一条获取数据
_self.getList()
}
})
.catch(err => {
console.log(err)
_self.setData({
isRefreshing: false
})
})
},
getList() {
var self = this var self = this
wx.showLoading({ wx.showLoading({
title: '加载中...', title: '加载中...',
@ -17,51 +78,141 @@ Page({
app.http.get(app.urls.getCardList, { app.http.get(app.urls.getCardList, {
header: { header: {
token: app.globalData.token token: app.globalData.token
},
data: {
templateType: self.data.curTypeId
} }
}).then(res => { }).then(res => {
wx.hideLoading({}) wx.hideLoading({})
self.setData({ res.data.forEach(it => {
cardList: res.data if (it.picturesTemplateNumber > 1000 && it.picturesTemplateNumber < 10000) {
it.number = it.picturesTemplateNumber / 1000 + 'K+'
} else if (it.picturesTemplateNumber > 10000 && it.picturesTemplateNumber < 1000000) {
it.number = it.picturesTemplateNumber / 10000 + 'W+'
} else {
it.number = it.picturesTemplateNumber
}
})
self.setData({
cardList: res.data,
isRefreshing: false
}) })
wx.hideNavigationBarLoading() //完成停止加载
wx.stopPullDownRefresh() //停止下拉刷新
}) })
.catch(err => { .catch(err => {
wx.hideLoading({}) wx.hideLoading({})
wx.hideNavigationBarLoading() //完成停止加载 self.setData({
wx.stopPullDownRefresh() //停止下拉刷新 isRefreshing: false
})
}) })
}, },
goDetail: function (e) { goDetail: function (e) {
var _self = this
var id = e.currentTarget.dataset.id var id = e.currentTarget.dataset.id
console.log(id) var isPay = e.currentTarget.dataset.ispay //是否需要交费
var price = e.currentTarget.dataset.price //价格
var payState = e.currentTarget.dataset.paystate //交费转态
if (_self.data.isNeedPay) {
wx.navigateTo({
url: '/packagecard/paypage/paypage?price=' + _self.data.needPayPrice + '&teamprice=' + _self.data.needPayTeamPrice + '&displayTreaty=1&type=1',
})
} else {
//已经支付过
if (isPay == '1') {
//需要付款
//判断是否交过费
if (payState) {
wx.navigateTo({ wx.navigateTo({
url: '../cardDetail/cardDetail?id=' + id, url: '../cardDetail/cardDetail?id=' + id,
}) })
}, } else {
/** //交费
* 生命周期函数--监听页面加载 wx.navigateTo({
*/ url: '/packagecard/paypage/paypage?price=' + price + '&type=2',
onLoad: function (options) {
var self = this
wx.getStorage({
key: 'token',
success: function (res) {
self.setData({
token: res.data
}) })
app.globalData.token = res.data }
self.getList() } else {
//免费
wx.navigateTo({
url: '../cardDetail/cardDetail?id=' + id,
})
}
}
},
onChange(e) {
var _self = this
_self.setData({
currentIndex: e.detail.index,
curTypeId: _self.data.optionsList[e.detail.index].dataId,
cardList: []
})
//重置所有数据重新加载
this.getList()
},
//获取支付状态
getPayState() {
var _self = this
wx.showLoading({
title: '加载中...',
})
app.http.get(app.urls.getPayState, {
header: {
token: app.globalData.token
} }
}) })
.then(res => {
wx.hideLoading({})
//支付过跳转名片创建页面,没有支付跳转支付页面
_self.setData({
isNeedPay: res.data.cardCharge, //是否需要交费
needPayPrice: res.data.cardChargePrice, //个人
needPayTeamPrice: res.data.cardChargeDepartmentPrice, //团体
})
_self.getOptionsList()
})
.catch(err => {
_self.setData({
isRefreshing: false
})
})
}, },
/** /**
* 页面相关事件处理函数--监听用户下拉动作 * 页面相关事件处理函数--监听用户下拉动作
*/ */
onPullDownRefresh: function () { onPullDownRefresh: function () {
this.getList() this.getList()
}, },
onClose(e) {
this.setData({
isShowCodeInput: false
})
},
inpuWatch(e) {
this.setData({
code: e.detail.value
})
},
//邀请码创建
codeCreate(e) {
var _self = this
if (_self.data.code == '') {
wx.showToast({
title: '请输入邀请码',
icon: 'none'
})
} else {
//未支付过跳转支付
wx.navigateTo({
url: '/packagecard/paypage/paypage?price=' + _self.data.needPayPrice + '&teamprice=' + _self.data.needPayTeamPrice + '&displayTreaty=1' + '&type=1&code=' + _self.data.code,
})
}
},
//无邀请码创建
noCodeCreate(e) {
wx.navigateTo({
url: '/packagecard/paypage/paypage?price=' + _self.data.needPayPrice + '&teamprice=' + _self.data.needPayTeamPrice + '&displayTreaty=1&type=1',
})
}
}) })

View File

@ -1,4 +1,3 @@
{ {
"usingComponents": {}, "usingComponents": {}
"enablePullDownRefresh": true
} }

View File

@ -1,11 +1,58 @@
<cu-custom isCustom="{{false}}" isBack="{{true}}"> <cu-custom isCustom="{{false}}" isBack="{{true}}">
<view slot="content">模板列表</view> <view slot="content">模板列表</view>
</cu-custom> </cu-custom>
<view class="tab">
<van-tabs style="width: 100%;" active="{{ currentIndex }}" bind:change="onChange" ellipsis="{{false}}"
z-index="{{100}}" color="#E6B980">
<block wx:for="{{optionsList}}" wx:key="index">
<van-tab title="{{item.dataName}}">
</van-tab>
</block>
</van-tabs>
</view>
<scroll-view style="margin-top: 70rpx;" refresher-enabled="true" refresher-threshold="{{50}}"
refresher-background="#fff" enhanced="{{true}}" scroll-y bindrefresherrefresh="dorefreshList"
refresher-triggered="{{isRefreshing}}">
<block wx:if="{{cardList.length>0}}">
<view class="page-box"> <view class="page-box">
<view class="card" bindtap="goDetail" wx:for="{{cardList}}" data-id="{{item.cardTemplateId}}" wx:key="index"> <block wx:for="{{cardList}}" wx:key="index">
<view class="card-img"> <view class="card-img" bindtap="goDetail" data-id="{{item.cardTemplateId}}" data-ispay="{{item.templateCharge}}"
<image src="{{imgUrl+item.picturesTemplatePictureUrl}}"></image> data-price="{{item.templatePrice}}" data-paystate="{{item.cardCharge}}">
<image src="{{imgUrl+item.picturesTemplatePictureUrl}}" mode="scaleToFill" style="width: 100%;height: 100%;">
</image>
<view class="price-box">
<image src="/images/ic_corner_mark_bg.png" mode="scaleToFill"></image>
<view class="price" wx:if="{{item.templateCharge=='1'}}">
<text> ¥ {{item.templatePrice}}</text>
</view> </view>
<view class="card-name">{{item.picturesTemplateTitle}}</view> <view class="price" wx:else>
<text>免费</text>
</view> </view>
</view> </view>
<view class="number-box">
<image src="/images/ic_hot_number_bg.png" mode="scaleToFill"></image>
<view class="number-content">
<text>使用次数:{{item.number}}</text>
</view>
</view>
</view>
</block>
</view>
</block>
<view wx:else style="margin-top:200rpx;width:100%;">
<van-empty description="暂无数据" />
</view>
</scroll-view>
<van-popup show="{{ isShowCodeInput }}" bind:close="onClose" custom-style="width:70%;height:20%;" round>
<view class="code-box">
<view style="display: flex;flex-direction: column;justify-content: center;align-items: center;">
<view class="code-title">邀请码</view>
<input placeholder="请输入邀请码" bindinput="inpuWatch" />
</view>
<view class="btns">
<button class="cu-btn bg-blue" style="width:100%" bindtap="codeCreate">邀请码创建</button>
<button class="cu-btn bg-blue" style="width:100%;margin-left: 15rpx;" bindtap="noCodeCreate">无邀请码创建</button>
</view>
</view>
</van-popup>

View File

@ -1,4 +1,3 @@
.card { .card {
width: 100%; width: 100%;
box-shadow: 0 0 20rpx #EEE; box-shadow: 0 0 20rpx #EEE;
@ -16,13 +15,110 @@
padding: 7.5rpx 0rpx 15rpx 0rpx; padding: 7.5rpx 0rpx 15rpx 0rpx;
} }
.card-img, .card-img {
.card-img image {
width: 100%; width: 100%;
height: 400rpx; height: 400rpx;
position: relative;
margin-top: 15rpx;
border-radius: 10rpx;
} }
.card-name { .card-name {
font-size: 36rpx; font-size: 36rpx;
padding: 15rpx 0rpx 0rpx 15rpx; padding: 15rpx 0rpx 0rpx 15rpx;
} }
.price-box {
width: 128rpx;
height: 128rpx;
z-index: 3;
position: absolute;
left: 0rpx;
top: 0rpx;
}
.price-box image {
width: 128rpx;
height: 128rpx;
}
.price-text {
position: absolute;
z-index: 3;
top: 25%;
left: 45%;
transform: rotate(45deg);
font-size: 32rpx;
color: #ffffff;
}
.price {
position: absolute;
z-index: 3;
top: -20rpx;
left: 65rpx;
transform: rotate(-45deg) translate(-50%, -50%);
font-size: 32rpx;
color: #ffff00;
width: 100%;
}
.number-box {
width: 128rpx;
height: 128rpx;
position: absolute;
bottom: 0rpx;
right: 0rpx;
}
.number-box image {
width: 100%;
height: 100%;
margin-top: 0rpx;
border-radius: 0rpx;
}
.number-content {
width: 100%;
color: #fff;
position: absolute;
top: 30rpx;
right: -70rpx;
transform: rotate(-45deg) translate(-50%, -50%);
font-size: 18rpx;
text-align: center;
}
.code-box {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.code-box input {
line-height: 80rpx;
height: 80rpx;
font-size: 28rpx;
text-align: center;
border: 1rpx solid #f2f2f2;
background-color: #f2f2f2;
border-radius: 10rpx;
width: 95%;
}
.code-box .code-title {
font-size: 38rpx;
color: var(--yellowLight);
padding-bottom: 15rpx;
text-align: center;
margin-top: 15rpx;
}
.code-box .btns {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}

View File

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

Some files were not shown because too many files have changed in this diff Show More