// packageA//pages/goods_share/goods_share.js var app=getApp(),oo = app.globalData.setting,os=oo,ut = require("../../../utils/util.js"); Page({ /** * 页面的初始数据 */ data: { // 控制价格 active1: false, // 控制佣金 active2: false, url:oo.imghost, orderField:'sales_sum', orderType:'desc', list:[], is_load:0, //是否正在加载 is_no_data:0, //没有数据 is_no_more:0, //没有更多数据 key_str:'', pattern:0, //分成的方式 currentPage:1, //当前的页码 canvasHidden: 1, //-- 隐藏画布 -- dis_switch:0, //-- 分销开关 -- pattern:0, //-- 分成的方式 -- share_hidden:1, //-- 分享的按钮隐藏 -- share_good:null ,//--- 要分享的商品 --- isSale: true, }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { var th=this; //接受有没有导购的参数 var first_leader=options.first_leader; var StaffId=options.StaffId; var StorageId=options.StorageId; if(first_leader){ //-- user_id代过来免登录 -- getApp().globalData.user_id=first_leader; getApp().getUserFir(); //设置分享会员和导购id和归属门店ID this.setData({first_leader:first_leader,StaffId:StaffId,StorageId:StorageId}); } this.requestGoodsList(); //-- 自定义海报 -- getApp().request.promiseGet("/api/weshop/goods/poster/page",{ data:{store_id:os.stoid, type:1, is_use:1 } }).then(res=>{ if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData[0] ){ var poster_data=res.data.data.pageData[0]; var json_str=poster_data.jsonStr; if(json_str){ var json_data=JSON.parse(json_str); if(json_data.bg_img){ //-- 把图片那到本地 -- wx.getImageInfo({ src:json_data.bg_img, success: function(res) { var path= res.path; th.setData({share_b_img:path}) }, fail: function(res) {} }); } th.setData({poster:json_data}) } } }) //获取分销的配置 getApp().request.promiseGet("/api/weshop/storeDistribut/get/"+oo.stoid,{}).then(res=>{ if(res.data.code==0){ th.setData({dis_switch:res.data.data.switch,pattern:res.data.data.pattern}); } }); //获取用户设备信息,屏幕宽度 wx.getSystemInfo({ success: res => { th.setData({ screenWidth: res.screenWidth }) } }); }, /*** 生命周期函数--监听页面显示***/ onShow: function () { var th=this; getApp().getConfig2(function(rs){ //计算等级价相关 var swithc_list=rs.switch_list; var sw_arr=JSON.parse(swithc_list); //---如果后台又开等级卡的开关--- if(sw_arr.rank_switch && sw_arr.rank_switch=="2"){ th.setData({rank_switch:true}); var user=getApp().globalData.userInfo; //---回调卡的列表--- th.getPlusCardType(function(ob){ th.setData({card_list:ob.card_list}); var ti=setInterval(function(){ if(!user) return false; clearInterval(ti); if(user.card_field && user['card_expiredate']){ var str = user['card_expiredate'].replace(/-/g, '/'); var end = new Date(str); end = Date.parse(end) / 1000; var now = ut.gettimestamp(); //--- 判断是等级会员,且在有效期范围内 --- if(user.card_field && now4) card_name=card_name.substring(0,4); th.setData({card_field:user.card_field,card_name:card_name,card_list:ob.card_list}); } } },1000) }) } }); }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () {}, /**e * 用户点击右上角分享 */ onShareAppMessage: function () { var th = this; var item=this.data.share_good; var price = item.money; var title= item.serviceName; var img=this.data.url+item.original_img; var url="/packageA/pages/goodsInfo/goodsInfo?goods_id=" + item.id; if(getApp().globalData.user_id){ url+="&first_leader="+getApp().globalData.user_id; } var ob={ title: price + "元 " +title, path:url, imageUrl: img, }; th.setData({share_hidden:1}); th.insert_goods_share(); return ob; }, // 点击价格排序 sort1() { this.setData({ isSale: false, isPrice: true, isNew: false, }); if(this.data.active2) { this.setData({ active2: !this.data.active2, }); }; if(this.data.orderField!="money"){ this.setData({ active1: 1,orderField:'money',orderType:'asc',is_no_data:0,is_no_more:0,list:[], }); }else{ var ty=this.data.orderType=='asc'?'desc':'asc'; this.setData({ orderType:ty,is_no_data:0,is_no_more:0,list:[], }); } this.data.is_load=0; this.data.currentPage=1; this.requestGoodsList(); }, // 点击佣金排序 sort2() { if(this.data.active1) { this.setData({ active1: !this.data.active1 }); }; if(this.data.orderField!="commission"){ if(this.data.pattern==0){ this.setData({ active2: 1,orderField:'commission',orderType:'asc',is_no_data:0,is_no_more:0,list:[], }); }else{ this.setData({ active2: 1,orderField:'(fir_rate+sec_rate+thi_rate)',orderType:'asc',is_no_data:0,is_no_more:0,list:[], }); } }else{ this.setData({ orderType: (this.data.orderType=='asc'?'desc':'asc'),is_no_data:0,is_no_more:0,list:[], }); } this.data.is_load=0; this.data.currentPage=1; this.requestGoodsList(); }, //-- ----销量---- sale_sort(){ if(this.data.orderField!="sales_sum"){ this.setData({ active1: 0,active2:0,orderType:'desc',is_no_data:0,is_no_more:0,orderField:'sales_sum',list:[], isSale: true, isPrice: false, isNew: false, }); this.data.is_load=0; this.data.currentPage=1; this.requestGoodsList(); } }, //-- ---最新--- new_sort:function(){ if(this.data.orderField!="is_new"){ this.setData({ active1: 0,active2:0,orderType:'desc',is_no_data:0,is_no_more:0,list:[], isSale: false, isPrice:false, isNew: true, }); this.data.is_load=0; this.data.currentPage=1; this.requestGoodsList(); } }, requestGoodsList:function(){ var th=this; if(th.data.is_load) return false; //-- 正在加载 if(th.data.is_no_data) return false; //-- 没有数据 if(th.data.is_no_more) return false; //-- 没有更多 th.data.is_load=1; var url="/api/weshop/serviceCard/page"; var req_data={ page:this.data.currentPage, is_mainshow:1, isonsale:1, store_id:oo.stoid, orderField:this.data.orderField, orderType:this.data.orderType, } if(this.data.key_str && this.data.key_str.trim()){ var str=this.data.key_str.trim(); req_data.key_str=str; } //-- ---调用接口---- app.request.promiseGet(url,{data:req_data,isShowLoading:1}).then(res=>{ th.data.is_load=0; if(res.data.code==0 && res.data.data.pageData && res.data.data.pageData.length>0){ th.data.currentPage++; var data=res.data.data.pageData; if(res.data.data.page*10>res.data.data.total){th.setData({is_no_more:1});} var list=th.data.list; list=list.concat(data); th.setData({list:list}); }else{ if(th.data.currentPage==1){ th.setData({is_no_data:1}); } } }) }, //--- 获取卡类列表 --- getPlusCardType: function (func) { var storid = oo.stoid; var th = this; getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid, {}).then(res => { if(res.data.code!=0 || !res.data.data){ var ob={"card_list":[],"name_map":''}; func(ob); return false; } var plusCard = res.data.data; var arr = [1219, 2089, 3031]; var new_arr = new Array(); var card_name_map=new Map(); var user = getApp().globalData.userInfo; for (var i = 0; i < plusCard.length; i++) { if ((!user || user.card_field==null || user.card_field=="") && (plusCard[i].IsStopBuy==true)) { continue; } var name="card"+plusCard[i].CorrPrice.toLowerCase(); card_name_map.set(name,plusCard[i].CardName); new_arr.push(plusCard[i]); } var ob={"card_list":new_arr,"name_map":card_name_map}; func(ob); }) }, //---图片失败,默认图片--- bind_bnerr2: function (e) { var _errImg = e.target.dataset.errorimg; var _errObj = {}; _errObj[_errImg] ="/miniapp/images/default_g_img.gif"; this.setData(_errObj) //注意这里的赋值方式,只是将数据列表中的此项图片路径值替换掉 ; }, //-- ---更多加载---- refresh:function(){ this.requestGoodsList(); }, //--定义的保存图片方法,分享团--- saveImageToPhotosAlbum: function() { //--先判断会员状态-- var user_info = getApp().globalData.userInfo; if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { //getApp().my_warnning("请先登录",0,this); wx.navigateTo({ url: '/pages/togoin/togoin', }) return false; } //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 var type = 0; wx.showLoading({ title: '生成中...', }) var that = this, th = that; //设置画板显示,才能开始绘图 that.setData({ canvasHidden: false,share_hidden:1 }) //点击分享 this.insert_goods_share(); var app = getApp(); var unit = that.data.screenWidth / 750 * 1.35; //基础单位, var scene = th.data.share_good.goods_id+""; var user_id=getApp().globalData.user_id?getApp().globalData.user_id:0; if(user_id>0){ scene+="_"+user_id; } ///二微码 var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" + os.stoid + "?sceneValue=" + scene + "&pageValue=pages/goods/goodsInfo/goodsInfo"; //读取文件成功则OK-- wx.getImageInfo({ src: path3, success: function(res) { //回调写法 th.get_head_temp(th.get_goods_temp, function() { var vpath = res.path; var context = wx.createCanvasContext('share'); //先画背景 var pg_path = "../../../images/share/share_bg.png"; // var pg_path = "../../../images/share/share_bg.png"; //-- 如果有自定义海报的时候,判断背景的图片 -- if(th.data.share_b_img){ pg_path=th.data.share_b_img; } context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit); //-- 是自定义海报的情况下 -- if(th.data.poster && parseInt(th.data.poster.style)==2){ //在线上分享人的情况下 if(parseInt(th.data.poster.show_headpic)){ //获取坐标 var x=parseFloat(th.data.poster.head_x)*2; var y=parseFloat(th.data.poster.head_y)*2; var x1=(x+90) *unit; var y1=(y+50) *unit; //--昵称--- context.setFontSize(24 * unit) context.setFillStyle("black") context.fillText(app.globalData.userInfo.nickname, x1, y1); var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit; //强烈推荐 改许程 var tj_path = "../../../images/share/q_tj.png"; context.drawImage(tj_path, x1 + width, y1-22*unit, 85 * unit, 30 * unit); context.setFontSize(16 * unit) context.setLineJoin('round'); //交点设置成圆角 context.setFillStyle("white") context.fillText('强烈推荐', x1 + width+8*unit, y1-1*unit); } }else{ //--昵称--- context.setFontSize(24 * unit) context.setFillStyle("black") context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit); var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit; //强烈推荐 改许程 var tj_path = "../../../images/share/q_tj.png"; context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit); context.setFontSize(16 * unit) context.setLineJoin('round'); //交点设置成圆角 context.setFillStyle("white") context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 76 * unit); } //---产品名称--- //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度 context.setFillStyle("black"); context.setFontSize(21.3 * unit) // th.draw_Text(context, th.data.share_good.goods_name, th.draw_Text(context, th.data.share_good.serviceName, 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit); //------产品的价格------- context.setFontSize(23 * unit) context.setFillStyle("red") context.fillText("¥", 416 * unit, 185 * unit); context.setFontSize(31 * unit) var pri0 = th.data.share_good.money; // var pri0 = th.data.share_good.shop_price; if (th.data.prom_act) pri0 = th.data.prom_act.price; pri0 = parseFloat(pri0).toFixed(2); context.fillText(pri0, 438 * unit, 185 * unit); //---市场价划掉--- // sty:这里不需要 // context.setFillStyle("gray") // context.setFontSize(22 * unit) // context.fillText("¥" + th.data.share_good.market_price, 426 * unit, 213 * unit); // context.setStrokeStyle('gray') // context.setLineWidth(1 * unit) // context.moveTo(426 * unit, 206 * unit) // context.lineTo(510 * unit, 206 * unit) // context.stroke(); //---中间大图--- context.drawImage(th.data.share_goods_img, 68 * unit, 242 * unit, 410 * unit, 410 * unit); //-------大图后面就不一样了----------- switch (type) { case 0: //普通商品的展示 //中间的几个字 if(th.data.poster && parseInt(th.data.poster.style)==2 ){ if(parseInt(th.data.poster.show_quality)){ var g_path = "../../../images/share/s_gou.png"; context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) context.fillText("正品保证", 84 * unit, 690 * unit); context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) context.fillText("纯实体店", 246 * unit, 690 * unit); context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) context.fillText("官方验证", 420 * unit, 690 * unit); } }else{ var g_path = "../../../images/share/s_gou.png"; context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) context.fillText("正品保证", 84 * unit, 690 * unit); context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) context.fillText("纯实体店", 246 * unit, 690 * unit); context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit); context.setFillStyle("red") context.setFontSize(18 * unit) context.fillText("官方验证", 420 * unit, 690 * unit); } //---画线--- context.setLineWidth(1 * unit) context.moveTo(32 * unit, 710 * unit) context.lineTo(520 * unit, 710 * unit) context.stroke(); //---文字--- context.setFillStyle("black") context.setFontSize(22 * unit) // 原来start ---> context.fillText("优惠乐翻天,精彩就在你身边", 40 * unit, 776 * unit); context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 826 * unit); //---二维吗图--- //-- 自定义海报 -- if(th.data.poster){ var erm_x= parseFloat(th.data.poster.ewm_x)*2; var erm_y= parseFloat(th.data.poster.ewm_y)*2; context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit); }else{ //---二维吗图--- context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit); } break; case 1: //秒杀商品的展示 //---画线--- context.setLineWidth(1 * unit) context.moveTo(32 * unit, 670 * unit) context.lineTo(520 * unit, 670 * unit) context.stroke(); //画秒杀的图片 var miaos_path = '../../../images/share/miao_share.png'; context.drawImage(miaos_path, 43 * unit, 700 * unit, 222 * unit, 40 * unit); //---文字--- context.setFontSize(22 * unit) context.setFillStyle("black") context.fillText("特惠好物,限时秒杀", 40 * unit, 806 * unit); context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 846 * unit); //---二维吗图--- //-- 自定义海报 -- if(th.data.poster){ var erm_x= parseFloat(th.data.poster.ewm_x)*2; var erm_y= parseFloat(th.data.poster.ewm_y)*2; context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit); }else{ //---二维吗图--- context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit); } break; case 2: //会员团和商家团的展示 //---画线--- context.setLineWidth(1 * unit) context.moveTo(32 * unit, 670 * unit) context.lineTo(520 * unit, 670 * unit) context.stroke(); //---文字--- context.setFontSize(22 * unit) context.font = 'normal bold'; context.setFillStyle("black") context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit); //绘制成团图片 var ct_img = "../../../images/share/ct_num.png"; context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit); var ct_num = th.data.prom_act.ct_num; context.setFontSize(14 * unit) context.font = 'normal'; context.setFillStyle("red") if (ct_num < 10) { context.fillText(ct_num + "人拼团", 92 * unit, 760 * unit); } else { context.fillText(ct_num + "人拼团", 86 * unit, 760 * unit); } context.setFontSize(22 * unit) context.fillText("已拼" + th.data.prom_act.buy_num + "份", 166 * unit, 763 * unit); context.setFillStyle("gray") context.fillText("快来和我一起拼团吧!", 40 * unit, 826 * unit); context.setFillStyle("black") context.font = 'normal bold 18px sans-serif'; context.setFontSize(21.3 * unit) context.fillText("长按识别二维码,立即参团", 40 * unit, 856 * unit); //---二维吗图--- //-- 自定义海报 -- if(th.data.poster){ var erm_x= parseFloat(th.data.poster.ewm_x)*2; var erm_y= parseFloat(th.data.poster.ewm_y)*2; context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit); }else{ //---二维吗图--- context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit); } break case 3: //阶梯团的展示 //---画线--- context.setLineWidth(1 * unit) context.moveTo(32 * unit, 670 * unit) context.lineTo(520 * unit, 670 * unit) context.stroke(); //---文字--- context.setFontSize(22 * unit) context.font = 'normal bold'; context.setFillStyle("black") context.fillText("好物拼起来,拼拼更划算", 40 * unit, 726 * unit); //---绘制中间阶梯的价格--- var list = th.data.prom_act.ct_rylist; for (var i = 0; i < list.length; i++) { var item = list[i]; var wi = i * 90 * unit; context.font = 'normal'; context.setFontSize(16 * unit) context.setFillStyle("red") context.fillText("¥", 40 * unit + wi, 756 * unit); context.setFontSize(22 * unit) var pri = parseFloat(item.price).toFixed(2); context.fillText(pri, 56 * unit + wi, 756 * unit); context.setFillStyle("gray") context.fillText("满" + item.rynum + "人", 40 * unit + wi, 786 * unit); } //----------------下面部分---------------- context.setFillStyle("gray") context.fillText("快来和我一起拼团吧!", 40 * unit, 830 * unit); context.setFillStyle("black") context.font = 'normal bold 18px sans-serif'; context.setFontSize(22 * unit) context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit); //-- 自定义海报 -- if(th.data.poster){ var erm_x= parseFloat(th.data.poster.ewm_x)*2; var erm_y= parseFloat(th.data.poster.ewm_y)*2; context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit); }else{ //---二维吗图--- context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit); } break } //--- 如果是自定义海报的时候 --- if(th.data.poster && parseInt(th.data.poster.style)==2){ //如果显示会员信息的话 if(parseInt(th.data.poster.show_headpic)){ //获取坐标 var x= parseFloat(th.data.poster.head_x)*2; var y=parseFloat(th.data.poster.head_y)*2; //---绘制圆形要放在最后---- context.save(); context.beginPath(); var h_x = x* unit; var h_y = y * unit; var h_r = 40 * unit; var cx = h_x + h_r; var cy = h_y + h_r; context.arc(cx, cy, h_r, 0, Math.PI * 2, false); context.closePath(); context.fill(); context.clip(); context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2); context.restore(); } }else{ //---绘制圆形要放在最后---- context.save(); context.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; context.arc(cx, cy, h_r, 0, Math.PI * 2, false); context.closePath(); context.fill(); context.clip(); context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2); context.restore(); } //把画板内容绘制成图片,并回调 画板图片路径 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) { that.setData({ shareImgPath: res.tempFilePath, canvasHidden: true }) if (!res.tempFilePath) { wx.showModal({ title: '提示', content: '图片绘制中,请稍后重试', showCancel: false }) return false; } wx.previewImage({ //将图片预览出来 urls: [that.data.shareImgPath] }); wx.hideLoading(); } }) }, 500) }); }); } }); }, //点击分享商品 share_good:function(e){ //--先判断会员状态-- var user_info = getApp().globalData.userInfo; if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { //getApp().my_warnning("请先登录",0,this); wx.navigateTo({ url: '/pages/togoin/togoin', }) return false; } var index=e.currentTarget.dataset.index; var item=this.data.list[index]; this.setData({share_hidden:0,share_good:item}); }, cancel:function(){ this.setData({share_hidden:1}); }, //--获取头像的本地缓存,回调写法-- get_head_temp: function(tt, func) { var ee = this; if (ee.data.share_head) { tt(func); return false; } //---获取分享图片的本地地址,头像和商品图片---- var path2 = getApp().globalData.userInfo.head_pic; if (path2 == "") { ee.data.share_head = "../../../images/share/hui_hear_pic.png"; tt(func); } else { path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn"); path2 = path2.replace("https://thirdwx.qlogo.cn", "https://wx.qlogo.cn"); wx.getImageInfo({ src: path2, success: function(res) { //res.path是网络图片的本地地址 ee.data.share_head = res.path; tt(func); }, fail: function(res) { ee.data.share_head = "../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的 tt(func); } }); } }, //--获取商品图片的本地缓存,回调写法-- get_goods_temp: function(tt) { var ee = this; //获取商品是分享图信息 wx.getImageInfo({ src: ee.data.url+ee.data.share_good.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(); } }); }, //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度 draw_Text: function(ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, unit) { var lineWidth = 0; var lastSubStrIndex = 0; //每次开始截取的字符串的索引 var han = 0; for (let i = 0; i < str.length; i++) { 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) 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); } } }, //-------搜索的相关功能------ set_search_value:function(e){ var key_str=e.detail.value; if(key_str) key_str=key_str.trim(); this.setData({key_str:key_str}); }, search_data:function(){ this.setData({ is_no_data:0,is_no_more:0,list:[], }); this.data.is_load=0; this.data.currentPage=1; this.requestGoodsList(); }, go_goods:function(e){ var index=e.currentTarget.dataset.index; var item=this.data.list[index]; var url="/packageA/pages/goodsInfo/goodsInfo?goods_id=" + item.id; getApp().goto(url); }, insert_goods_share:function(){ var th = this; var item=this.data.share_good; var url="/api/weshop/sharetypeList/save"; var req_data={ shareActId:item.id, shareActName:item.serviceName, shareType:8, shareUserId:th.data.first_leader, shareStaffId:th.data.StaffId, shareStorageId:th.data.StorageId, shareTime:ut.gettimestamp(), storeId:os.stoid } //插入数据 getApp().request.post(url,{ data:req_data, success:function(){ } }); //收入线下数据 req_data.userId=th.data.first_leader; delete req_data.shareUserId; //插入数据 getApp().request.post('/api/weshop/MdShareType/saveShare',{ data:req_data, success:function(){} }) }, goto:function(e) { var url = e.currentTarget.dataset.url; app.goto(url); }, })