var e = function (e) { return e && e.__esModule ? e : { default: e }; }(require("../../../utils/LoadMore.js")), 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"), n = new e.default(); var regeneratorRuntime = require('../../../utils/runtime.js'); var api = require('../../../api/api.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,//分佣的数据 }, // uers_card:function () { // getApp().request.get("/api/weshop/plus/vip/mem/bership/get" + os.stoid+, { // success: function (res) { // var is_cardrule = res.data.data.cardrules; // w.wxParse("content", "html", is_cardrule, that, 6); // that.setData({ // is_card_rule: is_cardrule // }); // } // }); // }, // 邀请的人及分成 // divide_into:function(){ // var th=this; // getApp().request.get("/api/weshop/plus/vip/mem/freeze/money", { // data:{ // userId: getApp().globalData.user_id, // storeId: os.stoid, // },success: function (res) { // var divide_into=res.data.data; // console.log("邀请的人及分成5555555",res.data); // th.setData({ divide_into: divide_into}); // } // }); // }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { var that = this; //同步初始化 that.init(); //获取最大的卡类 // that.getPlusCardType(); //商家配置信息 是等级卡的说明 // getApp().request.get("/api/weshop/storeconfig/get/"+ os.stoid, { // success: function (res) { // var is_cardrule = res.data.data.cardrules; // w.wxParse("content", "html", is_cardrule, that, 6); // that.setData({ // is_card_rule: is_cardrule // }); // } // }); //会员信息 // getApp().request.get("/api/weshop/users/get/" + os.stoid + "/" + getApp().globalData.user_id, { // success: function (res) { // //把网络图片缓存到本地 // var user = res.data.data; // var url = that.data.url; // console.log("是什么东西", user); // var img_money = url + "/images/userinfo/money.jpg"; // var img_Ancrown = url + "/images/userinfo/Ancrown.jpg"; // var img_Identification = url + "/images/userinfo/Identification.jpg"; // var img_square = url + "/images/userinfo/square.jpg"; // console.log(user.head_pic, img_money, img_Ancrown, img_Identification, img_square); // var big_card = that.data.big_card; // console.log(big_card,"ssssssss"); // wx.getImageInfo({ // src: big_card.CardImg, // success: function (res) { // //回调写法 // var bas_ming = res.path; // that.setData({ bas_ming: bas_ming}); // } // }) // wx.getImageInfo({ // src: user.CardImg, // success: function (res) { // //回调写法 // var bas_ming = res.path; // that.setData({ bas_ming: bas_ming }); // } // }) // console.log("会员数据",user); // that.setData({user: user}); // var big_card= that.big_card; // if (user != null && user != "" && user != undefined && big_card != null && user != "" && user != undefined){ // //画图 // that.saveImageToPhotosAlbum(); // } // } // }); //获取用户设备信息,屏幕宽度 wx.getSystemInfo({ success: res => { that.setData({ screenWidth: res.screenWidth }) } }) // this.saveImageToPhotosAlbum(); // this.puls_user(); }, //------------程序初始化入口 同步------------- 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 console.log(GradeCardID, "卡的id", res.data.data[0]); ee.setData({cardid: GradeCardID}); }) //-----------会员分佣------------------- 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/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 }); }) //----------------------------获取最大的卡类----------------------- await 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 }) }) //-----------------获取会员信息------------------------------- 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: big_card.CardImg, success: function (res) { //回调写法 var bas_ming = res.path; ee.setData({ bas_ming: bas_ming}); } }) //缓存会员头像的图片 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}); } }) //初始分享图页面 // ee.saveImageToPhotosAlbum(); }, //-----Plus会员获取----------- // puls_user: function () { // var th = this; // getApp().request.get("/api/weshop/plus/vip/mem/list", { // data: { // storeId: os.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 }); // } // } // }); // }, //打开分享图片 Share_pictures: function () { this.setData({ canvasHidden: false }) this.saveImageToPhotosAlbum(); }, // //获取最大的卡类 // 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 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); // th.setData({ // is_plusCard: plusCard, // big_card: big_card // }) // }) // }, /** * 生命周期函数--监听页面初次渲染完成 */ 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: '生成中...', }) 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; console.log("user的会员资料", user); console.log("最大的卡", big_card); console.log("会员头像", card_ming); console.log("缓存vip的价格", img_money); console.log(" 会员标识", img_Ancrown); console.log("/勋章图片", privilege_o); var app = getApp(); var unit = th.data.screenWidth / 750 * 1.35; var scene = getApp().globalData.user_id; console.log("二维码主键",scene); ///二微码 var vpath=""; var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" + os.stoid + "?sceneValue=" + scene + "&pageValue=pages/user/plus/plus"; wx.getImageInfo({ src: path3, success: function (res) { //回调写法 th.get_head_temp(th.get_goods_temp, function () { vpath = res.path; }) } }) console.log("生成二维码", path3); //开启画布 const ctx = wx.createCanvasContext('myCanvas'); //先画背景 ctx.drawImage("../../../images/plus/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/userinfo/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(user_head, 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, 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("sssssssssssssssssssssssss" + 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 }) } } })) }, //--获取商品图片的本地缓存,回调写法-- get_goods_temp: function (tt) { var ee = this; if (ee.data.share_goods_img) { tt(); return false; } //获取商品是分享图信息 wx.getImageInfo({ src: ee.data.data.original_img, success: function (res) { //res.path是网络图片的本地地址 ee.data.share_goods_img = res.path; tt(); }, fail: function (res) { ee.data.share_goods_img = "../../../images/share/default_g_img.gif"; //分享的图片不能用网络的 tt(); } }); }, /** * 生命周期函数--监听页面显示 */ onShow: function () { var goods_list = this.selectComponent("#goods_list"); //组件的id goods_list.get_list(); }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { var goods_list = this.selectComponent("#goods_list"); //组件的id goods_list.get_list(); this.setData({ j: true }) }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { }, //开通会员 Opening: function () { this.setData({ j: true }) }, //返回会员页面 OpeningClose: function () { this.setData({ j: false }) } })