diff --git a/components/diy_goodsGroup/diy_goodsGroup.js b/components/diy_goodsGroup/diy_goodsGroup.js
index 3bd0a80..980be53 100644
--- a/components/diy_goodsGroup/diy_goodsGroup.js
+++ b/components/diy_goodsGroup/diy_goodsGroup.js
@@ -139,8 +139,8 @@ Component({
this.data.g_id = nav_item.data;
var arr = [];
- for (var i = 0; i < this.data.g_id.length; i += this.data.goodscount) {
- arr.push(this.data.g_id.slice(i, i + this.data.goodscount));
+ for (var i = 0; i < this.data.g_id.length; i += parseInt(this.data.goodscount)) {
+ arr.push(this.data.g_id.slice(i, i + parseInt(this.data.goodscount)));
}
this.data.firist_type_data = arr;
this.init(this.data.classstyle_id, this.data.wgroup);
diff --git a/pages/giftpack/giftpacklist/giftpacklist.js b/pages/giftpack/giftpacklist/giftpacklist.js
index ab9c63d..a78e340 100644
--- a/pages/giftpack/giftpacklist/giftpacklist.js
+++ b/pages/giftpack/giftpacklist/giftpacklist.js
@@ -1,608 +1,636 @@
var e = getApp(),
- a = e.globalData.setting,
- os = a,
- t = e.request,
- d = e.globalData;
+ a = e.globalData.setting,
+ os = a,
+ t = e.request,
+ d = e.globalData;
var ut = require("../../../utils/util.js");
var com = require("../public/buy_com.js");
Page({
- data: {
- url: a.url, //接口网址
- iurl: a.imghost, //图片前缀网址
- isBuy: 0,
- getGiftID: '', //礼包id
- giftImage: '',
- giftTitle: '',
- giftDate: '',
- giftPrice: '',
- giftIntegral: '',
- giftPosPrice: '',
- giftQty: '',
- giftRemark: '',
- giftType: '',
- actTitle: '',
- getUrl: '',
- wareCard: [],
- orderSn: "", //订单编号
- lbId: "",
- code: "", //核销码
- c_state: "0", //判断是否已经使用, 0正常 1已使用 2已过期
- is_lb: 0, //是否有礼包
- default_color: null,
- first_leader: e.globalData.first_leader || 0, // 推荐人ID
-
- //门店相关
- ismend: 0,
- is_sec_mend: 0,
- sto_sele_name: "", //选中的门店名称
- sto_sele_id: "", //选中的门店id
- sto_sele_distr: "", //选择的门店的配送方式
- is_show_sto_cat: 1, //是否显示门店分类
- only_pk: null,
- all_sto: null,
- sec_sto: null, //选择了的门店分类
- pickpu_list: null, //读出的所有门店list
- def_pickpu_list: null, //一开始5个门店list
- sec_pick_index: 0, //第二级门店选择ID
- fir_pick_index: 0, //第一级门店选择ID
- all_pick_list: null,//所有的门店先记录起来
-
- select_store: 0, //选择更多
- index: 1,
- more_store: 0, //选择门店
- sort_store: 0, //门店分类
- choice_sort_store: 0, //选择分类门店
- new_user: 0, //新用户
-
- def_pick_store: null, // 默认的门店
- fir_def_store: null, //客户默认的门店的
- lat: null, //维度
- lon: null, //经度
-
- is_get_local_ok: 0, //获取坐标是否完成
- region_name: "门店分类", //区域的名字
- is_gps: 1,
- open_ind_store: 0, //哪里打开的门店列表的控制属性
- default_store: {}, //创建添加默认门店地址的对象
-
- store:0,
- openSpecModal:0
- },
- onLoad: function (options) {
-
- var th=this;
-
- this.setData({
- params:options,
- })
-
- getApp().getConfig2(function (e) {
- var json_d = JSON.parse(e.switch_list);
- th.setData({
- bconfig: e,
- sys_switch:json_d
- });
- })
- },
- init(){
- let options = this.data?.params; // this.data == null ? undefined:this.data.params
- var th = this;
- this.setData({
- getUserID: d.user_id,
- getStorageID: a.stoid,
- })
- this.setData({
- isBuy: options.isBuy,
- getGiftID: options.lbId,
- orderSn: options.orderSn,
- flag: options.flag, // 如果从商品详情页的促销处点击专享礼包跳转到此页,则flag为1
- })
- if (options.lbId) th.data.lbId = options.lbId;
- //-- 获取分享人的ID --
- var first_leader = options.first_leader || getApp().globalData.first_leader;
- if (first_leader) {
- this.setData({
- first_leader,
- })
- //-- user_id代过来免登录 --
- getApp().globalData.first_leader = first_leader;
- //调用接口判断是不是会员
- getApp().request.promiseGet("/api/weshop/shoppingGuide/get/" + os.stoid + "/" + first_leader, {}).then(res => {
- if (res.data.code == 0) {
- getApp().globalData.guide_id = res.data.data.id;
- }
- })
- }
- th.close();
-
-
- if(this.data.flag == 1) {
- this.getZxlbDetails();
- } else {
- if (this.data.isBuy == 0) {
- this.GetMyGiftList();
- } else if (this.data.isBuy == 1) {
- this.GetBuyGiftList();
- };
- };
- },
-
- onShow: function () {
- getApp().check_can_share();
- getApp().is_Single_page(this,function () {
- //--先判断会员状态--
- var user_info = getApp().globalData.userInfo;
- if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
- getApp().goto('/pages/togoin/togoin');
- return false;
- }
- this.init();
- })
- },
- GetBuyPrice: function (e) {
- var that = this.data;
- var th = this;
- //如果还没有开始的话
- if (th.data.isStart != 1) {
- getApp().my_warnning("活动还没有开始", 0, th);
- return false;
- }
-
- this.data.payMoney=th.data.sele_g.payMoney;
- th.setData({ buyType:2 })
- if(th.data.sele_g.is_pickup){
- th.setData({
- openSpecModal:1
+ data: {
+ url: a.url, //接口网址
+ iurl: a.imghost, //图片前缀网址
+ isBuy: 0,
+ getGiftID: '', //礼包id
+ giftImage: '',
+ giftTitle: '',
+ giftDate: '',
+ giftPrice: '',
+ giftIntegral: '',
+ giftPosPrice: '',
+ giftQty: '',
+ giftRemark: '',
+ giftType: '',
+ actTitle: '',
+ getUrl: '',
+ wareCard: [],
+ orderSn: "", //订单编号
+ lbId: "",
+ code: "", //核销码
+ c_state: "0", //判断是否已经使用, 0正常 1已使用 2已过期
+ is_lb: 0, //是否有礼包
+ default_color: null,
+ first_leader: e.globalData.first_leader || 0, // 推荐人ID
+
+ //门店相关
+ ismend: 0,
+ is_sec_mend: 0,
+ sto_sele_name: "", //选中的门店名称
+ sto_sele_id: "", //选中的门店id
+ sto_sele_distr: "", //选择的门店的配送方式
+ is_show_sto_cat: 1, //是否显示门店分类
+ only_pk: null,
+ all_sto: null,
+ sec_sto: null, //选择了的门店分类
+ pickpu_list: null, //读出的所有门店list
+ def_pickpu_list: null, //一开始5个门店list
+ sec_pick_index: 0, //第二级门店选择ID
+ fir_pick_index: 0, //第一级门店选择ID
+ all_pick_list: null,//所有的门店先记录起来
+
+ select_store: 0, //选择更多
+ index: 1,
+ more_store: 0, //选择门店
+ sort_store: 0, //门店分类
+ choice_sort_store: 0, //选择分类门店
+ new_user: 0, //新用户
+
+ def_pick_store: null, // 默认的门店
+ fir_def_store: null, //客户默认的门店的
+ lat: null, //维度
+ lon: null, //经度
+
+ is_get_local_ok: 0, //获取坐标是否完成
+ region_name: "门店分类", //区域的名字
+ is_gps: 1,
+ open_ind_store: 0, //哪里打开的门店列表的控制属性
+ default_store: {}, //创建添加默认门店地址的对象
+
+ store: 0,
+ openSpecModal: 0,
+
+ sto_sele_name_1: '',
+ share_goods_img:'', //礼包的分享图
+ canvasHidden:true,
+
+ screenWidth: 0
+ },
+ onLoad: function (options) {
+
+ var th = this;
+
+ this.setData({
+ params: options,
})
- }else{
- var my_confirm = th.selectComponent("#my_confirm"); //组件的id
- my_confirm.open(
- "是否确定购买该礼包",
- "取消",
- "确定",
- function () {
- my_confirm.open_cancel(0);
- },
- function () {
- my_confirm.open_cancel(0);
- com.buy_libao(th)
- }
- )
- }
+ getApp().getConfig(function (e) {
+ th.setData({sto_sele_name_1: e.store_name})
+ })
+ getApp().getConfig2(function (e) {
+ var json_d = JSON.parse(e.switch_list);
+ th.setData({
+ bconfig: e,
+ sys_switch: json_d
+ });
+ })
+ //获取用户设备信息,屏幕宽度
+ wx.getSystemInfo({
+ success: res => {
+ th.setData({
+ screenWidth: res.screenWidth
+ })
+ }
+ });
+ },
+ init() {
+ let options = this.data?.params; // this.data == null ? undefined:this.data.params
+ var th = this;
+ this.setData({
+ getUserID: d.user_id,
+ getStorageID: a.stoid,
+ })
- },
- GetBuyIntegral: function (e) {
- var that = this.data;
- var th = this;
+ if(!options.lbId && options.scene){
+ var gid_str = decodeURIComponent(t.scene);
+ gid_str = gid_str.split("_");
- //如果还没有开始的话
- if (th.data.isStart != 1) {
- getApp().my_warnning("活动还没有开始", 0, th);
- return false;
- }
+ options.lbId=gid_str[0];
+ options.first_leader=gid_str[1];
+ options.isBuy=1;
+ }
- th.setData({ buyType:1 });
- if(th.data.sele_g.is_pickup){
- th.setData({
- openSpecModal:1
+
+ this.setData({
+ isBuy: options.isBuy,
+ getGiftID: options.lbId,
+ orderSn: options.orderSn,
+ flag: options.flag, // 如果从商品详情页的促销处点击专享礼包跳转到此页,则flag为1
})
- }else {
- var my_confirm = th.selectComponent("#my_confirm"); //组件的id
- my_confirm.open(
- "是否确定兑换该礼包",
- "取消",
- "确定",
- function () {
- my_confirm.open_cancel(0);
- },
- function () {
- my_confirm.open_cancel(0);
- com.buy_libao(th)
- })
- }
-
-
-
-
- },
-
- GetMyGiftList: function () {
- var _this = this;
- var th = this;
- getApp().request.get('/api/weshop/marketing/my/giftbag/detail/get', {
- isShowLoading: true,
- data: {
- "storeId": a.stoid, //商家ID
- "userId": d.user_id, //用户ID
- "orderSn": th.data.orderSn
- },
- success: function (res) {
- if (res.data.code == 0) {
- th.setData({
- giftImage: th.data.iurl + res.data.data.lbUrl,
- giftTitle: res.data.data.giftTitle,
- default_color: res.data.data.bgcolor
- })
-
- if(res.data.data.iswarelbtype==1) {
- th.setData({iswarelbtype:1})
- }
-
- if (!res.data.data.giftRemark || res.data.data.giftRemark == '') {
- th.setData({
- giftRemark: '暂无详情......'
+ if (options.lbId) th.data.lbId = options.lbId;
+ //-- 获取分享人的ID --
+ var first_leader = options.first_leader || getApp().globalData.first_leader;
+ if (first_leader) {
+ this.setData({
+ first_leader,
})
- } else {
- th.setData({
- giftRemark: res.data.data.giftRemark.replace(/\
{
+ if (res.data.code == 0) {
+ getApp().globalData.guide_id = res.data.data.id;
+ }
})
- }
-
- //---获取日期的时间戳---
- var t_endtime = res.data.data.endTime;
- t_endtime = t_endtime.replace(/-/g, '/');
- var t_date = new Date(t_endtime) / 1000;
- var t_now = ut.gettimestamp();
-
- var t_starttime = res.data.data.starTime;
- t_starttime = t_starttime.replace(/-/g, '/');
- var t_sdate = new Date(t_starttime) / 1000;
-
- if (res.data.data.goodsUseState) th.setData({
- c_state: 1
- })
- else if (t_date <= t_now)
+ }
+ th.close();
+
+
+ if (this.data.flag == 1) {
+ this.getZxlbDetails();
+ } else {
+ if (this.data.isBuy == 0) {
+ this.GetMyGiftList();
+ } else if (this.data.isBuy == 1) {
+ this.GetBuyGiftList();
+ }
+
+ }
+
+ },
+
+ onShow: function () {
+ getApp().check_can_share();
+ getApp().is_Single_page(this, function () {
+ //--先判断会员状态--
+ var user_info = getApp().globalData.userInfo;
+ if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
+ getApp().goto('/pages/togoin/togoin');
+ return false;
+ }
+ this.init();
+ })
+ },
+ GetBuyPrice: function (e) {
+ var that = this.data;
+ var th = this;
+ //如果还没有开始的话
+ if (th.data.isStart != 1) {
+ getApp().my_warnning("活动还没有开始", 0, th);
+ return false;
+ }
+
+ this.data.payMoney = th.data.sele_g.payMoney;
+ th.setData({buyType: 2})
+ if (th.data.sele_g.is_pickup) {
th.setData({
- c_state: 2
+ openSpecModal: 1
})
- else if (t_sdate > t_now)
+ } else {
+ var my_confirm = th.selectComponent("#my_confirm"); //组件的id
+ my_confirm.open(
+ "是否确定购买该礼包",
+ "取消",
+ "确定",
+ function () {
+ my_confirm.open_cancel(0);
+ },
+ function () {
+ my_confirm.open_cancel(0);
+ com.buy_libao(th)
+ }
+ )
+ }
+
+
+ },
+ GetBuyIntegral: function (e) {
+ var that = this.data;
+ var th = this;
+
+ //如果还没有开始的话
+ if (th.data.isStart != 1) {
+ getApp().my_warnning("活动还没有开始", 0, th);
+ return false;
+ }
+
+ th.setData({buyType: 1});
+ if (th.data.sele_g.is_pickup) {
th.setData({
- c_state: -1
+ openSpecModal: 1
})
- th.setData({
- giftDate: res.data.data.endTime,
- giftPosPrice: res.data.data.giftPosPrice,
- giftQty: res.data.data.giftQty,
- giftIntegral: res.data.data.payIntegral,
- giftPrice: res.data.data.payMoney,
- giftType: res.data.data.actType,
- actTitle: res.data.data.actTitle,
- wareCard: res.data.data.wareCard,
- lbId: res.data.data.lbId
- })
- //判断是否有礼包
- for (var i = 0; i < res.data.data.wareCard.length; i++) {
- if (res.data.data.wareCard[i].lbType == 1) {
- th.setData({
- is_lb: 1
- })
- break;
+ } else {
+ var my_confirm = th.selectComponent("#my_confirm"); //组件的id
+ my_confirm.open(
+ "是否确定兑换该礼包",
+ "取消",
+ "确定",
+ function () {
+ my_confirm.open_cancel(0);
+ },
+ function () {
+ my_confirm.open_cancel(0);
+ com.buy_libao(th)
+ })
+ }
+
+
+ },
+
+ GetMyGiftList: function () {
+ var _this = this;
+ var th = this;
+ getApp().request.get('/api/weshop/marketing/my/giftbag/detail/get', {
+ isShowLoading: true,
+ data: {
+ "storeId": a.stoid, //商家ID
+ "userId": d.user_id, //用户ID
+ "orderSn": th.data.orderSn
+ },
+ success: function (res) {
+ if (res.data.code == 0) {
+ th.setData({
+ giftImage: th.data.iurl + res.data.data.lbUrl,
+ giftTitle: res.data.data.giftTitle,
+ default_color: res.data.data.bgcolor
+ })
+
+ if (res.data.data.iswarelbtype == 1) {
+ th.setData({iswarelbtype: 1})
+ }
+
+ if (!res.data.data.giftRemark || res.data.data.giftRemark == '') {
+ th.setData({
+ giftRemark: '暂无详情......'
+ })
+ } else {
+ th.setData({
+ giftRemark: res.data.data.giftRemark.replace(/\
t_now)
+ th.setData({
+ c_state: -1
+ })
+ th.setData({
+ giftDate: res.data.data.endTime,
+ giftPosPrice: res.data.data.giftPosPrice,
+ giftQty: res.data.data.giftQty,
+ giftIntegral: res.data.data.payIntegral,
+ giftPrice: res.data.data.payMoney,
+ giftType: res.data.data.actType,
+ actTitle: res.data.data.actTitle,
+ wareCard: res.data.data.wareCard,
+ lbId: res.data.data.lbId
+ })
+ //判断是否有礼包
+ for (var i = 0; i < res.data.data.wareCard.length; i++) {
+ if (res.data.data.wareCard[i].lbType == 1) {
+ th.setData({
+ is_lb: 1
+ })
+ break;
+ }
+ }
+
+ if (res.data.data.pickup_id) {
+ getApp().request.get("/api/weshop/pickup/get/" + os.stoid + "/" + res.data.data.pickup_id, {
+ success: function (res) {
+ if (res.data.code == 0) {
+ th.setData({pick_up: res.data.data});
+ }
+ }
+ });
+
+ }
+
+
+ } else {
+ getApp().my_warnning(res.data.msg, 0, th);
+ return false;
+ }
+ }
+ });
+
+ },
+ GetBuyGiftList: function () {
+ var _this2 = this;
+ var th = this.data;
+ getApp().request.get('/api/weshop/marketing/giftbag/detail/get', {
+ isShowLoading: true,
+ data: {
+ "storeId": a.stoid, //商家ID
+ "userId": d.user_id, //用户ID
+ "giftBagId": th.getGiftID
+ },
+ success: function success(res) {
+ if (res.data.code == 0) {
+ _this2.setData({
+ giftImage: th.iurl + res.data.data.lbUrl,
+ giftTitle: res.data.data.giftTitle,
+ default_color: res.data.data.bgcolor
+ })
+ if (res.data.data.giftRemark == '') {
+ _this2.setData({
+ giftRemark: '暂无详情......'
+ })
+ } else {
+ _this2.setData({
+ giftRemark: res.data.data.giftRemark.replace(/\
0) {
+ scene += "_" + user_id;
+ }
+ ///二微码
+ var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
+ os.stoid + "?sceneValue=" + scene + "&pageValue=pages/giftpack/giftpacklist/giftpacklist";
+
+ console.log("11111");
+ console.log(path3);
+
+ // 读取文件成功则OK--
+ wx.getImageInfo({
+ src: path3,
+ success: function (res) {
+ th.get_goods_temp(function () {
+ var vpath = res.path;
+ var context = wx.createCanvasContext('share');
+ th.drawPoster(context, unit, th.data.share_goods_img, vpath, 0);
+
+ //把画板内容绘制成图片,并回调 画板图片路径
+ context.draw(false, function () {
+ setTimeout(function () {
+ wx.canvasToTempFilePath({
+ x: 0,
+ y: 0,
+ width: 750,
+ height: 1217,
+ destWidth: 1.2 * 750 * 750 / that.data.screenWidth,
+ destHeight: 1.2 * 1217 * 750 / that.data.screenWidth,
+ canvasId: 'share',
+ success: function (res) {
+
+
+ console.log(res.tempFilePath)
+
+ that.setData({
+ shareImgPath: res.tempFilePath,
+ canvasHidden: true
+ })
+
+ if (!res.tempFilePath) {
+ wx.showModal({
+ title: '提示',
+ content: '图片绘制中,请稍后重试',
+ showCancel: false
+ })
+ return false;
+ }
+
+ that.setData({
+ showPoster: true,
+ });
+ wx.hideLoading();
+ }
+ })
+ }, 800)
+
+ });
+ })
+ },
+ fail: function (res) {
+ console.log(res);
+ wx.hideLoading();
+
+ }
+ });
+ },
+
+ //-- 小程序绘制海报 --
+ drawPoster(context, unit, img, vpath, type) {
+ // 1.灰色背景
+ context.setFillStyle('#f2f1f6');
+ context.rect(0, 0, 554 * unit, 899 * unit);
+ context.fill();
+
+ // 2.商城名称
+ let shopName = this.data.sto_sele_name_1;
+ context.setTextAlign('center');
+ context.setFontSize(26 * unit);
+ context.setFillStyle('black');
+ context.fillText(shopName, 277 * unit, 60 * unit);
+
+ // 3.推荐来源
+ let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`;
+ context.setTextAlign('center');
+ context.setFontSize(22 * unit);
+ context.setFillStyle('#96959a');
+ context.fillText(fromText, 277 * unit, 105 * unit);
+
+ // 4.海报背景
+ context.setFillStyle('white');
+ context.fillRect(37 * unit, 157 * unit, 480 * unit, 673 * unit);
+
+ // 5.商品图片
+ // 图片的x坐标
+ let bg_x = 37 * unit
+ // 图片的y坐标
+ let bg_y = 157 * unit
+ // 图片宽度
+ let bg_w = 480 * unit
+ // 图片高度
+ let bg_h = 474 * unit
+ // 图片圆角
+ let bg_r = 4
+ // 绘制海报背景图片圆角
+ context.save()
+ context.beginPath()
+ context.arc(bg_x + bg_r, bg_y + bg_r, bg_r, Math.PI, Math.PI * 1.5)
+ context.arc(bg_x + bg_w - bg_r, bg_y + bg_r, bg_r, Math.PI * 1.5, Math.PI * 2)
+ context.arc(bg_x + bg_w, bg_y + bg_h, bg_r, 0, Math.PI * 0.5)
+ context.arc(bg_x, bg_y + bg_h, 0, Math.PI * 0.5, Math.PI)
+ context.clip()
+ context.drawImage(img, bg_x, bg_y, bg_w, bg_h);
+ context.restore();
+
+ // 6.强烈推荐
+ let src = '';
+ context.beginPath();
+ if (type == 0) { // 普通
+ src = '../../../images/share/q_tj.png';
+ context.drawImage(src, 54 * unit, 648 * unit, 85 * unit, 30 * unit);
+ context.setFontSize(16 * unit)
+ context.setFillStyle("white")
+ context.setTextAlign('left');
+ context.fillText('强烈推荐', 64 * unit, 668 * unit);
+ }
+
+
+ let price = this.data.giftPrice;
+ let giftIntegral = this.data.giftIntegral;
+ context.setFontSize(32 * unit);
+ context.setFillStyle('#DE1117');
+
+ var price_txt="";
+ if(price || giftIntegral){
+ if(price){
+ price_txt='¥' + price;
+ if(giftIntegral) price_txt+='+';
+ }
+ if(giftIntegral) price_txt+=giftIntegral+'积分';
+ }else{
+ price_txt="¥0";
+ }
+
+ context.fillText(price_txt, 54 * unit, 735 * unit);
+
+
+ // 8.商品标题
+ context.setFontSize(20 * unit);
+ context.setFillStyle('#898989');
+ this.draw_Text(context, this.data.giftTitle, 54 * unit, 800 * unit, 240 * unit, 280 * unit, unit, 1);
+
+ // 9.小程序码
+ context.drawImage(vpath, 375 * unit, 660 * unit, 120 * unit, 120 * unit);
+ context.setFontSize(16 * unit);
+ context.setFillStyle('#777');
+ context.fillText('长按识别二维码', 378 * unit, 810 * unit);
+
+ // 10.竖线
+ context.beginPath();
+ context.setFillStyle('#eee');
+ context.rect(354 * unit, 670 * unit, 1 * unit, 130 * unit);
+ context.fill();
+ },
+
+ //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度
+ draw_Text: function (ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, unit, lineNum) {
+ var lineWidth = 0;
+ var lastSubStrIndex = 0; //每次开始截取的字符串的索引
+ var han = 0;
+ for (let i = 0; i < str.length; i++) {
+ if(lineNum) {
+ if(han == lineNum) return;
+ };
+ if (han == 2) return;
+ //lineWidth += ctx.measureText(str[i]).width;
+ lineWidth += ut.measureText(str[i], 21.3 * unit);
+ if (lineWidth > canvasWidth) {
+ han++;
+
+ if (han == 2 || han == lineNum)
+ ctx.fillText(str.substring(lastSubStrIndex, i) + '...', leftWidth, initHeight); //绘制截取部分
+ else
+ ctx.fillText(str.substring(lastSubStrIndex, i), leftWidth, initHeight);
+
+ initHeight += 22; //22为字体的高度
+ lineWidth = 0;
+ lastSubStrIndex = i;
+ titleHeight += 20;
+ }
+ if (i == str.length - 1) { //绘制剩余部分
+ ctx.fillText(str.substring(lastSubStrIndex, i + 1), leftWidth, initHeight);
+ }
+ };
+ },
+
+ //--获取商品图片的本地缓存,回调写法--
+ get_goods_temp: function (tt) {
+ var ee = this;
+ if (ee.data.share_goods_img) {
+ tt();
+ return false;
+ }
+ var img_url = ee.data.giftImage;
+ //获取商品是分享图信息
+ wx.getImageInfo({
+ src: img_url,
+ 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();
+ }
+ });
+ },
+
+ closePoster() {
+ this.setData({
+ showPoster: false,
+ });
+ },
+
+ // 保存图片到手机
+ savePic() {
+ console.log('保存图片');
+ var self = this;
+ // 获取用户的当前设置,返回值中有小程序已经向用户请求过的权限
+ this.getSetting().then((res) => {
+ // 判断用户是否授权了保存到相册的权限,如果没有发起授权
+ if (!res.authSetting['scope.writePhotosAlbum']) {
+ this.authorize().then(() => {
+ // 同意授权后保存下载文件
+ this.saveImage(self.data.shareImgPath)
+ .then(() => {
+ self.setData({
+ showPoster: false
+ });
+ });
+ })
+ } else {
+ // 如果已经授权,保存下载文件
+ this.saveImage(self.data.shareImgPath)
+ .then(() => {
+ self.setData({
+ showPoster: false
+ });
+ });
+ }
+
+ })
+ },
+
+ // 获取用户已经授予了哪些权限
+ getSetting() {
+ return new Promise((resolve, reject) => {
+ wx.getSetting({
+ success: res => {
+ resolve(res)
+ }
+ })
+ })
+ },
+ // 发起首次授权请求
+ authorize() {
+ // isFirst 用来记录是否为首次发起授权,
+ // 如果首次授权拒绝后,isFirst赋值为1
+ let isFirst = wx.getStorageSync('isFirst') || 0;
+ return new Promise((resolve, reject) => {
+ wx.authorize({
+ scope: 'scope.writePhotosAlbum',
+ // 同意授权
+ success: () => {
+ resolve();
+ },
+ // 拒绝授权,这里是用户拒绝授权后的回调
+ fail: res => {
+ if (isFirst === 0) {
+ wx.setStorageSync('isFirst', 1);
+ wx.showToast({
+ title: '保存失败',
+ icon: 'none',
+ duration: 1000
+ })
+ } else {
+ this.showModal();
+ }
+ console.log('拒绝授权');
+ reject();
+ }
+ })
+ })
+ },
+ // 保存图片到系统相册
+ saveImage(saveUrl) {
+ var self = this;
+ return new Promise((resolve, reject) => {
+ wx.saveImageToPhotosAlbum({
+ filePath: saveUrl,
+ success: (res) => {
+ wx.showToast({
+ title: '保存成功',
+ duration: 1000,
+ });
+ self.setData({
+ showPlaybill: 'true'
+ });
+ resolve();
+ },
+ fail: () => {
+ wx.showToast({
+ title: '保存失败',
+ duration: 1000,
+ });
+ }
+ })
+ })
+ },
});
\ No newline at end of file
diff --git a/pages/giftpack/giftpacklist/giftpacklist.json b/pages/giftpack/giftpacklist/giftpacklist.json
index a97fd58..0841c16 100644
--- a/pages/giftpack/giftpacklist/giftpacklist.json
+++ b/pages/giftpack/giftpacklist/giftpacklist.json
@@ -4,6 +4,7 @@
"warn": "/components/long_warn/long_warn",
"my_confirm": "/components/my_confirm/my_confirm",
"qr_code": "/components/qr_code/qr_code",
- "nav_b": "/components/nav_b/nav_b"
+ "nav_b": "/components/nav_b/nav_b",
+ "share": "/components/share/share"
}
}
\ No newline at end of file
diff --git a/pages/giftpack/giftpacklist/giftpacklist.wxml b/pages/giftpack/giftpacklist/giftpacklist.wxml
index 4e9be14..504c821 100644
--- a/pages/giftpack/giftpacklist/giftpacklist.wxml
+++ b/pages/giftpack/giftpacklist/giftpacklist.wxml
@@ -9,7 +9,15 @@
- {{giftTitle}}
+ {{giftTitle}}
+
+
+
+
+ 分享
+
+
+
@@ -17,6 +25,7 @@
{{"活动开始时间:"+giftStart}}
+
{{"兑换结束时间:"+giftDate}}
@@ -34,6 +43,8 @@
+
+
{{"¥"+giftPrice}}
@@ -46,6 +57,10 @@
{{actTitle}}
+
+
+
+