Commit 12e17a5e5588b07a19498134d94a13edcef0dba7
Merge branch 'test' of http://git.vipzhuang.cn/wxd/MShopWeApp into qa
Showing
39 changed files
with
3028 additions
and
921 deletions
packageA/pages/goodsInfo/goodsInfo.js
@@ -27,6 +27,7 @@ Page({ | @@ -27,6 +27,7 @@ Page({ | ||
27 | color_type: 0, //线条控制 | 27 | color_type: 0, //线条控制 |
28 | color_type_one: 0, | 28 | color_type_one: 0, |
29 | color_type_two: 1, | 29 | color_type_two: 1, |
30 | + is_share_text: 1, | ||
30 | 31 | ||
31 | gid: "", | 32 | gid: "", |
32 | stoid: o.stoid, | 33 | stoid: o.stoid, |
@@ -38,6 +39,8 @@ Page({ | @@ -38,6 +39,8 @@ Page({ | ||
38 | data: null, | 39 | data: null, |
39 | content: "", //商品详情 | 40 | content: "", //商品详情 |
40 | 41 | ||
42 | + | ||
43 | + | ||
41 | gallery: null, //图片滚动 | 44 | gallery: null, //图片滚动 |
42 | is_collect: 0, | 45 | is_collect: 0, |
43 | collect_id: 0, | 46 | collect_id: 0, |
@@ -236,6 +239,8 @@ Page({ | @@ -236,6 +239,8 @@ Page({ | ||
236 | th = ee, | 239 | th = ee, |
237 | gid = t.goods_id, | 240 | gid = t.goods_id, |
238 | first_leader=t.first_leader, | 241 | first_leader=t.first_leader, |
242 | + prom_type=t.prom_type, | ||
243 | + prom_id=t.prom_id, | ||
239 | room_id = t.room_id, | 244 | room_id = t.room_id, |
240 | room_user_share = t.room_user_share; //如果是会员分享带有room_id的话,那么接下来会员分享就不传room_id | 245 | room_user_share = t.room_user_share; //如果是会员分享带有room_id的话,那么接下来会员分享就不传room_id |
241 | 246 | ||
@@ -250,21 +255,27 @@ Page({ | @@ -250,21 +255,27 @@ Page({ | ||
250 | var gid_str = decodeURIComponent(t.scene); | 255 | var gid_str = decodeURIComponent(t.scene); |
251 | gid_str=gid_str.split("_"); | 256 | gid_str=gid_str.split("_"); |
252 | gid=gid_str[0]; | 257 | gid=gid_str[0]; |
253 | - if(gid_str.length>1){ | 258 | + if(gid_str.length>1 && gid_str[1] && parseInt(gid_str[1])>0){ |
254 | first_leader=gid_str[1]; | 259 | first_leader=gid_str[1]; |
255 | } | 260 | } |
256 | //-- 如果有room_id的获取 -- | 261 | //-- 如果有room_id的获取 -- |
257 | - if(gid_str.length>2 && gid_str[2]) { | 262 | + if(gid_str.length>2 && gid_str[2] && parseInt(gid_str[2])>0) { |
258 | room_id=gid_str[2]; | 263 | room_id=gid_str[2]; |
259 | room_user_share=1; | 264 | room_user_share=1; |
260 | }; | 265 | }; |
266 | + | ||
267 | + if(gid_str.length>3 && gid_str[3] && parseInt(gid_str[3])>0) { | ||
268 | + prom_type=gid_str[3]; | ||
269 | + prom_id=gid_str[4]; | ||
270 | + } | ||
271 | + | ||
261 | }; | 272 | }; |
262 | 273 | ||
263 | //-- 设置顶部高度 -- | 274 | //-- 设置顶部高度 -- |
264 | let height= getApp().globalData.navBarHeight; | 275 | let height= getApp().globalData.navBarHeight; |
265 | ee.setData({ gid: gid,top_nav:height}); | 276 | ee.setData({ gid: gid,top_nav:height}); |
266 | 277 | ||
267 | - if(first_leader) { | 278 | + if(first_leader>0) { |
268 | getApp().globalData.first_leader=first_leader; | 279 | getApp().globalData.first_leader=first_leader; |
269 | //调用接口判断是不是会员 | 280 | //调用接口判断是不是会员 |
270 | getApp().request.promiseGet("/api/weshop/shoppingGuide/get/"+os.stoid+"/"+first_leader,{}).then(res=>{ | 281 | getApp().request.promiseGet("/api/weshop/shoppingGuide/get/"+os.stoid+"/"+first_leader,{}).then(res=>{ |
@@ -347,7 +358,37 @@ Page({ | @@ -347,7 +358,37 @@ Page({ | ||
347 | } | 358 | } |
348 | }); | 359 | }); |
349 | 360 | ||
350 | - }, | 361 | + //-- 自定义海报 -- |
362 | + getApp().request.promiseGet("/api/weshop/goods/poster/page", { | ||
363 | + data: { store_id: os.stoid, type: 1, is_use: 1 } | ||
364 | + }).then(res => { | ||
365 | + if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData[0]) { | ||
366 | + | ||
367 | + var poster_data = res.data.data.pageData[0]; | ||
368 | + var json_str = poster_data.jsonStr; | ||
369 | + | ||
370 | + if (json_str) { | ||
371 | + var json_data = JSON.parse(json_str); | ||
372 | + if (json_data.bg_img) { | ||
373 | + | ||
374 | + //-- 把图片那到本地 -- | ||
375 | + wx.getImageInfo({ | ||
376 | + src: json_data.bg_img, | ||
377 | + success: function (res) { | ||
378 | + var path = res.path; | ||
379 | + th.setData({ share_b_img: path }) | ||
380 | + }, | ||
381 | + fail: function (res) { } | ||
382 | + }); | ||
383 | + } | ||
384 | + th.setData({ poster: json_data }) | ||
385 | + | ||
386 | + } | ||
387 | + } | ||
388 | + }) | ||
389 | + | ||
390 | + | ||
391 | + }, | ||
351 | 392 | ||
352 | //-- 获取直播的分享人的导购信息 -- | 393 | //-- 获取直播的分享人的导购信息 -- |
353 | async get_room_share_guide(share_openid) { | 394 | async get_room_share_guide(share_openid) { |
@@ -568,14 +609,13 @@ Page({ | @@ -568,14 +609,13 @@ Page({ | ||
568 | // gid 在onload阶段已经保存在this.data中 | 609 | // gid 在onload阶段已经保存在this.data中 |
569 | onShow: function() { | 610 | onShow: function() { |
570 | 611 | ||
612 | + getApp().check_can_share(this); | ||
571 | //-- 看一下隐私政策要不要显示 -- | 613 | //-- 看一下隐私政策要不要显示 -- |
572 | var privacy_pop = this.selectComponent("#privacy_pop"); //组件的id | 614 | var privacy_pop = this.selectComponent("#privacy_pop"); //组件的id |
573 | if (privacy_pop) { | 615 | if (privacy_pop) { |
574 | privacy_pop.check_pri_show(); | 616 | privacy_pop.check_pri_show(); |
575 | } | 617 | } |
576 | 618 | ||
577 | - getApp().check_can_share(); | ||
578 | - | ||
579 | var that=this;var th=this; | 619 | var that=this;var th=this; |
580 | var ee = this,gid = this.data.gid, i = getApp().request; | 620 | var ee = this,gid = this.data.gid, i = getApp().request; |
581 | 621 | ||
@@ -1386,6 +1426,9 @@ Page({ | @@ -1386,6 +1426,9 @@ Page({ | ||
1386 | }, | 1426 | }, |
1387 | 1427 | ||
1388 | openSpecModel: function(t) { | 1428 | openSpecModel: function(t) { |
1429 | + | ||
1430 | + if(this.data.get_sto_ing) return false; | ||
1431 | + | ||
1389 | var th=this; var open_store = t.currentTarget.dataset.ind; | 1432 | var th=this; var open_store = t.currentTarget.dataset.ind; |
1390 | if(getApp().is_sp_hao() && open_store==1){ | 1433 | if(getApp().is_sp_hao() && open_store==1){ |
1391 | wx.showToast({ | 1434 | wx.showToast({ |
@@ -1657,6 +1700,8 @@ Page({ | @@ -1657,6 +1700,8 @@ Page({ | ||
1657 | }) | 1700 | }) |
1658 | } | 1701 | } |
1659 | 1702 | ||
1703 | + this.data.get_sto_ing=1; | ||
1704 | + | ||
1660 | var timer_get = setInterval(function() { | 1705 | var timer_get = setInterval(function() { |
1661 | if (th.data.is_get_local_ok == 0) return false; | 1706 | if (th.data.is_get_local_ok == 0) return false; |
1662 | if (!th.data.fir_def_store) return false; | 1707 | if (!th.data.fir_def_store) return false; |
@@ -1772,6 +1817,7 @@ Page({ | @@ -1772,6 +1817,7 @@ Page({ | ||
1772 | th.deal_pickup(e); | 1817 | th.deal_pickup(e); |
1773 | } | 1818 | } |
1774 | else{ | 1819 | else{ |
1820 | + th.data.get_sto_ing=0; | ||
1775 | th.setData({ | 1821 | th.setData({ |
1776 | isshow:1 | 1822 | isshow:1 |
1777 | }) | 1823 | }) |
@@ -1901,160 +1947,162 @@ Page({ | @@ -1901,160 +1947,162 @@ Page({ | ||
1901 | orderType:'asc', | 1947 | orderType:'asc', |
1902 | }, | 1948 | }, |
1903 | success: function(ee) { | 1949 | success: function(ee) { |
1904 | - if (ee.data.code == 0) { | ||
1905 | - | ||
1906 | - var check_all_cate=0; | ||
1907 | - if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){ | ||
1908 | - for(let i in ee.data.data.pageData){ | ||
1909 | - let item=ee.data.data.pageData[i]; | ||
1910 | - if(item.is_show==1){ | ||
1911 | - check_all_cate=1;break | 1950 | + if (ee.data.code == 0) { |
1951 | + | ||
1952 | + var check_all_cate=0; | ||
1953 | + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0){ | ||
1954 | + for(let i in ee.data.data.pageData){ | ||
1955 | + let item=ee.data.data.pageData[i]; | ||
1956 | + if(item.is_show==1){ | ||
1957 | + check_all_cate=1;break | ||
1958 | + } | ||
1912 | } | 1959 | } |
1913 | } | 1960 | } |
1914 | - } | ||
1915 | - | ||
1916 | - if (check_all_cate) { | ||
1917 | - | ||
1918 | - | ||
1919 | - var sto_cate = ee.data.data.pageData; | ||
1920 | - var sto_arr = e.data.data.pageData; | ||
1921 | - var newarr = new Array(); | ||
1922 | - var qita = new Array(); | ||
1923 | - | ||
1924 | - var is_del_pk=0; | ||
1925 | - | ||
1926 | - //----要进行门店分组-------- | ||
1927 | - for (var i = 0; i < sto_arr.length; i++) { | ||
1928 | - //找一下这个门店有没有在分类数组内 | ||
1929 | - var find2 = 0, find2name = "",sort=0; | ||
1930 | - is_del_pk=0; | ||
1931 | - for (var m = 0; m < sto_cate.length; m++) { | ||
1932 | - if (sto_arr[i].category_id == sto_cate[m].cat_id) { | ||
1933 | - if (sto_cate[m].is_show != 1) { | ||
1934 | - is_del_pk = 1; | ||
1935 | - sto_arr.splice(i, 1); | ||
1936 | - i--; | ||
1937 | - } else { | ||
1938 | - find2 = sto_cate[m].cat_id; | ||
1939 | - find2name = sto_cate[m].cat_name; | ||
1940 | - sort = sto_cate[m].sort; | ||
1941 | - is_del_pk = 0; | 1961 | + |
1962 | + if (check_all_cate) { | ||
1963 | + | ||
1964 | + | ||
1965 | + var sto_cate = ee.data.data.pageData; | ||
1966 | + var sto_arr = e.data.data.pageData; | ||
1967 | + var newarr = new Array(); | ||
1968 | + var qita = new Array(); | ||
1969 | + | ||
1970 | + var is_del_pk=0; | ||
1971 | + | ||
1972 | + //----要进行门店分组-------- | ||
1973 | + for (var i = 0; i < sto_arr.length; i++) { | ||
1974 | + //找一下这个门店有没有在分类数组内 | ||
1975 | + var find2 = 0, find2name = "",sort=0; | ||
1976 | + is_del_pk=0; | ||
1977 | + for (var m = 0; m < sto_cate.length; m++) { | ||
1978 | + if (sto_arr[i].category_id == sto_cate[m].cat_id) { | ||
1979 | + if (sto_cate[m].is_show != 1) { | ||
1980 | + is_del_pk = 1; | ||
1981 | + sto_arr.splice(i, 1); | ||
1982 | + i--; | ||
1983 | + } else { | ||
1984 | + find2 = sto_cate[m].cat_id; | ||
1985 | + find2name = sto_cate[m].cat_name; | ||
1986 | + sort = sto_cate[m].sort; | ||
1987 | + is_del_pk = 0; | ||
1988 | + } | ||
1989 | + break; | ||
1942 | } | 1990 | } |
1943 | - break; | ||
1944 | } | 1991 | } |
1945 | - } | ||
1946 | - if(is_del_pk) continue; | ||
1947 | - | ||
1948 | - if (newarr.length > 0) { | ||
1949 | - var find = 0; | ||
1950 | - //如果有找到,那门店就在这个分组内,否则,分类就要排在其他 | ||
1951 | - if (find2 != 0) { | ||
1952 | - for (var ii = 0; ii < newarr.length; ii++) { | ||
1953 | - if (sto_arr[i].category_id == newarr[ii].cat_id) { | ||
1954 | - newarr[ii].s_arr.push(sto_arr[i]); | ||
1955 | - find = 1; | ||
1956 | - break; | 1992 | + if(is_del_pk) continue; |
1993 | + | ||
1994 | + if (newarr.length > 0) { | ||
1995 | + var find = 0; | ||
1996 | + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他 | ||
1997 | + if (find2 != 0) { | ||
1998 | + for (var ii = 0; ii < newarr.length; ii++) { | ||
1999 | + if (sto_arr[i].category_id == newarr[ii].cat_id) { | ||
2000 | + newarr[ii].s_arr.push(sto_arr[i]); | ||
2001 | + find = 1; | ||
2002 | + break; | ||
2003 | + } | ||
2004 | + } | ||
2005 | + if (find == 0) { | ||
2006 | + var arr0 = new Array(); | ||
2007 | + arr0.push(sto_arr[i]); | ||
2008 | + var item = { | ||
2009 | + cat_id: find2, | ||
2010 | + name: find2name, | ||
2011 | + sort:sort, | ||
2012 | + s_arr: arr0 | ||
2013 | + }; | ||
2014 | + newarr.push(item); | ||
2015 | + } | ||
2016 | + } else { | ||
2017 | + qita.push(sto_arr[i]); | ||
2018 | + } | ||
2019 | + } else { | ||
2020 | + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他 | ||
2021 | + if (find2 != 0) { | ||
2022 | + var arr0 = new Array(); | ||
2023 | + arr0.push(sto_arr[i]); | ||
2024 | + var item = { | ||
2025 | + cat_id: find2, | ||
2026 | + name: find2name, | ||
2027 | + sort:sort, | ||
2028 | + s_arr: arr0 | ||
2029 | + }; | ||
2030 | + newarr.push(item); | ||
2031 | + } else { | ||
2032 | + qita.push(sto_arr[i]); | ||
1957 | } | 2033 | } |
1958 | } | 2034 | } |
1959 | - if (find == 0) { | ||
1960 | - var arr0 = new Array(); | ||
1961 | - arr0.push(sto_arr[i]); | ||
1962 | - var item = { | ||
1963 | - cat_id: find2, | ||
1964 | - name: find2name, | ||
1965 | - sort:sort, | ||
1966 | - s_arr: arr0 | ||
1967 | - }; | ||
1968 | - newarr.push(item); | 2035 | + } |
2036 | + | ||
2037 | + var def_arr = new Array(); | ||
2038 | + //-- 开始就看10个门店 -- | ||
2039 | + for (var k = 0; k < 10; k++) { | ||
2040 | + if (k == sto_arr.length) break; | ||
2041 | + def_arr.push(sto_arr[k]); | ||
1969 | } | 2042 | } |
1970 | - } else { | ||
1971 | - qita.push(sto_arr[i]); | 2043 | + |
2044 | + th.setData({ | ||
2045 | + def_pickpu_list: def_arr, | ||
2046 | + pickpu_list: ee.data.data.pageData | ||
2047 | + }); | ||
2048 | + | ||
2049 | + //门店分类要排序下 | ||
2050 | + function compare(property){ | ||
2051 | + return function(a,b){ | ||
2052 | + var value1 = a[property]; | ||
2053 | + var value2 = b[property]; | ||
2054 | + return value1 - value2; | ||
2055 | + } | ||
1972 | } | 2056 | } |
1973 | - } else { | ||
1974 | - //如果有找到,那门店就在这个分组内,否则,分类就要排在其他 | ||
1975 | - if (find2 != 0) { | ||
1976 | - var arr0 = new Array(); | ||
1977 | - arr0.push(sto_arr[i]); | 2057 | + if(newarr.length>0) |
2058 | + newarr.sort(compare("sort")); | ||
2059 | + | ||
2060 | + //----安排其他的分类----- | ||
2061 | + if (qita.length > 0) { | ||
1978 | var item = { | 2062 | var item = { |
1979 | - cat_id: find2, | ||
1980 | - name: find2name, | ||
1981 | - sort:sort, | ||
1982 | - s_arr: arr0 | 2063 | + cat_id: -1, |
2064 | + name: "其他", | ||
2065 | + s_arr: qita | ||
1983 | }; | 2066 | }; |
1984 | newarr.push(item); | 2067 | newarr.push(item); |
1985 | - } else { | ||
1986 | - qita.push(sto_arr[i]); | ||
1987 | } | 2068 | } |
1988 | - } | ||
1989 | - } | ||
1990 | 2069 | ||
1991 | - var def_arr = new Array(); | ||
1992 | - //-- 开始就看10个门店 -- | ||
1993 | - for (var k = 0; k < 10; k++) { | ||
1994 | - if (k == sto_arr.length) break; | ||
1995 | - def_arr.push(sto_arr[k]); | ||
1996 | - } | 2070 | + var sd={ |
2071 | + all_sto: newarr, | ||
2072 | + is_show_sto_cat:1 | ||
2073 | + } | ||
2074 | + if(!sto_arr || sto_arr.length<=10){ | ||
2075 | + sd.is_show_sto_cat=-1; | ||
2076 | + sd.only_pk=sto_arr; | ||
2077 | + } | ||
2078 | + th.setData(sd); | ||
1997 | 2079 | ||
2080 | + } else { | ||
2081 | + th.setData({ | ||
2082 | + is_show_sto_cat: -1, | ||
2083 | + only_pk: e.data.data.pageData | ||
2084 | + }); | ||
2085 | + //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------ | ||
2086 | + if (!th.data.def_pick_store) { | ||
2087 | + th.setData({def_pick_store:e.data.data.pageData[0]}) | ||
2088 | + } | ||
2089 | + } | ||
2090 | + } else { | ||
1998 | th.setData({ | 2091 | th.setData({ |
1999 | - def_pickpu_list: def_arr, | ||
2000 | - pickpu_list: ee.data.data.pageData | 2092 | + is_show_sto_cat: -1, |
2093 | + only_pk: e.data.data.pageData | ||
2001 | }); | 2094 | }); |
2002 | - | ||
2003 | - //门店分类要排序下 | ||
2004 | - function compare(property){ | ||
2005 | - return function(a,b){ | ||
2006 | - var value1 = a[property]; | ||
2007 | - var value2 = b[property]; | ||
2008 | - return value1 - value2; | ||
2009 | - } | ||
2010 | - } | ||
2011 | - if(newarr.length>0) | ||
2012 | - newarr.sort(compare("sort")); | ||
2013 | - | ||
2014 | - //----安排其他的分类----- | ||
2015 | - if (qita.length > 0) { | ||
2016 | - var item = { | ||
2017 | - cat_id: -1, | ||
2018 | - name: "其他", | ||
2019 | - s_arr: qita | ||
2020 | - }; | ||
2021 | - newarr.push(item); | ||
2022 | - } | ||
2023 | - | ||
2024 | - var sd={ | ||
2025 | - all_sto: newarr, | ||
2026 | - is_show_sto_cat:1 | ||
2027 | - } | ||
2028 | - if(!sto_arr || sto_arr.length<=10){ | ||
2029 | - sd.is_show_sto_cat=-1; | ||
2030 | - sd.only_pk=sto_arr; | 2095 | + //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------ |
2096 | + if (!th.data.def_pick_store) { | ||
2097 | + th.setData({def_pick_store:e.data.data.pageData[0]}) | ||
2031 | } | 2098 | } |
2032 | - th.setData(sd); | ||
2033 | - | ||
2034 | - } else { | ||
2035 | - th.setData({ | ||
2036 | - is_show_sto_cat: -1, | ||
2037 | - only_pk: e.data.data.pageData | ||
2038 | - }); | ||
2039 | - //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------ | ||
2040 | - if (!th.data.def_pick_store) { | ||
2041 | - th.setData({def_pick_store:e.data.data.pageData[0]}) | ||
2042 | } | 2099 | } |
2043 | - } | ||
2044 | - } else { | ||
2045 | - th.setData({ | ||
2046 | - is_show_sto_cat: -1, | ||
2047 | - only_pk: e.data.data.pageData | ||
2048 | - }); | ||
2049 | - //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------ | ||
2050 | - if (!th.data.def_pick_store) { | ||
2051 | - th.setData({def_pick_store:e.data.data.pageData[0]}) | ||
2052 | - } | ||
2053 | - | ||
2054 | - } | 2100 | + th.data.get_sto_ing=0; |
2055 | } | 2101 | } |
2056 | }); | 2102 | }); |
2057 | - } else { | 2103 | + } else { |
2104 | + th.data.get_sto_ing=0; | ||
2105 | + | ||
2058 | th.setData({ | 2106 | th.setData({ |
2059 | is_show_sto_cat: 0, | 2107 | is_show_sto_cat: 0, |
2060 | only_pk: e.data.data.pageData | 2108 | only_pk: e.data.data.pageData |
@@ -2092,494 +2140,7 @@ Page({ | @@ -2092,494 +2140,7 @@ Page({ | ||
2092 | return param < 10 ? '0' + param : param; | 2140 | return param < 10 ? '0' + param : param; |
2093 | }, | 2141 | }, |
2094 | 2142 | ||
2095 | - | ||
2096 | - //--定义的保存图片方法,分享团--- | ||
2097 | - saveImageToPhotosAlbum: function() { | ||
2098 | - //--先判断会员状态-- | ||
2099 | - // var user_info = getApp().globalData.userInfo; | ||
2100 | - // if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { | ||
2101 | - // //getApp().my_warnning("请先登录",0,this); | ||
2102 | - // wx.navigateTo({ url: '/packageE/pages/togoin/togoin', }) | ||
2103 | - // return false; | ||
2104 | - // } | ||
2105 | - | ||
2106 | - //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4阶梯团 | ||
2107 | - var type = this.data.prom_type; | ||
2108 | - if (type == 6) type = 2; | ||
2109 | - if (this.data.prom_act && this.data.prom_act.kttype == 3) type = 3; | ||
2110 | 2143 | ||
2111 | - wx.showLoading({ | ||
2112 | - title: '生成中...', | ||
2113 | - }) | ||
2114 | - var that = this, | ||
2115 | - th = that; | ||
2116 | - //设置画板显示,才能开始绘图 | ||
2117 | - that.setData({ | ||
2118 | - canvasHidden: false | ||
2119 | - }) | ||
2120 | - | ||
2121 | - var app = getApp(); | ||
2122 | - var unit = that.data.screenWidth / 750 * 1.35; //基础单位, | ||
2123 | - var path2 = that.data.data.original_img; | ||
2124 | - var scene = th.data.gid+""; | ||
2125 | - var user_id = getApp().globalData.user_id?getApp().globalData.user_id:0; | ||
2126 | - if(user_id>0) { | ||
2127 | - scene+="_"+user_id; | ||
2128 | - } | ||
2129 | - //-- 如果不是会员分享过来的要分享给别人 -- | ||
2130 | - if(getApp().globalData.room_id && th.data.data.goods_id==getApp().globalData.room_goods_id && !getApp().globalData.room_user_share) { | ||
2131 | - //固定房间是第3个字符 | ||
2132 | - if(!user_id) scene+="_0"; | ||
2133 | - scene+="_"+getApp().globalData.room_id ; | ||
2134 | - } | ||
2135 | - ///二微码 | ||
2136 | - var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" + | ||
2137 | - os.stoid + "?sceneValue=" + scene + "&pageValue=pages/goods/goodsInfo/goodsInfo"; | ||
2138 | - | ||
2139 | - console.log(path3); | ||
2140 | - | ||
2141 | - //读取文件成功则OK-- | ||
2142 | - wx.getImageInfo({ | ||
2143 | - src: path3, | ||
2144 | - success: function(res) { | ||
2145 | - //回调写法 | ||
2146 | - th.get_head_temp(th.get_goods_temp, function() { | ||
2147 | - var vpath = res.path; | ||
2148 | - var context = wx.createCanvasContext('share'); | ||
2149 | - //先画背景 | ||
2150 | - var pg_path = "../../../images/share/share_bg.png"; | ||
2151 | - | ||
2152 | - // context.fillStyle="#FFFFFF"; | ||
2153 | - // context.fillRect(0,0,554 * unit, 899 * unit); | ||
2154 | - | ||
2155 | - //-- 如果有自定义海报的时候,判断背景的图片 -- | ||
2156 | - if(th.data.share_b_img){ | ||
2157 | - pg_path=th.data.share_b_img; | ||
2158 | - } | ||
2159 | - context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit); | ||
2160 | - | ||
2161 | - //-- 是自定义海报的情况下 -- | ||
2162 | - if(th.data.poster && parseInt(th.data.poster.style)==2) { | ||
2163 | - //在线上分享人的情况下 | ||
2164 | - if(parseInt(th.data.poster.show_headpic)){ | ||
2165 | - //获取坐标 | ||
2166 | - var x=parseFloat(th.data.poster.head_x)*2; | ||
2167 | - var y=parseFloat(th.data.poster.head_y)*2; | ||
2168 | - var x1=(x+90) *unit; | ||
2169 | - var y1=(y+50) *unit; | ||
2170 | - //--昵称--- | ||
2171 | - context.setFontSize(24 * unit) | ||
2172 | - context.setFillStyle("black") | ||
2173 | - context.fillText(app.globalData.userInfo.nickname, x1, y1); | ||
2174 | - var width = 24 * app.globalData.userInfo.nickname.length * unit + 4 * unit; | ||
2175 | - //强烈推荐 改许程 | ||
2176 | - var tj_path = "../../../images/share/q_tj.png"; | ||
2177 | - context.drawImage(tj_path, x1 + width, y1-22*unit, 85 * unit, 30 * unit); | ||
2178 | - context.setFontSize(16 * unit) | ||
2179 | - context.setLineJoin('round'); //交点设置成圆角 | ||
2180 | - context.setFillStyle("white") | ||
2181 | - context.fillText('强烈推荐', x1 + width+8*unit, y1-1*unit); | ||
2182 | - | ||
2183 | - //context.setFillStyle("black") | ||
2184 | - //context.setFontSize(24 * unit) | ||
2185 | - //context.fillText(getApp().globalData.config.store_name, 40 * unit, 130 * unit); | ||
2186 | - } | ||
2187 | - } else { | ||
2188 | - //--昵称--- | ||
2189 | - context.setFontSize(24 * unit) | ||
2190 | - context.setFillStyle("black") | ||
2191 | - context.fillText(app.globalData.userInfo.nickname, 152 * unit, 76 * unit); | ||
2192 | - var width = 24 * app.globalData.userInfo.nickname.length * unit + 2 * unit; | ||
2193 | - //强烈推荐 改许程 | ||
2194 | - var tj_path = "../../../images/share/q_tj.png"; | ||
2195 | - context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit); | ||
2196 | - context.setFontSize(16 * unit); | ||
2197 | - context.setLineJoin('round'); //交点设置成圆角 | ||
2198 | - context.setFillStyle("white"); | ||
2199 | - context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 75 * unit); | ||
2200 | - } | ||
2201 | - | ||
2202 | - | ||
2203 | - //---产品名称--- | ||
2204 | - //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度 | ||
2205 | - if(type!=4){ | ||
2206 | - context.setFillStyle("black"); | ||
2207 | - context.setFontSize(21.3 * unit) | ||
2208 | - th.draw_Text(context, th.data.data.goods_name, | ||
2209 | - 38 * unit, 180 * unit, 200 * unit, 279 * unit, unit); | ||
2210 | - //------产品的价格------- | ||
2211 | - context.setFontSize(23 * unit) | ||
2212 | - context.setFillStyle("red") | ||
2213 | - context.fillText("¥", 416 * unit, 185 * unit); | ||
2214 | - context.setFontSize(31 * unit) | ||
2215 | - var pri0 = th.data.data.shop_price; | ||
2216 | - if (th.data.prom_act) | ||
2217 | - pri0 = th.data.prom_act.price; | ||
2218 | - pri0 = parseFloat(pri0).toFixed(2); | ||
2219 | - context.fillText(pri0, 438 * unit, 185 * unit); | ||
2220 | - //---市场价划掉--- | ||
2221 | - context.setFillStyle("gray") | ||
2222 | - context.setFontSize(22 * unit) | ||
2223 | - context.fillText("¥" + th.data.data.market_price, 426 * unit, 213 * unit); | ||
2224 | - context.setStrokeStyle('gray'); | ||
2225 | - context.setLineWidth(1 * unit); | ||
2226 | - context.moveTo(426 * unit, 206 * unit); | ||
2227 | - context.lineTo(510 * unit, 206 * unit); | ||
2228 | - context.stroke(); | ||
2229 | - | ||
2230 | - }else{ | ||
2231 | - context.setFillStyle("black"); | ||
2232 | - context.setFontSize(21.3 * unit) | ||
2233 | - th.draw_Text(context, th.data.data.goods_name, | ||
2234 | - 38 * unit, 170 * unit, 20 * unit, 300*unit, unit); | ||
2235 | - //------ 产品的价格 ----- | ||
2236 | - var pri0 = th.data.prom_act.addmoney; | ||
2237 | - var integral=th.data.prom_act.integral; | ||
2238 | - var text= ""; | ||
2239 | - if(integral){text=integral+"积分"; } | ||
2240 | - if(pri0 && integral){ text+="+";} | ||
2241 | - if(pri0){ text+="¥"+pri0;} | ||
2242 | - | ||
2243 | - if(!pri0 && !integral){ text="0积分";} | ||
2244 | - context.setFillStyle("red"); | ||
2245 | - context.fillText(text, 38 * unit, 235 * unit); | ||
2246 | - | ||
2247 | - } | ||
2248 | - | ||
2249 | - //---中间大图--- | ||
2250 | - context.drawImage(th.data.share_goods_img, 70 * unit, 250 * unit, 408 * unit, 408 * unit); | ||
2251 | - //-------大图后面就不一样了----------- | ||
2252 | - switch (type) { | ||
2253 | - case 0: //普通商品的展示 | ||
2254 | - case 4: | ||
2255 | - //中间的几个字 | ||
2256 | - if(th.data.poster && parseInt(th.data.poster.style)==2 ){ | ||
2257 | - if(parseInt(th.data.poster.show_quality)){ | ||
2258 | - var g_path = "../../../images/share/s_gou.png"; | ||
2259 | - context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit); | ||
2260 | - context.setFillStyle("red") | ||
2261 | - context.setFontSize(18 * unit) | ||
2262 | - context.fillText("正品保证", 84 * unit, 690 * unit); | ||
2263 | - | ||
2264 | - context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit); | ||
2265 | - context.setFillStyle("red") | ||
2266 | - context.setFontSize(18 * unit) | ||
2267 | - context.fillText("纯实体店", 246 * unit, 690 * unit); | ||
2268 | - | ||
2269 | - context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit); | ||
2270 | - context.setFillStyle("red") | ||
2271 | - context.setFontSize(18 * unit) | ||
2272 | - context.fillText("官方验证", 420 * unit, 690 * unit); | ||
2273 | - } | ||
2274 | - | ||
2275 | - }else{ | ||
2276 | - var g_path = "../../../images/share/s_gou.png"; | ||
2277 | - context.drawImage(g_path, 56 * unit, 670 * unit, 22 * unit, 22 * unit); | ||
2278 | - context.setFillStyle("red") | ||
2279 | - context.setFontSize(18 * unit) | ||
2280 | - context.fillText("正品保证", 84 * unit, 690 * unit); | ||
2281 | - | ||
2282 | - context.drawImage(g_path, 218 * unit, 670 * unit, 22 * unit, 22 * unit); | ||
2283 | - context.setFillStyle("red") | ||
2284 | - context.setFontSize(18 * unit) | ||
2285 | - context.fillText("纯实体店", 246 * unit, 690 * unit); | ||
2286 | - | ||
2287 | - context.drawImage(g_path, 388 * unit, 670 * unit, 22 * unit, 22 * unit); | ||
2288 | - context.setFillStyle("red") | ||
2289 | - context.setFontSize(18 * unit) | ||
2290 | - context.fillText("官方验证", 420 * unit, 690 * unit); | ||
2291 | - } | ||
2292 | - | ||
2293 | - | ||
2294 | - //---画线--- | ||
2295 | - context.setLineWidth(1 * unit) | ||
2296 | - context.moveTo(32 * unit, 710 * unit) | ||
2297 | - context.lineTo(520 * unit, 710 * unit) | ||
2298 | - context.stroke(); | ||
2299 | - | ||
2300 | - //---文字--- | ||
2301 | - context.setFillStyle("black") | ||
2302 | - context.setFontSize(22 * unit) | ||
2303 | - | ||
2304 | - if(type==0){ | ||
2305 | - // 原来start ---> | ||
2306 | - context.setFontSize(24 * unit) | ||
2307 | - context.fillText(th.data.sto_sele_name_1, 40 * unit, 766 * unit); | ||
2308 | - | ||
2309 | - context.setFontSize(22 * unit) | ||
2310 | - context.fillText("优惠乐翻天,精彩就在你身边", 40 * unit, 806 * unit); | ||
2311 | - context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 846 * unit); | ||
2312 | - | ||
2313 | - }else{ | ||
2314 | - context.setFontSize(24 * unit) | ||
2315 | - context.fillText(th.data.sto_sele_name_1, 40 * unit, 766 * unit); | ||
2316 | - context.setFontSize(22 * unit) | ||
2317 | - context.fillText("长按识别二维码", 40 * unit, 806 * unit); | ||
2318 | - context.fillText("立即开始兑换", 40 * unit, 846 * unit); | ||
2319 | - | ||
2320 | - | ||
2321 | - } | ||
2322 | - | ||
2323 | - //---二维吗图--- | ||
2324 | - //-- 自定义海报 -- | ||
2325 | - if(th.data.poster){ | ||
2326 | - var erm_x= parseFloat(th.data.poster.ewm_x)*2; | ||
2327 | - var erm_y= parseFloat(th.data.poster.ewm_y)*2; | ||
2328 | - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit); | ||
2329 | - }else{ | ||
2330 | - //---二维吗图--- | ||
2331 | - context.drawImage(vpath, 410 * unit, 726 * unit, 115 * unit, 125 * unit); | ||
2332 | - } | ||
2333 | - | ||
2334 | - break; | ||
2335 | - case 1: //秒杀商品的展示 | ||
2336 | - //---画线--- | ||
2337 | - context.setLineWidth(1 * unit) | ||
2338 | - context.moveTo(32 * unit, 670 * unit) | ||
2339 | - context.lineTo(520 * unit, 670 * unit) | ||
2340 | - context.stroke(); | ||
2341 | - | ||
2342 | - //画秒杀的图片 | ||
2343 | - var miaos_path = '../../../images/share/miao_share.png'; | ||
2344 | - context.drawImage(miaos_path, 43 * unit, 700 * unit, 222 * unit, 40 * unit); | ||
2345 | - | ||
2346 | - context.setFillStyle("black") | ||
2347 | - context.setFontSize(24 * unit) | ||
2348 | - context.fillText(th.data.sto_sele_name_1, 40 * unit, 786 * unit); | ||
2349 | - //---文字--- | ||
2350 | - context.setFontSize(22 * unit) | ||
2351 | - context.setFillStyle("black") | ||
2352 | - context.fillText("特惠好物,限时秒杀", 40 * unit, 826 * unit); | ||
2353 | - context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 866 * unit); | ||
2354 | - | ||
2355 | - | ||
2356 | - //---二维吗图--- | ||
2357 | - //-- 自定义海报 -- | ||
2358 | - if(th.data.poster){ | ||
2359 | - var erm_x= parseFloat(th.data.poster.ewm_x)*2; | ||
2360 | - var erm_y= parseFloat(th.data.poster.ewm_y)*2; | ||
2361 | - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit); | ||
2362 | - }else{ | ||
2363 | - //---二维吗图--- | ||
2364 | - context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit); | ||
2365 | - } | ||
2366 | - break; | ||
2367 | - | ||
2368 | - case 2: //会员团和商家团的展示 | ||
2369 | - //---画线--- | ||
2370 | - context.setLineWidth(1 * unit) | ||
2371 | - context.moveTo(32 * unit, 670 * unit) | ||
2372 | - context.lineTo(520 * unit, 670 * unit) | ||
2373 | - context.stroke(); | ||
2374 | - //---文字--- | ||
2375 | - | ||
2376 | - context.setFillStyle("black") | ||
2377 | - context.setFontSize(24 * unit) | ||
2378 | - context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit); | ||
2379 | - | ||
2380 | - //绘制成团图片 | ||
2381 | - var ct_img = "../../../images/share/ct_num.png"; | ||
2382 | - context.drawImage(ct_img, 40 * unit, 740 * unit, 120 * unit, 30 * unit); | ||
2383 | - var ct_num = th.data.prom_act.ct_num; | ||
2384 | - context.setFontSize(14 * unit) | ||
2385 | - context.font = 'normal'; | ||
2386 | - context.setFillStyle("red") | ||
2387 | - if (ct_num < 10) { | ||
2388 | - context.fillText(ct_num + "人拼团", 92 * unit, 760 * unit); | ||
2389 | - } else { | ||
2390 | - context.fillText(ct_num + "人拼团", 86 * unit, 760 * unit); | ||
2391 | - } | ||
2392 | - context.setFontSize(22 * unit) | ||
2393 | - context.fillText("已拼" + th.data.prom_act.buy_num + "份", 166 * unit, 763 * unit); | ||
2394 | - | ||
2395 | - context.setFillStyle("gray") | ||
2396 | - context.fillText("快来和我一起拼团吧!", 40 * unit, 806 * unit); | ||
2397 | - context.setFillStyle("black") | ||
2398 | - context.font = 'normal bold 18px sans-serif'; | ||
2399 | - context.setFontSize(21.3 * unit) | ||
2400 | - context.fillText("长按识别二维码,立即参团", 40 * unit, 836 * unit); | ||
2401 | - | ||
2402 | - | ||
2403 | - //---二维吗图--- | ||
2404 | - //-- 自定义海报 -- | ||
2405 | - if(th.data.poster){ | ||
2406 | - var erm_x= parseFloat(th.data.poster.ewm_x)*2; | ||
2407 | - var erm_y= parseFloat(th.data.poster.ewm_y)*2; | ||
2408 | - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit); | ||
2409 | - }else{ | ||
2410 | - //---二维吗图--- | ||
2411 | - context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit); | ||
2412 | - } | ||
2413 | - break | ||
2414 | - case 3: //阶梯团的展示 | ||
2415 | - //---画线--- | ||
2416 | - context.setLineWidth(1 * unit) | ||
2417 | - context.moveTo(32 * unit, 670 * unit) | ||
2418 | - context.lineTo(520 * unit, 670 * unit) | ||
2419 | - context.stroke(); | ||
2420 | - //---文字--- | ||
2421 | - | ||
2422 | - context.setFillStyle("black") | ||
2423 | - context.setFontSize(24 * unit) | ||
2424 | - context.fillText(th.data.sto_sele_name_1, 40 * unit, 720 * unit); | ||
2425 | - | ||
2426 | - //---绘制中间阶梯的价格--- | ||
2427 | - var list = th.data.prom_act.ct_rylist; | ||
2428 | - for (var i = 0; i < list.length; i++) { | ||
2429 | - var item = list[i]; | ||
2430 | - var wi = i * 90 * unit; | ||
2431 | - context.font = 'normal'; | ||
2432 | - context.setFontSize(16 * unit) | ||
2433 | - context.setFillStyle("red") | ||
2434 | - context.fillText("¥", 40 * unit + wi, 756 * unit); | ||
2435 | - context.setFontSize(22 * unit) | ||
2436 | - var pri = parseFloat(item.price).toFixed(2); | ||
2437 | - context.fillText(pri, 56 * unit + wi, 756 * unit); | ||
2438 | - context.setFillStyle("gray") | ||
2439 | - context.fillText("满" + item.rynum + "人", 40 * unit + wi, 786 * unit); | ||
2440 | - } | ||
2441 | - //----------------下面部分---------------- | ||
2442 | - // context.setFillStyle("gray") | ||
2443 | - // context.fillText("快来和我一起拼团吧!", 40 * unit, 830 * unit); | ||
2444 | - // context.setFillStyle("black") | ||
2445 | - // context.font = 'normal bold 18px sans-serif'; | ||
2446 | - // context.setFontSize(22 * unit) | ||
2447 | - // context.fillText("长按识别二维码,立即参团", 40 * unit, 860 * unit); | ||
2448 | - //context.setFillStyle("gray") | ||
2449 | - context.setFillStyle("black") | ||
2450 | - context.fillText("快来和我一起拼团吧!", 40 * unit, 820 * unit); | ||
2451 | - //context.font = 'normal bold 18px sans-serif'; | ||
2452 | - context.setFontSize(22 * unit) | ||
2453 | - context.fillText("长按识别二维码,立即参团", 40 * unit, 850 * unit); | ||
2454 | - | ||
2455 | - | ||
2456 | - //-- 自定义海报 -- | ||
2457 | - if(th.data.poster){ | ||
2458 | - var erm_x= parseFloat(th.data.poster.ewm_x)*2; | ||
2459 | - var erm_y= parseFloat(th.data.poster.ewm_y)*2; | ||
2460 | - context.drawImage(vpath, erm_x * unit, erm_y * unit, 120 * unit, 120 * unit); | ||
2461 | - }else{ | ||
2462 | - //---二维吗图--- | ||
2463 | - context.drawImage(vpath, 420 * unit, 726 * unit, 120 * unit, 120 * unit); | ||
2464 | - } | ||
2465 | - break | ||
2466 | - | ||
2467 | - | ||
2468 | - } | ||
2469 | - | ||
2470 | - | ||
2471 | - //--- 如果是自定义海报的时候 --- | ||
2472 | - if(th.data.poster && parseInt(th.data.poster.style)==2){ | ||
2473 | - | ||
2474 | - //如果显示会员信息的话 | ||
2475 | - if(parseInt(th.data.poster.show_headpic)){ | ||
2476 | - //获取坐标 | ||
2477 | - var x= parseFloat(th.data.poster.head_x)*2; | ||
2478 | - var y=parseFloat(th.data.poster.head_y)*2; | ||
2479 | - //---绘制圆形要放在最后---- | ||
2480 | - context.save(); | ||
2481 | - context.beginPath(); | ||
2482 | - var h_x = x* unit; | ||
2483 | - var h_y = y * unit; | ||
2484 | - var h_r = 40 * unit; | ||
2485 | - var cx = h_x + h_r; | ||
2486 | - var cy = h_y + h_r; | ||
2487 | - context.arc(cx, cy, h_r, 0, Math.PI * 2, false); | ||
2488 | - context.closePath(); | ||
2489 | - context.fill(); | ||
2490 | - context.clip(); | ||
2491 | - context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2); | ||
2492 | - context.restore(); | ||
2493 | - } | ||
2494 | - | ||
2495 | - }else{ | ||
2496 | - //---绘制圆形要放在最后---- | ||
2497 | - context.save(); | ||
2498 | - context.beginPath(); | ||
2499 | - var h_x = 60 * unit; | ||
2500 | - var h_y = 24 * unit; | ||
2501 | - var h_r = 40 * unit; | ||
2502 | - var cx = h_x + h_r; | ||
2503 | - var cy = h_y + h_r; | ||
2504 | - context.arc(cx, cy, h_r, 0, Math.PI * 2, false); | ||
2505 | - context.closePath(); | ||
2506 | - context.fill(); | ||
2507 | - context.clip(); | ||
2508 | - context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2); | ||
2509 | - context.restore(); | ||
2510 | - } | ||
2511 | - | ||
2512 | - | ||
2513 | - //把画板内容绘制成图片,并回调 画板图片路径 | ||
2514 | - context.draw(false, function() { | ||
2515 | - setTimeout(function() { | ||
2516 | - wx.canvasToTempFilePath({ | ||
2517 | - x: 0, | ||
2518 | - y: 0, | ||
2519 | - width: 750, | ||
2520 | - height: 1217, | ||
2521 | - destWidth: 1.2 * 750 * 750 / that.data.screenWidth, | ||
2522 | - destHeight: 1.2 * 1217 * 750 / that.data.screenWidth, | ||
2523 | - canvasId: 'share', | ||
2524 | - success: function(res) { | ||
2525 | - that.setData({ | ||
2526 | - shareImgPath: res.tempFilePath, | ||
2527 | - canvasHidden: true | ||
2528 | - }) | ||
2529 | - if (!res.tempFilePath) { | ||
2530 | - wx.showModal({ | ||
2531 | - title: '提示', | ||
2532 | - content: '图片绘制中,请稍后重试', | ||
2533 | - showCancel: false | ||
2534 | - }) | ||
2535 | - return false; | ||
2536 | - } | ||
2537 | - // wx.previewImage({ | ||
2538 | - // //将图片预览出来 | ||
2539 | - // urls: [that.data.shareImgPath] | ||
2540 | - // }); | ||
2541 | - that.setData({ | ||
2542 | - showPoster: true, | ||
2543 | - }); | ||
2544 | - wx.hideLoading(); | ||
2545 | - } | ||
2546 | - }) | ||
2547 | - }, 500) | ||
2548 | - | ||
2549 | - }); | ||
2550 | - }); | ||
2551 | - } | ||
2552 | - }); | ||
2553 | - }, | ||
2554 | - | ||
2555 | - | ||
2556 | - //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度 | ||
2557 | - draw_Text: function(ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, unit) { | ||
2558 | - var lineWidth = 0; | ||
2559 | - var lastSubStrIndex = 0; //每次开始截取的字符串的索引 | ||
2560 | - var han = 0; | ||
2561 | - for (let i = 0; i < str.length; i++) { | ||
2562 | - if (han == 2) return; | ||
2563 | - //lineWidth += ctx.measureText(str[i]).width; | ||
2564 | - lineWidth += ut.measureText(str[i], 21.3 * unit); | ||
2565 | - if (lineWidth > canvasWidth) { | ||
2566 | - han++; | ||
2567 | - | ||
2568 | - if (han == 2) | ||
2569 | - ctx.fillText(str.substring(lastSubStrIndex, i) + '...', leftWidth, initHeight); //绘制截取部分 | ||
2570 | - else | ||
2571 | - ctx.fillText(str.substring(lastSubStrIndex, i), leftWidth, initHeight); | ||
2572 | - | ||
2573 | - initHeight += 22; //22为字体的高度 | ||
2574 | - lineWidth = 0; | ||
2575 | - lastSubStrIndex = i; | ||
2576 | - titleHeight += 20; | ||
2577 | - } | ||
2578 | - if (i == str.length - 1) { //绘制剩余部分 | ||
2579 | - ctx.fillText(str.substring(lastSubStrIndex, i + 1), leftWidth, initHeight); | ||
2580 | - } | ||
2581 | - } | ||
2582 | - }, | ||
2583 | 2144 | ||
2584 | // ----视频图片---- | 2145 | // ----视频图片---- |
2585 | // 图片计数器 | 2146 | // 图片计数器 |
@@ -2636,7 +2197,7 @@ Page({ | @@ -2636,7 +2197,7 @@ Page({ | ||
2636 | return false; | 2197 | return false; |
2637 | } | 2198 | } |
2638 | //---获取分享图片的本地地址,头像和商品图片---- | 2199 | //---获取分享图片的本地地址,头像和商品图片---- |
2639 | - var path2 = getApp().globalData.userInfo.head_pic; | 2200 | + var path2 = getApp().globalData.userInfo?getApp().globalData.userInfo.head_pic:''; |
2640 | if (path2 == "") { | 2201 | if (path2 == "") { |
2641 | ee.data.share_head = "../../../images/share/hui_hear_pic.png"; | 2202 | ee.data.share_head = "../../../images/share/hui_hear_pic.png"; |
2642 | tt(func); | 2203 | tt(func); |
@@ -2657,37 +2218,44 @@ Page({ | @@ -2657,37 +2218,44 @@ Page({ | ||
2657 | }); | 2218 | }); |
2658 | } | 2219 | } |
2659 | }, | 2220 | }, |
2221 | + | ||
2660 | //--获取商品图片的本地缓存,回调写法-- | 2222 | //--获取商品图片的本地缓存,回调写法-- |
2661 | get_goods_temp: function(tt) { | 2223 | get_goods_temp: function(tt) { |
2662 | - var ee = this; | ||
2663 | - if (ee.data.share_goods_img) { | ||
2664 | - tt(); | ||
2665 | - return false; | ||
2666 | - } | ||
2667 | - //获取商品是分享图信息 | ||
2668 | - wx.getImageInfo({ | ||
2669 | - src: ee.data.data.original_img, | ||
2670 | - success: function(res) { | ||
2671 | - //res.path是网络图片的本地地址 | ||
2672 | - ee.data.share_goods_img = res.path; | ||
2673 | - tt(); | ||
2674 | - }, | ||
2675 | - fail: function(res) { | ||
2676 | - //获取默认空白图 | ||
2677 | - wx.getImageInfo({ | ||
2678 | - src: ee.data.iurl+'/miniapp/images/default_g_img.gif', | ||
2679 | - success: function(res) { | ||
2680 | - ee.data.share_goods_img = res.path; //分享的图片不能用网络的 | ||
2681 | - tt(); | ||
2682 | - } | ||
2683 | - }) | 2224 | + var ee = this; |
2225 | + if (ee.data.share_goods_img) { | ||
2226 | + tt(); | ||
2227 | + return false; | ||
2228 | + } | ||
2684 | 2229 | ||
2685 | - } | ||
2686 | - }); | ||
2687 | - }, | 2230 | + var img=ee.data.iurl+ee.data.data.image_url; |
2231 | + if(ee.data.prom_act && ee.data.prom_act.share_img){ | ||
2232 | + img=ee.data.iurl+ee.data.prom_act.share_img; | ||
2233 | + } | ||
2234 | + | ||
2235 | + //获取商品是分享图信息 | ||
2236 | + wx.getImageInfo({ | ||
2237 | + src: img, | ||
2238 | + success: function(res) { | ||
2239 | + //res.path是网络图片的本地地址 | ||
2240 | + ee.data.share_goods_img = res.path; | ||
2241 | + tt(); | ||
2242 | + }, | ||
2243 | + fail: function(res) { | ||
2244 | + //获取默认空白图 | ||
2245 | + wx.getImageInfo({ | ||
2246 | + src: ee.data.iurl+'/miniapp/images/default_g_img.gif', | ||
2247 | + success: function(res) { | ||
2248 | + ee.data.share_goods_img = res.path; //分享的图片不能用网络的 | ||
2249 | + tt(); | ||
2250 | + } | ||
2251 | + }) | ||
2688 | 2252 | ||
2253 | + } | ||
2254 | + }); | ||
2255 | + }, | ||
2689 | 2256 | ||
2690 | - //--跳转到商品详情页面-- | 2257 | + |
2258 | + //--跳转到商品详情页面-- | ||
2691 | go_goods: function(e) { | 2259 | go_goods: function(e) { |
2692 | var gid = e.currentTarget.dataset.gid; | 2260 | var gid = e.currentTarget.dataset.gid; |
2693 | var url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + gid; | 2261 | var url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + gid; |
@@ -2713,12 +2281,12 @@ Page({ | @@ -2713,12 +2281,12 @@ Page({ | ||
2713 | 2281 | ||
2714 | //--先判断会员状态-- | 2282 | //--先判断会员状态-- |
2715 | var user_info = getApp().globalData.userInfo; | 2283 | var user_info = getApp().globalData.userInfo; |
2716 | - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { | ||
2717 | - wx.navigateTo({ | ||
2718 | - url: '/packageE/pages/togoin/togoin', | ||
2719 | - }) | ||
2720 | - return false; | ||
2721 | - } | 2284 | + // if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { |
2285 | + // wx.navigateTo({ | ||
2286 | + // url: '/packageE/pages/togoin/togoin', | ||
2287 | + // }) | ||
2288 | + // return false; | ||
2289 | + // } | ||
2722 | 2290 | ||
2723 | 2291 | ||
2724 | //如果开启了,则不在选择门店 | 2292 | //如果开启了,则不在选择门店 |
@@ -3673,7 +3241,7 @@ Page({ | @@ -3673,7 +3241,7 @@ Page({ | ||
3673 | ee.get_normal(gid); | 3241 | ee.get_normal(gid); |
3674 | return false; | 3242 | return false; |
3675 | } | 3243 | } |
3676 | - | 3244 | + |
3677 | var t_gd = ee.data.data; | 3245 | var t_gd = ee.data.data; |
3678 | var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss"); | 3246 | var prom_end_time = ut.formatTime(t.data.data.end_time, "yyyy-MM-dd hh:mm:ss"); |
3679 | var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss"); | 3247 | var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss"); |
@@ -3686,6 +3254,7 @@ Page({ | @@ -3686,6 +3254,7 @@ Page({ | ||
3686 | prom_act: t.data.data, | 3254 | prom_act: t.data.data, |
3687 | prom_end_time: prom_end_time, | 3255 | prom_end_time: prom_end_time, |
3688 | prom_start_time: prom_start_time, | 3256 | prom_start_time: prom_start_time, |
3257 | + is_share_text: t.data.data.is_share_text | ||
3689 | }); | 3258 | }); |
3690 | 3259 | ||
3691 | ee.get_sto(); | 3260 | ee.get_sto(); |
@@ -3957,6 +3526,8 @@ Page({ | @@ -3957,6 +3526,8 @@ Page({ | ||
3957 | openSpecModel_Nor: function () { | 3526 | openSpecModel_Nor: function () { |
3958 | var th=this; | 3527 | var th=this; |
3959 | 3528 | ||
3529 | + if(th.data.get_sto_ing) return false; | ||
3530 | + | ||
3960 | // 是否授权登陆 | 3531 | // 是否授权登陆 |
3961 | var user_info = getApp().globalData.userInfo; | 3532 | var user_info = getApp().globalData.userInfo; |
3962 | if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { | 3533 | if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { |
@@ -4095,9 +3666,776 @@ Page({ | @@ -4095,9 +3666,776 @@ Page({ | ||
4095 | }) | 3666 | }) |
4096 | } | 3667 | } |
4097 | }, | 3668 | }, |
4098 | - | ||
4099 | - | ||
4100 | - | 3669 | + |
3670 | + clickShare() { | ||
3671 | + this.setData({ | ||
3672 | + share_hidden: true, | ||
3673 | + }); | ||
3674 | + }, | ||
3675 | + send() { | ||
3676 | + this.setData({ | ||
3677 | + share_hidden: false, | ||
3678 | + }); | ||
3679 | + }, | ||
3680 | + cancel() { | ||
3681 | + this.setData({ | ||
3682 | + share_hidden: false, | ||
3683 | + }); | ||
3684 | + }, | ||
3685 | + | ||
3686 | + | ||
3687 | + saveImageFn(){ | ||
3688 | + if(this.data.share_b_img){ | ||
3689 | + this.saveImageToPhotosAlbum() | ||
3690 | + }else{ | ||
3691 | + this.saveImageToPhotosAlbumDef() | ||
3692 | + } | ||
3693 | + }, | ||
3694 | + | ||
3695 | + | ||
3696 | + //--定义的保存图片方法,分享团--- | ||
3697 | + saveImageToPhotosAlbum: function () { | ||
3698 | + //--先判断会员状态-- | ||
3699 | + // var user_info = getApp().globalData.userInfo; | ||
3700 | + // if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { | ||
3701 | + // //getApp().my_warnning("请先登录",0,this); | ||
3702 | + // wx.navigateTo({ url: '/packageE/pages/togoin/togoin', }) | ||
3703 | + // return false; | ||
3704 | + // } | ||
3705 | + | ||
3706 | + if (this.data.share_hidden) { | ||
3707 | + this.setData({ | ||
3708 | + share_hidden: false, | ||
3709 | + }); | ||
3710 | + }; | ||
3711 | + | ||
3712 | + //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4阶梯团 | ||
3713 | + var type = this.data.prom_type || 0; | ||
3714 | + console.log('商品类型-----'); | ||
3715 | + console.log(type); | ||
3716 | + // if (type == 2) type = -1; | ||
3717 | + if (type == 4) type = 0; | ||
3718 | + if (type == 8) type = 0; | ||
3719 | + if (type == 2) type = 0; | ||
3720 | + if (type == 6) type = 2; // 6拼团 2团购 | ||
3721 | + if (type == 10) type = -1; | ||
3722 | + | ||
3723 | + wx.showLoading({ | ||
3724 | + title: '生成中...', | ||
3725 | + }) | ||
3726 | + var that = this, | ||
3727 | + th = that; | ||
3728 | + //设置画板显示,才能开始绘图 | ||
3729 | + that.setData({ | ||
3730 | + canvasHidden: false | ||
3731 | + }) | ||
3732 | + | ||
3733 | + var app = getApp(); | ||
3734 | + var unit = that.data.screenWidth / 750 * 1.35; //基础单位, | ||
3735 | + var path2 = that.data.data.original_img; | ||
3736 | + | ||
3737 | + var scene = th.data.gid; | ||
3738 | + var user_id = getApp().globalData.user_id ? getApp().globalData.user_id : 0; | ||
3739 | + if (user_id > 0) { | ||
3740 | + scene += "_" + user_id; | ||
3741 | + } | ||
3742 | + //-- 如果不是会员分享过来的要分享给别人 -- | ||
3743 | + if (getApp().globalData.room_id && th.data.data.goods_id == getApp().globalData.room_goods_id && !getApp().globalData.room_user_share) { | ||
3744 | + //固定房间是第3个字符 | ||
3745 | + if (!user_id) scene += "_0"; | ||
3746 | + scene += "_" + getApp().globalData.room_id; | ||
3747 | + }else{ | ||
3748 | + if (!user_id) scene += "_0"; | ||
3749 | + scene += "_0"; | ||
3750 | + } | ||
3751 | + if(this.data.prom_type){ | ||
3752 | + scene += "_" + this.data.prom_type+"_"+th.data.prom_id; | ||
3753 | + } | ||
3754 | + | ||
3755 | + | ||
3756 | + ///二微码 | ||
3757 | + var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" + | ||
3758 | + os.stoid + "?sceneValue=" + scene + "&pageValue=packageA/pages/goodsInfo/goodsInfo"; | ||
3759 | + | ||
3760 | + | ||
3761 | + console.log(path3); | ||
3762 | + | ||
3763 | + //读取文件成功则OK-- | ||
3764 | + wx.getImageInfo({ | ||
3765 | + src: path3, | ||
3766 | + success: function (res) { | ||
3767 | + //回调写法 | ||
3768 | + th.get_head_temp(th.get_goods_temp, function () { | ||
3769 | + var vpath = res.path; | ||
3770 | + var context = wx.createCanvasContext('share'); | ||
3771 | + //先画背景 | ||
3772 | + var pg_path = "../../../images/share/share_bg.png"; | ||
3773 | + | ||
3774 | + //-- 如果有自定义海报的时候,判断背景的图片 -- | ||
3775 | + if (th.data.share_b_img) { | ||
3776 | + pg_path = th.data.share_b_img; | ||
3777 | + } | ||
3778 | + context.drawImage(pg_path, 0, 0, 554 * unit, 899 * unit); | ||
3779 | + | ||
3780 | + let nick=app.globalData.userInfo?app.globalData.userInfo.nickname:''; | ||
3781 | + | ||
3782 | + //-- 是自定义海报的情况下 -- | ||
3783 | + if (th.data.poster && parseInt(th.data.poster.style) == 2) { | ||
3784 | + //在线上分享人的情况下 | ||
3785 | + if (parseInt(th.data.poster.show_headpic)) { | ||
3786 | + //获取坐标 | ||
3787 | + var x = parseFloat(th.data.poster.head_x) * 2; | ||
3788 | + var y = parseFloat(th.data.poster.head_y) * 2; | ||
3789 | + var x1 = (x + 90) * unit; | ||
3790 | + var y1 = (y + 50) * unit; | ||
3791 | + //--昵称--- | ||
3792 | + context.setFontSize(24 * unit) | ||
3793 | + context.setFillStyle("black") | ||
3794 | + context.fillText(nick, x1, y1); | ||
3795 | + var width = 24 * nick.length * unit + 4 * unit; | ||
3796 | + //强烈推荐 改许程 | ||
3797 | + var tj_path = "../../../images/share/q_tj.png"; | ||
3798 | + context.drawImage(tj_path, x1 + width, y1 - 22 * unit, 85 * unit, 30 * unit); | ||
3799 | + context.setFontSize(16 * unit) | ||
3800 | + context.setLineJoin('round'); //交点设置成圆角 | ||
3801 | + context.setFillStyle("white") | ||
3802 | + context.fillText('强烈推荐', x1 + width + 8 * unit, y1 - 1 * unit); | ||
3803 | + | ||
3804 | + //context.setFillStyle("black") | ||
3805 | + //context.setFontSize(24 * unit) | ||
3806 | + //context.fillText(getApp().globalData.config.store_name, 40 * unit, 130 * unit); | ||
3807 | + } | ||
3808 | + } else { | ||
3809 | + //--昵称--- | ||
3810 | + context.setFontSize(24 * unit) | ||
3811 | + context.setFillStyle("black") | ||
3812 | + context.fillText(nick, 152 * unit, 76 * unit); | ||
3813 | + var width = 24 * nick.length * unit + 2 * unit; | ||
3814 | + //强烈推荐 改许程 | ||
3815 | + var tj_path = "../../../images/share/q_tj.png"; | ||
3816 | + context.drawImage(tj_path, 152 * unit + width, 54 * unit, 85 * unit, 30 * unit); | ||
3817 | + context.setFontSize(16 * unit); | ||
3818 | + context.setLineJoin('round'); //交点设置成圆角 | ||
3819 | + context.setFillStyle("white"); | ||
3820 | + context.fillText('强烈推荐', 149 * unit + width + 15 * unit, 75 * unit); | ||
3821 | + } | ||
3822 | + | ||
3823 | + var share_title = th.data.data.goods_name; | ||
3824 | + | ||
3825 | + if (th.data.prom_type == 1 || th.data.prom_type == 2 || th.data.prom_type == 6 || th.data.prom_type == 4) { | ||
3826 | + share_title = th.data.prom_act.share_title; | ||
3827 | + if (!share_title) share_title = th.data.prom_act.title; | ||
3828 | + if (th.data.prom_type == 4) share_title = th.data.prom_act.name; | ||
3829 | + | ||
3830 | + //-- 显示活动时间 -- | ||
3831 | + if (th.data.share_b_img) { | ||
3832 | + act_time = "截止时间:" + ut.formatTime(th.data.prom_act.end_time); | ||
3833 | + } | ||
3834 | + } | ||
3835 | + | ||
3836 | + //---产品名称--- | ||
3837 | + //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度 | ||
3838 | + | ||
3839 | + context.setFillStyle("black"); | ||
3840 | + context.setFontSize(21.3 * unit) | ||
3841 | + th.draw_Text(context, share_title, | ||
3842 | + 80 * unit, 160 * unit, 200 * unit, 279 * unit, unit); | ||
3843 | + | ||
3844 | + //------产品的价格------- | ||
3845 | + context.setFontSize(23 * unit) | ||
3846 | + context.setFillStyle("red") | ||
3847 | + | ||
3848 | + // 7.商品价格 | ||
3849 | + let price = th.data.data.shop_price; | ||
3850 | + if (th.data.card_field && th.data.data[th.data.card_field]) { | ||
3851 | + price = th.data.data[th.data.card_field]; | ||
3852 | + } | ||
3853 | + if (th.data.prom_act) price = th.data.prom_price; | ||
3854 | + price = parseFloat(price).toFixed(2); | ||
3855 | + | ||
3856 | + var wd1 = th.data.screenWidth - ut.measureText(price, 31 * unit) - 25; | ||
3857 | + context.fillText("¥", wd1 - 15, 160 * unit); | ||
3858 | + context.setFontSize(31 * unit) | ||
3859 | + context.fillText(price, wd1, 165 * unit); | ||
3860 | + | ||
3861 | + //---市场价划掉--- | ||
3862 | + // context.setFillStyle("red") | ||
3863 | + // context.setFontSize(22 * unit) | ||
3864 | + // pri0 = "¥" + th.data.data.market_price.toFixed(2); | ||
3865 | + // var wd2 = th.data.screenWidth - ut.measureText(pri0, 22 * unit) - 25; | ||
3866 | + | ||
3867 | + | ||
3868 | + | ||
3869 | + // context.setStrokeStyle('gray'); | ||
3870 | + // context.fillText(pri0, wd2, 213 * unit); | ||
3871 | + // context.setLineWidth(1 * unit); | ||
3872 | + // context.moveTo(wd2 - 5, 206 * unit); | ||
3873 | + // context.lineTo(wd2 + ut.measureText(pri0, 22 * unit) + 5, 206 * unit); | ||
3874 | + // context.stroke(); | ||
3875 | + | ||
3876 | + //-- 零售价的优化 -- | ||
3877 | + var wp = wd1; | ||
3878 | + var hp = 203 * unit; | ||
3879 | + if (th.data.prom_type != 4) wp -= 12; | ||
3880 | + th.draw_pos_price(context,wp,hp,th.data.data.show_price,unit); | ||
3881 | + | ||
3882 | + | ||
3883 | + //console.log(th.data.share_goods_img); | ||
3884 | + //let share_goods_img=th.data.presellForm.share_img; | ||
3885 | + //share_goods_img?share_goods_img:th.data.data.share_goods_img; | ||
3886 | + //---中间大图--- | ||
3887 | + context.drawImage(th.data.share_goods_img, 70 * unit, 220 * unit, 408 * unit, 408 * unit); | ||
3888 | + //---自定义海报 产品质量保证 | ||
3889 | + if(th.data.poster.show_quality==1 ){ | ||
3890 | + var g_path = "../../../images/share/s_gou.png"; | ||
3891 | + context.drawImage(g_path, 56 * unit, 644 * unit, 22 * unit, 22 * unit); | ||
3892 | + context.setFillStyle("red") | ||
3893 | + context.setFontSize(18 * unit) | ||
3894 | + context.fillText("正品保证", 84 * unit, 664 * unit); | ||
3895 | + | ||
3896 | + context.drawImage(g_path, 218 * unit, 644 * unit, 22 * unit, 22 * unit); | ||
3897 | + context.setFillStyle("red") | ||
3898 | + context.setFontSize(18 * unit) | ||
3899 | + context.fillText("纯实体店", 246 * unit, 664 * unit); | ||
3900 | + | ||
3901 | + context.drawImage(g_path, 388 * unit, 644 * unit, 22 * unit, 22 * unit); | ||
3902 | + context.setFillStyle("red") | ||
3903 | + context.setFontSize(18 * unit) | ||
3904 | + context.fillText("官方验证", 420 * unit, 664 * unit); | ||
3905 | + | ||
3906 | + } | ||
3907 | + | ||
3908 | + //---画线--- | ||
3909 | + // context.setLineWidth(1 * unit) | ||
3910 | + // context.moveTo(32 * unit, 662 * unit) | ||
3911 | + // context.lineTo(520 * unit, 662 * unit) | ||
3912 | + // context.stroke(); | ||
3913 | + | ||
3914 | + //-- 图片底部文字 -- | ||
3915 | + switch (type){ | ||
3916 | + case 0: | ||
3917 | + //---文字--- | ||
3918 | + //---文字--- | ||
3919 | + context.setFillStyle("black"); | ||
3920 | + context.setFontSize(22 * unit); | ||
3921 | + | ||
3922 | + context.fillText("优惠乐翻天,精彩就在你身边", 40 * unit, 776 * unit); | ||
3923 | + context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 826 * unit); | ||
3924 | + | ||
3925 | + break; | ||
3926 | + | ||
3927 | + case 1: | ||
3928 | + | ||
3929 | + //画秒杀的图片 | ||
3930 | + if (th.data.is_share_text) { | ||
3931 | + var miaos_path = '../../../images/share/miao_share.png'; | ||
3932 | + context.drawImage(miaos_path, 43 * unit, 690 * unit, 222 * unit, 40 * unit); | ||
3933 | + } | ||
3934 | + | ||
3935 | + context.setFillStyle("black") | ||
3936 | + context.setFontSize(24 * unit) | ||
3937 | + context.fillText(th.data.sto_sele_name_1, 40 * unit, 770 * unit); | ||
3938 | + //---文字--- | ||
3939 | + context.setFontSize(22 * unit) | ||
3940 | + context.setFillStyle("black") | ||
3941 | + if (th.data.is_share_text) { | ||
3942 | + context.fillText("特惠好物,限时秒杀", 40 * unit, 807 * unit); | ||
3943 | + } | ||
3944 | + context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 844 * unit); | ||
3945 | + | ||
3946 | + break; | ||
3947 | + | ||
3948 | + } | ||
3949 | + | ||
3950 | + | ||
3951 | + | ||
3952 | + //---二维吗图--- | ||
3953 | + //-- 自定义海报 -- | ||
3954 | + if (th.data.poster) { | ||
3955 | + var erm_x = parseFloat(th.data.poster.ewm_x) * 2; | ||
3956 | + var erm_y = parseFloat(th.data.poster.ewm_y) * 2; | ||
3957 | + context.drawImage(vpath, erm_x * unit, erm_y * unit, 136 * unit, 136 * unit); | ||
3958 | + } else { | ||
3959 | + //---二维吗图--- | ||
3960 | + context.drawImage(vpath, 390 * unit, 746 * unit, 130 * unit, 116 * unit); | ||
3961 | + } | ||
3962 | + | ||
3963 | + //--- 如果是自定义海报的时候 --- | ||
3964 | + if (th.data.poster && parseInt(th.data.poster.style) == 2) { | ||
3965 | + | ||
3966 | + //如果显示会员信息的话 | ||
3967 | + if (parseInt(th.data.poster.show_headpic)) { | ||
3968 | + //获取坐标 | ||
3969 | + var x = parseFloat(th.data.poster.head_x) * 2; | ||
3970 | + var y = parseFloat(th.data.poster.head_y) * 2; | ||
3971 | + //---绘制圆形要放在最后---- | ||
3972 | + context.save(); | ||
3973 | + context.beginPath(); | ||
3974 | + var h_x = x * unit; | ||
3975 | + var h_y = y * unit; | ||
3976 | + var h_r = 40 * unit; | ||
3977 | + var cx = h_x + h_r; | ||
3978 | + var cy = h_y + h_r; | ||
3979 | + context.arc(cx, cy, h_r, 0, Math.PI * 2, false); | ||
3980 | + context.closePath(); | ||
3981 | + context.fill(); | ||
3982 | + context.clip(); | ||
3983 | + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2); | ||
3984 | + context.restore(); | ||
3985 | + } | ||
3986 | + | ||
3987 | + } else { | ||
3988 | + //---绘制圆形要放在最后---- | ||
3989 | + context.save(); | ||
3990 | + context.beginPath(); | ||
3991 | + var h_x = 60 * unit; | ||
3992 | + var h_y = 24 * unit; | ||
3993 | + var h_r = 40 * unit; | ||
3994 | + var cx = h_x + h_r; | ||
3995 | + var cy = h_y + h_r; | ||
3996 | + context.arc(cx, cy, h_r, 0, Math.PI * 2, false); | ||
3997 | + context.closePath(); | ||
3998 | + context.fill(); | ||
3999 | + context.clip(); | ||
4000 | + context.drawImage(th.data.share_head, h_x, h_y, h_r * 2, h_r * 2); | ||
4001 | + context.restore(); | ||
4002 | + } | ||
4003 | + | ||
4004 | + | ||
4005 | + if(th.data.poster.show_time==1 && th.data.prom_act){ | ||
4006 | + var act_time=''; | ||
4007 | + act_time="截止时间:"+ ut.formatTime(th.data.prom_act.end_time); | ||
4008 | + context.setFillStyle("red") | ||
4009 | + getApp().draw_Text(context, act_time,38 * unit, 880 * unit, 200 * unit, 340 * unit, unit); | ||
4010 | + } | ||
4011 | + | ||
4012 | + //把画板内容绘制成图片,并回调 画板图片路径 | ||
4013 | + context.draw(false, function () { | ||
4014 | + setTimeout(function () { | ||
4015 | + wx.canvasToTempFilePath({ | ||
4016 | + x: 0, | ||
4017 | + y: 0, | ||
4018 | + width: 750, | ||
4019 | + height: 1217, | ||
4020 | + destWidth: 1.2 * 750 * 750 / that.data.screenWidth, | ||
4021 | + destHeight: 1.2 * 1217 * 750 / that.data.screenWidth, | ||
4022 | + canvasId: 'share', | ||
4023 | + success: function (res) { | ||
4024 | + | ||
4025 | + that.setData({ | ||
4026 | + shareImgPath: res.tempFilePath, | ||
4027 | + canvasHidden: true | ||
4028 | + }) | ||
4029 | + | ||
4030 | + if (!res.tempFilePath) { | ||
4031 | + wx.showModal({ | ||
4032 | + title: '提示', | ||
4033 | + content: '图片绘制中,请稍后重试', | ||
4034 | + showCancel: false | ||
4035 | + }) | ||
4036 | + return false; | ||
4037 | + } | ||
4038 | + | ||
4039 | + // wx.previewImage({ | ||
4040 | + // //将图片预览出来 | ||
4041 | + // urls: [that.data.shareImgPath] | ||
4042 | + // }); | ||
4043 | + that.setData({ | ||
4044 | + showPoster: true, | ||
4045 | + }); | ||
4046 | + wx.hideLoading(); | ||
4047 | + } | ||
4048 | + }) | ||
4049 | + }, 500) | ||
4050 | + | ||
4051 | + }); | ||
4052 | + }); | ||
4053 | + }, | ||
4054 | + fail: function (res) { | ||
4055 | + console.log(res); | ||
4056 | + wx.hideLoading(); | ||
4057 | + | ||
4058 | + } | ||
4059 | + }); | ||
4060 | + }, | ||
4061 | + //--定义的保存图片方法,分享团--- | ||
4062 | + saveImageToPhotosAlbumDef: function () { | ||
4063 | + //--先判断会员状态-- | ||
4064 | + // var user_info = getApp().globalData.userInfo; | ||
4065 | + // if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { | ||
4066 | + // //getApp().my_warnning("请先登录",0,this); | ||
4067 | + // wx.navigateTo({url: '/packageE/pages/togoin/togoin',}) | ||
4068 | + // return false; | ||
4069 | + // } | ||
4070 | + | ||
4071 | + if (this.data.share_hidden) { | ||
4072 | + this.setData({share_hidden: false,}); | ||
4073 | + }; | ||
4074 | + | ||
4075 | + //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4阶梯团 | ||
4076 | + var type = this.data.prom_type || 0; | ||
4077 | + console.log('商品类型-----'); | ||
4078 | + console.log(type); | ||
4079 | + // if (type == 2) type = -1; | ||
4080 | + if (type == 4) type = 0; | ||
4081 | + if (type == 8) type = 0; | ||
4082 | + if (type == 2) type = 0; | ||
4083 | + if (type == 6) type = 2; // 6拼团 2团购 | ||
4084 | + if (type == 10) type = -1; | ||
4085 | + | ||
4086 | + if (this.data.prom_act && this.data.prom_act.kttype == 3) type = 3; | ||
4087 | + console.log('商品类型。。。。。'); | ||
4088 | + console.log(type); | ||
4089 | + wx.showLoading({title: '生成中...',}) | ||
4090 | + var that = this, th = that; | ||
4091 | + //设置画板显示,才能开始绘图 | ||
4092 | + that.setData({ | ||
4093 | + canvasHidden: false | ||
4094 | + }) | ||
4095 | + | ||
4096 | + var app = getApp(); | ||
4097 | + var unit = that.data.screenWidth / 750 * 1.35; //基础单位, | ||
4098 | + var path2 = that.data.data.original_img; | ||
4099 | + | ||
4100 | + var scene = th.data.gid; | ||
4101 | + var user_id = getApp().globalData.user_id ? getApp().globalData.user_id : 0; | ||
4102 | + if (user_id > 0) { | ||
4103 | + scene += "_" + user_id; | ||
4104 | + } | ||
4105 | + //-- 如果不是会员分享过来的要分享给别人 -- | ||
4106 | + if (getApp().globalData.room_id && th.data.data.goods_id == getApp().globalData.room_goods_id && !getApp().globalData.room_user_share) { | ||
4107 | + //固定房间是第3个字符 | ||
4108 | + if (!user_id) scene += "_0"; | ||
4109 | + scene += "_" + getApp().globalData.room_id; | ||
4110 | + }else{ | ||
4111 | + if (!user_id) scene += "_0"; | ||
4112 | + scene += "_0"; | ||
4113 | + } | ||
4114 | + if(this.data.prom_type){ | ||
4115 | + scene += "_" + this.data.prom_type+"_"+th.data.prom_id; | ||
4116 | + } | ||
4117 | + | ||
4118 | + ///二微码 | ||
4119 | + var path3 = os.url + "/api/wx/open/app/user/getWeAppEwm/" + | ||
4120 | + os.stoid + "?sceneValue=" + scene + "&pageValue=packageA/pages/goodsInfo/goodsInfo"; | ||
4121 | + | ||
4122 | + console.log(path3); | ||
4123 | + | ||
4124 | + | ||
4125 | + // 读取文件成功则OK-- | ||
4126 | + wx.getImageInfo({ | ||
4127 | + src: path3, | ||
4128 | + success: function (res) { | ||
4129 | + // 回调写法 | ||
4130 | + th.get_head_temp(th.get_goods_temp, function () { | ||
4131 | + var vpath = res.path; | ||
4132 | + var context = wx.createCanvasContext('share'); | ||
4133 | + // 先画背景 | ||
4134 | + var pg_path = "../../../../images/share/share_bg.png"; | ||
4135 | + th.drawPoster(context, unit, th.data.share_goods_img, vpath, type); | ||
4136 | + | ||
4137 | + //把画板内容绘制成图片,并回调 画板图片路径 | ||
4138 | + context.draw(false, function () { | ||
4139 | + setTimeout(function () { | ||
4140 | + wx.canvasToTempFilePath({ | ||
4141 | + x: 0, | ||
4142 | + y: 0, | ||
4143 | + width: 750, | ||
4144 | + height: 1217, | ||
4145 | + destWidth: 1.2 * 750 * 750 / that.data.screenWidth, | ||
4146 | + destHeight: 1.2 * 1217 * 750 / that.data.screenWidth, | ||
4147 | + canvasId: 'share', | ||
4148 | + success: function (res) { | ||
4149 | + | ||
4150 | + that.setData({ | ||
4151 | + shareImgPath: res.tempFilePath, | ||
4152 | + canvasHidden: true | ||
4153 | + }) | ||
4154 | + | ||
4155 | + if (!res.tempFilePath) { | ||
4156 | + wx.showModal({ | ||
4157 | + title: '提示', | ||
4158 | + content: '图片绘制中,请稍后重试', | ||
4159 | + showCancel: false | ||
4160 | + }) | ||
4161 | + return false; | ||
4162 | + } | ||
4163 | + | ||
4164 | + that.setData({ | ||
4165 | + showPoster: true, | ||
4166 | + }); | ||
4167 | + wx.hideLoading(); | ||
4168 | + } | ||
4169 | + }) | ||
4170 | + }, 500) | ||
4171 | + | ||
4172 | + }); | ||
4173 | + }); | ||
4174 | + }, | ||
4175 | + fail: function (res) { | ||
4176 | + console.log(res); | ||
4177 | + wx.hideLoading(); | ||
4178 | + | ||
4179 | + } | ||
4180 | + }); | ||
4181 | + }, | ||
4182 | + | ||
4183 | + //文本换行 参数:1、canvas对象,2、文本 3、距离左侧的距离 4、距离顶部的距离 5、6、文本的宽度 | ||
4184 | + draw_Text: function (ctx, str, leftWidth, initHeight, titleHeight, canvasWidth, unit) { | ||
4185 | + var lineWidth = 0; | ||
4186 | + var lastSubStrIndex = 0; //每次开始截取的字符串的索引 | ||
4187 | + var han = 0; | ||
4188 | + for (let i = 0; i < str.length; i++) { | ||
4189 | + if (han == 2) return; | ||
4190 | + //lineWidth += ctx.measureText(str[i]).width; | ||
4191 | + lineWidth += ut.measureText(str[i], 21.3 * unit); | ||
4192 | + if (lineWidth > canvasWidth) { | ||
4193 | + han++; | ||
4194 | + | ||
4195 | + if (han == 2) | ||
4196 | + ctx.fillText(str.substring(lastSubStrIndex, i) + '...', leftWidth, initHeight); //绘制截取部分 | ||
4197 | + else | ||
4198 | + ctx.fillText(str.substring(lastSubStrIndex, i), leftWidth, initHeight); | ||
4199 | + | ||
4200 | + initHeight += 22; //22为字体的高度 | ||
4201 | + lineWidth = 0; | ||
4202 | + lastSubStrIndex = i; | ||
4203 | + titleHeight += 20; | ||
4204 | + } | ||
4205 | + if (i == str.length - 1) { //绘制剩余部分 | ||
4206 | + ctx.fillText(str.substring(lastSubStrIndex, i + 1), leftWidth, initHeight); | ||
4207 | + } | ||
4208 | + } | ||
4209 | + }, | ||
4210 | + | ||
4211 | + drawPoster(context, unit, img, vpath, type) { | ||
4212 | + // 1.灰色背景 | ||
4213 | + context.setFillStyle('#f2f1f6'); | ||
4214 | + context.rect(0, 0, 554 * unit, 899 * unit); | ||
4215 | + context.fill(); | ||
4216 | + | ||
4217 | + // 2.商城名称 | ||
4218 | + let shopName = this.data.sto_sele_name_1; | ||
4219 | + context.setTextAlign('center'); | ||
4220 | + context.setFontSize(26 * unit); | ||
4221 | + context.setFillStyle('black'); | ||
4222 | + context.fillText(shopName, 277 * unit, 60 * unit); | ||
4223 | + | ||
4224 | + // 3.推荐来源 | ||
4225 | + if(getApp().globalData.userInfo) { | ||
4226 | + let fromText = `来自${getApp().globalData.userInfo.nickname}的推荐`; | ||
4227 | + context.setTextAlign('center'); | ||
4228 | + context.setFontSize(22 * unit); | ||
4229 | + context.setFillStyle('#96959a'); | ||
4230 | + context.fillText(fromText, 277 * unit, 105 * unit); | ||
4231 | + } | ||
4232 | + // 4.海报背景 | ||
4233 | + context.setFillStyle('white'); | ||
4234 | + context.fillRect(37 * unit, 157 * unit, 480 * unit, 673 * unit); | ||
4235 | + | ||
4236 | + // 5.商品图片 | ||
4237 | + // 图片的x坐标 | ||
4238 | + let bg_x = 37 * unit | ||
4239 | + // 图片的y坐标 | ||
4240 | + let bg_y = 157 * unit | ||
4241 | + // 图片宽度 | ||
4242 | + let bg_w = 480 * unit | ||
4243 | + // 图片高度 | ||
4244 | + let bg_h = 474 * unit | ||
4245 | + // 图片圆角 | ||
4246 | + let bg_r = 4 | ||
4247 | + // 绘制海报背景图片圆角 | ||
4248 | + context.save() | ||
4249 | + context.beginPath() | ||
4250 | + context.arc(bg_x + bg_r, bg_y + bg_r, bg_r, Math.PI, Math.PI * 1.5) | ||
4251 | + context.arc(bg_x + bg_w - bg_r, bg_y + bg_r, bg_r, Math.PI * 1.5, Math.PI * 2) | ||
4252 | + context.arc(bg_x + bg_w, bg_y + bg_h, bg_r, 0, Math.PI * 0.5) | ||
4253 | + context.arc(bg_x, bg_y + bg_h, 0, Math.PI * 0.5, Math.PI) | ||
4254 | + context.clip() | ||
4255 | + context.drawImage(img, bg_x, bg_y, bg_w, bg_h); | ||
4256 | + context.restore(); | ||
4257 | + | ||
4258 | + // 6.强烈推荐 | ||
4259 | + let src = ''; | ||
4260 | + context.beginPath(); | ||
4261 | + if (type == 0) { // 普通 | ||
4262 | + src = '../../../images/share/q_tj.png'; | ||
4263 | + context.drawImage(src, 54 * unit, 648 * unit, 85 * unit, 30 * unit); | ||
4264 | + context.setFontSize(16 * unit) | ||
4265 | + context.setFillStyle("white") | ||
4266 | + context.setTextAlign('left'); | ||
4267 | + context.fillText('强烈推荐', 64 * unit, 668 * unit); | ||
4268 | + } | ||
4269 | + if (type == 1) { // 秒杀 | ||
4270 | + | ||
4271 | + if (this.data.is_share_text == 1) { | ||
4272 | + src = '../../../images/share/miao_share.png'; | ||
4273 | + context.drawImage(src, 54 * unit, 648 * unit, 200 * unit, 36 * unit); | ||
4274 | + } | ||
4275 | + context.setTextAlign('left'); | ||
4276 | + } | ||
4277 | + | ||
4278 | + | ||
4279 | + // 7.商品价格 | ||
4280 | + let price = this.data.data.shop_price; | ||
4281 | + if (this.data.card_field && this.data.data[this.data.card_field]) { | ||
4282 | + price = this.data.data[this.data.card_field]; | ||
4283 | + } | ||
4284 | + if (this.data.prom_act) price = this.data.prom_price; | ||
4285 | + price = parseFloat(price).toFixed(2); | ||
4286 | + context.setFontSize(32 * unit); | ||
4287 | + context.setFillStyle('#DE1117'); | ||
4288 | + | ||
4289 | + //price = this.data.presellList.presell_price | ||
4290 | + context.fillText('¥' + price, 54 * unit, 735 * unit); | ||
4291 | + //-- 零售价的优化 -- | ||
4292 | + var wp= 62 * unit+ut.measureText('¥' + price, 32 * unit); | ||
4293 | + var hp=735 * unit | ||
4294 | + this.draw_pos_price(context,wp,hp,this.data.data.show_price,unit); | ||
4295 | + | ||
4296 | + | ||
4297 | + // 8.商品标题 | ||
4298 | + context.setFontSize(20 * unit); | ||
4299 | + context.setFillStyle('#898989'); | ||
4300 | + getApp().draw_Text(context, this.data.data.goods_name, 54 * unit, 800 * unit, 240 * unit, 280 * unit, unit, 1); | ||
4301 | + | ||
4302 | + // 9.小程序码 | ||
4303 | + context.drawImage(vpath, 375 * unit, 660 * unit, 120 * unit, 120 * unit); | ||
4304 | + context.setFontSize(16 * unit); | ||
4305 | + context.setFillStyle('#777'); | ||
4306 | + context.fillText('长按识别二维码', 378 * unit, 810 * unit); | ||
4307 | + | ||
4308 | + // 10.竖线 | ||
4309 | + context.beginPath(); | ||
4310 | + context.setFillStyle('#eee'); | ||
4311 | + context.rect(354 * unit, 670 * unit, 1 * unit, 130 * unit); | ||
4312 | + context.fill(); | ||
4313 | + }, | ||
4314 | + | ||
4315 | + //---市场价划掉--- | ||
4316 | + draw_pos_price(context,w,h,market_price,unit){ | ||
4317 | + | ||
4318 | + if(!this.data.sys_switch) return false; | ||
4319 | + if(!this.data.sys_switch.is_retail_price) return false; | ||
4320 | + | ||
4321 | + context.setFillStyle("gray") | ||
4322 | + context.setFontSize(22 * unit) | ||
4323 | + var pri0 = "¥" + market_price.toFixed(2); | ||
4324 | + context.fillText(pri0, w, h); | ||
4325 | + | ||
4326 | + var c_h=h-6; | ||
4327 | + context.setStrokeStyle('gray'); | ||
4328 | + context.setLineWidth(1 * unit); | ||
4329 | + context.moveTo(w - 5, c_h); | ||
4330 | + context.lineTo(w + ut.measureText(pri0, 22 * unit) + 5, c_h); | ||
4331 | + context.stroke(); | ||
4332 | + | ||
4333 | + }, | ||
4334 | + | ||
4335 | + | ||
4336 | + closePoster() { | ||
4337 | + this.setData({ | ||
4338 | + showPoster: false, | ||
4339 | + }); | ||
4340 | + }, | ||
4341 | + | ||
4342 | + // 保存图片到手机 | ||
4343 | + savePic() { | ||
4344 | + console.log('保存图片'); | ||
4345 | + var self = this; | ||
4346 | + // 获取用户的当前设置,返回值中有小程序已经向用户请求过的权限 | ||
4347 | + this.getSetting().then((res) => { | ||
4348 | + // 判断用户是否授权了保存到相册的权限,如果没有发起授权 | ||
4349 | + if (!res.authSetting['scope.writePhotosAlbum']) { | ||
4350 | + this.authorize().then(() => { | ||
4351 | + // 同意授权后保存下载文件 | ||
4352 | + this.saveImage(self.data.shareImgPath) | ||
4353 | + .then(() => { | ||
4354 | + self.setData({ | ||
4355 | + showPoster: false | ||
4356 | + }); | ||
4357 | + }); | ||
4358 | + }) | ||
4359 | + } else { | ||
4360 | + // 如果已经授权,保存下载文件 | ||
4361 | + this.saveImage(self.data.shareImgPath) | ||
4362 | + .then(() => { | ||
4363 | + self.setData({ | ||
4364 | + showPoster: false | ||
4365 | + }); | ||
4366 | + }); | ||
4367 | + } | ||
4368 | + | ||
4369 | + }) | ||
4370 | + }, | ||
4371 | + | ||
4372 | + // 发起首次授权请求 | ||
4373 | + authorize() { | ||
4374 | + // isFirst 用来记录是否为首次发起授权, | ||
4375 | + // 如果首次授权拒绝后,isFirst赋值为1 | ||
4376 | + let isFirst = wx.getStorageSync('isFirst') || 0; | ||
4377 | + return new Promise((resolve, reject) => { | ||
4378 | + wx.authorize({ | ||
4379 | + scope: 'scope.writePhotosAlbum', | ||
4380 | + // 同意授权 | ||
4381 | + success: () => { | ||
4382 | + resolve(); | ||
4383 | + }, | ||
4384 | + // 拒绝授权,这里是用户拒绝授权后的回调 | ||
4385 | + fail: res => { | ||
4386 | + if (isFirst === 0) { | ||
4387 | + wx.setStorageSync('isFirst', 1); | ||
4388 | + wx.showToast({ | ||
4389 | + title: '保存失败', | ||
4390 | + icon: 'none', | ||
4391 | + duration: 1000 | ||
4392 | + }) | ||
4393 | + } else { | ||
4394 | + this.showModal(); | ||
4395 | + } | ||
4396 | + console.log('拒绝授权'); | ||
4397 | + reject(); | ||
4398 | + } | ||
4399 | + }) | ||
4400 | + }) | ||
4401 | + }, | ||
4402 | + | ||
4403 | + | ||
4404 | + // 保存图片到系统相册 | ||
4405 | + saveImage(saveUrl) { | ||
4406 | + var self = this; | ||
4407 | + return new Promise((resolve, reject) => { | ||
4408 | + wx.saveImageToPhotosAlbum({ | ||
4409 | + filePath: saveUrl, | ||
4410 | + success: (res) => { | ||
4411 | + wx.showToast({ | ||
4412 | + title: '保存成功', | ||
4413 | + duration: 1000, | ||
4414 | + }); | ||
4415 | + self.setData({ | ||
4416 | + showPlaybill: 'true' | ||
4417 | + }); | ||
4418 | + resolve(); | ||
4419 | + }, | ||
4420 | + fail: () => { | ||
4421 | + wx.showToast({ | ||
4422 | + title: '保存失败', | ||
4423 | + duration: 1000, | ||
4424 | + }); | ||
4425 | + } | ||
4426 | + }) | ||
4427 | + }) | ||
4428 | + }, | ||
4429 | + | ||
4430 | + // 预览海报 | ||
4431 | + previewPoster() { | ||
4432 | + getApp().globalData.no_clear = 1; | ||
4433 | + wx.previewImage({ | ||
4434 | + current: this.data.shareImgPath, // 当前显示图片的http链接 | ||
4435 | + urls: [this.data.shareImgPath], // 需要预览的图片http链接列表 | ||
4436 | + }); | ||
4437 | + }, | ||
4438 | + | ||
4101 | 4439 | ||
4102 | }); | 4440 | }); |
4103 | 4441 |
packageA/pages/goodsInfo/goodsInfo.json
@@ -6,7 +6,8 @@ | @@ -6,7 +6,8 @@ | ||
6 | "warn": "/components/long_warn/long_warn", | 6 | "warn": "/components/long_warn/long_warn", |
7 | "serviceCard_recommend": "/components/serviceCard_list/serviceCard_list", | 7 | "serviceCard_recommend": "/components/serviceCard_list/serviceCard_list", |
8 | "privacy_pop": "/components/privacy_pop/privacy_pop", | 8 | "privacy_pop": "/components/privacy_pop/privacy_pop", |
9 | - "top_nav": "/components/diy_top_nav/diy_top_nav" | 9 | + "top_nav": "/components/diy_top_nav/diy_top_nav", |
10 | + "share": "/components/share/share" | ||
10 | }, | 11 | }, |
11 | "navigationStyle": "custom" | 12 | "navigationStyle": "custom" |
12 | } | 13 | } |
13 | \ No newline at end of file | 14 | \ No newline at end of file |
packageA/pages/goodsInfo/goodsInfo.wxml
@@ -11,7 +11,7 @@ | @@ -11,7 +11,7 @@ | ||
11 | <view class="container"> | 11 | <view class="container"> |
12 | 12 | ||
13 | <view class="type-navbar_box"> | 13 | <view class="type-navbar_box"> |
14 | - <top_nav id="my-nav" bindclickShare="clickShare" nav_type="{{nav_type}}" is_share="{{false}}" | 14 | + <top_nav id="my-nav" bindclickShare="clickShare" nav_type="{{nav_type}}" is_share="{{true}}" |
15 | nav_frontColor="{{nav_frontColor}}" istop="{{(istop && searchbox_transparent && activeCategoryId==0) ? 1 : 0 }}" nav_backgroundColor="{{nav_backgroundColor}}" nav_title="{{gtitle}}"></top_nav> | 15 | nav_frontColor="{{nav_frontColor}}" istop="{{(istop && searchbox_transparent && activeCategoryId==0) ? 1 : 0 }}" nav_backgroundColor="{{nav_backgroundColor}}" nav_title="{{gtitle}}"></top_nav> |
16 | </view> | 16 | </view> |
17 | 17 | ||
@@ -106,16 +106,25 @@ | @@ -106,16 +106,25 @@ | ||
106 | <view class="market-price" style="overflow: hidden"></view> | 106 | <view class="market-price" style="overflow: hidden"></view> |
107 | </view> | 107 | </view> |
108 | 108 | ||
109 | - <view> | ||
110 | - <!-- 秒杀价 --> | ||
111 | - <view class="co-red" wx:if="{{options.prom_type == 1}}"><text class="rel yuan fs28">¥</text>{{filters.toFix(prom_price,2)}}</view> | ||
112 | - <!-- 手店价 --> | ||
113 | - <view class="co-red" wx:else><text class="rel yuan fs28">¥</text>{{filters.toFix(data.shop_price,2)}}</view> | ||
114 | - <!-- <view class="word-line fs20 xc-qtunit-price"> | ||
115 | - 零售价¥{{filters.toFix(data.market_price,2)}} | ||
116 | - </view> --> | ||
117 | - <view class="goods-title"> | ||
118 | - <view class="goods-name elli">{{data.goods_name}}</view> | 109 | + |
110 | + <view class="flex jc_sb"> | ||
111 | + <view> | ||
112 | + <!-- 秒杀价 --> | ||
113 | + <view class="co-red" wx:if="{{options.prom_type == 1}}"><text class="rel yuan fs28">¥</text>{{filters.toFix(prom_price,2)}}</view> | ||
114 | + <!-- 手店价 --> | ||
115 | + <view class="co-red" wx:else><text class="rel yuan fs28">¥</text>{{filters.toFix(data.shop_price,2)}}</view> | ||
116 | + <!-- <view class="word-line fs20 xc-qtunit-price"> | ||
117 | + 零售价¥{{filters.toFix(data.market_price,2)}} | ||
118 | + </view> --> | ||
119 | + <view class="goods-title"> | ||
120 | + <view class="goods-name elli">{{data.goods_name}}</view> | ||
121 | + </view> | ||
122 | + </view> | ||
123 | + | ||
124 | + <!-- 这个是分享按钮 --> | ||
125 | + <view wx:if="{{isLogin}}" class="xc-share-frame t-c shrink0" bindtap="clickShare"> | ||
126 | + <view class="iconfont icon-share"></view> | ||
127 | + <view class="fs22 c-7b">分享</view> | ||
119 | </view> | 128 | </view> |
120 | </view> | 129 | </view> |
121 | 130 | ||
@@ -970,14 +979,20 @@ | @@ -970,14 +979,20 @@ | ||
970 | <canvas canvas-id='share' style='width:750rpx;height:1217rpx;background-color:white;' wx:if='{{!canvasHidden}}'></canvas> | 979 | <canvas canvas-id='share' style='width:750rpx;height:1217rpx;background-color:white;' wx:if='{{!canvasHidden}}'></canvas> |
971 | <warn id="warn"></warn> | 980 | <warn id="warn"></warn> |
972 | 981 | ||
973 | - | ||
974 | <view wx:if="{{showPoster}}"> | 982 | <view wx:if="{{showPoster}}"> |
975 | <view class="mask" catchtap="closePoster"></view> | 983 | <view class="mask" catchtap="closePoster"></view> |
976 | <view class="poster-container"> | 984 | <view class="poster-container"> |
977 | <view class="poster-wrapper"> | 985 | <view class="poster-wrapper"> |
978 | - <view class="poster"> | 986 | + <view class="poster" bindtap="previewPoster"> |
987 | + <!-- <view class="poster" bindtap="previewImage"> --> | ||
979 | <image src="{{shareImgPath}}" class="poster-img" show-menu-by-longpress></image> | 988 | <image src="{{shareImgPath}}" class="poster-img" show-menu-by-longpress></image> |
980 | - <view class="btn-close" catchtap="closePoster"><text class="iconfont icon-close"></text></view> | 989 | + <view class="btn-close" catchtap="closePoster"> |
990 | + <text class="iconfont icon-close"></text> | ||
991 | + </view> | ||
992 | + </view> | ||
993 | + <view class="btn-container"> | ||
994 | + <!-- <button class="btn-share" open-type="share" bindtap="">微信好友分享</button> --> | ||
995 | + <button class="btn-share" bindtap="savePic">保存到相册</button> | ||
981 | </view> | 996 | </view> |
982 | </view> | 997 | </view> |
983 | </view> | 998 | </view> |
@@ -1015,3 +1030,5 @@ | @@ -1015,3 +1030,5 @@ | ||
1015 | </view> | 1030 | </view> |
1016 | 1031 | ||
1017 | <view class="mask2" bindtap="closeCS"></view> | 1032 | <view class="mask2" bindtap="closeCS"></view> |
1033 | +<!-- 分享控件,底部弹出 --> | ||
1034 | +<share id="share_button" bind:send="send" bind:cancel="cancel" bind:share_img="saveImageFn" wx:if="{{share_hidden}}"></share> |
packageA/pages/serviceCard_pd/goodsInfo/goodsInfo.js
@@ -12,6 +12,7 @@ var more = function (e) { | @@ -12,6 +12,7 @@ var more = function (e) { | ||
12 | }(require("../../../../utils/LoadMore.js")), | 12 | }(require("../../../../utils/LoadMore.js")), |
13 | n = new more.default(); | 13 | n = new more.default(); |
14 | var regeneratorRuntime = require('../../../../utils/runtime.js'); | 14 | var regeneratorRuntime = require('../../../../utils/runtime.js'); |
15 | +var self=null; | ||
15 | 16 | ||
16 | Page({ | 17 | Page({ |
17 | data: { | 18 | data: { |
@@ -1256,6 +1257,8 @@ Page({ | @@ -1256,6 +1257,8 @@ Page({ | ||
1256 | }) | 1257 | }) |
1257 | } | 1258 | } |
1258 | 1259 | ||
1260 | + this.data.get_sto_ing=1; | ||
1261 | + | ||
1259 | var timer_get = setInterval(function () { | 1262 | var timer_get = setInterval(function () { |
1260 | if (th.data.is_get_local_ok == 0) return false; | 1263 | if (th.data.is_get_local_ok == 0) return false; |
1261 | if (!th.data.fir_def_store) return false; | 1264 | if (!th.data.fir_def_store) return false; |
@@ -1374,13 +1377,19 @@ Page({ | @@ -1374,13 +1377,19 @@ Page({ | ||
1374 | th.setData({all_pick_list: e.data.data.pageData}); | 1377 | th.setData({all_pick_list: e.data.data.pageData}); |
1375 | th.deal_pickup(e); | 1378 | th.deal_pickup(e); |
1376 | }else{ | 1379 | }else{ |
1380 | + th.data.get_sto_ing=0; | ||
1377 | th.setData({all_pick_list: null, only_pk:null,def_pickpu_list:null }); | 1381 | th.setData({all_pick_list: null, only_pk:null,def_pickpu_list:null }); |
1378 | - | ||
1379 | wx.hideLoading(); | 1382 | wx.hideLoading(); |
1380 | } | 1383 | } |
1381 | }, 800) | 1384 | }, 800) |
1382 | 1385 | ||
1383 | } | 1386 | } |
1387 | + else{ | ||
1388 | + th.data.get_sto_ing=0; | ||
1389 | + th.setData({all_pick_list: null, only_pk:null,def_pickpu_list:null }); | ||
1390 | + | ||
1391 | + wx.hideLoading(); | ||
1392 | + } | ||
1384 | }) | 1393 | }) |
1385 | }, 200) | 1394 | }, 200) |
1386 | }, | 1395 | }, |
@@ -1554,9 +1563,11 @@ Page({ | @@ -1554,9 +1563,11 @@ Page({ | ||
1554 | } | 1563 | } |
1555 | 1564 | ||
1556 | } | 1565 | } |
1566 | + th.data.get_sto_ing=0; | ||
1557 | } | 1567 | } |
1558 | }); | 1568 | }); |
1559 | } else { | 1569 | } else { |
1570 | + th.data.get_sto_ing=0; | ||
1560 | th.setData({ | 1571 | th.setData({ |
1561 | is_show_sto_cat: 0, | 1572 | is_show_sto_cat: 0, |
1562 | only_pk: e.data.data.pageData | 1573 | only_pk: e.data.data.pageData |
@@ -1605,6 +1616,12 @@ Page({ | @@ -1605,6 +1616,12 @@ Page({ | ||
1605 | // return false; | 1616 | // return false; |
1606 | // } | 1617 | // } |
1607 | 1618 | ||
1619 | + if (this.data.share_hidden) { | ||
1620 | + this.setData({ | ||
1621 | + share_hidden: false, | ||
1622 | + }); | ||
1623 | + }; | ||
1624 | + | ||
1608 | //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4积分购 | 1625 | //类型 0普通商品 1秒杀商品 2商家和会员团 3阶梯团 4积分购 |
1609 | var type = 2 | 1626 | var type = 2 |
1610 | if (this.data.prom_act && this.data.prom_act.kttype == 3) type = 3; | 1627 | if (this.data.prom_act && this.data.prom_act.kttype == 3) type = 3; |
@@ -3569,6 +3586,9 @@ Page({ | @@ -3569,6 +3586,9 @@ Page({ | ||
3569 | }); | 3586 | }); |
3570 | }, | 3587 | }, |
3571 | 3588 | ||
3589 | + send() { | ||
3590 | + this.setData({ share_hidden: false, }); | ||
3591 | + }, | ||
3572 | cancel() { | 3592 | cancel() { |
3573 | this.setData({ | 3593 | this.setData({ |
3574 | share_hidden: false, | 3594 | share_hidden: false, |
@@ -3965,6 +3985,15 @@ Page({ | @@ -3965,6 +3985,15 @@ Page({ | ||
3965 | } | 3985 | } |
3966 | }, | 3986 | }, |
3967 | 3987 | ||
3988 | + // 预览海报 | ||
3989 | + previewPoster() { | ||
3990 | + getApp().globalData.no_clear = 1; | ||
3991 | + wx.previewImage({ | ||
3992 | + current: this.data.shareImgPath, // 当前显示图片的http链接 | ||
3993 | + urls: [this.data.shareImgPath], // 需要预览的图片http链接列表 | ||
3994 | + }); | ||
3995 | + }, | ||
3996 | + | ||
3968 | }); | 3997 | }); |
3969 | 3998 | ||
3970 | 3999 |
packageA/pages/serviceCard_pd/goodsInfo/goodsInfo.wxml
@@ -807,14 +807,20 @@ | @@ -807,14 +807,20 @@ | ||
807 | <canvas canvas-id='share' style='width:750rpx;height:1217rpx;background-color:white;' wx:if='{{!canvasHidden}}'></canvas> | 807 | <canvas canvas-id='share' style='width:750rpx;height:1217rpx;background-color:white;' wx:if='{{!canvasHidden}}'></canvas> |
808 | <warn id="warn"></warn> | 808 | <warn id="warn"></warn> |
809 | 809 | ||
810 | - | ||
811 | <view wx:if="{{showPoster}}"> | 810 | <view wx:if="{{showPoster}}"> |
812 | <view class="mask" catchtap="closePoster"></view> | 811 | <view class="mask" catchtap="closePoster"></view> |
813 | <view class="poster-container"> | 812 | <view class="poster-container"> |
814 | <view class="poster-wrapper"> | 813 | <view class="poster-wrapper"> |
815 | - <view class="poster"> | 814 | + <view class="poster" bindtap="previewPoster"> |
815 | + <!-- <view class="poster" bindtap="previewImage"> --> | ||
816 | <image src="{{shareImgPath}}" class="poster-img" show-menu-by-longpress></image> | 816 | <image src="{{shareImgPath}}" class="poster-img" show-menu-by-longpress></image> |
817 | - <view class="btn-close" catchtap="closePoster"><text class="iconfont icon-close"></text></view> | 817 | + <view class="btn-close" catchtap="closePoster"> |
818 | + <text class="iconfont icon-close"></text> | ||
819 | + </view> | ||
820 | + </view> | ||
821 | + <view class="btn-container"> | ||
822 | + <!-- <button class="btn-share" open-type="share" bindtap="">微信好友分享</button> --> | ||
823 | + <button class="btn-share" bindtap="savePic">保存到相册</button> | ||
818 | </view> | 824 | </view> |
819 | </view> | 825 | </view> |
820 | </view> | 826 | </view> |
packageA/pages/serviceCard_pd/goodsInfo/goodsInfo.wxss
@@ -2744,7 +2744,7 @@ button.custom-service::after{ | @@ -2744,7 +2744,7 @@ button.custom-service::after{ | ||
2744 | left: 50%; | 2744 | left: 50%; |
2745 | transform: translate(-50%, -50%); | 2745 | transform: translate(-50%, -50%); |
2746 | width: calc(100% - 120rpx); | 2746 | width: calc(100% - 120rpx); |
2747 | - z-index: 1000; | 2747 | + z-index: 10001; |
2748 | } | 2748 | } |
2749 | .mask { | 2749 | .mask { |
2750 | position: fixed; | 2750 | position: fixed; |
@@ -2752,7 +2752,7 @@ button.custom-service::after{ | @@ -2752,7 +2752,7 @@ button.custom-service::after{ | ||
2752 | left: 0; | 2752 | left: 0; |
2753 | width: 100%; | 2753 | width: 100%; |
2754 | height: 100%; | 2754 | height: 100%; |
2755 | - z-index: 999; | 2755 | + z-index: 10000; |
2756 | background-color: rgba(0,0,0,.4); | 2756 | background-color: rgba(0,0,0,.4); |
2757 | } | 2757 | } |
2758 | .poster-wrapper { | 2758 | .poster-wrapper { |
packageA/pages/serviceCard_pd/team_success/team_success.js
@@ -823,7 +823,7 @@ Page({ | @@ -823,7 +823,7 @@ Page({ | ||
823 | tt(func);; | 823 | tt(func);; |
824 | }, | 824 | }, |
825 | fail: function (res) { | 825 | fail: function (res) { |
826 | - ee.data.share_head = "../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的 | 826 | + ee.data.share_head = "../../../../images/share/hui_hear_pic.png"; //分享的图片不能用网络的 |
827 | tt(func); | 827 | tt(func); |
828 | } | 828 | } |
829 | }); | 829 | }); |
packageB/pages/luckactivity/luckinfo/luckinfo.js
@@ -262,9 +262,9 @@ Page({ | @@ -262,9 +262,9 @@ Page({ | ||
262 | let first_leader = null; | 262 | let first_leader = null; |
263 | this.data.options = options; | 263 | this.data.options = options; |
264 | 264 | ||
265 | - // wx.setNavigationBarTitle({ | ||
266 | - // title: options.title, | ||
267 | - // }); | 265 | + wx.setNavigationBarTitle({ |
266 | + title: options.title, | ||
267 | + }); | ||
268 | this.setData({l_title:options.title}) | 268 | this.setData({l_title:options.title}) |
269 | 269 | ||
270 | app.isLogin().then(function (data) {//进入页面前已经授权登录成功 | 270 | app.isLogin().then(function (data) {//进入页面前已经授权登录成功 |
packageC/pages/luckyGo/luckyGo_cart_ct/luckyGo_cart_ct.js
@@ -80,6 +80,13 @@ Page({ | @@ -80,6 +80,13 @@ Page({ | ||
80 | bconfig: null, | 80 | bconfig: null, |
81 | showFold:true, | 81 | showFold:true, |
82 | template_id:[], | 82 | template_id:[], |
83 | + | ||
84 | + //-- 订单促销判断积累 ---2024-2-20 | ||
85 | + order_prom_map_ck: {}, | ||
86 | + //能不能使用订单促销 | ||
87 | + can_use_ord_prom:{}, | ||
88 | + //存储订单促销的取价,按照门店进行索引 | ||
89 | + show_ord_prom:{}, | ||
83 | }, | 90 | }, |
84 | 91 | ||
85 | 92 | ||
@@ -513,6 +520,7 @@ Page({ | @@ -513,6 +520,7 @@ Page({ | ||
513 | } | 520 | } |
514 | 521 | ||
515 | 522 | ||
523 | + t.data.data.shop_price_y = t.data.data.shop_price; | ||
516 | t.data.data.shop_price = gg.goods_price; | 524 | t.data.data.shop_price = gg.goods_price; |
517 | //--如果是普通购买的时候-- | 525 | //--如果是普通购买的时候-- |
518 | if (gg.is_normal == 1) { | 526 | if (gg.is_normal == 1) { |
@@ -569,7 +577,10 @@ Page({ | @@ -569,7 +577,10 @@ Page({ | ||
569 | } | 577 | } |
570 | 578 | ||
571 | 579 | ||
580 | + t.data.data.goods_price=th.data.param.goods_price; | ||
572 | 581 | ||
582 | + //用深拷贝把商品缓存起来,方便后面使用 | ||
583 | + th.data.old_bn_goods=ut.deep_cp(t.data.data); | ||
573 | 584 | ||
574 | th.setData({ | 585 | th.setData({ |
575 | bn_goods: t.data.data, | 586 | bn_goods: t.data.data, |
@@ -642,6 +653,9 @@ Page({ | @@ -642,6 +653,9 @@ Page({ | ||
642 | 653 | ||
643 | } | 654 | } |
644 | 655 | ||
656 | + t.data.data.goods_price=th.data.param.goods_price; | ||
657 | + //用深拷贝把商品缓存起来,方便后面使用 | ||
658 | + th.data.old_bn_goods=ut.deep_cp(t.data.data); | ||
645 | 659 | ||
646 | th.setData({ | 660 | th.setData({ |
647 | bn_goods: t.data.data, | 661 | bn_goods: t.data.data, |
@@ -651,7 +665,6 @@ Page({ | @@ -651,7 +665,6 @@ Page({ | ||
651 | bn_exp_type: et | 665 | bn_exp_type: et |
652 | }); | 666 | }); |
653 | 667 | ||
654 | - | ||
655 | //计算价格 | 668 | //计算价格 |
656 | th.calculatePrice2(); | 669 | th.calculatePrice2(); |
657 | } | 670 | } |
@@ -842,7 +855,9 @@ Page({ | @@ -842,7 +855,9 @@ Page({ | ||
842 | //-----------计算商品总价-------------- | 855 | //-----------计算商品总价-------------- |
843 | //var allpice = th.data.param.goods_price; | 856 | //var allpice = th.data.param.goods_price; |
844 | var allpice = (th.data.act.group_price/100).toFixed(2); | 857 | var allpice = (th.data.act.group_price/100).toFixed(2); |
845 | - | 858 | + if(th.data.can_use_ord_prom[th.data.bn_pick]){ |
859 | + allpice=th.data.param.goods_price*th.data.bn_goods.buynum; | ||
860 | + } | ||
846 | 861 | ||
847 | allpice = parseFloat(allpice).toFixed(2); | 862 | allpice = parseFloat(allpice).toFixed(2); |
848 | var txt = "formData.all_price"; | 863 | var txt = "formData.all_price"; |
@@ -868,14 +883,18 @@ Page({ | @@ -868,14 +883,18 @@ Page({ | ||
868 | var ord_prom=null; | 883 | var ord_prom=null; |
869 | var o_condition=allpice; | 884 | var o_condition=allpice; |
870 | if(th.data.act.is_order_yh){ | 885 | if(th.data.act.is_order_yh){ |
886 | + // await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { | ||
887 | + // data: { store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id } | ||
888 | + // }).then(res => { | ||
889 | + // if (res.data.code == 0) { | ||
890 | + // ord_prom = res.data.data; | ||
891 | + // } | ||
892 | + // }) | ||
893 | + | ||
894 | + th.set_by_now_ord_prom(th.data.bn_goods); | ||
895 | + th.data.order_prom_map_ck[th.data.bn_pick].goods_price_all=o_condition; | ||
896 | + ord_prom=await th.get_cur_ord_prom(th.data.bn_pick); | ||
871 | 897 | ||
872 | - await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { | ||
873 | - data: { store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id } | ||
874 | - }).then(res => { | ||
875 | - if (res.data.code == 0) { | ||
876 | - ord_prom = res.data.data; | ||
877 | - } | ||
878 | - }) | ||
879 | } | 898 | } |
880 | 899 | ||
881 | 900 | ||
@@ -964,7 +983,7 @@ Page({ | @@ -964,7 +983,7 @@ Page({ | ||
964 | title: "物流配置未启用物流公司", icon: 'none', duration: 2000 | 983 | title: "物流配置未启用物流公司", icon: 'none', duration: 2000 |
965 | }) | 984 | }) |
966 | //th.setData({ show_submit:0, }); | 985 | //th.setData({ show_submit:0, }); |
967 | - th.setData({show_submit:1, submit: 0,same_ok:0 }) | 986 | + th.setData({show_submit:1, submit: 0,same_ok:0,sub:0 }) |
968 | return false; | 987 | return false; |
969 | } | 988 | } |
970 | 989 | ||
@@ -996,7 +1015,7 @@ Page({ | @@ -996,7 +1015,7 @@ Page({ | ||
996 | wx.showToast({ | 1015 | wx.showToast({ |
997 | title: "计算物流错误", icon: 'none', duration: 2000 | 1016 | title: "计算物流错误", icon: 'none', duration: 2000 |
998 | }) | 1017 | }) |
999 | - th.setData({show_submit:1, submit: 0,same_ok:0 }) | 1018 | + th.setData({show_submit:1, submit: 0,same_ok:0,sub:0 }) |
1000 | return false; | 1019 | return false; |
1001 | } | 1020 | } |
1002 | 1021 | ||
@@ -1289,7 +1308,7 @@ Page({ | @@ -1289,7 +1308,7 @@ Page({ | ||
1289 | // 提交订单前弹出确认对话框 | 1308 | // 提交订单前弹出确认对话框 |
1290 | submitConfirm(e) { | 1309 | submitConfirm(e) { |
1291 | // is_show为0不显示温馨提示,为1显示温馨提示 | 1310 | // is_show为0不显示温馨提示,为1显示温馨提示 |
1292 | - if (this.data.param.is_show == 1) { | 1311 | + if (this.data.param.is_show == 1 && !this.data.can_use_ord_prom[this.data.bn_pick]) { |
1293 | wx.showModal({ | 1312 | wx.showModal({ |
1294 | title: '温馨提示', | 1313 | title: '温馨提示', |
1295 | content: this.data.param.alert, | 1314 | content: this.data.param.alert, |
@@ -1451,6 +1470,61 @@ Page({ | @@ -1451,6 +1470,61 @@ Page({ | ||
1451 | 'prom_id': th.data.param.group_id, //促销活动id | 1470 | 'prom_id': th.data.param.group_id, //促销活动id |
1452 | }; | 1471 | }; |
1453 | 1472 | ||
1473 | + | ||
1474 | + if(th.data.bn_goods.discount_field){ | ||
1475 | + goods.discount_field=th.data.bn_goods.discount_field; | ||
1476 | + } | ||
1477 | + | ||
1478 | + //如果有参与非实收的订单促销,那么就相当于是普通购买 | ||
1479 | + if(th.data.can_use_ord_prom[th.data.bn_pick]){ | ||
1480 | + goods.is_integral_normal=1; | ||
1481 | + goods.prom_type=0; | ||
1482 | + goods.prom_id=0; | ||
1483 | + | ||
1484 | + //如果是指定门店,就要判断 | ||
1485 | + if (th.data.bn_goods.pick_group_ids) { | ||
1486 | + var idx0 = th.data.bn_goods.pick_up_lists.findIndex(function (e) { | ||
1487 | + return e.pickup_id == th.data.bn_pick; | ||
1488 | + }) | ||
1489 | + if (idx0 < 0) { | ||
1490 | + getApp().my_warnning(th.data.bn_goods.goods_name + "的门店不可售", 0, th); | ||
1491 | + th.data.is_summit_ing = 0; | ||
1492 | + th.setData({ | ||
1493 | + submit: 0 | ||
1494 | + }) | ||
1495 | + return false; | ||
1496 | + } | ||
1497 | + } | ||
1498 | + | ||
1499 | + if (th.data.sales_rules==1 && th.data.bn_goods.store_count<oods.goods_num){ | ||
1500 | + getApp().confirmBox("商品的门店库存不足"); | ||
1501 | + th.data.is_summit_ing = 0; | ||
1502 | + th.setData({ | ||
1503 | + submit: 0 | ||
1504 | + }) | ||
1505 | + return false; | ||
1506 | + } | ||
1507 | + //如果不立即购买或者秒杀,如果是线下库存购买的时候 | ||
1508 | + if (th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) { | ||
1509 | + var isok = 1; | ||
1510 | + await th.check_store_num(goods.goods_id, th.data.bn_pick, goods.goods_num, function (res) { | ||
1511 | + isok = res; | ||
1512 | + }); | ||
1513 | + if (!isok) { | ||
1514 | + getApp().confirmBox("商品的门店库存不足"); | ||
1515 | + th.data.is_summit_ing = 0; | ||
1516 | + th.setData({ | ||
1517 | + submit: 0 | ||
1518 | + }) | ||
1519 | + return false; | ||
1520 | + } | ||
1521 | + } | ||
1522 | + | ||
1523 | + | ||
1524 | + | ||
1525 | + | ||
1526 | + } | ||
1527 | + | ||
1454 | if (getApp().globalData.skinface_id) { | 1528 | if (getApp().globalData.skinface_id) { |
1455 | goods.skinface_id = getApp().globalData.skinface_id; | 1529 | goods.skinface_id = getApp().globalData.skinface_id; |
1456 | } | 1530 | } |
@@ -2085,9 +2159,191 @@ Page({ | @@ -2085,9 +2159,191 @@ Page({ | ||
2085 | th.calculatePrice2(); | 2159 | th.calculatePrice2(); |
2086 | }, | 2160 | }, |
2087 | 2161 | ||
2162 | + //-- 获取订单促销的判断结构 -- | ||
2163 | + set_by_now_ord_prom(item){ | ||
2164 | + let pickid=this.data.bn_pick; | ||
2165 | + let order_prom_map_ck= this.data.order_prom_map_ck; | ||
2166 | + order_prom_map_ck[pickid]={ | ||
2167 | + shop_price_all:0, //手店价的累计 | ||
2168 | + market_price_all:0, //市场价的累计 | ||
2169 | + goods_price_all:0, //实收价的累计 | ||
2170 | + no_ord_price:0, //要累计上不参与订单促销的金额 | ||
2171 | + goodsList:[], | ||
2172 | + } | ||
2173 | + | ||
2174 | + let pk_ord_map=order_prom_map_ck[pickid]; | ||
2175 | + pk_ord_map.shop_price_all += item.shop_price_y * item.buynum; | ||
2176 | + pk_ord_map.market_price_all += item.market_price * item.buynum; | ||
2177 | + | ||
2178 | + }, | ||
2179 | + | ||
2180 | + //获取当前进行中订单促销,同时带入相应的金额判断订单促销是不是运行,同时订单促销的条件不是实收价判断的话,默认的时候,订单促销是不参与运算的 | ||
2181 | + async get_cur_ord_prom(pickid) { | ||
2182 | + let ord_prom = null; | ||
2183 | + let order_prom_map_ck = this.data.order_prom_map_ck[pickid]; | ||
2184 | + if(!order_prom_map_ck) return null; | ||
2185 | + | ||
2186 | + //获取当前进行中的优惠促销 | ||
2187 | + await getApp().request.promiseGet("/api/weshop/promorder/getPromOrder", { | ||
2188 | + data: { | ||
2189 | + store_id: os.stoid, | ||
2190 | + orderAmount: -1, //-1为不判断金额条件 | ||
2191 | + user_id: getApp().globalData.user_id | ||
2192 | + } | ||
2193 | + }).then(res => { | ||
2194 | + if (res.data.code == 0) { | ||
2195 | + ord_prom = res.data.data; | ||
2196 | + } | ||
2197 | + }) | ||
2198 | + | ||
2199 | + if (!ord_prom) return null; | ||
2200 | + //用于计算订单促销的金额 | ||
2201 | + let calculate_price=0; | ||
2202 | + | ||
2203 | + let txt1='show_ord_prom['+pickid+']'; | ||
2204 | + //-- 此时判断活动的金额满足与否 -- | ||
2205 | + switch (ord_prom.discount_field) { | ||
2206 | + //实收价的时候 | ||
2207 | + case 0: | ||
2208 | + //要先还原 | ||
2209 | + this.setData({ | ||
2210 | + [txt1]: 0 | ||
2211 | + }); | ||
2212 | + | ||
2213 | + if (ord_prom.money > order_prom_map_ck.goods_price_all){ | ||
2214 | + return null; | ||
2215 | + } | ||
2216 | + break; | ||
2217 | + //手店价的时候 | ||
2218 | + case 1: | ||
2219 | + if (ord_prom.money > order_prom_map_ck.shop_price_all){ | ||
2220 | + //要先还原 | ||
2221 | + this.setData({ | ||
2222 | + [txt1]: 0 | ||
2223 | + }); | ||
2224 | + return null; | ||
2225 | + } | ||
2226 | + //要显示订单促销使用的按钮 | ||
2227 | + this.setData({ | ||
2228 | + [txt1]: 1 | ||
2229 | + }); | ||
2230 | + break; | ||
2231 | + //市场价的时候 | ||
2232 | + case 2: | ||
2233 | + if (ord_prom.money > order_prom_map_ck.market_price_all){ | ||
2234 | + //要先还原 | ||
2235 | + this.setData({ | ||
2236 | + [txt1]: 0 | ||
2237 | + }); | ||
2238 | + return null; | ||
2239 | + } | ||
2240 | + //要显示订单促销使用的按钮 | ||
2241 | + this.setData({ | ||
2242 | + [txt1]: 2 | ||
2243 | + }); | ||
2244 | + break; | ||
2245 | + } | ||
2246 | + //如果订单促销是不参与订单促销的,那么就直接返回null(订单促销不是实收价的时候) | ||
2247 | + if(ord_prom.discount_field>0 && !this.data.can_use_ord_prom[pickid]){ | ||
2248 | + return null; | ||
2249 | + } | ||
2250 | + return ord_prom; | ||
2251 | + }, | ||
2252 | + | ||
2253 | + //立即购买的时候,点击订单促销的参与 | ||
2254 | + set_can_use_ord_prom_now:function (e){ | ||
2255 | + | ||
2256 | + if(this.data.sub) return false; | ||
2257 | + this.setData({ sub: 1,same_ok:1 }); | ||
2258 | + | ||
2259 | + let pickid=this.data.bn_pick; | ||
2260 | + let txt = 'can_use_ord_prom[' + pickid + ']'; | ||
2261 | + let can_use = this.data.can_use_ord_prom[pickid] ? this.data.can_use_ord_prom[pickid] : 0; | ||
2262 | + this.setData({ | ||
2263 | + [txt]: !can_use | ||
2264 | + }) | ||
2265 | + | ||
2266 | + let th=this; | ||
2267 | + let good=th.data.bn_goods; | ||
2268 | + let param=th.data.param; | ||
2269 | + | ||
2270 | + //如果有要参与订单促销的按钮点击后,要修改商品的价格 | ||
2271 | + if(th.data.can_use_ord_prom[pickid]){ | ||
2272 | + let discount_field=th.data.show_ord_prom[pickid]; | ||
2273 | + switch (discount_field){ | ||
2274 | + case 1: | ||
2275 | + good.shop_price=good.shop_price_y; | ||
2276 | + param.goods_price=good.shop_price_y; | ||
2277 | + break; | ||
2278 | + case 2: | ||
2279 | + good.shop_price=good.market_price; | ||
2280 | + param.goods_price=good.market_price; | ||
2281 | + break; | ||
2282 | + } | ||
2283 | + //-- 转成普通商品 --- | ||
2284 | + good.prom_type=0; | ||
2285 | + good.prom_id=0; | ||
2286 | + good.discount_field=discount_field; | ||
2287 | + | ||
2088 | 2288 | ||
2289 | + }else{ | ||
2290 | + good=ut.deep_cp(th.data.old_bn_goods); | ||
2291 | + param.goods_price=good.goods_price; | ||
2292 | + } | ||
2089 | 2293 | ||
2294 | + th.setData({ | ||
2295 | + bn_goods:good, | ||
2296 | + param | ||
2297 | + }) | ||
2298 | + wx.showLoading({ | ||
2299 | + title: "处理中.", | ||
2300 | + mark:true | ||
2301 | + }) | ||
2302 | + th.calculatePrice2() | ||
2303 | + }, | ||
2090 | 2304 | ||
2305 | + //---确认线下门店的数量足不足--- | ||
2306 | + async check_store_num(goods_id, pick, goods_num, func) { | ||
2307 | + var lock = 0, pick_no, plist, erpwareid; | ||
2308 | + //先读取门店的lock | ||
2309 | + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { | ||
2310 | + data: { store_id: os.stoid, wareId: goods_id, storageId: pick, pageSize: 1000 } | ||
2311 | + }).then(res => { | ||
2312 | + if (res.data.code == 0 && res.data.data.total > 0) { | ||
2313 | + for (var i in res.data.data.pageData) | ||
2314 | + lock += res.data.data.pageData[i].outQty; | ||
2315 | + } | ||
2316 | + }) | ||
2317 | + //先获取门店的编号 | ||
2318 | + await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick, { | ||
2319 | + data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } | ||
2320 | + }).then(res => { | ||
2321 | + if (res.data.code == 0) { | ||
2322 | + pick_no = res.data.data.pickup_no; | ||
2323 | + } | ||
2324 | + }) | ||
2325 | + //先获取商品的线下库存 | ||
2326 | + await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + goods_id, { | ||
2327 | + data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } | ||
2328 | + }).then(res => { | ||
2329 | + if (res.data.code == 0) { | ||
2330 | + erpwareid = res.data.data.erpwareid; | ||
2331 | + } | ||
2332 | + }) | ||
2333 | + //读取线下的门店库存 | ||
2334 | + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { | ||
2335 | + data: { storageNos: pick_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid } | ||
2336 | + }).then(res => { | ||
2337 | + if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length) { | ||
2338 | + plist = res.data.data.pageData[0]; | ||
2339 | + } | ||
2340 | + }) | ||
2341 | + var isok = 1; | ||
2342 | + if (!plist || goods_num > plist.CanOutQty - lock) { | ||
2343 | + isok = 0; | ||
2344 | + } | ||
2345 | + func(isok); | ||
2346 | + }, | ||
2091 | 2347 | ||
2092 | 2348 | ||
2093 | }); | 2349 | }); |
packageC/pages/luckyGo/luckyGo_cart_ct/luckyGo_cart_ct.wxml
@@ -100,6 +100,14 @@ | @@ -100,6 +100,14 @@ | ||
100 | <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}} | 100 | <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}} |
101 | </view> | 101 | </view> |
102 | 102 | ||
103 | + <!-- 订单促销取价规则的优化 --> | ||
104 | + <view class="set-mes" wx:if="{{show_ord_prom[bn_pick]}}"> | ||
105 | + <view class="use-item" > | ||
106 | + <icon bindtap='set_can_use_ord_prom_now' color="{{can_use_ord_prom[bn_pick]?'red':'gray'}}" size="16" type="success"></icon> | ||
107 | + <view bindtap='set_can_use_ord_prom_now' class="yu_er">参与订单促销</view> | ||
108 | + </view> | ||
109 | + </view> | ||
110 | + | ||
103 | <!--阶梯团是不显示的--> | 111 | <!--阶梯团是不显示的--> |
104 | <block wx:if="{{bn_exp_type==0 && !is_default_logistics}}"> | 112 | <block wx:if="{{bn_exp_type==0 && !is_default_logistics}}"> |
105 | <view class="use-item flex-space-between" wx:if="{{kt_type!=3 || is_normal==1}}"> | 113 | <view class="use-item flex-space-between" wx:if="{{kt_type!=3 || is_normal==1}}"> |
packageC/pages/luckyGo/luckyGo_goodsInfo/luckyGo_goodsInfo.js
@@ -3129,6 +3129,7 @@ Page({ | @@ -3129,6 +3129,7 @@ Page({ | ||
3129 | 3129 | ||
3130 | //---------拿出门店分类和门店------------ | 3130 | //---------拿出门店分类和门店------------ |
3131 | get_sto(e,func) { | 3131 | get_sto(e,func) { |
3132 | + | ||
3132 | var th = this, that = this; | 3133 | var th = this, that = this; |
3133 | var is_normal = e; | 3134 | var is_normal = e; |
3134 | 3135 | ||
@@ -3137,12 +3138,13 @@ Page({ | @@ -3137,12 +3138,13 @@ Page({ | ||
3137 | } else { | 3138 | } else { |
3138 | th.setData({ is_normal: 0 }) | 3139 | th.setData({ is_normal: 0 }) |
3139 | } | 3140 | } |
3141 | + th.data.get_sto_ing=1; | ||
3140 | 3142 | ||
3141 | var timer_get = setInterval(function () { | 3143 | var timer_get = setInterval(function () { |
3142 | if (th.data.is_get_local_ok == 0) return false; | 3144 | if (th.data.is_get_local_ok == 0) return false; |
3143 | if (!th.data.fir_def_store) return false; | 3145 | if (!th.data.fir_def_store) return false; |
3144 | var dd = null, i = getApp().request; | 3146 | var dd = null, i = getApp().request; |
3145 | - if (!th.data.sele_g) return false; | 3147 | + if (!th.data.sele_g){th.data.get_sto_ing=0; return false;} |
3146 | 3148 | ||
3147 | var g_distr_type = th.data.sele_g.distr_type; | 3149 | var g_distr_type = th.data.sele_g.distr_type; |
3148 | if (g_distr_type != 0) { | 3150 | if (g_distr_type != 0) { |
@@ -3277,6 +3279,7 @@ Page({ | @@ -3277,6 +3279,7 @@ Page({ | ||
3277 | 3279 | ||
3278 | } | 3280 | } |
3279 | },err=>{ | 3281 | },err=>{ |
3282 | + th.data.get_sto_ing=0; | ||
3280 | ut.m_toast('网络繁忙,请稍后重试'); | 3283 | ut.m_toast('网络繁忙,请稍后重试'); |
3281 | wx.hideLoading(); | 3284 | wx.hideLoading(); |
3282 | }) | 3285 | }) |
@@ -3403,12 +3406,15 @@ Page({ | @@ -3403,12 +3406,15 @@ Page({ | ||
3403 | front_is_show_sto_cat:th.data.is_show_sto_cat, | 3406 | front_is_show_sto_cat:th.data.is_show_sto_cat, |
3404 | }) | 3407 | }) |
3405 | } | 3408 | } |
3409 | + | ||
3410 | + this.data.get_sto_ing=0; | ||
3411 | + | ||
3406 | }, | 3412 | }, |
3407 | 3413 | ||
3408 | //------------处理门店--------------- | 3414 | //------------处理门店--------------- |
3409 | deal_pickup(e) { | 3415 | deal_pickup(e) { |
3410 | var th = this; | 3416 | var th = this; |
3411 | - if (!th.data.sele_g) return false | 3417 | + if (!th.data.sele_g){th.data.get_sto_ing=0;return false} |
3412 | 3418 | ||
3413 | var g_distr_type = th.data.sele_g.distr_type; | 3419 | var g_distr_type = th.data.sele_g.distr_type; |
3414 | wx.hideLoading(); | 3420 | wx.hideLoading(); |
@@ -3580,7 +3586,7 @@ Page({ | @@ -3580,7 +3586,7 @@ Page({ | ||
3580 | //------------处理线下门店库存-------- | 3586 | //------------处理线下门店库存-------- |
3581 | deal_pickup_dline(e) { | 3587 | deal_pickup_dline(e) { |
3582 | var pkno = [], th = this; | 3588 | var pkno = [], th = this; |
3583 | - if (!th.data.sele_g) return false; | 3589 | + if (!th.data.sele_g){th.data.get_sto_ing=0;return false;} |
3584 | 3590 | ||
3585 | if (this.data.def_pick_store) { | 3591 | if (this.data.def_pick_store) { |
3586 | pkno.push(this.data.def_pick_store.pickup_no); | 3592 | pkno.push(this.data.def_pick_store.pickup_no); |
@@ -3673,6 +3679,7 @@ Page({ | @@ -3673,6 +3679,7 @@ Page({ | ||
3673 | 3679 | ||
3674 | 3680 | ||
3675 | } else { | 3681 | } else { |
3682 | + th.data.get_sto_ing=0; | ||
3676 | th.setData({ | 3683 | th.setData({ |
3677 | all_sto: null, | 3684 | all_sto: null, |
3678 | only_pk: null, | 3685 | only_pk: null, |
@@ -3739,9 +3746,11 @@ Page({ | @@ -3739,9 +3746,11 @@ Page({ | ||
3739 | //---把数组组装进去--- | 3746 | //---把数组组装进去--- |
3740 | th.deal_pickup(em); | 3747 | th.deal_pickup(em); |
3741 | } else { | 3748 | } else { |
3749 | + th.data.get_sto_ing=0; | ||
3742 | th.setData({ def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null }) | 3750 | th.setData({ def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null }) |
3743 | } | 3751 | } |
3744 | } else { | 3752 | } else { |
3753 | + th.data.get_sto_ing=0; | ||
3745 | th.setData({ def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null }) | 3754 | th.setData({ def_pick_store: null, all_sto: null, only_pk: null, def_pickpu_list: null }) |
3746 | } | 3755 | } |
3747 | }) | 3756 | }) |
@@ -4504,6 +4513,7 @@ Page({ | @@ -4504,6 +4513,7 @@ Page({ | ||
4504 | // ind == 1 为普通购买 | 4513 | // ind == 1 为普通购买 |
4505 | openSpecModel_pt: function (e) { | 4514 | openSpecModel_pt: function (e) { |
4506 | 4515 | ||
4516 | + if(this.data.get_sto_ing) return false; | ||
4507 | this.setData({ open_ind_store: 9 }); | 4517 | this.setData({ open_ind_store: 9 }); |
4508 | // 判断是否有待支付订单 | 4518 | // 判断是否有待支付订单 |
4509 | var aid = this.data.group_id; | 4519 | var aid = this.data.group_id; |
@@ -4546,7 +4556,11 @@ Page({ | @@ -4546,7 +4556,11 @@ Page({ | ||
4546 | var th = this; | 4556 | var th = this; |
4547 | var ind = parseInt(e.currentTarget.dataset.ind); | 4557 | var ind = parseInt(e.currentTarget.dataset.ind); |
4548 | 4558 | ||
4549 | - th.setData({def_pick_store: ut.deep_cp(th.data.front_pick)}); | 4559 | + if(th.data.front_pick && th.data.front_pick.pickup_id){ |
4560 | + th.setData({def_pick_store: ut.deep_cp(th.data.front_pick)}); | ||
4561 | + } | ||
4562 | + | ||
4563 | + | ||
4550 | 4564 | ||
4551 | //ind == 1是普通购买 | 4565 | //ind == 1是普通购买 |
4552 | if (ind == 1) { | 4566 | if (ind == 1) { |
@@ -5981,12 +5995,12 @@ Page({ | @@ -5981,12 +5995,12 @@ Page({ | ||
5981 | }) | 5995 | }) |
5982 | //--先判断会员状态-- | 5996 | //--先判断会员状态-- |
5983 | var user_info = getApp().globalData.userInfo; | 5997 | var user_info = getApp().globalData.userInfo; |
5984 | - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { | ||
5985 | - wx.navigateTo({ | ||
5986 | - url: '/packageE/pages/togoin/togoin', | ||
5987 | - }) | ||
5988 | - return false; | ||
5989 | - } | 5998 | + // if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { |
5999 | + // wx.navigateTo({ | ||
6000 | + // url: '/packageE/pages/togoin/togoin', | ||
6001 | + // }) | ||
6002 | + // return false; | ||
6003 | + // } | ||
5990 | 6004 | ||
5991 | var th = this; | 6005 | var th = this; |
5992 | var ind = ee.currentTarget.dataset.ind; | 6006 | var ind = ee.currentTarget.dataset.ind; |
packageC/pages/presell/cardInfo/goodsInfo.js
@@ -1186,6 +1186,9 @@ Page({ | @@ -1186,6 +1186,9 @@ Page({ | ||
1186 | }, | 1186 | }, |
1187 | 1187 | ||
1188 | openSpecModel: function(t) { | 1188 | openSpecModel: function(t) { |
1189 | + | ||
1190 | + if(this.data.get_sto_ing) return false; | ||
1191 | + | ||
1189 | var th=this; var open_store = t.currentTarget.dataset.ind; | 1192 | var th=this; var open_store = t.currentTarget.dataset.ind; |
1190 | if(getApp().is_sp_hao() && open_store==1){ | 1193 | if(getApp().is_sp_hao() && open_store==1){ |
1191 | wx.showToast({ | 1194 | wx.showToast({ |
@@ -1443,6 +1446,8 @@ Page({ | @@ -1443,6 +1446,8 @@ Page({ | ||
1443 | }) | 1446 | }) |
1444 | } | 1447 | } |
1445 | 1448 | ||
1449 | + this.data.get_sto_ing=1; | ||
1450 | + | ||
1446 | var timer_get = setInterval(function() { | 1451 | var timer_get = setInterval(function() { |
1447 | if (th.data.is_get_local_ok == 0) return false; | 1452 | if (th.data.is_get_local_ok == 0) return false; |
1448 | if (!th.data.fir_def_store) return false; | 1453 | if (!th.data.fir_def_store) return false; |
@@ -1557,6 +1562,9 @@ Page({ | @@ -1557,6 +1562,9 @@ Page({ | ||
1557 | th.deal_pickup(e); | 1562 | th.deal_pickup(e); |
1558 | } | 1563 | } |
1559 | else{ | 1564 | else{ |
1565 | + | ||
1566 | + th.data.get_sto_ing=0; | ||
1567 | + | ||
1560 | th.setData({ | 1568 | th.setData({ |
1561 | isshow:1 | 1569 | isshow:1 |
1562 | }) | 1570 | }) |
@@ -1835,11 +1843,14 @@ Page({ | @@ -1835,11 +1843,14 @@ Page({ | ||
1835 | if (!th.data.def_pick_store) { | 1843 | if (!th.data.def_pick_store) { |
1836 | th.setData({def_pick_store:e.data.data.pageData[0]}) | 1844 | th.setData({def_pick_store:e.data.data.pageData[0]}) |
1837 | } | 1845 | } |
1838 | - | ||
1839 | } | 1846 | } |
1847 | + | ||
1848 | + th.data.get_sto_ing=0; | ||
1840 | } | 1849 | } |
1841 | }); | 1850 | }); |
1842 | - } else { | 1851 | + } else { |
1852 | + | ||
1853 | + th.data.get_sto_ing=0; | ||
1843 | th.setData({ | 1854 | th.setData({ |
1844 | is_show_sto_cat: 0, | 1855 | is_show_sto_cat: 0, |
1845 | only_pk: e.data.data.pageData | 1856 | only_pk: e.data.data.pageData |
@@ -1991,8 +2002,8 @@ Page({ | @@ -1991,8 +2002,8 @@ Page({ | ||
1991 | return false; | 2002 | return false; |
1992 | } | 2003 | } |
1993 | 2004 | ||
1994 | - var img=ee.data.iurl+ee.data.data.img_url; | ||
1995 | - if(ee.data.prom_act){ | 2005 | + var img=ee.data.iurl+ee.data.data.image_url; |
2006 | + if(ee.data.prom_act && ee.data.prom_act.share_img){ | ||
1996 | img=ee.data.iurl+ee.data.prom_act.share_img; | 2007 | img=ee.data.iurl+ee.data.prom_act.share_img; |
1997 | } | 2008 | } |
1998 | 2009 | ||
@@ -2045,12 +2056,12 @@ Page({ | @@ -2045,12 +2056,12 @@ Page({ | ||
2045 | 2056 | ||
2046 | //--先判断会员状态-- | 2057 | //--先判断会员状态-- |
2047 | var user_info = getApp().globalData.userInfo; | 2058 | var user_info = getApp().globalData.userInfo; |
2048 | - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { | ||
2049 | - wx.navigateTo({ | ||
2050 | - url: '/packageE/pages/togoin/togoin', | ||
2051 | - }) | ||
2052 | - return false; | ||
2053 | - } | 2059 | + // if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { |
2060 | + // wx.navigateTo({ | ||
2061 | + // url: '/packageE/pages/togoin/togoin', | ||
2062 | + // }) | ||
2063 | + // return false; | ||
2064 | + // } | ||
2054 | 2065 | ||
2055 | 2066 | ||
2056 | //如果开启了,则不在选择门店 | 2067 | //如果开启了,则不在选择门店 |
@@ -4062,7 +4073,14 @@ Page({ | @@ -4062,7 +4073,14 @@ Page({ | ||
4062 | }) | 4073 | }) |
4063 | }, | 4074 | }, |
4064 | 4075 | ||
4065 | - | 4076 | + // 预览海报 |
4077 | + previewPoster() { | ||
4078 | + getApp().globalData.no_clear = 1; | ||
4079 | + wx.previewImage({ | ||
4080 | + current: this.data.shareImgPath, // 当前显示图片的http链接 | ||
4081 | + urls: [this.data.shareImgPath], // 需要预览的图片http链接列表 | ||
4082 | + }); | ||
4083 | + }, | ||
4066 | 4084 | ||
4067 | 4085 | ||
4068 | 4086 |
packageC/pages/presell/cardInfo/goodsInfo.wxml
@@ -990,6 +990,7 @@ | @@ -990,6 +990,7 @@ | ||
990 | <warn id="warn"></warn> | 990 | <warn id="warn"></warn> |
991 | <!-- 分享控件,底部弹出 --> | 991 | <!-- 分享控件,底部弹出 --> |
992 | <share id="share_button" bind:send="send" bind:cancel="cancel" bind:share_img="saveImageFn" wx:if="{{share_hidden}}"></share> | 992 | <share id="share_button" bind:send="send" bind:cancel="cancel" bind:share_img="saveImageFn" wx:if="{{share_hidden}}"></share> |
993 | + | ||
993 | <view wx:if="{{showPoster}}"> | 994 | <view wx:if="{{showPoster}}"> |
994 | <view class="mask" catchtap="closePoster"></view> | 995 | <view class="mask" catchtap="closePoster"></view> |
995 | <view class="poster-container"> | 996 | <view class="poster-container"> |
packageC/pages/presell/cart/cart.js
@@ -2198,6 +2198,9 @@ Page({ | @@ -2198,6 +2198,9 @@ Page({ | ||
2198 | }).then(res => { | 2198 | }).then(res => { |
2199 | if (res.data.code == 0) { | 2199 | if (res.data.code == 0) { |
2200 | prom_ord = res.data.data; | 2200 | prom_ord = res.data.data; |
2201 | + | ||
2202 | + //如果订单促销的取价不是实收,清空订单促销 | ||
2203 | + if(prom_ord && prom_ord.discount_field>0) prom_ord=null; | ||
2201 | } | 2204 | } |
2202 | 2205 | ||
2203 | }) | 2206 | }) |
packageC/pages/presell/cart/cart2.js
@@ -134,7 +134,14 @@ Page({ | @@ -134,7 +134,14 @@ Page({ | ||
134 | bconfig:null, | 134 | bconfig:null, |
135 | showFold:true, | 135 | showFold:true, |
136 | 136 | ||
137 | - is_fwk:0 //-- 判断是不是服务卡项订单 -- | 137 | + is_fwk:0, //-- 判断是不是服务卡项订单 -- |
138 | + | ||
139 | + //-- 订单促销判断积累 ---2024-2-20 | ||
140 | + order_prom_map_ck: {}, | ||
141 | + //能不能使用订单促销 | ||
142 | + can_use_ord_prom:{}, | ||
143 | + //存储订单促销的取价,按照门店进行索引 | ||
144 | + show_ord_prom:{}, | ||
138 | }, | 145 | }, |
139 | 146 | ||
140 | 147 | ||
@@ -595,7 +602,7 @@ Page({ | @@ -595,7 +602,7 @@ Page({ | ||
595 | }); | 602 | }); |
596 | }, | 603 | }, |
597 | 604 | ||
598 | - //-- 获取到服务卡项的详情 -- | 605 | + //-- 获取到商品的详情 -- |
599 | get_goods_detail(act, prelist,gg){ | 606 | get_goods_detail(act, prelist,gg){ |
600 | var th = this; | 607 | var th = this; |
601 | //--------如果goods_id一样,就是要立即购买----- | 608 | //--------如果goods_id一样,就是要立即购买----- |
@@ -728,7 +735,10 @@ Page({ | @@ -728,7 +735,10 @@ Page({ | ||
728 | } | 735 | } |
729 | 736 | ||
730 | //这个位置要拿活动的预售价 | 737 | //这个位置要拿活动的预售价 |
738 | + t.data.data.shop_price_y = t.data.data.shop_price; | ||
731 | t.data.data.shop_price = prelist.presell_money; | 739 | t.data.data.shop_price = prelist.presell_money; |
740 | + th.data.old_bn_goods=ut.deep_cp(t.data.data); | ||
741 | + | ||
732 | th.setData({ | 742 | th.setData({ |
733 | bn_goods: t.data.data, | 743 | bn_goods: t.data.data, |
734 | bn_pickname: gg.pick_name, | 744 | bn_pickname: gg.pick_name, |
@@ -832,6 +842,7 @@ Page({ | @@ -832,6 +842,7 @@ Page({ | ||
832 | // } | 842 | // } |
833 | 843 | ||
834 | th.setData({dis_btn:1}) | 844 | th.setData({dis_btn:1}) |
845 | + this.data.submit=0; | ||
835 | 846 | ||
836 | wx.showLoading({ | 847 | wx.showLoading({ |
837 | title: "处理中.",mask:true | 848 | title: "处理中.",mask:true |
@@ -901,20 +912,24 @@ Page({ | @@ -901,20 +912,24 @@ Page({ | ||
901 | //-- 判断订单优惠的叠加 -- | 912 | //-- 判断订单优惠的叠加 -- |
902 | var ord_prom=null; | 913 | var ord_prom=null; |
903 | var o_condition=allpice; | 914 | var o_condition=allpice; |
904 | - if (o_condition > 0 && th.data.act.is_useorderyh) { | ||
905 | - await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { | ||
906 | - data: { store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id } | ||
907 | - }).then(res => { | ||
908 | - if (res.data.code == 0) { | ||
909 | - ord_prom = res.data.data; | ||
910 | - } | ||
911 | - }) | 915 | + if (th.data.act.is_useorderyh) { |
916 | + // await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { | ||
917 | + // data: { store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id } | ||
918 | + // }).then(res => { | ||
919 | + // if (res.data.code == 0) { | ||
920 | + // ord_prom = res.data.data; | ||
921 | + // } | ||
922 | + // }) | ||
923 | + | ||
924 | + th.set_by_now_ord_prom(th.data.bn_goods); | ||
925 | + th.data.order_prom_map_ck[bn_pick].goods_price_all=o_condition; | ||
926 | + ord_prom=await th.get_cur_ord_prom(bn_pick); | ||
912 | } | 927 | } |
913 | 928 | ||
914 | //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮,同时商品购买时候,服务卡项购买不计算运费---------- | 929 | //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮,同时商品购买时候,服务卡项购买不计算运费---------- |
915 | if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_past != 1 && th.data.act.goods_type==0) { | 930 | if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_past != 1 && th.data.act.goods_type==0) { |
916 | //看是不是有调用过包邮券 | 931 | //看是不是有调用过包邮券 |
917 | - if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1) { | 932 | + if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1 && !th.data.can_use_ord_prom[th.data.bn_pick] ) { |
918 | var condition = allpice - cut_price - quan_price; | 933 | var condition = allpice - cut_price - quan_price; |
919 | //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱--- | 934 | //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱--- |
920 | getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", { | 935 | getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", { |
@@ -944,6 +959,12 @@ Page({ | @@ -944,6 +959,12 @@ Page({ | ||
944 | }) | 959 | }) |
945 | } | 960 | } |
946 | 961 | ||
962 | + //要让包邮券消失,在使用非实收包邮券的时候 | ||
963 | + if(th.data.can_use_ord_prom[th.data.bn_pick]){ | ||
964 | + th.setData({ get_by_quan_list: null }); | ||
965 | + th.data.isget_by_quan[th.data.bn_pick] = 0; | ||
966 | + } | ||
967 | + | ||
947 | var shipping_price =0; | 968 | var shipping_price =0; |
948 | if(good.is_free_shipping == 0 ) { | 969 | if(good.is_free_shipping == 0 ) { |
949 | //-- 在没有使用包邮券的时候 -- | 970 | //-- 在没有使用包邮券的时候 -- |
@@ -1568,6 +1589,57 @@ Page({ | @@ -1568,6 +1589,57 @@ Page({ | ||
1568 | 'prom_id': th.data.bn_goods.prom_id, //促销活动id | 1589 | 'prom_id': th.data.bn_goods.prom_id, //促销活动id |
1569 | }; | 1590 | }; |
1570 | 1591 | ||
1592 | + if(th.data.bn_goods.discount_field){ | ||
1593 | + goods.discount_field=th.data.bn_goods.discount_field; | ||
1594 | + } | ||
1595 | + | ||
1596 | + //如果有参与非实收的订单促销,那么就相当于是普通购买 | ||
1597 | + if(th.data.can_use_ord_prom[th.data.bn_pick]){ | ||
1598 | + goods.is_integral_normal=1; | ||
1599 | + //如果是指定门店,就要判断 | ||
1600 | + if (th.data.bn_goods.pick_group_ids) { | ||
1601 | + var idx0 = th.data.bn_goods.pick_up_lists.findIndex(function (e) { | ||
1602 | + return e.pickup_id == th.data.bn_pick; | ||
1603 | + }) | ||
1604 | + if (idx0 < 0) { | ||
1605 | + getApp().my_warnning(th.data.bn_goods.goods_name + "的门店不可售", 0, th); | ||
1606 | + th.data.is_summit_ing = 0; | ||
1607 | + th.setData({ | ||
1608 | + submit: 0 | ||
1609 | + }) | ||
1610 | + return false; | ||
1611 | + } | ||
1612 | + } | ||
1613 | + | ||
1614 | + if (th.data.sales_rules==1 && th.data.bn_goods.store_count<oods.goods_num){ | ||
1615 | + getApp().confirmBox("商品的门店库存不足"); | ||
1616 | + th.data.is_summit_ing = 0; | ||
1617 | + th.setData({ | ||
1618 | + submit: 0 | ||
1619 | + }) | ||
1620 | + return false; | ||
1621 | + } | ||
1622 | + //如果不立即购买或者秒杀,如果是线下库存购买的时候 | ||
1623 | + if (th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) { | ||
1624 | + var isok = 1; | ||
1625 | + await th.check_store_num(goods.goods_id, th.data.bn_pick, goods.goods_num, function (res) { | ||
1626 | + isok = res; | ||
1627 | + }); | ||
1628 | + if (!isok) { | ||
1629 | + getApp().confirmBox("商品的门店库存不足"); | ||
1630 | + th.data.is_summit_ing = 0; | ||
1631 | + th.setData({ | ||
1632 | + submit: 0 | ||
1633 | + }) | ||
1634 | + return false; | ||
1635 | + } | ||
1636 | + } | ||
1637 | + | ||
1638 | + | ||
1639 | + } | ||
1640 | + | ||
1641 | + | ||
1642 | + | ||
1571 | if(getApp().globalData.skinface_id){ | 1643 | if(getApp().globalData.skinface_id){ |
1572 | goods.skinface_id=getApp().globalData.skinface_id; | 1644 | goods.skinface_id=getApp().globalData.skinface_id; |
1573 | } | 1645 | } |
@@ -2107,7 +2179,7 @@ Page({ | @@ -2107,7 +2179,7 @@ Page({ | ||
2107 | } | 2179 | } |
2108 | }) | 2180 | }) |
2109 | var isok = 1; | 2181 | var isok = 1; |
2110 | - if (goods_num > plist.CanOutQty - lock) { | 2182 | + if (!plist || goods_num > plist.CanOutQty - lock) { |
2111 | isok = 0; | 2183 | isok = 0; |
2112 | } | 2184 | } |
2113 | func(isok); | 2185 | func(isok); |
@@ -3179,8 +3251,158 @@ Page({ | @@ -3179,8 +3251,158 @@ Page({ | ||
3179 | url= "/pages/goods/goodsInfo/goodsInfo?goods_id="+gid; | 3251 | url= "/pages/goods/goodsInfo/goodsInfo?goods_id="+gid; |
3180 | } | 3252 | } |
3181 | getApp().goto(url); | 3253 | getApp().goto(url); |
3254 | + }, | ||
3255 | + | ||
3256 | + | ||
3257 | + //-- 获取订单促销的判断结构 -- | ||
3258 | + set_by_now_ord_prom(item){ | ||
3259 | + let pickid=this.data.bn_pick; | ||
3260 | + let order_prom_map_ck= this.data.order_prom_map_ck; | ||
3261 | + order_prom_map_ck[pickid]={ | ||
3262 | + shop_price_all:0, //手店价的累计 | ||
3263 | + market_price_all:0, //市场价的累计 | ||
3264 | + goods_price_all:0, //实收价的累计 | ||
3265 | + no_ord_price:0, //要累计上不参与订单促销的金额 | ||
3266 | + goodsList:[], | ||
3267 | + } | ||
3268 | + | ||
3269 | + let pk_ord_map=order_prom_map_ck[pickid]; | ||
3270 | + pk_ord_map.shop_price_all += item.shop_price_y * item.buynum; | ||
3271 | + pk_ord_map.market_price_all += item.market_price * item.buynum; | ||
3272 | + | ||
3273 | + }, | ||
3274 | + | ||
3275 | + //获取当前进行中订单促销,同时带入相应的金额判断订单促销是不是运行,同时订单促销的条件不是实收价判断的话,默认的时候,订单促销是不参与运算的 | ||
3276 | + async get_cur_ord_prom(pickid) { | ||
3277 | + let ord_prom = null; | ||
3278 | + let order_prom_map_ck = this.data.order_prom_map_ck[pickid]; | ||
3279 | + if(!order_prom_map_ck) return null; | ||
3280 | + | ||
3281 | + //获取当前进行中的优惠促销 | ||
3282 | + await getApp().request.promiseGet("/api/weshop/promorder/getPromOrder", { | ||
3283 | + data: { | ||
3284 | + store_id: os.stoid, | ||
3285 | + orderAmount: -1, //-1为不判断金额条件 | ||
3286 | + user_id: getApp().globalData.user_id | ||
3287 | + } | ||
3288 | + }).then(res => { | ||
3289 | + if (res.data.code == 0) { | ||
3290 | + ord_prom = res.data.data; | ||
3291 | + } | ||
3292 | + }) | ||
3293 | + | ||
3294 | + if (!ord_prom) return null; | ||
3295 | + //用于计算订单促销的金额 | ||
3296 | + let calculate_price=0; | ||
3297 | + | ||
3298 | + let txt1='show_ord_prom['+pickid+']'; | ||
3299 | + //-- 此时判断活动的金额满足与否 -- | ||
3300 | + switch (ord_prom.discount_field) { | ||
3301 | + //实收价的时候 | ||
3302 | + case 0: | ||
3303 | + //要先还原 | ||
3304 | + this.setData({ | ||
3305 | + [txt1]: 0 | ||
3306 | + }); | ||
3307 | + | ||
3308 | + if (ord_prom.money > order_prom_map_ck.goods_price_all){ | ||
3309 | + return null; | ||
3310 | + } | ||
3311 | + break; | ||
3312 | + //手店价的时候 | ||
3313 | + case 1: | ||
3314 | + if (ord_prom.money > order_prom_map_ck.shop_price_all){ | ||
3315 | + //要先还原 | ||
3316 | + this.setData({ | ||
3317 | + [txt1]: 0 | ||
3318 | + }); | ||
3319 | + return null; | ||
3320 | + } | ||
3321 | + //要显示订单促销使用的按钮 | ||
3322 | + this.setData({ | ||
3323 | + [txt1]: 1 | ||
3324 | + }); | ||
3325 | + break; | ||
3326 | + //市场价的时候 | ||
3327 | + case 2: | ||
3328 | + if (ord_prom.money > order_prom_map_ck.market_price_all){ | ||
3329 | + //要先还原 | ||
3330 | + this.setData({ | ||
3331 | + [txt1]: 0 | ||
3332 | + }); | ||
3333 | + return null; | ||
3334 | + } | ||
3335 | + //要显示订单促销使用的按钮 | ||
3336 | + this.setData({ | ||
3337 | + [txt1]: 2 | ||
3338 | + }); | ||
3339 | + break; | ||
3340 | + } | ||
3341 | + //如果订单促销是不参与订单促销的,那么就直接返回null(订单促销不是实收价的时候) | ||
3342 | + if(ord_prom.discount_field>0 && !this.data.can_use_ord_prom[pickid]){ | ||
3343 | + return null; | ||
3344 | + } | ||
3345 | + return ord_prom; | ||
3346 | + }, | ||
3347 | + | ||
3348 | + //立即购买的时候,点击订单促销的参与 | ||
3349 | + set_can_use_ord_prom_now:function (e){ | ||
3350 | + | ||
3351 | + if(this.data.submit || this.data.dis_btn) return false; | ||
3352 | + this.data.submit=1; | ||
3353 | + | ||
3354 | + let pickid=this.data.bn_pick; | ||
3355 | + let txt = 'can_use_ord_prom[' + pickid + ']'; | ||
3356 | + let can_use = this.data.can_use_ord_prom[pickid] ? this.data.can_use_ord_prom[pickid] : 0; | ||
3357 | + this.setData({ | ||
3358 | + [txt]: !can_use | ||
3359 | + }) | ||
3360 | + | ||
3361 | + let th=this; | ||
3362 | + let good=th.data.bn_goods; | ||
3363 | + | ||
3364 | + //如果有要参与订单促销的按钮点击后,要修改商品的价格 | ||
3365 | + if(th.data.can_use_ord_prom[pickid]){ | ||
3366 | + let discount_field=th.data.show_ord_prom[pickid]; | ||
3367 | + switch (discount_field){ | ||
3368 | + case 1: | ||
3369 | + good.shop_price=good.shop_price_y; | ||
3370 | + break; | ||
3371 | + case 2: | ||
3372 | + good.shop_price=good.market_price; | ||
3373 | + break; | ||
3374 | + } | ||
3375 | + //-- 转成普通商品 --- | ||
3376 | + good.prom_type=0; | ||
3377 | + good.prom_id=0; | ||
3378 | + good.integral=0; | ||
3379 | + good.discount_field=discount_field; | ||
3380 | + | ||
3381 | + //把优惠券的使用还原 | ||
3382 | + th.setData({ | ||
3383 | + selected_quan_list: null, | ||
3384 | + using_quan: {} | ||
3385 | + }) | ||
3386 | + | ||
3387 | + }else{ | ||
3388 | + good=ut.deep_cp(th.data.old_bn_goods); | ||
3389 | + } | ||
3390 | + | ||
3391 | + th.setData({ | ||
3392 | + bn_goods:good | ||
3393 | + }) | ||
3394 | + wx.showLoading({ | ||
3395 | + title: "处理中.", | ||
3396 | + mark:true | ||
3397 | + }) | ||
3398 | + th.calculatePrice2() | ||
3399 | + | ||
3400 | + if(!th.data.can_use_ord_prom[pickid]){ | ||
3401 | + th.get_buy_now_quan(); | ||
3402 | + } | ||
3182 | } | 3403 | } |
3183 | 3404 | ||
3184 | 3405 | ||
3185 | 3406 | ||
3407 | + | ||
3186 | }); | 3408 | }); |
packageC/pages/presell/cart/cart2.wxml
@@ -150,6 +150,15 @@ | @@ -150,6 +150,15 @@ | ||
150 | <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}} | 150 | <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}} |
151 | </view> | 151 | </view> |
152 | 152 | ||
153 | + <!-- 订单促销取价规则的优化 --> | ||
154 | + <view class="set-mes" wx:if="{{show_ord_prom[bn_pick]}}"> | ||
155 | + <view class="use-item" > | ||
156 | + <icon bindtap='set_can_use_ord_prom_now' color="{{can_use_ord_prom[bn_pick]?'red':'gray'}}" size="16" type="success"></icon> | ||
157 | + <view bindtap='set_can_use_ord_prom_now' class="yu_er">参与订单促销</view> | ||
158 | + </view> | ||
159 | + </view> | ||
160 | + | ||
161 | + | ||
153 | <view class="xc-coupon-frame flex-center" data-bn="1" bindtap="open_coupon_list" data-pickid="{{bn_pick}}" hidden="{{is_fwk}}" | 162 | <view class="xc-coupon-frame flex-center" data-bn="1" bindtap="open_coupon_list" data-pickid="{{bn_pick}}" hidden="{{is_fwk}}" |
154 | wx:if="{{(selected_quan_list && selected_quan_list.length>0) || get_by_quan_list!=null}}"> | 163 | wx:if="{{(selected_quan_list && selected_quan_list.length>0) || get_by_quan_list!=null}}"> |
155 | <view class="work-frame flex-space-between"> | 164 | <view class="work-frame flex-space-between"> |
packageC/pages/presell/goodsInfo/goodsInfo.js
@@ -1439,6 +1439,9 @@ Page({ | @@ -1439,6 +1439,9 @@ Page({ | ||
1439 | }, | 1439 | }, |
1440 | 1440 | ||
1441 | openSpecModel: function (t) { | 1441 | openSpecModel: function (t) { |
1442 | + | ||
1443 | + if(this.data.get_sto_ing) return false; | ||
1444 | + | ||
1442 | var th = this; | 1445 | var th = this; |
1443 | var open_store = t.currentTarget.dataset.ind; | 1446 | var open_store = t.currentTarget.dataset.ind; |
1444 | this.setData({ | 1447 | this.setData({ |
@@ -1993,6 +1996,9 @@ Page({ | @@ -1993,6 +1996,9 @@ Page({ | ||
1993 | 1996 | ||
1994 | //---------拿出门店分类和门店------------ | 1997 | //---------拿出门店分类和门店------------ |
1995 | get_sto(e) { | 1998 | get_sto(e) { |
1999 | + | ||
2000 | + this.data.get_sto_ing=1; | ||
2001 | + | ||
1996 | var th = this, is_normal = e; | 2002 | var th = this, is_normal = e; |
1997 | var that=th; | 2003 | var that=th; |
1998 | 2004 | ||
@@ -2007,7 +2013,7 @@ Page({ | @@ -2007,7 +2013,7 @@ Page({ | ||
2007 | if (!th.data.fir_def_store) return false; | 2013 | if (!th.data.fir_def_store) return false; |
2008 | 2014 | ||
2009 | var dd = null, i = getApp().request; | 2015 | var dd = null, i = getApp().request; |
2010 | - if (!th.data.sele_g) return false; | 2016 | + if (!th.data.sele_g) {th.data.get_sto_ing=0; return false;} |
2011 | 2017 | ||
2012 | var g_distr_type = th.data.sele_g.distr_type; | 2018 | var g_distr_type = th.data.sele_g.distr_type; |
2013 | if (g_distr_type != 0) { | 2019 | if (g_distr_type != 0) { |
@@ -2149,10 +2155,12 @@ Page({ | @@ -2149,10 +2155,12 @@ Page({ | ||
2149 | } | 2155 | } |
2150 | } | 2156 | } |
2151 | else{ | 2157 | else{ |
2158 | + th.data.get_sto_ing=0; | ||
2152 | wx.hideLoading(); | 2159 | wx.hideLoading(); |
2153 | } | 2160 | } |
2154 | } | 2161 | } |
2155 | else{ | 2162 | else{ |
2163 | + th.data.get_sto_ing=0; | ||
2156 | wx.hideLoading(); | 2164 | wx.hideLoading(); |
2157 | } | 2165 | } |
2158 | }) | 2166 | }) |
@@ -2263,7 +2271,7 @@ Page({ | @@ -2263,7 +2271,7 @@ Page({ | ||
2263 | //------------处理门店--------------- | 2271 | //------------处理门店--------------- |
2264 | deal_pickup(e) { | 2272 | deal_pickup(e) { |
2265 | var th = this; | 2273 | var th = this; |
2266 | - if (!th.data.sele_g) return false | 2274 | + if (!th.data.sele_g) { th.data.get_sto_ing=0; return false } |
2267 | 2275 | ||
2268 | var g_distr_type = th.data.sele_g.distr_type; | 2276 | var g_distr_type = th.data.sele_g.distr_type; |
2269 | wx.hideLoading(); | 2277 | wx.hideLoading(); |
@@ -2419,6 +2427,9 @@ Page({ | @@ -2419,6 +2427,9 @@ Page({ | ||
2419 | th.setData({ def_pick_store: e.data.data.pageData[0] }) | 2427 | th.setData({ def_pick_store: e.data.data.pageData[0] }) |
2420 | } | 2428 | } |
2421 | } | 2429 | } |
2430 | + | ||
2431 | + th.data.get_sto_ing=0; | ||
2432 | + | ||
2422 | } else { | 2433 | } else { |
2423 | th.setData({ | 2434 | th.setData({ |
2424 | is_show_sto_cat: -1, | 2435 | is_show_sto_cat: -1, |
@@ -2429,10 +2440,12 @@ Page({ | @@ -2429,10 +2440,12 @@ Page({ | ||
2429 | th.setData({ def_pick_store: e.data.data.pageData[0] }) | 2440 | th.setData({ def_pick_store: e.data.data.pageData[0] }) |
2430 | } | 2441 | } |
2431 | 2442 | ||
2443 | + th.data.get_sto_ing=0; | ||
2432 | } | 2444 | } |
2433 | } | 2445 | } |
2434 | }); | 2446 | }); |
2435 | } else { | 2447 | } else { |
2448 | + th.data.get_sto_ing=0; | ||
2436 | th.setData({ | 2449 | th.setData({ |
2437 | is_show_sto_cat: 0, | 2450 | is_show_sto_cat: 0, |
2438 | only_pk: e.data.data.pageData | 2451 | only_pk: e.data.data.pageData |
@@ -2453,7 +2466,7 @@ Page({ | @@ -2453,7 +2466,7 @@ Page({ | ||
2453 | deal_pickup_dline(e) { | 2466 | deal_pickup_dline(e) { |
2454 | var pkno = [], | 2467 | var pkno = [], |
2455 | th = this; | 2468 | th = this; |
2456 | - if (!th.data.sele_g) return false; | 2469 | + if (!th.data.sele_g){ th.data.get_sto_ing=0; return false;} |
2457 | 2470 | ||
2458 | if (this.data.def_pick_store) { | 2471 | if (this.data.def_pick_store) { |
2459 | pkno.push(this.data.def_pick_store.pickup_no); | 2472 | pkno.push(this.data.def_pick_store.pickup_no); |
@@ -2539,6 +2552,7 @@ Page({ | @@ -2539,6 +2552,7 @@ Page({ | ||
2539 | } | 2552 | } |
2540 | 2553 | ||
2541 | } else { | 2554 | } else { |
2555 | + th.data.get_sto_ing=0; | ||
2542 | th.setData({ | 2556 | th.setData({ |
2543 | all_sto: null, | 2557 | all_sto: null, |
2544 | only_pk: null, | 2558 | only_pk: null, |
@@ -2613,6 +2627,7 @@ Page({ | @@ -2613,6 +2627,7 @@ Page({ | ||
2613 | th.deal_pickup(em); | 2627 | th.deal_pickup(em); |
2614 | 2628 | ||
2615 | } else { | 2629 | } else { |
2630 | + th.data.get_sto_ing=0; | ||
2616 | th.setData({ | 2631 | th.setData({ |
2617 | all_sto: null, | 2632 | all_sto: null, |
2618 | only_pk: null, | 2633 | only_pk: null, |
@@ -2621,6 +2636,7 @@ Page({ | @@ -2621,6 +2636,7 @@ Page({ | ||
2621 | } | 2636 | } |
2622 | 2637 | ||
2623 | } else { | 2638 | } else { |
2639 | + th.data.get_sto_ing=0; | ||
2624 | th.setData({ | 2640 | th.setData({ |
2625 | all_sto: null, | 2641 | all_sto: null, |
2626 | only_pk: null, | 2642 | only_pk: null, |
@@ -3998,12 +4014,12 @@ Page({ | @@ -3998,12 +4014,12 @@ Page({ | ||
3998 | }) | 4014 | }) |
3999 | //--先判断会员状态-- | 4015 | //--先判断会员状态-- |
4000 | var user_info = getApp().globalData.userInfo; | 4016 | var user_info = getApp().globalData.userInfo; |
4001 | - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { | ||
4002 | - wx.navigateTo({ | ||
4003 | - url: '/packageE/pages/togoin/togoin', | ||
4004 | - }) | ||
4005 | - return false; | ||
4006 | - } | 4017 | + // if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { |
4018 | + // wx.navigateTo({ | ||
4019 | + // url: '/packageE/pages/togoin/togoin', | ||
4020 | + // }) | ||
4021 | + // return false; | ||
4022 | + // } | ||
4007 | 4023 | ||
4008 | var th = this; | 4024 | var th = this; |
4009 | var ind = ee.currentTarget.dataset.ind; | 4025 | var ind = ee.currentTarget.dataset.ind; |
packageE/pages/cart/cart2/cart2.js
@@ -178,7 +178,15 @@ Page({ | @@ -178,7 +178,15 @@ Page({ | ||
178 | yhcx_act_map: {}, | 178 | yhcx_act_map: {}, |
179 | 179 | ||
180 | //优惠促销购买次数 | 180 | //优惠促销购买次数 |
181 | - yhcx_buy_map:{} | 181 | + yhcx_buy_map:{}, |
182 | + | ||
183 | + //-- 订单促销判断积累 ---2024-2-20 | ||
184 | + order_prom_map_ck: {}, | ||
185 | + //能不能使用订单促销 | ||
186 | + can_use_ord_prom:{}, | ||
187 | + //存储订单促销的取价,按照门店进行索引 | ||
188 | + show_ord_prom:{}, | ||
189 | + | ||
182 | }, | 190 | }, |
183 | 191 | ||
184 | 192 | ||
@@ -944,7 +952,8 @@ Page({ | @@ -944,7 +952,8 @@ Page({ | ||
944 | // } | 952 | // } |
945 | // }) | 953 | // }) |
946 | 954 | ||
947 | - th.data.cartlist_y =JSON.parse(JSON.stringify(carr)); //存储原始购物车列表 | 955 | + th.data.cartlist_y =JSON.parse(JSON.stringify(carr)); //存储原始购物车列表,这个数据还会收到污染 |
956 | + th.data.cartlist_old =JSON.parse(JSON.stringify(carr)); //存储原始购物车列表 | ||
948 | wx.showLoading(); | 957 | wx.showLoading(); |
949 | 958 | ||
950 | th.get_cart_next(carr); | 959 | th.get_cart_next(carr); |
@@ -1028,33 +1037,35 @@ Page({ | @@ -1028,33 +1037,35 @@ Page({ | ||
1028 | var no_zh_num={}; | 1037 | var no_zh_num={}; |
1029 | //-- 多促销活动调用接口需要的参数,和商品的购买数量和活动的购买数量的请求参数 -- | 1038 | //-- 多促销活动调用接口需要的参数,和商品的购买数量和活动的购买数量的请求参数 -- |
1030 | 1039 | ||
1031 | - if(!is_change){ | 1040 | + if(!is_change) { |
1041 | + //-- 多促销活动调用接口需要的参数,和商品的购买数量和活动的购买数量的请求参数 -- | ||
1032 | var dug_cx_arr = []; | 1042 | var dug_cx_arr = []; |
1033 | //获取 限购 和 多活动的促销---2024-2-1 | 1043 | //获取 限购 和 多活动的促销---2024-2-1 |
1034 | - for (var i = 0; i < carr.length; i++) { | 1044 | + for (var iv = 0; iv < carr.length; iv++) { |
1035 | 1045 | ||
1036 | - let item1 = carr[i]; | 1046 | + let item1 = carr[iv]; |
1037 | //如果不是活动的时候,不是代发商品的时候,不是赠品的时候,不是阶梯商品拆分的,不是组合购拆分的 | 1047 | //如果不是活动的时候,不是代发商品的时候,不是赠品的时候,不是阶梯商品拆分的,不是组合购拆分的 |
1038 | - if([1, 2, 4, 6, 8, 9].indexOf(item1.prom_type)== -1 && !item1.whsle_id | ||
1039 | - && !item1.is_gift && !item1.is_ld_split && !item1.is_zh_split ){ | 1048 | + if ([1, 2, 4, 6, 8, 9].indexOf(item1.prom_type) == -1 && !item1.whsle_id |
1049 | + && !item1.is_gift && !item1.is_ld_split && !item1.is_zh_split) { | ||
1040 | //-- 快速查找,组装查询多活动的列表 -- | 1050 | //-- 快速查找,组装查询多活动的列表 -- |
1041 | - let f_idx=dug_cx_arr.findIndex(function (ele) { | 1051 | + let f_idx = dug_cx_arr.findIndex(function (ele) { |
1042 | return ele.goods_id == item1.goods_id | 1052 | return ele.goods_id == item1.goods_id |
1043 | }); | 1053 | }); |
1044 | - if(f_idx==-1) { | ||
1045 | - let gd_ite={ | ||
1046 | - goods_id:carr[i].goods_id, | ||
1047 | - goods_num:1, | ||
1048 | - is_limit_show:1, | ||
1049 | - is_state:0 | 1054 | + if (f_idx == -1) { |
1055 | + let gd_ite = { | ||
1056 | + goods_id: carr[iv].goods_id, | ||
1057 | + goods_num: 1, | ||
1058 | + is_limit_show: 0, | ||
1059 | + is_state: 0 | ||
1050 | } | 1060 | } |
1051 | dug_cx_arr.push(gd_ite); | 1061 | dug_cx_arr.push(gd_ite); |
1052 | } | 1062 | } |
1053 | 1063 | ||
1054 | } | 1064 | } |
1055 | 1065 | ||
1056 | - if(is_change){ | ||
1057 | - carr[i].collocationList=null; | 1066 | + |
1067 | + if (is_change) { | ||
1068 | + carr[iv].collocationList = null; | ||
1058 | } | 1069 | } |
1059 | } | 1070 | } |
1060 | //-- 对商品的多促销进行判断 ---2024-2-1-- | 1071 | //-- 对商品的多促销进行判断 ---2024-2-1-- |
@@ -1062,11 +1073,45 @@ Page({ | @@ -1062,11 +1073,45 @@ Page({ | ||
1062 | await th.buy_pro_group(dug_cx_arr,carr); | 1073 | await th.buy_pro_group(dug_cx_arr,carr); |
1063 | } | 1074 | } |
1064 | } | 1075 | } |
1065 | - | ||
1066 | - | ||
1067 | //在分组的时候,就不要再调用接口,await | 1076 | //在分组的时候,就不要再调用接口,await |
1068 | for (var i = 0; i < carr.length; i++) { | 1077 | for (var i = 0; i < carr.length; i++) { |
1069 | var item = carr[i]; | 1078 | var item = carr[i]; |
1079 | + | ||
1080 | + //如果有户有点击参与订单促销的话,那么可以参与订单促销的商品的活动都要清理成0,订单促销在使用过程中的重要方法 | ||
1081 | + if (this.data.can_use_ord_prom[item.pick_id]) { | ||
1082 | + //从订单促销的order_prom_map_ck数据结构中获取到可以参与的商品列表 | ||
1083 | + let gdlist = this.data.order_prom_map_ck[item.pick_id] ? this.data.order_prom_map_ck[item.pick_id].goodsList : null; | ||
1084 | + if (gdlist && gdlist.length) { | ||
1085 | + //查找商品item1有没有在gdlist中,就要把商品的prom_type清理0 | ||
1086 | + let f_idx = gdlist.findIndex(function (ele) { | ||
1087 | + return ele.id == item.id | ||
1088 | + }); | ||
1089 | + if (f_idx != -1) { | ||
1090 | + //开始变换商品的价格显示 | ||
1091 | + switch (th.data.show_ord_prom[item.pick_id]) { | ||
1092 | + case 1: | ||
1093 | + carr[i].goods_price = item.shop_price; | ||
1094 | + break; | ||
1095 | + case 2: | ||
1096 | + carr[i].goods_price = item.goods_market_price; | ||
1097 | + break; | ||
1098 | + } | ||
1099 | + | ||
1100 | + if(!carr[i].prom_type) carr[i].prom_type=0; | ||
1101 | + switch (parseInt(carr[i].prom_type)){ | ||
1102 | + case 4: | ||
1103 | + carr[i].is_integral_normal = 1; | ||
1104 | + break; | ||
1105 | + default: | ||
1106 | + carr[i].is_pd_normal = 1; | ||
1107 | + break; | ||
1108 | + } | ||
1109 | + carr[i].prom_type = 0; | ||
1110 | + carr[i].discount_field = th.data.show_ord_prom[item.pick_id]; | ||
1111 | + } | ||
1112 | + } | ||
1113 | + } | ||
1114 | + | ||
1070 | //-- 如果是等级会员注册返回 -- | 1115 | //-- 如果是等级会员注册返回 -- |
1071 | if (is_card_back) { | 1116 | if (is_card_back) { |
1072 | th.data.card_name = th.data.userinfo.card_field; | 1117 | th.data.card_name = th.data.userinfo.card_field; |
@@ -1192,7 +1237,8 @@ Page({ | @@ -1192,7 +1237,8 @@ Page({ | ||
1192 | pickup_id:item.pick_id, | 1237 | pickup_id:item.pick_id, |
1193 | pickup_name:pikname, | 1238 | pickup_name:pikname, |
1194 | distr_type:item.pickup_distr_type, | 1239 | distr_type:item.pickup_distr_type, |
1195 | - keyid:item.keyid | 1240 | + keyid:item.keyid, |
1241 | + is_same_city:item.is_same_city, | ||
1196 | }; | 1242 | }; |
1197 | var e_t = 0, dis_t = 0;//物流方式,配送方式 | 1243 | var e_t = 0, dis_t = 0;//物流方式,配送方式 |
1198 | if (item.distr_type == 0) { | 1244 | if (item.distr_type == 0) { |
@@ -1290,11 +1336,8 @@ Page({ | @@ -1290,11 +1336,8 @@ Page({ | ||
1290 | if (ie.exp_type == 0 || ie.exp_type == 2) is_a_zt= 0; | 1336 | if (ie.exp_type == 0 || ie.exp_type == 2) is_a_zt= 0; |
1291 | } | 1337 | } |
1292 | th.setData({ is_all_zt: is_a_zt}); | 1338 | th.setData({ is_all_zt: is_a_zt}); |
1293 | - | ||
1294 | } | 1339 | } |
1295 | 1340 | ||
1296 | - | ||
1297 | - | ||
1298 | var cart_commission = 0; | 1341 | var cart_commission = 0; |
1299 | //-- 循环计算一下线下取价 -- | 1342 | //-- 循环计算一下线下取价 -- |
1300 | for (var k = 0; k < arr.length; k++) { | 1343 | for (var k = 0; k < arr.length; k++) { |
@@ -1344,6 +1387,24 @@ Page({ | @@ -1344,6 +1387,24 @@ Page({ | ||
1344 | //-- 如果初始活动在计算的时候,是不满足的时候,就要把活动清理掉 -- | 1387 | //-- 如果初始活动在计算的时候,是不满足的时候,就要把活动清理掉 -- |
1345 | var is_no_ok=arr[k].show_can_cx[key_o].cur_act.is_no_ok; | 1388 | var is_no_ok=arr[k].show_can_cx[key_o].cur_act.is_no_ok; |
1346 | if(is_no_ok==1){ | 1389 | if(is_no_ok==1){ |
1390 | + | ||
1391 | + let temp_id=arr[k].show_can_cx[key_o].cur_act.prom_id; | ||
1392 | + switch (parseInt(arr[k].show_can_cx[key_o].cur_act.prom_type+'')){ | ||
1393 | + case 3: | ||
1394 | + var yhcx_act_map=th.data.yhcx_act_map?th.data.yhcx_act_map[temp_id]:null; | ||
1395 | + if(yhcx_act_map && !yhcx_act_map.is_order_yh){ | ||
1396 | + item1.is_no_order_yh=1; | ||
1397 | + } | ||
1398 | + break; | ||
1399 | + case 7: | ||
1400 | + var zhhe_act=th.data.zhhe_act_map?th.data.zhhe_act_map[temp_id]:null; | ||
1401 | + if(zhhe_act && !zhhe_act.is_orderyh){ | ||
1402 | + item1.is_no_order_yh=1; | ||
1403 | + } | ||
1404 | + break; | ||
1405 | + } | ||
1406 | + | ||
1407 | + | ||
1347 | item1.prom_id = 0; | 1408 | item1.prom_id = 0; |
1348 | item1.prom_type = 0; | 1409 | item1.prom_type = 0; |
1349 | 1410 | ||
@@ -1352,6 +1413,16 @@ Page({ | @@ -1352,6 +1413,16 @@ Page({ | ||
1352 | item1.is_act_last=1; //这个是要在前端显示按钮切换的 | 1413 | item1.is_act_last=1; //这个是要在前端显示按钮切换的 |
1353 | } | 1414 | } |
1354 | 1415 | ||
1416 | + }else{ | ||
1417 | + | ||
1418 | + let obj=arr[k].show_can_cx[key_o]; | ||
1419 | + //不是优惠促销的不参与 不是订单促销参与(订单促销不是实收价的时候) | ||
1420 | + let ck1=obj.no_cj_prom && obj.cur_act.prom_type==3; | ||
1421 | + let ck2=th.data.can_use_ord_prom[arr[k].pickup_id]; | ||
1422 | + if( !ck1 && !ck2){ | ||
1423 | + item1.prom_id = arr[k].show_can_cx[key_o].cur_act.prom_id; | ||
1424 | + item1.prom_type = arr[k].show_can_cx[key_o].cur_act.prom_type; | ||
1425 | + } | ||
1355 | } | 1426 | } |
1356 | } | 1427 | } |
1357 | } | 1428 | } |
@@ -1463,8 +1534,6 @@ Page({ | @@ -1463,8 +1534,6 @@ Page({ | ||
1463 | 1534 | ||
1464 | 1535 | ||
1465 | } else { | 1536 | } else { |
1466 | - | ||
1467 | - | ||
1468 | item1.act = th.data.zhhe_act_map[item1.prom_id]; | 1537 | item1.act = th.data.zhhe_act_map[item1.prom_id]; |
1469 | } | 1538 | } |
1470 | } | 1539 | } |
@@ -1609,7 +1678,6 @@ Page({ | @@ -1609,7 +1678,6 @@ Page({ | ||
1609 | prom_type: item[c].prom_type, | 1678 | prom_type: item[c].prom_type, |
1610 | prom_id: item[c].prom_id, | 1679 | prom_id: item[c].prom_id, |
1611 | } | 1680 | } |
1612 | - //单个就不调用了 | ||
1613 | // let req_d1 = { | 1681 | // let req_d1 = { |
1614 | // user_id: getApp().globalData.user_id, goods_ids: [hr], store_id: os.stoid | 1682 | // user_id: getApp().globalData.user_id, goods_ids: [hr], store_id: os.stoid |
1615 | // } | 1683 | // } |
@@ -1701,6 +1769,7 @@ Page({ | @@ -1701,6 +1769,7 @@ Page({ | ||
1701 | ladder_calc.fir_set_arr(u_item1, th); | 1769 | ladder_calc.fir_set_arr(u_item1, th); |
1702 | } | 1770 | } |
1703 | 1771 | ||
1772 | + | ||
1704 | //-- 要判断总开关有没有同城配送 -- | 1773 | //-- 要判断总开关有没有同城配送 -- |
1705 | if(th.data.is_same_city) { | 1774 | if(th.data.is_same_city) { |
1706 | //----- 判断每一个商品的配送方式,和门店的配送方式 ------- | 1775 | //----- 判断每一个商品的配送方式,和门店的配送方式 ------- |
@@ -2094,6 +2163,8 @@ Page({ | @@ -2094,6 +2163,8 @@ Page({ | ||
2094 | success: async function (tt) { | 2163 | success: async function (tt) { |
2095 | if (tt.data.code == 0) { | 2164 | if (tt.data.code == 0) { |
2096 | //t.data.data.shop_price = tt.data.data.prom_price; | 2165 | //t.data.data.shop_price = tt.data.data.prom_price; |
2166 | + | ||
2167 | + gd.shop_price_y=gd.shop_price; | ||
2097 | gd.shop_price=t.data.data.shop_price = tt.data.data.prom_user_price; | 2168 | gd.shop_price=t.data.data.shop_price = tt.data.data.prom_user_price; |
2098 | th.data.ckeck_quan_price = 0; | 2169 | th.data.ckeck_quan_price = 0; |
2099 | 2170 | ||
@@ -2142,6 +2213,9 @@ Page({ | @@ -2142,6 +2213,9 @@ Page({ | ||
2142 | } | 2213 | } |
2143 | 2214 | ||
2144 | 2215 | ||
2216 | + //用深拷贝把商品缓存起来,方便后面使用 | ||
2217 | + th.data.old_bn_goods=ut.deep_cp(gd); | ||
2218 | + | ||
2145 | th.setData({ | 2219 | th.setData({ |
2146 | bn_goods: gd, | 2220 | bn_goods: gd, |
2147 | bn_pickname: gg.pick_name, | 2221 | bn_pickname: gg.pick_name, |
@@ -2170,6 +2244,7 @@ Page({ | @@ -2170,6 +2244,7 @@ Page({ | ||
2170 | ut.get_active_info(2,gd.prom_id,os.stoid,function(e){ | 2244 | ut.get_active_info(2,gd.prom_id,os.stoid,function(e){ |
2171 | 2245 | ||
2172 | //t.data.data.shop_price = tt.data.data.prom_price; | 2246 | //t.data.data.shop_price = tt.data.data.prom_price; |
2247 | + gd.shop_price_y=gd.shop_price; | ||
2173 | gd.shop_price=t.data.data.shop_price = tt.data.data.price; | 2248 | gd.shop_price=t.data.data.shop_price = tt.data.data.price; |
2174 | 2249 | ||
2175 | t.data.data.fir_rate = tt.data.data.fir_rate; | 2250 | t.data.data.fir_rate = tt.data.data.fir_rate; |
@@ -2209,6 +2284,10 @@ Page({ | @@ -2209,6 +2284,10 @@ Page({ | ||
2209 | gd.is_xz_yh = 1; | 2284 | gd.is_xz_yh = 1; |
2210 | } | 2285 | } |
2211 | 2286 | ||
2287 | + | ||
2288 | + //用深拷贝把商品缓存起来,方便后面使用 | ||
2289 | + th.data.old_bn_goods=ut.deep_cp(gd); | ||
2290 | + | ||
2212 | th.setData({ | 2291 | th.setData({ |
2213 | bn_goods: gd, | 2292 | bn_goods: gd, |
2214 | bn_pickname: gg.pick_name, | 2293 | bn_pickname: gg.pick_name, |
@@ -2980,6 +3059,9 @@ Page({ | @@ -2980,6 +3059,9 @@ Page({ | ||
2980 | } | 3059 | } |
2981 | } | 3060 | } |
2982 | 3061 | ||
3062 | + //重置订单促销判断累计 | ||
3063 | + this.re_set_order_prom_map_ck(); | ||
3064 | + | ||
2983 | for (var i in c_arr) { | 3065 | for (var i in c_arr) { |
2984 | var cart_item = c_arr[i]; | 3066 | var cart_item = c_arr[i]; |
2985 | cart_item.prom_pt_json=[]; | 3067 | cart_item.prom_pt_json=[]; |
@@ -2996,6 +3078,7 @@ Page({ | @@ -2996,6 +3078,7 @@ Page({ | ||
2996 | 3078 | ||
2997 | } | 3079 | } |
2998 | 3080 | ||
3081 | + | ||
2999 | //调用函数计算每件商品的单价 | 3082 | //调用函数计算每件商品的单价 |
3000 | await th.calc_per(c_arr); | 3083 | await th.calc_per(c_arr); |
3001 | 3084 | ||
@@ -3009,7 +3092,7 @@ Page({ | @@ -3009,7 +3092,7 @@ Page({ | ||
3009 | 3092 | ||
3010 | //-- 经纬度不循环调用接口 -- | 3093 | //-- 经纬度不循环调用接口 -- |
3011 | var lon = 0; var lat = 0; | 3094 | var lon = 0; var lat = 0; |
3012 | - //---循环购物车--- | 3095 | + //---循环购物车,按照门店订单进行循环--- |
3013 | for (var i in c_arr) { | 3096 | for (var i in c_arr) { |
3014 | //因为搭配购买也是再这里计算,搭配购的is_b_now==1 | 3097 | //因为搭配购买也是再这里计算,搭配购的is_b_now==1 |
3015 | if (th.data.is_b_now == 0) { | 3098 | if (th.data.is_b_now == 0) { |
@@ -3047,15 +3130,15 @@ Page({ | @@ -3047,15 +3130,15 @@ Page({ | ||
3047 | 3130 | ||
3048 | var no_order_yh = 0; //-- 有些活动不能和订单优惠叠加的金额 -- | 3131 | var no_order_yh = 0; //-- 有些活动不能和订单优惠叠加的金额 -- |
3049 | var no_post_temp = 0; //-- 有些活动不能和包邮模板的金额 -- | 3132 | var no_post_temp = 0; //-- 有些活动不能和包邮模板的金额 -- |
3133 | + var no_post_temp_shop_price = 0; //-- 有些活动不能和包邮模板的金额 --因为订单促销有手店价取价 | ||
3134 | + var no_post_temp_market_price = 0; //-- 有些活动不能和包邮模板的金额 --因为订单促销有市场价取价 | ||
3050 | 3135 | ||
3051 | if (th.data.using_quan[pickid] != null && th.data.using_quan[pickid] != undefined) | 3136 | if (th.data.using_quan[pickid] != null && th.data.using_quan[pickid] != undefined) |
3052 | quan_no = th.data.using_quan[pickid].coupon_no; | 3137 | quan_no = th.data.using_quan[pickid].coupon_no; |
3053 | 3138 | ||
3054 | //普通券的时候 | 3139 | //普通券的时候 |
3055 | if (quan_no && th.data.using_quan[pickid].isby != 1) { | 3140 | if (quan_no && th.data.using_quan[pickid].isby != 1) { |
3056 | - | ||
3057 | var IsUserWare=1; | 3141 | var IsUserWare=1; |
3058 | - | ||
3059 | //---获取优惠券优惠--- | 3142 | //---获取优惠券优惠--- |
3060 | await getApp().request.promiseGet("/api/weshop/couponList/getUseCouponPrice", { | 3143 | await getApp().request.promiseGet("/api/weshop/couponList/getUseCouponPrice", { |
3061 | data: { | 3144 | data: { |
@@ -3076,13 +3159,10 @@ Page({ | @@ -3076,13 +3159,10 @@ Page({ | ||
3076 | quan_price=0; | 3159 | quan_price=0; |
3077 | break; | 3160 | break; |
3078 | } | 3161 | } |
3079 | - | ||
3080 | } | 3162 | } |
3081 | - | ||
3082 | } | 3163 | } |
3083 | }) | 3164 | }) |
3084 | 3165 | ||
3085 | - | ||
3086 | if(!IsUserWare){ | 3166 | if(!IsUserWare){ |
3087 | 3167 | ||
3088 | wx.showToast({ | 3168 | wx.showToast({ |
@@ -3112,6 +3192,11 @@ Page({ | @@ -3112,6 +3192,11 @@ Page({ | ||
3112 | 3192 | ||
3113 | //--------循环计算总价----------- | 3193 | //--------循环计算总价----------- |
3114 | for (var jc = 0; jc < item.length; jc++) { | 3194 | for (var jc = 0; jc < item.length; jc++) { |
3195 | + //如果item的prom_type==0,没有如果活动的时候,如果是优惠促销和组合促销不满足的时候 | ||
3196 | + //或者是组合购和阶梯购多出来的商品 | ||
3197 | + if (item[jc].prom_type == 0 && !item[jc].whsle_id && !item[jc].is_no_order_yh) { | ||
3198 | + th.get_order_prom_map_ck(item[jc],pickid); | ||
3199 | + } | ||
3115 | 3200 | ||
3116 | if (item[jc].whsle_id > 0) { | 3201 | if (item[jc].whsle_id > 0) { |
3117 | whsle_goods_price += item[jc].goods_price * item[jc].goods_num; | 3202 | whsle_goods_price += item[jc].goods_price * item[jc].goods_num; |
@@ -3124,11 +3209,13 @@ Page({ | @@ -3124,11 +3209,13 @@ Page({ | ||
3124 | if (item[jc].prom_type == 7 && th.data.zhhe_act_map && th.data.zhhe_act_map[item[jc].prom_id] | 3209 | if (item[jc].prom_type == 7 && th.data.zhhe_act_map && th.data.zhhe_act_map[item[jc].prom_id] |
3125 | && th.data.zhhe_act_map[item[jc].prom_id].is_orderyh) { | 3210 | && th.data.zhhe_act_map[item[jc].prom_id].is_orderyh) { |
3126 | is_no_zh = 1; | 3211 | is_no_zh = 1; |
3212 | + th.get_order_prom_map_ck(item[jc],pickid); //有订单优惠叠加的时候,就要构建数据解救 | ||
3127 | } | 3213 | } |
3128 | //阶梯购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加,就要累积阶梯促销的金额 | 3214 | //阶梯购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加,就要累积阶梯促销的金额 |
3129 | if (item[jc].prom_type == 10 && ladder_prom_goods && ladder_prom_goods[item[jc].prom_id] | 3215 | if (item[jc].prom_type == 10 && ladder_prom_goods && ladder_prom_goods[item[jc].prom_id] |
3130 | && th.data.ladder_map[item[jc].prom_id].is_useorderyh) { | 3216 | && th.data.ladder_map[item[jc].prom_id].is_useorderyh) { |
3131 | is_no_zh = 1; | 3217 | is_no_zh = 1; |
3218 | + th.get_order_prom_map_ck(item[jc],pickid); //有订单优惠叠加的时候,就要构建数据解救 | ||
3132 | } | 3219 | } |
3133 | 3220 | ||
3134 | if (is_no_zh) { | 3221 | if (is_no_zh) { |
@@ -3144,20 +3231,28 @@ Page({ | @@ -3144,20 +3231,28 @@ Page({ | ||
3144 | var gd_price=item[jc].goods_price; | 3231 | var gd_price=item[jc].goods_price; |
3145 | if(item[jc].account_fir) gd_price=item[jc].account_fir; | 3232 | if(item[jc].account_fir) gd_price=item[jc].account_fir; |
3146 | 3233 | ||
3147 | - | ||
3148 | - //组合购和阶梯购是订单优惠是另外算的 | 3234 | + //组合购和阶梯购是订单优惠是另外算的,不参与订单促销的时候 |
3149 | if(!item[jc].is_order_yh && !item[jc].whsle_id && item[jc].prom_type!=7 && item[jc].prom_type!=10){ | 3235 | if(!item[jc].is_order_yh && !item[jc].whsle_id && item[jc].prom_type!=7 && item[jc].prom_type!=10){ |
3150 | no_order_yh+=gd_price * item[jc].goods_num; | 3236 | no_order_yh+=gd_price * item[jc].goods_num; |
3151 | if(item[jc].quan_num) no_order_yh-=item[jc].quan_num; //券要把他补回去 | 3237 | if(item[jc].quan_num) no_order_yh-=item[jc].quan_num; //券要把他补回去 |
3152 | - | ||
3153 | } | 3238 | } |
3239 | + //参与订单促销的时候 | ||
3240 | + if(item[jc].is_order_yh && !item[jc].whsle_id && item[jc].prom_type!=7 && item[jc].prom_type!=10){ | ||
3241 | + th.get_order_prom_map_ck(item[jc],pickid); //有订单优惠叠加的时候,就要构建数据解救 | ||
3242 | + } | ||
3243 | + | ||
3154 | if(!item[jc].is_post_temp){ | 3244 | if(!item[jc].is_post_temp){ |
3155 | no_post_temp+=gd_price * item[jc].goods_num; | 3245 | no_post_temp+=gd_price * item[jc].goods_num; |
3246 | + no_post_temp_shop_price+=item[jc].shop_price * item[jc].goods_num; | ||
3247 | + no_post_temp_market_price+=item[jc].goods_market_price * item[jc].goods_num; | ||
3156 | if(item[jc].quan_num) no_post_temp-=item[jc].quan_num; //券要把他补回去 | 3248 | if(item[jc].quan_num) no_post_temp-=item[jc].quan_num; //券要把他补回去 |
3157 | } | 3249 | } |
3158 | } | 3250 | } |
3251 | + | ||
3159 | } | 3252 | } |
3160 | 3253 | ||
3254 | + | ||
3255 | + | ||
3161 | //判断是不是有组合购的金额 | 3256 | //判断是不是有组合购的金额 |
3162 | var f_o_price = o_price; | 3257 | var f_o_price = o_price; |
3163 | //如果又优惠的钱,就要减价 | 3258 | //如果又优惠的钱,就要减价 |
@@ -3236,26 +3331,38 @@ Page({ | @@ -3236,26 +3331,38 @@ Page({ | ||
3236 | ord_prom_condition=o_price - quan_price - whsle_goods_price - no_order_yh; | 3331 | ord_prom_condition=o_price - quan_price - whsle_goods_price - no_order_yh; |
3237 | } | 3332 | } |
3238 | 3333 | ||
3239 | - //---判断是不是有订单优惠--- | ||
3240 | - await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { | ||
3241 | - data: { store_id: os.stoid, orderAmount: parseFloat(ord_prom_condition).toFixed(2), user_id: getApp().globalData.user_id } | ||
3242 | - }).then(res => { | ||
3243 | - if (res.data.code == 0) { | ||
3244 | - ord_prom = res.data.data; | 3334 | + //判断订单促销的实收价的累计 |
3335 | + if(!this.data.order_prom_map_ck[pickid]){ | ||
3336 | + this.data.order_prom_map_ck[pickid]={ | ||
3337 | + shop_price_all:0, //手店价的累计 | ||
3338 | + market_price_all:0, //市场价的累计 | ||
3339 | + goods_price_all:0, //实收价的累计 | ||
3340 | + no_ord_price:0, //要累计上不参与订单促销的金额 | ||
3341 | + goodsList:[], | ||
3245 | } | 3342 | } |
3246 | - }) | 3343 | + } |
3344 | + this.data.order_prom_map_ck[pickid].goods_price_all=ord_prom_condition; | ||
3345 | + //---判断是不是有订单优惠--- | ||
3346 | + // await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { | ||
3347 | + // data: { store_id: os.stoid, orderAmount: parseFloat(ord_prom_condition).toFixed(2), user_id: getApp().globalData.user_id } | ||
3348 | + // }).then(res => { | ||
3349 | + // if (res.data.code == 0) { | ||
3350 | + // ord_prom = res.data.data; | ||
3351 | + // } | ||
3352 | + // }) | ||
3353 | + //获取当前时间段的进行中的订单促销 | ||
3354 | + ord_prom=await th.get_cur_ord_prom(pickid); | ||
3247 | 3355 | ||
3248 | //如果有使用优惠券,如何订单促销有控制使用优惠券不参与此活动的话 | 3356 | //如果有使用优惠券,如何订单促销有控制使用优惠券不参与此活动的话 |
3249 | if(quan_price>0 && ord_prom && ord_prom.is_xz_yh ){ | 3357 | if(quan_price>0 && ord_prom && ord_prom.is_xz_yh ){ |
3250 | ord_prom=null; | 3358 | ord_prom=null; |
3251 | } | 3359 | } |
3252 | 3360 | ||
3253 | - | ||
3254 | //--如果是物流,且选择了地址,就要开始显示包邮券,且包邮券也已经优惠了优惠活动的金额-- | 3361 | //--如果是物流,且选择了地址,就要开始显示包邮券,且包邮券也已经优惠了优惠活动的金额-- |
3255 | if (cart_item.exp_type == 0 && th.data.user_addr != null && !cart_item.is_xz_yh) { | 3362 | if (cart_item.exp_type == 0 && th.data.user_addr != null && !cart_item.is_xz_yh) { |
3256 | 3363 | ||
3257 | - //看是不是有调用过包邮券 | ||
3258 | - if (!th.data.isget_by_quan[pickid]) { | 3364 | + //看是不是有调用过包邮券,同时有使用非实收的订单促销,就也不能显示包邮券 |
3365 | + if (!th.data.isget_by_quan[pickid] && !this.data.can_use_ord_prom[pickid]) { | ||
3259 | //--判断要不要显示包邮券,调用接口,因为有for循环--- | 3366 | //--判断要不要显示包邮券,调用接口,因为有for循环--- |
3260 | await getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", { | 3367 | await getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", { |
3261 | data: { | 3368 | data: { |
@@ -3297,13 +3404,24 @@ Page({ | @@ -3297,13 +3404,24 @@ Page({ | ||
3297 | }) | 3404 | }) |
3298 | } | 3405 | } |
3299 | 3406 | ||
3407 | + //要让包邮券消失,在使用非实收包邮券的时候 | ||
3408 | + if(th.data.can_use_ord_prom[pickid]){ | ||
3409 | + var tt_by='get_by_quan_list_cart['+pickid+']'; | ||
3410 | + th.setData({ [tt_by]: null }); | ||
3411 | + th.data.isget_by_quan[pickid] = 0; | ||
3412 | + } | ||
3413 | + | ||
3300 | 3414 | ||
3301 | //-- 如果没有订单优惠,或者订单优惠中有勾选包邮模板 -- | 3415 | //-- 如果没有订单优惠,或者订单优惠中有勾选包邮模板 -- |
3302 | if (!ord_prom || ord_prom.is_post_temp) { | 3416 | if (!ord_prom || ord_prom.is_post_temp) { |
3303 | - var user_addr = th.data.user_addr; | 3417 | + |
3418 | + let user_addr = th.data.user_addr; | ||
3419 | + let c_wuliu=parseFloat(o_price - quan_price - whsle_goods_price - no_post_temp).toFixed(2); | ||
3420 | + | ||
3421 | + | ||
3304 | var req_d = { | 3422 | var req_d = { |
3305 | province: user_addr.province, city: user_addr.city, district: user_addr.district, | 3423 | province: user_addr.province, city: user_addr.city, district: user_addr.district, |
3306 | - wuliu: parseFloat(o_price - quan_price - whsle_goods_price - no_post_temp).toFixed(2), store_id: os.stoid | 3424 | + wuliu: c_wuliu, store_id: os.stoid |
3307 | } | 3425 | } |
3308 | await getApp().request.promisePost("/api/weshop/order/areaFreight", { | 3426 | await getApp().request.promisePost("/api/weshop/order/areaFreight", { |
3309 | is_json: 1, data: req_d | 3427 | is_json: 1, data: req_d |
@@ -3313,7 +3431,6 @@ Page({ | @@ -3313,7 +3431,6 @@ Page({ | ||
3313 | } | 3431 | } |
3314 | } | 3432 | } |
3315 | 3433 | ||
3316 | - | ||
3317 | //如果是包邮券的时候,要看看券的情况 | 3434 | //如果是包邮券的时候,要看看券的情况 |
3318 | if (quan_no && th.data.using_quan[pickid].isby == 1) { | 3435 | if (quan_no && th.data.using_quan[pickid].isby == 1) { |
3319 | var quan = th.data.using_quan[pickid]; | 3436 | var quan = th.data.using_quan[pickid]; |
@@ -3504,24 +3621,25 @@ Page({ | @@ -3504,24 +3621,25 @@ Page({ | ||
3504 | } | 3621 | } |
3505 | 3622 | ||
3506 | var order_m = 0; | 3623 | var order_m = 0; |
3507 | - | ||
3508 | //么有使用券,或者活动没有限制使用优惠券 | 3624 | //么有使用券,或者活动没有限制使用优惠券 |
3509 | if (ord_prom && (quan_price <= 0 || !ord_prom.is_xz_yh)) { | 3625 | if (ord_prom && (quan_price <= 0 || !ord_prom.is_xz_yh)) { |
3510 | - order_prom_id = ord_prom['id']; | ||
3511 | - switch (ord_prom['type']) { | ||
3512 | - case 0: | ||
3513 | - order_m = Math.round(o_condition * ord_prom['expression']) / 100;//满额打折 | ||
3514 | - order_prom_amount = (o_condition - order_m).toFixed(2); | ||
3515 | - break; | ||
3516 | - case 1: | ||
3517 | - //order_m = o_condition - ord_prom['expression'];//满额优惠金额 | ||
3518 | - var bs = 1; | ||
3519 | - if (ord_prom.is_bz) { | ||
3520 | - bs = Math.floor(o_condition / ord_prom.money); | ||
3521 | - } | ||
3522 | - order_prom_amount = ord_prom['expression']; | ||
3523 | - break; | ||
3524 | - } | 3626 | + order_prom_id = ord_prom['id']; |
3627 | + //-- 订单促销是按照实收价格进行计算的时候 -- | ||
3628 | + switch (ord_prom['type']) { | ||
3629 | + case 0: | ||
3630 | + order_m = Math.round(o_condition * ord_prom['expression']) / 100;//满额打折 | ||
3631 | + order_prom_amount = (o_condition - order_m).toFixed(2); | ||
3632 | + break; | ||
3633 | + case 1: | ||
3634 | + //order_m = o_condition - ord_prom['expression'];//满额优惠金额 | ||
3635 | + var bs = 1; | ||
3636 | + if (ord_prom.is_bz) { | ||
3637 | + bs = Math.floor(o_condition / ord_prom.money); | ||
3638 | + } | ||
3639 | + order_prom_amount = ord_prom['expression']; | ||
3640 | + break; | ||
3641 | + } | ||
3642 | + | ||
3525 | } | 3643 | } |
3526 | 3644 | ||
3527 | cart_item.order_prom_amount = 0; | 3645 | cart_item.order_prom_amount = 0; |
@@ -3930,7 +4048,7 @@ Page({ | @@ -3930,7 +4048,7 @@ Page({ | ||
3930 | //---如果有选择优惠券的情况下--- | 4048 | //---如果有选择优惠券的情况下--- |
3931 | var quan_price = 0, bn_pick = th.data.bn_pick; | 4049 | var quan_price = 0, bn_pick = th.data.bn_pick; |
3932 | var quan_no = null; | 4050 | var quan_no = null; |
3933 | - if (th.data.using_quan[bn_pick] != null && th.data.using_quan[bn_pick] != undefined) | 4051 | + if (th.data.using_quan && th.data.using_quan[bn_pick] != null && th.data.using_quan[bn_pick] != undefined) |
3934 | quan_no = th.data.using_quan[bn_pick].coupon_no; | 4052 | quan_no = th.data.using_quan[bn_pick].coupon_no; |
3935 | 4053 | ||
3936 | if (quan_no) { | 4054 | if (quan_no) { |
@@ -3964,15 +4082,22 @@ Page({ | @@ -3964,15 +4082,22 @@ Page({ | ||
3964 | var ord_prom = null; | 4082 | var ord_prom = null; |
3965 | var is_ord_prom_post = 0; | 4083 | var is_ord_prom_post = 0; |
3966 | 4084 | ||
3967 | - if (condition > 0 && th.data.bn_is_order_yh && !th.data.bn_goods.whsle_id) { | ||
3968 | - await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { | ||
3969 | - data: { store_id: os.stoid, orderAmount: condition, user_id: getApp().globalData.user_id } | ||
3970 | - }).then(res => { | ||
3971 | - if (res.data.code == 0) { | ||
3972 | - var data = res.data.data; | ||
3973 | - ord_prom = data; | ||
3974 | - } | ||
3975 | - }) | 4085 | + //一件代发商品不参与订单优惠, 本身商品的活动也有要不要参与优惠促销的设置bn_is_order_yh |
4086 | + if (th.data.bn_is_order_yh && !th.data.bn_goods.whsle_id) { | ||
4087 | + | ||
4088 | + th.set_by_now_ord_prom(th.data.bn_goods); | ||
4089 | + th.data.order_prom_map_ck[bn_pick].goods_price_all=condition; | ||
4090 | + | ||
4091 | + // await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { | ||
4092 | + // data: { store_id: os.stoid, orderAmount: condition, user_id: getApp().globalData.user_id } | ||
4093 | + // }).then(res => { | ||
4094 | + // if (res.data.code == 0) { | ||
4095 | + // var data = res.data.data; | ||
4096 | + // ord_prom = data; | ||
4097 | + // } | ||
4098 | + // }) | ||
4099 | + ord_prom=await th.get_cur_ord_prom(bn_pick); | ||
4100 | + | ||
3976 | if (ord_prom && ord_prom.is_post_temp) { | 4101 | if (ord_prom && ord_prom.is_post_temp) { |
3977 | is_ord_prom_post = 1; | 4102 | is_ord_prom_post = 1; |
3978 | } | 4103 | } |
@@ -3985,8 +4110,8 @@ Page({ | @@ -3985,8 +4110,8 @@ Page({ | ||
3985 | 4110 | ||
3986 | //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮---------- | 4111 | //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮---------- |
3987 | if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_past != 1) { | 4112 | if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_past != 1) { |
3988 | - //看是不是有调用过包邮券 | ||
3989 | - if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1) { | 4113 | + //看是不是有调用过包邮券,同时非实收订单促销也不用使用包邮券 |
4114 | + if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1 && !th.data.can_use_ord_prom[th.data.bn_pick]) { | ||
3990 | 4115 | ||
3991 | //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱--- | 4116 | //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱--- |
3992 | getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", { | 4117 | getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", { |
@@ -4019,6 +4144,14 @@ Page({ | @@ -4019,6 +4144,14 @@ Page({ | ||
4019 | }) | 4144 | }) |
4020 | } | 4145 | } |
4021 | 4146 | ||
4147 | + | ||
4148 | + //要让包邮券消失,在使用非实收包邮券的时候 | ||
4149 | + if(th.data.can_use_ord_prom[th.data.bn_pick]){ | ||
4150 | + th.setData({ get_by_quan_list: null }); | ||
4151 | + th.data.isget_by_quan[th.data.bn_pick] = 0; | ||
4152 | + } | ||
4153 | + | ||
4154 | + | ||
4022 | var shipping_price = 0; | 4155 | var shipping_price = 0; |
4023 | var quan_no_goods_arr = null; | 4156 | var quan_no_goods_arr = null; |
4024 | var is_by_quan = 0; | 4157 | var is_by_quan = 0; |
@@ -4280,6 +4413,10 @@ Page({ | @@ -4280,6 +4413,10 @@ Page({ | ||
4280 | goods_sn: th.data.bn_goods.goods_sn, | 4413 | goods_sn: th.data.bn_goods.goods_sn, |
4281 | goods_price: th.data.bn_goods.shop_price || th.data.bn_goods.goods_price, | 4414 | goods_price: th.data.bn_goods.shop_price || th.data.bn_goods.goods_price, |
4282 | goods_num: th.data.bn_goods.buynum || th.data.bn_goods.goods_num, | 4415 | goods_num: th.data.bn_goods.buynum || th.data.bn_goods.goods_num, |
4416 | + | ||
4417 | + account_fir:th.data.bn_goods.shop_price || th.data.bn_goods.goods_price, | ||
4418 | + account_yu_fir:0 | ||
4419 | + | ||
4283 | }], | 4420 | }], |
4284 | sto: { | 4421 | sto: { |
4285 | keyid: th.data.bn_goods.keyid | 4422 | keyid: th.data.bn_goods.keyid |
@@ -4717,6 +4854,9 @@ Page({ | @@ -4717,6 +4854,9 @@ Page({ | ||
4717 | if (th.data.wu_arr == null || th.data.wu_arr.length <= 0) { | 4854 | if (th.data.wu_arr == null || th.data.wu_arr.length <= 0) { |
4718 | getApp().my_warnning("读取物流失败", 0, th); | 4855 | getApp().my_warnning("读取物流失败", 0, th); |
4719 | th.data.is_summit_ing = 0; | 4856 | th.data.is_summit_ing = 0; |
4857 | + th.setData({ | ||
4858 | + submit: 0 | ||
4859 | + }) | ||
4720 | return false; | 4860 | return false; |
4721 | } | 4861 | } |
4722 | 4862 | ||
@@ -4853,6 +4993,29 @@ Page({ | @@ -4853,6 +4993,29 @@ Page({ | ||
4853 | 'prom_id': th.data.bn_goods.prom_id, //促销活动id | 4993 | 'prom_id': th.data.bn_goods.prom_id, //促销活动id |
4854 | }; | 4994 | }; |
4855 | 4995 | ||
4996 | + //如果有参与非实收的订单促销,那么就相当于是普通购买 | ||
4997 | + if (th.data.can_use_ord_prom[th.data.bn_pick]) { | ||
4998 | + goods.is_pd_normal = 1; | ||
4999 | + goods.discount_field = th.data.show_ord_prom[th.data.bn_pick]; | ||
5000 | + | ||
5001 | + //如果是指定门店,就要判断 | ||
5002 | + if (th.data.bn_goods.pick_group_ids) { | ||
5003 | + var idx0 = th.data.bn_goods.pick_up_lists.findIndex(function (e) { | ||
5004 | + return e.pickup_id == th.data.bn_pick; | ||
5005 | + }) | ||
5006 | + if (idx0 < 0) { | ||
5007 | + getApp().my_warnning(th.data.bn_goods.goods_name + "的门店不可售", 0, th); | ||
5008 | + th.data.is_summit_ing = 0; | ||
5009 | + th.setData({ | ||
5010 | + submit: 0 | ||
5011 | + }) | ||
5012 | + return false; | ||
5013 | + } | ||
5014 | + } | ||
5015 | + } | ||
5016 | + | ||
5017 | + | ||
5018 | + | ||
4856 | if (th.data.bn_goods.whsle_id) { | 5019 | if (th.data.bn_goods.whsle_id) { |
4857 | item.is_whsle = 1; | 5020 | item.is_whsle = 1; |
4858 | item.whsle_id = th.data.bn_goods.whsle_id; | 5021 | item.whsle_id = th.data.bn_goods.whsle_id; |
@@ -4903,11 +5066,17 @@ Page({ | @@ -4903,11 +5066,17 @@ Page({ | ||
4903 | if(mo_num>goods.goods_num){ | 5066 | if(mo_num>goods.goods_num){ |
4904 | getApp().confirmBox(goods.goods_name + "的未达到起订数量"); | 5067 | getApp().confirmBox(goods.goods_name + "的未达到起订数量"); |
4905 | th.data.is_summit_ing = 0; | 5068 | th.data.is_summit_ing = 0; |
5069 | + th.setData({ | ||
5070 | + submit: 0 | ||
5071 | + }) | ||
4906 | return false; | 5072 | return false; |
4907 | } | 5073 | } |
4908 | if(steep>1 && (goods.goods_num-mo_num)%steep!=0 ){ | 5074 | if(steep>1 && (goods.goods_num-mo_num)%steep!=0 ){ |
4909 | getApp().confirmBox(goods.goods_name + "的购买的数量不是起订量的倍数"); | 5075 | getApp().confirmBox(goods.goods_name + "的购买的数量不是起订量的倍数"); |
4910 | th.data.is_summit_ing = 0; | 5076 | th.data.is_summit_ing = 0; |
5077 | + th.setData({ | ||
5078 | + submit: 0 | ||
5079 | + }) | ||
4911 | return false; | 5080 | return false; |
4912 | } | 5081 | } |
4913 | } | 5082 | } |
@@ -4916,16 +5085,21 @@ Page({ | @@ -4916,16 +5085,21 @@ Page({ | ||
4916 | if (goods.prom_type != 1 && goods.prom_type != 6 && goods.prom_type != 2 | 5085 | if (goods.prom_type != 1 && goods.prom_type != 6 && goods.prom_type != 2 |
4917 | && th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) { | 5086 | && th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) { |
4918 | var isok = 1; | 5087 | var isok = 1; |
5088 | + | ||
4919 | await th.check_store_num(goods.goods_id, th.data.bn_pick, gg.goods_num, function (res) { | 5089 | await th.check_store_num(goods.goods_id, th.data.bn_pick, gg.goods_num, function (res) { |
4920 | isok = res; | 5090 | isok = res; |
4921 | }); | 5091 | }); |
4922 | if (!isok) { | 5092 | if (!isok) { |
4923 | getApp().confirmBox("商品的门店库存不足"); | 5093 | getApp().confirmBox("商品的门店库存不足"); |
4924 | th.data.is_summit_ing = 0; | 5094 | th.data.is_summit_ing = 0; |
5095 | + th.setData({ | ||
5096 | + submit: 0 | ||
5097 | + }) | ||
4925 | return false; | 5098 | return false; |
4926 | } | 5099 | } |
4927 | } | 5100 | } |
4928 | 5101 | ||
5102 | + | ||
4929 | //-- 如果有线下取价的话 -- | 5103 | //-- 如果有线下取价的话 -- |
4930 | if (th.data.bn_goods.is_offline) { | 5104 | if (th.data.bn_goods.is_offline) { |
4931 | item.sum_offline_cut = (th.data.bn_goods.shop_price - th.data.bn_goods.offline_price).toFixed(2); | 5105 | item.sum_offline_cut = (th.data.bn_goods.shop_price - th.data.bn_goods.offline_price).toFixed(2); |
@@ -5040,6 +5214,9 @@ Page({ | @@ -5040,6 +5214,9 @@ Page({ | ||
5040 | if (th.data.wu_arr == null || th.data.wu_arr.length <= 0) { | 5214 | if (th.data.wu_arr == null || th.data.wu_arr.length <= 0) { |
5041 | th.data.is_summit_ing = 0; | 5215 | th.data.is_summit_ing = 0; |
5042 | getApp().confirmBox("读取物流失败"); | 5216 | getApp().confirmBox("读取物流失败"); |
5217 | + th.setData({ | ||
5218 | + submit: 0 | ||
5219 | + }) | ||
5043 | return false; | 5220 | return false; |
5044 | } | 5221 | } |
5045 | } | 5222 | } |
@@ -5246,6 +5423,26 @@ Page({ | @@ -5246,6 +5423,26 @@ Page({ | ||
5246 | 'store_id': oo.stoid, | 5423 | 'store_id': oo.stoid, |
5247 | }; | 5424 | }; |
5248 | 5425 | ||
5426 | + //订单促销取价规则使用 | ||
5427 | + if (g_item.discount_field) { | ||
5428 | + goods.discount_field =g_item.discount_field; | ||
5429 | + //此时要判断商品的门店是不是匹配 | ||
5430 | + if(g_item.prom_type==0 && g_item.pick_group_ids){ | ||
5431 | + var idx0 = g_item.pick_up_lists.findIndex(function (e) { | ||
5432 | + return e.pickup_id == item.pickup_id; | ||
5433 | + }) | ||
5434 | + if (idx0 < 0) { | ||
5435 | + getApp().my_warnning(g_item.goods_name + "的门店不可售", 0, th); | ||
5436 | + th.data.is_summit_ing = 0; | ||
5437 | + th.setData({ | ||
5438 | + submit: 0 | ||
5439 | + }) | ||
5440 | + return false; | ||
5441 | + } | ||
5442 | + } | ||
5443 | + | ||
5444 | + } | ||
5445 | + | ||
5249 | if (g_item.is_pd_normal) { | 5446 | if (g_item.is_pd_normal) { |
5250 | goods.is_pd_normal = 1; | 5447 | goods.is_pd_normal = 1; |
5251 | } | 5448 | } |
@@ -5841,7 +6038,7 @@ Page({ | @@ -5841,7 +6038,7 @@ Page({ | ||
5841 | }) | 6038 | }) |
5842 | 6039 | ||
5843 | var isok = 1; | 6040 | var isok = 1; |
5844 | - if (goods_num > plist.CanOutQty - lock) { | 6041 | + if (!plist || goods_num > plist.CanOutQty - lock) { |
5845 | isok = 0; | 6042 | isok = 0; |
5846 | } | 6043 | } |
5847 | func(isok); | 6044 | func(isok); |
@@ -6531,6 +6728,7 @@ Page({ | @@ -6531,6 +6728,7 @@ Page({ | ||
6531 | get_cart_quan: async function (order_prom_list_cart) { | 6728 | get_cart_quan: async function (order_prom_list_cart) { |
6532 | var th = this; | 6729 | var th = this; |
6533 | var user_id = getApp().globalData.user_id; | 6730 | var user_id = getApp().globalData.user_id; |
6731 | + | ||
6534 | //等待值的出现 | 6732 | //等待值的出现 |
6535 | //getApp().waitfor2(this,"g_cart_q_time","order_prom_list_cart",async function () { | 6733 | //getApp().waitfor2(this,"g_cart_q_time","order_prom_list_cart",async function () { |
6536 | //var arr=th.data.order_prom_list_cart; | 6734 | //var arr=th.data.order_prom_list_cart; |
@@ -6542,6 +6740,12 @@ Page({ | @@ -6542,6 +6740,12 @@ Page({ | ||
6542 | //------------开始计算使用优惠券相关------------ | 6740 | //------------开始计算使用优惠券相关------------ |
6543 | for (var ind in arr) { | 6741 | for (var ind in arr) { |
6544 | var ep = arr[ind]; | 6742 | var ep = arr[ind]; |
6743 | + | ||
6744 | + //如果门店订单使用订单促销(此订单促销取价规则不是实收价的时候) | ||
6745 | + if(th.data.can_use_ord_prom[ep.pickup_id]){ | ||
6746 | + continue; | ||
6747 | + } | ||
6748 | + | ||
6545 | var goodlist = ep.goods; | 6749 | var goodlist = ep.goods; |
6546 | var pickup_id = ep.pickup_id; | 6750 | var pickup_id = ep.pickup_id; |
6547 | //--更优惠券抵用有关,立即购买的,如果是购物车,如果有等级价还有考虑等级价的东西 | 6751 | //--更优惠券抵用有关,立即购买的,如果是购物车,如果有等级价还有考虑等级价的东西 |
@@ -8423,10 +8627,13 @@ Page({ | @@ -8423,10 +8627,13 @@ Page({ | ||
8423 | 8627 | ||
8424 | var cx_prom_group=this.data.cartlist[idx].show_can_cx[gd_key].act_arr; | 8628 | var cx_prom_group=this.data.cartlist[idx].show_can_cx[gd_key].act_arr; |
8425 | 8629 | ||
8630 | + //-- 切换活动的时候,让订单促销参与不选中 -- | ||
8631 | + let tt_wd="can_use_ord_prom["+pk+"]"; | ||
8426 | th.setData({ | 8632 | th.setData({ |
8427 | send_lb:{}, | 8633 | send_lb:{}, |
8428 | month_lb:{}, | 8634 | month_lb:{}, |
8429 | - send_gf:{} | 8635 | + send_gf:{}, |
8636 | + [tt_wd]:0 | ||
8430 | }) | 8637 | }) |
8431 | 8638 | ||
8432 | th.data.prom_goods_map={}; | 8639 | th.data.prom_goods_map={}; |
@@ -8635,6 +8842,9 @@ Page({ | @@ -8635,6 +8842,9 @@ Page({ | ||
8635 | 8842 | ||
8636 | //--- 不参与优惠促销的开关 --- | 8843 | //--- 不参与优惠促销的开关 --- |
8637 | no_cj_prom: function (e) { | 8844 | no_cj_prom: function (e) { |
8845 | + //避免重复点击 | ||
8846 | + if(this.data.submit) return false; | ||
8847 | + this.setData({ submit: 1,same_ok:1 }); | ||
8638 | 8848 | ||
8639 | //重新调用cart_next,进行下一步计算 | 8849 | //重新调用cart_next,进行下一步计算 |
8640 | wx.showLoading({ | 8850 | wx.showLoading({ |
@@ -8719,16 +8929,244 @@ Page({ | @@ -8719,16 +8929,244 @@ Page({ | ||
8719 | if(!goods[ig].is_gift){ | 8929 | if(!goods[ig].is_gift){ |
8720 | n_goods.push(goods[ig]); | 8930 | n_goods.push(goods[ig]); |
8721 | } | 8931 | } |
8722 | - } | 8932 | + } |
8933 | + | ||
8723 | //原始数据要有深拷贝不能有地址的牵连 | 8934 | //原始数据要有深拷贝不能有地址的牵连 |
8724 | th.data.cartlist_y = JSON.parse(JSON.stringify(n_goods)) | 8935 | th.data.cartlist_y = JSON.parse(JSON.stringify(n_goods)) |
8936 | + //重新调用cart_next,进行下一步计算 | ||
8937 | + wx.showLoading({ | ||
8938 | + title: "处理中.", | ||
8939 | + }) | ||
8940 | + this.get_cart_next(null, 1, {prom_type: 0, prom_id: 0}); | ||
8941 | + | ||
8942 | + }, | ||
8943 | + | ||
8944 | + //---订单促销累计的数据结构的构建,购物车计算流程的那一部分 | ||
8945 | + get_order_prom_map_ck(item,pickid) { | ||
8946 | + | ||
8947 | + //赠品不计算 | ||
8948 | + if(item.is_gift) return false; | ||
8949 | + | ||
8950 | + var order_prom_map_ck= this.data.order_prom_map_ck; | ||
8951 | + if(!order_prom_map_ck[pickid]){ | ||
8952 | + order_prom_map_ck[pickid]={ | ||
8953 | + shop_price_all:0, //手店价的累计 | ||
8954 | + market_price_all:0, //市场价的累计 | ||
8955 | + goods_price_all:0, //实收价的累计 | ||
8956 | + no_ord_price:0, //要累计上不参与订单促销的金额 | ||
8957 | + goodsList:[], | ||
8958 | + } | ||
8959 | + } | ||
8960 | + | ||
8961 | + let pk_ord_map=order_prom_map_ck[pickid]; | ||
8962 | + pk_ord_map.shop_price_all += item.shop_price * item.goods_num; | ||
8963 | + pk_ord_map.market_price_all += item.goods_market_price * item.goods_num; | ||
8964 | + | ||
8965 | + let ite = { | ||
8966 | + id: item.id, | ||
8967 | + goods_id: item.goods_id, | ||
8968 | + goods_num: item.goods_num, | ||
8969 | + prom_type: item.prom_type | ||
8970 | + } | ||
8971 | + pk_ord_map.goodsList.push(ite); | ||
8972 | + }, | ||
8973 | + | ||
8974 | + | ||
8975 | + //-- 秒杀和团购使用 -- | ||
8976 | + set_by_now_ord_prom(item){ | ||
8977 | + let pickid=this.data.bn_pick; | ||
8978 | + let order_prom_map_ck= this.data.order_prom_map_ck; | ||
8979 | + order_prom_map_ck[pickid]={ | ||
8980 | + shop_price_all:0, //手店价的累计 | ||
8981 | + market_price_all:0, //市场价的累计 | ||
8982 | + goods_price_all:0, //实收价的累计 | ||
8983 | + no_ord_price:0, //要累计上不参与订单促销的金额 | ||
8984 | + goodsList:[], | ||
8985 | + } | ||
8986 | + | ||
8987 | + let pk_ord_map=order_prom_map_ck[pickid]; | ||
8988 | + pk_ord_map.shop_price_all += item.shop_price_y * item.buynum; | ||
8989 | + pk_ord_map.market_price_all += item.market_price * item.buynum; | ||
8990 | + | ||
8991 | + }, | ||
8992 | + | ||
8993 | + //重置订单促销判断累计 | ||
8994 | + re_set_order_prom_map_ck() { | ||
8995 | + this.data.order_prom_map_ck = {} | ||
8996 | + }, | ||
8997 | + | ||
8998 | + //获取当前进行中订单促销,同时带入相应的金额判断订单促销是不是运行,同时订单促销的条件不是实收价判断的话,默认的时候,订单促销是不参与运算的 | ||
8999 | + async get_cur_ord_prom(pickid) { | ||
9000 | + let ord_prom = null; | ||
9001 | + let order_prom_map_ck = this.data.order_prom_map_ck[pickid]; | ||
9002 | + if(!order_prom_map_ck) return null; | ||
9003 | + | ||
9004 | + //获取当前进行中的优惠促销 | ||
9005 | + await getApp().request.promiseGet("/api/weshop/promorder/getPromOrder", { | ||
9006 | + data: { | ||
9007 | + store_id: os.stoid, | ||
9008 | + orderAmount: -1, //-1为不判断金额条件 | ||
9009 | + user_id: getApp().globalData.user_id | ||
9010 | + } | ||
9011 | + }).then(res => { | ||
9012 | + if (res.data.code == 0) { | ||
9013 | + ord_prom = res.data.data; | ||
9014 | + } | ||
9015 | + }) | ||
9016 | + | ||
9017 | + if (!ord_prom) return null; | ||
9018 | + //用于计算订单促销的金额 | ||
9019 | + let calculate_price=0; | ||
9020 | + | ||
9021 | + let txt1='show_ord_prom['+pickid+']'; | ||
9022 | + //-- 此时判断活动的金额满足与否 -- | ||
9023 | + switch (ord_prom.discount_field) { | ||
9024 | + //实收价的时候 | ||
9025 | + case 0: | ||
9026 | + //要先还原 | ||
9027 | + this.setData({ | ||
9028 | + [txt1]: 0 | ||
9029 | + }); | ||
9030 | + | ||
9031 | + if (ord_prom.money > order_prom_map_ck.goods_price_all){ | ||
9032 | + return null; | ||
9033 | + } | ||
9034 | + break; | ||
9035 | + //手店价的时候 | ||
9036 | + case 1: | ||
9037 | + if (ord_prom.money > order_prom_map_ck.shop_price_all){ | ||
9038 | + //要先还原 | ||
9039 | + this.setData({ | ||
9040 | + [txt1]: 0 | ||
9041 | + }); | ||
9042 | + return null; | ||
9043 | + } | ||
9044 | + //要显示订单促销使用的按钮 | ||
9045 | + this.setData({ | ||
9046 | + [txt1]: 1 | ||
9047 | + }); | ||
9048 | + break; | ||
9049 | + //市场价的时候 | ||
9050 | + case 2: | ||
9051 | + if (ord_prom.money > order_prom_map_ck.market_price_all){ | ||
9052 | + //要先还原 | ||
9053 | + this.setData({ | ||
9054 | + [txt1]: 0 | ||
9055 | + }); | ||
9056 | + return null; | ||
9057 | + } | ||
9058 | + //要显示订单促销使用的按钮 | ||
9059 | + this.setData({ | ||
9060 | + [txt1]: 2 | ||
9061 | + }); | ||
9062 | + break; | ||
9063 | + } | ||
9064 | + //如果订单促销是不参与订单促销的,那么就直接返回null(订单促销不是实收价的时候) | ||
9065 | + if(ord_prom.discount_field>0 && !this.data.can_use_ord_prom[pickid]){ | ||
9066 | + return null; | ||
9067 | + } | ||
9068 | + return ord_prom; | ||
9069 | + }, | ||
9070 | + | ||
9071 | + //设置能够参与订单促销 | ||
9072 | + set_can_use_ord_prom: function (e) { | ||
8725 | 9073 | ||
9074 | + if(this.data.submit) return false; | ||
9075 | + this.setData({ submit: 1,same_ok:1 }); | ||
9076 | + | ||
9077 | + let pickid = e.currentTarget.dataset.pd; | ||
9078 | + let txt = 'can_use_ord_prom[' + pickid + ']'; | ||
9079 | + let can_use = this.data.can_use_ord_prom[pickid] ? this.data.can_use_ord_prom[pickid] : 0; | ||
9080 | + this.setData({ | ||
9081 | + [txt]: !can_use | ||
9082 | + }) | ||
9083 | + | ||
9084 | + //购物车进行还原,一下数据的清理的必须的 | ||
9085 | + this.setData({ | ||
9086 | + send_lb: {}, | ||
9087 | + month_lb: {}, | ||
9088 | + send_gf: {} | ||
9089 | + }) | ||
9090 | + //清空优惠促销的内容 | ||
9091 | + this.data.prom_goods_map = {}; | ||
8726 | 9092 | ||
9093 | + //处理一下商品 | ||
9094 | + let goods0 = JSON.parse(JSON.stringify(this.data.cartlist_y)); | ||
9095 | + let goods = []; | ||
9096 | + for (var ik = 0; ik < goods0.length; ik++) { | ||
9097 | + var item_c = goods0[ik]; | ||
9098 | + if(item_c.pick_id == pickid && item_c.is_collocation) continue; | ||
9099 | + if(item_c.is_gift) continue | ||
9100 | + goods.push(item_c); | ||
9101 | + } | ||
8727 | 9102 | ||
9103 | + //原始数据要有深拷贝不能有地址的牵连 | ||
9104 | + this.data.cartlist_y = JSON.parse(JSON.stringify(goods)) | ||
9105 | + //重新调用cart_next,进行下一步计算 | ||
9106 | + wx.showLoading({ | ||
9107 | + title: "处理中.", | ||
9108 | + mark:true | ||
9109 | + }) | ||
9110 | + //-- 重新计算一下价格 -- | ||
8728 | this.get_cart_next(null, 1, {prom_type: 0, prom_id: 0}); | 9111 | this.get_cart_next(null, 1, {prom_type: 0, prom_id: 0}); |
9112 | + }, | ||
8729 | 9113 | ||
9114 | + //立即购买的时候,点击订单促销的参与 | ||
9115 | + set_can_use_ord_prom_now:function (e){ | ||
8730 | 9116 | ||
9117 | + if(this.data.submit) return false; | ||
9118 | + this.setData({ submit: 1,same_ok:1 }); | ||
9119 | + | ||
9120 | + let pickid=this.data.bn_pick; | ||
9121 | + let txt = 'can_use_ord_prom[' + pickid + ']'; | ||
9122 | + let can_use = this.data.can_use_ord_prom[pickid] ? this.data.can_use_ord_prom[pickid] : 0; | ||
9123 | + this.setData({ | ||
9124 | + [txt]: !can_use | ||
9125 | + }) | ||
9126 | + | ||
9127 | + let th=this; | ||
9128 | + let good=th.data.bn_goods; | ||
9129 | + | ||
9130 | + //如果有要参与订单促销的按钮点击后,要修改商品的价格 | ||
9131 | + if(th.data.can_use_ord_prom[pickid]){ | ||
9132 | + let discount_field=th.data.show_ord_prom[pickid]; | ||
9133 | + switch (discount_field){ | ||
9134 | + case 1: | ||
9135 | + good.shop_price=good.shop_price_y; | ||
9136 | + break; | ||
9137 | + case 2: | ||
9138 | + good.shop_price=good.market_price; | ||
9139 | + break; | ||
9140 | + } | ||
9141 | + | ||
9142 | + //-- 转成普通商品 --- | ||
9143 | + good.prom_type=0; | ||
9144 | + good.prom_id=0; | ||
9145 | + | ||
9146 | + th.setData({ | ||
9147 | + selected_quan_list: null, | ||
9148 | + using_quan:{} | ||
9149 | + }) | ||
9150 | + | ||
9151 | + }else{ | ||
9152 | + good=ut.deep_cp(th.data.old_bn_goods); | ||
9153 | + } | ||
9154 | + | ||
9155 | + th.setData({ | ||
9156 | + bn_goods:good | ||
9157 | + }) | ||
9158 | + wx.showLoading({ | ||
9159 | + title: "处理中.", | ||
9160 | + mark:true | ||
9161 | + }) | ||
9162 | + th.calculatePrice2() | ||
9163 | + | ||
9164 | + if(!th.data.can_use_ord_prom[pickid]){ | ||
9165 | + th.get_buy_now_quan(); | ||
9166 | + } | ||
8731 | } | 9167 | } |
8732 | 9168 | ||
8733 | 9169 | ||
9170 | + | ||
9171 | + | ||
8734 | }); | 9172 | }); |
packageE/pages/cart/cart2/cart2.wxml
@@ -104,9 +104,9 @@ | @@ -104,9 +104,9 @@ | ||
104 | <block><text>{{filters.show_gui_ge(items.goods_spec,items.goods_color)}}</text></block> | 104 | <block><text>{{filters.show_gui_ge(items.goods_spec,items.goods_color)}}</text></block> |
105 | </view> | 105 | </view> |
106 | </view> | 106 | </view> |
107 | - | ||
108 | <!-----商品名称规格------> | 107 | <!-----商品名称规格------> |
109 | <view class="order-num flex-space-between"> | 108 | <view class="order-num flex-space-between"> |
109 | + <!-- 动态显示商品的价格 --> | ||
110 | <view wx:if="{{items.prom_type==10}}" class="co-red">¥<text class="fs36">{{filters.toFix(items.goods_price,2)}}</text><text>({{items.discount}}折)</text></view> | 110 | <view wx:if="{{items.prom_type==10}}" class="co-red">¥<text class="fs36">{{filters.toFix(items.goods_price,2)}}</text><text>({{items.discount}}折)</text></view> |
111 | <view wx:else class="co-red">¥<text class="fs36">{{filters.toFix(items.goods_price,2)}}</text></view> | 111 | <view wx:else class="co-red">¥<text class="fs36">{{filters.toFix(items.goods_price,2)}}</text></view> |
112 | <view style="color: red;" wx:if="{{items.use_commission && items.use_commission*1>0}}">佣金:{{filters.toFix(items.use_commission/items.goods_num,2)}}*{{items.goods_num}}</view> | 112 | <view style="color: red;" wx:if="{{items.use_commission && items.use_commission*1>0}}">佣金:{{filters.toFix(items.use_commission/items.goods_num,2)}}*{{items.goods_num}}</view> |
@@ -171,8 +171,10 @@ | @@ -171,8 +171,10 @@ | ||
171 | </block> | 171 | </block> |
172 | </block> | 172 | </block> |
173 | 173 | ||
174 | - <block wx:if="{{!items.is_gift}}"> | ||
175 | - <view class="set-mes" wx:if="{{items.prom_type==3 || (items.prom_type==0 && item.show_can_cx[items.goods_id].no_cj_prom && item.show_can_cx[items.goods_id].sele_prom_type==3) }}"> | 174 | + <!-- 如果不是点击使用订单促销的话 --> |
175 | + <block wx:if="{{!can_use_ord_prom[item.pickup_id] && !items.is_gift}}"> | ||
176 | + <view class="set-mes" wx:if="{{items.prom_type==3 || (items.prom_type==0 && item.show_can_cx[items.goods_id].no_cj_prom && item.show_can_cx[items.goods_id].sele_prom_type==3) }}"> | ||
177 | + | ||
176 | <view class="use-item" data-pidx="{{pidx}}" data-can_cx_idx="{{items.goods_id}}" bindtap='no_cj_prom'> | 178 | <view class="use-item" data-pidx="{{pidx}}" data-can_cx_idx="{{items.goods_id}}" bindtap='no_cj_prom'> |
177 | <icon color="{{!item.show_can_cx[items.goods_id].no_cj_prom?'red':'gray'}}" size="16" type="success"></icon> | 179 | <icon color="{{!item.show_can_cx[items.goods_id].no_cj_prom?'red':'gray'}}" size="16" type="success"></icon> |
178 | <view class="yu_er">参与优惠活动</view> | 180 | <view class="yu_er">参与优惠活动</view> |
@@ -180,6 +182,7 @@ | @@ -180,6 +182,7 @@ | ||
180 | </view> | 182 | </view> |
181 | </block> | 183 | </block> |
182 | 184 | ||
185 | + | ||
183 | </block> | 186 | </block> |
184 | 187 | ||
185 | <!--此时是多个商品参与活动的切换 验证活动是不是多个,要不要显示切换,同时要最后一个商品显示 --> | 188 | <!--此时是多个商品参与活动的切换 验证活动是不是多个,要不要显示切换,同时要最后一个商品显示 --> |
@@ -234,12 +237,15 @@ | @@ -234,12 +237,15 @@ | ||
234 | </block> | 237 | </block> |
235 | 238 | ||
236 | 239 | ||
237 | - <view class="set-mes" wx:if="{{pitem.is_duo_gd && pitem.sele_prom_type==3 && util.check_is_last(index,items.goods_id) && !items.is_gift }}"> | ||
238 | - <view class="use-item" data-pidx="{{pidx}}" data-can_cx_idx="{{index}}" bindtap='no_cj_prom'> | ||
239 | - <icon color="{{!pitem.no_cj_prom?'red':'gray'}}" size="16" type="success"></icon> | ||
240 | - <view class="yu_er">参与优惠活动</view> | 240 | + |
241 | + <block wx:if="{{!can_use_ord_prom[item.pickup_id]}}"> | ||
242 | + <view class="set-mes" wx:if="{{pitem.is_duo_gd && pitem.sele_prom_type==3 && util.check_is_last(index,items.goods_id) && !items.is_gift }}"> | ||
243 | + <view class="use-item" data-pidx="{{pidx}}" data-can_cx_idx="{{index}}" bindtap='no_cj_prom'> | ||
244 | + <icon color="{{!pitem.no_cj_prom?'red':'gray'}}" size="16" type="success"></icon> | ||
245 | + <view class="yu_er">参与优惠活动</view> | ||
246 | + </view> | ||
241 | </view> | 247 | </view> |
242 | - </view> | 248 | + </block> |
243 | 249 | ||
244 | </block> | 250 | </block> |
245 | </block> | 251 | </block> |
@@ -348,6 +354,14 @@ | @@ -348,6 +354,14 @@ | ||
348 | </block> | 354 | </block> |
349 | </view> | 355 | </view> |
350 | 356 | ||
357 | + <!-- 订单促销取价规则的优化 --> | ||
358 | + <view class="set-mes" wx:if="{{show_ord_prom[item.pickup_id]}}"> | ||
359 | + <view class="use-item" > | ||
360 | + <icon data-pd="{{item.pickup_id}}" bindtap='set_can_use_ord_prom' color="{{can_use_ord_prom[item.pickup_id]?'red':'gray'}}" size="16" type="success"></icon> | ||
361 | + <view data-pd="{{item.pickup_id}}" bindtap='set_can_use_ord_prom' class="yu_er">参与订单促销</view> | ||
362 | + </view> | ||
363 | + </view> | ||
364 | + | ||
351 | <!-----使用优惠券------> | 365 | <!-----使用优惠券------> |
352 | <view class="xc-coupon-frame flex-center" data-bn="0" bindtap="open_coupon_list" wx:if="{{!(yh_is_xz_yh[item.pickup_id]) && ((item.quan_list && item.quan_list.length>0 ) || get_by_quan_list_cart[item.pickup_id]!=null && item.can_num>0)}}" data-cind="{{pidx}}" data-pickid="{{item.pickup_id}}"> | 366 | <view class="xc-coupon-frame flex-center" data-bn="0" bindtap="open_coupon_list" wx:if="{{!(yh_is_xz_yh[item.pickup_id]) && ((item.quan_list && item.quan_list.length>0 ) || get_by_quan_list_cart[item.pickup_id]!=null && item.can_num>0)}}" data-cind="{{pidx}}" data-pickid="{{item.pickup_id}}"> |
353 | <view class="work-frame flex-space-between"> | 367 | <view class="work-frame flex-space-between"> |
@@ -679,6 +693,14 @@ | @@ -679,6 +693,14 @@ | ||
679 | <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}} | 693 | <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}} |
680 | </view> | 694 | </view> |
681 | 695 | ||
696 | + <!-- 订单促销取价规则的优化 --> | ||
697 | + <view class="set-mes" wx:if="{{show_ord_prom[bn_pick]}}"> | ||
698 | + <view class="use-item" > | ||
699 | + <icon bindtap='set_can_use_ord_prom_now' color="{{can_use_ord_prom[bn_pick]?'red':'gray'}}" size="16" type="success"></icon> | ||
700 | + <view bindtap='set_can_use_ord_prom_now' class="yu_er">参与订单促销</view> | ||
701 | + </view> | ||
702 | + </view> | ||
703 | + | ||
682 | <view class="xc-coupon-frame flex-center" data-bn="1" bindtap="open_coupon_list" data-pickid="{{bn_pick}}" hidden="{{(selected_quan_list?selected_quan_list.length:0)+ (get_by_quan_list && bn_exp_type==0?get_by_quan_list.length:0)<=0}}" wx:if="{{is_coupon > 0 && ((selected_quan_list && selected_quan_list.length>0) || get_by_quan_list!=null)}}"> | 704 | <view class="xc-coupon-frame flex-center" data-bn="1" bindtap="open_coupon_list" data-pickid="{{bn_pick}}" hidden="{{(selected_quan_list?selected_quan_list.length:0)+ (get_by_quan_list && bn_exp_type==0?get_by_quan_list.length:0)<=0}}" wx:if="{{is_coupon > 0 && ((selected_quan_list && selected_quan_list.length>0) || get_by_quan_list!=null)}}"> |
683 | <view class="work-frame flex-space-between"> | 705 | <view class="work-frame flex-space-between"> |
684 | <view class="work"> | 706 | <view class="work"> |
@@ -1096,7 +1118,7 @@ | @@ -1096,7 +1118,7 @@ | ||
1096 | </view> | 1118 | </view> |
1097 | <view class="count"> | 1119 | <view class="count"> |
1098 | <view bindtap="{{items.goods_num <= 1 ? '':'subNum'}}" class="sub fs28 {{items.goods_num <= 1 ? 'active':''}}" data-pitems="{{pidx}}" data-item="{{idx}}">一</view> | 1120 | <view bindtap="{{items.goods_num <= 1 ? '':'subNum'}}" class="sub fs28 {{items.goods_num <= 1 ? 'active':''}}" data-pitems="{{pidx}}" data-item="{{idx}}">一</view> |
1099 | - <input class="goodadd" bindblur="valueToNum" data-item="{{idx}}" bindinput="refresh_input" data-item="{{idx}}" type="number" value="{{items.goods_num}}"></input> | 1121 | + <input class="goodadd" bindblur="valueToNum" data-item="{{idx}}" bindinput="refresh_input" type="number" value="{{items.goods_num}}"></input> |
1100 | <view class="add" bindtap="addNum" data-item="{{idx}}">+</view> | 1122 | <view class="add" bindtap="addNum" data-item="{{idx}}">+</view> |
1101 | </view> | 1123 | </view> |
1102 | </view> | 1124 | </view> |
packageE/pages/cart/cart2/filter.wxs
@@ -49,14 +49,11 @@ function check_is_last(index,goods_id){ | @@ -49,14 +49,11 @@ function check_is_last(index,goods_id){ | ||
49 | return true; | 49 | return true; |
50 | } | 50 | } |
51 | return false; | 51 | return false; |
52 | - | ||
53 | } | 52 | } |
54 | 53 | ||
55 | - | ||
56 | - | ||
57 | module.exports = { | 54 | module.exports = { |
58 | format: format, | 55 | format: format, |
59 | is_more_act:is_more_act, | 56 | is_more_act:is_more_act, |
60 | check_show:check_show, | 57 | check_show:check_show, |
61 | - check_is_last:check_is_last | 58 | + check_is_last:check_is_last, |
62 | } | 59 | } |
packageE/pages/cart/cart2/ladder_calculate.js
@@ -115,6 +115,11 @@ module.exports = { | @@ -115,6 +115,11 @@ module.exports = { | ||
115 | }) | 115 | }) |
116 | //goods[idx].goods_num -= num; | 116 | //goods[idx].goods_num -= num; |
117 | let new_g = JSON.parse(JSON.stringify(goods[idx])); | 117 | let new_g = JSON.parse(JSON.stringify(goods[idx])); |
118 | + | ||
119 | + //多余的商品如果活动不参与订单促销,那么变成普通商品的也不能参与订单促销,2024-2-26 | ||
120 | + if(!ladder_map.is_useorderyh){ | ||
121 | + new_g.is_no_order_yh=1; | ||
122 | + } | ||
118 | new_g.goods_num = num; | 123 | new_g.goods_num = num; |
119 | new_g.prom_type = 0; | 124 | new_g.prom_type = 0; |
120 | new_g.prom_id = 0; | 125 | new_g.prom_id = 0; |
packageE/pages/cart/cart2/zh_calculate.js
@@ -270,6 +270,11 @@ module.exports = { | @@ -270,6 +270,11 @@ module.exports = { | ||
270 | let new_g = JSON.parse(JSON.stringify(goods[idx])); | 270 | let new_g = JSON.parse(JSON.stringify(goods[idx])); |
271 | 271 | ||
272 | if(new_g.more_cx) delete new_g.more_cx; | 272 | if(new_g.more_cx) delete new_g.more_cx; |
273 | + | ||
274 | + //多余的商品如果活动不参与订单促销,那么变成普通商品的也不能参与订单促销,2024-2-26 | ||
275 | + if(!act.is_orderyh){ | ||
276 | + new_g.is_no_order_yh=1; | ||
277 | + } | ||
273 | new_g.goods_num = num; | 278 | new_g.goods_num = num; |
274 | new_g.prom_type = 0; | 279 | new_g.prom_type = 0; |
275 | new_g.prom_id = 0; | 280 | new_g.prom_id = 0; |
@@ -331,6 +336,11 @@ module.exports = { | @@ -331,6 +336,11 @@ module.exports = { | ||
331 | offline_price += item.goods_price - item.offline_price; | 336 | offline_price += item.goods_price - item.offline_price; |
332 | offline_num += 1; | 337 | offline_num += 1; |
333 | } | 338 | } |
339 | + | ||
340 | + //多余的商品如果活动不参与订单促销,那么变成普通商品的也不能参与订单促销,2024-2-26 | ||
341 | + if(!act.is_orderyh){ | ||
342 | + item.is_no_order_yh=1; | ||
343 | + } | ||
334 | item.prom_type = 0; | 344 | item.prom_type = 0; |
335 | item.prom_id = 0; | 345 | item.prom_id = 0; |
336 | } | 346 | } |
packageE/pages/cart/cart2_inte/cart2_inte.js
@@ -85,7 +85,14 @@ Page({ | @@ -85,7 +85,14 @@ Page({ | ||
85 | same_ok:1, //同城配送的控制,默认ok | 85 | same_ok:1, //同城配送的控制,默认ok |
86 | bconfig: null, | 86 | bconfig: null, |
87 | showFold:true, | 87 | showFold:true, |
88 | - template_id:[] | 88 | + template_id:[], |
89 | + | ||
90 | + //-- 订单促销判断积累 ---2024-2-20 | ||
91 | + order_prom_map_ck: {}, | ||
92 | + //能不能使用订单促销 | ||
93 | + can_use_ord_prom:{}, | ||
94 | + //存储订单促销的取价,按照门店进行索引 | ||
95 | + show_ord_prom:{}, | ||
89 | }, | 96 | }, |
90 | 97 | ||
91 | 98 | ||
@@ -632,6 +639,8 @@ Page({ | @@ -632,6 +639,8 @@ Page({ | ||
632 | success: async function (tt) { | 639 | success: async function (tt) { |
633 | if (tt.data.code == 0 && tt.data.data && tt.data.data.pageData) { | 640 | if (tt.data.code == 0 && tt.data.data && tt.data.data.pageData) { |
634 | var inte_data = tt.data.data.pageData[0]; | 641 | var inte_data = tt.data.data.pageData[0]; |
642 | + | ||
643 | + gd.shop_price_y=gd.shop_price; | ||
635 | t.data.data.shop_price = inte_data.addmoney; | 644 | t.data.data.shop_price = inte_data.addmoney; |
636 | t.data.data.integral = inte_data.integral; | 645 | t.data.data.integral = inte_data.integral; |
637 | 646 | ||
@@ -658,6 +667,9 @@ Page({ | @@ -658,6 +667,9 @@ Page({ | ||
658 | 667 | ||
659 | 668 | ||
660 | 669 | ||
670 | + //用深拷贝把商品缓存起来,方便后面使用 | ||
671 | + th.data.old_bn_goods=ut.deep_cp(t.data.data); | ||
672 | + | ||
661 | th.setData({ | 673 | th.setData({ |
662 | bn_goods: t.data.data, bn_pickname: gg.pick_name, bn_exp_type: et, index: m_wind, | 674 | bn_goods: t.data.data, bn_pickname: gg.pick_name, bn_exp_type: et, index: m_wind, |
663 | bn_pick: gg.pick_id, bn_t_exp_t: distr_t, bn_exp_type: et,inv_is_post:inte_data.is_post | 675 | bn_pick: gg.pick_id, bn_t_exp_t: distr_t, bn_exp_type: et,inv_is_post:inte_data.is_post |
@@ -742,16 +754,23 @@ Page({ | @@ -742,16 +754,23 @@ Page({ | ||
742 | var condition = parseFloat(allpice-cut_price).toFixed(2); | 754 | var condition = parseFloat(allpice-cut_price).toFixed(2); |
743 | var ord_prom = null; | 755 | var ord_prom = null; |
744 | var is_ord_prom_post = 0; | 756 | var is_ord_prom_post = 0; |
757 | + //---如果有选择优惠券的情况下--- | ||
758 | + var quan_price = 0, bn_pick = th.data.bn_pick; | ||
759 | + | ||
760 | + if (th.data.bn_is_order_yh && !th.data.bn_goods.whsle_id) { | ||
761 | + // await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { | ||
762 | + // data: { store_id: os.stoid, orderAmount: condition, user_id: getApp().globalData.user_id } | ||
763 | + // }).then(res => { | ||
764 | + // if (res.data.code == 0) { | ||
765 | + // var data = res.data.data; | ||
766 | + // ord_prom = data; | ||
767 | + // } | ||
768 | + // }) | ||
769 | + | ||
770 | + th.set_by_now_ord_prom(th.data.bn_goods); | ||
771 | + th.data.order_prom_map_ck[bn_pick].goods_price_all=condition; | ||
772 | + ord_prom=await th.get_cur_ord_prom(bn_pick); | ||
745 | 773 | ||
746 | - if (condition > 0 && th.data.bn_is_order_yh && !th.data.bn_goods.whsle_id) { | ||
747 | - await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { | ||
748 | - data: { store_id: os.stoid, orderAmount: condition, user_id: getApp().globalData.user_id } | ||
749 | - }).then(res => { | ||
750 | - if (res.data.code == 0) { | ||
751 | - var data = res.data.data; | ||
752 | - ord_prom = data; | ||
753 | - } | ||
754 | - }) | ||
755 | if (ord_prom && ord_prom.is_post_temp) { | 774 | if (ord_prom && ord_prom.is_post_temp) { |
756 | is_ord_prom_post = 1; | 775 | is_ord_prom_post = 1; |
757 | } | 776 | } |
@@ -894,8 +913,7 @@ Page({ | @@ -894,8 +913,7 @@ Page({ | ||
894 | var wl_txt = "formData.shipping_price"; | 913 | var wl_txt = "formData.shipping_price"; |
895 | th.setData({ [wl_txt]: 0, }) | 914 | th.setData({ [wl_txt]: 0, }) |
896 | } | 915 | } |
897 | - //---如果有选择优惠券的情况下--- | ||
898 | - var quan_price = 0, bn_pick = th.data.bn_pick; | 916 | + |
899 | 917 | ||
900 | //-----------------支付价,优惠券不减物流----------------- | 918 | //-----------------支付价,优惠券不减物流----------------- |
901 | var total_m = (parseFloat(allpice)).toFixed(2); | 919 | var total_m = (parseFloat(allpice)).toFixed(2); |
@@ -1281,7 +1299,6 @@ Page({ | @@ -1281,7 +1299,6 @@ Page({ | ||
1281 | item.samecity_order_amount=th.data.bn_samecity_order_amount; | 1299 | item.samecity_order_amount=th.data.bn_samecity_order_amount; |
1282 | } | 1300 | } |
1283 | 1301 | ||
1284 | - | ||
1285 | //获取立即购买的商品的信息 | 1302 | //获取立即购买的商品的信息 |
1286 | var gg = to.get_b_now(); | 1303 | var gg = to.get_b_now(); |
1287 | //--商品的房间号-- | 1304 | //--商品的房间号-- |
@@ -1319,6 +1336,56 @@ Page({ | @@ -1319,6 +1336,56 @@ Page({ | ||
1319 | 'prom_id': th.data.bn_goods.prom_id, //促销活动id | 1336 | 'prom_id': th.data.bn_goods.prom_id, //促销活动id |
1320 | }; | 1337 | }; |
1321 | 1338 | ||
1339 | + if(th.data.bn_goods.discount_field){ | ||
1340 | + goods.discount_field=th.data.bn_goods.discount_field; | ||
1341 | + } | ||
1342 | + | ||
1343 | + //如果有参与非实收的订单促销,那么就相当于是普通购买 | ||
1344 | + if(th.data.can_use_ord_prom[th.data.bn_pick]){ | ||
1345 | + goods.is_integral_normal=1; | ||
1346 | + | ||
1347 | + //如果是指定门店,就要判断 | ||
1348 | + if (th.data.bn_goods.pick_group_ids) { | ||
1349 | + var idx0 = th.data.bn_goods.pick_up_lists.findIndex(function (e) { | ||
1350 | + return e.pickup_id == th.data.bn_pick; | ||
1351 | + }) | ||
1352 | + if (idx0 < 0) { | ||
1353 | + getApp().my_warnning(th.data.bn_goods.goods_name + "的门店不可售", 0, th); | ||
1354 | + th.data.is_summit_ing = 0; | ||
1355 | + th.setData({ | ||
1356 | + submit: 0 | ||
1357 | + }) | ||
1358 | + return false; | ||
1359 | + } | ||
1360 | + } | ||
1361 | + | ||
1362 | + | ||
1363 | + if (th.data.sales_rules==1 && th.data.bn_goods.store_count<oods.goods_num){ | ||
1364 | + getApp().confirmBox("商品的门店库存不足"); | ||
1365 | + th.data.is_summit_ing = 0; | ||
1366 | + th.setData({ | ||
1367 | + submit: 0 | ||
1368 | + }) | ||
1369 | + return false; | ||
1370 | + } | ||
1371 | + //如果不立即购买或者秒杀,如果是线下库存购买的时候 | ||
1372 | + if (th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) { | ||
1373 | + var isok = 1; | ||
1374 | + await th.check_store_num(goods.goods_id, th.data.bn_pick, goods.goods_num, function (res) { | ||
1375 | + isok = res; | ||
1376 | + }); | ||
1377 | + if (!isok) { | ||
1378 | + getApp().confirmBox("商品的门店库存不足"); | ||
1379 | + th.data.is_summit_ing = 0; | ||
1380 | + th.setData({ | ||
1381 | + submit: 0 | ||
1382 | + }) | ||
1383 | + return false; | ||
1384 | + } | ||
1385 | + } | ||
1386 | + | ||
1387 | + } | ||
1388 | + | ||
1322 | if(getApp().globalData.skinface_id){ | 1389 | if(getApp().globalData.skinface_id){ |
1323 | goods.skinface_id=getApp().globalData.skinface_id; | 1390 | goods.skinface_id=getApp().globalData.skinface_id; |
1324 | } | 1391 | } |
@@ -1535,7 +1602,7 @@ Page({ | @@ -1535,7 +1602,7 @@ Page({ | ||
1535 | } | 1602 | } |
1536 | }) | 1603 | }) |
1537 | var isok = 1; | 1604 | var isok = 1; |
1538 | - if (goods_num > plist.CanOutQty - lock) { | 1605 | + if (!plist || goods_num > plist.CanOutQty - lock) { |
1539 | isok = 0; | 1606 | isok = 0; |
1540 | } | 1607 | } |
1541 | func(isok); | 1608 | func(isok); |
@@ -1757,7 +1824,146 @@ Page({ | @@ -1757,7 +1824,146 @@ Page({ | ||
1757 | var th = this; | 1824 | var th = this; |
1758 | th.setData({bn_use_commission: !th.data.bn_use_commission}); | 1825 | th.setData({bn_use_commission: !th.data.bn_use_commission}); |
1759 | th.calculatePrice2(); | 1826 | th.calculatePrice2(); |
1827 | + }, | ||
1828 | + | ||
1829 | + //-- 获取订单促销的判断结构 -- | ||
1830 | + set_by_now_ord_prom(item){ | ||
1831 | + let pickid=this.data.bn_pick; | ||
1832 | + let order_prom_map_ck= this.data.order_prom_map_ck; | ||
1833 | + order_prom_map_ck[pickid]={ | ||
1834 | + shop_price_all:0, //手店价的累计 | ||
1835 | + market_price_all:0, //市场价的累计 | ||
1836 | + goods_price_all:0, //实收价的累计 | ||
1837 | + no_ord_price:0, //要累计上不参与订单促销的金额 | ||
1838 | + goodsList:[], | ||
1839 | + } | ||
1840 | + | ||
1841 | + let pk_ord_map=order_prom_map_ck[pickid]; | ||
1842 | + pk_ord_map.shop_price_all += item.shop_price_y * item.buynum; | ||
1843 | + pk_ord_map.market_price_all += item.market_price * item.buynum; | ||
1844 | + | ||
1845 | + }, | ||
1846 | + | ||
1847 | + //获取当前进行中订单促销,同时带入相应的金额判断订单促销是不是运行,同时订单促销的条件不是实收价判断的话,默认的时候,订单促销是不参与运算的 | ||
1848 | + async get_cur_ord_prom(pickid) { | ||
1849 | + let ord_prom = null; | ||
1850 | + let order_prom_map_ck = this.data.order_prom_map_ck[pickid]; | ||
1851 | + if(!order_prom_map_ck) return null; | ||
1852 | + | ||
1853 | + //获取当前进行中的优惠促销 | ||
1854 | + await getApp().request.promiseGet("/api/weshop/promorder/getPromOrder", { | ||
1855 | + data: { | ||
1856 | + store_id: os.stoid, | ||
1857 | + orderAmount: -1, //-1为不判断金额条件 | ||
1858 | + user_id: getApp().globalData.user_id | ||
1859 | + } | ||
1860 | + }).then(res => { | ||
1861 | + if (res.data.code == 0) { | ||
1862 | + ord_prom = res.data.data; | ||
1863 | + } | ||
1864 | + }) | ||
1865 | + | ||
1866 | + if (!ord_prom) return null; | ||
1867 | + //用于计算订单促销的金额 | ||
1868 | + let calculate_price=0; | ||
1869 | + | ||
1870 | + let txt1='show_ord_prom['+pickid+']'; | ||
1871 | + //-- 此时判断活动的金额满足与否 -- | ||
1872 | + switch (ord_prom.discount_field) { | ||
1873 | + //实收价的时候 | ||
1874 | + case 0: | ||
1875 | + //要先还原 | ||
1876 | + this.setData({ | ||
1877 | + [txt1]: 0 | ||
1878 | + }); | ||
1879 | + | ||
1880 | + if (ord_prom.money > order_prom_map_ck.goods_price_all){ | ||
1881 | + return null; | ||
1882 | + } | ||
1883 | + break; | ||
1884 | + //手店价的时候 | ||
1885 | + case 1: | ||
1886 | + if (ord_prom.money > order_prom_map_ck.shop_price_all){ | ||
1887 | + //要先还原 | ||
1888 | + this.setData({ | ||
1889 | + [txt1]: 0 | ||
1890 | + }); | ||
1891 | + return null; | ||
1892 | + } | ||
1893 | + //要显示订单促销使用的按钮 | ||
1894 | + this.setData({ | ||
1895 | + [txt1]: 1 | ||
1896 | + }); | ||
1897 | + break; | ||
1898 | + //市场价的时候 | ||
1899 | + case 2: | ||
1900 | + if (ord_prom.money > order_prom_map_ck.market_price_all){ | ||
1901 | + //要先还原 | ||
1902 | + this.setData({ | ||
1903 | + [txt1]: 0 | ||
1904 | + }); | ||
1905 | + return null; | ||
1906 | + } | ||
1907 | + //要显示订单促销使用的按钮 | ||
1908 | + this.setData({ | ||
1909 | + [txt1]: 2 | ||
1910 | + }); | ||
1911 | + break; | ||
1912 | + } | ||
1913 | + //如果订单促销是不参与订单促销的,那么就直接返回null(订单促销不是实收价的时候) | ||
1914 | + if(ord_prom.discount_field>0 && !this.data.can_use_ord_prom[pickid]){ | ||
1915 | + return null; | ||
1916 | + } | ||
1917 | + return ord_prom; | ||
1918 | + }, | ||
1919 | + | ||
1920 | + //立即购买的时候,点击订单促销的参与 | ||
1921 | + set_can_use_ord_prom_now:function (e){ | ||
1922 | + | ||
1923 | + if(this.data.submit) return false; | ||
1924 | + this.setData({ submit: 1,same_ok:1 }); | ||
1925 | + | ||
1926 | + let pickid=this.data.bn_pick; | ||
1927 | + let txt = 'can_use_ord_prom[' + pickid + ']'; | ||
1928 | + let can_use = this.data.can_use_ord_prom[pickid] ? this.data.can_use_ord_prom[pickid] : 0; | ||
1929 | + this.setData({ | ||
1930 | + [txt]: !can_use | ||
1931 | + }) | ||
1932 | + | ||
1933 | + let th=this; | ||
1934 | + let good=th.data.bn_goods; | ||
1935 | + | ||
1936 | + //如果有要参与订单促销的按钮点击后,要修改商品的价格 | ||
1937 | + if(th.data.can_use_ord_prom[pickid]){ | ||
1938 | + let discount_field=th.data.show_ord_prom[pickid]; | ||
1939 | + switch (discount_field){ | ||
1940 | + case 1: | ||
1941 | + good.shop_price=good.shop_price_y; | ||
1942 | + break; | ||
1943 | + case 2: | ||
1944 | + good.shop_price=good.market_price; | ||
1945 | + break; | ||
1946 | + } | ||
1947 | + //-- 转成普通商品 --- | ||
1948 | + good.prom_type=0; | ||
1949 | + good.prom_id=0; | ||
1950 | + good.integral=0; | ||
1951 | + good.discount_field=discount_field; | ||
1952 | + | ||
1953 | + }else{ | ||
1954 | + good=ut.deep_cp(th.data.old_bn_goods); | ||
1955 | + } | ||
1956 | + | ||
1957 | + th.setData({ | ||
1958 | + bn_goods:good | ||
1959 | + }) | ||
1960 | + wx.showLoading({ | ||
1961 | + title: "处理中.", | ||
1962 | + mark:true | ||
1963 | + }) | ||
1964 | + th.calculatePrice2() | ||
1760 | } | 1965 | } |
1761 | 1966 | ||
1762 | 1967 | ||
1968 | + | ||
1763 | }); | 1969 | }); |
packageE/pages/cart/cart2_inte/cart2_inte.wxml
@@ -94,6 +94,14 @@ | @@ -94,6 +94,14 @@ | ||
94 | <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}} | 94 | <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}} |
95 | </view> | 95 | </view> |
96 | 96 | ||
97 | + <!-- 订单促销取价规则的优化 --> | ||
98 | + <view class="set-mes" wx:if="{{show_ord_prom[bn_pick]}}"> | ||
99 | + <view class="use-item" > | ||
100 | + <icon bindtap='set_can_use_ord_prom_now' color="{{can_use_ord_prom[bn_pick]?'red':'gray'}}" size="16" type="success"></icon> | ||
101 | + <view bindtap='set_can_use_ord_prom_now' class="yu_er">参与订单促销</view> | ||
102 | + </view> | ||
103 | + </view> | ||
104 | + | ||
97 | <view class="xc-coupon-frame flex-center" data-bn="1" bindtap="open_coupon_list" data-pickid="{{bn_pick}}" wx:if="{{(selected_quan_list && selected_quan_list.length>0) || get_by_quan_list!=null}}"> | 105 | <view class="xc-coupon-frame flex-center" data-bn="1" bindtap="open_coupon_list" data-pickid="{{bn_pick}}" wx:if="{{(selected_quan_list && selected_quan_list.length>0) || get_by_quan_list!=null}}"> |
98 | <view class="work-frame flex-space-between"> | 106 | <view class="work-frame flex-space-between"> |
99 | <view class="work"> | 107 | <view class="work"> |
packageE/pages/cart/cart2_pt/cart2_pt.js
@@ -90,6 +90,13 @@ Page({ | @@ -90,6 +90,13 @@ Page({ | ||
90 | is_no_by: {}, | 90 | is_no_by: {}, |
91 | is_by: {}, | 91 | is_by: {}, |
92 | is_quan_by: {}, | 92 | is_quan_by: {}, |
93 | + | ||
94 | + //-- 订单促销判断积累 ---2024-2-20 | ||
95 | + order_prom_map_ck: {}, | ||
96 | + //能不能使用订单促销 | ||
97 | + can_use_ord_prom:{}, | ||
98 | + //存储订单促销的取价,按照门店进行索引 | ||
99 | + show_ord_prom:{}, | ||
93 | }, | 100 | }, |
94 | 101 | ||
95 | 102 | ||
@@ -444,7 +451,9 @@ Page({ | @@ -444,7 +451,9 @@ Page({ | ||
444 | et = 2; | 451 | et = 2; |
445 | } | 452 | } |
446 | 453 | ||
454 | + t.data.data.shop_price_y=t.data.data.shop_price | ||
447 | t.data.data.shop_price = gg.goods_price; | 455 | t.data.data.shop_price = gg.goods_price; |
456 | + | ||
448 | //--如果是普通购买的时候-- | 457 | //--如果是普通购买的时候-- |
449 | if (gg.is_normal == 1) { | 458 | if (gg.is_normal == 1) { |
450 | t.data.data.prom_id = 0; | 459 | t.data.data.prom_id = 0; |
@@ -485,6 +494,8 @@ Page({ | @@ -485,6 +494,8 @@ Page({ | ||
485 | 494 | ||
486 | } | 495 | } |
487 | 496 | ||
497 | + //用深拷贝把商品缓存起来,方便后面使用 | ||
498 | + th.data.old_bn_goods=ut.deep_cp(t.data.data); | ||
488 | 499 | ||
489 | th.setData({ | 500 | th.setData({ |
490 | bn_goods: t.data.data, bn_pickname: gg.pick_name, | 501 | bn_goods: t.data.data, bn_pickname: gg.pick_name, |
@@ -568,7 +579,6 @@ Page({ | @@ -568,7 +579,6 @@ Page({ | ||
568 | et = th.data.bn_exp_type; | 579 | et = th.data.bn_exp_type; |
569 | } | 580 | } |
570 | 581 | ||
571 | - | ||
572 | //-- 计算获得佣金的金额 -- | 582 | //-- 计算获得佣金的金额 -- |
573 | if (getApp().globalData.userInfo.is_distribut | 583 | if (getApp().globalData.userInfo.is_distribut |
574 | && th.data.dis_config && th.data.dis_config.is_yongjin_dk) { | 584 | && th.data.dis_config && th.data.dis_config.is_yongjin_dk) { |
@@ -591,6 +601,8 @@ Page({ | @@ -591,6 +601,8 @@ Page({ | ||
591 | 601 | ||
592 | } | 602 | } |
593 | 603 | ||
604 | + //用深拷贝把商品缓存起来,方便后面使用 | ||
605 | + th.data.old_bn_goods=ut.deep_cp(t.data.data); | ||
594 | 606 | ||
595 | th.setData({ | 607 | th.setData({ |
596 | bn_goods: t.data.data, bn_pickname: gg.pick_name, | 608 | bn_goods: t.data.data, bn_pickname: gg.pick_name, |
@@ -834,13 +846,17 @@ Page({ | @@ -834,13 +846,17 @@ Page({ | ||
834 | 846 | ||
835 | if(th.data.bn_is_order_yh && th.data.kt_type != 3 ){ | 847 | if(th.data.bn_is_order_yh && th.data.kt_type != 3 ){ |
836 | 848 | ||
837 | - await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { | ||
838 | - data: { store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id } | ||
839 | - }).then(res => { | ||
840 | - if (res.data.code == 0) { | ||
841 | - ord_prom = res.data.data; | ||
842 | - } | ||
843 | - }) | 849 | + // await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { |
850 | + // data: { store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id } | ||
851 | + // }).then(res => { | ||
852 | + // if (res.data.code == 0) { | ||
853 | + // ord_prom = res.data.data; | ||
854 | + // } | ||
855 | + // }) | ||
856 | + | ||
857 | + th.set_by_now_ord_prom(th.data.bn_goods); | ||
858 | + th.data.order_prom_map_ck[bn_pick].goods_price_all=o_condition; | ||
859 | + ord_prom=await th.get_cur_ord_prom(bn_pick); | ||
844 | } | 860 | } |
845 | 861 | ||
846 | 862 | ||
@@ -853,7 +869,7 @@ Page({ | @@ -853,7 +869,7 @@ Page({ | ||
853 | if (th.data.user_addr != null && th.data.bn_exp_type == 0 && (th.data.kt_type != 3 || th.data.bn_goods.is_normal == 1)) { | 869 | if (th.data.user_addr != null && th.data.bn_exp_type == 0 && (th.data.kt_type != 3 || th.data.bn_goods.is_normal == 1)) { |
854 | 870 | ||
855 | //看是不是有调用过包邮券 | 871 | //看是不是有调用过包邮券 |
856 | - if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1) { | 872 | + if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1 && !th.data.can_use_ord_prom[th.data.bn_pick] ) { |
857 | 873 | ||
858 | //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱--- | 874 | //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱--- |
859 | getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", { | 875 | getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", { |
@@ -886,6 +902,12 @@ Page({ | @@ -886,6 +902,12 @@ Page({ | ||
886 | }) | 902 | }) |
887 | } | 903 | } |
888 | 904 | ||
905 | + //要让包邮券消失,在使用非实收包邮券的时候 | ||
906 | + if(th.data.can_use_ord_prom[th.data.bn_pick]){ | ||
907 | + th.setData({ get_by_quan_list: null }); | ||
908 | + th.data.isget_by_quan[th.data.bn_pick] = 0; | ||
909 | + } | ||
910 | + | ||
889 | if(good.is_free_shipping){ | 911 | if(good.is_free_shipping){ |
890 | var wl_txt = "formData.shipping_price"; | 912 | var wl_txt = "formData.shipping_price"; |
891 | th.setData({ [wl_txt]: 0 }) | 913 | th.setData({ [wl_txt]: 0 }) |
@@ -1468,6 +1490,55 @@ Page({ | @@ -1468,6 +1490,55 @@ Page({ | ||
1468 | 'prom_id': th.data.bn_goods.prom_id, //促销活动id | 1490 | 'prom_id': th.data.bn_goods.prom_id, //促销活动id |
1469 | }; | 1491 | }; |
1470 | 1492 | ||
1493 | + if(th.data.bn_goods.discount_field){ | ||
1494 | + goods.discount_field=th.data.bn_goods.discount_field; | ||
1495 | + } | ||
1496 | + | ||
1497 | + //如果有参与非实收的订单促销,那么就相当于是普通购买 | ||
1498 | + if(th.data.can_use_ord_prom[th.data.bn_pick]){ | ||
1499 | + goods.is_integral_normal=1; | ||
1500 | + | ||
1501 | + //如果是指定门店,就要判断 | ||
1502 | + if (th.data.bn_goods.pick_group_ids) { | ||
1503 | + var idx0 = th.data.bn_goods.pick_up_lists.findIndex(function (e) { | ||
1504 | + return e.pickup_id == th.data.bn_pick; | ||
1505 | + }) | ||
1506 | + if (idx0 < 0) { | ||
1507 | + getApp().my_warnning(th.data.bn_goods.goods_name + "的门店不可售", 0, th); | ||
1508 | + th.data.is_summit_ing = 0; | ||
1509 | + th.setData({ | ||
1510 | + submit: 0 | ||
1511 | + }) | ||
1512 | + return false; | ||
1513 | + } | ||
1514 | + } | ||
1515 | + | ||
1516 | + if (th.data.sales_rules==1 && th.data.bn_goods.store_count<goods.goods_num){ | ||
1517 | + getApp().confirmBox("商品的门店库存不足"); | ||
1518 | + th.data.is_summit_ing = 0; | ||
1519 | + th.setData({ | ||
1520 | + submit: 0 | ||
1521 | + }) | ||
1522 | + return false; | ||
1523 | + } | ||
1524 | + //如果不立即购买或者秒杀,如果是线下库存购买的时候 | ||
1525 | + if (th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) { | ||
1526 | + var isok = 1; | ||
1527 | + await th.check_store_num(goods.goods_id, th.data.bn_pick, goods.goods_num, function (res) { | ||
1528 | + isok = res; | ||
1529 | + }); | ||
1530 | + if (!isok) { | ||
1531 | + getApp().confirmBox("商品的门店库存不足"); | ||
1532 | + th.data.is_summit_ing = 0; | ||
1533 | + th.setData({ | ||
1534 | + submit: 0 | ||
1535 | + }) | ||
1536 | + return false; | ||
1537 | + } | ||
1538 | + } | ||
1539 | + | ||
1540 | + } | ||
1541 | + | ||
1471 | if (getApp().globalData.skinface_id) { | 1542 | if (getApp().globalData.skinface_id) { |
1472 | goods.skinface_id = getApp().globalData.skinface_id; | 1543 | goods.skinface_id = getApp().globalData.skinface_id; |
1473 | } | 1544 | } |
@@ -2260,6 +2331,214 @@ Page({ | @@ -2260,6 +2331,214 @@ Page({ | ||
2260 | th.setData({ open_quan: 0 }); | 2331 | th.setData({ open_quan: 0 }); |
2261 | }, | 2332 | }, |
2262 | 2333 | ||
2334 | + //-- 获取订单促销的判断结构 -- | ||
2335 | + set_by_now_ord_prom(item){ | ||
2336 | + let pickid=this.data.bn_pick; | ||
2337 | + let order_prom_map_ck= this.data.order_prom_map_ck; | ||
2338 | + order_prom_map_ck[pickid]={ | ||
2339 | + shop_price_all:0, //手店价的累计 | ||
2340 | + market_price_all:0, //市场价的累计 | ||
2341 | + goods_price_all:0, //实收价的累计 | ||
2342 | + no_ord_price:0, //要累计上不参与订单促销的金额 | ||
2343 | + goodsList:[], | ||
2344 | + } | ||
2345 | + | ||
2346 | + let pk_ord_map=order_prom_map_ck[pickid]; | ||
2347 | + pk_ord_map.shop_price_all += item.shop_price_y * item.buynum; | ||
2348 | + pk_ord_map.market_price_all += item.market_price * item.buynum; | ||
2349 | + | ||
2350 | + }, | ||
2351 | + | ||
2352 | + //获取当前进行中订单促销,同时带入相应的金额判断订单促销是不是运行,同时订单促销的条件不是实收价判断的话,默认的时候,订单促销是不参与运算的 | ||
2353 | + async get_cur_ord_prom(pickid) { | ||
2354 | + let ord_prom = null; | ||
2355 | + let order_prom_map_ck = this.data.order_prom_map_ck[pickid]; | ||
2356 | + if(!order_prom_map_ck) return null; | ||
2357 | + | ||
2358 | + //获取当前进行中的优惠促销 | ||
2359 | + await getApp().request.promiseGet("/api/weshop/promorder/getPromOrder", { | ||
2360 | + data: { | ||
2361 | + store_id: os.stoid, | ||
2362 | + orderAmount: -1, //-1为不判断金额条件 | ||
2363 | + user_id: getApp().globalData.user_id | ||
2364 | + } | ||
2365 | + }).then(res => { | ||
2366 | + if (res.data.code == 0) { | ||
2367 | + ord_prom = res.data.data; | ||
2368 | + } | ||
2369 | + }) | ||
2370 | + | ||
2371 | + if (!ord_prom) return null; | ||
2372 | + //用于计算订单促销的金额 | ||
2373 | + let calculate_price=0; | ||
2374 | + | ||
2375 | + let txt1='show_ord_prom['+pickid+']'; | ||
2376 | + //-- 此时判断活动的金额满足与否 -- | ||
2377 | + switch (ord_prom.discount_field) { | ||
2378 | + //实收价的时候 | ||
2379 | + case 0: | ||
2380 | + //要先还原 | ||
2381 | + this.setData({ | ||
2382 | + [txt1]: 0 | ||
2383 | + }); | ||
2384 | + | ||
2385 | + if (ord_prom.money > order_prom_map_ck.goods_price_all){ | ||
2386 | + return null; | ||
2387 | + } | ||
2388 | + break; | ||
2389 | + //手店价的时候 | ||
2390 | + case 1: | ||
2391 | + if (ord_prom.money > order_prom_map_ck.shop_price_all){ | ||
2392 | + //要先还原 | ||
2393 | + this.setData({ | ||
2394 | + [txt1]: 0 | ||
2395 | + }); | ||
2396 | + return null; | ||
2397 | + } | ||
2398 | + //要显示订单促销使用的按钮 | ||
2399 | + this.setData({ | ||
2400 | + [txt1]: 1 | ||
2401 | + }); | ||
2402 | + break; | ||
2403 | + //市场价的时候 | ||
2404 | + case 2: | ||
2405 | + if (ord_prom.money > order_prom_map_ck.market_price_all){ | ||
2406 | + //要先还原 | ||
2407 | + this.setData({ | ||
2408 | + [txt1]: 0 | ||
2409 | + }); | ||
2410 | + return null; | ||
2411 | + } | ||
2412 | + //要显示订单促销使用的按钮 | ||
2413 | + this.setData({ | ||
2414 | + [txt1]: 2 | ||
2415 | + }); | ||
2416 | + break; | ||
2417 | + } | ||
2418 | + //如果订单促销是不参与订单促销的,那么就直接返回null(订单促销不是实收价的时候) | ||
2419 | + if(ord_prom.discount_field>0 && !this.data.can_use_ord_prom[pickid]){ | ||
2420 | + return null; | ||
2421 | + } | ||
2422 | + return ord_prom; | ||
2423 | + }, | ||
2424 | + | ||
2425 | + //立即购买的时候,点击订单促销的参与 | ||
2426 | + set_can_use_ord_prom_now:function (e){ | ||
2427 | + | ||
2428 | + if(this.data.submit) return false; | ||
2429 | + this.setData({ submit: 1,same_ok:1 }); | ||
2430 | + | ||
2431 | + let pickid=this.data.bn_pick; | ||
2432 | + let txt = 'can_use_ord_prom[' + pickid + ']'; | ||
2433 | + let can_use = this.data.can_use_ord_prom[pickid] ? this.data.can_use_ord_prom[pickid] : 0; | ||
2434 | + this.setData({ | ||
2435 | + [txt]: !can_use | ||
2436 | + }) | ||
2437 | + | ||
2438 | + let th=this; | ||
2439 | + let good=th.data.bn_goods; | ||
2440 | + | ||
2441 | + //如果有要参与订单促销的按钮点击后,要修改商品的价格 | ||
2442 | + if(th.data.can_use_ord_prom[pickid]){ | ||
2443 | + let discount_field=th.data.show_ord_prom[pickid]; | ||
2444 | + switch (discount_field){ | ||
2445 | + case 1: | ||
2446 | + good.shop_price=good.shop_price_y; | ||
2447 | + break; | ||
2448 | + case 2: | ||
2449 | + good.shop_price=good.market_price; | ||
2450 | + break; | ||
2451 | + } | ||
2452 | + //-- 转成普通商品 --- | ||
2453 | + good.prom_type=0; | ||
2454 | + good.prom_id=0; | ||
2455 | + good.discount_field=discount_field; | ||
2456 | + | ||
2457 | + //把优惠券的使用还原 | ||
2458 | + th.setData({ | ||
2459 | + selected_quan_list: null, | ||
2460 | + using_quan: {} | ||
2461 | + }) | ||
2462 | + }else{ | ||
2463 | + good=ut.deep_cp(th.data.old_bn_goods); | ||
2464 | + } | ||
2465 | + | ||
2466 | + th.setData({ | ||
2467 | + bn_goods:good | ||
2468 | + }) | ||
2469 | + wx.showLoading({ | ||
2470 | + title: "处理中.", | ||
2471 | + mark:true | ||
2472 | + }) | ||
2473 | + th.calculatePrice2() | ||
2474 | + | ||
2475 | + if(!th.data.can_use_ord_prom[pickid]){ | ||
2476 | + th.get_buy_now_quan(); | ||
2477 | + } | ||
2478 | + }, | ||
2479 | + | ||
2480 | + //---确认线下门店的数量足不足--- | ||
2481 | + async check_store_num(goods_id, pick, goods_num, func) { | ||
2482 | + var lock = 0, pick_no, plist, erpwareid; | ||
2483 | + | ||
2484 | + var lock_rq = { store_id: os.stoid, wareId: goods_id, storageId: pick, pageSize: 1000 }; | ||
2485 | + if (this.data.sales_rules == 3) { | ||
2486 | + lock_rq.appoint_pick_keyid = this.data.appoint_pick_keyid; | ||
2487 | + delete lock_rq.storageId | ||
2488 | + } | ||
2489 | + //先读取门店的lock | ||
2490 | + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { | ||
2491 | + data: lock_rq | ||
2492 | + }).then(res => { | ||
2493 | + if (res.data.code == 0 && res.data.data.total > 0) { | ||
2494 | + for (var i in res.data.data.pageData) | ||
2495 | + lock += res.data.data.pageData[i].outQty; | ||
2496 | + } | ||
2497 | + }) | ||
2498 | + | ||
2499 | + if (this.data.sales_rules == 2) { | ||
2500 | + //先获取门店的编号 | ||
2501 | + await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick, { | ||
2502 | + data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } | ||
2503 | + }).then(res => { | ||
2504 | + if (res.data.code == 0) { | ||
2505 | + pick_no = res.data.data.pickup_no; | ||
2506 | + } | ||
2507 | + }) | ||
2508 | + } | ||
2509 | + | ||
2510 | + //先获取商品的线下库存 | ||
2511 | + await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + goods_id, { | ||
2512 | + data: { storeId: os.stoid, goodsId: t.goods_id, pickupId: pick } | ||
2513 | + }).then(res => { | ||
2514 | + if (res.data.code == 0) { | ||
2515 | + erpwareid = res.data.data.erpwareid; | ||
2516 | + } | ||
2517 | + }) | ||
2518 | + | ||
2519 | + | ||
2520 | + var sto_rq = { storageNos: pick_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid, pageSize: 2000 }; | ||
2521 | + if (this.data.sales_rules == 3) { | ||
2522 | + sto_rq.storageIds = this.data.appoint_pick_keyid; | ||
2523 | + delete sto_rq.storageNos | ||
2524 | + } | ||
2525 | + | ||
2526 | + //读取线下的门店库存 | ||
2527 | + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { | ||
2528 | + data: sto_rq | ||
2529 | + }).then(res => { | ||
2530 | + if (res.data.code == 0) { | ||
2531 | + plist = res.data.data.pageData[0]; | ||
2532 | + } | ||
2533 | + }) | ||
2534 | + | ||
2535 | + var isok = 1; | ||
2536 | + if (!plist || goods_num > plist.CanOutQty - lock) { | ||
2537 | + isok = 0; | ||
2538 | + } | ||
2539 | + func(isok); | ||
2540 | + }, | ||
2541 | + | ||
2263 | 2542 | ||
2264 | 2543 | ||
2265 | 2544 |
packageE/pages/cart/cart2_pt/cart2_pt.wxml
@@ -102,6 +102,13 @@ | @@ -102,6 +102,13 @@ | ||
102 | <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}} | 102 | <icon color="#f23030" size="16" type="info"></icon>{{order.store_prom}} |
103 | </view> | 103 | </view> |
104 | 104 | ||
105 | + <!-- 订单促销取价规则的优化 --> | ||
106 | + <view class="set-mes" wx:if="{{show_ord_prom[bn_pick]}}"> | ||
107 | + <view class="use-item" > | ||
108 | + <icon bindtap='set_can_use_ord_prom_now' color="{{can_use_ord_prom[bn_pick]?'red':'gray'}}" size="16" type="success"></icon> | ||
109 | + <view bindtap='set_can_use_ord_prom_now' class="yu_er">参与订单促销</view> | ||
110 | + </view> | ||
111 | + </view> | ||
105 | 112 | ||
106 | <view class="xc-coupon-frame flex-center" data-bn="1" bindtap="open_coupon_list" data-pickid="{{bn_pick}}" hidden="{{(selected_quan_list?selected_quan_list.length:0)+ (get_by_quan_list && bn_exp_type==0?get_by_quan_list.length:0)<=0}}" wx:if="{{(selected_quan_list && selected_quan_list.length>0) || get_by_quan_list!=null}}"> | 113 | <view class="xc-coupon-frame flex-center" data-bn="1" bindtap="open_coupon_list" data-pickid="{{bn_pick}}" hidden="{{(selected_quan_list?selected_quan_list.length:0)+ (get_by_quan_list && bn_exp_type==0?get_by_quan_list.length:0)<=0}}" wx:if="{{(selected_quan_list && selected_quan_list.length>0) || get_by_quan_list!=null}}"> |
107 | <view class="work-frame flex-space-between"> | 114 | <view class="work-frame flex-space-between"> |
packageE/pages/cart/cart_wk/cart_wk.js
@@ -539,6 +539,9 @@ Page({ | @@ -539,6 +539,9 @@ Page({ | ||
539 | }).then(res => { | 539 | }).then(res => { |
540 | if (res.data.code == 0) { | 540 | if (res.data.code == 0) { |
541 | ord_prom = res.data.data; | 541 | ord_prom = res.data.data; |
542 | + | ||
543 | + //如果订单促销的取价不是实收,清空订单促销 | ||
544 | + if(ord_prom && ord_prom.discount_field>0) ord_prom=null; | ||
542 | } | 545 | } |
543 | }) | 546 | }) |
544 | } | 547 | } |
packageE/pages/togoin/togoin.js
@@ -578,9 +578,9 @@ Page({ | @@ -578,9 +578,9 @@ Page({ | ||
578 | 578 | ||
579 | //弹出框的同意的优化 | 579 | //弹出框的同意的优化 |
580 | agree_pri:function (){ | 580 | agree_pri:function (){ |
581 | - this.setData({ | ||
582 | - isAgree:1, | ||
583 | - }); | 581 | + // this.setData({ |
582 | + // isAgree:1, | ||
583 | + // }); | ||
584 | }, | 584 | }, |
585 | //通过路径跳转到其他页面 | 585 | //通过路径跳转到其他页面 |
586 | goto: function (e) { | 586 | goto: function (e) { |
packageG/pages/goods/search/search.wxml
@@ -178,4 +178,4 @@ | @@ -178,4 +178,4 @@ | ||
178 | </block> | 178 | </block> |
179 | </view> | 179 | </view> |
180 | 180 | ||
181 | -<include src="../com_screen.wxml" /> | ||
182 | \ No newline at end of file | 181 | \ No newline at end of file |
182 | +<include src="../../../../pages/goods/com_screen" /> | ||
183 | \ No newline at end of file | 183 | \ No newline at end of file |
packageG/pages/user/order_detail/order_detail.js
@@ -1157,13 +1157,39 @@ Page({ | @@ -1157,13 +1157,39 @@ Page({ | ||
1157 | //-- 优惠促销的时候控制取价规则 -- | 1157 | //-- 优惠促销的时候控制取价规则 -- |
1158 | // gg.prom_type!=3 && gg.prom_type!=10 同时商品不是普通购买的时候,又参与优惠促销,阶梯促销 | 1158 | // gg.prom_type!=3 && gg.prom_type!=10 同时商品不是普通购买的时候,又参与优惠促销,阶梯促销 |
1159 | if((gg.prom_type!=3 && gg.prom_type!=10) || gg.discount_field==undefined || gg.discount_field==0 ) { | 1159 | if((gg.prom_type!=3 && gg.prom_type!=10) || gg.discount_field==undefined || gg.discount_field==0 ) { |
1160 | - if (card_field && gg[card_field] > 0) { | ||
1161 | - if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0; | ||
1162 | - if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | ||
1163 | 1160 | ||
1164 | - } else { | ||
1165 | - if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0; | ||
1166 | - if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | 1161 | + |
1162 | + //判断一下活动是不是有参与订单促销,并且订单促销的活动是不是实收取价,2024-2-23 | ||
1163 | + let ordprom_price_type=0; | ||
1164 | + if(order.order_prom_id && good.prom_type==0){ | ||
1165 | + let p_rs= await getApp().request.promiseGet("/api/weshop/promorder/get/"+os.stoid+"/"+order.order_prom_id, {}); | ||
1166 | + if(p_rs && p_rs.data.code==0 && p_rs.data.data){ | ||
1167 | + let ord_p=p_rs.data.data; | ||
1168 | + if(ord_p && ord_p.discount_field>0){ | ||
1169 | + ordprom_price_type=ord_p.discount_field | ||
1170 | + } | ||
1171 | + } | ||
1172 | + } | ||
1173 | + if(ordprom_price_type>0){ | ||
1174 | + //-- 看一下订单促销的取价规则 -- | ||
1175 | + switch (ordprom_price_type){ | ||
1176 | + case 1: | ||
1177 | + if (good.goods_price != gg.shop_price) isok = 0; | ||
1178 | + break; | ||
1179 | + case 2: | ||
1180 | + if (good.goods_price != gg.market_price) isok = 0; | ||
1181 | + break; | ||
1182 | + } | ||
1183 | + | ||
1184 | + }else { | ||
1185 | + if (card_field && gg[card_field] > 0) { | ||
1186 | + if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0; | ||
1187 | + if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | ||
1188 | + | ||
1189 | + } else { | ||
1190 | + if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0; | ||
1191 | + if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | ||
1192 | + } | ||
1167 | } | 1193 | } |
1168 | }else{ | 1194 | }else{ |
1169 | if(good.prom_type==3 && good.prom_type==10){ | 1195 | if(good.prom_type==3 && good.prom_type==10){ |
pages/cart/cart/cart.js
@@ -492,6 +492,21 @@ Page({ | @@ -492,6 +492,21 @@ Page({ | ||
492 | } | 492 | } |
493 | }); | 493 | }); |
494 | 494 | ||
495 | + if(!app.globalData.user_id){ | ||
496 | + | ||
497 | + th.setData({ | ||
498 | + requestData: [], | ||
499 | + all_num: 0, | ||
500 | + is_load: 1, | ||
501 | + is_edit: 0, | ||
502 | + checkAllToggle:0 | ||
503 | + }),wx.stopPullDownRefresh(); | ||
504 | + | ||
505 | + wx.hideLoading(); | ||
506 | + | ||
507 | + return false; | ||
508 | + } | ||
509 | + | ||
495 | getApp().request.get("/api/weshop/cart/listNew1", { | 510 | getApp().request.get("/api/weshop/cart/listNew1", { |
496 | data: { | 511 | data: { |
497 | user_id: app.globalData.user_id, | 512 | user_id: app.globalData.user_id, |
@@ -503,8 +518,11 @@ Page({ | @@ -503,8 +518,11 @@ Page({ | ||
503 | success: async function (su) { | 518 | success: async function (su) { |
504 | console.log(su, 10000); | 519 | console.log(su, 10000); |
505 | //按门店分类的数组 | 520 | //按门店分类的数组 |
506 | - var arr = new Array(), | ||
507 | - carr = su.data.data.pageData; | 521 | + var arr = new Array(); |
522 | + var carr=[]; | ||
523 | + | ||
524 | + if(ut.ajax_ok(su)) | ||
525 | + carr = su.data.data.pageData; | ||
508 | var all_num = 0; | 526 | var all_num = 0; |
509 | 527 | ||
510 | if (carr && carr.length > 0) { | 528 | if (carr && carr.length > 0) { |
@@ -530,7 +548,7 @@ Page({ | @@ -530,7 +548,7 @@ Page({ | ||
530 | let gd_ite={ | 548 | let gd_ite={ |
531 | goods_id:carr[i].goods_id, | 549 | goods_id:carr[i].goods_id, |
532 | goods_num:1, | 550 | goods_num:1, |
533 | - is_limit_show:1, | 551 | + is_limit_show:0, |
534 | is_state:0 | 552 | is_state:0 |
535 | } | 553 | } |
536 | g_arr.push(gd_ite); | 554 | g_arr.push(gd_ite); |
@@ -1192,10 +1210,10 @@ Page({ | @@ -1192,10 +1210,10 @@ Page({ | ||
1192 | // if (this.data.btn_click) { | 1210 | // if (this.data.btn_click) { |
1193 | // return false; | 1211 | // return false; |
1194 | // } | 1212 | // } |
1213 | + | ||
1195 | setTimeout(() => { | 1214 | setTimeout(() => { |
1196 | if (this.data.up_dating == 1) return false; | 1215 | if (this.data.up_dating == 1) return false; |
1197 | this.data.up_dating=1 | 1216 | this.data.up_dating=1 |
1198 | - | ||
1199 | this.data.btn_click = 1; | 1217 | this.data.btn_click = 1; |
1200 | var a = t.currentTarget.dataset.item; | 1218 | var a = t.currentTarget.dataset.item; |
1201 | var b = t.currentTarget.dataset.pitems; | 1219 | var b = t.currentTarget.dataset.pitems; |
@@ -2064,6 +2082,8 @@ Page({ | @@ -2064,6 +2082,8 @@ Page({ | ||
2064 | //判断多门店,优惠促销次数的控制 | 2082 | //判断多门店,优惠促销次数的控制 |
2065 | async multiple_stores_pro(pitems, item) { | 2083 | async multiple_stores_pro(pitems, item) { |
2066 | 2084 | ||
2085 | + if(!this.data.requestData || !this.data.requestData[pitems]) return false | ||
2086 | + | ||
2067 | let a = this.data.requestData[pitems].goods[item]; | 2087 | let a = this.data.requestData[pitems].goods[item]; |
2068 | let th = this | 2088 | let th = this |
2069 | let arr_pro = [] | 2089 | let arr_pro = [] |
pages/goods/goodsInfo/goodsInfo.js
@@ -293,6 +293,8 @@ Page({ | @@ -293,6 +293,8 @@ Page({ | ||
293 | 293 | ||
294 | fir_set_sto:1, //最初始的一下,获取门店 | 294 | fir_set_sto:1, //最初始的一下,获取门店 |
295 | front_pick:null, //在详情页面上显示的门店 | 295 | front_pick:null, //在详情页面上显示的门店 |
296 | + | ||
297 | + get_sto_ing:1, //默认是不让弹出框的 | ||
296 | }, | 298 | }, |
297 | 299 | ||
298 | //------初始化加载---------- | 300 | //------初始化加载---------- |
@@ -2761,6 +2763,8 @@ Page({ | @@ -2761,6 +2763,8 @@ Page({ | ||
2761 | }, | 2763 | }, |
2762 | 2764 | ||
2763 | openSpecModel: function (t) { | 2765 | openSpecModel: function (t) { |
2766 | + | ||
2767 | + if(this.data.get_sto_ing) return false; | ||
2764 | 2768 | ||
2765 | var th = this; | 2769 | var th = this; |
2766 | var open_store = t.currentTarget.dataset.ind; | 2770 | var open_store = t.currentTarget.dataset.ind; |
@@ -2774,7 +2778,9 @@ Page({ | @@ -2774,7 +2778,9 @@ Page({ | ||
2774 | return false; | 2778 | return false; |
2775 | } | 2779 | } |
2776 | 2780 | ||
2777 | - th.setData({def_pick_store: ut.deep_cp(th.data.front_pick)}); | 2781 | + if(th.data.front_pick && th.data.front_pick.pickup_id>0 ){ |
2782 | + th.setData({def_pick_store: ut.deep_cp(th.data.front_pick)}); | ||
2783 | + } | ||
2778 | 2784 | ||
2779 | this.setData({ | 2785 | this.setData({ |
2780 | store: 0, | 2786 | store: 0, |
@@ -3748,6 +3754,7 @@ Page({ | @@ -3748,6 +3754,7 @@ Page({ | ||
3748 | sp_seleing:0 | 3754 | sp_seleing:0 |
3749 | }) | 3755 | }) |
3750 | 3756 | ||
3757 | + | ||
3751 | }, | 3758 | }, |
3752 | 3759 | ||
3753 | 3760 | ||
@@ -3758,6 +3765,8 @@ Page({ | @@ -3758,6 +3765,8 @@ Page({ | ||
3758 | that = this; | 3765 | that = this; |
3759 | var is_normal = e; | 3766 | var is_normal = e; |
3760 | 3767 | ||
3768 | + th.data.get_sto_ing=1; | ||
3769 | + | ||
3761 | if (e == 1) { | 3770 | if (e == 1) { |
3762 | th.setData({ | 3771 | th.setData({ |
3763 | is_normal: 1 | 3772 | is_normal: 1 |
@@ -3772,9 +3781,10 @@ Page({ | @@ -3772,9 +3781,10 @@ Page({ | ||
3772 | if (th.data.is_get_local_ok == 0) return false; | 3781 | if (th.data.is_get_local_ok == 0) return false; |
3773 | if (!th.data.fir_def_store) return false; | 3782 | if (!th.data.fir_def_store) return false; |
3774 | 3783 | ||
3784 | + | ||
3775 | var dd = null, | 3785 | var dd = null, |
3776 | i = getApp().request; | 3786 | i = getApp().request; |
3777 | - if (!th.data.sele_g) return false; | 3787 | + if (!th.data.sele_g) {th.data.get_sto_ing=0; return false; } |
3778 | 3788 | ||
3779 | var g_distr_type = th.data.sele_g.distr_type; | 3789 | var g_distr_type = th.data.sele_g.distr_type; |
3780 | if (g_distr_type != 0) { | 3790 | if (g_distr_type != 0) { |
@@ -3959,12 +3969,14 @@ Page({ | @@ -3959,12 +3969,14 @@ Page({ | ||
3959 | th.setData({sp_seleing:0}) | 3969 | th.setData({sp_seleing:0}) |
3960 | wx.hideLoading(); | 3970 | wx.hideLoading(); |
3961 | th.data.fir_set_sto=0; | 3971 | th.data.fir_set_sto=0; |
3972 | + th.data.get_sto_ing=0; | ||
3962 | } | 3973 | } |
3963 | } else { | 3974 | } else { |
3964 | if(func) func(); | 3975 | if(func) func(); |
3965 | th.setData({sp_seleing:0}) | 3976 | th.setData({sp_seleing:0}) |
3966 | wx.hideLoading(); | 3977 | wx.hideLoading(); |
3967 | th.data.fir_set_sto=0; | 3978 | th.data.fir_set_sto=0; |
3979 | + th.data.get_sto_ing=0; | ||
3968 | } | 3980 | } |
3969 | },err=>{ | 3981 | },err=>{ |
3970 | ut.m_toast('网络繁忙,请稍后重试'); | 3982 | ut.m_toast('网络繁忙,请稍后重试'); |
@@ -3972,6 +3984,7 @@ Page({ | @@ -3972,6 +3984,7 @@ Page({ | ||
3972 | th.setData({sp_seleing:0}) | 3984 | th.setData({sp_seleing:0}) |
3973 | wx.hideLoading(); | 3985 | wx.hideLoading(); |
3974 | th.data.fir_set_sto=0; | 3986 | th.data.fir_set_sto=0; |
3987 | + th.data.get_sto_ing=0; | ||
3975 | }) | 3988 | }) |
3976 | }, 200) | 3989 | }, 200) |
3977 | 3990 | ||
@@ -4105,6 +4118,7 @@ Page({ | @@ -4105,6 +4118,7 @@ Page({ | ||
4105 | var th = this; | 4118 | var th = this; |
4106 | if (!th.data.sele_g){ | 4119 | if (!th.data.sele_g){ |
4107 | wx.hideLoading(); | 4120 | wx.hideLoading(); |
4121 | + th.data.get_sto_ing=0; | ||
4108 | return false | 4122 | return false |
4109 | } | 4123 | } |
4110 | 4124 | ||
@@ -4337,6 +4351,8 @@ Page({ | @@ -4337,6 +4351,8 @@ Page({ | ||
4337 | th.deal_front_pk(); | 4351 | th.deal_front_pk(); |
4338 | } | 4352 | } |
4339 | 4353 | ||
4354 | + th.data.get_sto_ing=0; | ||
4355 | + | ||
4340 | }, | 4356 | }, |
4341 | 4357 | ||
4342 | //------------处理线下门店库存-------- | 4358 | //------------处理线下门店库存-------- |
@@ -4443,6 +4459,7 @@ Page({ | @@ -4443,6 +4459,7 @@ Page({ | ||
4443 | 4459 | ||
4444 | 4460 | ||
4445 | } else { | 4461 | } else { |
4462 | + th.data.get_sto_ing=0; | ||
4446 | th.data.fir_set_sto=0; | 4463 | th.data.fir_set_sto=0; |
4447 | th.setData({ | 4464 | th.setData({ |
4448 | all_sto: null, | 4465 | all_sto: null, |
@@ -4542,6 +4559,7 @@ Page({ | @@ -4542,6 +4559,7 @@ Page({ | ||
4542 | 4559 | ||
4543 | } else { | 4560 | } else { |
4544 | 4561 | ||
4562 | + th.data.get_sto_ing=0; | ||
4545 | th.data.fir_set_sto=0; | 4563 | th.data.fir_set_sto=0; |
4546 | th.setData({ | 4564 | th.setData({ |
4547 | all_sto: null, | 4565 | all_sto: null, |
@@ -4552,6 +4570,7 @@ Page({ | @@ -4552,6 +4570,7 @@ Page({ | ||
4552 | 4570 | ||
4553 | } else { | 4571 | } else { |
4554 | 4572 | ||
4573 | + th.data.get_sto_ing=0; | ||
4555 | th.data.fir_set_sto=0; | 4574 | th.data.fir_set_sto=0; |
4556 | th.setData({ | 4575 | th.setData({ |
4557 | all_sto: null, | 4576 | all_sto: null, |
@@ -5488,6 +5507,8 @@ Page({ | @@ -5488,6 +5507,8 @@ Page({ | ||
5488 | //--点击弹起拼单-- | 5507 | //--点击弹起拼单-- |
5489 | openSpecModel_pt:function (e) { | 5508 | openSpecModel_pt:function (e) { |
5490 | 5509 | ||
5510 | + if(this.data.get_sto_ing) return false; | ||
5511 | + | ||
5491 | this.setData({ | 5512 | this.setData({ |
5492 | open_ind_store: 4, | 5513 | open_ind_store: 4, |
5493 | goodsInputNum: 1 | 5514 | goodsInputNum: 1 |
@@ -5507,7 +5528,7 @@ Page({ | @@ -5507,7 +5528,7 @@ Page({ | ||
5507 | //如果是拼单活动的普通购买 | 5528 | //如果是拼单活动的普通购买 |
5508 | if (ind == 1) { | 5529 | if (ind == 1) { |
5509 | 5530 | ||
5510 | - if(th.data.front_pick){ | 5531 | + if(th.data.front_pick && th.data.front_pick.pickup_id){ |
5511 | th.setData({def_pick_store: ut.deep_cp(th.data.front_pick)}); | 5532 | th.setData({def_pick_store: ut.deep_cp(th.data.front_pick)}); |
5512 | }else if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}'){ //要把不匹配还原 | 5533 | }else if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}'){ //要把不匹配还原 |
5513 | th.data.def_pick_store.is_no_dis_nor=0; | 5534 | th.data.def_pick_store.is_no_dis_nor=0; |
@@ -5710,7 +5731,7 @@ Page({ | @@ -5710,7 +5731,7 @@ Page({ | ||
5710 | }); | 5731 | }); |
5711 | 5732 | ||
5712 | // s.my_warnning('超出商品限购', 0, th); | 5733 | // s.my_warnning('超出商品限购', 0, th); |
5713 | - var num = th.data.prom_buy_limit - th.data.prom_buy_num; | 5734 | + var num = 0;//th.data.prom_buy_limit - th.data.prom_buy_num; |
5714 | if (num < 0) num = 0; | 5735 | if (num < 0) num = 0; |
5715 | th.setData({ | 5736 | th.setData({ |
5716 | goodsInputNum: num | 5737 | goodsInputNum: num |
@@ -6842,8 +6863,17 @@ Page({ | @@ -6842,8 +6863,17 @@ Page({ | ||
6842 | // context.fillText("优惠乐翻天,精彩就在你身边", 40 * unit, 816 * unit); | 6863 | // context.fillText("优惠乐翻天,精彩就在你身边", 40 * unit, 816 * unit); |
6843 | // context.setFontSize(18 * unit) | 6864 | // context.setFontSize(18 * unit) |
6844 | // context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 850 * unit); | 6865 | // context.fillText("长按识别二维码,立即开始抢购", 40 * unit, 850 * unit); |
6845 | - //---二维吗图--- | ||
6846 | - context.drawImage(vpath, 380 * unit, 736 * unit, 120 * unit, 120 * unit); | 6866 | + |
6867 | + if (th.data.share_b_img || th.data.poster) { | ||
6868 | + var erm_x = parseFloat(th.data.poster.ewm_x) * 2; | ||
6869 | + var erm_y = parseFloat(th.data.poster.ewm_y) * 2; | ||
6870 | + context.drawImage(vpath, erm_x * unit, erm_y * unit, 136 * unit, 136 * unit); | ||
6871 | + }else{ | ||
6872 | + //---二维吗图--- | ||
6873 | + context.drawImage(vpath, 380 * unit, 736 * unit, 120 * unit, 120 * unit); | ||
6874 | + } | ||
6875 | + | ||
6876 | + | ||
6847 | break; //普通商品的展示 | 6877 | break; //普通商品的展示 |
6848 | case 4: | 6878 | case 4: |
6849 | 6879 | ||
@@ -7415,12 +7445,12 @@ Page({ | @@ -7415,12 +7445,12 @@ Page({ | ||
7415 | }) | 7445 | }) |
7416 | //--先判断会员状态-- | 7446 | //--先判断会员状态-- |
7417 | var user_info = getApp().globalData.userInfo; | 7447 | var user_info = getApp().globalData.userInfo; |
7418 | - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { | ||
7419 | - wx.navigateTo({ | ||
7420 | - url: '/packageE/pages/togoin/togoin', | ||
7421 | - }) | ||
7422 | - return false; | ||
7423 | - } | 7448 | + // if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) { |
7449 | + // wx.navigateTo({ | ||
7450 | + // url: '/packageE/pages/togoin/togoin', | ||
7451 | + // }) | ||
7452 | + // return false; | ||
7453 | + // } | ||
7424 | 7454 | ||
7425 | 7455 | ||
7426 | //如果开启了,则不在选择门店 | 7456 | //如果开启了,则不在选择门店 |
@@ -8559,7 +8589,8 @@ Page({ | @@ -8559,7 +8589,8 @@ Page({ | ||
8559 | 8589 | ||
8560 | //-- 积分购购买弹出框 -- | 8590 | //-- 积分购购买弹出框 -- |
8561 | go_pay_integral: function () { | 8591 | go_pay_integral: function () { |
8562 | - | 8592 | + |
8593 | + if(this.data.get_sto_ing) return false; | ||
8563 | //-- 在打开弹出框的时候,front_pk门店要赋值 -- | 8594 | //-- 在打开弹出框的时候,front_pk门店要赋值 -- |
8564 | this.setData({def_pick_store: ut.deep_cp(this.data.front_pick)}); | 8595 | this.setData({def_pick_store: ut.deep_cp(this.data.front_pick)}); |
8565 | 8596 | ||
@@ -8574,10 +8605,11 @@ Page({ | @@ -8574,10 +8605,11 @@ Page({ | ||
8574 | //-- 积分购普通购买弹出框 -- | 8605 | //-- 积分购普通购买弹出框 -- |
8575 | go_pay_integral_normal:async function () { | 8606 | go_pay_integral_normal:async function () { |
8576 | 8607 | ||
8608 | + if(this.data.get_sto_ing) return false; | ||
8577 | this.data.g_buy_num = new Map(); | 8609 | this.data.g_buy_num = new Map(); |
8578 | var th = this; | 8610 | var th = this; |
8579 | 8611 | ||
8580 | - if(th.data.front_pick){ | 8612 | + if(th.data.front_pick && th.data.front_pick.pickup_id){ |
8581 | th.setData({def_pick_store: ut.deep_cp(th.data.front_pick)}); | 8613 | th.setData({def_pick_store: ut.deep_cp(th.data.front_pick)}); |
8582 | }else if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}'){ //要把不匹配还原 | 8614 | }else if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}'){ //要把不匹配还原 |
8583 | th.data.def_pick_store.is_no_dis_nor=0; | 8615 | th.data.def_pick_store.is_no_dis_nor=0; |
@@ -9148,6 +9180,9 @@ Page({ | @@ -9148,6 +9180,9 @@ Page({ | ||
9148 | 9180 | ||
9149 | //-- 秒杀的普通购买 -- | 9181 | //-- 秒杀的普通购买 -- |
9150 | openSpecModel_Nor: function () { | 9182 | openSpecModel_Nor: function () { |
9183 | + | ||
9184 | + if(this.data.get_sto_ing) return false; | ||
9185 | + | ||
9151 | this.data.g_buy_num = new Map(); | 9186 | this.data.g_buy_num = new Map(); |
9152 | var th = this; | 9187 | var th = this; |
9153 | 9188 |
pages/goods/goodsList/goodsList.js
@@ -317,14 +317,14 @@ Page({ | @@ -317,14 +317,14 @@ Page({ | ||
317 | //-- 获取 -- | 317 | //-- 获取 -- |
318 | await getApp().request.promiseGet("/api/weshop/prom/gift/page?id="+content.gift+"&store_id="+oo.stoid, { | 318 | await getApp().request.promiseGet("/api/weshop/prom/gift/page?id="+content.gift+"&store_id="+oo.stoid, { |
319 | }).then(res => { | 319 | }).then(res => { |
320 | - if(ut.ajax_ok(res)) | 320 | + if(ut.ajax_ok(res)) { |
321 | + arr[i].content.gift_name = res.data.data.pageData[0].goods_name; | ||
322 | + if (!content.zpname_type) content.zpname_type = ''; | ||
321 | 323 | ||
322 | - arr[i].content.gift_name=res.data.data.pageData[0].goods_name; | ||
323 | - if(!content.zpname_type) content.zpname_type=''; | ||
324 | - | ||
325 | - if(parseInt(content.zpname_type)>0){ | ||
326 | - arr[i].content.gift_name=res.data.data.pageData[0].title; | 324 | + if (parseInt(content.zpname_type) > 0) { |
325 | + arr[i].content.gift_name = res.data.data.pageData[0].title; | ||
327 | } | 326 | } |
327 | + } | ||
328 | }) | 328 | }) |
329 | } | 329 | } |
330 | 330 |
pages/user/index/iconfont.ttf
0 → 100644
No preview for this file type
pages/user/index/index.js
@@ -55,14 +55,18 @@ Page({ | @@ -55,14 +55,18 @@ Page({ | ||
55 | showvipcode:false, | 55 | showvipcode:false, |
56 | pshow:0, | 56 | pshow:0, |
57 | 57 | ||
58 | - | ||
59 | is_show_yq:0, //是不是要显示邀请 | 58 | is_show_yq:0, //是不是要显示邀请 |
59 | + show_erm_u:1,//弹出框显示会员二维码 | ||
60 | }, | 60 | }, |
61 | goto_nav: function (e) { | 61 | goto_nav: function (e) { |
62 | var th = this; | 62 | var th = this; |
63 | var url = e.currentTarget.dataset.url; | 63 | var url = e.currentTarget.dataset.url; |
64 | - if (th.data.userInfo != null) { | ||
65 | - console.log('跳转'); | 64 | + |
65 | + //附件的门店不用判断会员 | ||
66 | + var is_fj_store= url.indexOf('store/index')>-1; | ||
67 | + | ||
68 | + if (th.data.userInfo != null || is_fj_store) { | ||
69 | + console.log('跳转'); | ||
66 | getApp().goto(url); | 70 | getApp().goto(url); |
67 | } else { | 71 | } else { |
68 | wx.navigateTo({ | 72 | wx.navigateTo({ |
@@ -542,22 +546,25 @@ Page({ | @@ -542,22 +546,25 @@ Page({ | ||
542 | }) | 546 | }) |
543 | //th.requestRecommend(); | 547 | //th.requestRecommend(); |
544 | 548 | ||
545 | - //自定义组件一定要等到页面加载完了,才来调用selectComponnent | ||
546 | - setTimeout(function () { | ||
547 | 549 | ||
548 | - th.setData({ is_show_recommend:true }) | ||
549 | - if (getApp().globalData.user_id) getApp().requestCardNum(th); | ||
550 | - var goods_list = th.selectComponent("#goods_recommend"); //组件的id | ||
551 | 550 | ||
552 | - if(goods_list){ | ||
553 | - goods_list.init(); | ||
554 | - goods_list.get_list(); | ||
555 | - } | 551 | + } |
552 | + } | ||
556 | 553 | ||
557 | - }, 1200) | 554 | + //自定义组件一定要等到页面加载完了,才来调用selectComponnent |
555 | + setTimeout(function () { | ||
558 | 556 | ||
557 | + th.setData({ is_show_recommend:true }) | ||
558 | + if (getApp().globalData.user_id) getApp().requestCardNum(th); | ||
559 | + var goods_list = th.selectComponent("#goods_recommend"); //组件的id | ||
560 | + | ||
561 | + if(goods_list){ | ||
562 | + goods_list.init(); | ||
563 | + goods_list.get_list(); | ||
559 | } | 564 | } |
560 | - } | 565 | + |
566 | + }, 1200) | ||
567 | + | ||
561 | 568 | ||
562 | setTimeout(()=>{ | 569 | setTimeout(()=>{ |
563 | th.setData({ pshow:1 }) | 570 | th.setData({ pshow:1 }) |
@@ -626,14 +633,14 @@ Page({ | @@ -626,14 +633,14 @@ Page({ | ||
626 | */ | 633 | */ |
627 | onReachBottom: function () { | 634 | onReachBottom: function () { |
628 | //!this.nomore && this.requestRecommend(); | 635 | //!this.nomore && this.requestRecommend(); |
629 | - var e = getApp().globalData.userInfo; | ||
630 | - if (e != undefined && e != null && e.mobile) { | 636 | + //var e = getApp().globalData.userInfo; |
637 | + //if (e != undefined && e != null && e.mobile) { | ||
631 | var goods_list = this.selectComponent("#goods_recommend"); //组件的id | 638 | var goods_list = this.selectComponent("#goods_recommend"); //组件的id |
632 | goods_list.init(); | 639 | goods_list.init(); |
633 | setTimeout(function () { | 640 | setTimeout(function () { |
634 | goods_list.get_list(); | 641 | goods_list.get_list(); |
635 | }, 300) | 642 | }, 300) |
636 | - } | 643 | + //} |
637 | }, | 644 | }, |
638 | 645 | ||
639 | /** | 646 | /** |
@@ -1237,6 +1244,38 @@ Page({ | @@ -1237,6 +1244,38 @@ Page({ | ||
1237 | }) | 1244 | }) |
1238 | }, | 1245 | }, |
1239 | 1246 | ||
1247 | + hide_u_ewm(){ | ||
1248 | + this.setData({show_erm_u:0}) | ||
1249 | + }, | ||
1250 | + show_u_ewm(){ | ||
1251 | + var th=this; | ||
1252 | + | ||
1253 | + var getnowtime; | ||
1254 | + rq.get("/api/weshop/users/getServerTime", { | ||
1255 | + success: function (res) { | ||
1256 | + if (res.data.code == 0) | ||
1257 | + { | ||
1258 | + th.setData({show_erm_u:1}) | ||
1259 | + getnowtime=res.data.data; | ||
1260 | + if (!getnowtime) | ||
1261 | + { | ||
1262 | + getApp().showWarning("获取服务时间失败"); | ||
1263 | + return; | ||
1264 | + } | ||
1265 | + //base64_encode($user.mobile.'|'.date('Y-m-d H:i:s') | ||
1266 | + var val = th.data.userInfo.mobile + "|" +getnowtime+"|"+th.data.getusercode_vailtime; | ||
1267 | + val = "^" + ut.base64_encode(val); | ||
1268 | + | ||
1269 | + qrcode('qrcode', val, 350, 350, th); | ||
1270 | + | ||
1271 | + | ||
1272 | + } | ||
1273 | + } | ||
1274 | + }) | ||
1275 | + | ||
1276 | + | ||
1277 | + } | ||
1278 | + | ||
1240 | 1279 | ||
1241 | 1280 | ||
1242 | 1281 |
pages/user/index/index.wxml
@@ -435,7 +435,7 @@ | @@ -435,7 +435,7 @@ | ||
435 | <!--弹出层内容,其中的“我知道”中绑定让弹出层消失的函数:bindtap="hide"--> | 435 | <!--弹出层内容,其中的“我知道”中绑定让弹出层消失的函数:bindtap="hide"--> |
436 | <view class="tc_view" hidden='{{tc_hide}}' bindtap='hide_tc'> | 436 | <view class="tc_view" hidden='{{tc_hide}}' bindtap='hide_tc'> |
437 | <view class="modal-box" hidden="{{flag}}" bindtap="hide" catchtouchmove="true"></view> | 437 | <view class="modal-box" hidden="{{flag}}" bindtap="hide" catchtouchmove="true"></view> |
438 | - <view class="modal-body" catchtouchmove="true"> | 438 | + <view class="modal-body {{show_erm_u?'':'low'}} " catchtouchmove="true"> |
439 | <view class="modal-content"> | 439 | <view class="modal-content"> |
440 | <view class="flex"> | 440 | <view class="flex"> |
441 | <image src="{{userInfo.head_pic}}" class="hd_img"></image> | 441 | <image src="{{userInfo.head_pic}}" class="hd_img"></image> |
@@ -448,11 +448,24 @@ | @@ -448,11 +448,24 @@ | ||
448 | </view> | 448 | </view> |
449 | </view> | 449 | </view> |
450 | 450 | ||
451 | - <view class="canvas_box"> | ||
452 | - <!--<image class='g_img' src='https://mshop.yolipai.net//index.php?m=Home&c=Index&a=qr_code&data={{userInfo.mobile}}'></image>--> | ||
453 | - <canvas class="g_img" canvas-id="qrcode" /> | 451 | + |
452 | + <block wx:if="{{show_erm_u}}"> | ||
453 | + <view class="canvas_box"> | ||
454 | + <!--<image class='g_img' src='https://mshop.yolipai.net//index.php?m=Home&c=Index&a=qr_code&data={{userInfo.mobile}}'></image>--> | ||
455 | + <canvas class="g_img" canvas-id="qrcode" /> | ||
456 | + </view> | ||
457 | + </block> | ||
458 | + | ||
459 | + <view style=" position: relative;top: -25rpx;"> | ||
460 | + <view wx:if="{{show_erm_u}}" catchtap="hide_u_ewm" class="fs24 flex ai-center jc-center" style="width: 100%;color: #898989;line-height: normal; "> | ||
461 | + 点击隐藏<text class="icon_yan icon-yanjing_yincang_o fs36"></text> | ||
462 | + </view> | ||
463 | + <view wx:else catchtap="show_u_ewm" class="fs24 flex ai-center jc-center" style="width: 100%;color: #898989; line-height: normal; "> | ||
464 | + 点击显示<text class="icon_yan icon-yanjing_xianshi_o fs36"></text> | ||
465 | + </view> | ||
454 | </view> | 466 | </view> |
455 | - <view style="width: 100%;display: flex;justify-content: center;"> | 467 | + |
468 | + <view style="width: 100%;display: flex;justify-content: center; margin-top: 8rpx;" > | ||
456 | <canvas class="barcode" style="width: 100%;height: 140rpx;" canvas-id="barcode" /> | 469 | <canvas class="barcode" style="width: 100%;height: 140rpx;" canvas-id="barcode" /> |
457 | </view> | 470 | </view> |
458 | <view wx:if="{{showvipcode}}" class="fs24" style="width: 100%;color: #898989;display: flex;text-align: center;align-content: center;justify-content: center;"> | 471 | <view wx:if="{{showvipcode}}" class="fs24" style="width: 100%;color: #898989;display: flex;text-align: center;align-content: center;justify-content: center;"> |
pages/user/index/index.wxss
@@ -553,11 +553,15 @@ | @@ -553,11 +553,15 @@ | ||
553 | background: #fff; | 553 | background: #fff; |
554 | /* margin-left: 73rpx; */ | 554 | /* margin-left: 73rpx; */ |
555 | width: 600rpx; | 555 | width: 600rpx; |
556 | - height: 860rpx; | 556 | + height:860rpx; |
557 | border-radius: 8px; | 557 | border-radius: 8px; |
558 | text-align: center; | 558 | text-align: center; |
559 | } | 559 | } |
560 | 560 | ||
561 | +.modal-body.low{ | ||
562 | + height:600rpx; | ||
563 | +} | ||
564 | + | ||
561 | .modal-content { | 565 | .modal-content { |
562 | width: 480rpx; | 566 | width: 480rpx; |
563 | margin: 0 auto; | 567 | margin: 0 auto; |
@@ -784,4 +788,31 @@ button::after { | @@ -784,4 +788,31 @@ button::after { | ||
784 | align-items: center; | 788 | align-items: center; |
785 | justify-content: center; | 789 | justify-content: center; |
786 | /* margin-top: 20rpx; */ | 790 | /* margin-top: 20rpx; */ |
787 | -} | ||
788 | \ No newline at end of file | 791 | \ No newline at end of file |
792 | + | ||
793 | + position: relative;top: -10rpx; | ||
794 | +} | ||
795 | + | ||
796 | + | ||
797 | +@font-face { | ||
798 | + font-family: "iconfont_yan"; /* Project id 4449681 */ | ||
799 | + src: url('data:font/woff2;charset=utf-8;base64,d09GMgABAAAAAANUAA0AAAAAB4wAAAL+AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCQhEICoJYgj4LDAABNgIkAxIEIAWFAgdQG38GyB6D424J0UpZYooBbRj+ksfDf2P97pt5s18lmcPpoknEknhJRJJ5pURKIorVLWF/8k/fFWKMLamk8Er8bJV3au6kCdLWTXPif+CcvCJMnkvmj2+Pokq7RgIdD3bMoCih64UOehC/MH1w3m4lM1lHIeC3CUcLwH9TUgD/bIRhzAJFqFJIFGSKFxrlWTkCnoP3R5ck+ilaxf8Lz7n74WWw/X30fWxI9AjqTwQCAEsQKirmILCfocAcI0tASkH3WE/3SD+9CxAQHQIQBQUAEMBLRU8BDQxiAE+AD4AEQGpDQwMj4w6OJvmk9yrt+rrvNvPmJqv3JuP2duA6/eoqo+9Sd9F7Rpz7957s6vZO+453iO2j0sBry1DODK6/bEGwYWlbwmG/ecakRRqB5EzuBJv6Helicpa7BMFXsZi/MnMbSSSVsstk+rTWrapglURr5h8V13LVe9MVDdOw6QQHe5ap9hFwBoc24h7lPhIFJ8Kprw4RzjHxR6kjcb74uSognogKm96bbHx6O0waqOCSev149g6kTa8g318RrJLE/eyNP9e5UO2pVq2z/mzCprlPUQ0fd1PCw6iGPxffn/XzAAJBefP7qdDW779/KHWS7dIRdaWsoF8BQcOOvZUAPqXcb4ZMQCK5LB1Cc4gxKBg0iB6ASS+AAFNYEAj9zkCg6PMAAlW/pwKkfl8EaIZ8E6Cj3w9AYNDO2A8IDJmKF6rIAWwAHQ3j/NBi1FW0GoeBRHrRZtYc2jFuHx10xde4IRvxEELVKlesXiOXISnRQlUohWlVtNWDA3t24GQH9hoQQnKeCxeUq9RArVgt+Jet2uDVQ9QrytWqo8glERMQgRVd/2KBKCpwdLBWudo6nlKnUSWJevUqkFSohWmQRCTxiXJqahhJtVqYUrlS9QTgMiCxrrFSUl9fsQZ0RWDtJG3iP4LdAA/Tp/nhZISEKlJ2C5TmacAC3aiIzI5x0hBaj0H8soZQokSdaCnWKhXaysJmRbG2rkpRiG1yi+ooLaZUDAAA') format('woff2'), | ||
800 | + url('data:font/woff;charset=utf-8;base64,d09GRgABAAAAAAU8AA0AAAAAB4wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAFIAAAABoAAAAcohRq60dERUYAAAUAAAAAHgAAAB4AKQALT1MvMgAAAaAAAABGAAAAYEIBTpxjbWFwAAAB/AAAAEIAAAFCAA/veGdhc3AAAAT4AAAACAAAAAj//wADZ2x5ZgAAAkwAAAEsAAABWH3W0xtoZWFkAAABMAAAADAAAAA2JyyEpGhoZWEAAAFgAAAAHQAAACQHiQOFaG10eAAAAegAAAARAAAAEgxVAFVsb2NhAAACQAAAAAwAAAAMAEgArG1heHAAAAGAAAAAHgAAACABFABLbmFtZQAAA3gAAAFGAAACgl6CAQJwb3N0AAAEwAAAADYAAABQUf1A0HjaY2BkYGAAYqEpty7E89t8ZeBmYQCBR+wKdnA6lKGBeTXTaiCXg4EJJAoAB0UIyXjaY2BkYGBu+N/AEMPCAALMqxkYGVABCwBTpwMXAAAAeNpjYGRgYGBlsAdiEGACYi4gZGD4D+YzAAAPawFgAAB42mNgYWFgnMDAysDA1Ml0hoGBoR9CM75mMGLkAIoysDIzYAUBaa4pDAden3l9lrnhfwMDA/MdBiDJwIikRIGBEQCTww4iAAB42mNhgAAWCA5lCAUAAe4AtwAAAHjaY2BgYGaAYBkGRgYQsAHyGMF8FgYFIM0ChED+67P//wPJM///i5hDVTIwsjHAmAyMTECCiQEVMDIMewAAJFcIcgAAAAAAAAAAAAAASACseNotjzFLw0AUx9/LpYlIrVTTZJFD72yCBDrcpQ1UTUuhtQbqIHR1cUpNwbnTiZP9IF3yEbr6Ady6+xmci3fQB++/vN+D3x9smIMilaXgGFpAIQZA5rgURS/tIGFhlOGlHzQwEr0kZI7nB6yDSYaCotdAC1bb0Wj7Z2K13uX5Dj2Tay7ERAh+3WesPzVhzYuyLMzuY3WYyjATER8QHVDTPp9kY1VwCleQQB8ygHbqS+0TRqkx4U5krKQI3DAKubb1gwEaopt0DdPSYtwgqee2A4xwxh5y7Tl9ocXT4279/DMeasU7yc7O6xf6IIff9MjnAgltslvefCMTqWvTPbAN94vlu6CDD6Wc12Sh1AkjiItyJpvUFrxecx0a3Oie9pcc2+T+V39R+AdnzksMeNp9kM1Kw0AUhc/0T21BxILrWRVBSH+WpbtC3blwUddtOklbkkyYTAtdunXlA7j1MXwAn0Fw5YN4Gq8IFZqQyzfn3nNmJgAu8QmFn6eNa2GFU9wJV3CCWLhK/VG4Rn4RrqOFN+EG9Q/hJm7USLiFtnpmgqqdcdUp0/ascIGRcAXneBCuUrfCNfKTcB1XeBVuUH8XbmKKL+EWOmqJMRwMZvCsC2jMsWNdIWRuhqisHhg7M/Nmoec7vQptFtmM4r+pv9Y942JskDDacWniTTJzRy1HWlOmORQc2bc0+gjQo2xcsbKZ7ge9o/Zb2rMy4vCeBbY85oCqp1Hzc7SnpInEGF4hIWvkZW9NJaQeMNZkxv3+lWIbD7yPdORsqifc1iSJ1bmzaxN6Di/LPXIM0eUbHaQH5eFTjnmfD7vdSAKC0Kb4Bg9qcIcAAHjaY2BigAAuMMnIgA5YwaJMjEyMzIKViXlZmXnp8RWZiXnFGZnx+XCRysy85EQgnQ8ACQsOVgAAAAAAAf//AAIAAQAAAAwAAAAWAAAAAgABAAMABAABAAQAAAACAAAAAHjaY2BgYGQAgntsWnkg+hG7gh2MBgAurwQMAAA=') format('woff'), | ||
801 | + url('iconfont.ttf?999') format('truetype'); | ||
802 | +} | ||
803 | +.icon_yan{ | ||
804 | + font-family: "iconfont_yan" !important; | ||
805 | + font-style: normal; | ||
806 | + -webkit-font-smoothing: antialiased; | ||
807 | + -moz-osx-font-smoothing: grayscale; | ||
808 | +} | ||
809 | +.icon-yanjing_xianshi_o:before { | ||
810 | + content: "\ebcc"; | ||
811 | +} | ||
812 | +.icon-yanjing_yincang_o:before { | ||
813 | + content: "\ebcd"; | ||
814 | +} | ||
815 | + | ||
816 | +.fs36{ font-size: 36rpx} | ||
817 | + | ||
818 | + | ||
819 | + |
pages/user/order_list/order_list.js
@@ -1446,14 +1446,43 @@ Page({ | @@ -1446,14 +1446,43 @@ Page({ | ||
1446 | //-- 优惠促销的时候控制取价规则 -- | 1446 | //-- 优惠促销的时候控制取价规则 -- |
1447 | // gg.prom_type!=3 && gg.prom_type!=10 同时商品不是普通购买的时候,又参与优惠促销,阶梯促销 | 1447 | // gg.prom_type!=3 && gg.prom_type!=10 同时商品不是普通购买的时候,又参与优惠促销,阶梯促销 |
1448 | if((gg.prom_type!=3 && gg.prom_type!=10) || gg.discount_field==undefined || gg.discount_field==0 ){ | 1448 | if((gg.prom_type!=3 && gg.prom_type!=10) || gg.discount_field==undefined || gg.discount_field==0 ){ |
1449 | - if (card_field && gg[card_field] > 0) { | ||
1450 | - if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0; | ||
1451 | - if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | ||
1452 | 1449 | ||
1453 | - } else { | ||
1454 | - if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0; | ||
1455 | - if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | 1450 | + //判断一下活动是不是有参与订单促销,并且订单促销的活动是不是实收取价,2024-2-23 |
1451 | + let ordprom_price_type=0; | ||
1452 | + if(order.order_prom_id && good.prom_type==0){ | ||
1453 | + let p_rs= await getApp().request.promiseGet("/api/weshop/promorder/get/"+os.stoid+"/"+order.order_prom_id, {}); | ||
1454 | + if(p_rs && p_rs.data.code==0 && p_rs.data.data){ | ||
1455 | + let ord_p=p_rs.data.data; | ||
1456 | + if(ord_p && ord_p.discount_field>0){ | ||
1457 | + ordprom_price_type=ord_p.discount_field | ||
1458 | + } | ||
1459 | + } | ||
1460 | + } | ||
1461 | + if(ordprom_price_type>0){ | ||
1462 | + //-- 看一下订单促销的取价规则 -- | ||
1463 | + switch (ordprom_price_type){ | ||
1464 | + case 1: | ||
1465 | + if (good.goods_price != gg.shop_price) isok = 0; | ||
1466 | + break; | ||
1467 | + case 2: | ||
1468 | + if (good.goods_price != gg.market_price) isok = 0; | ||
1469 | + break; | ||
1470 | + } | ||
1471 | + | ||
1472 | + }else{ | ||
1473 | + if (card_field && gg[card_field] > 0) { | ||
1474 | + if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0; | ||
1475 | + if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | ||
1476 | + | ||
1477 | + } else { | ||
1478 | + if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0; | ||
1479 | + if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过 | ||
1480 | + } | ||
1456 | } | 1481 | } |
1482 | + | ||
1483 | + | ||
1484 | + | ||
1485 | + | ||
1457 | }else{ | 1486 | }else{ |
1458 | 1487 | ||
1459 | if(good.prom_type==3 || good.prom_type==10 ){ | 1488 | if(good.prom_type==3 || good.prom_type==10 ){ |