Commit 214634ad1ff55089e2ae931e294f4d2188bccfd6

Authored by 前端开发-陈颖阳
1 parent d93a7968

OA117228 组合购添加分享图设置

packageB/pages/zuhegou/index/index.js
@@ -6,2630 +6,2975 @@ var regeneratorRuntime = require('../../../../utils/runtime.js'); @@ -6,2630 +6,2975 @@ var regeneratorRuntime = require('../../../../utils/runtime.js');
6 var oo = app.globalData; 6 var oo = app.globalData;
7 7
8 8
9 -let imgDraw = {  
10 - "width": "650px",  
11 - "height": "843px",  
12 - "background": "https://mshopimg.yolipai.net/miniapp/images/zhg/bg-zuhegou.jpg",  
13 - "views": [{ // 头像  
14 - "type": "image",  
15 - "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",  
16 - "css": {  
17 - "width": "100px",  
18 - "height": "100px",  
19 - "top": "20px",  
20 - "left": "275px",  
21 - "borderRadius": "100px",  
22 - "mode": "scaleToFill",  
23 - "borderWidth": "2px",  
24 - "borderColor": "#fff",  
25 - }  
26 - },  
27 - { //昵称  
28 - "type": "text",  
29 - "text": "我是店铺名",  
30 - "css": {  
31 - "width": "650px",  
32 - "color": "#fff",  
33 - "top": "136px",  
34 - // "left": "137px",  
35 - "textAlign": "center",  
36 - "fontSize": "26px",  
37 - "maxLines": "1",  
38 - }  
39 - },  
40 - { //10元任选3件  
41 - "type": "text",  
42 - "text": "10元3件",  
43 - "css": {  
44 - "color": "#fff",  
45 - "width": "650px",  
46 - "top": "270px",  
47 - "fontSize": "70px",  
48 - "maxLines": "1",  
49 - "textAlign": "center",  
50 - "fontWeight": "bold",  
51 - }  
52 - },  
53 - { //活动时间  
54 - "type": "text",  
55 - "text": "活动时间:2021.07.06 - 2021.07.08",  
56 - "css": {  
57 - "color": "#333",  
58 - "width": "650px",  
59 - "top": "440px",  
60 - "fontSize": "26px",  
61 - "fontWeight": "normal",  
62 - "maxLines": "1",  
63 - "textAlign": "center"  
64 - }  
65 - },  
66 - { // 码  
67 - "type": "image",  
68 - "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",  
69 - "css": {  
70 - "color": "#000",  
71 - "width": "200px",  
72 - "height": "200px",  
73 - "top": "525px",  
74 - "left": "225px",  
75 - }  
76 - },  
77 - { // 扫码提示  
78 - "type": "text",  
79 - "text": "长按扫码即可参与活动",  
80 - "css": {  
81 - "color": "#666",  
82 - "width": "650px",  
83 - "top": "750px",  
84 - "fontSize": "26px",  
85 - "textAlign": "center"  
86 - }  
87 - },  
88 - ]  
89 -};  
90 9
91 10
92 Page({ 11 Page({
93 12
94 - /**  
95 - * 页面的初始数据  
96 - */  
97 - data: {  
98 - iurl: os.imghost,  
99 - showRule: false,  
100 - showMask: false,  
101 - showNum: false,  
102 - haveAdded: false,  
103 - //imgDraw: imgDraw, 分享内容  
104 - id: 0, //获得活动id  
105 - page: 1, //第一页  
106 - no_more: 0, //没有更多  
107 - loading: 0, //加载中  
108 - list: null, //商品列表的显示  
109 - act: null, //组合活动  
110 - all_price: 0, //合计价格  
111 - all_num: 0, //全部数量  
112 - sele_pick_id: 0, //默认选择门店,当用户什么商品都没有选,sele_pick_id=0  
113 - def_store: null, //用户默认的门店  
114 - sele_store: 0, //是不是选择了门店  
115 - more_store: 0, //选择门店  
116 - sort_store: 0, //门店分类  
117 - choice_sort_store: 0, //选择分类门店  
118 - fir_pick_index: 0, //门店选择的下标  
119 - sec_pick_index: 0, //门店选择的下标,地区选择之后的内页  
120 - userbuynum:false,//是否有超出购买次数,还是否可以购买。false 为可购买,true为不可购买  
121 - sales_map:{}, //线下销售的map  
122 - },  
123 -  
124 - /**  
125 - * 生命周期函数--监听页面加载  
126 - */  
127 - onLoad: function (options) {  
128 -  
129 - console.log(options, 111);  
130 - self = this;  
131 - var the_id = options.id;  
132 - if (options.title) {  
133 - wx.setNavigationBarTitle({  
134 - title: options.title, 13 + /**
  14 + * 页面的初始数据
  15 + */
  16 + data: {
  17 + iurl: os.imghost,
  18 + showRule: false,
  19 + showMask: false,
  20 + showNum: false,
  21 + haveAdded: false,
  22 + imgDraw: {},
  23 + id: 0, //获得活动id
  24 + page: 1, //第一页
  25 + no_more: 0, //没有更多
  26 + loading: 0, //加载中
  27 + list: null, //商品列表的显示
  28 + act: null, //组合活动
  29 + all_price: 0, //合计价格
  30 + all_num: 0, //全部数量
  31 + sele_pick_id: 0, //默认选择门店,当用户什么商品都没有选,sele_pick_id=0
  32 + def_store: null, //用户默认的门店
  33 + sele_store: 0, //是不是选择了门店
  34 + more_store: 0, //选择门店
  35 + sort_store: 0, //门店分类
  36 + choice_sort_store: 0, //选择分类门店
  37 + fir_pick_index: 0, //门店选择的下标
  38 + sec_pick_index: 0, //门店选择的下标,地区选择之后的内页
  39 + userbuynum: false,//是否有超出购买次数,还是否可以购买。false 为可购买,true为不可购买
  40 + sales_map: {}, //线下销售的map
  41 + },
  42 +
  43 + /**
  44 + * 生命周期函数--监听页面加载
  45 + */
  46 + onLoad: function (options) {
  47 +
  48 + console.log(options, 111);
  49 + self = this;
  50 + var the_id = options.id;
  51 + if (options.title) {
  52 + wx.setNavigationBarTitle({
  53 + title: options.title,
  54 + });
  55 + };
  56 + var first_leader = options.first_leader;
  57 +
  58 + //--如果tg_id是空的话,分享回来--
  59 + if (the_id == undefined || the_id == null || the_id == "") {
  60 + var gid_str = decodeURIComponent(options.scene);
  61 + gid_str = gid_str.split("_");
  62 + the_id = gid_str[0];
  63 + if (gid_str.length > 1) {
  64 + first_leader = gid_str[1];
  65 + }
  66 + }
  67 +
  68 + this.data.id = the_id;
  69 + if (first_leader) {
  70 + getApp().globalData.first_leader = first_leader;
  71 + //调用接口判断是不是会员
  72 + getApp().request.promiseGet("/api/weshop/shoppingGuide/get/" + os.stoid + "/" + first_leader, {}).then(res => {
  73 + if (res.data.code == 0) {
  74 + getApp().globalData.guide_id = res.data.data.id;
  75 + getApp().globalData.guide_pick_id = res.data.data.pickup_id
  76 + }
  77 + })
  78 + }
  79 + },
  80 +
  81 + //检测有没有导购分享的门店
  82 + check_guide(func) {
  83 + var first_leader = getApp().globalData.first_leader;
  84 + if (!first_leader) {
  85 + func();
  86 + return false;
  87 + }
  88 + if (this.data.is_geted_guide_pick) {
  89 + func();
  90 + return false;
  91 + }
  92 +
  93 + if (getApp().globalData.guide_pick_id) {
  94 + func();
  95 + return false;
  96 + }
  97 + var th = this;
  98 + getApp().request.promiseGet("/api/weshop/shoppingGuide/get/" + os.stoid + "/" + first_leader, {}).then(res => {
  99 + if (res.data.code == 0) {
  100 + getApp().globalData.guide_pick_id = res.data.data.pickup_id;
  101 + }
  102 + th.data.is_geted_guide_pick = 1;
  103 + func();
  104 + })
  105 + },
  106 +
  107 +
  108 + /**
  109 + * 生命周期函数--监听页面显示
  110 + */
  111 + onShow: function () {
  112 + getApp().check_can_share();
  113 + var th = this,
  114 + that = this,
  115 + ee = this;
  116 +
  117 + let scene = wx.getLaunchOptionsSync().scene;
  118 + //--判断是否是单页面--
  119 + if (scene == 1154) {
  120 + var url = "/api/weshop/prom/zhbuy/getone/" + os.stoid + "/" + th.data.id;
  121 + getApp().request.get(url, {
  122 + success: function (e) {
  123 + th.data.is_get_act = 1;
  124 + if (e.data.code == 0 && e.data.data) {
  125 + if (e.data.data.share_imgurl) {
  126 + var imgDraw = {
  127 + "width": "550px",
  128 + "height": "943px",
  129 + "background": "https://mshopimg.yolipai.net/miniapp/images/zhg/bg-zuhegou.jpg",
  130 + "views": [{ // 头像
  131 + "type": "image",
  132 + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",
  133 + "css": {
  134 + "display": "none",
  135 + "height": "10px",
  136 + "top": "20px",
  137 + "left": "275px",
  138 + "borderRadius": "100px",
  139 + "mode": "scaleToFill",
  140 + "borderWidth": "2px",
  141 + "borderColor": "#fff",
  142 + }
  143 + },
  144 + { //昵称
  145 + "type": "text",
  146 + "text": "我是店铺名",
  147 + "css": {
  148 + "width": "650px",
  149 + "color": "#fff",
  150 + "top": "16px",
  151 + // "left": "137px",
  152 + "textAlign": "center",
  153 + "fontSize": "26px",
  154 + "maxLines": "1",
  155 + }
  156 + },
  157 +
  158 + { // 码
  159 + "type": "image",
  160 + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",
  161 + "css": {
  162 + "color": "#000",
  163 + "width": "509px",
  164 + "height": "510px",
  165 + "top": "80px",
  166 + "left": "21px",
  167 + }
  168 + },
  169 + { //10元任选3件
  170 + "type": "text",
  171 + "text": "10元3件",
  172 + "css": {
  173 + "color": "red",
  174 + "width": "250px",
  175 + "top": "750px",
  176 + "fontSize": "30px",
  177 + "maxLines": "1",
  178 + "textAlign": "center",
  179 + "fontWeight": "bold",
  180 + }
  181 + },
  182 + { //活动时间
  183 + "type": "text",
  184 + "text": "活动时间:2021.07.06 - 2021.07.08",
  185 + "css": {
  186 + "color": "#333",
  187 + "width": "250px",
  188 + "top": "820px",
  189 + "fontSize": "26px",
  190 + "fontWeight": "normal",
  191 + "maxLines": "1",
  192 + "left": "60px",
  193 + }
  194 + },
  195 + { // 码
  196 + "type": "image",
  197 + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",
  198 + "css": {
  199 + "color": "#000",
  200 + "width": "120px",
  201 + "height": "120px",
  202 + "top": "680px",
  203 + "left": "365px",
  204 + }
  205 + },
  206 + { // 扫码提示
  207 + "type": "text",
  208 + "text": "长按识别二维码",
  209 + "css": {
  210 + "color": "#666",
  211 + "width": "650px",
  212 + "top": "840px",
  213 + "fontSize": "22px",
  214 + "left": "335px",
  215 + }
  216 + },
  217 + ]
  218 + }
  219 +
  220 + th.setData({
  221 + imgDraw: imgDraw
  222 + });
  223 +
  224 + } else {
  225 + var imgDraw = {
  226 + "width": "650px",
  227 + "height": "843px",
  228 + "background": "https://mshopimg.yolipai.net/miniapp/images/zhg/bg-zuhegou.jpg",
  229 + "views": [{ // 头像
  230 + "type": "image",
  231 + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",
  232 + "css": {
  233 + "width": "100px",
  234 + "height": "100px",
  235 + "top": "20px",
  236 + "left": "275px",
  237 + "borderRadius": "100px",
  238 + "mode": "scaleToFill",
  239 + "borderWidth": "2px",
  240 + "borderColor": "#fff",
  241 + }
  242 + },
  243 + { //昵称
  244 + "type": "text",
  245 + "text": "我是店铺名",
  246 + "css": {
  247 + "width": "650px",
  248 + "color": "#fff",
  249 + "top": "136px",
  250 + // "left": "137px",
  251 + "textAlign": "center",
  252 + "fontSize": "26px",
  253 + "maxLines": "1",
  254 + }
  255 + },
  256 + { //10元任选3件
  257 + "type": "text",
  258 + "text": "10元3件",
  259 + "css": {
  260 + "color": "#fff",
  261 + "width": "650px",
  262 + "top": "270px",
  263 + "fontSize": "70px",
  264 + "maxLines": "1",
  265 + "textAlign": "center",
  266 + "fontWeight": "bold",
  267 + }
  268 + },
  269 + { //活动时间
  270 + "type": "text",
  271 + "text": "活动时间:2021.07.06 - 2021.07.08",
  272 + "css": {
  273 + "color": "#333",
  274 + "width": "650px",
  275 + "top": "440px",
  276 + "fontSize": "26px",
  277 + "fontWeight": "normal",
  278 + "maxLines": "1",
  279 + "textAlign": "center"
  280 + }
  281 + },
  282 + { // 码
  283 + "type": "image",
  284 + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",
  285 + "css": {
  286 + "color": "#000",
  287 + "width": "200px",
  288 + "height": "200px",
  289 + "top": "525px",
  290 + "left": "225px",
  291 + }
  292 + },
  293 + { // 扫码提示
  294 + "type": "text",
  295 + "text": "长按扫码即可参与活动",
  296 + "css": {
  297 + "color": "#666",
  298 + "width": "650px",
  299 + "top": "750px",
  300 + "fontSize": "26px",
  301 + "textAlign": "center"
  302 + }
  303 + },
  304 + ]
  305 + }
  306 +
  307 + th.setData({
  308 + imgDraw: imgDraw
  309 + });
  310 + }
  311 + self.setData({
  312 + act: e.data.data
135 }); 313 });
136 - };  
137 - var first_leader = options.first_leader;  
138 -  
139 - //--如果tg_id是空的话,分享回来--  
140 - if (the_id == undefined || the_id == null || the_id == "") {  
141 - var gid_str = decodeURIComponent(options.scene);  
142 - gid_str = gid_str.split("_");  
143 - the_id = gid_str[0];  
144 - if (gid_str.length > 1) {  
145 - first_leader = gid_str[1]; 314 + if (e.data.data.is_show != 1) {
  315 + th.setData({
  316 + error: '活动未开启'
  317 + });
  318 + return false;
146 } 319 }
147 - }  
148 320
149 - this.data.id = the_id;  
150 - if (first_leader) {  
151 - getApp().globalData.first_leader = first_leader;  
152 - //调用接口判断是不是会员  
153 - getApp().request.promiseGet("/api/weshop/shoppingGuide/get/" + os.stoid + "/" + first_leader, {}).then(res => {  
154 - if (res.data.code == 0) {  
155 - getApp().globalData.guide_id = res.data.data.id;  
156 - getApp().globalData.guide_pick_id= res.data.data.pickup_id  
157 - }  
158 - })  
159 - }  
160 - }, 321 + if (ut.gettimestamp() < e.data.data.start_time) {
  322 + th.setData({
  323 + error: '活动还未开始'
  324 + });
  325 + return false;
  326 + }
  327 + if (e.data.data.is_end == 0 && ut.gettimestamp() < e.data.data.end_time) {
  328 + //判断是否有限制购买次数
  329 + if (e.data.data.buy_limit != 0) {
161 330
162 - //检测有没有导购分享的门店  
163 - check_guide(func){  
164 - var first_leader=getApp().globalData.first_leader;  
165 - if(!first_leader){  
166 - func();  
167 - return false;  
168 - }  
169 - if(this.data.is_geted_guide_pick){  
170 - func(); 331 + }
  332 + //-- 获取商品列表 --
  333 + self.get_list();
  334 + self.countDown();
  335 + } else {
  336 + th.setData({
  337 + error: '活动已经过期'
  338 + });
  339 + return false;
  340 + }
  341 + } else {
  342 + th.data.is_get_act = 0;
  343 + th.setData({
  344 + error: e.data.msg
  345 + });
171 return false; 346 return false;
  347 + }
172 } 348 }
  349 + });
  350 + }
173 351
174 - if(getApp().globalData.guide_pick_id){  
175 - func();  
176 - return false;  
177 - }  
178 - var th=this;  
179 - getApp().request.promiseGet("/api/weshop/shoppingGuide/get/" + os.stoid + "/" + first_leader, {}).then(res => {  
180 - if (res.data.code == 0) {  
181 - getApp().globalData.guide_pick_id= res.data.data.pickup_id;  
182 - }  
183 - th.data.is_geted_guide_pick=1;  
184 - func();  
185 - })  
186 - },  
187 -  
188 -  
189 - /**  
190 - * 生命周期函数--监听页面显示  
191 - */  
192 - onShow: function () {  
193 - getApp().check_can_share();  
194 - var th = this,  
195 - that = this,  
196 - ee = this;  
197 -  
198 - let scene = wx.getLaunchOptionsSync().scene;  
199 - //--判断是否是单页面--  
200 - if (scene== 1154) {  
201 - var url = "/api/weshop/prom/zhbuy/getone/" + os.stoid + "/" + th.data.id; 352 +
  353 +
  354 +
  355 + getApp().is_Single_page(this, function () {
  356 +
  357 + this.data.is_timer = 1;
  358 + if (this.data.act) this.countDown();
  359 + //如果有会员的时候
  360 + var userInfo = getApp().globalData.userInfo;
  361 + if (userInfo) {
  362 + if (!th.data.is_get_act) {
  363 + //获取活动信息
  364 + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + th.data.id + "/" + userInfo.user_id;
202 getApp().request.get(url, { 365 getApp().request.get(url, {
203 - success: function (e) {  
204 - th.data.is_get_act = 1;  
205 - if (e.data.code == 0 && e.data.data) {  
206 - self.setData({  
207 - act: e.data.data  
208 - });  
209 - if (e.data.data.is_show != 1) {  
210 - th.setData({  
211 - error: '活动未开启'  
212 - });  
213 - return false; 366 + success: function (e) {
  367 + th.data.is_get_act = 1;
  368 + if (e.data.code == 0 && e.data.data) {
  369 + if (e.data.data.share_imgurl) {
  370 + var imgDraw = {
  371 + "width": "550px",
  372 + "height": "943px",
  373 + "background": "https://mshopimg.yolipai.net/miniapp/images/zhg/bg-zuhegou.jpg",
  374 + "views": [{ // 头像
  375 + "type": "image",
  376 + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",
  377 + "css": {
  378 + "width": "100px",
  379 + "height": "100px",
  380 + "top": "20px",
  381 + "left": "225px",
  382 + "borderRadius": "100px",
  383 + "mode": "scaleToFill",
  384 + "borderWidth": "2px",
  385 + "borderColor": "#fff",
214 } 386 }
215 - if (ut.gettimestamp() < e.data.data.start_time) {  
216 - th.setData({  
217 - error: '活动还未开始'  
218 - });  
219 - return false; 387 + },
  388 + { //昵称
  389 + "type": "text",
  390 + "text": "我是店铺名",
  391 + "css": {
  392 + "width": "550px",
  393 + "color": "#fff",
  394 + "top": "136px",
  395 + // "left": "137px",
  396 + "textAlign": "center",
  397 + "fontSize": "26px",
  398 + "maxLines": "1",
220 } 399 }
221 - if (e.data.data.is_end == 0 && ut.gettimestamp() < e.data.data.end_time) {  
222 - //判断是否有限制购买次数  
223 - if(e.data.data.buy_limit !=0){  
224 -  
225 - }  
226 - //-- 获取商品列表 --  
227 - self.get_list();  
228 - self.countDown();  
229 - } else {  
230 - th.setData({  
231 - error: '活动已经过期'  
232 - });  
233 - return false; 400 + },
  401 +
  402 + { // 码
  403 + "type": "image",
  404 + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",
  405 + "css": {
  406 + "color": "#000",
  407 + "width": "509px",
  408 + "height": "510px",
  409 + "top": "180px",
  410 + "left": "21px",
234 } 411 }
235 - } else {  
236 - th.data.is_get_act = 0;  
237 - th.setData({  
238 - error: e.data.msg  
239 - });  
240 - return false; 412 + },
  413 + { //10元任选3件
  414 + "type": "text",
  415 + "text": "10元3件",
  416 + "css": {
  417 + "color": "red",
  418 + "width": "250px",
  419 + "top": "750px",
  420 + "fontSize": "30px",
  421 + "maxLines": "1",
  422 + "left": "60px",
  423 + "fontWeight": "bold",
  424 + }
  425 + },
  426 + { //活动时间
  427 + "type": "text",
  428 + "text": "活动时间:2021.07.06 - 2021.07.08",
  429 + "css": {
  430 + "color": "#333",
  431 + "width": "250px",
  432 + "top": "820px",
  433 + "fontSize": "26px",
  434 + "fontWeight": "normal",
  435 + "maxLines": "1",
  436 + "left": "60px",
  437 + }
  438 + },
  439 + { // 码
  440 + "type": "image",
  441 + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",
  442 + "css": {
  443 + "color": "#000",
  444 + "width": "120px",
  445 + "height": "120px",
  446 + "top": "710px",
  447 + "left": "365px",
  448 + }
  449 + },
  450 + { // 扫码提示
  451 + "type": "text",
  452 + "text": "长按识别二维码",
  453 + "css": {
  454 + "color": "#666",
  455 + "width": "650px",
  456 + "top": "850px",
  457 + "fontSize": "22px",
  458 + "left": "335px",
  459 + }
  460 + },
  461 + ]
241 } 462 }
  463 +
  464 + th.setData({
  465 + imgDraw: imgDraw
  466 + });
  467 +
  468 + } else {
  469 + var imgDraw = {
  470 + "width": "650px",
  471 + "height": "843px",
  472 + "background": "https://mshopimg.yolipai.net/miniapp/images/zhg/bg-zuhegou.jpg",
  473 + "views": [{ // 头像
  474 + "type": "image",
  475 + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",
  476 + "css": {
  477 + "width": "100px",
  478 + "height": "100px",
  479 + "top": "20px",
  480 + "left": "275px",
  481 + "borderRadius": "100px",
  482 + "mode": "scaleToFill",
  483 + "borderWidth": "2px",
  484 + "borderColor": "#fff",
  485 + }
  486 + },
  487 + { //昵称
  488 + "type": "text",
  489 + "text": "我是店铺名",
  490 + "css": {
  491 + "width": "650px",
  492 + "color": "#fff",
  493 + "top": "136px",
  494 + // "left": "137px",
  495 + "textAlign": "center",
  496 + "fontSize": "26px",
  497 + "maxLines": "1",
  498 + }
  499 + },
  500 + { //10元任选3件
  501 + "type": "text",
  502 + "text": "10元3件",
  503 + "css": {
  504 + "color": "#fff",
  505 + "width": "650px",
  506 + "top": "270px",
  507 + "fontSize": "70px",
  508 + "maxLines": "1",
  509 + "textAlign": "center",
  510 + "fontWeight": "bold",
  511 + }
  512 + },
  513 + { //活动时间
  514 + "type": "text",
  515 + "text": "活动时间:2021.07.06 - 2021.07.08",
  516 + "css": {
  517 + "color": "#333",
  518 + "width": "650px",
  519 + "top": "440px",
  520 + "fontSize": "26px",
  521 + "fontWeight": "normal",
  522 + "maxLines": "1",
  523 + "textAlign": "center"
  524 + }
  525 + },
  526 + { // 码
  527 + "type": "image",
  528 + "url": "https://desk-fd.zol-img.com.cn/t_s960x600c5/g5/M00/0F/08/ChMkJlauzXWIDrXBAAdCg2xP7oYAAH9FQOpVAIAB0Kb342.jpg",
  529 + "css": {
  530 + "color": "#000",
  531 + "width": "200px",
  532 + "height": "200px",
  533 + "top": "525px",
  534 + "left": "225px",
  535 + }
  536 + },
  537 + { // 扫码提示
  538 + "type": "text",
  539 + "text": "长按扫码即可参与活动",
  540 + "css": {
  541 + "color": "#666",
  542 + "width": "650px",
  543 + "top": "750px",
  544 + "fontSize": "26px",
  545 + "textAlign": "center"
  546 + }
  547 + },
  548 + ]
  549 + }
  550 +
  551 + th.setData({
  552 + imgDraw: imgDraw
  553 + });
  554 + }
  555 + self.setData({
  556 + act: e.data.data
  557 + });
  558 + if (e.data.data.is_show != 1) {
  559 + th.setData({
  560 + error: '活动未开启'
  561 + });
  562 + return false;
  563 + }
  564 + if (ut.gettimestamp() < e.data.data.start_time) {
  565 + th.setData({
  566 + error: '活动还未开始'
  567 + });
  568 + return false;
  569 + }
  570 + if (e.data.data.is_end == 0 && ut.gettimestamp() < e.data.data.end_time) {
  571 + //判断是否有限制购买次数
  572 + if (e.data.data.buy_limit != 0) {
  573 + self.getUserBuyPromNum()
  574 + }
  575 + //-- 获取商品列表 --
  576 + self.get_list();
  577 + self.countDown();
  578 + } else {
  579 + th.setData({
  580 + error: '活动已经过期'
  581 + });
  582 + return false;
  583 + }
  584 + } else {
  585 + th.data.is_get_act = 0;
  586 + th.setData({
  587 + error: e.data.msg
  588 + });
  589 + return false;
242 } 590 }
  591 + }
243 }); 592 });
244 } 593 }
245 594
246 - getApp().is_Single_page(this, function () {  
247 -  
248 - this.data.is_timer = 1;  
249 - if (this.data.act) this.countDown();  
250 - //如果有会员的时候  
251 - var userInfo = getApp().globalData.userInfo;  
252 - if (userInfo) {  
253 - if (!th.data.is_get_act) {  
254 - //获取活动信息  
255 - var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + th.data.id + "/" + userInfo.user_id;  
256 - getApp().request.get(url, {  
257 - success: function (e) {  
258 - th.data.is_get_act = 1;  
259 - if (e.data.code == 0 && e.data.data) {  
260 - self.setData({  
261 - act: e.data.data  
262 - });  
263 - if (e.data.data.is_show != 1) {  
264 - th.setData({  
265 - error: '活动未开启'  
266 - });  
267 - return false;  
268 - }  
269 - if (ut.gettimestamp() < e.data.data.start_time) {  
270 - th.setData({  
271 - error: '活动还未开始'  
272 - });  
273 - return false;  
274 - }  
275 - if (e.data.data.is_end == 0 && ut.gettimestamp() < e.data.data.end_time) {  
276 - //判断是否有限制购买次数  
277 - if(e.data.data.buy_limit !=0){  
278 - self.getUserBuyPromNum()  
279 - }  
280 - //-- 获取商品列表 --  
281 - self.get_list();  
282 - self.countDown();  
283 - } else {  
284 - th.setData({  
285 - error: '活动已经过期'  
286 - });  
287 - return false;  
288 - }  
289 - } else {  
290 - th.data.is_get_act = 0;  
291 - th.setData({  
292 - error: e.data.msg  
293 - });  
294 - return false;  
295 - }  
296 - }  
297 - });  
298 - }  
299 595
300 - //等待活动值  
301 - this.waitfor2(10, 'list', function () {  
302 - if (!th.data.list) return false;  
303 - if (ut.gettimestamp() < th.data.act.start_time) {  
304 - return false;  
305 - }  
306 - if (th.data.act.is_end == 10 || ut.gettimestamp() >= th.data.act.end_time) {  
307 - return false;  
308 - }  
309 - //获取头像的分享  
310 - th.get_head_temp(function () {  
311 - var txt = th.data.act.zhprice + "元" + th.data.act.zhbuyqty + "件";  
312 - imgDraw.views[0].url = th.data.share_head;  
313 - imgDraw.views[1].text = userInfo.nickname;  
314 - imgDraw.views[2].text = txt;  
315 -  
316 - var start = ut.formar_no_full(th.data.act.start_time, '.');  
317 - var end = ut.formar_no_full(th.data.act.end_time, '.');  
318 - txt = "活动时间:" + start + " - " + end;  
319 - imgDraw.views[3].text = txt;  
320 -  
321 - var scene = th.data.id + "";  
322 - var user_id = getApp().globalData.user_id;  
323 - scene += "_" + user_id;  
324 - ///二微码  
325 - var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +  
326 - os.stoid + "?sceneValue=" + scene + "&pageValue=packageB/pages/zuhegou/index/index";  
327 - wx.getImageInfo({  
328 - src: path3,  
329 - success: function (res) {  
330 - var vpath = res.path;  
331 - imgDraw.views[4].url = vpath;  
332 - th.setData({  
333 - imgDraw: imgDraw  
334 - })  
335 - }  
336 - })  
337 - })  
338 596
339 - th.check_guide(()=>{  
340 - //获取用户的默认门店  
341 - getApp().get_user_store(function (e) {  
342 - if (!e) {  
343 - th.data.fir_def_store = {}; //赋值空对象  
344 - return false;  
345 - }  
346 - if(getApp().globalData.is_dj_pk) th.setData({has_def:1})  
347 -  
348 - var ee = JSON.parse(JSON.stringify(e));  
349 - var appd = getApp().globalData;  
350 - //-- 等待定位系统的开启 --  
351 - th.waitfor2(15, 'is_get_local_ok', function () {  
352 -  
353 - if (!th.data.is_get_local_ok) return false;  
354 -  
355 - var e = JSON.parse(JSON.stringify(ee));  
356 - //如果有开启近距离的话,同时距离优不一样了  
357 - if (that.data.lat != null) {  
358 - //如果经纬度有变化的话  
359 - if (e && appd.lat == that.data.lat && appd.lon == that.data.lon && e.distance > 0) {  
360 - that.set_def_storage(e);  
361 - } else {  
362 - //要用接口是获取距离,js的计算不准  
363 - getApp().request.promiseGet("/api/weshop/pickup/list", {  
364 - data: {  
365 - store_id: os.stoid,  
366 - pickup_id: e.pickup_id,  
367 - is_pos: 1,  
368 - lat: th.data.lat,  
369 - lon: th.data.lon  
370 - },  
371 - }).then(res => {  
372 - if (res.data.code == 0) {  
373 - e = res.data.data.pageData[0];  
374 - if (e) {  
375 - e.is_no_dis = ee.is_no_dis;  
376 - appd.pk_store = e;  
377 - that.set_def_storage(e);  
378 - }  
379 -  
380 - }  
381 - })  
382 - }  
383 - appd.lat = that.data.lat;  
384 - appd.lon = that.data.lon;  
385 - } else {  
386 - if (e) {  
387 - e.distance = null;  
388 - that.set_def_storage(e);  
389 - }  
390 - }  
391 - })  
392 - });  
393 - })  
394 597
395 - //----获取系统参数-----  
396 - getApp().getConfig2(function (e) {  
397 - ee.setData({  
398 - bconfig: e,  
399 - });  
400 - //设置基本参数  
401 - th.wait_for_store_config(e);  
402 -  
403 - var json_d = JSON.parse(e.switch_list);  
404 - ee.setData({  
405 - store_config: e,  
406 - sys_switch: json_d,  
407 - is_closecoupon: json_d.is_closecoupon,  
408 - is_newsales_rules: json_d.is_newsales_rules,  
409 - is_open_offline: json_d.is_pricing_open,  
410 - sales_rules: e.sales_rules,  
411 - appoint_pick_keyid: json_d.appoint_pick_keyid  
412 - });  
413 -  
414 - //-- 计算等级价相关 --  
415 - var swithc_list = e.switch_list;  
416 - var sw_arr = JSON.parse(swithc_list);  
417 - //---如果后台又开等级卡的开关---  
418 - if (sw_arr.rank_switch && sw_arr.rank_switch == "2") {  
419 - th.setData({  
420 - rank_switch: true  
421 - });  
422 - //---回调卡的列表---  
423 - th.getPlusCardType(function (ob) {  
424 - th.setData({  
425 - card_list: ob.card_list  
426 - });  
427 - var user = getApp().globalData.userInfo;  
428 - if (!user) return false;  
429 - if (user.card_field && user['card_expiredate']) {  
430 - var str = user['card_expiredate'].replace(/-/g, '/');  
431 - var end = new Date(str);  
432 - end = Date.parse(end) / 1000;  
433 - var now = ut.gettimestamp();  
434 - //--- 判断是等级会员,且在有效期范围内 ---  
435 - if (user.card_field && now < end) {  
436 - var card_name = ob.name_map.get(user.card_field);  
437 - th.setData({  
438 - card_field: user.card_field,  
439 - card_name: card_name,  
440 - card_list: ob.card_list  
441 - });  
442 - }  
443 - }  
444 - //获取购物车的内容  
445 - setTimeout(function(){  
446 - th.get_cart_val(e);  
447 - },1000)  
448 -  
449 -  
450 - })  
451 - } else {  
452 - //获取购物车的内容  
453 - setTimeout(function(){  
454 - th.get_cart_val(e);  
455 - },1000)  
456 - }  
457 - }, 1); 598 + //等待活动值
  599 + this.waitfor2(10, 'list', function () {
  600 + if (!th.data.list) return false;
  601 + if (ut.gettimestamp() < th.data.act.start_time) {
  602 + return false;
  603 + }
  604 + if (th.data.act.is_end == 10 || ut.gettimestamp() >= th.data.act.end_time) {
  605 + return false;
  606 + }
458 607
  608 + if (th.data.act.share_imgurl) {
  609 + var path22 = th.data.iurl + th.data.act.share_imgurl;
  610 + wx.getImageInfo({
  611 + src: path22,
  612 + success: function (res) {
  613 + path22 = res.path;
  614 +
  615 + //获取头像的分享
  616 + th.get_head_temp(function () {
  617 + var txt = th.data.act.zhprice + "元" + th.data.act.zhbuyqty + "件";
  618 + var imgDraw = th.data.imgDraw;
  619 + imgDraw.views[0].url = th.data.share_head;
  620 + imgDraw.views[1].text = userInfo.nickname;
  621 + imgDraw.views[3].text = txt;
  622 +
  623 + txt = th.data.act.share_title?th.data.act.share_title:th.data.act.name
  624 + imgDraw.views[4].text = txt;
  625 +
  626 + var scene = th.data.id + "";
  627 + var user_id = getApp().globalData.user_id;
  628 + scene += "_" + user_id;
  629 + ///二微码
  630 + var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
  631 + os.stoid + "?sceneValue=" + scene + "&pageValue=packageB/pages/zuhegou/index/index";
  632 + wx.getImageInfo({
  633 + src: path3,
  634 + success: function (res) {
  635 + var vpath = res.path;
  636 + imgDraw.views[2].url = path22;
  637 + imgDraw.views[5].url = vpath;
  638 + th.setData({
  639 + imgDraw: imgDraw
  640 + })
  641 + }
  642 + })
459 }) 643 })
  644 + },
  645 + fail: function () {
460 646
461 - } else {  
462 - getApp().goto("/packageE/pages/togoin/togoin");  
463 - return false;  
464 - }  
465 - })  
466 -  
467 -  
468 -  
469 - },  
470 - //获取用户参与活动的次数  
471 - getUserBuyPromNum(){  
472 - var userInfo = getApp().globalData.userInfo;  
473 - var url = `/api/weshop/ordergoods/getUserBuyPromNum?store_id=${os.stoid}&user_id=${userInfo.user_id}&prom_type=7&prom_id=${this.data.act.id}`;  
474 - getApp().request.get(url, {  
475 - success: (e)=>{  
476 - if (e.data.code == 0 && e.data.data) {  
477 - let userbuynum=e.data.data.userbuynum  
478 - if (userbuynum >=this.data.act.buy_limit && this.data.act.buy_limit !=0) {  
479 - this.setData({  
480 - userbuynum:true 647 + }
  648 + });
  649 + } else {
  650 + //获取头像的分享
  651 + th.get_head_temp(function () {
  652 + var txt = th.data.act.zhprice + "元" + th.data.act.zhbuyqty + "件";
  653 + imgDraw.views[0].url = th.data.share_head;
  654 + imgDraw.views[1].text = userInfo.nickname;
  655 + imgDraw.views[2].text = txt;
  656 +
  657 + var start = ut.formar_no_full(th.data.act.start_time, '.');
  658 + var end = ut.formar_no_full(th.data.act.end_time, '.');
  659 + txt = "活动时间:" + start + " - " + end;
  660 + imgDraw.views[3].text = txt;
  661 +
  662 + var scene = th.data.id + "";
  663 + var user_id = getApp().globalData.user_id;
  664 + scene += "_" + user_id;
  665 + ///二微码
  666 + var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" +
  667 + os.stoid + "?sceneValue=" + scene + "&pageValue=packageB/pages/zuhegou/index/index";
  668 + wx.getImageInfo({
  669 + src: path3,
  670 + success: function (res) {
  671 + var vpath = res.path;
  672 + imgDraw.views[4].url = vpath;
  673 + th.setData({
  674 + imgDraw: imgDraw
481 }) 675 })
482 } 676 }
483 - } else { 677 + })
  678 + })
484 679
485 - }  
486 } 680 }
487 - });  
488 - },  
489 - onHide: function () {  
490 - this.data.is_timer = 0;  
491 - },  
492 -  
493 - //-- 调用接口的LIST,获取商品 --  
494 - get_list: function () {  
495 - var th = this;  
496 - if (this.data.loading) return false;  
497 - if (this.data.no_more) return false;  
498 - this.data.loading = 1;  
499 - var url = "/api/weshop/prom/zhbuyGoods/page";  
500 - var req_data = {  
501 - page: this.data.page,  
502 - pageSize: 10,  
503 - store_id: os.stoid,  
504 - zh_id: this.data.id  
505 - }  
506 - //开始调用接口  
507 - getApp().request.get(url, {  
508 - data: req_data,  
509 - success: function (res) {  
510 - th.data.loading = 0;  
511 - th.setData({  
512 - is_get: 1  
513 - })  
514 - if (ut.ajax_ok(res)) {  
515 - th.data.page++;  
516 - var list = th.data.list;  
517 - if (!list) list = [];  
518 -  
519 - //当是下拉刷新的时候  
520 - if (th.data.page > 1 && th.data.cart_list) {  
521 - //下拉之后也要重新计算一下金额  
522 - th.calc_more(res.data.data.pageData, function (list1) {  
523 - for (var i in list1) {  
524 - list.push(list1[i]);  
525 - }  
526 - th.setData({  
527 - list: list  
528 - });  
529 - th.re_sum_price();  
530 - })  
531 - } else {  
532 - for (var i in res.data.data.pageData) {  
533 - list.push(res.data.data.pageData[i]);  
534 - }  
535 - th.setData({  
536 - list: list  
537 - });  
538 - if (res.data.data.total <= 10) {  
539 - th.setData({  
540 - no_more: 1  
541 - });  
542 - }  
543 - }  
544 - } else {  
545 - th.setData({  
546 - no_more: 1  
547 - });  
548 - }  
549 - }  
550 - })  
551 - },  
552 -  
553 - //-- 滚动到底部触发 --  
554 - get_more_list: function () {  
555 - this.get_list();  
556 - },  
557 -  
558 - /**  
559 - * 用户点击右上角分享  
560 - */  
561 - onShareAppMessage: function () { getApp().globalData.no_clear=1;  
562 - var title = this.data.act.name;  
563 - var url = "/packageB/pages/zuhegou/index/index?id=" + this.data.act.id;  
564 - if (getApp().globalData.user_id) {  
565 - url += "&first_leader=" + getApp().globalData.user_id;  
566 - }  
567 - var ob = {  
568 - title: title,  
569 - path: url,  
570 - };  
571 - if (this.data.act.img_url)  
572 - ob.imageUrl = this.data.iurl + this.data.act.img_url;  
573 - return ob;  
574 - },  
575 -  
576 - /**  
577 - * 用户分享朋友圈  
578 - */  
579 - onShareTimeline() {  
580 - getApp().globalData.no_clear=1;  
581 - var title = this.data.act.name;  
582 -  
583 - var user_id=getApp().globalData.user_id;  
584 - if(!user_id) user_id=0;  
585 681
586 - var ob = {  
587 - title: title,  
588 - query: 'first_leader='+user_id+"&id=" + this.data.act.id  
589 - };  
590 - if (this.data.act.img_url)  
591 - ob.imageUrl = this.data.iurl + this.data.act.img_url;  
592 - return ob;  
593 - },  
594 -  
595 - /**  
596 - * 点击规则详情,弹出规则  
597 - */  
598 - showRule() {  
599 - this.setData({  
600 - type: 0, //控制显示规则详情还是提示信息,0规则详情,1提示信息  
601 - showRule: true,  
602 - showMask: true,  
603 - });  
604 - },  
605 -  
606 - /**  
607 - * 点击关闭按钮关闭规则详情弹窗  
608 - */  
609 - closeRule() {  
610 - this.setData({  
611 - showRule: false,  
612 - showMask: false,  
613 - });  
614 - },  
615 -  
616 - /**  
617 - * 点击提示信息  
618 - */  
619 - showInfo() {  
620 - this.setData({  
621 - type: 1,  
622 - showRule: true,  
623 - showMask: true,  
624 - });  
625 - },  
626 -  
627 - /**  
628 - * 加入购物车  
629 - */  
630 - addToCart(e) {  
631 - var th = this;  
632 - var index = e.currentTarget.dataset.index;  
633 - var userInfo = getApp().globalData.userInfo;  
634 - if (!userInfo) {  
635 - getApp().goto("/packageE/pages/togoin/togoin");  
636 - return false;  
637 - }  
638 - let haveAdded = this.data.list[index].haveAdded;  
639 - this.data.sele_index = index;  
640 - let title = '';  
641 - self = this;  
642 - th.data.s_cart_num = 0;  
643 - if(this.data.userbuynum){  
644 - wx.showToast({  
645 - title: '你已超出该活动购买次数!',  
646 - icon: 'none',  
647 - duration: 2000  
648 - })  
649 - return  
650 - }  
651 682
652 - if(this.data.act.zh_num>0 && this.data.act.zh_num<=this.data.act.zh_buy_num){  
653 - wx.showToast({  
654 - title: '组合总数不足!',  
655 - icon: 'none',  
656 - duration: 2000  
657 - })  
658 - return  
659 - } 683 + th.check_guide(() => {
  684 + //获取用户的默认门店
  685 + getApp().get_user_store(function (e) {
  686 + if (!e) {
  687 + th.data.fir_def_store = {}; //赋值空对象
  688 + return false;
  689 + }
  690 + if (getApp().globalData.is_dj_pk) th.setData({ has_def: 1 })
660 691
  692 + var ee = JSON.parse(JSON.stringify(e));
  693 + var appd = getApp().globalData;
  694 + //-- 等待定位系统的开启 --
  695 + th.waitfor2(15, 'is_get_local_ok', function () {
661 696
662 - //说明是加入购物车是时候  
663 - this.data.is_zuhe_addcart = 1;  
664 - if (!haveAdded) { 697 + if (!th.data.is_get_local_ok) return false;
665 698
666 - //购买的商品的数量默认超量的数量  
667 - th.data.sele_g = this.data.list[index];  
668 - if (!th.data.sele_g.num){  
669 - th.data.goodsInputNum = 1;  
670 - if(th.data.sele_g.zhqty) th.data.goodsInputNum = th.data.sele_g.zhqty;  
671 - } 699 + var e = JSON.parse(JSON.stringify(ee));
  700 + //如果有开启近距离的话,同时距离优不一样了
  701 + if (that.data.lat != null) {
  702 + //如果经纬度有变化的话
  703 + if (e && appd.lat == that.data.lat && appd.lon == that.data.lon && e.distance > 0) {
  704 + that.set_def_storage(e);
  705 + } else {
  706 + //要用接口是获取距离,js的计算不准
  707 + getApp().request.promiseGet("/api/weshop/pickup/list", {
  708 + data: {
  709 + store_id: os.stoid,
  710 + pickup_id: e.pickup_id,
  711 + is_pos: 1,
  712 + lat: th.data.lat,
  713 + lon: th.data.lon
  714 + },
  715 + }).then(res => {
  716 + if (res.data.code == 0) {
  717 + e = res.data.data.pageData[0];
  718 + if (e) {
  719 + e.is_no_dis = ee.is_no_dis;
  720 + appd.pk_store = e;
  721 + that.set_def_storage(e);
  722 + }
672 723
673 - //如果没有门店,活动商品的配送方式和门店的配送方式不一样  
674 - if (!th.data.def_pick_store ||  
675 - (th.data.sele_g.distr_type != 0 && th.data.def_pick_store.distr_type != 0 && th.data.sele_g.distr_type != th.data.def_pick_store.distr_type)) {  
676 - //选择了门店  
677 - if (th.data.sele_store) {  
678 - wx.showToast({  
679 - title: "该商品的物流配送方式和默认门店不匹配!",  
680 - icon: 'none',  
681 - duration: 2000 724 + }
682 }) 725 })
  726 + }
  727 + appd.lat = that.data.lat;
  728 + appd.lon = that.data.lon;
683 } else { 729 } else {
684 - wx.showModal({  
685 - title: '温馨提示',  
686 - content: '该商品的物流配送方式和默认门店不匹配,是否要切换门店?',  
687 - success(res) {  
688 - if (res.confirm) {  
689 - //物流的配送方式不一样  
690 - th.get_sto();  
691 - var set_data = {  
692 - store: 1  
693 - };  
694 - if (th.data.def_pick_store) {  
695 - set_data.is_no_pipei = th.data.def_pick_store.pickup_id;  
696 - }  
697 - th.setData(set_data);  
698 - }  
699 - }  
700 - }) 730 + if (e) {
  731 + e.distance = null;
  732 + that.set_def_storage(e);
  733 + }
701 } 734 }
702 - return false;  
703 - } else {  
704 - //先判断一下线下库存  
705 -  
706 - th.chect_act_zh_num(function (){  
707 - th.check_pk_store_conut(function(){  
708 - th.setData({  
709 - is_no_pipei: 0  
710 - });  
711 - th.check_is_in_cart(function () {  
712 - th.add_cart_func();  
713 - })  
714 - })  
715 - })  
716 -  
717 - }  
718 - } else {  
719 -  
720 - var txt = "list[" + index + "].haveAdded";  
721 - var txt1 = "list[" + index + "].num";  
722 - var txt2 = "list[" + index + "].showNum";  
723 - th.data.sele_g = this.data.list[index]; 735 + })
  736 + });
  737 + })
724 738
725 - wx.showModal({  
726 - title: '温馨提示',  
727 - content: "确定取消该商品参与活动?",  
728 - success(res) {  
729 - if (res.confirm) {  
730 - console.log('用户点击确定');  
731 - if (th.data.sele_g.cart_num && th.data.sele_g.cart_num - th.data.sele_g.num > 0) {  
732 -  
733 - var updata = {  
734 - id: th.data.sele_g.cart_id,  
735 - goods_num: th.data.sele_g.cart_num - th.data.sele_g.num,  
736 - store_id: os.stoid  
737 - }  
738 - getApp().request.put("/api/weshop/cart/update", {  
739 - data: updata,  
740 - success: function (rs) {  
741 - if (rs.data.code == 0) {  
742 - title = '取消成功';  
743 - th.setData({  
744 - [txt1]: 0,  
745 - [txt2]: false,  
746 - [txt]: false,  
747 - });  
748 - wx.showToast({  
749 - title: title,  
750 - icon: 'success',  
751 - });  
752 - th.re_sum_price();  
753 - }  
754 - }  
755 - })  
756 -  
757 - } else {  
758 - var url = '/api/weshop/cart/del/' + os.stoid + '/' + th.data.sele_g.cart_id;  
759 - getApp().request.delete(url, {  
760 - success: function (res) {  
761 -  
762 - if (res.data.code == 0) {  
763 - title = '取消成功';  
764 - th.setData({  
765 - [txt1]: 0,  
766 - [txt2]: false,  
767 - [txt]: false,  
768 - });  
769 - wx.showToast({  
770 - title: title,  
771 - icon: 'success',  
772 - });  
773 -  
774 - th.re_sum_price();  
775 - }  
776 - }  
777 - });  
778 - } 739 + //----获取系统参数-----
  740 + getApp().getConfig2(function (e) {
  741 + ee.setData({
  742 + bconfig: e,
  743 + });
  744 + //设置基本参数
  745 + th.wait_for_store_config(e);
  746 +
  747 + var json_d = JSON.parse(e.switch_list);
  748 + ee.setData({
  749 + store_config: e,
  750 + sys_switch: json_d,
  751 + is_closecoupon: json_d.is_closecoupon,
  752 + is_newsales_rules: json_d.is_newsales_rules,
  753 + is_open_offline: json_d.is_pricing_open,
  754 + sales_rules: e.sales_rules,
  755 + appoint_pick_keyid: json_d.appoint_pick_keyid
  756 + });
779 757
780 - } else if (res.cancel) {  
781 - console.log('用户点击取消')  
782 - self.setData({  
783 - haveAdded: true,  
784 - });  
785 - } 758 + //-- 计算等级价相关 --
  759 + var swithc_list = e.switch_list;
  760 + var sw_arr = JSON.parse(swithc_list);
  761 + //---如果后台又开等级卡的开关---
  762 + if (sw_arr.rank_switch && sw_arr.rank_switch == "2") {
  763 + th.setData({
  764 + rank_switch: true
  765 + });
  766 + //---回调卡的列表---
  767 + th.getPlusCardType(function (ob) {
  768 + th.setData({
  769 + card_list: ob.card_list
  770 + });
  771 + var user = getApp().globalData.userInfo;
  772 + if (!user) return false;
  773 + if (user.card_field && user['card_expiredate']) {
  774 + var str = user['card_expiredate'].replace(/-/g, '/');
  775 + var end = new Date(str);
  776 + end = Date.parse(end) / 1000;
  777 + var now = ut.gettimestamp();
  778 + //--- 判断是等级会员,且在有效期范围内 ---
  779 + if (user.card_field && now < end) {
  780 + var card_name = ob.name_map.get(user.card_field);
  781 + th.setData({
  782 + card_field: user.card_field,
  783 + card_name: card_name,
  784 + card_list: ob.card_list
  785 + });
  786 + }
786 } 787 }
787 - })  
788 - } 788 + //获取购物车的内容
  789 + setTimeout(function () {
  790 + th.get_cart_val(e);
  791 + }, 1000)
789 792
790 - },  
791 -  
792 - //在启用线下的时候,要判断一下是不是有库存  
793 - async check_pk_store_conut(func,is_no_msg,gd,by_num){  
794 - var th=this;  
795 - if(this.data.sales_rules<2){  
796 - if(is_no_msg) return true;  
797 - else {  
798 - if(func) func();  
799 - return false;  
800 - }  
801 - }  
802 - //门店库存no  
803 - var pkno= gd && gd.pickup_no?gd.pickup_no:this.data.def_pick_store.pickup_no;  
804 - var pickup_id=gd && gd.pick_id?gd.pick_id:this.data.def_pick_store.pickup_id;  
805 - var lock = [];  
806 - var plist=null;  
807 - var good=gd || th.data.sele_g;  
808 - var buy_num=by_num || th.data.goodsInputNum;  
809 -  
810 - if(this.data.sales_map[good.goods_id]){  
811 -  
812 - var mp=this.data.sales_map[good.goods_id];  
813 - var lock_num=mp.lock_num;  
814 - var CanOutQty=mp.CanOutQty;  
815 - if (CanOutQty < lock_num +buy_num) {  
816 -  
817 - if(!is_no_msg) {  
818 - wx.showToast({  
819 - title: "门店库存不足",  
820 - icon: 'none',  
821 - duration: 2000  
822 - })  
823 - }  
824 - return false;  
825 - }  
826 - if(is_no_msg) return true;  
827 - func();  
828 -  
829 - }else {  
830 - //先读取门店的lock,采用链式写法,少用await  
831 - await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {  
832 - data: {store_id: os.stoid, wareId: good.goods_id, pageSize: 1000}  
833 - }).then(res => {  
834 - if (res.data.code == 0 && res.data.data.total > 0) {  
835 - lock = res.data.data.pageData  
836 - }  
837 -  
838 - })  
839 -  
840 - var dw_rq={ storageNos: pkno,wareIds: encodeURIComponent(good.erpwareid), storeId: os.stoid, pageSize: 2000};  
841 - if(this.data.sales_rules==3){  
842 - dw_rq.storageIds = encodeURIComponent(th.data.appoint_pick_keyid)  
843 - delete dw_rq.storageNos  
844 - }  
845 -  
846 - //---通过接口获取门店的线下库存信息--  
847 - await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {  
848 - data:dw_rq  
849 - }).then(res => {  
850 - if (ut.ajax_ok(res)) {  
851 - plist = res.data.data.pageData[0];  
852 - }  
853 - })  
854 -  
855 - if(!plist){  
856 - if(!is_no_msg) {  
857 - wx.showToast({  
858 - title: "该商品在门店未找到库存",  
859 - icon: 'none',  
860 - duration: 2000  
861 - })  
862 - }  
863 - return false;  
864 - }  
865 -  
866 - var lock_num = th.find_lock_num(pickup_id, lock);  
867 - this.data.sales_map[good.goods_id]={  
868 - CanOutQty:plist.CanOutQty,  
869 - lock_num:lock_num  
870 - }  
871 -  
872 - if (plist.CanOutQty < lock_num + buy_num) {  
873 - if(!is_no_msg) {  
874 - wx.showToast({  
875 - title: "该商品在门店未找到库存",  
876 - icon: 'none',  
877 - duration: 2000  
878 - })  
879 - }  
880 - return false;  
881 - }  
882 - if(is_no_msg) return true;  
883 - func();  
884 - }  
885 -  
886 - },  
887 -  
888 - find_lock_num(pick_id, lock) {  
889 - var lock_num = 0;  
890 - if (!lock) return 0;  
891 - if (lock.length < 0) return 0;  
892 - for (var i in lock) {  
893 - if (pick_id == lock[i].pickupId) {  
894 - lock_num += lock[i].outQty; 793 +
  794 + })
  795 + } else {
  796 + //获取购物车的内容
  797 + setTimeout(function () {
  798 + th.get_cart_val(e);
  799 + }, 1000)
895 } 800 }
896 - }  
897 - return lock_num;  
898 - }, 801 + }, 1);
899 802
  803 + })
900 804
901 - /**  
902 - * 增加数量  
903 - */  
904 - add(e) { 805 + } else {
  806 + getApp().goto("/packageE/pages/togoin/togoin");
  807 + return false;
  808 + }
  809 + })
  810 +
  811 +
  812 +
  813 + },
  814 + //获取用户参与活动的次数
  815 + getUserBuyPromNum() {
  816 + var userInfo = getApp().globalData.userInfo;
  817 + var url = `/api/weshop/ordergoods/getUserBuyPromNum?store_id=${os.stoid}&user_id=${userInfo.user_id}&prom_type=7&prom_id=${this.data.act.id}`;
  818 + getApp().request.get(url, {
  819 + success: (e) => {
  820 + if (e.data.code == 0 && e.data.data) {
  821 + let userbuynum = e.data.data.userbuynum
  822 + if (userbuynum >= this.data.act.buy_limit && this.data.act.buy_limit != 0) {
  823 + this.setData({
  824 + userbuynum: true
  825 + })
  826 + }
  827 + } else {
905 828
906 - if(this.data.userbuynum){  
907 - wx.showToast({  
908 - title: '你已超出该活动购买次数!',  
909 - icon: 'none',  
910 - duration: 2000  
911 - })  
912 - return  
913 } 829 }
914 -  
915 - var th = this;  
916 - var userInfo = getApp().globalData.userInfo;  
917 - if (!userInfo) {  
918 - getApp().goto("/packageE/pages/togoin/togoin");  
919 - return false; 830 + }
  831 + });
  832 + },
  833 + onHide: function () {
  834 + this.data.is_timer = 0;
  835 + },
  836 +
  837 + //-- 调用接口的LIST,获取商品 --
  838 + get_list: function () {
  839 + var th = this;
  840 + if (this.data.loading) return false;
  841 + if (this.data.no_more) return false;
  842 + this.data.loading = 1;
  843 + var url = "/api/weshop/prom/zhbuyGoods/page";
  844 + var req_data = {
  845 + page: this.data.page,
  846 + pageSize: 10,
  847 + store_id: os.stoid,
  848 + zh_id: this.data.id
  849 + }
  850 + //开始调用接口
  851 + getApp().request.get(url, {
  852 + data: req_data,
  853 + success: function (res) {
  854 + th.data.loading = 0;
  855 + th.setData({
  856 + is_get: 1
  857 + })
  858 + if (ut.ajax_ok(res)) {
  859 + th.data.page++;
  860 + var list = th.data.list;
  861 + if (!list) list = [];
  862 +
  863 + //当是下拉刷新的时候
  864 + if (th.data.page > 1 && th.data.cart_list) {
  865 + //下拉之后也要重新计算一下金额
  866 + th.calc_more(res.data.data.pageData, function (list1) {
  867 + for (var i in list1) {
  868 + list.push(list1[i]);
  869 + }
  870 + th.setData({
  871 + list: list
  872 + });
  873 + th.re_sum_price();
  874 + })
  875 + } else {
  876 + for (var i in res.data.data.pageData) {
  877 + list.push(res.data.data.pageData[i]);
  878 + }
  879 + th.setData({
  880 + list: list
  881 + });
  882 + if (res.data.data.total <= 10) {
  883 + th.setData({
  884 + no_more: 1
  885 + });
  886 + }
  887 + }
  888 + } else {
  889 + th.setData({
  890 + no_more: 1
  891 + });
920 } 892 }
  893 + }
  894 + })
  895 + },
  896 +
  897 + //-- 滚动到底部触发 --
  898 + get_more_list: function () {
  899 + this.get_list();
  900 + },
  901 +
  902 + /**
  903 + * 用户点击右上角分享
  904 + */
  905 + onShareAppMessage: function () {
  906 + getApp().globalData.no_clear = 1;
  907 + var title = this.data.act.name;
  908 + var url = "/packageB/pages/zuhegou/index/index?id=" + this.data.act.id;
  909 + if (getApp().globalData.user_id) {
  910 + url += "&first_leader=" + getApp().globalData.user_id;
  911 + }
  912 + var ob = {
  913 + title: title,
  914 + path: url,
  915 + };
  916 + if (this.data.act.img_url)
  917 + ob.imageUrl = this.data.iurl + this.data.act.img_url;
  918 + return ob;
  919 + },
  920 +
  921 + /**
  922 + * 用户分享朋友圈
  923 + */
  924 + onShareTimeline() {
  925 + getApp().globalData.no_clear = 1;
  926 + var title = this.data.act.name;
  927 +
  928 + var user_id = getApp().globalData.user_id;
  929 + if (!user_id) user_id = 0;
  930 +
  931 + var ob = {
  932 + title: title,
  933 + query: 'first_leader=' + user_id + "&id=" + this.data.act.id
  934 + };
  935 + if (this.data.act.img_url)
  936 + ob.imageUrl = this.data.iurl + this.data.act.img_url;
  937 + return ob;
  938 + },
  939 +
  940 + /**
  941 + * 点击规则详情,弹出规则
  942 + */
  943 + showRule() {
  944 + this.setData({
  945 + type: 0, //控制显示规则详情还是提示信息,0规则详情,1提示信息
  946 + showRule: true,
  947 + showMask: true,
  948 + });
  949 + },
  950 +
  951 + /**
  952 + * 点击关闭按钮关闭规则详情弹窗
  953 + */
  954 + closeRule() {
  955 + this.setData({
  956 + showRule: false,
  957 + showMask: false,
  958 + });
  959 + },
  960 +
  961 + /**
  962 + * 点击提示信息
  963 + */
  964 + showInfo() {
  965 + this.setData({
  966 + type: 1,
  967 + showRule: true,
  968 + showMask: true,
  969 + });
  970 + },
  971 +
  972 + /**
  973 + * 加入购物车
  974 + */
  975 + addToCart(e) {
  976 + var th = this;
  977 + var index = e.currentTarget.dataset.index;
  978 + var userInfo = getApp().globalData.userInfo;
  979 + if (!userInfo) {
  980 + getApp().goto("/packageE/pages/togoin/togoin");
  981 + return false;
  982 + }
  983 + let haveAdded = this.data.list[index].haveAdded;
  984 + this.data.sele_index = index;
  985 + let title = '';
  986 + self = this;
  987 + th.data.s_cart_num = 0;
  988 + if (this.data.userbuynum) {
  989 + wx.showToast({
  990 + title: '你已超出该活动购买次数!',
  991 + icon: 'none',
  992 + duration: 2000
  993 + })
  994 + return
  995 + }
921 996
922 - if (this.data.changing) return false;  
923 - this.data.changing = 1;  
924 -  
925 - var index = e.currentTarget.dataset.index;  
926 - this.data.sele_g = th.data.list[index];  
927 - this.data.sele_index = index;  
928 - th.data.goodsInputNum = th.data.sele_g.num + 1;  
929 -  
930 - //必须是组合购买的超量  
931 - var is_zhqty=0;  
932 - if(th.data.goodsInputNum<th.data.sele_g.zhqty){  
933 - th.data.goodsInputNum=th.data.sele_g.zhqty;  
934 - is_zhqty=1;  
935 - } 997 + if (this.data.act.zh_num > 0 && this.data.act.zh_num <= this.data.act.zh_buy_num) {
  998 + wx.showToast({
  999 + title: '组合总数不足!',
  1000 + icon: 'none',
  1001 + duration: 2000
  1002 + })
  1003 + return
  1004 + }
936 1005
937 - th.check_pk_store_conut(function(){  
938 - if (th.data.sele_g.cart_num) {  
939 - th.data.s_cart_num = th.data.sele_g.cart_num + 1;  
940 - if(is_zhqty) th.data.s_cart_num=th.data.sele_g.zhqty;  
941 - }  
942 - th.add_cart_func();  
943 - })  
944 1006
945 - }, 1007 + //说明是加入购物车是时候
  1008 + this.data.is_zuhe_addcart = 1;
  1009 + if (!haveAdded) {
946 1010
947 - /**  
948 - * 减少数量  
949 - */  
950 - sub(e) {  
951 - var userInfo = getApp().globalData.userInfo;  
952 - if (!userInfo) {  
953 - getApp().goto("/packageE/pages/togoin/togoin");  
954 - return false;  
955 - } 1011 + //购买的商品的数量默认超量的数量
  1012 + th.data.sele_g = this.data.list[index];
  1013 + if (!th.data.sele_g.num) {
  1014 + th.data.goodsInputNum = 1;
  1015 + if (th.data.sele_g.zhqty) th.data.goodsInputNum = th.data.sele_g.zhqty;
  1016 + }
956 1017
957 - var th = this;  
958 - var index = e.currentTarget.dataset.index;  
959 - var item = this.data.list[index];  
960 - this.data.sele_g = item;  
961 - let num = item.num;  
962 - th.data.s_cart_num = item.cart_num - 1;  
963 -  
964 - if (num >= 2) {  
965 - var check_num = num - 1;  
966 - //小于起购数  
967 - if (check_num < item.zhqty) {  
968 - wx.showToast({  
969 - title: "该商品至少要购买" + item.zhqty + "件",  
970 - icon: 'none',  
971 - duration: 2000  
972 - })  
973 - return false; 1018 + //如果没有门店,活动商品的配送方式和门店的配送方式不一样
  1019 + if (!th.data.def_pick_store ||
  1020 + (th.data.sele_g.distr_type != 0 && th.data.def_pick_store.distr_type != 0 && th.data.sele_g.distr_type != th.data.def_pick_store.distr_type)) {
  1021 + //选择了门店
  1022 + if (th.data.sele_store) {
  1023 + wx.showToast({
  1024 + title: "该商品的物流配送方式和默认门店不匹配!",
  1025 + icon: 'none',
  1026 + duration: 2000
  1027 + })
  1028 + } else {
  1029 + wx.showModal({
  1030 + title: '温馨提示',
  1031 + content: '该商品的物流配送方式和默认门店不匹配,是否要切换门店?',
  1032 + success(res) {
  1033 + if (res.confirm) {
  1034 + //物流的配送方式不一样
  1035 + th.get_sto();
  1036 + var set_data = {
  1037 + store: 1
  1038 + };
  1039 + if (th.data.def_pick_store) {
  1040 + set_data.is_no_pipei = th.data.def_pick_store.pickup_id;
  1041 + }
  1042 + th.setData(set_data);
  1043 + }
974 } 1044 }
975 -  
976 - if (th.data.changing) return false;  
977 - th.data.changing = 1;  
978 - th.data.sele_g = item;  
979 - th.data.sele_index = index;  
980 - th.data.goodsInputNum = check_num;  
981 -  
982 - th.sub_updata_cart();  
983 - return false; 1045 + })
984 } 1046 }
  1047 + return false;
  1048 + } else {
  1049 + //先判断一下线下库存
985 1050
986 - var txt = "list[" + index + "].haveAdded";  
987 - var txt1 = "list[" + index + "].num";  
988 - var txt2 = "list[" + index + "].showNum"; 1051 + th.chect_act_zh_num(function () {
  1052 + th.check_pk_store_conut(function () {
  1053 + th.setData({
  1054 + is_no_pipei: 0
  1055 + });
  1056 + th.check_is_in_cart(function () {
  1057 + th.add_cart_func();
  1058 + })
  1059 + })
  1060 + })
989 1061
990 - wx.showModal({  
991 - title: '温馨提示',  
992 - content: '确定取消该商品参与活动?',  
993 - success(res) {  
994 - if (res.confirm) { 1062 + }
  1063 + } else {
  1064 +
  1065 + var txt = "list[" + index + "].haveAdded";
  1066 + var txt1 = "list[" + index + "].num";
  1067 + var txt2 = "list[" + index + "].showNum";
  1068 + th.data.sele_g = this.data.list[index];
  1069 +
  1070 + wx.showModal({
  1071 + title: '温馨提示',
  1072 + content: "确定取消该商品参与活动?",
  1073 + success(res) {
  1074 + if (res.confirm) {
  1075 + console.log('用户点击确定');
  1076 + if (th.data.sele_g.cart_num && th.data.sele_g.cart_num - th.data.sele_g.num > 0) {
  1077 +
  1078 + var updata = {
  1079 + id: th.data.sele_g.cart_id,
  1080 + goods_num: th.data.sele_g.cart_num - th.data.sele_g.num,
  1081 + store_id: os.stoid
  1082 + }
  1083 + getApp().request.put("/api/weshop/cart/update", {
  1084 + data: updata,
  1085 + success: function (rs) {
  1086 + if (rs.data.code == 0) {
  1087 + title = '取消成功';
  1088 + th.setData({
  1089 + [txt1]: 0,
  1090 + [txt2]: false,
  1091 + [txt]: false,
  1092 + });
  1093 + wx.showToast({
  1094 + title: title,
  1095 + icon: 'success',
  1096 + });
  1097 + th.re_sum_price();
  1098 + }
  1099 + }
  1100 + })
995 1101
996 - if (th.data.s_cart_num) {  
997 - var updata = {  
998 - id: th.data.sele_g.cart_id,  
999 - goods_num: th.data.s_cart_num,  
1000 - store_id: os.stoid  
1001 - }  
1002 - getApp().request.put("/api/weshop/cart/update", {  
1003 - data: updata,  
1004 - success: function (rs) {  
1005 - if (rs.data.code == 0) {  
1006 - var title = '取消成功';  
1007 - th.setData({  
1008 - [txt1]: 0,  
1009 - [txt2]: false,  
1010 - [txt]: false,  
1011 - });  
1012 - wx.showToast({  
1013 - title: title,  
1014 - icon: 'success',  
1015 - });  
1016 - th.re_sum_price();  
1017 - }  
1018 - }  
1019 - })  
1020 - } else {  
1021 - var url = '/api/weshop/cart/del/' + os.stoid + '/' + item.cart_id;  
1022 - getApp().request.delete(url, {  
1023 - success: function (res) {  
1024 - if (res.data.code == 0) {  
1025 - var title = '移除购物车成功';  
1026 - th.setData({  
1027 - [txt1]: 0,  
1028 - [txt2]: false,  
1029 - [txt]: false,  
1030 - });  
1031 - wx.showToast({  
1032 - title: title,  
1033 - icon: 'success',  
1034 - });  
1035 - th.re_sum_price(); //重新统计数量和总金额  
1036 - }  
1037 - }  
1038 - });  
1039 - } 1102 + } else {
  1103 + var url = '/api/weshop/cart/del/' + os.stoid + '/' + th.data.sele_g.cart_id;
  1104 + getApp().request.delete(url, {
  1105 + success: function (res) {
1040 1106
1041 - } else if (res.cancel) {  
1042 - console.log('用户点击取消')  
1043 - self.setData({  
1044 - haveAdded: true, 1107 + if (res.data.code == 0) {
  1108 + title = '取消成功';
  1109 + th.setData({
  1110 + [txt1]: 0,
  1111 + [txt2]: false,
  1112 + [txt]: false,
  1113 + });
  1114 + wx.showToast({
  1115 + title: title,
  1116 + icon: 'success',
1045 }); 1117 });
  1118 +
  1119 + th.re_sum_price();
  1120 + }
1046 } 1121 }
  1122 + });
1047 } 1123 }
1048 - })  
1049 - return false;  
1050 1124
1051 - },  
1052 -  
1053 - /** 分享 **/  
1054 - share() {  
1055 - var th = this;  
1056 - var userInfo = getApp().globalData.userInfo;  
1057 - if (!userInfo) {  
1058 - getApp().goto("/packageE/pages/togoin/togoin");  
1059 - return false;  
1060 - }  
1061 - wx.showLoading();  
1062 - setTimeout(function () {  
1063 - th.setData({  
1064 - showMask: true,  
1065 - showPoster: true, 1125 + } else if (res.cancel) {
  1126 + console.log('用户点击取消')
  1127 + self.setData({
  1128 + haveAdded: true,
1066 }); 1129 });
1067 - wx.hideLoading();  
1068 - }, 1000);  
1069 - },  
1070 -  
1071 - /**  
1072 - * 关闭海报  
1073 - */  
1074 - closePoster() {  
1075 - this.setData({  
1076 - showMask: false,  
1077 - showPoster: false,  
1078 - });  
1079 - }, 1130 + }
  1131 + }
  1132 + })
  1133 + }
1080 1134
1081 - onImgOK(e) {  
1082 - console.log(e.detail.path);  
1083 - this.setData({  
1084 - myimg: e.detail.path,  
1085 - }); 1135 + },
1086 1136
1087 - },  
1088 -  
1089 - //---小于10的格式化函数----  
1090 - timeFormat(param) {  
1091 - return param < 10 ? '0' + param : param;  
1092 - },  
1093 -  
1094 - //----倒计时函数-----  
1095 - countDown() {  
1096 - if (!this.data.is_timer) return false;  
1097 - var th = this;  
1098 - // 获取当前时间,同时得到活动结束时间数组  
1099 - var endTime = this.data.act.end_time;  
1100 - var newTime = ut.gettimestamp();  
1101 - // 对结束时间进行处理渲染到页面  
1102 - var obj = null;  
1103 - // 如果活动未结束,对时间进行处理  
1104 - if (endTime - newTime > 0) {  
1105 - var time = (endTime - newTime);  
1106 - // 获取天、时、分、秒  
1107 - var day = parseInt(time / (60 * 60 * 24));  
1108 - var hou = parseInt(time % (60 * 60 * 24) / 3600);  
1109 - var min = parseInt(time % (60 * 60 * 24) % 3600 / 60);  
1110 - var sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);  
1111 - obj = {  
1112 - hou: this.timeFormat(hou),  
1113 - min: this.timeFormat(min),  
1114 - sec: this.timeFormat(sec)  
1115 - }  
1116 - if (day > 0) {  
1117 - obj.day = this.timeFormat(day);  
1118 - }  
1119 - } else {  
1120 - //活动已结束,全部设置为'00'  
1121 - obj = {  
1122 - day: '00',  
1123 - hou: '00',  
1124 - min: '00',  
1125 - sec: '00'  
1126 - }  
1127 - th.setData({  
1128 - prom_time_text: '活动已经结束:',  
1129 - prom_st: 3  
1130 - })  
1131 - th.setData({  
1132 - djs: obj  
1133 - });  
1134 - return false; 1137 + //在启用线下的时候,要判断一下是不是有库存
  1138 + async check_pk_store_conut(func, is_no_msg, gd, by_num) {
  1139 + var th = this;
  1140 + if (this.data.sales_rules < 2) {
  1141 + if (is_no_msg) return true;
  1142 + else {
  1143 + if (func) func();
  1144 + return false;
  1145 + }
  1146 + }
  1147 + //门店库存no
  1148 + var pkno = gd && gd.pickup_no ? gd.pickup_no : this.data.def_pick_store.pickup_no;
  1149 + var pickup_id = gd && gd.pick_id ? gd.pick_id : this.data.def_pick_store.pickup_id;
  1150 + var lock = [];
  1151 + var plist = null;
  1152 + var good = gd || th.data.sele_g;
  1153 + var buy_num = by_num || th.data.goodsInputNum;
  1154 +
  1155 + if (this.data.sales_map[good.goods_id]) {
  1156 +
  1157 + var mp = this.data.sales_map[good.goods_id];
  1158 + var lock_num = mp.lock_num;
  1159 + var CanOutQty = mp.CanOutQty;
  1160 + if (CanOutQty < lock_num + buy_num) {
  1161 +
  1162 + if (!is_no_msg) {
  1163 + wx.showToast({
  1164 + title: "门店库存不足",
  1165 + icon: 'none',
  1166 + duration: 2000
  1167 + })
  1168 + }
  1169 + return false;
  1170 + }
  1171 + if (is_no_msg) return true;
  1172 + func();
  1173 +
  1174 + } else {
  1175 + //先读取门店的lock,采用链式写法,少用await
  1176 + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
  1177 + data: { store_id: os.stoid, wareId: good.goods_id, pageSize: 1000 }
  1178 + }).then(res => {
  1179 + if (res.data.code == 0 && res.data.data.total > 0) {
  1180 + lock = res.data.data.pageData
1135 } 1181 }
1136 1182
1137 - th.setData({  
1138 - djs: obj  
1139 - });  
1140 - setTimeout(function () {  
1141 - th.countDown()  
1142 - }, 1000);  
1143 - },  
1144 -  
1145 - close_all: function () {  
1146 - this.setData({  
1147 - showMask: false,  
1148 - showPoster: false,  
1149 - showRule: false  
1150 - });  
1151 - }, 1183 + })
1152 1184
  1185 + var dw_rq = { storageNos: pkno, wareIds: encodeURIComponent(good.erpwareid), storeId: os.stoid, pageSize: 2000 };
  1186 + if (this.data.sales_rules == 3) {
  1187 + dw_rq.storageIds = encodeURIComponent(th.data.appoint_pick_keyid)
  1188 + delete dw_rq.storageNos
  1189 + }
1153 1190
1154 - //------定时等待某个值,有值才进行运算--------  
1155 - waitfor2: function (n, pop_value, func) {  
1156 - var th = this;  
1157 - if (n <= 0) {  
1158 - func()  
1159 - return false  
1160 - }  
1161 - if (th.data[pop_value]) {  
1162 - func();  
1163 - return false;  
1164 - }  
1165 - setTimeout(function () {  
1166 - --n;  
1167 - th.waitfor2(n, pop_value, func)  
1168 - }, 1000);  
1169 - },  
1170 -  
1171 - //--获取头像的本地缓存,回调写法--  
1172 - get_head_temp: function (tt) {  
1173 - var ee = this;  
1174 - if (ee.data.share_head) {  
1175 - tt();  
1176 - return false;  
1177 - }  
1178 - //---获取分享图片的本地地址,头像和商品图片----  
1179 - var path2 = getApp().globalData.userInfo.head_pic;  
1180 - if (path2 == "") {  
1181 - ee.data.share_head = "../../../../images/share/hui_hear_pic.png";  
1182 - tt();  
1183 - } else {  
1184 - path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn");  
1185 - path2 = path2.replace("https://thirdwx.qlogo.cn", "https://wx.qlogo.cn");  
1186 - wx.getImageInfo({  
1187 - src: path2,  
1188 - success: function (res) {  
1189 - //res.path是网络图片的本地地址  
1190 - console.log(res);  
1191 - ee.data.share_head = res.path;  
1192 - tt();  
1193 - },  
1194 - fail: function () {  
1195 - ee.data.share_head = "../../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的  
1196 - tt();  
1197 - }  
1198 - }); 1191 + //---通过接口获取门店的线下库存信息--
  1192 + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
  1193 + data: dw_rq
  1194 + }).then(res => {
  1195 + if (ut.ajax_ok(res)) {
  1196 + plist = res.data.data.pageData[0];
1199 } 1197 }
1200 - },  
1201 -  
1202 - go_url: function (e) {  
1203 - var url = e.currentTarget.dataset.url;  
1204 - getApp().goto(url);  
1205 - },  
1206 -  
1207 - //-- 加入购物的函数 --  
1208 - add_cart_func: function () {  
1209 - if (oo.user_id == null) {  
1210 - this.data.changing = 0;  
1211 - return getApp().my_warnning("还未登录!", 0, this);  
1212 - }  
1213 - if (!getApp().globalData.userInfo) {  
1214 - this.data.changing = 0;  
1215 - return getApp().my_warnning("还未登录!", 0, this); 1198 + })
  1199 +
  1200 + if (!plist) {
  1201 + if (!is_no_msg) {
  1202 + wx.showToast({
  1203 + title: "该商品在门店未找到库存",
  1204 + icon: 'none',
  1205 + duration: 2000
  1206 + })
1216 } 1207 }
  1208 + return false;
  1209 + }
1217 1210
1218 - var e = this,  
1219 - th = e,  
1220 - o = this.data.sele_g,  
1221 - a = o.goods_id;  
1222 -  
1223 - //----------添加到购物车时,要判断限购数量,--------  
1224 - e.get_buy_num(o, function (ee) {  
1225 - //---判断商品是否超出限购---  
1226 - if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {  
1227 - if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id).gd_buynum > th.data.sele_g.viplimited) {  
1228 - wx.showModal({  
1229 - title: '提示',  
1230 - content: '超出商品限购'  
1231 - });  
1232 - th.data.changing = 0;  
1233 - return false;  
1234 - }  
1235 - if (th.data.s_cart_num) {  
1236 - if (th.data.s_cart_num + th.data.g_buy_num.get(th.data.sele_g.goods_id).gd_buynum > th.data.sele_g.viplimited) {  
1237 - wx.showModal({  
1238 - title: '提示',  
1239 - content: '超出商品限购'  
1240 - });  
1241 - th.data.changing = 0;  
1242 - return false;  
1243 - }  
1244 - } 1211 + var lock_num = th.find_lock_num(pickup_id, lock);
  1212 + this.data.sales_map[good.goods_id] = {
  1213 + CanOutQty: plist.CanOutQty,
  1214 + lock_num: lock_num
  1215 + }
1245 1216
1246 - }  
1247 - //---判断商品是否超出活动限购---  
1248 - if (th.data.sele_g.buyqty > 0) {  
1249 - if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id).prom_buybum > th.data.sele_g.buyqty) {  
1250 - wx.showModal({  
1251 - title: '提示',  
1252 - content: '超出商品活动限购'  
1253 - });  
1254 - th.data.changing = 0;  
1255 - return false;  
1256 - }  
1257 - } 1217 + if (plist.CanOutQty < lock_num + buy_num) {
  1218 + if (!is_no_msg) {
  1219 + wx.showToast({
  1220 + title: "该商品在门店未找到库存",
  1221 + icon: 'none',
  1222 + duration: 2000
  1223 + })
  1224 + }
  1225 + return false;
  1226 + }
  1227 + if (is_no_msg) return true;
  1228 + func();
  1229 + }
1258 1230
1259 - if (th.data.goodsInputNum <= 0) {  
1260 - this.data.changing = 0;  
1261 - return s.my_warnning("商品数量不能为0", 0, th);  
1262 - }  
1263 - if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)  
1264 - th.setData({  
1265 - sto_sele_name: ""  
1266 - });  
1267 - if (th.data.sto_sele_name == "") {  
1268 - th.data.changing = 0;  
1269 - return s.my_warnning("请选择门店", 0, th);  
1270 - } 1231 + },
1271 1232
1272 - //--------------此时操作的数据------------  
1273 - var newd = {  
1274 - goods_id: o.goods_id,  
1275 - goods_num: th.data.goodsInputNum,  
1276 - pick_id: th.data.sto_sele_id,  
1277 - user_id: oo.user_id,  
1278 - store_id: os.stoid,  
1279 - goods_price: o.shop_price,  
1280 - member_goods_price: o.shop_price,  
1281 - goods_name: o.goods_name,  
1282 - goods_sn: o.goods_sn,  
1283 - }; 1233 + find_lock_num(pick_id, lock) {
  1234 + var lock_num = 0;
  1235 + if (!lock) return 0;
  1236 + if (lock.length < 0) return 0;
  1237 + for (var i in lock) {
  1238 + if (pick_id == lock[i].pickupId) {
  1239 + lock_num += lock[i].outQty;
  1240 + }
  1241 + }
  1242 + return lock_num;
  1243 + },
  1244 +
  1245 +
  1246 + /**
  1247 + * 增加数量
  1248 + */
  1249 + add(e) {
  1250 +
  1251 + if (this.data.userbuynum) {
  1252 + wx.showToast({
  1253 + title: '你已超出该活动购买次数!',
  1254 + icon: 'none',
  1255 + duration: 2000
  1256 + })
  1257 + return
  1258 + }
1284 1259
1285 - if (th.data.s_cart_num) {  
1286 - newd.goods_num = th.data.s_cart_num;  
1287 - } 1260 + var th = this;
  1261 + var userInfo = getApp().globalData.userInfo;
  1262 + if (!userInfo) {
  1263 + getApp().goto("/packageE/pages/togoin/togoin");
  1264 + return false;
  1265 + }
1288 1266
1289 - //---是不是从收藏夹出来的---  
1290 - if (th.data.c_guide_id) {  
1291 - newd['guide_id'] = th.data.c_guide_id;  
1292 - newd['guide_type'] = 2;  
1293 - newd['guide_type'] = 3;  
1294 - } else {  
1295 - if (getApp().globalData.guide_id) {  
1296 - newd['guide_id'] = getApp().globalData.guide_id;  
1297 - newd['guide_type'] = 0;  
1298 - newd['guide_type'] = 1;  
1299 - }  
1300 - } 1267 + if (this.data.changing) return false;
  1268 + this.data.changing = 1;
1301 1269
1302 - //让商品带上房间号  
1303 - if (th.data.sys_switch.is_skuroom_id == 1) {  
1304 - if (th.data.sele_g.goods_id == getApp().globalData.room_goods_id) {  
1305 - newd.room_id = getApp().globalData.room_id;  
1306 - }  
1307 - } else {  
1308 - if (newd.goods_id == getApp().globalData.room_goods_id) newd.room_id = getApp().globalData.room_id;  
1309 - } 1270 + var index = e.currentTarget.dataset.index;
  1271 + this.data.sele_g = th.data.list[index];
  1272 + this.data.sele_index = index;
  1273 + th.data.goodsInputNum = th.data.sele_g.num + 1;
1310 1274
1311 - if (o.store_count <= 0) {  
1312 - th.data.changing = 0;  
1313 - return getApp().my_warnning("库存已为空!", 0, th);  
1314 - }  
1315 - if (o.store_count < e.data.goodsInputNum) {  
1316 - th.data.changing = 0;  
1317 - return getApp().my_warnning("库存不足!", 0, th);  
1318 - }  
1319 - th.add_cart_next(o, newd); //加入购物车下一步 1275 + //必须是组合购买的超量
  1276 + var is_zhqty = 0;
  1277 + if (th.data.goodsInputNum < th.data.sele_g.zhqty) {
  1278 + th.data.goodsInputNum = th.data.sele_g.zhqty;
  1279 + is_zhqty = 1;
  1280 + }
  1281 +
  1282 + th.check_pk_store_conut(function () {
  1283 + if (th.data.sele_g.cart_num) {
  1284 + th.data.s_cart_num = th.data.sele_g.cart_num + 1;
  1285 + if (is_zhqty) th.data.s_cart_num = th.data.sele_g.zhqty;
  1286 + }
  1287 + th.add_cart_func();
  1288 + })
  1289 +
  1290 + },
  1291 +
  1292 + /**
  1293 + * 减少数量
  1294 + */
  1295 + sub(e) {
  1296 + var userInfo = getApp().globalData.userInfo;
  1297 + if (!userInfo) {
  1298 + getApp().goto("/packageE/pages/togoin/togoin");
  1299 + return false;
  1300 + }
1320 1301
  1302 + var th = this;
  1303 + var index = e.currentTarget.dataset.index;
  1304 + var item = this.data.list[index];
  1305 + this.data.sele_g = item;
  1306 + let num = item.num;
  1307 + th.data.s_cart_num = item.cart_num - 1;
  1308 +
  1309 + if (num >= 2) {
  1310 + var check_num = num - 1;
  1311 + //小于起购数
  1312 + if (check_num < item.zhqty) {
  1313 + wx.showToast({
  1314 + title: "该商品至少要购买" + item.zhqty + "件",
  1315 + icon: 'none',
  1316 + duration: 2000
1321 }) 1317 })
1322 - },  
1323 -  
1324 - //---加入购物车的最后一步---  
1325 - add_cart_next(o, newd) {  
1326 - var th = this;  
1327 - //如果会员有等级价  
1328 - if (th.data.card_field) {  
1329 - var card_price = o[th.data.card_field];  
1330 - if (card_price > 0) {  
1331 - newd.goods_price = card_price;  
1332 - newd.member_goods_price = card_price;  
1333 - }  
1334 - } 1318 + return false;
  1319 + }
1335 1320
1336 - var index = this.data.sele_index;  
1337 - var txt = "list[" + index + "].haveAdded";  
1338 - var txt1 = "list[" + index + "].num";  
1339 - var txt2 = "list[" + index + "].showNum";  
1340 - var txt3 = "list[" + index + "].current_price"; 1321 + if (th.data.changing) return false;
  1322 + th.data.changing = 1;
  1323 + th.data.sele_g = item;
  1324 + th.data.sele_index = index;
  1325 + th.data.goodsInputNum = check_num;
1341 1326
  1327 + th.sub_updata_cart();
  1328 + return false;
  1329 + }
1342 1330
1343 - newd.prom_type = 7;  
1344 - newd.prom_id = th.data.act.id; 1331 + var txt = "list[" + index + "].haveAdded";
  1332 + var txt1 = "list[" + index + "].num";
  1333 + var txt2 = "list[" + index + "].showNum";
1345 1334
1346 - if (th.data.adding) return false;  
1347 - th.data.adding = 1;  
1348 - //-------如果购物车中有相关的数据---------  
1349 - if (th.data.list[index].num > 0) {  
1350 - var item = th.data.sele_g;  
1351 - if (th.data.goodsInputNum > o.store_count) {  
1352 - th.data.adding = 0;  
1353 - return getApp().my_warnning("库存不足!", 0, th);  
1354 - }  
1355 - if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id).prom_buybum > o.buyqty && o.buyqty > 0) {  
1356 - th.data.adding = 0;  
1357 - return getApp().my_warnning("超出商品活动限购!", 0, th);  
1358 - }  
1359 - if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id).prom_buybum > th.data.sele_g.viplimited &&  
1360 - th.data.sele_g.viplimited > 0  
1361 - ) {  
1362 - th.data.adding = 0;  
1363 - return getApp().my_warnning("超出商品限购!", 0, th);  
1364 - } 1335 + wx.showModal({
  1336 + title: '温馨提示',
  1337 + content: '确定取消该商品参与活动?',
  1338 + success(res) {
  1339 + if (res.confirm) {
1365 1340
1366 - //如果商品没有其他活动,要取一下线下价格 1341 + if (th.data.s_cart_num) {
1367 var updata = { 1342 var updata = {
1368 - id: item.cart_id,  
1369 - goods_num: th.data.goodsInputNum,  
1370 - goods_price: newd.goods_price,  
1371 - member_goods_price: newd.goods_price,  
1372 - store_id: os.stoid,  
1373 - state:0  
1374 - };  
1375 - if (th.data.s_cart_num) {  
1376 - updata.goods_num = th.data.s_cart_num;  
1377 - }  
1378 - //---是不是从收藏夹出来的---  
1379 - if (th.data.c_guide_id) {  
1380 - updata['guide_id'] = th.data.c_guide_id;  
1381 - updata['guide_type'] = 3; //加入购物车之后就变成了3  
1382 - } else {  
1383 - if (getApp().globalData.guide_id) {  
1384 - updata['guide_id'] = getApp().globalData.guide_id;  
1385 - updata['guide_type'] = 0;  
1386 - } 1343 + id: th.data.sele_g.cart_id,
  1344 + goods_num: th.data.s_cart_num,
  1345 + store_id: os.stoid
1387 } 1346 }
1388 getApp().request.put("/api/weshop/cart/update", { 1347 getApp().request.put("/api/weshop/cart/update", {
1389 - data: updata,  
1390 - success: function (t) {  
1391 - th.setData({  
1392 - [txt1]: th.data.goodsInputNum,  
1393 - [txt2]: true,  
1394 - [txt]: true,  
1395 - [txt3]: newd.goods_price,  
1396 - });  
1397 - th.data.adding = 0;  
1398 - th.data.sele_store = 1;  
1399 -  
1400 - if (th.data.s_cart_num) {  
1401 - var txt_temp = "list[" + index + "].cart_num";  
1402 - th.setData({  
1403 - [txt_temp]: th.data.s_cart_num  
1404 - })  
1405 - }  
1406 -  
1407 - th.re_sum_price(); //重新统计数量和总金额 1348 + data: updata,
  1349 + success: function (rs) {
  1350 + if (rs.data.code == 0) {
  1351 + var title = '取消成功';
  1352 + th.setData({
  1353 + [txt1]: 0,
  1354 + [txt2]: false,
  1355 + [txt]: false,
  1356 + });
  1357 + wx.showToast({
  1358 + title: title,
  1359 + icon: 'success',
  1360 + });
  1361 + th.re_sum_price();
1408 } 1362 }
1409 - });  
1410 - } else {  
1411 -  
1412 - getApp().request.post("/api/weshop/cart/save", {  
1413 - data: newd,  
1414 - success: function (t) {  
1415 - if (t.data.code == 0) {  
1416 - var txt4 = "list[" + th.data.sele_index + "].cart_id";  
1417 - th.setData({  
1418 - [txt1]: newd.goods_num,  
1419 - [txt2]: true,  
1420 - [txt3]: newd.goods_price,  
1421 - [txt]: true,  
1422 - [txt4]: t.data.data.id,  
1423 - });  
1424 -  
1425 - th.data.adding = 0;  
1426 - th.data.sele_store = 1;  
1427 - th.re_sum_price(); //重新统计数量和总金额  
1428 - } 1363 + }
  1364 + })
  1365 + } else {
  1366 + var url = '/api/weshop/cart/del/' + os.stoid + '/' + item.cart_id;
  1367 + getApp().request.delete(url, {
  1368 + success: function (res) {
  1369 + if (res.data.code == 0) {
  1370 + var title = '移除购物车成功';
  1371 + th.setData({
  1372 + [txt1]: 0,
  1373 + [txt2]: false,
  1374 + [txt]: false,
  1375 + });
  1376 + wx.showToast({
  1377 + title: title,
  1378 + icon: 'success',
  1379 + });
  1380 + th.re_sum_price(); //重新统计数量和总金额
1429 } 1381 }
  1382 + }
1430 }); 1383 });
1431 - }  
1432 - },  
1433 -  
1434 - //等待获取配置  
1435 - wait_for_store_config: function (bconfig) {  
1436 - var th = this;  
1437 - var e = bconfig;  
1438 - if (e && e.is_sort_storage) {  
1439 - wx.getLocation({  
1440 - type: 'gcj02',  
1441 - success: function (res) {  
1442 - th.data.lat = res.latitude;  
1443 - th.data.lon = res.longitude;  
1444 - th.data.is_get_local_ok = 1;  
1445 - },  
1446 - fail: function (res) {  
1447 - if (res.errCode == 2) {  
1448 - th.setData({  
1449 - is_gps: 0  
1450 - });  
1451 - if (th.data.is_gps == 0) {  
1452 - getApp().confirmBox("请开启GPS定位", null, 10000, !1);  
1453 - } 1384 + }
1454 1385
1455 - } else {  
1456 - th.setData({  
1457 - is_gps: "3"  
1458 - });  
1459 - } 1386 + } else if (res.cancel) {
  1387 + console.log('用户点击取消')
  1388 + self.setData({
  1389 + haveAdded: true,
  1390 + });
  1391 + }
  1392 + }
  1393 + })
  1394 + return false;
  1395 +
  1396 + },
  1397 +
  1398 + /** 分享 **/
  1399 + share() {
  1400 + var th = this;
  1401 + var userInfo = getApp().globalData.userInfo;
  1402 + if (!userInfo) {
  1403 + getApp().goto("/packageE/pages/togoin/togoin");
  1404 + return false;
  1405 + }
  1406 + wx.showLoading();
  1407 + setTimeout(function () {
  1408 + th.setData({
  1409 + showMask: true,
  1410 + showPoster: true,
  1411 + });
  1412 + wx.hideLoading();
  1413 + }, 1000);
  1414 + },
  1415 +
  1416 + /**
  1417 + * 关闭海报
  1418 + */
  1419 + closePoster() {
  1420 + this.setData({
  1421 + showMask: false,
  1422 + showPoster: false,
  1423 + });
  1424 + },
  1425 +
  1426 + onImgOK(e) {
  1427 + console.log(e.detail.path);
  1428 + this.setData({
  1429 + myimg: e.detail.path,
  1430 + });
  1431 +
  1432 + },
  1433 +
  1434 + //---小于10的格式化函数----
  1435 + timeFormat(param) {
  1436 + return param < 10 ? '0' + param : param;
  1437 + },
  1438 +
  1439 + //----倒计时函数-----
  1440 + countDown() {
  1441 + if (!this.data.is_timer) return false;
  1442 + var th = this;
  1443 + // 获取当前时间,同时得到活动结束时间数组
  1444 + var endTime = this.data.act.end_time;
  1445 + var newTime = ut.gettimestamp();
  1446 + // 对结束时间进行处理渲染到页面
  1447 + var obj = null;
  1448 + // 如果活动未结束,对时间进行处理
  1449 + if (endTime - newTime > 0) {
  1450 + var time = (endTime - newTime);
  1451 + // 获取天、时、分、秒
  1452 + var day = parseInt(time / (60 * 60 * 24));
  1453 + var hou = parseInt(time % (60 * 60 * 24) / 3600);
  1454 + var min = parseInt(time % (60 * 60 * 24) % 3600 / 60);
  1455 + var sec = parseInt(time % (60 * 60 * 24) % 3600 % 60);
  1456 + obj = {
  1457 + hou: this.timeFormat(hou),
  1458 + min: this.timeFormat(min),
  1459 + sec: this.timeFormat(sec)
  1460 + }
  1461 + if (day > 0) {
  1462 + obj.day = this.timeFormat(day);
  1463 + }
  1464 + } else {
  1465 + //活动已结束,全部设置为'00'
  1466 + obj = {
  1467 + day: '00',
  1468 + hou: '00',
  1469 + min: '00',
  1470 + sec: '00'
  1471 + }
  1472 + th.setData({
  1473 + prom_time_text: '活动已经结束:',
  1474 + prom_st: 3
  1475 + })
  1476 + th.setData({
  1477 + djs: obj
  1478 + });
  1479 + return false;
  1480 + }
1460 1481
1461 - th.data.is_get_local_ok = 1;  
1462 - }  
1463 - })  
1464 - } else {  
1465 - th.data.is_get_local_ok = 1; 1482 + th.setData({
  1483 + djs: obj
  1484 + });
  1485 + setTimeout(function () {
  1486 + th.countDown()
  1487 + }, 1000);
  1488 + },
  1489 +
  1490 + close_all: function () {
  1491 + this.setData({
  1492 + showMask: false,
  1493 + showPoster: false,
  1494 + showRule: false
  1495 + });
  1496 + },
  1497 +
  1498 +
  1499 + //------定时等待某个值,有值才进行运算--------
  1500 + waitfor2: function (n, pop_value, func) {
  1501 + var th = this;
  1502 + if (n <= 0) {
  1503 + func()
  1504 + return false
  1505 + }
  1506 + if (th.data[pop_value]) {
  1507 + func();
  1508 + return false;
  1509 + }
  1510 + setTimeout(function () {
  1511 + --n;
  1512 + th.waitfor2(n, pop_value, func)
  1513 + }, 1000);
  1514 + },
  1515 +
  1516 + //--获取头像的本地缓存,回调写法--
  1517 + get_head_temp: function (tt) {
  1518 + var ee = this;
  1519 + if (ee.data.share_head) {
  1520 + tt();
  1521 + return false;
  1522 + }
  1523 + //---获取分享图片的本地地址,头像和商品图片----
  1524 + var path2 = getApp().globalData.userInfo.head_pic;
  1525 + if (path2 == "") {
  1526 + ee.data.share_head = "../../../../images/share/hui_hear_pic.png";
  1527 + tt();
  1528 + } else {
  1529 + path2 = path2.replace("http://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
  1530 + path2 = path2.replace("https://thirdwx.qlogo.cn", "https://wx.qlogo.cn");
  1531 + wx.getImageInfo({
  1532 + src: path2,
  1533 + success: function (res) {
  1534 + //res.path是网络图片的本地地址
  1535 + console.log(res);
  1536 + ee.data.share_head = res.path;
  1537 + tt();
  1538 + },
  1539 + fail: function () {
  1540 + ee.data.share_head = "../../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的
  1541 + tt();
1466 } 1542 }
1467 - },  
1468 -  
1469 - //--- 获取卡类列表 ---  
1470 - getPlusCardType: function (func) {  
1471 - var storid = os.stoid;  
1472 - var user = getApp().globalData.userInfo;  
1473 - if (!user) return false;  
1474 - getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid, {}).then(res => {  
1475 - var plusCard = res.data.data;  
1476 - var arr = [1219, 2089, 3031];  
1477 - var new_arr = new Array();  
1478 - var card_name_map = new Map();  
1479 -  
1480 - var list = [];  
1481 - for (var i = 0; i < plusCard.length; i++) {  
1482 - if ((!user || user.card_field == null || user.card_field == "") && plusCard[i].IsStopBuy == true) continue;  
1483 - var name = "card" + plusCard[i].CorrPrice.toLowerCase();  
1484 - card_name_map.set(name, plusCard[i].CardName);  
1485 - list.push(plusCard[i]);  
1486 - } 1543 + });
  1544 + }
  1545 + },
  1546 +
  1547 + go_url: function (e) {
  1548 + var url = e.currentTarget.dataset.url;
  1549 + getApp().goto(url);
  1550 + },
  1551 +
  1552 + //-- 加入购物的函数 --
  1553 + add_cart_func: function () {
  1554 + if (oo.user_id == null) {
  1555 + this.data.changing = 0;
  1556 + return getApp().my_warnning("还未登录!", 0, this);
  1557 + }
  1558 + if (!getApp().globalData.userInfo) {
  1559 + this.data.changing = 0;
  1560 + return getApp().my_warnning("还未登录!", 0, this);
  1561 + }
1487 1562
1488 - var ob = {  
1489 - "card_list": list,  
1490 - "name_map": card_name_map  
1491 - };  
1492 - func(ob);  
1493 - })  
1494 - },  
1495 -  
1496 -  
1497 - //--- 设置一下默认库存的数量 ----  
1498 - set_def_storage(ee) {  
1499 - var that = this;  
1500 - that.data.fir_def_store = ee;  
1501 - that.setData({  
1502 - def_pick_store: ee,  
1503 - sto_sele_name: ee.pickup_name,  
1504 - sto_sele_id: ee.pickup_id,  
1505 - sto_sele_distr: ee.distr_type  
1506 - })  
1507 - },  
1508 -  
1509 - //---------拿出门店分类和门店------------  
1510 - get_sto(e) {  
1511 - var th = this;  
1512 - this.waitfor2(15, 'is_get_local_ok', function () {  
1513 - //if (!th.data.sele_g) return false;  
1514 - var dd = null;  
1515 - var g_distr_type = 0;  
1516 - if (th.data.sele_g) g_distr_type = th.data.sele_g.distr_type;  
1517 - if (g_distr_type != 0) {  
1518 - dd = {  
1519 - store_id: os.stoid,  
1520 - distr_type: g_distr_type,  
1521 - isstop: 0,  
1522 - is_pos: 1,  
1523 - pageSize: 2000  
1524 - }  
1525 - } else {  
1526 - dd = {  
1527 - store_id: os.stoid,  
1528 - isstop: 0,  
1529 - is_pos: 1,  
1530 - pageSize: 2000  
1531 - }  
1532 - } 1563 + var e = this,
  1564 + th = e,
  1565 + o = this.data.sele_g,
  1566 + a = o.goods_id;
  1567 +
  1568 + //----------添加到购物车时,要判断限购数量,--------
  1569 + e.get_buy_num(o, function (ee) {
  1570 + //---判断商品是否超出限购---
  1571 + if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) {
  1572 + if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id).gd_buynum > th.data.sele_g.viplimited) {
  1573 + wx.showModal({
  1574 + title: '提示',
  1575 + content: '超出商品限购'
  1576 + });
  1577 + th.data.changing = 0;
  1578 + return false;
  1579 + }
  1580 + if (th.data.s_cart_num) {
  1581 + if (th.data.s_cart_num + th.data.g_buy_num.get(th.data.sele_g.goods_id).gd_buynum > th.data.sele_g.viplimited) {
  1582 + wx.showModal({
  1583 + title: '提示',
  1584 + content: '超出商品限购'
  1585 + });
  1586 + th.data.changing = 0;
  1587 + return false;
  1588 + }
  1589 + }
1533 1590
1534 - //如果有距离的话  
1535 - if (th.data.lat != null) {  
1536 - dd.lat = th.data.lat;  
1537 - dd.lon = th.data.lon;  
1538 - } 1591 + }
  1592 + //---判断商品是否超出活动限购---
  1593 + if (th.data.sele_g.buyqty > 0) {
  1594 + if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id).prom_buybum > th.data.sele_g.buyqty) {
  1595 + wx.showModal({
  1596 + title: '提示',
  1597 + content: '超出商品活动限购'
  1598 + });
  1599 + th.data.changing = 0;
  1600 + return false;
  1601 + }
  1602 + }
1539 1603
1540 - //如果会员是有默认的门店话  
1541 - if (!th.data.def_pick_store && th.data.fir_def_store) {  
1542 - th.setData({  
1543 - def_pick_store: th.data.fir_def_store  
1544 - });  
1545 - } 1604 + if (th.data.goodsInputNum <= 0) {
  1605 + this.data.changing = 0;
  1606 + return s.my_warnning("商品数量不能为0", 0, th);
  1607 + }
  1608 + if (th.data.sto_sele_name == null || th.data.sto_sele_name == undefined)
  1609 + th.setData({
  1610 + sto_sele_name: ""
  1611 + });
  1612 + if (th.data.sto_sele_name == "") {
  1613 + th.data.changing = 0;
  1614 + return s.my_warnning("请选择门店", 0, th);
  1615 + }
  1616 +
  1617 + //--------------此时操作的数据------------
  1618 + var newd = {
  1619 + goods_id: o.goods_id,
  1620 + goods_num: th.data.goodsInputNum,
  1621 + pick_id: th.data.sto_sele_id,
  1622 + user_id: oo.user_id,
  1623 + store_id: os.stoid,
  1624 + goods_price: o.shop_price,
  1625 + member_goods_price: o.shop_price,
  1626 + goods_name: o.goods_name,
  1627 + goods_sn: o.goods_sn,
  1628 + };
  1629 +
  1630 + if (th.data.s_cart_num) {
  1631 + newd.goods_num = th.data.s_cart_num;
  1632 + }
  1633 +
  1634 + //---是不是从收藏夹出来的---
  1635 + if (th.data.c_guide_id) {
  1636 + newd['guide_id'] = th.data.c_guide_id;
  1637 + newd['guide_type'] = 2;
  1638 + newd['guide_type'] = 3;
  1639 + } else {
  1640 + if (getApp().globalData.guide_id) {
  1641 + newd['guide_id'] = getApp().globalData.guide_id;
  1642 + newd['guide_type'] = 0;
  1643 + newd['guide_type'] = 1;
  1644 + }
  1645 + }
1546 1646
1547 - wx.showLoading({  
1548 - title: '加载中.'  
1549 - });  
1550 - //----------获取门店----------------  
1551 - getApp().request.promiseGet("/api/weshop/pickup/list", {  
1552 - data: dd,  
1553 - }).then(res => {  
1554 - var e = res;  
1555 - if (e.data.code == 0 && e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) {  
1556 -  
1557 - var his_cate_num = 0;  
1558 - for (let i in e.data.data.pageData) {  
1559 - let item = e.data.data.pageData[i];  
1560 - if (item.category_id > 0) {  
1561 - his_cate_num = 1;  
1562 - break;  
1563 - }  
1564 - }  
1565 - e.his_cate_num = his_cate_num;  
1566 -  
1567 - //如果有开启距离的功能,没有设置默认门店,要用最近的门店作为默认门店  
1568 - if (dd.lat && (!th.data.def_pick_store || JSON.stringify(th.data.def_pick_store) == '{}') && th.data.bconfig && th.data.bconfig.is_sort_storage) {  
1569 - th.setData({  
1570 - def_pick_store: e.data.data.pageData[0],  
1571 - sto_sele_name: e.data.data.pageData[0].pickup_name,  
1572 - sto_sele_id: e.data.data.pageData[0].pickup_id,  
1573 - sto_sele_distr: e.data.data.pageData[0].distr_type  
1574 - });  
1575 - th.data.fir_def_store = e.data.data.pageData[0];  
1576 - } 1647 + //让商品带上房间号
  1648 + if (th.data.sys_switch.is_skuroom_id == 1) {
  1649 + if (th.data.sele_g.goods_id == getApp().globalData.room_goods_id) {
  1650 + newd.room_id = getApp().globalData.room_id;
  1651 + }
  1652 + } else {
  1653 + if (newd.goods_id == getApp().globalData.room_goods_id) newd.room_id = getApp().globalData.room_id;
  1654 + }
  1655 +
  1656 + if (o.store_count <= 0) {
  1657 + th.data.changing = 0;
  1658 + return getApp().my_warnning("库存已为空!", 0, th);
  1659 + }
  1660 + if (o.store_count < e.data.goodsInputNum) {
  1661 + th.data.changing = 0;
  1662 + return getApp().my_warnning("库存不足!", 0, th);
  1663 + }
  1664 + th.add_cart_next(o, newd); //加入购物车下一步
  1665 +
  1666 + })
  1667 + },
  1668 +
  1669 + //---加入购物车的最后一步---
  1670 + add_cart_next(o, newd) {
  1671 + var th = this;
  1672 + //如果会员有等级价
  1673 + if (th.data.card_field) {
  1674 + var card_price = o[th.data.card_field];
  1675 + if (card_price > 0) {
  1676 + newd.goods_price = card_price;
  1677 + newd.member_goods_price = card_price;
  1678 + }
  1679 + }
1577 1680
1578 - //-- 如果有默认选择门店的时候,要把默认门店放在第一位,修改不要配送方式的判断 --  
1579 - if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}') {  
1580 - for (var k = 0; k < e.data.data.pageData.length; k++) {  
1581 - if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) {  
1582 - e.data.data.pageData.splice(k, 1); //删除  
1583 - break;  
1584 - }  
1585 - }  
1586 - e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加  
1587 - } 1681 + var index = this.data.sele_index;
  1682 + var txt = "list[" + index + "].haveAdded";
  1683 + var txt1 = "list[" + index + "].num";
  1684 + var txt2 = "list[" + index + "].showNum";
  1685 + var txt3 = "list[" + index + "].current_price";
  1686 +
  1687 +
  1688 + newd.prom_type = 7;
  1689 + newd.prom_id = th.data.act.id;
  1690 +
  1691 + if (th.data.adding) return false;
  1692 + th.data.adding = 1;
  1693 + //-------如果购物车中有相关的数据---------
  1694 + if (th.data.list[index].num > 0) {
  1695 + var item = th.data.sele_g;
  1696 + if (th.data.goodsInputNum > o.store_count) {
  1697 + th.data.adding = 0;
  1698 + return getApp().my_warnning("库存不足!", 0, th);
  1699 + }
  1700 + if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id).prom_buybum > o.buyqty && o.buyqty > 0) {
  1701 + th.data.adding = 0;
  1702 + return getApp().my_warnning("超出商品活动限购!", 0, th);
  1703 + }
  1704 + if (th.data.goodsInputNum + th.data.g_buy_num.get(th.data.sele_g.goods_id).prom_buybum > th.data.sele_g.viplimited &&
  1705 + th.data.sele_g.viplimited > 0
  1706 + ) {
  1707 + th.data.adding = 0;
  1708 + return getApp().my_warnning("超出商品限购!", 0, th);
  1709 + }
  1710 +
  1711 + //如果商品没有其他活动,要取一下线下价格
  1712 + var updata = {
  1713 + id: item.cart_id,
  1714 + goods_num: th.data.goodsInputNum,
  1715 + goods_price: newd.goods_price,
  1716 + member_goods_price: newd.goods_price,
  1717 + store_id: os.stoid,
  1718 + state: 0
  1719 + };
  1720 + if (th.data.s_cart_num) {
  1721 + updata.goods_num = th.data.s_cart_num;
  1722 + }
  1723 + //---是不是从收藏夹出来的---
  1724 + if (th.data.c_guide_id) {
  1725 + updata['guide_id'] = th.data.c_guide_id;
  1726 + updata['guide_type'] = 3; //加入购物车之后就变成了3
  1727 + } else {
  1728 + if (getApp().globalData.guide_id) {
  1729 + updata['guide_id'] = getApp().globalData.guide_id;
  1730 + updata['guide_type'] = 0;
  1731 + }
  1732 + }
  1733 + getApp().request.put("/api/weshop/cart/update", {
  1734 + data: updata,
  1735 + success: function (t) {
  1736 + th.setData({
  1737 + [txt1]: th.data.goodsInputNum,
  1738 + [txt2]: true,
  1739 + [txt]: true,
  1740 + [txt3]: newd.goods_price,
  1741 + });
  1742 + th.data.adding = 0;
  1743 + th.data.sele_store = 1;
1588 1744
1589 - th.setData({  
1590 - all_pick_list: e.data.data.pageData  
1591 - });  
1592 - th.deal_pickup(e);  
1593 - } 1745 + if (th.data.s_cart_num) {
  1746 + var txt_temp = "list[" + index + "].cart_num";
  1747 + th.setData({
  1748 + [txt_temp]: th.data.s_cart_num
1594 }) 1749 })
1595 - })  
1596 - },  
1597 - //------------处理门店---------------  
1598 - deal_pickup(e) {  
1599 - var th = this;  
1600 - wx.hideLoading();  
1601 - //单总量超出5个的时候  
1602 - if (e.data.data.total > 10 && e.his_cate_num) {  
1603 - getApp().request.get("/api/weshop/storagecategory/page", {  
1604 - data: {  
1605 - store_id: os.stoid,  
1606 - pageSize: 1000,  
1607 - orderField: "sort",  
1608 - orderType: 'asc',  
1609 - },  
1610 - success: function (ee) {  
1611 - if (ee.data.code == 0) {  
1612 -  
1613 - var check_all_cate = 0;  
1614 - if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {  
1615 - for (let i in ee.data.data.pageData) {  
1616 - let item = ee.data.data.pageData[i];  
1617 - if (item.is_show == 1) {  
1618 - check_all_cate = 1;  
1619 - break  
1620 - }  
1621 - }  
1622 - } 1750 + }
1623 1751
1624 - if (check_all_cate) {  
1625 -  
1626 - var sto_cate = ee.data.data.pageData;  
1627 - var sto_arr = e.data.data.pageData;  
1628 - var newarr = new Array();  
1629 - var qita = new Array();  
1630 -  
1631 - var is_del_pk = 0;  
1632 - //----要进行门店分组--------  
1633 - for (var i = 0; i < sto_arr.length; i++) {  
1634 - //找一下这个门店有没有在分类数组内  
1635 - var find2 = 0,  
1636 - find2name = "",  
1637 - sort = 0;  
1638 - is_del_pk = 0;  
1639 - for (var m = 0; m < sto_cate.length; m++) {  
1640 - if (sto_arr[i].category_id == sto_cate[m].cat_id) {  
1641 - if (sto_cate[m].is_show != 1) {  
1642 - is_del_pk = 1;  
1643 - sto_arr.splice(i, 1);  
1644 - i--;  
1645 - } else {  
1646 - find2 = sto_cate[m].cat_id;  
1647 - find2name = sto_cate[m].cat_name;  
1648 - sort = sto_cate[m].sort;  
1649 - is_del_pk = 0;  
1650 - }  
1651 - break;  
1652 - }  
1653 - }  
1654 - if (is_del_pk) continue;  
1655 -  
1656 - if (newarr.length > 0) {  
1657 - var find = 0;  
1658 - //如果有找到,那门店就在这个分组内,否则,分类就要排在其他  
1659 - if (find2 != 0) {  
1660 - for (var ii = 0; ii < newarr.length; ii++) {  
1661 - if (sto_arr[i].category_id == newarr[ii].cat_id) {  
1662 - newarr[ii].s_arr.push(sto_arr[i]);  
1663 - find = 1;  
1664 - break;  
1665 - }  
1666 - }  
1667 - if (find == 0) {  
1668 - var arr0 = new Array();  
1669 - arr0.push(sto_arr[i]);  
1670 - var item = {  
1671 - cat_id: find2,  
1672 - name: find2name,  
1673 - sort: sort,  
1674 - s_arr: arr0  
1675 - };  
1676 - newarr.push(item);  
1677 - }  
1678 - } else {  
1679 - qita.push(sto_arr[i]);  
1680 - }  
1681 - } else {  
1682 - //如果有找到,那门店就在这个分组内,否则,分类就要排在其他  
1683 - if (find2 != 0) {  
1684 - var arr0 = new Array();  
1685 - arr0.push(sto_arr[i]);  
1686 - var item = {  
1687 - cat_id: find2,  
1688 - name: find2name,  
1689 - sort: sort,  
1690 - s_arr: arr0  
1691 - };  
1692 - newarr.push(item);  
1693 - } else {  
1694 - qita.push(sto_arr[i]);  
1695 - }  
1696 - }  
1697 - }  
1698 -  
1699 - var def_arr = new Array();  
1700 - //-- 开始就看10个门店 --  
1701 - for (var k = 0; k < 10; k++) {  
1702 - if (k == sto_arr.length) break;  
1703 - def_arr.push(sto_arr[k]);  
1704 - }  
1705 -  
1706 - th.setData({  
1707 - def_pickpu_list: def_arr,  
1708 - pickpu_list: ee.data.data.pageData  
1709 - });  
1710 -  
1711 - //门店分类要排序下  
1712 - function compare(property) {  
1713 - return function (a, b) {  
1714 - var value1 = a[property];  
1715 - var value2 = b[property];  
1716 - return value1 - value2;  
1717 - }  
1718 - }  
1719 -  
1720 - if (newarr.length > 0)  
1721 - newarr.sort(compare("sort"));  
1722 - //----安排其他的分类-----  
1723 - if (qita.length > 0) {  
1724 - var item = {  
1725 - cat_id: -1,  
1726 - name: "其他",  
1727 - s_arr: qita  
1728 - };  
1729 - newarr.push(item);  
1730 - }  
1731 -  
1732 -  
1733 - var sd = {  
1734 - all_sto: newarr,  
1735 - is_show_sto_cat: 1  
1736 - }  
1737 - if (!sto_arr || sto_arr.length <= 10) {  
1738 - sd.is_show_sto_cat = -1;  
1739 - sd.only_pk = sto_arr;  
1740 - }  
1741 - th.setData(sd);  
1742 -  
1743 - } else {  
1744 - th.setData({  
1745 - is_show_sto_cat: -1,  
1746 - only_pk: e.data.data.pageData  
1747 - });  
1748 - //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------  
1749 - if (!th.data.def_pick_store) {  
1750 - th.setData({  
1751 - def_pick_store: e.data.data.pageData[0]  
1752 - })  
1753 - }  
1754 - }  
1755 - } else {  
1756 - th.setData({  
1757 - is_show_sto_cat: -1,  
1758 - only_pk: e.data.data.pageData  
1759 - });  
1760 - //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------  
1761 - if (!th.data.def_pick_store) {  
1762 - th.setData({  
1763 - def_pick_store: e.data.data.pageData[0]  
1764 - })  
1765 - }  
1766 - }  
1767 - }  
1768 - });  
1769 - } else { 1752 + th.re_sum_price(); //重新统计数量和总金额
  1753 + }
  1754 + });
  1755 + } else {
  1756 +
  1757 + getApp().request.post("/api/weshop/cart/save", {
  1758 + data: newd,
  1759 + success: function (t) {
  1760 + if (t.data.code == 0) {
  1761 + var txt4 = "list[" + th.data.sele_index + "].cart_id";
1770 th.setData({ 1762 th.setData({
1771 - is_show_sto_cat: 0,  
1772 - only_pk: e.data.data.pageData 1763 + [txt1]: newd.goods_num,
  1764 + [txt2]: true,
  1765 + [txt3]: newd.goods_price,
  1766 + [txt]: true,
  1767 + [txt4]: t.data.data.id,
1773 }); 1768 });
1774 - //-----如果没有默认门店,要取第一个门店作为默认店------  
1775 - if (!th.data.def_pick_store && th.data.bconfig && th.data.bconfig.is_sort_storage) {  
1776 - if (e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) {  
1777 - th.setData({  
1778 - def_pick_store: e.data.data.pageData[0],  
1779 - sto_sele_name: e.data.data.pageData[0].pickup_name,  
1780 - sto_sele_id: e.data.data.pageData[0].pickup_id,  
1781 - sto_sele_distr: e.data.data.pageData[0].distr_type  
1782 - })  
1783 - }  
1784 - }  
1785 - }  
1786 - },  
1787 -  
1788 - //---选择分类门店---  
1789 - choice_sort_store: function (e) {  
1790 - var index = e.currentTarget.dataset.index;  
1791 - var region_name = e.currentTarget.dataset.region;  
1792 - var item = this.data.all_sto[index];  
1793 - this.setData({  
1794 - region_name: region_name,  
1795 - sort_store: 0,  
1796 - choice_sort_store: 1,  
1797 - sec_sto: item,  
1798 - sec_pick_index: 0  
1799 - });  
1800 - },  
1801 1769
1802 - choose_for_store_fir: function (e) {  
1803 - var index_c = e.currentTarget.dataset.ind;  
1804 - var th = this;  
1805 - th.setData({  
1806 - fir_pick_index: index_c  
1807 - })  
1808 - },  
1809 -  
1810 - //确定def_pick为选择的门店  
1811 - sure_pick: function (e) {  
1812 - var th = this;  
1813 - var item = null;  
1814 - var openindstore = th.data.open_ind_store;  
1815 -  
1816 - if (th.data.choice_sort_store == 0) {  
1817 - var index = th.data.fir_pick_index;  
1818 - if (th.data.is_show_sto_cat == 1) {  
1819 - item = th.data.def_pickpu_list[index];  
1820 - } else {  
1821 - item = th.data.only_pk?th.data.only_pk[index]:null; //当没有门店分类的时候  
1822 - }  
1823 - } else {  
1824 - var index = th.data.sec_pick_index;  
1825 - item = th.data.sec_sto.s_arr[index]; 1770 + th.data.adding = 0;
  1771 + th.data.sele_store = 1;
  1772 + th.re_sum_price(); //重新统计数量和总金额
  1773 + }
1826 } 1774 }
  1775 + });
  1776 + }
  1777 + },
  1778 +
  1779 + //等待获取配置
  1780 + wait_for_store_config: function (bconfig) {
  1781 + var th = this;
  1782 + var e = bconfig;
  1783 + if (e && e.is_sort_storage) {
  1784 + wx.getLocation({
  1785 + type: 'gcj02',
  1786 + success: function (res) {
  1787 + th.data.lat = res.latitude;
  1788 + th.data.lon = res.longitude;
  1789 + th.data.is_get_local_ok = 1;
  1790 + },
  1791 + fail: function (res) {
  1792 + if (res.errCode == 2) {
  1793 + th.setData({
  1794 + is_gps: 0
  1795 + });
  1796 + if (th.data.is_gps == 0) {
  1797 + getApp().confirmBox("请开启GPS定位", null, 10000, !1);
  1798 + }
1827 1799
1828 - if(!item) return false;  
1829 -  
1830 - //判断门店的配送方式是不是匹配  
1831 - var g_distr_type = 0;  
1832 - if (th.data.sele_g)  
1833 - g_distr_type = th.data.sele_g.distr_type;  
1834 - if (item.distr_type != 0 && g_distr_type != 0 && item.distr_type != g_distr_type) {  
1835 - wx.showToast({  
1836 - title: "门店配送方式不匹配",  
1837 - icon: 'none',  
1838 - duration: 2000 1800 + } else {
  1801 + th.setData({
  1802 + is_gps: "3"
1839 }); 1803 });
1840 - return false; 1804 + }
  1805 +
  1806 + th.data.is_get_local_ok = 1;
  1807 + }
  1808 + })
  1809 + } else {
  1810 + th.data.is_get_local_ok = 1;
  1811 + }
  1812 + },
  1813 +
  1814 + //--- 获取卡类列表 ---
  1815 + getPlusCardType: function (func) {
  1816 + var storid = os.stoid;
  1817 + var user = getApp().globalData.userInfo;
  1818 + if (!user) return false;
  1819 + getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?" + "storeId=" + storid, {}).then(res => {
  1820 + var plusCard = res.data.data;
  1821 + var arr = [1219, 2089, 3031];
  1822 + var new_arr = new Array();
  1823 + var card_name_map = new Map();
  1824 +
  1825 + var list = [];
  1826 + for (var i = 0; i < plusCard.length; i++) {
  1827 + if ((!user || user.card_field == null || user.card_field == "") && plusCard[i].IsStopBuy == true) continue;
  1828 + var name = "card" + plusCard[i].CorrPrice.toLowerCase();
  1829 + card_name_map.set(name, plusCard[i].CardName);
  1830 + list.push(plusCard[i]);
  1831 + }
  1832 +
  1833 + var ob = {
  1834 + "card_list": list,
  1835 + "name_map": card_name_map
  1836 + };
  1837 + func(ob);
  1838 + })
  1839 + },
  1840 +
  1841 +
  1842 + //--- 设置一下默认库存的数量 ----
  1843 + set_def_storage(ee) {
  1844 + var that = this;
  1845 + that.data.fir_def_store = ee;
  1846 + that.setData({
  1847 + def_pick_store: ee,
  1848 + sto_sele_name: ee.pickup_name,
  1849 + sto_sele_id: ee.pickup_id,
  1850 + sto_sele_distr: ee.distr_type
  1851 + })
  1852 + },
  1853 +
  1854 + //---------拿出门店分类和门店------------
  1855 + get_sto(e) {
  1856 + var th = this;
  1857 + this.waitfor2(15, 'is_get_local_ok', function () {
  1858 + //if (!th.data.sele_g) return false;
  1859 + var dd = null;
  1860 + var g_distr_type = 0;
  1861 + if (th.data.sele_g) g_distr_type = th.data.sele_g.distr_type;
  1862 + if (g_distr_type != 0) {
  1863 + dd = {
  1864 + store_id: os.stoid,
  1865 + distr_type: g_distr_type,
  1866 + isstop: 0,
  1867 + is_pos: 1,
  1868 + pageSize: 2000
  1869 + }
  1870 + } else {
  1871 + dd = {
  1872 + store_id: os.stoid,
  1873 + isstop: 0,
  1874 + is_pos: 1,
  1875 + pageSize: 2000
1841 } 1876 }
  1877 + }
1842 1878
  1879 + //如果有距离的话
  1880 + if (th.data.lat != null) {
  1881 + dd.lat = th.data.lat;
  1882 + dd.lon = th.data.lon;
  1883 + }
  1884 +
  1885 + //如果会员是有默认的门店话
  1886 + if (!th.data.def_pick_store && th.data.fir_def_store) {
1843 th.setData({ 1887 th.setData({
1844 - def_pick_store: item,  
1845 - sto_sele_name: item.pickup_name,  
1846 - sto_sele_id: item.pickup_id,  
1847 - sto_sele_distr: item.distr_type,  
1848 - store: 0,  
1849 - choice_sort_store: 0,  
1850 - fir_pick_index: 0,  
1851 - sort_store: 0 1888 + def_pick_store: th.data.fir_def_store
1852 }); 1889 });
  1890 + }
1853 1891
1854 - //只是单纯的选择门店  
1855 - if (this.data.only) {  
1856 - this.data.only = 0;  
1857 - this.data.sales_map={}; 1892 + wx.showLoading({
  1893 + title: '加载中.'
  1894 + });
  1895 + //----------获取门店----------------
  1896 + getApp().request.promiseGet("/api/weshop/pickup/list", {
  1897 + data: dd,
  1898 + }).then(res => {
  1899 + var e = res;
  1900 + if (e.data.code == 0 && e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) {
  1901 +
  1902 + var his_cate_num = 0;
  1903 + for (let i in e.data.data.pageData) {
  1904 + let item = e.data.data.pageData[i];
  1905 + if (item.category_id > 0) {
  1906 + his_cate_num = 1;
  1907 + break;
  1908 + }
  1909 + }
  1910 + e.his_cate_num = his_cate_num;
1858 1911
1859 - return false; 1912 + //如果有开启距离的功能,没有设置默认门店,要用最近的门店作为默认门店
  1913 + if (dd.lat && (!th.data.def_pick_store || JSON.stringify(th.data.def_pick_store) == '{}') && th.data.bconfig && th.data.bconfig.is_sort_storage) {
  1914 + th.setData({
  1915 + def_pick_store: e.data.data.pageData[0],
  1916 + sto_sele_name: e.data.data.pageData[0].pickup_name,
  1917 + sto_sele_id: e.data.data.pageData[0].pickup_id,
  1918 + sto_sele_distr: e.data.data.pageData[0].distr_type
  1919 + });
  1920 + th.data.fir_def_store = e.data.data.pageData[0];
  1921 + }
  1922 +
  1923 + //-- 如果有默认选择门店的时候,要把默认门店放在第一位,修改不要配送方式的判断 --
  1924 + if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}') {
  1925 + for (var k = 0; k < e.data.data.pageData.length; k++) {
  1926 + if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) {
  1927 + e.data.data.pageData.splice(k, 1); //删除
  1928 + break;
  1929 + }
  1930 + }
  1931 + e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加
  1932 + }
  1933 +
  1934 + th.setData({
  1935 + all_pick_list: e.data.data.pageData
  1936 + });
  1937 + th.deal_pickup(e);
1860 } 1938 }
  1939 + })
  1940 + })
  1941 + },
  1942 + //------------处理门店---------------
  1943 + deal_pickup(e) {
  1944 + var th = this;
  1945 + wx.hideLoading();
  1946 + //单总量超出5个的时候
  1947 + if (e.data.data.total > 10 && e.his_cate_num) {
  1948 + getApp().request.get("/api/weshop/storagecategory/page", {
  1949 + data: {
  1950 + store_id: os.stoid,
  1951 + pageSize: 1000,
  1952 + orderField: "sort",
  1953 + orderType: 'asc',
  1954 + },
  1955 + success: function (ee) {
  1956 + if (ee.data.code == 0) {
  1957 +
  1958 + var check_all_cate = 0;
  1959 + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {
  1960 + for (let i in ee.data.data.pageData) {
  1961 + let item = ee.data.data.pageData[i];
  1962 + if (item.is_show == 1) {
  1963 + check_all_cate = 1;
  1964 + break
  1965 + }
  1966 + }
  1967 + }
1861 1968
1862 - //-- 判断一下库存 --  
1863 - th.check_pk_store_conut(function(){  
1864 - th.check_is_in_cart(function () {  
1865 - th.add_cart_func();  
1866 - })  
1867 - }) 1969 + if (check_all_cate) {
  1970 +
  1971 + var sto_cate = ee.data.data.pageData;
  1972 + var sto_arr = e.data.data.pageData;
  1973 + var newarr = new Array();
  1974 + var qita = new Array();
  1975 +
  1976 + var is_del_pk = 0;
  1977 + //----要进行门店分组--------
  1978 + for (var i = 0; i < sto_arr.length; i++) {
  1979 + //找一下这个门店有没有在分类数组内
  1980 + var find2 = 0,
  1981 + find2name = "",
  1982 + sort = 0;
  1983 + is_del_pk = 0;
  1984 + for (var m = 0; m < sto_cate.length; m++) {
  1985 + if (sto_arr[i].category_id == sto_cate[m].cat_id) {
  1986 + if (sto_cate[m].is_show != 1) {
  1987 + is_del_pk = 1;
  1988 + sto_arr.splice(i, 1);
  1989 + i--;
  1990 + } else {
  1991 + find2 = sto_cate[m].cat_id;
  1992 + find2name = sto_cate[m].cat_name;
  1993 + sort = sto_cate[m].sort;
  1994 + is_del_pk = 0;
  1995 + }
  1996 + break;
  1997 + }
  1998 + }
  1999 + if (is_del_pk) continue;
  2000 +
  2001 + if (newarr.length > 0) {
  2002 + var find = 0;
  2003 + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
  2004 + if (find2 != 0) {
  2005 + for (var ii = 0; ii < newarr.length; ii++) {
  2006 + if (sto_arr[i].category_id == newarr[ii].cat_id) {
  2007 + newarr[ii].s_arr.push(sto_arr[i]);
  2008 + find = 1;
  2009 + break;
  2010 + }
  2011 + }
  2012 + if (find == 0) {
  2013 + var arr0 = new Array();
  2014 + arr0.push(sto_arr[i]);
  2015 + var item = {
  2016 + cat_id: find2,
  2017 + name: find2name,
  2018 + sort: sort,
  2019 + s_arr: arr0
  2020 + };
  2021 + newarr.push(item);
  2022 + }
  2023 + } else {
  2024 + qita.push(sto_arr[i]);
  2025 + }
  2026 + } else {
  2027 + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
  2028 + if (find2 != 0) {
  2029 + var arr0 = new Array();
  2030 + arr0.push(sto_arr[i]);
  2031 + var item = {
  2032 + cat_id: find2,
  2033 + name: find2name,
  2034 + sort: sort,
  2035 + s_arr: arr0
  2036 + };
  2037 + newarr.push(item);
  2038 + } else {
  2039 + qita.push(sto_arr[i]);
  2040 + }
  2041 + }
  2042 + }
1868 2043
  2044 + var def_arr = new Array();
  2045 + //-- 开始就看10个门店 --
  2046 + for (var k = 0; k < 10; k++) {
  2047 + if (k == sto_arr.length) break;
  2048 + def_arr.push(sto_arr[k]);
  2049 + }
1869 2050
1870 - }, 2051 + th.setData({
  2052 + def_pickpu_list: def_arr,
  2053 + pickpu_list: ee.data.data.pageData
  2054 + });
  2055 +
  2056 + //门店分类要排序下
  2057 + function compare(property) {
  2058 + return function (a, b) {
  2059 + var value1 = a[property];
  2060 + var value2 = b[property];
  2061 + return value1 - value2;
  2062 + }
  2063 + }
1871 2064
  2065 + if (newarr.length > 0)
  2066 + newarr.sort(compare("sort"));
  2067 + //----安排其他的分类-----
  2068 + if (qita.length > 0) {
  2069 + var item = {
  2070 + cat_id: -1,
  2071 + name: "其他",
  2072 + s_arr: qita
  2073 + };
  2074 + newarr.push(item);
  2075 + }
1872 2076
1873 - //---点击二级之后的选择---  
1874 - choose_for_store: function (e) {  
1875 - var index_c = e.currentTarget.dataset.ind;  
1876 - var th = this;  
1877 - th.setData({  
1878 - sec_pick_index: index_c,  
1879 - fir_pick_index: index_c  
1880 - })  
1881 2077
1882 - },  
1883 - //把选择的门店设置成默认的门店def_pick  
1884 - set_def_pick: function (e) {  
1885 - var th = this;  
1886 - var item = null;  
1887 - if (th.data.choice_sort_store == 0) {  
1888 - var index = th.data.fir_pick_index;  
1889 - if (th.data.is_show_sto_cat == 1) {  
1890 - item = th.data.def_pickpu_list[index]; 2078 + var sd = {
  2079 + all_sto: newarr,
  2080 + is_show_sto_cat: 1
  2081 + }
  2082 + if (!sto_arr || sto_arr.length <= 10) {
  2083 + sd.is_show_sto_cat = -1;
  2084 + sd.only_pk = sto_arr;
  2085 + }
  2086 + th.setData(sd);
  2087 +
1891 } else { 2088 } else {
1892 - item = th.data.only_pk?th.data.only_pk[index]:null; //当没有门店分类的时候 2089 + th.setData({
  2090 + is_show_sto_cat: -1,
  2091 + only_pk: e.data.data.pageData
  2092 + });
  2093 + //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
  2094 + if (!th.data.def_pick_store) {
  2095 + th.setData({
  2096 + def_pick_store: e.data.data.pageData[0]
  2097 + })
  2098 + }
1893 } 2099 }
1894 - } else {  
1895 - var index = th.data.sec_pick_index;  
1896 - item = th.data.sec_sto.s_arr[index];  
1897 - }  
1898 - if(!item) return false;  
1899 -  
1900 -  
1901 - //判断门店的配送方式是不是匹配  
1902 - var g_distr_type = th.data.sele_g.distr_type;  
1903 - if (item.distr_type != 0 && g_distr_type != 0 && item.distr_type != g_distr_type) {  
1904 - wx.showToast({  
1905 - title: "门店配送方式不匹配",  
1906 - icon: 'none',  
1907 - duration: 2000 2100 + } else {
  2101 + th.setData({
  2102 + is_show_sto_cat: -1,
  2103 + only_pk: e.data.data.pageData
1908 }); 2104 });
1909 - return false; 2105 + //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
  2106 + if (!th.data.def_pick_store) {
  2107 + th.setData({
  2108 + def_pick_store: e.data.data.pageData[0]
  2109 + })
  2110 + }
  2111 + }
1910 } 2112 }
  2113 + });
  2114 + } else {
  2115 + th.setData({
  2116 + is_show_sto_cat: 0,
  2117 + only_pk: e.data.data.pageData
  2118 + });
  2119 + //-----如果没有默认门店,要取第一个门店作为默认店------
  2120 + if (!th.data.def_pick_store && th.data.bconfig && th.data.bconfig.is_sort_storage) {
  2121 + if (e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) {
  2122 + th.setData({
  2123 + def_pick_store: e.data.data.pageData[0],
  2124 + sto_sele_name: e.data.data.pageData[0].pickup_name,
  2125 + sto_sele_id: e.data.data.pageData[0].pickup_id,
  2126 + sto_sele_distr: e.data.data.pageData[0].distr_type
  2127 + })
  2128 + }
  2129 + }
  2130 + }
  2131 + },
  2132 +
  2133 + //---选择分类门店---
  2134 + choice_sort_store: function (e) {
  2135 + var index = e.currentTarget.dataset.index;
  2136 + var region_name = e.currentTarget.dataset.region;
  2137 + var item = this.data.all_sto[index];
  2138 + this.setData({
  2139 + region_name: region_name,
  2140 + sort_store: 0,
  2141 + choice_sort_store: 1,
  2142 + sec_sto: item,
  2143 + sec_pick_index: 0
  2144 + });
  2145 + },
  2146 +
  2147 + choose_for_store_fir: function (e) {
  2148 + var index_c = e.currentTarget.dataset.ind;
  2149 + var th = this;
  2150 + th.setData({
  2151 + fir_pick_index: index_c
  2152 + })
  2153 + },
  2154 +
  2155 + //确定def_pick为选择的门店
  2156 + sure_pick: function (e) {
  2157 + var th = this;
  2158 + var item = null;
  2159 + var openindstore = th.data.open_ind_store;
  2160 +
  2161 + if (th.data.choice_sort_store == 0) {
  2162 + var index = th.data.fir_pick_index;
  2163 + if (th.data.is_show_sto_cat == 1) {
  2164 + item = th.data.def_pickpu_list[index];
  2165 + } else {
  2166 + item = th.data.only_pk ? th.data.only_pk[index] : null; //当没有门店分类的时候
  2167 + }
  2168 + } else {
  2169 + var index = th.data.sec_pick_index;
  2170 + item = th.data.sec_sto.s_arr[index];
  2171 + }
1911 2172
1912 - //先设置之前,要判断是不是有库存  
1913 - var user_id = getApp().globalData.user_id;  
1914 - var def_pickup_id = item.pickup_id;  
1915 -  
1916 - getApp().request.put('/api/weshop/users/update', {  
1917 - data: {  
1918 - user_id: user_id,  
1919 - def_pickup_id: def_pickup_id  
1920 - },  
1921 - success: function (res) {  
1922 - if (res.data.code == 0) {  
1923 - if (th.data.choice_sort_store == 0) th.setData({  
1924 - fir_pick_index: 0  
1925 - });  
1926 - getApp().globalData.pk_store = item;  
1927 - } else {  
1928 - //s.showWarning("设置默认门店地址失败", null, 500, !1);  
1929 - getApp().my_warnning("设置默认门店地址失败", 0, th)  
1930 - }  
1931 -  
1932 - }  
1933 - }); 2173 + if (!item) return false;
  2174 +
  2175 + //判断门店的配送方式是不是匹配
  2176 + var g_distr_type = 0;
  2177 + if (th.data.sele_g)
  2178 + g_distr_type = th.data.sele_g.distr_type;
  2179 + if (item.distr_type != 0 && g_distr_type != 0 && item.distr_type != g_distr_type) {
  2180 + wx.showToast({
  2181 + title: "门店配送方式不匹配",
  2182 + icon: 'none',
  2183 + duration: 2000
  2184 + });
  2185 + return false;
  2186 + }
1934 2187
1935 - th.setData({  
1936 - def_pick_store: item,  
1937 - sto_sele_name: item.pickup_name,  
1938 - sto_sele_id: item.pickup_id,  
1939 - sto_sele_distr: item.distr_type,  
1940 - store: 0,  
1941 - choice_sort_store: 0,  
1942 - sort_store: 0, //关闭门店2级  
1943 - }); 2188 + th.setData({
  2189 + def_pick_store: item,
  2190 + sto_sele_name: item.pickup_name,
  2191 + sto_sele_id: item.pickup_id,
  2192 + sto_sele_distr: item.distr_type,
  2193 + store: 0,
  2194 + choice_sort_store: 0,
  2195 + fir_pick_index: 0,
  2196 + sort_store: 0
  2197 + });
  2198 +
  2199 + //只是单纯的选择门店
  2200 + if (this.data.only) {
  2201 + this.data.only = 0;
  2202 + this.data.sales_map = {};
  2203 +
  2204 + return false;
  2205 + }
1944 2206
  2207 + //-- 判断一下库存 --
  2208 + th.check_pk_store_conut(function () {
  2209 + th.check_is_in_cart(function () {
1945 th.add_cart_func(); 2210 th.add_cart_func();
1946 - }, 2211 + })
  2212 + })
  2213 +
  2214 +
  2215 + },
  2216 +
  2217 +
  2218 + //---点击二级之后的选择---
  2219 + choose_for_store: function (e) {
  2220 + var index_c = e.currentTarget.dataset.ind;
  2221 + var th = this;
  2222 + th.setData({
  2223 + sec_pick_index: index_c,
  2224 + fir_pick_index: index_c
  2225 + })
  2226 +
  2227 + },
  2228 + //把选择的门店设置成默认的门店def_pick
  2229 + set_def_pick: function (e) {
  2230 + var th = this;
  2231 + var item = null;
  2232 + if (th.data.choice_sort_store == 0) {
  2233 + var index = th.data.fir_pick_index;
  2234 + if (th.data.is_show_sto_cat == 1) {
  2235 + item = th.data.def_pickpu_list[index];
  2236 + } else {
  2237 + item = th.data.only_pk ? th.data.only_pk[index] : null; //当没有门店分类的时候
  2238 + }
  2239 + } else {
  2240 + var index = th.data.sec_pick_index;
  2241 + item = th.data.sec_sto.s_arr[index];
  2242 + }
  2243 + if (!item) return false;
1947 2244
1948 - // 返回按钮  
1949 - returns: function () {  
1950 - this.setData({  
1951 - sort_store: 0,  
1952 - choice_sort_store: 0  
1953 - });  
1954 - },  
1955 - //选择更多门店  
1956 - more_store: function () {  
1957 - this.setData({  
1958 - sort_store: 1  
1959 - });  
1960 - },  
1961 - //关闭选择门店  
1962 - close_popup: function (e) {  
1963 - var th = this;  
1964 - this.setData({  
1965 - store: 0,  
1966 - choice_sort_store: 0,  
1967 - sort_store: 0,  
1968 - fir_pick_index: 0,  
1969 - sec_pick_index: 0  
1970 - })  
1971 - },  
1972 2245
1973 - //-------------获取购买数量的总函数----------------  
1974 - get_buy_num: function (gd, func) {  
1975 - var map = this.data.g_buy_num,  
1976 - th = this,  
1977 - user_id = getApp().globalData.user_id; 2246 + //判断门店的配送方式是不是匹配
  2247 + var g_distr_type = th.data.sele_g.distr_type;
  2248 + if (item.distr_type != 0 && g_distr_type != 0 && item.distr_type != g_distr_type) {
  2249 + wx.showToast({
  2250 + title: "门店配送方式不匹配",
  2251 + icon: 'none',
  2252 + duration: 2000
  2253 + });
  2254 + return false;
  2255 + }
1978 2256
1979 - if (user_id == null) {  
1980 - getApp().goto("/packageE/pages/togoin/togoin");  
1981 - return false;  
1982 - }  
1983 - if (map && map.has(gd.goods_id)) {  
1984 - "function" == typeof func && func(); 2257 + //先设置之前,要判断是不是有库存
  2258 + var user_id = getApp().globalData.user_id;
  2259 + var def_pickup_id = item.pickup_id;
  2260 +
  2261 + getApp().request.put('/api/weshop/users/update', {
  2262 + data: {
  2263 + user_id: user_id,
  2264 + def_pickup_id: def_pickup_id
  2265 + },
  2266 + success: function (res) {
  2267 + if (res.data.code == 0) {
  2268 + if (th.data.choice_sort_store == 0) th.setData({
  2269 + fir_pick_index: 0
  2270 + });
  2271 + getApp().globalData.pk_store = item;
1985 } else { 2272 } else {
1986 - var res1 = null;  
1987 - //----获取商品购买数----  
1988 - getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {  
1989 - data: {  
1990 - store_id: os.stoid,  
1991 - user_id: user_id,  
1992 - goods_id: gd.goods_id,  
1993 - prom_type: 7,  
1994 - prom_id: th.data.act.id  
1995 - },  
1996 - }).then(res2 => {  
1997 - var g_buy_num = 0;  
1998 - var promgoodsbuynum = 0;  
1999 - if (res2.data.code == 0) {  
2000 - var buy_num_data = res2.data.data;  
2001 - if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;  
2002 - g_buy_num = buy_num_data.goodsbuynum;  
2003 - }  
2004 -  
2005 - if (!map) map = new Map();  
2006 - var ob = {  
2007 - gd_buynum: g_buy_num,  
2008 - prom_buybum: promgoodsbuynum,  
2009 - }  
2010 - map.set(gd.goods_id, ob);  
2011 - th.setData({  
2012 - g_buy_num: map  
2013 - });  
2014 - "function" == typeof func && func();  
2015 - }) 2273 + //s.showWarning("设置默认门店地址失败", null, 500, !1);
  2274 + getApp().my_warnning("设置默认门店地址失败", 0, th)
2016 } 2275 }
2017 - },  
2018 -  
2019 - //-- 当是减数量的调用 --  
2020 - sub_updata_cart() {  
2021 - var th = this;  
2022 - var index = this.data.sele_index;  
2023 - var txt = "list[" + index + "].haveAdded";  
2024 - var txt1 = "list[" + index + "].num";  
2025 - var txt2 = "list[" + index + "].showNum";  
2026 -  
2027 - var cur_price = this.data.sele_g.shop_price;  
2028 - if (th.data.card_field && this.data.sele_g[th.data.card_field]) {  
2029 - cur_price = this.data.sele_g[th.data.card_field];  
2030 - }  
2031 - var updata = {  
2032 - id: th.data.sele_g.cart_id,  
2033 - goods_num: th.data.goodsInputNum,  
2034 - goods_price: cur_price,  
2035 - store_id: os.stoid,  
2036 - };  
2037 2276
2038 - if (th.data.s_cart_num) {  
2039 - updata.goods_num = th.data.s_cart_num; 2277 + }
  2278 + });
  2279 +
  2280 + th.setData({
  2281 + def_pick_store: item,
  2282 + sto_sele_name: item.pickup_name,
  2283 + sto_sele_id: item.pickup_id,
  2284 + sto_sele_distr: item.distr_type,
  2285 + store: 0,
  2286 + choice_sort_store: 0,
  2287 + sort_store: 0, //关闭门店2级
  2288 + });
  2289 +
  2290 + th.add_cart_func();
  2291 + },
  2292 +
  2293 + // 返回按钮
  2294 + returns: function () {
  2295 + this.setData({
  2296 + sort_store: 0,
  2297 + choice_sort_store: 0
  2298 + });
  2299 + },
  2300 + //选择更多门店
  2301 + more_store: function () {
  2302 + this.setData({
  2303 + sort_store: 1
  2304 + });
  2305 + },
  2306 + //关闭选择门店
  2307 + close_popup: function (e) {
  2308 + var th = this;
  2309 + this.setData({
  2310 + store: 0,
  2311 + choice_sort_store: 0,
  2312 + sort_store: 0,
  2313 + fir_pick_index: 0,
  2314 + sec_pick_index: 0
  2315 + })
  2316 + },
  2317 +
  2318 + //-------------获取购买数量的总函数----------------
  2319 + get_buy_num: function (gd, func) {
  2320 + var map = this.data.g_buy_num,
  2321 + th = this,
  2322 + user_id = getApp().globalData.user_id;
  2323 +
  2324 + if (user_id == null) {
  2325 + getApp().goto("/packageE/pages/togoin/togoin");
  2326 + return false;
  2327 + }
  2328 + if (map && map.has(gd.goods_id)) {
  2329 + "function" == typeof func && func();
  2330 + } else {
  2331 + var res1 = null;
  2332 + //----获取商品购买数----
  2333 + getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  2334 + data: {
  2335 + store_id: os.stoid,
  2336 + user_id: user_id,
  2337 + goods_id: gd.goods_id,
  2338 + prom_type: 7,
  2339 + prom_id: th.data.act.id
  2340 + },
  2341 + }).then(res2 => {
  2342 + var g_buy_num = 0;
  2343 + var promgoodsbuynum = 0;
  2344 + if (res2.data.code == 0) {
  2345 + var buy_num_data = res2.data.data;
  2346 + if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
  2347 + g_buy_num = buy_num_data.goodsbuynum;
2040 } 2348 }
2041 2349
2042 - //---是不是从收藏夹出来的---  
2043 - if (th.data.c_guide_id) {  
2044 - updata['guide_id'] = th.data.c_guide_id;  
2045 - updata['guide_type'] = 3; //加入购物车之后就变成了3  
2046 - } else {  
2047 - if (getApp().globalData.guide_id) {  
2048 - updata['guide_id'] = getApp().globalData.guide_id;  
2049 - updata['guide_type'] = 0;  
2050 - } 2350 + if (!map) map = new Map();
  2351 + var ob = {
  2352 + gd_buynum: g_buy_num,
  2353 + prom_buybum: promgoodsbuynum,
2051 } 2354 }
2052 - //调用接口,更新购物车  
2053 - getApp().request.put("/api/weshop/cart/update", {  
2054 - data: updata,  
2055 - success: function (t) {  
2056 - th.setData({  
2057 - [txt1]: th.data.goodsInputNum,  
2058 - [txt2]: true,  
2059 - [txt]: true,  
2060 - });  
2061 - th.data.adding = 0;  
2062 - th.data.sele_store = 1;  
2063 - if (th.data.s_cart_num) {  
2064 - var txt_temp = "list[" + index + "].cart_num";  
2065 - th.setData({  
2066 - [txt_temp]: th.data.s_cart_num  
2067 - })  
2068 - } 2355 + map.set(gd.goods_id, ob);
  2356 + th.setData({
  2357 + g_buy_num: map
  2358 + });
  2359 + "function" == typeof func && func();
  2360 + })
  2361 + }
  2362 + },
  2363 +
  2364 + //-- 当是减数量的调用 --
  2365 + sub_updata_cart() {
  2366 + var th = this;
  2367 + var index = this.data.sele_index;
  2368 + var txt = "list[" + index + "].haveAdded";
  2369 + var txt1 = "list[" + index + "].num";
  2370 + var txt2 = "list[" + index + "].showNum";
  2371 +
  2372 + var cur_price = this.data.sele_g.shop_price;
  2373 + if (th.data.card_field && this.data.sele_g[th.data.card_field]) {
  2374 + cur_price = this.data.sele_g[th.data.card_field];
  2375 + }
  2376 + var updata = {
  2377 + id: th.data.sele_g.cart_id,
  2378 + goods_num: th.data.goodsInputNum,
  2379 + goods_price: cur_price,
  2380 + store_id: os.stoid,
  2381 + };
  2382 +
  2383 + if (th.data.s_cart_num) {
  2384 + updata.goods_num = th.data.s_cart_num;
  2385 + }
2069 2386
2070 - th.re_sum_price(); //重新统计数量和总金额  
2071 - } 2387 + //---是不是从收藏夹出来的---
  2388 + if (th.data.c_guide_id) {
  2389 + updata['guide_id'] = th.data.c_guide_id;
  2390 + updata['guide_type'] = 3; //加入购物车之后就变成了3
  2391 + } else {
  2392 + if (getApp().globalData.guide_id) {
  2393 + updata['guide_id'] = getApp().globalData.guide_id;
  2394 + updata['guide_type'] = 0;
  2395 + }
  2396 + }
  2397 + //调用接口,更新购物车
  2398 + getApp().request.put("/api/weshop/cart/update", {
  2399 + data: updata,
  2400 + success: function (t) {
  2401 + th.setData({
  2402 + [txt1]: th.data.goodsInputNum,
  2403 + [txt2]: true,
  2404 + [txt]: true,
2072 }); 2405 });
2073 - },  
2074 - //一 开始的选择门店 --  
2075 - choose_store: function (e) {  
2076 - var userInfo = getApp().globalData.userInfo;  
2077 - if (!userInfo) {  
2078 - getApp().goto("/packageE/pages/togoin/togoin");  
2079 - return false; 2406 + th.data.adding = 0;
  2407 + th.data.sele_store = 1;
  2408 + if (th.data.s_cart_num) {
  2409 + var txt_temp = "list[" + index + "].cart_num";
  2410 + th.setData({
  2411 + [txt_temp]: th.data.s_cart_num
  2412 + })
2080 } 2413 }
2081 - this.data.only = 1;  
2082 - this.setData({  
2083 - store: 1  
2084 - })  
2085 2414
  2415 + th.re_sum_price(); //重新统计数量和总金额
  2416 + }
  2417 + });
  2418 + },
  2419 + //一 开始的选择门店 --
  2420 + choose_store: function (e) {
  2421 + var userInfo = getApp().globalData.userInfo;
  2422 + if (!userInfo) {
  2423 + getApp().goto("/packageE/pages/togoin/togoin");
  2424 + return false;
  2425 + }
  2426 + this.data.only = 1;
  2427 + this.setData({
  2428 + store: 1
  2429 + })
2086 2430
2087 - this.get_sto()  
2088 - },  
2089 2431
2090 - // -- 加入之前,先判断有没有在购物车中,没有商品就添加 --  
2091 - check_is_in_cart: function (func) { 2432 + this.get_sto()
  2433 + },
2092 2434
2093 - var act=this.data.act;  
2094 - if(act.zh_num>0 && act.zh_num<=act.zh_buy_num){  
2095 - func();  
2096 - return false;  
2097 - } 2435 + // -- 加入之前,先判断有没有在购物车中,没有商品就添加 --
  2436 + check_is_in_cart: function (func) {
2098 2437
2099 - var th = this;  
2100 - var index = th.data.sele_index;  
2101 - var txt = "list[" + index + "].haveAdded";  
2102 - var txt1 = "list[" + index + "].num";  
2103 - var txt2 = "list[" + index + "].showNum";  
2104 - var txt3 = "list[" + index + "].cart_id";  
2105 - var txt4 = "list[" + index + "].current_price";  
2106 - var txt5 = "list[" + index + "].cart_num";  
2107 -  
2108 - //----先看会员在购物车中是否加入了该商品-----  
2109 - getApp().request.get("/api/weshop/cart/page", {  
2110 - data: {  
2111 - store_id: os.stoid,  
2112 - user_id: oo.user_id,  
2113 - goods_id: th.data.sele_g.goods_id,  
2114 - pick_id: th.data.sto_sele_id,  
2115 - },  
2116 - success: function (re) {  
2117 - if (re.data.data.total > 0) {  
2118 - var item = re.data.data.pageData[0];  
2119 - th.get_buy_num(th.data.sele_g, function () {  
2120 - //当前的价格要更新进去  
2121 - var cur_price = th.data.sele_g.shop_price;  
2122 - if (th.data.card_field && th.data.sele_g[th.data.card_field]) {  
2123 - cur_price = th.data.sele_g[th.data.card_field];  
2124 - } 2438 + var act = this.data.act;
  2439 + if (act.zh_num > 0 && act.zh_num <= act.zh_buy_num) {
  2440 + func();
  2441 + return false;
  2442 + }
2125 2443
2126 - var prom_buybum = 0;  
2127 - var gd_buynum = 0;  
2128 - //加入也要控制一下限购  
2129 - var check_obj = th.data.g_buy_num.get(th.data.sele_g.goods_id);  
2130 - if (check_obj.gd_buynum && check_obj.gd_buynum > 0) gd_buynum = check_obj.gd_buynum;  
2131 - if (check_obj.prom_buybum && check_obj.prom_buybum > 0) prom_buybum = check_obj.prom_buybum;  
2132 -  
2133 - if (check_obj) {  
2134 - if (check_obj.prom_buybum && check_obj.prom_buybum >= th.data.sele_g.buyqty &&  
2135 - th.data.sele_g.buyqty > 0  
2136 - ) {  
2137 - wx.showToast({  
2138 - title: "您的已购数量超出活动的限购",  
2139 - icon: 'none',  
2140 - duration: 2000  
2141 - });  
2142 - return false;  
2143 - }  
2144 - if (check_obj.gd_buynum && check_obj.gd_buynum >= th.data.sele_g.viplimited &&  
2145 - th.data.sele_g.viplimited > 0  
2146 - ) {  
2147 - wx.showToast({  
2148 - title: "您的已购数量超出商品的限购",  
2149 - icon: 'none',  
2150 - duration: 2000  
2151 - });  
2152 - return false;  
2153 - }  
2154 - } 2444 + var th = this;
  2445 + var index = th.data.sele_index;
  2446 + var txt = "list[" + index + "].haveAdded";
  2447 + var txt1 = "list[" + index + "].num";
  2448 + var txt2 = "list[" + index + "].showNum";
  2449 + var txt3 = "list[" + index + "].cart_id";
  2450 + var txt4 = "list[" + index + "].current_price";
  2451 + var txt5 = "list[" + index + "].cart_num";
  2452 +
  2453 + //----先看会员在购物车中是否加入了该商品-----
  2454 + getApp().request.get("/api/weshop/cart/page", {
  2455 + data: {
  2456 + store_id: os.stoid,
  2457 + user_id: oo.user_id,
  2458 + goods_id: th.data.sele_g.goods_id,
  2459 + pick_id: th.data.sto_sele_id,
  2460 + },
  2461 + success: function (re) {
  2462 + if (re.data.data.total > 0) {
  2463 + var item = re.data.data.pageData[0];
  2464 + th.get_buy_num(th.data.sele_g, function () {
  2465 + //当前的价格要更新进去
  2466 + var cur_price = th.data.sele_g.shop_price;
  2467 + if (th.data.card_field && th.data.sele_g[th.data.card_field]) {
  2468 + cur_price = th.data.sele_g[th.data.card_field];
  2469 + }
2155 2470
2156 - item.cbuy = 'no';  
2157 - var cbuy = th.data.sele_g.viplimited > 0 ? th.data.sele_g.viplimited - gd_buynum : 'no';  
2158 - if (cbuy != 'no') item.cbuy = cbuy;  
2159 - var cbuy2 = th.data.sele_g.buyqty > 0 ? th.data.sele_g.buyqty - prom_buybum : 'no';  
2160 - if (cbuy2 != 'no') {  
2161 - if (item.cbuy == 'no' || item.cbuy > cbuy2) item.cbuy = cbuy2;  
2162 - } 2471 + var prom_buybum = 0;
  2472 + var gd_buynum = 0;
  2473 + //加入也要控制一下限购
  2474 + var check_obj = th.data.g_buy_num.get(th.data.sele_g.goods_id);
  2475 + if (check_obj.gd_buynum && check_obj.gd_buynum > 0) gd_buynum = check_obj.gd_buynum;
  2476 + if (check_obj.prom_buybum && check_obj.prom_buybum > 0) prom_buybum = check_obj.prom_buybum;
  2477 +
  2478 + if (check_obj) {
  2479 + if (check_obj.prom_buybum && check_obj.prom_buybum >= th.data.sele_g.buyqty &&
  2480 + th.data.sele_g.buyqty > 0
  2481 + ) {
  2482 + wx.showToast({
  2483 + title: "您的已购数量超出活动的限购",
  2484 + icon: 'none',
  2485 + duration: 2000
  2486 + });
  2487 + return false;
  2488 + }
  2489 + if (check_obj.gd_buynum && check_obj.gd_buynum >= th.data.sele_g.viplimited &&
  2490 + th.data.sele_g.viplimited > 0
  2491 + ) {
  2492 + wx.showToast({
  2493 + title: "您的已购数量超出商品的限购",
  2494 + icon: 'none',
  2495 + duration: 2000
  2496 + });
  2497 + return false;
  2498 + }
  2499 + }
2163 2500
2164 - var num = item.goods_num; 2501 + item.cbuy = 'no';
  2502 + var cbuy = th.data.sele_g.viplimited > 0 ? th.data.sele_g.viplimited - gd_buynum : 'no';
  2503 + if (cbuy != 'no') item.cbuy = cbuy;
  2504 + var cbuy2 = th.data.sele_g.buyqty > 0 ? th.data.sele_g.buyqty - prom_buybum : 'no';
  2505 + if (cbuy2 != 'no') {
  2506 + if (item.cbuy == 'no' || item.cbuy > cbuy2) item.cbuy = cbuy2;
  2507 + }
2165 2508
2166 - var is_num_change=0;  
2167 - if(num<th.data.goodsInputNum){  
2168 - num=th.data.goodsInputNum;  
2169 - is_num_change=1;  
2170 - } 2509 + var num = item.goods_num;
2171 2510
2172 - if (item.cbuy > -1 && item.cbuy < item.goods_num) {  
2173 - num = item.cbuy;  
2174 - }  
2175 - th.setData({  
2176 - [txt1]: num,  
2177 - [txt2]: true,  
2178 - [txt]: true,  
2179 - [txt3]: item.id,  
2180 - [txt4]: cur_price,  
2181 - [txt5]: item.goods_num,  
2182 - });  
2183 -  
2184 - var updata = {  
2185 - id: item.id,  
2186 - prom_type: 7,  
2187 - goods_price: cur_price,  
2188 - prom_id: th.data.act.id,  
2189 - store_id: os.stoid,  
2190 - state:0  
2191 - };  
2192 - if (getApp().globalData.guide_id) {  
2193 - updata['guide_id'] = getApp().globalData.guide_id;  
2194 - updata['guide_type'] = 0;  
2195 - }  
2196 - if(is_num_change){  
2197 - updata['goods_num']=num;  
2198 - } 2511 + var is_num_change = 0;
  2512 + if (num < th.data.goodsInputNum) {
  2513 + num = th.data.goodsInputNum;
  2514 + is_num_change = 1;
  2515 + }
2199 2516
2200 - getApp().request.put("/api/weshop/cart/update", {  
2201 - data: updata,  
2202 - success: function (t) { }  
2203 - });  
2204 - th.re_sum_price();  
2205 - }) 2517 + if (item.cbuy > -1 && item.cbuy < item.goods_num) {
  2518 + num = item.cbuy;
  2519 + }
  2520 + th.setData({
  2521 + [txt1]: num,
  2522 + [txt2]: true,
  2523 + [txt]: true,
  2524 + [txt3]: item.id,
  2525 + [txt4]: cur_price,
  2526 + [txt5]: item.goods_num,
  2527 + });
2206 2528
2207 - } else {  
2208 - func();  
2209 - } 2529 + var updata = {
  2530 + id: item.id,
  2531 + prom_type: 7,
  2532 + goods_price: cur_price,
  2533 + prom_id: th.data.act.id,
  2534 + store_id: os.stoid,
  2535 + state: 0
  2536 + };
  2537 + if (getApp().globalData.guide_id) {
  2538 + updata['guide_id'] = getApp().globalData.guide_id;
  2539 + updata['guide_type'] = 0;
2210 } 2540 }
2211 - })  
2212 - },  
2213 -  
2214 - //-- 计算统计之后的金额 --  
2215 - re_sum_price: function () {  
2216 - var all_num = 0; //商品数量之和  
2217 - var all_price = 0;  
2218 - var need_to_buy = 0;  
2219 - var data = this.data.list;  
2220 - var all_zhqty = 0; //所有商品要求起购数之后  
2221 - var zhqty_bz = []; //超量  
2222 - var no_in_arr = [];  
2223 - for (var i in data) {  
2224 - var item = data[i];  
2225 - if (item.num) {  
2226 - all_num += item.num;  
2227 - all_price += item.num * item.current_price;  
2228 - //当有起购数的控制的时候  
2229 - if (item.zhqty) {  
2230 - zhqty_bz.push(item);  
2231 - all_zhqty += item.zhqty;  
2232 - if (item.num < item.zhqty) {  
2233 - need_to_buy += item.zhqty - item.num;  
2234 - }  
2235 - if (item.num > item.zhqty) {  
2236 - for (var i = 0; i < item.num - item.zhqty; i++) {  
2237 - no_in_arr.push({  
2238 - price: item.current_price,  
2239 - goods_id: item.goods_id  
2240 - });  
2241 - }  
2242 - }  
2243 - } else {  
2244 - for (var j = 0; j < item.num; j++) {  
2245 - no_in_arr.push({  
2246 - price: item.current_price,  
2247 - goods_id: item.goods_id  
2248 - });  
2249 - }  
2250 - }  
2251 - } else {  
2252 - if (item.zhqty) need_to_buy += item.zhqty; 2541 + if (is_num_change) {
  2542 + updata['goods_num'] = num;
2253 } 2543 }
2254 - }  
2255 2544
2256 - //当满足组合的要求:总数要满足,起购数要满足  
2257 - if (all_num >= this.data.act.zhbuyqty && !need_to_buy) {  
2258 - function sortData(a, b) {  
2259 - return a.price - b.price  
2260 - }  
2261 - if (no_in_arr.length) no_in_arr.sort(sortData); 2545 + getApp().request.put("/api/weshop/cart/update", {
  2546 + data: updata,
  2547 + success: function (t) { }
  2548 + });
  2549 + th.re_sum_price();
  2550 + })
2262 2551
2263 - var aprice = this.data.act.zhprice;  
2264 - if (this.data.act.zhbuyqty > all_zhqty) {  
2265 - for (var n = 0; n < this.data.act.zhbuyqty - all_zhqty; n++) {  
2266 - no_in_arr.pop();  
2267 - } 2552 + } else {
  2553 + func();
  2554 + }
  2555 + }
  2556 + })
  2557 + },
  2558 +
  2559 + //-- 计算统计之后的金额 --
  2560 + re_sum_price: function () {
  2561 + var all_num = 0; //商品数量之和
  2562 + var all_price = 0;
  2563 + var need_to_buy = 0;
  2564 + var data = this.data.list;
  2565 + var all_zhqty = 0; //所有商品要求起购数之后
  2566 + var zhqty_bz = []; //超量
  2567 + var no_in_arr = [];
  2568 + for (var i in data) {
  2569 + var item = data[i];
  2570 + if (item.num) {
  2571 + all_num += item.num;
  2572 + all_price += item.num * item.current_price;
  2573 + //当有起购数的控制的时候
  2574 + if (item.zhqty) {
  2575 + zhqty_bz.push(item);
  2576 + all_zhqty += item.zhqty;
  2577 + if (item.num < item.zhqty) {
  2578 + need_to_buy += item.zhqty - item.num;
  2579 + }
  2580 + if (item.num > item.zhqty) {
  2581 + for (var i = 0; i < item.num - item.zhqty; i++) {
  2582 + no_in_arr.push({
  2583 + price: item.current_price,
  2584 + goods_id: item.goods_id
  2585 + });
2268 } 2586 }
  2587 + }
  2588 + } else {
  2589 + for (var j = 0; j < item.num; j++) {
  2590 + no_in_arr.push({
  2591 + price: item.current_price,
  2592 + goods_id: item.goods_id
  2593 + });
  2594 + }
  2595 + }
  2596 + } else {
  2597 + if (item.zhqty) need_to_buy += item.zhqty;
  2598 + }
  2599 + }
2269 2600
2270 - //看一下剩下的数量有没有满足组合购的要求,以及要不要倍增  
2271 - if (this.data.act.is_bz && no_in_arr.length >= this.data.act.zhbuyqty) {  
2272 - var bz_num_ok = 0; //超量倍增是否满足  
2273 - var delete_num = 0;  
2274 - var zhqty_len = 0; //几个超量倍增  
2275 - var be = parseInt(no_in_arr.length / this.data.act.zhbuyqty); //看一下是几倍  
2276 - //如果有总数控制的时候  
2277 - if(this.data.act.zh_num){  
2278 - var be1=this.data.act.zh_num-this.data.act.zh_buy_num-1;  
2279 - if(be1<be) be=be1;  
2280 - }  
2281 - if(be){  
2282 - if (this.data.act.is_bzyh && zhqty_bz.length > 0) {  
2283 - if (zhqty_bz.length > 1) {  
2284 - let zhqty_bz_arr = [];  
2285 - let zhqty_bz_flag = this.zhqty_bz_fun(zhqty_bz, be, zhqty_bz_arr);  
2286 -  
2287 - if (zhqty_bz_flag) {  
2288 - for (let i = 0; i < zhqty_bz.length; i++) {  
2289 - var vv = zhqty_bz[i];  
2290 - for (let j = 0; j < be * vv['zhqty']; j++) {  
2291 - let index = no_in_arr.findIndex(i => {  
2292 - return vv.goods_id === i.goods_id  
2293 - })  
2294 - if (index > -1) {  
2295 - delete_num++  
2296 - no_in_arr.splice(index, 1)  
2297 - }  
2298 - }  
2299 - }  
2300 - } else {  
2301 - zhqty_len = 1;  
2302 - let min_bz_num = Math.min.apply(Math, zhqty_bz_arr.map(function (o) {  
2303 - return o['num'];  
2304 - }));  
2305 - let new_arr = zhqty_bz_arr.filter(ii => {  
2306 - return ii['num'] == min_bz_num;  
2307 - })  
2308 - var vv = new_arr[0];  
2309 - var bz_num = be * new_arr[0].zhqty; //超量倍增  
2310 - var num = min_bz_num - new_arr[0].zhqty; //购买数量减去超量  
2311 - bz_num_ok = bz_num - num;  
2312 - if (bz_num_ok <= 0) {  
2313 - //超量倍增满足,超量倍增就等于倍数  
2314 - bz_num_ok = bz_num;  
2315 - } else {  
2316 - //超量倍增不满足,倍数要减去多出得  
2317 - // be=be-bz_num_ok;  
2318 - if (num % vv.zhqty == 0) {  
2319 - be = num / vv.zhqty;  
2320 - } else {  
2321 - be = Math.floor(num / vv.zhqty)  
2322 - }  
2323 - bz_num_ok = be * vv.zhqty;  
2324 - }  
2325 -  
2326 - for (let i = 0; i < zhqty_bz.length; i++) {  
2327 - let item1 = zhqty_bz[i];  
2328 - for (let j = 0; j < be * item1['zhqty']; j++) {  
2329 - let index = no_in_arr.findIndex(i => {  
2330 - return item1.goods_id === i.goods_id  
2331 - })  
2332 - if (index > -1) {  
2333 - // delete_num++  
2334 - no_in_arr.splice(index, 1)  
2335 - }  
2336 - }  
2337 - }  
2338 - aprice += be * aprice;  
2339 - }  
2340 - } else {  
2341 - var vv = zhqty_bz[0];  
2342 - var bz_num = be * vv.zhqty; //超量倍增  
2343 - var num = vv['num'] - vv.zhqty; //购买数量减去超量  
2344 - if (num > 0) {  
2345 - bz_num_ok = bz_num - num;  
2346 - if (bz_num_ok <= 0) {  
2347 - //超量倍增满足,超量倍增就等于倍数  
2348 - bz_num_ok = bz_num;  
2349 - } else {  
2350 - //超量倍增不满足,倍数要减去多出得  
2351 - // be=be-bz_num_ok;  
2352 - if (num % vv.zhqty == 0) {  
2353 - be = num / vv.zhqty;  
2354 - } else {  
2355 - be = Math.floor(num / vv.zhqty)  
2356 - }  
2357 - bz_num_ok = be * vv.zhqty;  
2358 - }  
2359 - for (let j = 0; j < bz_num_ok; j++) {  
2360 - let index = no_in_arr.findIndex(i => {  
2361 - return vv.goods_id === i.goods_id  
2362 - })  
2363 - if (index > -1) {  
2364 - delete_num++  
2365 - no_in_arr.splice(index, 1)  
2366 - }  
2367 - }  
2368 - } else {  
2369 - zhqty_len = 1;  
2370 - }  
2371 - }  
2372 - }  
2373 - if (!zhqty_len) {  
2374 - //多个超量就不用pop了  
2375 - aprice += be * aprice;  
2376 - let pop_num = be * this.data.act.zhbuyqty - delete_num;  
2377 - for (var m = 0; m < pop_num; m++) {  
2378 - no_in_arr.pop();  
2379 - } 2601 + //当满足组合的要求:总数要满足,起购数要满足
  2602 + if (all_num >= this.data.act.zhbuyqty && !need_to_buy) {
  2603 + function sortData(a, b) {
  2604 + return a.price - b.price
  2605 + }
  2606 + if (no_in_arr.length) no_in_arr.sort(sortData);
  2607 +
  2608 + var aprice = this.data.act.zhprice;
  2609 + if (this.data.act.zhbuyqty > all_zhqty) {
  2610 + for (var n = 0; n < this.data.act.zhbuyqty - all_zhqty; n++) {
  2611 + no_in_arr.pop();
  2612 + }
  2613 + }
  2614 +
  2615 + //看一下剩下的数量有没有满足组合购的要求,以及要不要倍增
  2616 + if (this.data.act.is_bz && no_in_arr.length >= this.data.act.zhbuyqty) {
  2617 + var bz_num_ok = 0; //超量倍增是否满足
  2618 + var delete_num = 0;
  2619 + var zhqty_len = 0; //几个超量倍增
  2620 + var be = parseInt(no_in_arr.length / this.data.act.zhbuyqty); //看一下是几倍
  2621 + //如果有总数控制的时候
  2622 + if (this.data.act.zh_num) {
  2623 + var be1 = this.data.act.zh_num - this.data.act.zh_buy_num - 1;
  2624 + if (be1 < be) be = be1;
  2625 + }
  2626 + if (be) {
  2627 + if (this.data.act.is_bzyh && zhqty_bz.length > 0) {
  2628 + if (zhqty_bz.length > 1) {
  2629 + let zhqty_bz_arr = [];
  2630 + let zhqty_bz_flag = this.zhqty_bz_fun(zhqty_bz, be, zhqty_bz_arr);
  2631 +
  2632 + if (zhqty_bz_flag) {
  2633 + for (let i = 0; i < zhqty_bz.length; i++) {
  2634 + var vv = zhqty_bz[i];
  2635 + for (let j = 0; j < be * vv['zhqty']; j++) {
  2636 + let index = no_in_arr.findIndex(i => {
  2637 + return vv.goods_id === i.goods_id
  2638 + })
  2639 + if (index > -1) {
  2640 + delete_num++
  2641 + no_in_arr.splice(index, 1)
2380 } 2642 }
  2643 + }
  2644 + }
  2645 + } else {
  2646 + zhqty_len = 1;
  2647 + let min_bz_num = Math.min.apply(Math, zhqty_bz_arr.map(function (o) {
  2648 + return o['num'];
  2649 + }));
  2650 + let new_arr = zhqty_bz_arr.filter(ii => {
  2651 + return ii['num'] == min_bz_num;
  2652 + })
  2653 + var vv = new_arr[0];
  2654 + var bz_num = be * new_arr[0].zhqty; //超量倍增
  2655 + var num = min_bz_num - new_arr[0].zhqty; //购买数量减去超量
  2656 + bz_num_ok = bz_num - num;
  2657 + if (bz_num_ok <= 0) {
  2658 + //超量倍增满足,超量倍增就等于倍数
  2659 + bz_num_ok = bz_num;
  2660 + } else {
  2661 + //超量倍增不满足,倍数要减去多出得
  2662 + // be=be-bz_num_ok;
  2663 + if (num % vv.zhqty == 0) {
  2664 + be = num / vv.zhqty;
  2665 + } else {
  2666 + be = Math.floor(num / vv.zhqty)
  2667 + }
  2668 + bz_num_ok = be * vv.zhqty;
2381 } 2669 }
2382 2670
2383 - }  
2384 -  
2385 - //算一下剩余的钱  
2386 - if (no_in_arr.length) {  
2387 - for (var ii in no_in_arr) {  
2388 - var item = no_in_arr[ii];  
2389 - aprice += item.price; 2671 + for (let i = 0; i < zhqty_bz.length; i++) {
  2672 + let item1 = zhqty_bz[i];
  2673 + for (let j = 0; j < be * item1['zhqty']; j++) {
  2674 + let index = no_in_arr.findIndex(i => {
  2675 + return item1.goods_id === i.goods_id
  2676 + })
  2677 + if (index > -1) {
  2678 + // delete_num++
  2679 + no_in_arr.splice(index, 1)
  2680 + }
  2681 + }
  2682 + }
  2683 + aprice += be * aprice;
  2684 + }
  2685 + } else {
  2686 + var vv = zhqty_bz[0];
  2687 + var bz_num = be * vv.zhqty; //超量倍增
  2688 + var num = vv['num'] - vv.zhqty; //购买数量减去超量
  2689 + if (num > 0) {
  2690 + bz_num_ok = bz_num - num;
  2691 + if (bz_num_ok <= 0) {
  2692 + //超量倍增满足,超量倍增就等于倍数
  2693 + bz_num_ok = bz_num;
  2694 + } else {
  2695 + //超量倍增不满足,倍数要减去多出得
  2696 + // be=be-bz_num_ok;
  2697 + if (num % vv.zhqty == 0) {
  2698 + be = num / vv.zhqty;
  2699 + } else {
  2700 + be = Math.floor(num / vv.zhqty)
  2701 + }
  2702 + bz_num_ok = be * vv.zhqty;
  2703 + }
  2704 + for (let j = 0; j < bz_num_ok; j++) {
  2705 + let index = no_in_arr.findIndex(i => {
  2706 + return vv.goods_id === i.goods_id
  2707 + })
  2708 + if (index > -1) {
  2709 + delete_num++
  2710 + no_in_arr.splice(index, 1)
  2711 + }
2390 } 2712 }
  2713 + } else {
  2714 + zhqty_len = 1;
  2715 + }
2391 } 2716 }
2392 - all_price = aprice;  
2393 - }  
2394 - this.data.changing = 0;  
2395 - this.setData({  
2396 - all_price: all_price,  
2397 - need_to_buy: need_to_buy,  
2398 - all_num: all_num  
2399 - })  
2400 -  
2401 - if (all_num <= 0) {  
2402 - this.data.sele_store = 0; //什么都没有选,就没有选择了门店 2717 + }
  2718 + if (!zhqty_len) {
  2719 + //多个超量就不用pop了
  2720 + aprice += be * aprice;
  2721 + let pop_num = be * this.data.act.zhbuyqty - delete_num;
  2722 + for (var m = 0; m < pop_num; m++) {
  2723 + no_in_arr.pop();
  2724 + }
  2725 + }
2403 } 2726 }
2404 2727
2405 - },  
2406 -  
2407 - go_cart: function () {  
2408 - getApp().goto("/pages/cart/cart/cart");  
2409 - },  
2410 -  
2411 - //获取购物车中,相应的门店已购买的商品  
2412 - get_cart_val: function (e) {  
2413 - var th = this;  
2414 - var user_id = getApp().globalData.user_id;  
2415 - var req = {  
2416 - user_id: user_id,  
2417 - store_id: os.stoid,  
2418 - pageSize: 600,  
2419 - state: 0,  
2420 - prom_type: 7,  
2421 - prom_id: this.data.act.id  
2422 - };  
2423 - //获取购物车列表  
2424 - getApp().request.get("/api/weshop/cart/list", {  
2425 - data: req,  
2426 - success: async function (e) {  
2427 - if(ut.ajax_ok(e)) {  
2428 - var map = {};  
2429 - var mlist = e.data.data.pageData;  
2430 - th.data.cart_list = mlist;  
2431 - for (let i in mlist) {  
2432 - let item = mlist[i];  
2433 - if (item.prom_type != 7) continue;  
2434 - if (item.prom_id != th.data.act.id) continue;  
2435 - if(th.data.def_pick_store && th.data.def_pick_store.pickup_id){  
2436 - if(item.pick_id!=th.data.def_pick_store.pickup_id){  
2437 - continue;  
2438 - }  
2439 - }  
2440 - map[item.goods_id] = item;  
2441 - }  
2442 -  
2443 - //-- 循环活动的从表 --  
2444 - for (let j in th.data.list) {  
2445 - let item_j = th.data.list[j];  
2446 - item_j.current_price = item_j.shop_price;  
2447 -  
2448 - var card_price = 0;  
2449 - //如果会员有等级价  
2450 - if (th.data.card_field) {  
2451 - card_price = item_j[th.data.card_field];  
2452 - if (card_price > 0) {  
2453 - item_j.current_price = card_price;  
2454 - }  
2455 - } 2728 + }
2456 2729
  2730 + //算一下剩余的钱
  2731 + if (no_in_arr.length) {
  2732 + for (var ii in no_in_arr) {
  2733 + var item = no_in_arr[ii];
  2734 + aprice += item.price;
  2735 + }
  2736 + }
  2737 + all_price = aprice;
  2738 + }
  2739 + this.data.changing = 0;
  2740 + this.setData({
  2741 + all_price: all_price,
  2742 + need_to_buy: need_to_buy,
  2743 + all_num: all_num
  2744 + })
  2745 +
  2746 + if (all_num <= 0) {
  2747 + this.data.sele_store = 0; //什么都没有选,就没有选择了门店
  2748 + }
2457 2749
2458 - if (map[item_j.goods_id]) {  
2459 - var cart_num = map[item_j.goods_id].goods_num;  
2460 - item_j.num = cart_num;  
2461 - item_j.pickup_no = map[item_j.goods_id].pickup_no;  
2462 - item_j.pick_id = map[item_j.goods_id].pick_id;  
2463 -  
2464 - //判断库存是不是存在  
2465 - var can_qty=await th.check_pk_store_conut(null,1,item_j,cart_num);  
2466 - if(!can_qty){  
2467 - item_j.num=0;  
2468 - continue;  
2469 - }  
2470 -  
2471 - item_j.cart_num = cart_num;  
2472 - item_j.cart_id = map[item_j.goods_id].id;  
2473 - if (item_j.buyqty > 0) {  
2474 - var g_buy_num = 0;  
2475 - var promgoodsbuynum = 0;  
2476 - //----获取商品购买数----  
2477 - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {  
2478 - data: {  
2479 - store_id: os.stoid,  
2480 - user_id: user_id,  
2481 - goods_id: item_j.goods_id,  
2482 - prom_type: 7,  
2483 - prom_id: th.data.act.id  
2484 - },  
2485 - }).then(res2 => {  
2486 - if (res2.data.code == 0) {  
2487 - var buy_num_data = res2.data.data;  
2488 - if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;  
2489 - g_buy_num = buy_num_data.goodsbuynum;  
2490 - }  
2491 - })  
2492 -  
2493 - if (item_j.viplimited > 0) {  
2494 - var cby = item_j.viplimited - g_buy_num;  
2495 - if (cby <= 0) continue; //不能买就continue下一个  
2496 - item_j.num = cby > item_j.num ? item_j.num : cby;  
2497 - }  
2498 - if (item_j.buyqty > 0) {  
2499 - var cby = item_j.buyqty - promgoodsbuynum;  
2500 - if (cby <= 0) continue; //不能买就continue下一个  
2501 - item_j.num = cby > item_j.num ? item_j.num : cby;  
2502 - }  
2503 - }  
2504 -  
2505 - item_j.haveAdded = 1;  
2506 - item_j.showNum = true;  
2507 - }  
2508 - }  
2509 - th.setData({  
2510 - list: th.data.list  
2511 - });  
2512 - th.re_sum_price();  
2513 - }  
2514 - }  
2515 - });  
2516 - },  
2517 -  
2518 - //滚动加载跟多的时候的计算  
2519 - async calc_more(list, func) {  
2520 - var th = this;  
2521 - var map = {};  
2522 - var mlist = this.data.cart_list;  
2523 - for (let i in mlist) { 2750 + },
  2751 +
  2752 + go_cart: function () {
  2753 + getApp().goto("/pages/cart/cart/cart");
  2754 + },
  2755 +
  2756 + //获取购物车中,相应的门店已购买的商品
  2757 + get_cart_val: function (e) {
  2758 + var th = this;
  2759 + var user_id = getApp().globalData.user_id;
  2760 + var req = {
  2761 + user_id: user_id,
  2762 + store_id: os.stoid,
  2763 + pageSize: 600,
  2764 + state: 0,
  2765 + prom_type: 7,
  2766 + prom_id: this.data.act.id
  2767 + };
  2768 + //获取购物车列表
  2769 + getApp().request.get("/api/weshop/cart/list", {
  2770 + data: req,
  2771 + success: async function (e) {
  2772 + if (ut.ajax_ok(e)) {
  2773 + var map = {};
  2774 + var mlist = e.data.data.pageData;
  2775 + th.data.cart_list = mlist;
  2776 + for (let i in mlist) {
2524 let item = mlist[i]; 2777 let item = mlist[i];
2525 if (item.prom_type != 7) continue; 2778 if (item.prom_type != 7) continue;
2526 if (item.prom_id != th.data.act.id) continue; 2779 if (item.prom_id != th.data.act.id) continue;
  2780 + if (th.data.def_pick_store && th.data.def_pick_store.pickup_id) {
  2781 + if (item.pick_id != th.data.def_pick_store.pickup_id) {
  2782 + continue;
  2783 + }
  2784 + }
2527 map[item.goods_id] = item; 2785 map[item.goods_id] = item;
2528 - } 2786 + }
2529 2787
2530 - for (let j in list) {  
2531 - let item_j = list[j]; 2788 + //-- 循环活动的从表 --
  2789 + for (let j in th.data.list) {
  2790 + let item_j = th.data.list[j];
2532 item_j.current_price = item_j.shop_price; 2791 item_j.current_price = item_j.shop_price;
2533 2792
2534 var card_price = 0; 2793 var card_price = 0;
2535 //如果会员有等级价 2794 //如果会员有等级价
2536 if (th.data.card_field) { 2795 if (th.data.card_field) {
2537 - card_price = item_j[th.data.card_field];  
2538 - if (card_price > 0) {  
2539 - item_j.current_price = card_price;  
2540 - } 2796 + card_price = item_j[th.data.card_field];
  2797 + if (card_price > 0) {
  2798 + item_j.current_price = card_price;
  2799 + }
2541 } 2800 }
2542 2801
2543 2802
2544 if (map[item_j.goods_id]) { 2803 if (map[item_j.goods_id]) {
2545 - var cart_num = map[item_j.goods_id].goods_num;  
2546 - item_j.num = cart_num;  
2547 - item_j.cart_num = cart_num;  
2548 - item_j.cart_id = map[item_j.goods_id].id;  
2549 - if (item_j.buyqty > 0) {  
2550 - var g_buy_num = 0;  
2551 - var promgoodsbuynum = 0;  
2552 - //----获取商品购买数----  
2553 - await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {  
2554 - data: {  
2555 - store_id: os.stoid,  
2556 - user_id: oo.user_id,  
2557 - goods_id: item_j.goods_id,  
2558 - prom_type: 7,  
2559 - prom_id: th.data.act.id  
2560 - },  
2561 - }).then(res2 => {  
2562 - if (res2.data.code == 0) {  
2563 - var buy_num_data = res2.data.data;  
2564 - if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;  
2565 - g_buy_num = buy_num_data.goodsbuynum;  
2566 - }  
2567 - }) 2804 + var cart_num = map[item_j.goods_id].goods_num;
  2805 + item_j.num = cart_num;
  2806 + item_j.pickup_no = map[item_j.goods_id].pickup_no;
  2807 + item_j.pick_id = map[item_j.goods_id].pick_id;
  2808 +
  2809 + //判断库存是不是存在
  2810 + var can_qty = await th.check_pk_store_conut(null, 1, item_j, cart_num);
  2811 + if (!can_qty) {
  2812 + item_j.num = 0;
  2813 + continue;
  2814 + }
2568 2815
2569 - if (item_j.viplimited > 0) {  
2570 - var cby = item_j.viplimited - g_buy_num;  
2571 - if (cby <= 0) continue; //不能买就continue下一个  
2572 - item_j.num = cby > item_j.num ? item_j.num : cby;  
2573 - }  
2574 - if (item_j.buyqty > 0) {  
2575 - var cby = item_j.buyqty - promgoodsbuynum;  
2576 - if (cby <= 0) continue; //不能买就continue下一个  
2577 - item_j.num = cby > item_j.num ? item_j.num : cby;  
2578 - } 2816 + item_j.cart_num = cart_num;
  2817 + item_j.cart_id = map[item_j.goods_id].id;
  2818 + if (item_j.buyqty > 0) {
  2819 + var g_buy_num = 0;
  2820 + var promgoodsbuynum = 0;
  2821 + //----获取商品购买数----
  2822 + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  2823 + data: {
  2824 + store_id: os.stoid,
  2825 + user_id: user_id,
  2826 + goods_id: item_j.goods_id,
  2827 + prom_type: 7,
  2828 + prom_id: th.data.act.id
  2829 + },
  2830 + }).then(res2 => {
  2831 + if (res2.data.code == 0) {
  2832 + var buy_num_data = res2.data.data;
  2833 + if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
  2834 + g_buy_num = buy_num_data.goodsbuynum;
  2835 + }
  2836 + })
  2837 +
  2838 + if (item_j.viplimited > 0) {
  2839 + var cby = item_j.viplimited - g_buy_num;
  2840 + if (cby <= 0) continue; //不能买就continue下一个
  2841 + item_j.num = cby > item_j.num ? item_j.num : cby;
2579 } 2842 }
  2843 + if (item_j.buyqty > 0) {
  2844 + var cby = item_j.buyqty - promgoodsbuynum;
  2845 + if (cby <= 0) continue; //不能买就continue下一个
  2846 + item_j.num = cby > item_j.num ? item_j.num : cby;
  2847 + }
  2848 + }
2580 2849
2581 - item_j.haveAdded = 1;  
2582 - item_j.showNum = true;  
2583 - }  
2584 - }  
2585 - if (func) func(list)  
2586 -  
2587 - },  
2588 -  
2589 - zhqty_bz_fun(zhqty_bz, be, zhqty_bz_arr) {  
2590 - let zhqty_bz_flag = true;  
2591 - for (let i = 0; i < zhqty_bz.length; i++) {  
2592 - let item = zhqty_bz[i];  
2593 - let bz_num = be * item['zhqty']; //超量倍增  
2594 - let num = item['num'] - item['zhqty']; //购买数量减去超量  
2595 - if (bz_num > num) {  
2596 - zhqty_bz_flag = false;  
2597 - zhqty_bz_arr.push(item);  
2598 - // zhqty_bz.splice(i,1) 2850 + item_j.haveAdded = 1;
  2851 + item_j.showNum = true;
2599 } 2852 }
  2853 + }
  2854 + th.setData({
  2855 + list: th.data.list
  2856 + });
  2857 + th.re_sum_price();
2600 } 2858 }
2601 - return zhqty_bz_flag;  
2602 - },  
2603 -  
2604 - chect_act_zh_num(func){  
2605 - var userInfo = getApp().globalData.userInfo;  
2606 - //获取活动信息  
2607 - var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + this.data.id + "/" + userInfo.user_id;  
2608 - getApp().request.get(url, {  
2609 - success: function (e) {  
2610 - if (e.data.code == 0 && e.data.data) {  
2611 - var t_act=e.data.data;  
2612 - if(t_act.zh_num>0 && t_act.zh_num<=t_act.zh_buy_num){  
2613 - wx.showToast({  
2614 - title: '组合活动不足!',  
2615 - icon: 'none',  
2616 - duration: 2000  
2617 - })  
2618 - return false;  
2619 - }  
2620 - func(); 2859 + }
  2860 + });
  2861 + },
  2862 +
  2863 + //滚动加载跟多的时候的计算
  2864 + async calc_more(list, func) {
  2865 + var th = this;
  2866 + var map = {};
  2867 + var mlist = this.data.cart_list;
  2868 + for (let i in mlist) {
  2869 + let item = mlist[i];
  2870 + if (item.prom_type != 7) continue;
  2871 + if (item.prom_id != th.data.act.id) continue;
  2872 + map[item.goods_id] = item;
  2873 + }
2621 2874
2622 - }else{  
2623 - wx.showToast({  
2624 - title: '未找到活动!',  
2625 - icon: 'none',  
2626 - duration: 2000  
2627 - })  
2628 - } 2875 + for (let j in list) {
  2876 + let item_j = list[j];
  2877 + item_j.current_price = item_j.shop_price;
2629 2878
  2879 + var card_price = 0;
  2880 + //如果会员有等级价
  2881 + if (th.data.card_field) {
  2882 + card_price = item_j[th.data.card_field];
  2883 + if (card_price > 0) {
  2884 + item_j.current_price = card_price;
  2885 + }
  2886 + }
  2887 +
  2888 +
  2889 + if (map[item_j.goods_id]) {
  2890 + var cart_num = map[item_j.goods_id].goods_num;
  2891 + item_j.num = cart_num;
  2892 + item_j.cart_num = cart_num;
  2893 + item_j.cart_id = map[item_j.goods_id].id;
  2894 + if (item_j.buyqty > 0) {
  2895 + var g_buy_num = 0;
  2896 + var promgoodsbuynum = 0;
  2897 + //----获取商品购买数----
  2898 + await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
  2899 + data: {
  2900 + store_id: os.stoid,
  2901 + user_id: oo.user_id,
  2902 + goods_id: item_j.goods_id,
  2903 + prom_type: 7,
  2904 + prom_id: th.data.act.id
  2905 + },
  2906 + }).then(res2 => {
  2907 + if (res2.data.code == 0) {
  2908 + var buy_num_data = res2.data.data;
  2909 + if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
  2910 + g_buy_num = buy_num_data.goodsbuynum;
2630 } 2911 }
2631 - }) 2912 + })
  2913 +
  2914 + if (item_j.viplimited > 0) {
  2915 + var cby = item_j.viplimited - g_buy_num;
  2916 + if (cby <= 0) continue; //不能买就continue下一个
  2917 + item_j.num = cby > item_j.num ? item_j.num : cby;
  2918 + }
  2919 + if (item_j.buyqty > 0) {
  2920 + var cby = item_j.buyqty - promgoodsbuynum;
  2921 + if (cby <= 0) continue; //不能买就continue下一个
  2922 + item_j.num = cby > item_j.num ? item_j.num : cby;
  2923 + }
  2924 + }
  2925 +
  2926 + item_j.haveAdded = 1;
  2927 + item_j.showNum = true;
  2928 + }
  2929 + }
  2930 + if (func) func(list)
  2931 +
  2932 + },
  2933 +
  2934 + zhqty_bz_fun(zhqty_bz, be, zhqty_bz_arr) {
  2935 + let zhqty_bz_flag = true;
  2936 + for (let i = 0; i < zhqty_bz.length; i++) {
  2937 + let item = zhqty_bz[i];
  2938 + let bz_num = be * item['zhqty']; //超量倍增
  2939 + let num = item['num'] - item['zhqty']; //购买数量减去超量
  2940 + if (bz_num > num) {
  2941 + zhqty_bz_flag = false;
  2942 + zhqty_bz_arr.push(item);
  2943 + // zhqty_bz.splice(i,1)
  2944 + }
2632 } 2945 }
  2946 + return zhqty_bz_flag;
  2947 + },
  2948 +
  2949 + chect_act_zh_num(func) {
  2950 + var userInfo = getApp().globalData.userInfo;
  2951 + //获取活动信息
  2952 + var url = "/api/weshop/prom/zhbuy/get/" + os.stoid + "/" + this.data.id + "/" + userInfo.user_id;
  2953 + getApp().request.get(url, {
  2954 + success: function (e) {
  2955 + if (e.data.code == 0 && e.data.data) {
  2956 + var t_act = e.data.data;
  2957 + if (t_act.zh_num > 0 && t_act.zh_num <= t_act.zh_buy_num) {
  2958 + wx.showToast({
  2959 + title: '组合活动不足!',
  2960 + icon: 'none',
  2961 + duration: 2000
  2962 + })
  2963 + return false;
  2964 + }
  2965 + func();
  2966 +
  2967 + } else {
  2968 + wx.showToast({
  2969 + title: '未找到活动!',
  2970 + icon: 'none',
  2971 + duration: 2000
  2972 + })
  2973 + }
  2974 +
  2975 + }
  2976 + })
  2977 + }
2633 2978
2634 2979
2635 2980
packageB/pages/zuhegou/index/index.wxss
@@ -194,7 +194,7 @@ page { @@ -194,7 +194,7 @@ page {
194 194
195 .poster { 195 .poster {
196 width: 650rpx; 196 width: 650rpx;
197 - height: 843rpx; 197 + height: 943rpx;
198 border-radius: 16rpx; 198 border-radius: 16rpx;
199 margin: 0 auto; 199 margin: 0 auto;
200 } 200 }