diff --git a/app.json b/app.json index 58e6904..efb85db 100644 --- a/app.json +++ b/app.json @@ -69,8 +69,11 @@ "pages/user/user_fw/user_fw", "pages/user/user_coupon/user_coupon", "pages/user/grow_value/grow_value", - "pages/payment/pay_success/pay_success" + "pages/payment/pay_success/pay_success", + "pages/user/plus/plus", + "pages/user/cardinfo/cardinfo" + ], "permission": { "scope.userLocation": { diff --git a/app.wxss b/app.wxss index 352c091..4071e99 100644 --- a/app.wxss +++ b/app.wxss @@ -145,6 +145,12 @@ justify-content:flex-start; align-items:center; } .flex{display: flex} +.ai-center{ + align-items: center; +} +.jc-center{ + justify-content: center; +} /* 水平左对齐 */ .flex-level-left{ display:flex; @@ -262,29 +268,7 @@ justify-content:space-around; font-style: normal; } -.fs22{ - font-size: 22rpx; -} - -.fs26{ - font-size: 26rpx; -} - - -.fs30{ - font-size:30rpx; -} - -.fs35{ - font-size:35rpx; -} -.fs45{ - font-size: 45rpx; -} -.fs50{ - font-size: 50rpx; -} /* 7.26 */ @@ -356,19 +340,33 @@ position: fixed; background: #ffe3e2; } -.fs32{ - font-size:32rpx; -} -.fs60{ font-size:60rpx;} -.fs28{ - font-size: 28rpx; -} .fs20{ font-size: 20rpx; } +.fs22{ + font-size: 22rpx; +} .fs24{ font-size: 24rpx; } + +.fs26{ + font-size: 26rpx; +} +.fs28{ + font-size: 28rpx; +} + +.fs30{ + font-size:30rpx; +} +.fs32{ + font-size:32rpx; +} + +.fs35{ + font-size:35rpx; +} .fs36 { font-size: 36rpx; } @@ -378,6 +376,13 @@ background: #ffe3e2; .ai_end{ align-items: flex-end; } +.fs45{ + font-size: 45rpx; +} +.fs50{ + font-size: 50rpx; +} +.fs60{ font-size:60rpx;} .flex-wrap{ flex-wrap:wrap; } \ No newline at end of file diff --git a/images/share/mackground.png b/images/share/mackground.png new file mode 100644 index 0000000..6bcf62e --- /dev/null +++ b/images/share/mackground.png diff --git a/pages/getphone/getphone.js b/pages/getphone/getphone.js index bd9b15e..6896cac 100644 --- a/pages/getphone/getphone.js +++ b/pages/getphone/getphone.js @@ -4,6 +4,13 @@ Page({ store:null, imghots: os.imghost, }, + + onLoad: function (options) { + //--判断是否有接受到邀请人的ID-- + if(options.first_leader){ + this.setData({first_leader:options.first_leader}); + } + }, onShow:function(){ var th=this,app = getApp(); var sessionKey = getApp().globalData.sessionKey; @@ -16,11 +23,8 @@ Page({ wx.navigateTo({ url: '/pages/togoin/togoin', }) return false; } - var user_info=getApp().globalData.userInfo; - console.log("getphone"); - console.log(user_info); if(user_info!=null && user_info.mobile!=undefined && user_info.mobile!="" && user_info.mobile!=null){ wx.navigateBack({ @@ -72,6 +76,11 @@ Page({ iv: e.iv, store_id: getApp().globalData.setting.stoid, }; + //--如果有邀请人的时候-- + if(th.data.first_leader){ + dd.first_leader=th.data.first_leader; + } + console.log(dd); app.request.get("/api/weshop/users/thirdLogin", { data: dd, diff --git a/pages/user/Change_phone/Change_phone.js b/pages/user/Change_phone/Change_phone.js new file mode 100644 index 0000000..8882266 --- /dev/null +++ b/pages/user/Change_phone/Change_phone.js @@ -0,0 +1,213 @@ +var a = getApp(), + o = a.globalData, + r = a.globalData.setting, + t = a.request, + s = require("../../../utils/common.js"), + util = require("../../../utils/util.js"); +Page({ + + /** + * 页面的初始数据 + */ + data: { + iurl: r.imghost, + inputxphone: 0, + mobile: 17359580658, //旧手机号码 + currentTime: "", //验证码发送倒计时 + getvcode: "获取验证码", + wxopenid: "2", + isver: 0, //是否有发送验证码 + code: "", //验证码 + url: "", //确认更换手机号码跳转路径 + change_phone: "", //新手机号码 + }, + /** + * 生命周期函数--监听页面加载 + */ + onLoad: function(options) { + this.setData({ + // mobile: options.mobile, + //wxOpneId: options.openid + }) + }, + //获取手机验证码 + Ver_phone: function() { + var th = this; + var mobile = th.data.mobile; + var wxopenid = th.data.wxopenid; + var change_phone = th.data.change_phone; + var isver = th.data.isver; + console.log("iiiiiiiiiiiiii" + change_phone + mobile); + var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1})|(17[0-9]{1}))+\d{8})$/; + if (mobile.length < 11) { + getApp().my_warnning("请输入11位的手机号码", 0, th); + } else if (!myreg.test(mobile)) { + getApp().my_warnning("手机号有误", 0, th); + return false; + } + if (change_phone == mobile) { + getApp().my_warnning("新手机号码和旧手机号码不能一样", 0, th); + return false; + } + if (change_phone != "") { + mobile = change_phone; + } + if (isver == 0) { + th.setData({ + isver: 1 + }) + } else { + return false + } + getApp().request.post("/api/weshop/smslog/sendsms", { + data: { + store_id: r.stoid, + scene: 1, //发送类型(1短信 2语音) + mobile: mobile, + wxopenid: wxopenid + }, + success: function(res) { + if (res.data.code == 0) { + th.setData({ + isver: 0, + getvcode: 60, + currentTime: setInterval(th.gettime, 1000), + }) + } else { + getApp().my_warnning(res.data.msg, 0, th); + th.setData({ + isver: 0, + getvcode: "重新获取" + }) + return false; + } + } + }) + + }, + gettime: function() { + var that = this; + if (that.data.getvcode == 1) { + //清除js定时器   + clearInterval(that.data.currentTime); + that.setData({ + getvcode: "重新获取", + }); + } else { + that.setData({ + getvcode: --that.data.getvcode, + }); + } + }, + change_phone: function() { + var th = this; + var code = th.data.code; + var mobile = th.data.mobile; + if (th.ver_code() == false) return false; + getApp().request.put("/api/weshop/users/updateMobile/" + r.stoid + '/' + o.user_id + '/' + code + '/' + mobile, { + success: function(res) { + if (res.data.code == 0) { + getApp().my_warnning("更换成功", 0, th); + // th.setData({ + // url: "/pages/user/userinfo/userinfo?change_phone" + change_phone + // }) + } else { + getApp().my_warnning("更换失败", 0, th); + return false; + } + } + }) + + }, + //判断验证码是否正确 + ver_code: function(e) { + var th = this; + var code = th.data.code, + mobile = th.data.mobile, + wxopenid = th.data.wxopenid, + getvcode = th.data.getvcode, + chang_phone = th.data.change_phone; + if (code.length < 3 && code == "") { + getApp().my_warnning("请输入正确的验证码", 0, th); + return false; + } else if (getvcode.length<3){ + getApp().my_warnning("验证超时", 0, th); + return false; + }else { + getApp().request.put("/api/weshop/users/updateMobileFirst/" + r.stoid + '/' + o.user_id + '/' + code, { + success: function(res) { + if (res.data.code == 0) { + th.setData({ + inputxphone: 1, + getvcode: "获取验证码", + code: "" + }) + clearInterval(th.data.currentTime); + } else { + getApp().my_warnning(res.data.msg, 0, th); + return false; + } + } + }) + } + }, + getCodeValue: function(e) { + this.setData({ + code: e.detail.value + }) + }, + getphoneValue: function(e) { + var th = this; + th.setData({ + change_phone: e.detail.value, + }) + }, + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady: function() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow: function() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide: function() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload: function() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh: function() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom: function() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage: function() { + + } +}) \ No newline at end of file diff --git a/pages/user/Change_phone/Change_phone.json b/pages/user/Change_phone/Change_phone.json new file mode 100644 index 0000000..8003812 --- /dev/null +++ b/pages/user/Change_phone/Change_phone.json @@ -0,0 +1,6 @@ +{ + "navigationBarTitleText": "更换手机", +"usingComponents": { + "warn": "/components/long_warn/long_warn" +} +} \ No newline at end of file diff --git a/pages/user/Change_phone/Change_phone.wxml b/pages/user/Change_phone/Change_phone.wxml new file mode 100644 index 0000000..96da9ff --- /dev/null +++ b/pages/user/Change_phone/Change_phone.wxml @@ -0,0 +1,60 @@ + + + + + + + + + + {{mobile}} + + + + + + + + + + + + + {{getvcode}} + + + {{getvcode}}s + + + + + + + + 温馨提示: + 1.更换手机号后下次可使用新手机号登录。 + + 2.为保障数据安全,如遇旧手机遗失可联系商家进行解绑。 + + 3.收到验证码而非本人操作时请及时更改密码。 + + + + + + + 下一步 + + + + + 确定更换 + + + + + + + \ No newline at end of file diff --git a/pages/user/Change_phone/Change_phone.wxss b/pages/user/Change_phone/Change_phone.wxss new file mode 100644 index 0000000..1f435ff --- /dev/null +++ b/pages/user/Change_phone/Change_phone.wxss @@ -0,0 +1,71 @@ +page { + height: 100%; +} + +.container { + padding: 0rpx 55rpx; + border-top: 6rpx solid rgb(245, 245, 245); +} + +.phone_logo { + height: 400rpx; +} + +.phone_logo image { + width: 145rpx; + height: 230rpx; +} + +.phone,.code{ + border-bottom: 2rpx solid rgb(234, 234, 234); + height: 95rpx; +} + +.phone image { + width: 60rpx; + height: 60rpx; +} + +.phone .inphone { + margin-left: 50rpx; + color: rgb(153, 153, 153); +} + +.code image { + width: 70rpx; + height: 60rpx; +} + +.code input { + margin-left: 50rpx; + color: rgb(153, 153, 153); +} + +.code .Obtain { + width: 250rpx; + height: 60rpx; + border-left: 2rpx solid rgb(234, 234, 234); +} + +.phone, .code, .Tips { + padding-left: 30rpx; +} + +.Tips { + margin-top: 50rpx; + line-height: 50rpx; + color: rgb(153, 153, 153); +} + +.go { + width: 100%; + margin-top: 90rpx; +} + +.lower { + width: 430rpx; + height: 75rpx; + background-color: rgb(214, 1, 33); + border-radius: 40rpx; + color: rgb(255, 255, 255); +} diff --git a/pages/user/Detailed/Detailed.js b/pages/user/Detailed/Detailed.js new file mode 100644 index 0000000..45e9fc3 --- /dev/null +++ b/pages/user/Detailed/Detailed.js @@ -0,0 +1,441 @@ +var t = getApp(), + r = t.globalData, + a = t.request, + o = t.globalData.setting, + os = o, + i = require("../../../utils/util.js"), + ut = i, + s = require("../../../utils/common.js"); + +Page({ + /** + * 页面的初始数据 + */ + data: { + url: o.imghost, + arrayDetailed: [],//明细数组 + page: 1, + pageSize: 20, + isDetailed: 0, + total: 0, + ismore: 0,//数据是否加载完毕 + screenWidth:0, + + head_pic:"",//会员头像 + img_money:"",//缓存VIP的图片 + img_Ancrown:"",//会员权益 + img_Identification:"",//缓存标识的图片 + img_square:"",//缓存方块的图片 + privilege_o:"",//卡的勋章图 + bas_ming:"", //卡的图片 + big_card:null, //最大卡的信息 + + imagePath:"", //分享的生成图片 + + canvasHidden:true, + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad: function(options) { + var ee=this; + var img_money = this.data.url + "/miniapp/images/plus/share/money.png"; + var img_Ancrown = this.data.url + "/miniapp/images/plus/share/Ancrown.png"; + var img_Identification = this.data.url + "/miniapp/images/plus/share/Identification.png"; + var img_square = this.data.url + "/miniapp/images/plus/share/square.png"; + var privilege_o = this.data.url + "/miniapp/images/plus/share/privilege_o.png"; + var user=getApp().globalData.userInfo; + //--获取用户设备信息,屏幕宽度-- + wx.getSystemInfo({ + success: res => { + ee.data.screenWidth=res.screenWidth; + } + }) + + //--------------------缓存vip价格的图片--------------- + wx.getImageInfo({ + src:img_money, + success: function (res) { + //回调写法 + var img_money = res.path; + ee.setData({ img_money: img_money}); + } + }) + //--------------------缓存权益的图片--------------- + wx.getImageInfo({ + src: img_Ancrown, + success: function (res) { + //回调写法 + var img_Ancrown = res.path; + ee.setData({ img_Ancrown: img_Ancrown }); + } + }) + //--------------------缓存标识的图片--------------- + wx.getImageInfo({ + src: img_Identification, + success: function (res) { + //回调写法 + var img_Identification = res.path; + ee.setData({ img_Identification: img_Identification }); + } + }) + + //--------------------卡的勋章--------------- + wx.getImageInfo({ + src: privilege_o, + success: function (res) { + //回调写法 + var privilege_o = res.path; + ee.setData({ privilege_o: privilege_o }); + } + }) + + //--------------------方块图--------------- + wx.getImageInfo({ + src: img_square, + success: function (res) { + //回调写法 + var img_square = res.path; + ee.setData({ img_square: img_square}); + } + }) + + //-----------获取最大值的卡-------------- + ee.getPlusCardType(); + + }, + + selectDetailed: function() { + var th = this, e = th; + getApp().request.promiseGet("/api/weshop/plus/vip/mem/referee/page", { + data: { + storeId: o.stoid, + userId: r.user_id, + page: th.data.page, + pageSize: th.data.pageSize + } + }).then(res => { + + th.setData({isDetailed:1}) + if(res.data.code==0 && res.data.data.pageData && res.data.data.pageData.length>0) { + th.data.page++;//当前页数+1 + var arr1 = th.data.arrayDetailed;//获取明细数组 + var arr2 = res.data.data.pageData;//获取当前查询数据 + var arr3 = [...arr1, ...arr2];//把当前查询数组拼接到原本数组后面 + var ismore = 0; + if (arr3.length == res.data.data.total) ismore = 1 //数据已加载完判断 + th.setData({ + arrayDetailed: arr3, + total: res.data.data.total, + ismore: ismore, + isDetailed: 1 + }) + } + }) + + }, + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady: function() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow: function() { + this.selectDetailed(); + }, + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom: function() { + + if (this.data.total <= this.data.pageSize) return; + if (this.data.ismore) { + t.my_warnning("加载完啦!", 0, this); + return + }; + this.selectDetailed(); + }, + + + saveImageToPhotosAlbum: function () { + if (this.data.imagePath != "") { + wx.previewImage({ urls: [this.data.imagePath], }) + return; + } + + this.data.is_loading=1; + wx.showLoading({ title: '生成中...',}) + + var th = this; + + //设置画板显示,才能开始绘图 + var card_ming=th.data.bas_ming;//卡的图片 + var big_card= th.data.big_card;//获取最大的卡 + var user_head = th.data.head_pic;//会员头像 + var img_money = th.data.img_money;//缓存vip的价格 + var img_Ancrown = th.data.img_Ancrown;//会员权益的图片 + var img_Identification = th.data.img_Identification;//会员标识 + var privilege_o = th.data.privilege_o;//勋章图片 + var img_square=th.data.img_square; + var app = getApp(); + var user=app.globalData.userInfo; + var unit = th.data.screenWidth / 750 * 1.35; + var scene = getApp().globalData.user_id; + + //---二微码--- + var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" + + os.stoid + "?sceneValue=" + scene + "&pageValue=pages/user/index/index"; + + wx.getImageInfo({ + src: path3, + success: function (res) { + th.get_head_temp(function(){ + var vpath=res.path; + th.setData({ canvasHidden: false }) + //开启画布 + const ctx = wx.createCanvasContext('myCanvas'); + //先画背景 + ctx.drawImage("../../../images/share/mackground.png", 0, 0, 554 * unit, 930 * unit); + ctx.setFontSize(26 * unit); + ctx.setFillStyle("rgb(0,0,0)"); + ctx.fillText(user.nickname, 155 * unit, 75 * unit, 200 * unit); + + var tj_path = "../../../images/share/q_tj.png"; + ctx.drawImage(tj_path, 385 * unit, 45 * unit, 90 * unit, 30 * unit); + ctx.setFontSize(18 * unit); + ctx.setFillStyle("rgb(255,255,255)"); + ctx.fillText("强烈推荐", 394 * unit, 65 * unit); + + ctx.setStrokeStyle("rgb(255,255,255)"); + ctx.setLineDash([5 * unit, 5 * unit], 5 * unit); + ctx.beginPath(); + ctx.moveTo(0, 125 * unit); + ctx.lineTo(554 * unit, 125 * unit); + ctx.stroke(); + + var x = 55 * unit, y = 165 * unit,w = 444 * unit, h = 220 * unit,r = 14 * unit; + ut.draw_randon_rect(ctx,x,y,r,w,h); + ctx.clip(); //一旦剪切了某个区域,则所有之后的绘图都会被限制在被剪切的区域内 + ctx.drawImage(card_ming, x, y, 444 * unit, 220 * unit); // 推进去图片 + ctx.restore(); //恢复之前保存的绘图上下文 恢复之前保存的绘图上下午即状态 可以继续绘制 + + ctx.beginPath(); + // 卡图片 + // ctx.drawImage("../../../images/plus/share/one.jpg", 55 * unit, 165 * unit, 444 * unit, 220 * unit,); + ctx.setFontSize(26 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fillText(big_card.CardName, 80 * unit, 215 * unit); + ctx.setFontSize(18 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fillText("开通会员年卡仅" + big_card.CardFee+"元", 80 * unit, 240 * unit); + + ctx.drawImage(privilege_o, 80 * unit, 343 * unit, 20 * unit, 20 * unit); + + ctx.setFontSize(14 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fillText("根据大家购买数据,您成为超级会员预计可省¥3031元", 105 * unit, 360 * unit); + + ctx.rect(70 * unit, 425 * unit, 182 * unit, 1 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fill(); + + ctx.drawImage(img_square, 267 * unit, 420 * unit, 13 * unit, 13 * unit); + + ctx.beginPath(); + ctx.rect(295 * unit, 425 * unit, 182 * unit, 1 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fill(); + + ctx.drawImage(img_square, 80 * unit, 470 * unit, 10 * unit, 10 * unit); + ctx.setFontSize(24 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("超级VIP权益", 100 * unit, 475 * unit); + + ctx.setFontSize(20 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("超级会员专属权益", 100 * unit, 505 * unit); + ctx.drawImage(img_Ancrown, 355 * unit, 440 * unit, 65 * unit, 65 * unit); + + ctx.rect(85 * unit, 530 * unit, 375 * unit, 1 * unit) + ctx.setFillStyle('rgb(218,194,169)') + ctx.fill(); + + ctx.drawImage(img_square, 80 * unit, 575 * unit, 10 * unit, 10 * unit); + ctx.setFontSize(24 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("超级VIP标识", 100 * unit, 580 * unit); + + ctx.setFontSize(20 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("彰显尊贵身份的象征", 100 * unit, 610 * unit); + ctx.drawImage(img_Identification, 355 * unit, 548 * unit, 65 * unit, 65 * unit); + + ctx.rect(85 * unit, 635 * unit, 375 * unit, 1 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fill(); + + ctx.drawImage(img_square, 80 * unit, 695 * unit, 10 * unit, 10 * unit); + ctx.setFontSize(24 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("超级VIP价格", 100 * unit, 695 * unit); + + ctx.setFontSize(20 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("享受专属会员超低价", 100 * unit, 725 * unit); + ctx.drawImage(img_money, 355 * unit, 660 * unit, 65 * unit, 65 * unit); + + ctx.rect(85 * unit, 750 * unit, 375 * unit, 1 * unit) + ctx.setFillStyle('rgb(218,194,169)') + ctx.fill(); + + ctx.drawImage(vpath, 100 * unit, 780 * unit, 110 * unit, 110 * unit); + + ctx.setFontSize(20 * unit); + ctx.setFillStyle("#000"); + ctx.fillText("解锁新权益 精彩享不停", 230 * unit, 825 * unit); + + ctx.setFontSize(20 * unit); + ctx.setFillStyle("#000"); + ctx.fillText("长按识别二维码,立即开通!", 230 * unit, 865 * unit); + + //---绘制圆形要放在最后,头像---- + ctx.save(); + ctx.beginPath(); + var h_x = 60 * unit; + var h_y = 24 * unit; + var h_r = 40 * unit; + var cx = h_x + h_r; + var cy = h_y + h_r; + ctx.arc(cx, cy, h_r, 0, Math.PI * 2, false); + ctx.closePath(); + ctx.fill(); + ctx.clip(); + ctx.drawImage(th.data.head_pic, h_x, h_y, h_r * 2, h_r * 2); + ctx.restore(); + + x = 345 * unit, y = 190 * unit, + w = 105 * unit, h = 30 * unit, + r = 14 * unit; + ut.draw_randon_rect(ctx,x,y,r,w,h); + ctx.setFontSize(18 * unit); + ctx.setFillStyle("#000"); + ctx.fillText("立即开通", 362 * unit, 212 * unit); + + //--绘制图片--- + ctx.draw(false, + function(){ + setTimeout(function(){ + wx.canvasToTempFilePath({ + x: 0, + y: 0, + width: 750, + height: 930, + destWidth: 1.2 * 750 * 750 / th.data.screenWidth, + destHeight: 1.2 * 1217 * 750 / th.data.screenWidth, + canvasId: 'myCanvas', + success: function (res) { + wx.hideLoading();//关闭生成中的方法 + th.data.is_loading = 0; + console.log("生成的海报"); + console.log(res.tempFilePath); + var tempFilePath = res.tempFilePath; + th.setData({ + imagePath: tempFilePath, + maskHidden: false, + canvasHidden: true + }); + wx.previewImage({ + urls: [res.tempFilePath], + }) + if (!res.tempFilePath) { + wx.showModal({ + title: '提示', + content: '图片绘制中,请稍后重试', + showCancel: false + }) + } + + } + + }) + },300) + }) + }) + + + + + } + + }) + + }, + + //--获取头像的本地缓存,回调写法-- + get_head_temp: function (tt) { + var ee = this; + if (ee.data.head_pic) { + tt();return false; + } + //---获取分享图片的本地地址,头像和商品图片---- + var path2 = getApp().globalData.userInfo.head_pic; + if (path2 == "") { + ee.data.head_pic = "../../../images/share/hui_hear_pic.png";tt(); + } else { + path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn"); + wx.getImageInfo({ + src: path2, + success: function (res) { + //res.path是网络图片的本地地址 + ee.data.head_pic= res.path;tt(); + }, + fail: function (res) { + ee.data.head_pic= "../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的 + tt(); + } + }); + } + }, + + //--- 获取卡类列表 --- + getPlusCardType: function (e) { + var storid = o.stoid; + var th = this; + getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid, {}).then(res => { + var plusCard = res.data.data; + var arr = [1219, 2089, 3031]; + var new_arr = new Array(); + for (var i = 0; i < plusCard.length; i++) { + //plusCard[i].free=arr[i]; + var item = {"fee": plusCard[i].CardFee, 'index': i} + new_arr.push(item); + } + //根據距離遠近排序,越近在前面,升序 + new_arr.sort(function (a, b) { + if (a.fee < b.fee) { return -1; } else if (a.fee == b.fee) { return 0; } else { return 1;} + }); + + var max_card=plusCard[new_arr[new_arr.length-1].index]; + th.setData({big_card:max_card}) + + //缓存分享卡的图片 + wx.getImageInfo({ + src: max_card.CardImg, + success: function (res) { + var bas_ming = res.path; th.setData({ bas_ming: bas_ming}); + } + }) + + }) + }, + + + + + +}) \ No newline at end of file diff --git a/pages/user/Detailed/Detailed.json b/pages/user/Detailed/Detailed.json new file mode 100644 index 0000000..f681560 --- /dev/null +++ b/pages/user/Detailed/Detailed.json @@ -0,0 +1,6 @@ +{ + "navigationBarTitleText": "邀请明细", + "usingComponents": { + "warn": "/components/long_warn/long_warn" + } +} \ No newline at end of file diff --git a/pages/user/Detailed/Detailed.wxml b/pages/user/Detailed/Detailed.wxml new file mode 100644 index 0000000..de3143a --- /dev/null +++ b/pages/user/Detailed/Detailed.wxml @@ -0,0 +1,52 @@ + + + + 会员昵称 + + + + 手机号码 + + + 奖励明细 + + + + + + + + + + {{item.VIPName}} + + + + {{item.MobileTel}} + + + + +{{item.VIPRebate}} + + + + + + + + + + + + 暂无邀请明细 + + + 去邀请 + + + + + + + + \ No newline at end of file diff --git a/pages/user/Detailed/Detailed.wxss b/pages/user/Detailed/Detailed.wxss new file mode 100644 index 0000000..7256929 --- /dev/null +++ b/pages/user/Detailed/Detailed.wxss @@ -0,0 +1,62 @@ +.title { + background-color: rgb(238, 238, 238); + height: 65rpx; + color: rgb(153, 153, 153); +} + +.Nickname { + width: 200rpx; + padding-left: 50rpx; +} + +.reward { + width: 250rpx; +} + + + +.phone { + width: 250rpx; +} + +.maxvalue { + border-bottom: 1rpx solid rgb(242, 242, 242); +} + +.Nicknamevalue { + height: 85rpx; + width: 190rpx; + padding-left: 60rpx; +} + +.phonevalue { + width: 250rpx; +} + +.rewardvalue { + width: 250rpx; + color: rgb(215, 0, 38); +} +/*无明细*/ +.empty_order image { + width: 329rpx; + height: 229rpx; + margin-top: 202rpx; +} + +.empty_order .xc-ash { + margin-top: 10rpx; + font-weight: 600px; +} + +.empty_order navigator { + margin-top: 60rpx; + border-radius: 40rpx; +} + +.empty_order navigator view { + width: 247rpx; + height: 56rpx; + background-color: rgb(255, 72, 72); + border-radius: 40rpx; +} \ No newline at end of file diff --git a/pages/user/cardinfo/cardinfo.js b/pages/user/cardinfo/cardinfo.js new file mode 100644 index 0000000..7eccfd0 --- /dev/null +++ b/pages/user/cardinfo/cardinfo.js @@ -0,0 +1,703 @@ +var t = getApp(), + a = t.request, + o = t.globalData.setting, + os = o, + i = require("../../../utils/util.js"), + ut = i, + s = require("../../../utils/common.js"),t_pay = require("../../../utils/pay2.js"), + w = require("../../../utils/wxParse/wxParse.js"); +var regeneratorRuntime = require('../../../utils/runtime.js'); +//wx.downloadFile把线上地址设为本地地址 +Page({ + + /** + * 页面的初始数据 + */ + data: { + images: [o.imghost + "/miniapp/images/plus/card_one.jpg", o.imghost + "/miniapp/images/plus/card_two.jpg", o.imghost + "/miniapp/images/plus/card_three.jpg"], + + url: o.imghost, + screenWidth: 0, + screenheight: 0, + canvasHidden:1, + shareImgPath: null, + is_plusCard: "",//卡的列表 + imagePath: "", + user: null,//会员的数据 + is_card: 0,//用于判断是否是续费页和购买页面 0不是puls会员 + content: "",//等级卡规则 + is_card_rule: "",//等级卡规则判断用 + big_card: null,//最大的卡 + divide_into:"",//分佣 + is_loading:"",//判断分享只执行一次 + bas_ming:"",//分享的卡的图片 + head_pic:"",//会员头像 + img_money:"",//缓存VIP的图片 + img_Ancrown:"",//会员权益 + img_Identification:"",//缓存标识的图片 + img_square:"",//缓存方块的图片 + privilege_o:"",//卡的勋章图 + cardid: "",//会员卡的id + user_card: null,//会员买的卡 + free:null,//分佣的数据 + expiryDate:"",//卡到期时间 + + }, + + + + + /** + * 生命周期函数--监听页面加载 + */ + onLoad: function (options) { + var that = this,ee=this; + + //-----------等级卡说明------------------- + getApp().request.promiseGet("/api/weshop/storeconfig/get/" + os.stoid, { + }).then(res => { + var is_cardrule = res.data.data.cardrules; + w.wxParse("content", "html", is_cardrule, ee, 6); + ee.setData({ + is_card_rule: is_cardrule + }); + }) + + //----------------------------获取最大的卡类----------------------- + getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + o.stoid, { + + }).then(res => { + var plusCard = res.data.data; + var big_card = null; + var big_cards = null; + console.log(plusCard, "数据什么的", res); + for (var i = 0; i < plusCard.length; i++) { + big_cards = Math.max(plusCard[i].CardFee) + if (plusCard[i].CardFee == big_cards) { + big_card = plusCard[i] + } + } + console.log(big_cards, "是什么东西", big_card); + + ee.setData({ + is_plusCard: plusCard, + big_card: big_card + }) + + //缓存分享卡的图片 + wx.getImageInfo({ + src: big_card.CardImg, + success: function (res) { + //回调写法 + var bas_ming = res.path; + ee.setData({ bas_ming: bas_ming }); + } + }) + + }) + + + //获取用户设备信息,屏幕宽度 + wx.getSystemInfo({ + success: res => { + that.setData({ + screenWidth: res.screenWidth + }) + } + }) + var goods_list = this.selectComponent("#goods_list"); //组件的id + goods_list.get_list(); + + + }, + + +//------------程序初始化入口 同步------------- + async init() { + var ee = this, th = ee; + + //-------------会员卡的获取------------- + await getApp().request.promiseGet("/api/weshop/plus/vip/mem/list", + { + data: { + storeId: os.stoid, + userId: getApp().globalData.user_id, + }, + }).then(res => { + + var GradeCardID = res.data.data[0].GradeCardID; + var expiryDate = res.data.data[0].ExpiryDate + console.log(GradeCardID, "卡的id", res.data.data[0]); + ee.setData({cardid: GradeCardID, + expiryDate: expiryDate + }); + + + }) + //-----------会员分佣------------------- + await getApp().request.promiseGet("/api/weshop/plus/vip/mem/freeze/money?userId=" + getApp().globalData.user_id + "&storeId=" + os.stoid, { + }).then(res => { + console.log("分佣的数据", res.data.data); + if (res.data.code==0){ + ee.setData({ free:res.data.data}); + }else{ + ee.setData({ free: 0 }); + } + + }) + //-----------会员的卡类------------------- + await getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/get?storeId=" + os.stoid + "&CardId=" + ee.data.cardid, { + }).then(res => { + var user_card= res.data.data; + console.log(user_card,"会员的卡类"); + ee.setData({user_card: user_card}); + }) + + + + //-----------------获取会员信息------------------------------- + await getApp().request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + getApp().globalData.user_id,{ + + }).then(res => { + var user = res.data.data; + var url = ee.data.url; + console.log("是什么东西", url); + var img_money = url + "/miniapp/images/plus/share/money.png"; + var img_Ancrown = url + "/miniapp/images/plus/share/Ancrown.png"; + var img_Identification = url + "/miniapp/images/plus/share/Identification.png"; + var img_square = url + "/miniapp/images/plus/share/square.png"; + var privilege_o = url + "/miniapp/images/plus/share/privilege_o.png"; + console.log("图片转换",img_money); + var big_card = ee.data.big_card; + ee.setData({ + user: user, + img_money: img_money, + img_Ancrown: img_Ancrown , + img_Identification: img_Identification, + img_square, img_square , + privilege_o, privilege_o + + }); + + //缓存会员头像的图片 + wx.getImageInfo({ + src: user.head_pic, + success: function (res) { + //回调写法 + var user_head= res.path; + ee.setData({ head_pic: user_head }); + } + }) + }) + //--------------------缓存vip价格的图片--------------- + wx.getImageInfo({ + src:ee.data.img_money, + success: function (res) { + //回调写法 + var img_money = res.path; + ee.setData({ img_money: img_money}); + } + }) + //--------------------缓存权益的图片--------------- + wx.getImageInfo({ + src: ee.data.img_Ancrown, + success: function (res) { + //回调写法 + var img_Ancrown = res.path; + ee.setData({ img_Ancrown: img_Ancrown }); + } + }) + //--------------------缓存标识的图片--------------- + wx.getImageInfo({ + src: ee.data.img_Identification, + success: function (res) { + //回调写法 + var img_Identification = res.path; + ee.setData({ img_Identification: img_Identification }); + } + }) + + //--------------------卡的勋章--------------- + wx.getImageInfo({ + src: ee.data.privilege_o, + success: function (res) { + //回调写法 + var privilege_o = res.path; + ee.setData({ privilege_o: privilege_o }); + } + }) + + //--------------------方块图--------------- + wx.getImageInfo({ + src: ee.data.img_square, + success: function (res) { + //回调写法 + var img_square = res.path; + ee.setData({ img_square: img_square}); + } + }) + + }, + + + + + //-----打开分享图片---- + Share_pictures: function () { + + this.setData({ + canvasHidden: false + }) + this.saveImageToPhotosAlbum(); + }, + + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + saveImageToPhotosAlbum: function () { + if (this.data.imagePath != "") { + wx.previewImage({ + urls: [this.data.imagePath], + }) + return; + } + // if(this.data.is_loading) return false ; + this.data.is_loading=1; + + wx.showLoading({ + title: '生成中...', + }) + + this.setData({ + canvasHidden: false + }) + + var th = this; + //设置画板显示,才能开始绘图 + var card_ming=th.data.bas_ming;//卡的图片 + var user = th.data.user;//会员资料; + var big_card= th.data.big_card;//获取最大的卡 + var user_head = th.data.head_pic;//会员头像 + var img_money = th.data.img_money;//缓存vip的价格 + var img_Ancrown = th.data.img_Ancrown;//会员权益的图片 + var img_Identification = th.data.img_Identification;//会员标识 + var privilege_o = th.data.privilege_o;//勋章图片 + var img_square=th.data.img_square; + + var app = getApp(); + var unit = th.data.screenWidth / 750 * 1.35; + var scene = getApp().globalData.user_id; + console.log("用户头像", th.data.head_pic); + ///二微码 + + var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" + + os.stoid + "?sceneValue=" + scene + "&pageValue=pages/user/index/index"; + wx.getImageInfo({ + src: path3, + success: function (res) { + //回调写法 + th.get_head_temp(th.get_goods_temp, function () { + var vpath=res.path; + + console.log("生成二维码", path3); + //开启画布 + const ctx = wx.createCanvasContext('myCanvas'); + + + //先画背景 + ctx.drawImage("../../../images/share/mackground.png", 0, 0, 554 * unit, 930 * unit); + ctx.setFontSize(26 * unit); + ctx.setFillStyle("rgb(0,0,0)"); + ctx.fillText(user.nickname, 155 * unit, 75 * unit, 200 * unit); + + var tj_path = "../../../images/share/q_tj.png"; + ctx.drawImage(tj_path, 385 * unit, 45 * unit, 90 * unit, 30 * unit); + ctx.setFontSize(18 * unit); + ctx.setFillStyle("rgb(255,255,255)"); + ctx.fillText("强烈推荐", 394 * unit, 65 * unit); + + ctx.setStrokeStyle("rgb(255,255,255)"); + ctx.setLineDash([5 * unit, 5 * unit], 5 * unit); + ctx.beginPath(); + ctx.moveTo(0, 125 * unit); + ctx.lineTo(554 * unit, 125 * unit); + ctx.stroke(); + + var x = 55 * unit, + y = 165 * unit, + w = 444 * unit, + h = 220 * unit, + r = 14 * unit; + ctx.save(); + // 开始绘制 + ctx.beginPath(); + // 因为边缘描边存在锯齿,最好指定使用 transparent 填充 + // 这里是使用 fill 还是 stroke都可以,二选一即可 + ctx.setFillStyle('rgb(237,188,150)') + // ctx.setStrokeStyle('transparent') + // 左上角 + ctx.arc(x + r, y + r, r, Math.PI, Math.PI * 1.5) + + // border-top + ctx.moveTo(x + r, y) + ctx.lineTo(x + w - r, y) + ctx.lineTo(x + w, y + r) + // 右上角 + ctx.arc(x + w - r, y + r, r, Math.PI * 1.5, Math.PI * 2) + + // border-right + ctx.lineTo(x + w, y + h - r) + ctx.lineTo(x + w - r, y + h) + // 右下角 + ctx.arc(x + w - r, y + h - r, r, 0, Math.PI * 0.5) + + // border-bottom + ctx.lineTo(x + r, y + h) + ctx.lineTo(x, y + h - r) + // 左下角 + ctx.arc(x + r, y + h - r, r, Math.PI * 0.5, Math.PI) + + // border-left + ctx.lineTo(x, y + r) + ctx.lineTo(x + r, y) + + // 这里是使用 fill 还是 stroke都可以,二选一即可,但是需要与上面对应 + ctx.fill() + + ctx.clip(); //画了圆 再剪切 原始画布中剪切任意形状和尺寸。一旦剪切了某个区域,则所有之后的绘图都会被限制在被剪切的区域内 + ctx.drawImage(card_ming, x, y, 444 * unit, 220 * unit); // 推进去图片 + ctx.restore(); //恢复之前保存的绘图上下文 恢复之前保存的绘图上下午即状态 可以继续绘制 + + ctx.beginPath(); + // 卡图片 + // ctx.drawImage("../../../images/plus/share/one.jpg", 55 * unit, 165 * unit, 444 * unit, 220 * unit,); + ctx.setFontSize(26 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fillText(big_card.CardName, 80 * unit, 215 * unit); + ctx.setFontSize(18 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fillText("开通会员年卡仅" + big_card.CardFee+"元", 80 * unit, 240 * unit); + + ctx.drawImage(privilege_o, 80 * unit, 343 * unit, 20 * unit, 20 * unit); + + ctx.setFontSize(14 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fillText("根据大家购买数据,您成为超级会员预计可省¥3031元", 105 * unit, 360 * unit); + + ctx.rect(70 * unit, 425 * unit, 182 * unit, 1 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fill(); + + ctx.drawImage(img_square, 267 * unit, 420 * unit, 13 * unit, 13 * unit); + + ctx.beginPath(); + ctx.rect(295 * unit, 425 * unit, 182 * unit, 1 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fill(); + + ctx.drawImage(img_square, 80 * unit, 470 * unit, 10 * unit, 10 * unit); + ctx.setFontSize(24 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("超级VIP权益", 100 * unit, 475 * unit); + + ctx.setFontSize(20 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("超级会员专属权益", 100 * unit, 505 * unit); + ctx.drawImage(img_Ancrown, 355 * unit, 440 * unit, 65 * unit, 65 * unit); + + ctx.rect(85 * unit, 530 * unit, 375 * unit, 1 * unit) + ctx.setFillStyle('rgb(218,194,169)') + ctx.fill(); + + ctx.drawImage(img_square, 80 * unit, 575 * unit, 10 * unit, 10 * unit); + ctx.setFontSize(24 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("超级VIP标识", 100 * unit, 580 * unit); + + ctx.setFontSize(20 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("彰显尊贵身份的象征", 100 * unit, 610 * unit); + ctx.drawImage(img_Identification, 355 * unit, 548 * unit, 65 * unit, 65 * unit); + + ctx.rect(85 * unit, 635 * unit, 375 * unit, 1 * unit); + ctx.setFillStyle('rgb(218,194,169)'); + ctx.fill(); + + ctx.drawImage(img_square, 80 * unit, 695 * unit, 10 * unit, 10 * unit); + ctx.setFontSize(24 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("超级VIP价格", 100 * unit, 695 * unit); + + ctx.setFontSize(20 * unit); + ctx.setFillStyle("rgb(198,165,126)"); + ctx.fillText("享受专属会员超低价", 100 * unit, 725 * unit); + ctx.drawImage(img_money, 355 * unit, 660 * unit, 65 * unit, 65 * unit); + + ctx.rect(85 * unit, 750 * unit, 375 * unit, 1 * unit) + ctx.setFillStyle('rgb(218,194,169)') + ctx.fill(); + + ctx.drawImage(vpath, 100 * unit, 780 * unit, 110 * unit, 110 * unit); + + ctx.setFontSize(20 * unit); + ctx.setFillStyle("#000"); + ctx.fillText("解锁新权益 精彩享不停", 230 * unit, 825 * unit); + + ctx.setFontSize(20 * unit); + ctx.setFillStyle("#000"); + ctx.fillText("长按识别二维码,立即开通!", 230 * unit, 865 * unit); + + //---绘制圆形要放在最后---- + ctx.save(); + ctx.beginPath(); + var h_x = 60 * unit; + var h_y = 24 * unit; + var h_r = 40 * unit; + var cx = h_x + h_r; + var cy = h_y + h_r; + ctx.arc(cx, cy, h_r, 0, Math.PI * 2, false); + ctx.closePath(); + ctx.fill(); + ctx.clip(); + ctx.drawImage(th.data.head_pic, h_x, h_y, h_r * 2, h_r * 2); + ctx.restore(); + + var x = 345 * unit, + y = 190 * unit, + w = 105 * unit, + h = 30 * unit, + r = 14 * unit; + ctx.save(); + // 开始绘制 + ctx.beginPath(); + // 因为边缘描边存在锯齿,最好指定使用 transparent 填充 + // 这里是使用 fill 还是 stroke都可以,二选一即可 + ctx.setFillStyle('rgb(237,188,150)') + // ctx.setStrokeStyle('transparent') + // 左上角 + ctx.arc(x + r, y + r, r, Math.PI, Math.PI * 1.5) + + // border-top + ctx.moveTo(x + r, y) + ctx.lineTo(x + w - r, y) + ctx.lineTo(x + w, y + r) + // 右上角 + ctx.arc(x + w - r, y + r, r, Math.PI * 1.5, Math.PI * 2) + + // border-right + ctx.lineTo(x + w, y + h - r) + ctx.lineTo(x + w - r, y + h) + // 右下角 + ctx.arc(x + w - r, y + h - r, r, 0, Math.PI * 0.5) + + // border-bottom + ctx.lineTo(x + r, y + h) + ctx.lineTo(x, y + h - r) + // 左下角 + ctx.arc(x + r, y + h - r, r, Math.PI * 0.5, Math.PI) + + // border-left + ctx.lineTo(x, y + r) + ctx.lineTo(x + r, y) + + // 这里是使用 fill 还是 stroke都可以,二选一即可,但是需要与上面对应 + ctx.fill() + + ctx.setFontSize(18 * unit); + ctx.setFillStyle("#000"); + ctx.fillText("立即开通", 362 * unit, 212 * unit); + + + //绘制图片 + ctx.draw(false, + function(){ + setTimeout(function(){ + wx.canvasToTempFilePath({ + x: 0, + y: 0, + width: 750, + height: 930, + destWidth: 1.2 * 750 * 750 / th.data.screenWidth, + destHeight: 1.2 * 1217 * 750 / th.data.screenWidth, + canvasId: 'myCanvas', + success: function (res) { + wx.hideLoading();//关闭生成中的方法 + th.data.is_loading = 0; + console.log("生成的海报"); + console.log(res.tempFilePath); + var tempFilePath = res.tempFilePath; + th.setData({ + imagePath: tempFilePath, + maskHidden: false, + canvasHidden: true + }); + wx.previewImage({ + urls: [res.tempFilePath], + }) + if (!res.tempFilePath) { + wx.showModal({ + title: '提示', + content: '图片绘制中,请稍后重试', + showCancel: false + }) + } + } + }) + },500) + + }) + + + }) + } + }) + + }, + + //--获取头像的本地缓存,回调写法-- + get_head_temp: function (tt, func) { + var ee = this; + console.log("获取头像", ee.data.head_pic); + if (ee.data.head_pic) { + tt(func); + return false; + } + //---获取分享图片的本地地址,头像和商品图片---- + var path2 = getApp().globalData.userInfo.head_pic; + if (path2 == "") { + ee.data.head_pic = "../../../images/share/hui_hear_pic.png"; + tt(func); + } else { + path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn"); + wx.getImageInfo({ + src: path2, + success: function (res) { + //res.path是网络图片的本地地址 + ee.data.head_pic= res.path; + tt(func);; + }, + fail: function (res) { + ee.data.head_pic= "../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的 + tt(func); + } + }); + } + }, + //--获取商品图片的本地缓存,回调写法-- + get_goods_temp: function (tt) { + var ee = this; + if (ee.data.head_pic) { + tt(); + return false; + } + //获取商品是分享图信息 + wx.getImageInfo({ + src: ee.data.head_pic, + success: function (res) { + //res.path是网络图片的本地地址 + ee.data.head_pic = res.path; + tt(); + }, + fail: function (res) { + ee.data.head_pic = "../../../images/share/default_g_img.gif"; //分享的图片不能用网络的 + tt(); + } + }); + }, + /** + * 生命周期函数--监听页面显示 + */ + onShow: function () { + //同步初始化 + this.init(); + + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide: function () { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload: function () { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh: function () { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom: function () { + var goods_list = this.selectComponent("#goods_list"); //组件的id + goods_list.get_list(); + this.setData({ + j: true + }) + }, + + + + //--转到用户余额-- + to_user_money:function(){ + var th=this,free=th.data.free; + if(!th.data.free.RefereeMoney){ + getApp().my_warnning("您没有转入余额",0,th); return false; + } + + wx.showModal({ + title: '提示', + content: '您确定要转入余额吗?', + success(res) { + if (res.confirm) { + getApp().request.post("/api/weshop/plus/withdrawal/referee/money",{ + data:{storeId:os.stoid,userId:getApp().globalData.user_id}, + success:function(res){ + if(res.data.code==0){ + getApp().my_warnning("转入成功",0,th); + free.RefereeMoney=0; + th.setData({free:free}); + }else{ + getApp().my_warnning(res.data.msg ,0,th); + } + } + }) + } + } + }) + }, + + //-----立即续费的功能------ + xufei:function(){ + var th = this; + var is_card = 0; + var item = th.data.user_card; + var req = {}; + req.cardId = item.CardId; + req.rechargeType = 4; + //如果不是你导购,也不是等级会员分享 + req.storeId = os.stoid; + req.userId = getApp().globalData.user_id; + t_pay.pay(req, th.success, function () { + getApp().my_warnning("支付失败", 0, th); + }); + + }, + + //--支付成功,跳转到等级卡续费页面-- + success:function () { + getApp().my_warnning("支付成功",0,this); + }, + +}) \ No newline at end of file diff --git a/pages/user/cardinfo/cardinfo.json b/pages/user/cardinfo/cardinfo.json new file mode 100644 index 0000000..3058b7f --- /dev/null +++ b/pages/user/cardinfo/cardinfo.json @@ -0,0 +1,8 @@ + { + "usingComponents": { + "pop_txt": "/components/userqy_pop_up/userqy_pop_up", + "goods_recommend": "/components/goods_list/goods_list", + "warn": "/components/long_warn/long_warn" + }, + "navigationBarTitleText": "plus会员" +} \ No newline at end of file diff --git a/pages/user/cardinfo/cardinfo.wxml b/pages/user/cardinfo/cardinfo.wxml new file mode 100644 index 0000000..559fe51 --- /dev/null +++ b/pages/user/cardinfo/cardinfo.wxml @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + {{user_card.CardName}} + 会员将在{{filters.replace_time2(expiryDate)}}到期 + + 立即续费 + + + + + + + + 正在享受{{user_card.CardName}}会员特权 + + + + 邀请新朋友 + + + + + + + + + 已邀请 + {{free==0?"0":free.RefereeNumber}}人 + 可提现 + {{free==0?"0":free.VIPRebate}}元 + + + + + 明细 + + 转到余额 + + + + + + + + + + 开通PLUS会员尊享礼遇 + + PLUS会员尊享礼遇 + + + + + + PLUS会员可享以下特权 + + 解锁新权益 精彩享不停 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 好物推荐 + + + + + + + + + + + + GOOD HOT THING + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/pages/user/cardinfo/cardinfo.wxss b/pages/user/cardinfo/cardinfo.wxss new file mode 100644 index 0000000..88a432c --- /dev/null +++ b/pages/user/cardinfo/cardinfo.wxss @@ -0,0 +1,154 @@ + @import "../../../utils/wxParse/wxParse.wxss"; + .Member_bk { + position:relative; + z-index: 0; + width: 100%; + height: 100%; +} +.MemberPlus { + width: 618rpx; + height: 285rpx; + /* border-radius: 18rpx; */ + box-shadow: 0rpx 0rpx 10rpx #888; + margin: 0rpx 35rpx; + color: #ffa786; + padding: 0rpx 31rpx; + padding-top: 40rpx; + background-size: 100%; + border-top-left-radius: 18rpx; + border-top-right-radius: 18rpx; + +} +.renew { + width: 190rpx; + height: 50rpx; + border-radius: 18rpx; + background-color: rgb(237, 189, 150); + text-align: center; + line-height: 50rpx; + color: #000; + margin-top: 7rpx; + +} +.xs { + position: absolute; bottom: 30rpx; width: 91%; +} +.MemberPlus .privilege { + width: 30rpx; + height: 30rpx; + margin-right: 7rpx; +} +.MemberPlus .share { + width: 30rpx; + height: 30rpx; + margin-left: 7rpx; +} +.Invitation { + padding: 0rpx 31rpx; + box-shadow: 0rpx 0rpx 10rpx #888; + height: 95rpx; + background-color: rgb(255, 255, 255); + z-index: 6; +} +.Invitation .Invitation_count, .Invitation_my { + color: rgb(237, 189, 153); +} +.Invitation .Detailed { + color: rgb(237, 189, 150); + text-decoration: underline; +} +.Invitation .Invitation_Cash { + width: 150rpx; + height: 45rpx; + line-height: 45rpx; + text-align: center; + border-radius: 25rpx; + margin-left: 30rpx; + background-color: rgb(237, 189, 150); + color: rgb(255, 255, 255); +} +.swiper, .Courtesy, .title { + position: relative; + z-index: 3; +} +.Courtesy_title { + color: rgb(173, 137, 79); + font-weight: bold; + margin-bottom: 10rpx; + letter-spacing: 2rpx; +} +.Courtesy_image { + width: 50rpx; + height: 25rpx; + margin-top: 8rpx; +} +.Courtesy_can { + margin: 0rpx 7rpx; + color: rgb(94, 93, 91); + font-weight: bold; +} + + +/* 热门好物 */ + +.title .China { + width: 100%; + margin-top: 60rpx; + margin-bottom: 10rpx; + line-height: 0rpx; +} + +.title .China .line view { + width: 2rpx; +} + +.title .China .line { + height: 40rpx; + color: rgb(51, 51, 51); +} + +.title .China .line view { + border-left: 3rpx solid #000; + margin-left: 5rpx; +} + +.title .China .line .one { + height: 23rpx; +} + +.title .China .line .two { + height: 15rpx; +} + +.title .China .line .three { + height: 18rpx; +} + +.title .China .Recommend { + margin: 0rpx 20rpx; + font-size: 28rpx; + line-height: 39rpx; + font-weight: bold; +} + +.title .english .silk { + width: 214rpx; + height: 2rpx; + background-color: #000; +} + +.title .english .esh { + margin: 0rpx 15rpx; +} +.Member { + width: 30rpx; + height: 30rpx; + margin-right: 5rpx; + background-size: 100% 100%; + background-blend-mode: lighten; + transform: translateX(-280%); + vertical-align: top; +} + +.h36{ height:36rpx; line-height: 36rpx;} +.h22{ height:22rpx; line-height: 22rpx;} \ No newline at end of file diff --git a/pages/user/deposit/prepaid/prepaid.wxml b/pages/user/deposit/prepaid/prepaid.wxml index e5157ac..7672e75 100644 --- a/pages/user/deposit/prepaid/prepaid.wxml +++ b/pages/user/deposit/prepaid/prepaid.wxml @@ -10,8 +10,8 @@ 备注: {{perpaid.ItemName}} - 立即充值 + 立即充值 diff --git a/pages/user/index/index.js b/pages/user/index/index.js index dce61a6..d8893ed 100644 --- a/pages/user/index/index.js +++ b/pages/user/index/index.js @@ -12,25 +12,26 @@ Page({ * 页面的初始数据 */ data: { - length:150, - iurl: s.imghost, - defaultAvatar:s.imghost+"/miniapp/images/no-head.jpg", - userInfo:null, - toji:null, //统计相关 - txmon:0, - byquan: 0, - yuer: 0, - - currentPage:1, - recommend_list:[], - tc_hide: true, - sw_index:0, - qy_list:null, - gradeId:null, - is_init:0, - - cz_val:0, - full_cz_val:0, + length:150, + iurl: s.imghost, + defaultAvatar:s.imghost+"/miniapp/images/no-head.jpg", + userInfo:null, + toji:null, //统计相关 + txmon:0, + byquan: 0, + yuer: 0, + + currentPage:1, + recommend_list:[], + tc_hide: true, + sw_index:0, + qy_list:null, + gradeId:null, + is_init:0, + + cz_val:0, + full_cz_val:0, + is_dengji:0, //是不是等级 }, /** @@ -45,7 +46,6 @@ Page({ var s = this,th=s,need_money=0,cur_g_num=0; getApp().get_isbuy(th.setappdata); if(getApp().globalData.user_id) getApp().requestCardNum(); - /*------会员登录------*/ app.getUserFir(async function(e){ if(e!=undefined && e!=null){ @@ -188,6 +188,21 @@ Page({ /*-- 获取 --*/ th.requestRecommend(); + + /*-------系统是否开通等级卡,会员是等级卡-----*/ + getApp().getConfig2(function (e) { + var t_swi=e.switch_list; + if(t_swi) t_swi=JSON.parse(t_swi) + if(parseInt(t_swi.rank_switch)==2){ + var userInfo=th.data.userInfo; + if(userInfo.card_field!=null && userInfo.card_field!=undefined && userInfo.card_field!="" ){ + th.setData({is_dengji:1}) + }else{ + th.setData({is_dengji:2}) + } + } + }) + } }); diff --git a/pages/user/index/index.wxml b/pages/user/index/index.wxml index bb47691..5e83b50 100644 --- a/pages/user/index/index.wxml +++ b/pages/user/index/index.wxml @@ -1,270 +1,278 @@ - - - - - - - - {{userInfo.nickname}} {{GradeName}} - - - {{" "}}成长值 {{cz_val}} / {{need_money}} - - - {{" "}}成长值 {{cz_val}} - - - + + + + + + + + {{userInfo.nickname}} + + {{GradeName}} + + + {{" "}} + 成长值 + {{cz_val}} / {{need_money}} + + + {{" "}} + 成长值 {{cz_val}} + + + - + - - - 请点击注册 - + + + 请点击注册 + - - - - - - + + + + + - - {{yuer?yuer:0}}余额 - {{udata.Balance?udata.Balance:0}}预存款 - {{udata.Integral?udata.Integral:0}}积分 - {{udata.CashCount+byquan?udata.CashCount+byquan:0}}优惠券 - - - - - - - - 加入会员 - 预计可省345元 - - 立即开通 - - - + + + + + + + 5000/10000 + + + {{yuer?yuer:0}} + 余额 + + {{udata.Balance?udata.Balance:0}} + 预存款 + + {{udata.Integral?udata.Integral:0}} + 积分 + + {{udata.CashCount+byquan?udata.CashCount+byquan:0}} + 优惠券 + + + + + + + + + 加入plus会员 + 预计可省3031元 + + 立即开通 + + + - - - - - - 待付款 - - - - - 待收货 - - - - - 待评论 - - - - - - 售后/退款 - - + + + + + + 待付款 + + + + + 待收货 + + + + + 待评论 + + + + + + 售后/退款 + + - - - - - 我的订单 + + + + + 我的订单 + + - - - + + + + + + + + + + 我的权益 + + + + + 更多 + + + + - - - - - - - - 我的权益 - - - - - 更多 - - - - - - + - - - - - - - - - {{item.PrivilegeName}} - - - + + + + - + + + + {{item.PrivilegeName}} + + + + + - - + + - - - - - - - 工具与服务 - - - - - - - 我的拼单 - - - - 秒杀活动 - - - - 我的权益 - + + + + + + + 工具与服务 + + + + + + + 我的拼单 + + + + 秒杀活动 + + + + 我的权益 + - - - 联系客服 - + + + 联系客服 + + + + plus会员 + - - - 收藏夹 - + + + 收藏夹 + - - - 我的评价 - + + + 我的评价 + - - - 我的地址 - + + + 我的地址 + - + - - - - - - - - - - - - 为你推荐 - - - - - - + + + + + + + + + + + 为你推荐 + + + + + + + - - - - - - - - + + + + + + + + - + {{item.shop_price}} - - 原价¥{{item.market_price}} - - {{item.goods_name}} - - - - - - - 已经到底 - + + 原价¥{{item.market_price}} - + {{item.goods_name}} + + + + + + + 已经到底 + + + \ No newline at end of file diff --git a/pages/user/index/index.wxss b/pages/user/index/index.wxss index f1e49eb..8f09d15 100644 --- a/pages/user/index/index.wxss +++ b/pages/user/index/index.wxss @@ -56,7 +56,9 @@ border-radius:20px 0 0 38rpx; padding-right:12rpx; padding-left:12rpx; - +} +.addplus{ + width: 100%; } .xc-grade{ width: 25rpx; @@ -143,18 +145,18 @@ height: 84rpx; } .xc-add-member{ - display:none; + background-size: 100%; margin-top:10rpx; - color: #fff; + color: rgb(238, 205, 172); width: 730rpx; - height: 74rpx; + height: 75rpx; border-radius: 15rpx 15rpx 0 0; - background: url("https://mshopimg.yolipai.net/miniapp/images/user_index_gray.png") no-repeat center; + background: url("data:image/jpeg;base64,/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAABkAAD/4QN6aHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAxNCA3OS4xNTE0ODEsIDIwMTMvMDMvMTMtMTI6MDk6MTUgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6MDhlYTAxZTktZGVjMy00MTc1LWE4MzEtNWQ0NjFhNWIzOGRjIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjdEMDAzN0JDRjNBQTExRTk4QjYzRjhEM0E3NkM1REQ0IiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjdEMDAzN0JCRjNBQTExRTk4QjYzRjhEM0E3NkM1REQ0IiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cykiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4NGY5ODE2MS1mMjVjLWIzNDItOGYxNi1lMTNkY2Q2ZDJiMDgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MDhlYTAxZTktZGVjMy00MTc1LWE4MzEtNWQ0NjFhNWIzOGRjIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3Jk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") no-repeat center; } .xc-add-member .xc-icon{ width: 30rpx; height: 30rpx; - margin-left:50rpx; + margin-left:40rpx; } .xc-add-member .member{ @@ -162,23 +164,23 @@ height: 84rpx; } .xc-add-member .xc-save-money{ - border-left: 2rpx solid #fff; + border-left: 2rpx solid rgb(238, 205, 172); padding-left: 15rpx; margin-left: 15rpx; } .xc-add-member .xc-opening-button{ - width: 130rpx; - margin-left:180rpx; + width: 120rpx; + margin-left:140rpx; } .xc-opening{ border-radius: 20rpx; - background: #fe547c; - color: #fff; - height:36rpx; - line-height: 36rpx; + background: rgb(238, 205, 172); + height:34rpx; + line-height: 34rpx; + color:#000; } .xc-after-sale{ width:100%; diff --git a/pages/user/plus/plus.js b/pages/user/plus/plus.js new file mode 100644 index 0000000..123b095 --- /dev/null +++ b/pages/user/plus/plus.js @@ -0,0 +1,298 @@ +var t = getApp(), + a = t.request, + o = t.globalData.setting, + os = o, + i = require("../../../utils/util.js"), + ut = i, + s = require("../../../utils/common.js"), + w = require("../../../utils/wxParse/wxParse.js"),t_pay = require("../../../utils/pay2.js"); + var regeneratorRuntime = require('../../../utils/runtime.js'); + +Page({ + /** + * 页面的初始数据 + */ + data: { + currentId: 0, + url: o.imghost, + screenWidth: 0, + screenheight: 0, + canvasHidden: true, + shareImgPath: null, + is_plusCard: "",//卡的列表 + imagePath: "", + is_pulscardname: "",//plus会员的名字 + is_card: 0,//用于判断是否是续费页和购买页面 0不是puls会员 + content: "",//等级卡规则 + is_card_rule: "",//等级卡规则判断用 + is_show: 0, //页面要加载完才能显示 + open_yq: 0, //显示打开邀请码的弹窗 + by_index:null, //购买卡的下班 + + isyaoqingma:0, //是否邀请码 + is_salesman:0, //是否营业员 + inp_recommon: null, //输入的邀请码 + inp_serviceman: null, //输入的营业员 + is_fengxiang: 0, //是不是分享过来的 + def_recommon: null, //分享人的手机号 + def_serviceman: null, //分享人的营业员 + fir_leader:0, + + }, + swiperChange: function (e) { + var currentId = e.detail.current; + this.setData({ + currentId: currentId + }) + }, + /** + * 生命周期函数--监听页面加载 + */ + onLoad: function (options) { + var that = this; + var store_id=getApp().globalData.setting.stoid; + //获取用户设备信息,屏幕宽度 + wx.getSystemInfo({ + success: res => { + that.setData({screenWidth: res.screenWidth}) + } + }) + var fir_leader = options.scene; + that.setData({fir_leader:fir_leader}) + if (fir_leader != null && fir_leader != undefined && fir_leader != "") { + var r_url="/api/weshop/plus/vip/mem/list?storeId=" + store_id + "&userId=" + fir_leader + getApp().request.get(r_url, { + success: function (res) { + var is_ok = 1; + if (res.data.code == -1) { + getApp().my_warnning("未找到分享会员", 0, that); + is_ok = 0; + that.back_user(); + } + var user_information = res.data.data[0]; + if (user_information['GradeCardID'] == null || user_information['GradeCardID'] == "" || user_information['GradeCardID'] == undefined) { + getApp().my_warnning("分享会员不是plus会员", 0, that); + is_ok = 0; + that.back_user(); + } + //--获取当前的时间-- + var now = ut.gettimestamp(); + if (user_information['ExpiryDate']) { + var str = user_information['ExpiryDate'].replace(/-/g, '/'); + var end = new Date(str); + end = Date.parse(end) / 1000; + if (end < now) { + getApp().my_warnning("分享plus会员已经过期", 0, that); + is_ok = 0; + that.back_user(); + } + } else { + getApp().my_warnning("分享plus会员已经过期", 0, that); + is_ok = 0; + that.back_user(); + } + if (is_ok == 1) { + that.setData({def_recommon: user_information.MobileTel, def_serviceman: user_information.StaffNo,is_fengxiang:1}) + //--先判断会员状态-- + var user_info=getApp().globalData.userInfo; + if(user_info==null || user_info.mobile==undefined || user_info.mobile=="" || user_info.mobile==null){ + wx.navigateTo({ url: '/pages/getphone/getphone?first_leader='+fir_leader, }) + return false; + } + } + } + }); + } + + //-----------商家配置信息----- 等级卡规则,是否又开邀请码,营业员------------ + getApp().request.get("/api/weshop/storeconfig/get/" + store_id, { + success: function (res) { + var is_cardrule = res.data.data.cardrules; + var switch_list= res.data.data.switch_list; + var swi_arr=JSON.parse(switch_list); + + w.wxParse("content", "html", is_cardrule, that, 6); + that.setData({ + is_card_rule: is_cardrule, + isyaoqingma:parseInt(swi_arr.isyaoqingma), + is_salesman:parseInt(swi_arr.is_staffno) + }); + } + }); + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow: function () { + var th=this,app_d=getApp().globalData; + getApp().request.get("/api/weshop/users/get/" + os.stoid + "/" + app_d.user_id, { + success: function (e) { + var userInfo = e.data.data; + if(userInfo['card_field']){ + var u_url = "/pages/user/cardinfo/cardinfo"; + wx.reLaunch({url: u_url}) + } + }, + }); + + this.getPlusCardType(); + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide: function () { + + }, + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom: function () { + var goods_list = this.selectComponent("#goods_list"); //组件的id + goods_list.get_list(); + }, + + //--- 获取卡类列表 --- + getPlusCardType: function (e) { + var storid = o.stoid; + var th = this; + getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid, {}).then(res => { + var plusCard = res.data.data; + var arr = [1219, 2089, 3031]; + var new_arr = new Array(); + for (var i = 0; i < plusCard.length; i++) { + //plusCard[i].free=arr[i]; + var item = {"fee": plusCard[i].CardFee, 'index': i} + new_arr.push(item); + } + //根據距離遠近排序,越近在前面,升序 + new_arr.sort(function (a, b) { + if (a.fee < b.fee) { + return -1; + } else if (a.fee == b.fee) { + return 0; + } else { + return 1; + } + }); + //---给数组添加立省多少钱--- + for (i = 0; i < plusCard.length; i++) { + for (var j = 0; j < new_arr.length; j++) { + if (i == new_arr[j].index) { + plusCard[i].free = arr[j]; + break; + } + } + } + th.setData({ + is_plusCard: plusCard, is_show: 1 + }) + var goods_list = th.selectComponent("#goods_list"); //组件的id + goods_list.get_list(); + + }) + }, + + //--开通会员---接受前端index,弹起窗口--- + Opening: function (e) { + var th = this; + th.data.by_index = e.currentTarget.dataset.ind; + + if (th.data.is_fengxiang) { + th.buy_card(); + } else { + //--如果后台都没有勾邀请码,营业员,立即购买-- + if (!th.data.isyaoqingma && !th.data.is_salesman) {th.buy_card(); return false;} + th.setData({open_yq: 1}) + } + }, + + //--立即购买卡-- + buy_card: async function () { + var th = this; + var is_card = 0; + //--商家是不是有等级卡功能,开通的人数是不是够用,开通是时间是不是到期-- + await getApp().request.promiseGet("/api/weshop/plus/plus/card/register", + {data: {storeId: os.stoid}}).then(res => { + if (res.data.code == 0) is_card = 1; + }) + if (is_card == 0) getApp().my_warnning("请联系商家升级plus功能", 0, th); + var item = th.data.is_plusCard[th.data.by_index]; + var req = {}; + req.cardId = item.CardId; + req.rechargeType = 3; + //如果不是你导购,也不是等级会员分享 + if (th.data.is_fengxiang == 1) { + if (th.data.def_recommon) req.recommon = th.data.def_recommon + if (th.data.def_serviceman) req.serviceman = th.data.def_serviceman + } else { + //---后台要求要输入邀请码--- + if (th.data.isyaoqingma) { + if (!th.data.inp_recommon) { + getApp().my_warnning("请输入邀请码", 0, th); + return false; + } + req.recommon = th.data.inp_recommon + } + //--后台要求要输入营业员-- + if (th.data.is_salesman) { + if (!th.data.inp_serviceman) { + getApp().my_warnning("请输入营业员", 0, th); + return false; + } + req.serviceman = th.data.inp_serviceman + } + } + req.storeId = os.stoid; + req.userId = getApp().globalData.user_id; + //--如果有邀请码,和营业员的情况下-- + if(req.recommon || req.serviceman ) { + var req_data = {storeId: os.stoid, userId: req.userId}; + if(req.recommon) req_data.inviteCode=req.recommon; + if(req.serviceman) req_data.staffNo=req.serviceman; + getApp().request.get("/api/weshop/plus/vip/mem/referee/code/check", { + data:req_data, + success:function(res){ + if(res.data.code==0) { + t_pay.pay(req, th.success, function () { + getApp().my_warnning("支付失败", 0, th); + }); + }else{ + getApp().my_warnning(res.data.msg, 0, th); + } + } + }) + }else{ + t_pay.pay(req, th.success, function () { + getApp().my_warnning("支付失败", 0, th); + }); + } + }, + //返回会员页面 + OpeningClose: function() { + this.setData({open_yq:0}); + }, + + //返回会员中心 + back_user:function () { + setTimeout(function () { + wx.reLaunch({url:"/pages/user/index/index"}); + },1000) + }, + + //--支付成功,跳转到等级卡续费页面-- + success:function () { + + }, + + //--绑定邀请码的输入-- + b_input:function (e) { + var value=e.detail.value; + var name=e.currentTarget.dataset.name; + var ob={}; + ob[name]=value + this.setData(ob); + } + +}) \ No newline at end of file diff --git a/pages/user/plus/plus.json b/pages/user/plus/plus.json new file mode 100644 index 0000000..23e6f91 --- /dev/null +++ b/pages/user/plus/plus.json @@ -0,0 +1,8 @@ +{ + "usingComponents": { + "pop_txt": "/components/userqy_pop_up/userqy_pop_up", + "goods_recommend": "/components/goods_list/goods_list", + "warn": "/components/long_warn/long_warn" + }, + "navigationBarTitleText": "购买plus会员" +} \ No newline at end of file diff --git a/pages/user/plus/plus.wxml b/pages/user/plus/plus.wxml new file mode 100644 index 0000000..d7c6d5b --- /dev/null +++ b/pages/user/plus/plus.wxml @@ -0,0 +1,156 @@ + + + + + + + + + + + + + + + + + + + + {{item.CardName}} + 开通会员年卡仅{{item.CardFee}}元 + + 立即开通 + + + + + + + + + + 根据大家购买数据,您成为超级会员预计可省¥{{item.free}}元 + + + + + + + + + + + + + + + + + + 开通PLUSI会员尊享礼遇 + + PLUS会员尊享礼遇 + + + + + + PLUS会员可享以下特权 + + 解锁新权益 精彩享不停 + + + + + + + + + + + + + + + + + + + + + + + + + + + 好物推荐 + + + + + + + + + + + + GOOD HOT THING + + + + + + + + + + + + + + + + + + + + + + + + + 请完善下面信息 + + + + + + + + + + + + + + + + + + + 确认购买 + + + + + + + + + + + \ No newline at end of file diff --git a/pages/user/plus/plus.wxss b/pages/user/plus/plus.wxss new file mode 100644 index 0000000..1d9c580 --- /dev/null +++ b/pages/user/plus/plus.wxss @@ -0,0 +1,363 @@ +@import "../../../utils/wxParse/wxParse.wxss"; +page { + width: 100%; + height: 100%; + z-index: 3; + overflow-x: hidden; +} + +.plus { + overflow-x: hidden; +} + +.Member_bk { + position: absolute; + z-index: 0; + width: 100%; + height: 100%; +} + +.Opening_bk image { + position: absolute; + z-index: 2; + width: 100%; + height: 320rpx; +} + +.swiper { + width: 100%; + padding-top: 60rpx; +} + +swiper { + align-items: center; + display: flex; + justify-content: center; + height: 275rpx; +} + +.swiper image { + width: 490rpx; + height: 100%; + border-radius: 20rpx; +} + +.swiper, .Courtesy, .title { + position: relative; + z-index: 3; +} + +.Courtesy_image { + width: 50rpx; + height: 25rpx; + margin-top: 8rpx; +} + +.Courtesy_title { + color: rgb(173, 137, 79); + font-weight: bold; + margin-bottom: 10rpx; + letter-spacing: 2rpx; +} + +.Courtesy_can { + margin: 0rpx 7rpx; + color: rgb(94, 93, 91); + font-weight: bold; +} + +.Courtesy_comment { + padding: 0rpx 31rpx; +} + +.Equity_image { + width: 490rpx; + height: 175rpx; + margin: 20rpx 0rpx; +} + +/* 热门好物 */ + +.title .China { + width: 100%; + margin-top: 60rpx; + margin-bottom: 10rpx; + line-height: 0rpx; +} + +.title .China .line view { + width: 2rpx; +} + +.title .China .line { + height: 40rpx; + color: rgb(51, 51, 51); +} + +.title .China .line view { + border-left: 3rpx solid #000; + margin-left: 5rpx; +} + +.title .China .line .one { + height: 23rpx; +} + +.title .China .line .two { + height: 15rpx; +} + +.title .China .line .three { + height: 18rpx; +} + +.title .China .Recommend { + margin: 0rpx 20rpx; + font-size: 28rpx; + line-height: 39rpx; + font-weight: bold; +} + +.title .english .silk { + width: 214rpx; + height: 2rpx; + background-color: #000; +} + +.title .english .esh { + margin: 0rpx 15rpx; +} + +.Membership { + width: 575rpx; + height: 275rpx; + margin: 0 auto; + transform: scale(0.9); + border-radius: 18rpx; + box-shadow: 0rpx 0rpx 2rpx #888; + background-size: 100%; + padding: 0rpx 31rpx; + color: #ffa786; +} + +.enlarge { + transform: scale(1); +} + +.Membership_go { + margin-top: 50rpx; +} + +.Membership_Opening { + width: 150rpx; + height: 40rpx; + border-radius: 30rpx; + text-align: center; + line-height: 40rpx; + background-color: rgb(255, 167, 135); + color: #000; +} + +.Membership .Member { + width: 30rpx; + height: 30rpx; + margin-right: 5rpx; + background-size: 100% 100%; +position: relative; +left: -40rpx; + +} + +.Membership .Opening { + width: 160rpx; + height: 45rpx; + border-radius: 20rpx; + background-color: rgb(237, 189, 150); + line-height: 45rpx; + text-align: center; + margin-top: 2rpx; + color: #666 +} + +.Invitation { + padding: 0rpx 31rpx; + box-shadow: 0rpx 0rpx 10rpx #888; + height: 95rpx; + background-color: rgb(255, 255, 255); + z-index: 6; + position: relative; + margin-top: -15rpx; +} + +.Invitation .Invitation_count, .Invitation_my { + color: rgb(237, 189, 153); +} + +.Invitation .Invitation_Cash { + width: 150rpx; + height: 45rpx; + line-height: 45rpx; + text-align: center; + border-radius: 25rpx; + margin-left: 30rpx; + background-color: rgb(237, 189, 150); + color: rgb(255, 255, 255); +} + +.Invitation .Detailed { + color: rgb(237, 189, 150); + text-decoration: underline; +} + +.consumption { + margin-top: 95rpx; + font-size: 18rpx; +} + +.Membership_remarks { + margin-top: 2rpx; +} + +.MemberPlus { + width: 618rpx; + height: 290rpx; + border-radius: 18rpx; + box-shadow: 0rpx 0rpx 10rpx #888; + margin: 0rpx 35rpx; + color: #ffa786; + padding: 0rpx 31rpx; + padding-top: 60rpx; + background-size: 100%; +} + +.Member_sp { + height: 325rpx; +} + +.renew { + width: 190rpx; + height: 50rpx; + border-radius: 18rpx; + background-color: rgb(237, 189, 150); + text-align: center; + line-height: 50rpx; + color: #000; + margin-top: 7rpx; +} + +.xs { + margin-top: 130rpx; +} + +.MemberPlus .share { + width: 30rpx; + height: 30rpx; + margin-left: 7rpx; +} + +.MemberPlus .privilege { + width: 30rpx; + height: 30rpx; + margin-right: 7rpx; +} + +.Disgraceful { + position: fixed; + left: 0; + top: 0; + right: 0; + bottom: 0; + z-index: 11; + background: rgba(0, 0, 0, 0.6); + width: 100%; + height: 100%; +} +.ddd { + border-radius: 20rpx; +} + +.Member_purchase { + width: 610rpx; + margin-top: 20rpx; +} + +.purchase_Bk { + width: 100%; + height: 225rpx; + background-size: 100%; +} + +.write { + width: 280rpx; + height: 275rpx; + bottom: 20rpx; + left: 185rpx; +} + +.inf_com { + background-color: rgb(255, 255, 255); + padding: 0rpx 85rpx; +} + +.perfect { + padding-top: 30rpx; + padding-bottom: 65rpx; +} + +.fillin { + color: rgb(208, 208, 208); +} + +.Enter_phone { + border-bottom: 1rpx solid rgb(153, 153, 153); + margin-bottom: 35rpx; +} + +.phone_image { + width: 60rpx; + height: 60rpx; + margin-bottom: 5rpx; +} + +.phone { + margin-left: 15rpx; + color: #000; +} + +.enter_SalesClerk { + border-bottom: 1rpx solid rgb(153, 153, 153); +} + +.SalesClerk_image { + width: 60rpx; + height: 60rpx; + margin-bottom: 5rpx; +} + +.SalesClerk { + margin-left: 15rpx; + color: #000; +} + +.purchase { + width: 250rpx; + height: 50rpx; + border-radius: 25rpx; + color: rgb(255, 255, 255); + margin: 55rpx 0rpx; + background-position: center;background-repeat: no-repeat;background-size: cover +} + +.purchaseClose { + width: 70rpx; + height: 70rpx; + border-radius: 50%; + margin-top: 60rpx; +} + +input { + + overflow: visible; + width: 360rpx; +} + diff --git a/pages/user/userinfo/userinfo.js b/pages/user/userinfo/userinfo.js index 81c1379..a3c925f 100644 --- a/pages/user/userinfo/userinfo.js +++ b/pages/user/userinfo/userinfo.js @@ -1,84 +1,777 @@ function e(e, a, r) { - return a in e ? Object.defineProperty(e, a, { - value: r, - enumerable: !0, - configurable: !0, - writable: !0 - }) : e[a] = r, e; -} + return a in e ? Object.defineProperty(e, a, { + value: r, + enumerable: !0, + configurable: !0, + writable: !0 + }) : e[a] = r, e; +} -var a = getApp(), r = a.globalData.setting, - t = a.request, s = require("../../../utils/common.js"), util = require("../../../utils/util.js"); +var a = getApp(), + r = a.globalData.setting, + t = a.request, + s = require("../../../utils/common.js"), + util = require("../../../utils/util.js"); + +var timestamp = Date.parse(new Date()); +var date = new Date(timestamp); Page({ - data: { - url: r.url, - resourceUrl: r.resourceUrl, - iurl: r.imghost, - defaultAvatar: r.resourceUrl + "/static/images/user68.jpg", - user: null, - tc_hide:true, - stoname:"", - }, - onShow: function() { - var e = this; var req=t; - a.getUserInfo(function(a) { - var txt = util.formatTime(a.birthday,'yyyy-M-d'),arr = txt.split(' '); - a.birthday=arr[0]; - var txt2 = util.formatTime(a.reg_time, 'yyyy-M-d'), arr2 = txt.split(' '); - a.reg_time = arr2[0]; - req.get("/api/weshop/pickup/get/" + r.stoid + "/" + a.pickup_id, { - success: function (da) { - console.log('getsto'); - console.log(da); - //设置门店 - e.setData({ stoname: da.data.data.pickup_name}); - } - }) - e.setData({ - user: a - }); - }, !0); - }, - editUserInfo: function(e) { - var r = e.currentTarget.dataset.type; - if (("password" == r || "paypwd" == r) && !this.data.user.mobile) return a.showWarning("请先绑定手机号码"); - r && this.data.user && wx.navigateTo({ - url: "/pages/user/userinfo_edit/userinfo_edit?type=" + r - }); - }, - - /*--------------------修改头像---------------------*/ - changeAvatar: function() { - return false; - var r = this; - wx.chooseImage({ - count: 1, - sizeType: [ "compressed", "original" ], - sourceType: [ "camera", "album" ], - success: function(u) { - t.uploadFile(r.data.url + "/api/user/upload_headpic", { - filePath: u.tempFilePaths[0], - name: "head_pic", - success: function(t) { - var u = s.getFullUrl(t.data.result); - r.setData(e({}, "user.head_pic", u)), a.globalData.userInfo.head_pic = u, a.showSuccess("设置头像成功"); + data: { + phone:"", + url: r.url, + resourceUrl: r.resourceUrl, + iurl: r.imghost, + defaultAvatar: r.resourceUrl + "/static/images/user68.jpg", + user: null, + tc_hide: true, + stoname: "", + checkDate: false, + datet: "", + year: date.getFullYear(), + store: 0, + all_sto: "", + region_name: "", + def_pick_store: "", + sort_store: 0, //门店分类 + sec_sto: "", + more_store: 0, //选择门店 + choice_sort_store: 1, //选择分类门店 + more_store: 0, //选择门店 + lat: null, //维度 + lon: null, //经度 + fir_pick_index: 0, + sec_pick_index: 0, + is_gps: 1, + lon: 0, + only_pk: 0, + open_ind_store: 0, //哪里打开的门店列表的控制属性 + ispwhid:1,//是否隐藏密码显示 + isstcsp:1,//是否启动密码消费 + isGender:1,//什么性别 + iscalendar:1,//是否是农历 + consumption:"",//消费密码 + identity_card:"",//身份证值 + address:"",//地址 + openid:"",//openid + pulscardname:"",//puls会员的卡 + gradename:"",//会员权益的卡 + isBool:"", + sto_sele_id:"",//所属门店id + }, + //是否启动密码消费 + isstcsp:function(){ + var th = this; + var isstcsp = th.data.isstcsp; + if (isstcsp==0){ + th.setData({ + isstcsp:1 + }) + }else{ + th.setData({ + isstcsp: 0 + }) + } + }, + //出生日期是否是农历 + iscalendar:function(){ + var th = this; + var iscalendar = th.data.iscalendar; + if (iscalendar == 0) { + th.setData({ + iscalendar: 1 + }) + } else { + th.setData({ + iscalendar: 0 + }) + } + }, + //性别 + isGender:function(e){ + var th = this; + var sex = e.currentTarget.dataset.sex; + console.log("点击选择性别",sex); + th.setData({ + isGender:sex + }) + + + }, + //密码是否隐藏显示 + ispwhid:function(){ + var th = this; + var ispwhid = th.data.ispwhid; + + if (ispwhid == 0) { + th.setData({ + ispwhid: 1 + }) + } else { + th.setData({ + ispwhid: 0 + }) + } + }, + checkDate: function() { + var th = this; + if (th.data.checkDate) { + th.setData({ + checkDate: false + }) + } else { + th.setData({ + checkDate: true + }) + } + }, + bindChange: function(e) { + this.setData({ + datet: e.detail.value, + }); + }, + //---点击二级之后的选择--- + choose_for_store: function(e) { + var index_c = e.currentTarget.dataset.ind; + + this.setData({ + sec_pick_index: index_c, + fir_pick_index: index_c + }) + }, + //确定def_pick为选择的门店 + sure_pick: function(e) { + var th = this; + var item = null; + var openindstore = th.data.open_ind_store; + if (th.data.choice_sort_store == 0) { + var index = th.data.fir_pick_index; + if (th.data.is_show_sto_cat == 1) { + item = th.data.def_pickpu_list[index]; + } else { + item = th.data.only_pk[index]; //当没有门店分类的时候 + } + + } else { + var index = th.data.sec_pick_index; + item = th.data.sec_sto.s_arr[index]; + } + + console.log("选择门店刷新", "def_pick_store", item); + th.setData({ + def_pick_store: item, + stoname: item.pickup_name, + sto_sele_name: item.pickup_name, + sto_sele_id: item.pickup_id, + sto_sele_distr: item.distr_type, + store: 0, + choice_sort_store: 0, + fir_pick_index: 0 + }); + + if (openindstore == 1) { + th.setData({ + openSpecModal: !0, + openSpecModal_ind: openindstore, + }); + } else if (openindstore == 2) { + th.setData({ + openSpecModal: !0, + openSpecModal_ind: openindstore, + openSpecModal_pt: 1 + }); + } + }, + choose_for_store_fir: function(e) { + var index_c = e.currentTarget.dataset.ind; + this.setData({ + fir_pick_index: index_c + }) + }, + wait_for_store_config: function() { + var th = this; + wx.getLocation({ + type: 'wgs84', + success: function(res) { + th.data.lat = res.latitude; + th.data.lon = res.longitude; + th.data.is_get_local_ok = 1; + }, + fail: function(res) { + if (res.errCode == 2) { + th.setData({ + is_gps: 0 + }); + if (th.data.is_gps == 0) { + getApp().confirmBox("请开启GPS定位", null, 10000, !1); + } + } else { + th.setData({ + is_gps: "3" + }); + } + th.data.is_get_local_ok = 1; + } + }) + }, + onclickstore: function() { + var th = this; + if (th.data.store == 0) { + this.setData({ + store: 1 + }) + } else { + this.setData({ + store: 0 + }) + } + var dd = { + store_id: r.stoid, + isstop: 0, + pageSize: 300 + } + th.setData({ + sort_store: 1 + }); + var i = getApp().request; + //如果有距离的话 + if (th.data.lat != null) { + dd.lat = th.data.lat; + dd.lon = th.data.lon; + } + //----------获取门店---------------- + getApp().request.promiseGet("/api/weshop/pickup/list", { + data: dd, + }).then(res => { + var e = res; + if (e.data.code == 0) { + //-- 如果有默认选择门店的时候,要把默认门店放在第一位 -- + if (th.data.def_pick_store) { + for (var k = 0; k < e.data.data.pageData.length; k++) { + if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) { + e.data.data.pageData.splice(k, 1); //删除 + break; + } + } + e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加 + } + + //单总量超出5个的时候 + if (e.data.data.total > 5) { + i.get("/api/weshop/storagecategory/page", { + data: { + store_id: r.stoid, + is_show: 1, + pageSize: 300 + }, + success: function(ee) { + if (ee.data.code == 0) { + if (ee.data.data.pageData.length > 0) { + var def_arr = new Array(); + var ishas = 0; + //-- 开始就看5个门店 -- + for (var k = 0; k < 5; k++) { + if (k == e.data.data.pageData.length) break; + def_arr.push(e.data.data.pageData[k]); + } + + th.setData({ + def_pickpu_list: def_arr, + pickpu_list: ee.data.data.pageData + }); + var sto_cate = ee.data.data.pageData; + var sto_arr = e.data.data.pageData; + var newarr = new Array(); + var qita = new Array(); + + //----要进行门店分组-------- + for (var i = 0; i < sto_arr.length; i++) { + //找一下这个门店有没有在分类数组内 + var find2 = 0, + find2name = ""; + for (var m = 0; m < sto_cate.length; m++) { + if (sto_arr[i].category_id == sto_cate[m].cat_id) { + find2 = sto_cate[m].cat_id; + find2name = sto_cate[m].cat_name; + break; + } + } + + if (newarr.length > 0) { + var find = 0; + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他 + if (find2 != 0) { + for (var ii = 0; ii < newarr.length; ii++) { + if (sto_arr[i].category_id == newarr[ii].cat_id) { + newarr[ii].s_arr.push(sto_arr[i]); + find = 1; + break; + } + } + if (find == 0) { + var arr0 = new Array(); + arr0.push(sto_arr[i]); + var item = { + cat_id: find2, + name: find2name, + s_arr: arr0 + }; + newarr.push(item); + } + } else { + qita.push(sto_arr[i]); + } + } else { + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他 + if (find2 != 0) { + var arr0 = new Array(); + arr0.push(sto_arr[i]); + var item = { + cat_id: find2, + name: find2name, + s_arr: arr0 + }; + newarr.push(item); + } else { + qita.push(sto_arr[i]); + } } + } + + //----安排其他的分类----- + if (qita.length > 0) { + var item = { + cat_id: -1, + name: "其他", + s_arr: qita + }; + newarr.push(item); + } + th.setData({ + is_show_sto_cat: 1, + all_sto: newarr + }); + + } else { + th.setData({ + is_show_sto_cat: -1, + only_pk: e.data.data.pageData + }); + } + } else { + th.setData({ + is_show_sto_cat: -1, + only_pk: e.data.data.pageData }); + } } + }); + } else { + th.setData({ + is_show_sto_cat: 0, + only_pk: e.data.data.pageData + }); + } + } + }, 200) + console.log(th.data.all_sto + 'eeee'); + }, + //选择更多门店 + more_store: function() { + this.setData({ + sort_store: 1 + }); + }, + //---选择分类门店--- + choice_sort_store: function(e) { + var index = e.currentTarget.dataset.index; + var region_name = e.currentTarget.dataset.region; + var item = this.data.all_sto[index]; + this.setData({ + region_name: region_name, + sort_store: 0, + choice_sort_store: 1, + sec_sto: item, + sec_pick_index: 0 + }); + }, + // 返回按钮 + returns: function() { + this.setData({ + sort_store: 0, + choice_sort_store: 0 + }); + }, + //身份证号严格校验 + IdentityIDCard: function(e) { + var code = e.detail.value; + //身份证号前两位代表区域 + var city = { + 11: "北京", + 12: "天津", + 13: "河北", + 14: "山西", + 15: "内蒙古", + 21: "辽宁", + 22: "吉林", + 23: "黑龙江 ", + 31: "上海", + 32: "江苏", + 33: "浙江", + 34: "安徽", + 35: "福建", + 36: "江西", + 37: "山东", + 41: "河南", + 42: "湖北 ", + 43: "湖南", + 44: "广东", + 45: "广西", + 46: "海南", + 50: "重庆", + 51: "四川", + 52: "贵州", + 53: "云南", + 54: "西藏 ", + 61: "陕西", + 62: "甘肃", + 63: "青海", + 64: "宁夏", + 65: "新疆", + 71: "台湾", + 81: "香港", + 82: "澳门", + 91: "国外 " + }; + //身份证格式正则表达式 + var idCardReg = /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/i; + var errorMess = ""; //错误提示信息 + var isPass = true; //身份证验证是否通过(true通过、false未通过) + + //如果身份证不满足格式正则表达式 + if (!code || !idCardReg.test(code)) { + console.log("您输入的身份证号格式有误!"); + errorMess = "您输入的身份证号格式有误!"; + isPass = false; + } + + //区域数组中不包含需验证的身份证前两位 + else if (!city[code.substr(0, 2)]) { + errorMess = "您输入的身份证地址编码有误!"; + isPass = false; + } else { + //18位身份证需要验证最后一位校验位 + if (code.length == 18) { + code = code.split(''); + //∑(ai×Wi)(mod 11) + //加权因子 + var factor = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; + //校验位 + var parity = [1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2]; + var sum = 0; + var ai = 0; + var wi = 0; + for (var i = 0; i < 17; i++) { + ai = code[i]; + wi = factor[i]; + sum += ai * wi; + } + var last = parity[sum % 11]; + if (parity[sum % 11] != code[17]) { + errorMess = "您输入的身份证号不存在!"; + isPass = false; + } + } + } + var returnParam = { + 'errorMess': errorMess, + 'isPass': isPass + } + if (errorMess != "") { + wx.showModal({ + title: errorMess, + content: '', + showCancel: false, + confirmText: '确定', + confirmColor: '', + success: function(res) {}, + fail: function(res) {}, + complete: function(res) {}, + }) + } + return returnParam; + }, + //------初始化加载---------- + onLoad: function(t) { + this.puls_user(); + this.equity_user(); + this.initial_user(); + }, + //-----------会员是否初始化--------------------- + initial_user: function () { + + var th = this; + getApp().request.get("/api/weshop/users/grade/vip/init/get", { + data: { + storeId: r.stoid, + }, + success: function (su) { + var isBool = su.data.data.isBool; + console.log("会员是否初始化", isBool); + th.setData({isBool:isBool}); + } + }); + }, + //-----会员等级卡获取--------------- + equity_user:function(){ + var th = this; + getApp().request.get("/api/weshop/users/grade/aftervipinfo/get", { + data: { + storeId: r.stoid, + userId: getApp().globalData.user_id, + }, + success: function (su) { + var gradename=su.data.data.GradeName; + th.setData({gradename: gradename}); + + } + }); + }, + + //-----Plus会员获取----------- + puls_user:function(){ + var th=this; + getApp().request.get("/api/weshop/plus/vip/mem/list", { + data: { + storeId: r.stoid, + userId: getApp().globalData.user_id, }, + success: function (su) { + + if (su.data.code == 0) { + var cardname=su.data.data[0].MemCardName; + console.log("卡的名字", cardname); + th.setData({pulscardname:cardname}); + } + } + }); + }, + onShow: function() { + + this.wait_for_store_config(); + var e = this; + var req = t; + req.get("/api/weshop/users/getAndUpdateUser/" + r.stoid + "/" + getApp().globalData.user_id, { + success: function (src) { + var a=src.data.data; + console.log(a,"剩什么llllll",a.data); + var time = util.formatTime(a.reg_time,"'Y/M/D"); + var birthday = util.formatTime(a.birthday, "'Y/M/D"); + a.reg_time = time; + a.birthday = birthday + e.setData({ + phone: a.mobile, + user: a, + openid: a.openid, + sto_sele_id: a.pickup_id, + consumption: a.paypwd, + identity_card:a.idcard, + + }); + } + }) + a.getUserInfo(function(a) { + var txt = util.formatTime(a.birthday, 'yyyy-M-d'), + arr = txt.split(' '); + a.birthday = arr[0]; + var txt2 = util.formatTime(a.reg_time, 'yyyy-M-d'), + arr2 = txt.split(' '); + a.reg_time = arr2[0]; + if (a.pickup_id!=null) { + req.get("/api/weshop/pickup/get/" + r.stoid + "/" + a.pickup_id, { + success: function(da) { + + //设置门店 + e.setData({ + stoname: da.data.data.pickup_name + }); + } + }) + } + // var phone = ""; + // phone+=a.mobile.substr(0, 3)+"****"; + // phone += a.mobile.substr(7, 12); + + + + // e.setData({ + // isGender:e.data.user.sex + // }) + }, !0); + }, + + editUserInfo: function(e) { + var r = e.currentTarget.dataset.type; + if (("password" == r || "paypwd" == r) && !this.data.user.mobile) return a.showWarning("请先绑定手机号码"); + r && this.data.user && wx.navigateTo({ + url: "/pages/user/userinfo_edit/userinfo_edit?type=" + r + }); + }, + + /*--------------------修改头像---------------------*/ + changeAvatar: function() { + return false; + var r = this; + wx.chooseImage({ + count: 1, + sizeType: ["compressed", "original"], + sourceType: ["camera", "album"], + success: function(u) { + t.uploadFile(r.data.url + "/api/user/upload_headpic", { + filePath: u.tempFilePaths[0], + name: "head_pic", + success: function(t) { + var u = s.getFullUrl(t.data.result); + r.setData(e({}, "user.head_pic", u)), a.globalData.userInfo.head_pic = u, a.showSuccess("设置头像成功"); + } }); - }, + } + }); + }, //------卡片的显示和关闭-------- - show_tc: function () { + show_tc: function() { this.setData({ tc_hide: false, }); }, - hide_tc: function () { + hide_tc: function() { this.setData({ tc_hide: true, }); }, + //消费密码输入框失去焦点事件 + lose_focus:function(e){ + var th=this; + var val=e.detail.value; + console.log("是什么东西",val); + if (val.length > 6 || val!=""){ + + this.setData({ consumption: val }); + console.log("是什么东西", val); + } + + + }, + +//地址 + address:function(e){ + var val = e.detail; + console.log("地址55555555", val.value); + this.setData({ address: val.value }); + }, + + //身份证验证 + identity_card:function(e){ + var val = e.detail; + + this.setData({ identity_card: val.value }); + + }, + //用户名字 + user_name:function(e){ + var name = e.detail.value; + if (name !=""||name!=null){ + + this.setData({ user_name: name }); + + } + + }, + + //点击确认修改信息 + confirm_revision:function(){ + var th=this; + var isstcsp=th.data.isstcsp;//是否启用消费密码 + var phone=th.data.phone;//手机号码 + if (phone == "" || phone==null){ + getApp().my_warnning("手机不能为空", 0, th); + + return false; + } + + + var consumption = th.data.consumption;//消费密码 + var isstcsp = th.data.isstcsp; + if(isstcsp==1){ + + if (consumption==null || consumption=="" || consumption==undefined ){ + getApp().my_warnning("消费密码不能为空", 0, th); return false; + } + if (consumption.length < 6){ + getApp().my_warnning("消费密码不能小于6位", 0, th); return false; + } + } + var sex = th.data.isGender;//性别 + + if (sex!="1"&&sex!="2" ) { + getApp().my_warnning("请选择性别", 0, th); + return false; + } + var user_name = th.data.user.vipname;//用户姓名 + console.log("名字77777",user_name); + if (user_name==""|| user_name== null) { + getApp().my_warnning("请输入名字", 0, th); + return false; + } + var identity_card = th.data.identity_card;//身份证 + console.log("身份证",identity_card); + + if (identity_card == "" || identity_card == null ) { + getApp().my_warnning("请输入身份证", 0, th); + return false; + } else if (!(/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(identity_card))){ + getApp().my_warnning("身份证号码错误",0, th); + return false; + } + var address = th.data.address;//地址 + console.log("地址1010101", address) + if (address == "" || address == null) { + getApp().my_warnning("请输入地址", 0, th); + return false; + } + //保存所属门店的id + var sto_sele_id=th.data.sto_sele_id; + console.log("请输入所属门店的id", sto_sele_id); + if (sto_sele_id == null || sto_sele_id==""){ + getApp().my_warnning("请输入所属门店", 0, th); + return false; + } + console.log("要保存的数据", sex, consumption, identity_card, address, user_name); + var datas = { + mobile: phone,//手机号码 + store_id: r.stoid, + user_id: getApp().globalData.user_id, + vipnopwd: isstcsp, + vippass: consumption,//消费密码 + sex: sex,//性别 + nickname:user_name,//昵称 + idcard:identity_card,//身份证 + address:address,//地址 + pickup_id: sto_sele_id//自提门店 所属门店 + } + getApp().request.put("/api/weshop/users/updateUserInfo", { + data: datas, + success: function (res) { + + if (res.data.code==0){ + getApp().showWarning("修改成功"); + }else{ + getApp().showWarning("修改失败"); + } + + } + }) + } + }); \ No newline at end of file diff --git a/pages/user/userinfo/userinfo.json b/pages/user/userinfo/userinfo.json index 2f245ea..9a57847 100644 --- a/pages/user/userinfo/userinfo.json +++ b/pages/user/userinfo/userinfo.json @@ -1,4 +1,7 @@ { "navigationBarTitleText": "个人资料", - "enablePullDownRefresh": false + "enablePullDownRefresh": false, + "usingComponents": { + "warn": "/components/long_warn/long_warn" + } } \ No newline at end of file diff --git a/pages/user/userinfo/userinfo.wxml b/pages/user/userinfo/userinfo.wxml index 19cd0d1..d19fb83 100644 --- a/pages/user/userinfo/userinfo.wxml +++ b/pages/user/userinfo/userinfo.wxml @@ -1,97 +1,371 @@ + - - - 头像 - + + + + + + + + + + + + {{user.nickname}} + + + + + + + + + {{gradename}} + + + + + + + + {{pulscardname}} + + + + - - 昵称 - - {{user.nickname}} + + + + + 我的二维码 + + + + + + + + 卡号 + {{user.erpvipno}} - - 性别 - - {{user.sex?user.sex==1?'男':'女':'保密'}} + + + 是否启用消费密码 + + + + + + + + + 启动密码消费 + + + + + + 消费密码 + + + + + + + - - 生日 - - {{user.birthday}} + + + + + + + + - - 姓名 - - {{user.vipname}} + + 性别 + + + + + + + + + + + + + + + + + + + + + - - 身份证 - - {{user.idcard}} - - - 电话 - - {{user.mobile}} - - - 地址 - - {{user.address}} + + 出生日期 + + + + + + + + + + + + 农历 + + + + + + + + + + {{datet==""? user.birthday==""?"":filters.replace_time2(user.birthday):datet}} + + + + + + + + 姓名 + + - - 所属门店 - - {{stoname}} - - - - 收货地址 - - - - 我的二维码名片 - + + 身份证 + + + + + + + + 更换手机 + + {{phone}} + - - 绑定的时间 - - {{user.reg_time}} + + + 地址 + + + + + + + 所属门店 + + {{stoname}} + + + + + + 收货地址 + + + + + + + 绑定的时间 + {{filters.replace_time2(user.reg_time)}} + + + + + + + 确认修改 +