450 lines
10 KiB
JavaScript
450 lines
10 KiB
JavaScript
// pages/mine/index/index.js
|
|
const app = getApp()
|
|
Page({
|
|
|
|
/**
|
|
* 页面的初始数据
|
|
*/
|
|
data: {
|
|
nickName: '昵称',
|
|
name: '用户名称',
|
|
userIcon: '/images/ic_user_default.png',
|
|
menuList: [],
|
|
imgUrl: app.urls.baseImgUrl,
|
|
Height: 0,
|
|
isShow: true,
|
|
isBindPhone: false,
|
|
isPay: true, //是否需要交费
|
|
code: '',
|
|
isOpen: true,
|
|
payState: {},
|
|
accountInfo: undefined,
|
|
userId: ''
|
|
},
|
|
/**
|
|
* 生命周期函数--监听页面加载
|
|
*/
|
|
onLoad(options) {
|
|
var _self = this
|
|
_self.setData({
|
|
nickName: app.globalData.userInfo.name,
|
|
name: app.globalData.userInfo.name
|
|
})
|
|
try {
|
|
var isBind = wx.getStorageSync('bindPhone')
|
|
var code = wx.getStorageSync('usercode')
|
|
var userId = wx.getStorageSync('userId')
|
|
if (code && code.length > 0) {
|
|
_self.setData({
|
|
code: code,
|
|
userId: userId
|
|
})
|
|
}
|
|
_self.setData({
|
|
isBindPhone: isBind == 0
|
|
})
|
|
} catch (err) {
|
|
console.log(err)
|
|
}
|
|
},
|
|
//获取我的账户信息
|
|
getAccountInfo() {
|
|
var _self = this
|
|
app.http.get(app.urls.getMyAccount, {
|
|
header: {
|
|
token: app.globalData.token
|
|
}
|
|
})
|
|
.then(res => {
|
|
_self.setData({
|
|
accountInfo: res.data
|
|
})
|
|
})
|
|
.catch(err => {
|
|
console.log(err)
|
|
})
|
|
},
|
|
//获取支付状态
|
|
getPayState() {
|
|
wx.showLoading({
|
|
title: '加载中...',
|
|
})
|
|
var _self = this
|
|
app.http.get(app.urls.getPayState, {
|
|
header: {
|
|
token: app.globalData.token
|
|
}
|
|
})
|
|
.then(res => {
|
|
wx.hideLoading({})
|
|
//支付过跳转名片创建页面,没有支付跳转支付页面
|
|
if (res.data.cardChargeEnd && res.data.cardChargeEnd.length > 0) {
|
|
res.data.cardChargeEnd = _self.formatDate(res.data.cardChargeEnd)
|
|
}
|
|
_self.setData({
|
|
isPay: res.data.cardCharge,
|
|
payState: res.data
|
|
})
|
|
})
|
|
.catch(err => {
|
|
|
|
})
|
|
},
|
|
formatDate(date) {
|
|
if (date.length > 0) {
|
|
return date.slice(0, 11)
|
|
} else {
|
|
return ''
|
|
}
|
|
},
|
|
//获取菜单状态
|
|
getMenuState() {
|
|
var _self = this
|
|
app.http.get(app.urls.getMenuState, {
|
|
header: {
|
|
token: app.globalData.token
|
|
}
|
|
})
|
|
.then(res => {
|
|
_self.setData({
|
|
isOpen: res.data
|
|
})
|
|
})
|
|
.catch(err => {
|
|
|
|
})
|
|
},
|
|
//获取菜单
|
|
getItemList() {
|
|
wx.showLoading({
|
|
title: '加载中...',
|
|
})
|
|
var _self = this
|
|
app.http.get(app.urls.getMenuList, {
|
|
header: {
|
|
token: app.globalData.token
|
|
}
|
|
})
|
|
.then(res => {
|
|
var data = res.data
|
|
wx.stopPullDownRefresh({})
|
|
wx.hideLoading({})
|
|
var is = true
|
|
data.forEach(it => {
|
|
it.configColumnList.sort((a, b) => a.configColumnGroupOrder - b.configColumnGroupOrder)
|
|
if (it.configColumnGroupName == '创建名片') {
|
|
is = false
|
|
}
|
|
})
|
|
_self.setData({
|
|
menuList: data,
|
|
isShow: is
|
|
})
|
|
})
|
|
.catch(err => {
|
|
console.log(err)
|
|
wx.stopPullDownRefresh({})
|
|
wx.hideLoading({})
|
|
})
|
|
},
|
|
checkPermission() {
|
|
var _self = this
|
|
try {
|
|
var names = wx.getStorageSync('name')
|
|
var icon = wx.getStorageSync('userIcon')
|
|
if (names) {
|
|
this.setData({
|
|
name: names,
|
|
userIcon: icon
|
|
})
|
|
} else {
|
|
wx.showModal({
|
|
title: '提示',
|
|
content: '小程序需要您微信头像以及昵称用于展示,请授权.',
|
|
showCancel: false,
|
|
success(res) {
|
|
console.log(res)
|
|
if (res.confirm) {
|
|
// _self.getUserProfile(3)
|
|
}
|
|
}
|
|
})
|
|
}
|
|
} catch (error) {
|
|
wx.showToast({
|
|
title: '获取信息失败',
|
|
icon: 'error'
|
|
})
|
|
}
|
|
},
|
|
getUserProfile(e) {
|
|
let _self = this
|
|
wx.getUserProfile({
|
|
desc: '获取微信头像以及昵称用于展示',
|
|
success: (res) => {
|
|
wx.setStorage({
|
|
data: res.userInfo.nickName,
|
|
key: 'name',
|
|
})
|
|
wx.setStorage({
|
|
data: res.userInfo.avatarUrl,
|
|
key: 'userIcon',
|
|
})
|
|
_self.setData({
|
|
name: res.userInfo.nickName,
|
|
userIcon: res.userInfo.avatarUrl
|
|
})
|
|
},
|
|
fail(err) {
|
|
//判断是否绑定手机号
|
|
wx.showToast({
|
|
title: '获取个人信息失败',
|
|
icon: 'error',
|
|
})
|
|
}
|
|
})
|
|
},
|
|
addShop() {
|
|
wx.navigateTo({
|
|
url: '../shop/addshop',
|
|
})
|
|
},
|
|
onShow() {
|
|
var name = wx.getStorageSync('name')
|
|
var userIcon = wx.getStorageSync('userIcon')
|
|
var isBind = wx.getStorageSync('bindPhone')
|
|
if (name) {
|
|
this.setData({
|
|
name: name,
|
|
userIcon: userIcon,
|
|
isBindPhone: isBind == 0
|
|
})
|
|
}
|
|
// this.getMenuState()
|
|
this.getItemList()
|
|
this.getPayState()
|
|
this.getAccountInfo()
|
|
},
|
|
//item 状态 1 待付款 2待发货 3待收货 4售后/退款
|
|
showOrder(e) {
|
|
var item = e.currentTarget.dataset.item
|
|
console.log(item)
|
|
var path = '/pages/mine/order/orderlist?status=' + item
|
|
wx.navigateTo({
|
|
url: path,
|
|
})
|
|
},
|
|
choosePage(e) {
|
|
// 栏目列表页跳转方式1:小程序页面,2:其他小程序,3:网址
|
|
var path = e.currentTarget.dataset.path
|
|
var type = e.currentTarget.dataset.type
|
|
var item = e.currentTarget.dataset.item
|
|
switch (type) {
|
|
case '1': //跳转小程序内部
|
|
case '3': //链接
|
|
wx.navigateTo({
|
|
url: path + '?id=' + item.configColumnId + '&mode=' + item.configTableMode + '&type=' + item.configColumnType + '&title=' + item.configColumnName
|
|
})
|
|
break
|
|
case '2': //其他小程序
|
|
wx.navigateToMiniProgram({
|
|
appId: '',
|
|
success(res) {
|
|
// 打开成功
|
|
}
|
|
})
|
|
break
|
|
}
|
|
},
|
|
onPullDownRefresh() {
|
|
this.getItemList()
|
|
this.getPayState()
|
|
this.getAccountInfo()
|
|
this.getBaseInfo()
|
|
},
|
|
getBaseInfo() {
|
|
var _self = this
|
|
app.http.get(app.urls.getMainMoment.format({
|
|
configColumnId: 'de7b5e22-64f9-4c60-a1f9-6ac004dfb9a8'
|
|
}), {
|
|
header: {
|
|
token: app.globalData.token
|
|
},
|
|
data: {
|
|
userId: _self.data.userId
|
|
}
|
|
})
|
|
.then(res => {
|
|
if (res.data.length > 0) {
|
|
res.data[0].list.forEach(it => {
|
|
switch (it.name) {
|
|
case 'cardtitle':
|
|
wx.setStorageSync('cardtitle', it.value)
|
|
break
|
|
case 'postertitle':
|
|
wx.setStorageSync('postertitle', it.value)
|
|
break
|
|
}
|
|
})
|
|
} else {}
|
|
})
|
|
.catch(err => {})
|
|
},
|
|
//跳转到二级栏目页面
|
|
goColumnList(e) {
|
|
var item = e.currentTarget.dataset.item
|
|
// 1小程序 . 2其他小程序 . 3网址 . 4栏目列表
|
|
if (item.configColumnGroupTargetMode == '1') {
|
|
//小程序
|
|
wx.navigateTo({
|
|
url: item.configColumnGroupTargetUrl,
|
|
})
|
|
} else if (item.configColumnGroupTargetMode == '2') {
|
|
//其他小程序
|
|
} else if (item.configColumnGroupTargetMode == '3') {
|
|
//url
|
|
} else {
|
|
//二级列表
|
|
wx.navigateTo({
|
|
url: '../columnlist/columnlist?id=' + item.configColumnGroupId + '&title=' + item.configColumnGroupName,
|
|
})
|
|
}
|
|
|
|
},
|
|
// 跳转到 我的名片
|
|
goMyCard: function () {
|
|
wx.navigateTo({
|
|
url: '../myCard/myCard',
|
|
})
|
|
},
|
|
//跳转设置页面
|
|
showSetting() {
|
|
wx.navigateTo({
|
|
url: '../../mine/setting/columnsetting'
|
|
})
|
|
},
|
|
imgHeight(e) {
|
|
var winWid = wx.getSystemInfoSync().windowWidth; //获取当前屏幕的宽度
|
|
var imgh = e.detail.height; //图片高度
|
|
var imgw = e.detail.width; //图片宽度
|
|
var swiperH = winWid * imgh / imgw * 0.88 + "px"
|
|
|
|
this.setData({
|
|
Height: swiperH //设置高度
|
|
})
|
|
},
|
|
//引导跳转
|
|
toFunction(e) {
|
|
var _self = this
|
|
var path = ''
|
|
_self.data.menuList.forEach(it => {
|
|
//判断引导
|
|
if (it.configColumnGroupDirection == '3') {
|
|
//引导
|
|
path = it.configColumnGroupTargetUrl
|
|
}
|
|
})
|
|
wx.navigateTo({
|
|
url: path,
|
|
})
|
|
},
|
|
//获取手机号进行绑定
|
|
getPhoneNumber(e) {
|
|
var _self = this
|
|
var iv = e.detail.iv
|
|
var encryptedData = e.detail.encryptedData
|
|
if (encryptedData) {
|
|
wx.showLoading({
|
|
title: '绑定中...',
|
|
})
|
|
app.http.put(app.urls.doUpdatePhone, {
|
|
header: {
|
|
token: app.globalData.token
|
|
},
|
|
data: {
|
|
iv: iv,
|
|
encryptedData: encryptedData
|
|
}
|
|
})
|
|
.then(res => {
|
|
wx.hideLoading({})
|
|
//保存绑定状态
|
|
wx.setStorageSync('token', res.data.data)
|
|
wx.setStorageSync('bindPhone', 1)
|
|
_self.setData({
|
|
isBindPhone: true
|
|
})
|
|
app.globalData.token = token
|
|
wx.showToast({
|
|
title: '绑定成功',
|
|
success(e) {
|
|
wx.navigateTo({
|
|
url: '/packagecard/cardList/cardList',
|
|
})
|
|
}
|
|
})
|
|
})
|
|
.catch(err => {})
|
|
}
|
|
},
|
|
//复制邀请码
|
|
copyCode() {
|
|
var _self = this
|
|
if (_self.data.code != '') {
|
|
wx.setClipboardData({
|
|
data: _self.data.code,
|
|
success: function () {}
|
|
})
|
|
} else {
|
|
wx.showToast({
|
|
title: '无邀请码',
|
|
icon: 'error'
|
|
})
|
|
}
|
|
},
|
|
//营销资讯
|
|
toInformation() {
|
|
wx.navigateTo({
|
|
url: '/packagecard/marketing/marketinginfo',
|
|
})
|
|
},
|
|
//营销海报
|
|
toReport() {
|
|
wx.navigateTo({
|
|
url: '/packagecard/marketing/marketingposter',
|
|
})
|
|
},
|
|
//收益统计
|
|
toStatistics() {
|
|
wx.navigateTo({
|
|
url: '/pages/mine/income/incomelist',
|
|
})
|
|
},
|
|
//会员中心
|
|
vipCenter() {
|
|
wx.navigateTo({
|
|
url: '/pages/mine/vip/vipcenter',
|
|
})
|
|
},
|
|
//扫码
|
|
toScan() {
|
|
wx.scanCode({
|
|
success(res) {
|
|
|
|
}
|
|
})
|
|
},
|
|
//订单页面跳转
|
|
showOrder(e) {
|
|
var type = e.currentTarget.dataset.type
|
|
// 0待付款 1待发货 2待收货 3全部
|
|
wx.navigateTo({
|
|
url: '/pages/mine/order/orderlist?status=' + type,
|
|
})
|
|
},
|
|
doCash(e) {
|
|
wx.navigateTo({
|
|
url: '/packagecard/purse/takecash',
|
|
})
|
|
}
|
|
}) |