Commit 08d3358a0a0f5fb51d8fb709580c45dd071c64e5
1 parent
19842764
商品详情页、服务卡项详情页、个人中心联系客服修改
Showing
10 changed files
with
957 additions
and
230 deletions
app.wxss
... | ... | @@ -743,9 +743,17 @@ background: #ffe3e2; |
743 | 743 | /* 图标字体(ty) */ |
744 | 744 | @font-face { |
745 | 745 | font-family: 'iconfont'; /* Project id 2054717 */ |
746 | - src: url('//at.alicdn.com/t/font_2054717_o34jrbrtxpk.woff2?t=1645781927179') format('woff2'), | |
747 | - url('//at.alicdn.com/t/font_2054717_o34jrbrtxpk.woff?t=1645781927179') format('woff'), | |
748 | - url('//at.alicdn.com/t/font_2054717_o34jrbrtxpk.ttf?t=1645781927179') format('truetype'); | |
746 | + src: url('//at.alicdn.com/t/font_2054717_qbvqi1zioy.woff2?t=1646731629521') format('woff2'), | |
747 | + url('//at.alicdn.com/t/font_2054717_qbvqi1zioy.woff?t=1646731629521') format('woff'), | |
748 | + url('//at.alicdn.com/t/font_2054717_qbvqi1zioy.ttf?t=1646731629521') format('truetype'); | |
749 | +} | |
750 | + | |
751 | +.icon-kefu1:before { | |
752 | + content: "\e666"; | |
753 | +} | |
754 | + | |
755 | +.icon-dianhua:before { | |
756 | + content: "\e623"; | |
749 | 757 | } |
750 | 758 | |
751 | 759 | .icon-infofill:before { | ... | ... |
packageA/pages/goodsInfo/goodsInfo.js
... | ... | @@ -8,6 +8,7 @@ var t = require("../../../utils/util.js"), |
8 | 8 | oo = s.globalData, |
9 | 9 | o = s.globalData.setting, |
10 | 10 | os = o; |
11 | + | |
11 | 12 | let self = null; |
12 | 13 | |
13 | 14 | //评价加载更多 |
... | ... | @@ -50,7 +51,7 @@ Page({ |
50 | 51 | supportPageScroll: !1, |
51 | 52 | address: { |
52 | 53 | address: "", |
53 | - district: 0 | |
54 | + district: 0, | |
54 | 55 | }, |
55 | 56 | shipping: "", |
56 | 57 | shippingCost: 0, |
... | ... | @@ -199,15 +200,17 @@ Page({ |
199 | 200 | sales_rules:1, //默认是线上销售 |
200 | 201 | |
201 | 202 | wait_for_user_store:null, |
202 | - poster:null, //自定义海报 | |
203 | - share_b_img:'', //自定义分享的背景 | |
204 | - showPoster: false, | |
205 | - hui_condition:null, | |
206 | - sto_sele_name_1:'',//分享的门店名称 | |
203 | + poster:null, //自定义海报 | |
204 | + share_b_img:'', //自定义分享的背景 | |
205 | + showPoster: false, | |
206 | + hui_condition:null, | |
207 | + sto_sele_name_1:'',//分享的门店名称 | |
207 | 208 | |
208 | 209 | // 秒杀 |
209 | 210 | prom_st: 1, |
210 | 211 | prom_r_null: 0, |
212 | + | |
213 | + hiddenCS: true, //控制客服操作菜单显示和控制 | |
211 | 214 | }, |
212 | 215 | |
213 | 216 | //------初始化加载---------- |
... | ... | @@ -261,10 +264,10 @@ Page({ |
261 | 264 | first_leader=gid_str[1]; |
262 | 265 | } |
263 | 266 | //-- 如果有room_id的获取 -- |
264 | - if(gid_str.length>2 && gid_str[2]){ | |
267 | + if(gid_str.length>2 && gid_str[2]) { | |
265 | 268 | room_id=gid_str[2]; |
266 | 269 | room_user_share=1; |
267 | - } | |
270 | + }; | |
268 | 271 | }; |
269 | 272 | |
270 | 273 | ee.setData({ gid: gid}); |
... | ... | @@ -309,7 +312,7 @@ Page({ |
309 | 312 | is_show_gb: 1 |
310 | 313 | }); |
311 | 314 | } |
312 | - console.log(e); | |
315 | + // console.log(e); | |
313 | 316 | var json_d = JSON.parse(e.switch_list); |
314 | 317 | ee.setData({ |
315 | 318 | store_config: e, |
... | ... | @@ -318,6 +321,7 @@ Page({ |
318 | 321 | is_newsales_rules: json_d.is_newsales_rules |
319 | 322 | }); |
320 | 323 | ee.init(gid); |
324 | + | |
321 | 325 | //------几人评价------- |
322 | 326 | //n.init(th, "", "comments"); |
323 | 327 | |
... | ... | @@ -370,7 +374,7 @@ Page({ |
370 | 374 | |
371 | 375 | //获取用户的默认门店 |
372 | 376 | getApp().get_user_store(function(e) { |
373 | - if(!e) { | |
377 | + if(!e) { | |
374 | 378 | th.data.fir_def_store={}; //赋值空对象 |
375 | 379 | return false; |
376 | 380 | } |
... | ... | @@ -431,7 +435,7 @@ Page({ |
431 | 435 | appd.lat=that.data.lat; |
432 | 436 | appd.lon=that.data.lon; |
433 | 437 | |
434 | - }else{ | |
438 | + } else { | |
435 | 439 | if (e) { |
436 | 440 | e.distance = null; |
437 | 441 | that.data.fir_def_store=e; |
... | ... | @@ -456,7 +460,7 @@ Page({ |
456 | 460 | |
457 | 461 | setTimeout(()=>{ |
458 | 462 | wx.createSelectorQuery().selectAll(".showArea, .hideArea").boundingClientRect(res => { |
459 | - // console.log('node@@@@@@@', res); | |
463 | + | |
460 | 464 | if(res.length != 0) { |
461 | 465 | this.setData({ |
462 | 466 | showFold: res[0].height < res[1].height, |
... | ... | @@ -517,7 +521,9 @@ Page({ |
517 | 521 | |
518 | 522 | if(prom_type) { // 进入商品详情页地址传参有带goods_id、prom_type、prom_id参数, 即从秒杀入口进入 |
519 | 523 | let prom_id = this.data.options.prom_id; |
524 | + // 检查活动是否开始 | |
520 | 525 | this.check_prom(goods_id, prom_type, prom_id); |
526 | + | |
521 | 527 | } else { // 从非秒杀入口进入,地址不带prom_type、prom_id参数 |
522 | 528 | getApp().request.promiseGet('/api/weshop/activitylist/getGoodActInfo', { |
523 | 529 | data: { |
... | ... | @@ -537,20 +543,16 @@ Page({ |
537 | 543 | let prom_id = result[0].act_id; |
538 | 544 | this.setData({ |
539 | 545 | 'options.prom_type': prom_type, |
546 | + 'options.prom_id': prom_id, | |
540 | 547 | }); |
548 | + // 检查活动是否开始 | |
541 | 549 | this.check_prom(goods_id, prom_type, prom_id); |
542 | 550 | } else if(resLength > 1) { //如果数组长度大于1,表示当前商品参加多个活动,以列表形式显示多活动 |
543 | 551 | this.setData({ |
544 | 552 | actList: res.data.data, |
545 | 553 | }); |
546 | 554 | }; |
547 | - | |
548 | - // console.log('!!!!!!~~~~~~~~~prom~~~~~~~~~~!!!!!!'); | |
549 | - | |
550 | - // this.setData({ | |
551 | - // prom, | |
552 | - // }); | |
553 | - | |
555 | + | |
554 | 556 | }; |
555 | 557 | }); |
556 | 558 | }; |
... | ... | @@ -669,8 +671,6 @@ Page({ |
669 | 671 | |
670 | 672 | |
671 | 673 | |
672 | - | |
673 | - | |
674 | 674 | |
675 | 675 | i.get("/api/weshop/serviceCard/get/" + o.stoid + "/" + ee.data.gid, { |
676 | 676 | failRollback: !0, |
... | ... | @@ -744,6 +744,9 @@ Page({ |
744 | 744 | }; |
745 | 745 | } |
746 | 746 | }); |
747 | + | |
748 | + | |
749 | + | |
747 | 750 | this.data.enterAddressPage && (this.data.enterAddressPage = !1); |
748 | 751 | this.get_sto(); |
749 | 752 | |
... | ... | @@ -815,8 +818,23 @@ Page({ |
815 | 818 | activeCategoryId: 1 |
816 | 819 | }); |
817 | 820 | }, |
818 | - | |
819 | - | |
821 | + | |
822 | + //获取redis中的数量 | |
823 | + async getactLen(func) { | |
824 | + var r_num = 0, | |
825 | + prom_type = this.data.prom_type, | |
826 | + prom_id = this.data.prom_id; | |
827 | + await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, { | |
828 | + 1: 1 | |
829 | + }).then(res => { | |
830 | + var em = res; | |
831 | + if (em.data.code == 0) { | |
832 | + r_num = em.data.data; | |
833 | + } | |
834 | + }) | |
835 | + func(r_num); | |
836 | + }, | |
837 | + | |
820 | 838 | //------------加入购物车-------------- |
821 | 839 | addCart: function(t) { |
822 | 840 | var th = this; |
... | ... | @@ -828,10 +846,61 @@ Page({ |
828 | 846 | open_ind_store: ind |
829 | 847 | }); |
830 | 848 | |
831 | - if(!th.data.sto_sele_name){ | |
849 | + if(!th.data.sto_sele_name) { | |
832 | 850 | getApp().my_warnning('请选择门店', 1, th, 450); |
833 | 851 | return false; |
834 | 852 | } |
853 | + | |
854 | + | |
855 | + | |
856 | + //000000 | |
857 | + //如果是秒杀的话,要看redis够不够 | |
858 | + // if (this.data.prom_type == 1) { | |
859 | + | |
860 | + // if (this.data.openSpecModal_flash_normal) { | |
861 | + // this.data.is_normal=1; //是普通购买 | |
862 | + // return false; | |
863 | + // } | |
864 | + | |
865 | + | |
866 | + // this.getactLen(function (num) { | |
867 | + // if (num < th.data.goodsInputNum) { | |
868 | + // getApp().my_warnning("活动库存不足!", 0, th); | |
869 | + // return false; | |
870 | + // } else { | |
871 | + // // th.add_cart_func(t); | |
872 | + // } | |
873 | + // }); | |
874 | + // } else { | |
875 | + // // th.add_cart_func(t); | |
876 | + // } | |
877 | + //000000 | |
878 | + | |
879 | + | |
880 | + if(this.data.options.prom_type == 1) { | |
881 | + var t = th.data.goodsInputNum; | |
882 | + th.data.sele_g.viplimited = th.data.sele_g.buy_limit; | |
883 | + if (th.data.sele_g.viplimited > 0) { | |
884 | + var gd_buy_num = th.data.sele_g.buy_num; | |
885 | + | |
886 | + if (t + gd_buy_num >= th.data.sele_g.viplimited) { | |
887 | + wx.showModal({ | |
888 | + title: '超出商品限购', | |
889 | + }); | |
890 | + | |
891 | + // var num = th.data.sele_g.viplimited - gd_buy_num; | |
892 | + // if (num < 0) num = th.data.sele_g.viplimited; | |
893 | + th.setData({goodsInputNum: 0}); | |
894 | + return false; | |
895 | + } | |
896 | + }; | |
897 | + }; | |
898 | + | |
899 | + | |
900 | + | |
901 | + | |
902 | + | |
903 | + | |
835 | 904 | |
836 | 905 | |
837 | 906 | if(action=="buy"){ |
... | ... | @@ -855,7 +924,10 @@ Page({ |
855 | 924 | // console.log('newd++++++++', newd); |
856 | 925 | th.buyNow(newd); |
857 | 926 | } else { |
858 | - | |
927 | + | |
928 | + | |
929 | + | |
930 | + | |
859 | 931 | var newd = { |
860 | 932 | service_id: th.data.data.id, |
861 | 933 | service_sn:th.data.data.service_sn, |
... | ... | @@ -866,7 +938,7 @@ Page({ |
866 | 938 | store_id:os.stoid, |
867 | 939 | money:th.data.data.shop_price |
868 | 940 | }; |
869 | - if(getApp().globalData.guide_id){ | |
941 | + if(getApp().globalData.guide_id) { | |
870 | 942 | newd['guide_id'] = getApp().globalData.guide_id; |
871 | 943 | newd['guide_type']=0; |
872 | 944 | } |
... | ... | @@ -926,14 +998,16 @@ Page({ |
926 | 998 | } |
927 | 999 | |
928 | 1000 | |
1001 | + | |
1002 | + | |
929 | 1003 | }, |
930 | 1004 | |
931 | 1005 | //----------立即购买----------- |
932 | 1006 | buyNow: function(e) { |
933 | - getApp().globalData.service_now=e; | |
934 | - wx.redirectTo({ | |
935 | - url: "/packageA/pages/cart2_ser/cart2_ser", | |
936 | - }); | |
1007 | + getApp().globalData.service_now=e; | |
1008 | + wx.redirectTo({ | |
1009 | + url: "/packageA/pages/cart2_ser/cart2_ser", | |
1010 | + }); | |
937 | 1011 | }, |
938 | 1012 | //----------增加购买数量----------- |
939 | 1013 | addCartNum: function(t) { |
... | ... | @@ -950,9 +1024,91 @@ Page({ |
950 | 1024 | |
951 | 1025 | //------检查数量是不是超出限购------ |
952 | 1026 | checkCartNum: function(t) { |
1027 | + | |
953 | 1028 | if(t<=0) return false; |
954 | - var th = this; | |
955 | - th.setData({goodsInputNum:t}) | |
1029 | + var th = this; | |
1030 | + th.setData({goodsInputNum:t}); | |
1031 | + | |
1032 | + | |
1033 | + var th = this; | |
1034 | + this.get_buy_num(this.data.sele_g, async function () { | |
1035 | + th.data.sele_g.viplimited = th.data.sele_g.buy_limit; | |
1036 | + | |
1037 | + //--判断商品是否超出限购-- | |
1038 | + // if (th.data.g_buy_num != null && th.data.sele_g.viplimited > 0) { | |
1039 | + if (th.data.sele_g.viplimited > 0) { | |
1040 | + var gd_buy_num = th.data.sele_g.buy_num; | |
1041 | + | |
1042 | + if (t + gd_buy_num > th.data.sele_g.viplimited) { | |
1043 | + wx.showModal({ | |
1044 | + title: '超出商品限购', | |
1045 | + }); | |
1046 | + | |
1047 | + var num = th.data.sele_g.viplimited - gd_buy_num; | |
1048 | + if (num < 0) num = 0; | |
1049 | + th.setData({goodsInputNum: num}) | |
1050 | + return false; | |
1051 | + } | |
1052 | + } | |
1053 | + | |
1054 | + //如果是普通购买的情况下 | |
1055 | + if(th.data.openSpecModal_flash_normal) th.data.is_normal=1; | |
1056 | + | |
1057 | + //--判断商品是否超出活动限购-- | |
1058 | + if (th.data.prom_buy_num != -1 && th.data.prom_buy_limit > 0 && !th.data.is_normal) { | |
1059 | + if (t + th.data.prom_buy_num > th.data.prom_buy_limit) { | |
1060 | + wx.showModal({ | |
1061 | + title: '超出商品活动限购', | |
1062 | + }); | |
1063 | + | |
1064 | + var num = th.data.prom_buy_limit - th.data.prom_buy_num; | |
1065 | + if (num < 0) num = 0; | |
1066 | + th.setData({goodsInputNum: num}) | |
1067 | + return false; | |
1068 | + } | |
1069 | + } | |
1070 | + | |
1071 | + if ((th.data.sele_g.prom_type == 1 || th.data.sele_g.prom_type == 6) && !th.data.is_normal) { | |
1072 | + var redis_num = 0; | |
1073 | + //------判断活动是否抢光----- | |
1074 | + await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + | |
1075 | + os.stoid + "/" + th.data.sele_g.prom_type + "/" + th.data.sele_g.prom_id, { | |
1076 | + 1: 1 | |
1077 | + }).then(res => { | |
1078 | + redis_num = res.data.data; | |
1079 | + }); | |
1080 | + | |
1081 | + if (t > redis_num) { | |
1082 | + wx.showModal({ | |
1083 | + title: '超出商品活动库存', | |
1084 | + }); | |
1085 | + th.setData({goodsInputNum: redis_num}) | |
1086 | + return false; | |
1087 | + } | |
1088 | + } | |
1089 | + var e = th.data.sele_g.store_count; | |
1090 | + var p_type = th.data.prom_type; //&& p_type!=1 && p_type!=4 | |
1091 | + if (th.data.sales_rules == 2 && (p_type != 1 && p_type != 4 && p_type != 6 || th.data.openSpecModal_inte_normal == 1 || th.data.is_normal == 1)) { | |
1092 | + if (!th.data.def_pick_store) { | |
1093 | + wx.showModal({title: '请选择门店',}); | |
1094 | + return false; | |
1095 | + } else { | |
1096 | + e = th.data.def_pick_store.CanOutQty; | |
1097 | + } | |
1098 | + } | |
1099 | + if (!e) e = 0; | |
1100 | + //库存不足,不增加 | |
1101 | + if (e < t) { | |
1102 | + wx.showModal({title: '库存不足',}); | |
1103 | + if (e < 0) e = 0; | |
1104 | + th.setData({goodsInputNum: e}); | |
1105 | + return false; | |
1106 | + } | |
1107 | + t > e || 0 == e ? t = e : t < 1 && (t = 1); | |
1108 | + th.setData({goodsInputNum: t}); | |
1109 | + // th.is_show_more_buy(); | |
1110 | + | |
1111 | + }) | |
956 | 1112 | }, |
957 | 1113 | |
958 | 1114 | |
... | ... | @@ -964,7 +1120,6 @@ Page({ |
964 | 1120 | }, |
965 | 1121 | |
966 | 1122 | openSpecModel: function(t) { |
967 | - // console.log('****ttttttt***', t); | |
968 | 1123 | var th=this; |
969 | 1124 | var open_store = t.currentTarget.dataset.ind; |
970 | 1125 | this.setData({ |
... | ... | @@ -1045,29 +1200,57 @@ Page({ |
1045 | 1200 | }); |
1046 | 1201 | } |
1047 | 1202 | } |
1048 | - }, | |
1049 | - | |
1050 | - //---------联系客服------------ | |
1051 | - contactService: function() { | |
1052 | - s.getConfig(function(t) { | |
1053 | - if (t.store_tel == undefined) { | |
1054 | - getApp().request.get("/api/weshop/store/get/" + os.stoid, { | |
1055 | - isShowLoading: 1, | |
1056 | - data: {}, | |
1057 | - success: function(rs) { | |
1058 | - getApp().globalData.config = rs.data.data; | |
1059 | - if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) { | |
1060 | - getApp().my_warnning("商家未设置电话", 0, th); | |
1061 | - return false; | |
1062 | - } | |
1063 | - s.confirmBox("请联系客服:" + rs.data.data.store_tel); | |
1064 | - } | |
1065 | - }) | |
1066 | - } else { | |
1067 | - s.confirmBox("请联系客服:" + t.store_tel); | |
1068 | - } | |
1069 | - }); | |
1070 | - }, | |
1203 | + }, | |
1204 | + //---------联系客服------------ | |
1205 | + contactService: function () { | |
1206 | + this.getTel() | |
1207 | + .then(() => { | |
1208 | + if(self.data.store_tel) { | |
1209 | + wx.showModal({ | |
1210 | + title: '联系客服', | |
1211 | + content: '客服热线:' + self.data.store_tel, | |
1212 | + confirmText: '拨打', | |
1213 | + success(res) { | |
1214 | + if(res.confirm) { | |
1215 | + wx.makePhoneCall({ | |
1216 | + phoneNumber: self.data.store_tel, | |
1217 | + }) | |
1218 | + }; | |
1219 | + }, | |
1220 | + }); | |
1221 | + }; | |
1222 | + }); | |
1223 | + }, | |
1224 | + // 获取客服电话 | |
1225 | + getTel() { | |
1226 | + return new Promise((resolve, reject) => { | |
1227 | + s.getConfig(function (t) { | |
1228 | + if (t.store_tel == undefined) { | |
1229 | + getApp().request.get("/api/weshop/store/get/" + os.stoid, { | |
1230 | + isShowLoading: 1, | |
1231 | + data: {}, | |
1232 | + success: function (rs) { | |
1233 | + getApp().globalData.config = rs.data.data; | |
1234 | + if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) { | |
1235 | + getApp().my_warnning("商家未设置电话", 0, th); | |
1236 | + return false; | |
1237 | + } | |
1238 | + self.setData({ | |
1239 | + store_tel: rs.data.data.store_tel, | |
1240 | + }); | |
1241 | + // s.confirmBox("请联系客服:" + rs.data.data.store_tel); | |
1242 | + } | |
1243 | + }) | |
1244 | + } else { | |
1245 | + self.setData({ | |
1246 | + store_tel: t.store_tel, | |
1247 | + }); | |
1248 | + // s.confirmBox("请联系客服:" + t.store_tel); | |
1249 | + }; | |
1250 | + resolve(); | |
1251 | + }); | |
1252 | + }); | |
1253 | + }, | |
1071 | 1254 | //-------获取购物车数量---------- |
1072 | 1255 | requestCardNum: function() { |
1073 | 1256 | var t = this; |
... | ... | @@ -2919,37 +3102,44 @@ Page({ |
2919 | 3102 | }, |
2920 | 3103 | |
2921 | 3104 | |
3105 | + //获取redis中的数量 | |
3106 | + async getactLen(func) { | |
3107 | + var r_num = 0, | |
3108 | + prom_type = this.data.prom_type, | |
3109 | + prom_id = this.data.prom_id; | |
3110 | + await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" + os.stoid + "/" + prom_type + "/" + prom_id, { | |
3111 | + 1: 1 | |
3112 | + }).then(res => { | |
3113 | + var em = res; | |
3114 | + if (em.data.code == 0) { | |
3115 | + r_num = em.data.data; | |
3116 | + } | |
3117 | + }) | |
3118 | + func(r_num); | |
3119 | + }, | |
3120 | + | |
3121 | + | |
2922 | 3122 | |
2923 | 3123 | |
2924 | 3124 | //--------检查是否活动,活动是否开始,或者是否结束------- |
2925 | 3125 | async check_prom(gid, prom_type, prom_id) { |
2926 | - console.log('check_prom'); | |
2927 | 3126 | var ee = this, th = ee; |
2928 | 3127 | var user_id = getApp().globalData.user_id; |
2929 | 3128 | if (!user_id) user_id = 0; |
2930 | - | |
2931 | - // if (prom_type == 3 || prom_type == 0 || prom_type == 5 || prom_type == 7 || prom_type == 9 || prom_type == 10) { | |
2932 | - // this.setData({ | |
2933 | - // prom_type: 0, isshow: 1, | |
2934 | - // }); | |
2935 | - // return false; | |
2936 | - // } | |
2937 | - | |
2938 | - | |
2939 | - | |
2940 | - // if (prom_type == 1 && prom_id == 0) { | |
2941 | - // this.setData({ | |
2942 | - // prom_type: 0, isshow: 1, | |
2943 | - // }); | |
2944 | - | |
2945 | - // //获取门店 | |
2946 | - // this.get_sto(); | |
2947 | - // this.get_sku(o.stoid, this.data.data, gid); | |
2948 | - // this.check_has_flash(); | |
2949 | - // this.data.is_normal = 1; | |
2950 | - // this.check_is_youhui(gid, 1); | |
2951 | - // return false; | |
2952 | - // } | |
3129 | + | |
3130 | + if (prom_type == 1 && prom_id == 0) { | |
3131 | + // this.setData({ | |
3132 | + // prom_type: 0, isshow: 1, | |
3133 | + // }); | |
3134 | + | |
3135 | + // //获取门店 | |
3136 | + // this.get_sto(); | |
3137 | + // this.get_sku(o.stoid, this.data.data, gid); | |
3138 | + // this.check_has_flash(); | |
3139 | + // this.data.is_normal = 1; | |
3140 | + // this.check_is_youhui(gid, 1); | |
3141 | + // return false; | |
3142 | + } | |
2953 | 3143 | |
2954 | 3144 | //if (prom_type != 3 && prom_type!=0){ |
2955 | 3145 | //---判断秒杀---- |
... | ... | @@ -2959,15 +3149,27 @@ Page({ |
2959 | 3149 | 1: 1 |
2960 | 3150 | }).then(res => { |
2961 | 3151 | var em = res; |
2962 | - if (res.data.code == 0) { | |
2963 | - // console.log('!!!!!!res!!!!', res); | |
2964 | - if (res.data.data <= 0) ee.setData({ | |
2965 | - prom_r_null: 1 | |
2966 | - }); | |
3152 | + if (em.data.code == 0) { | |
3153 | + | |
3154 | + if (em.data.data <= 0) { | |
3155 | + wx.showModal({ | |
3156 | + title: '来晚了,已被抢光!', | |
3157 | + }); | |
3158 | + | |
3159 | + ee.setData({ | |
3160 | + prom_r_null: 1, | |
3161 | + goodsInputNum: 0 | |
3162 | + }); | |
3163 | + | |
3164 | + // th.setData({goodsInputNum: redis_num}) | |
3165 | + }; | |
2967 | 3166 | //拿取价格并且判断时间-- |
2968 | 3167 | getApp().request.get("/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + prom_id, { |
2969 | 3168 | success: function (t) { |
2970 | - // console.log('!!!!!!t!!!!', t); | |
3169 | + th.setData({ | |
3170 | + sele_g: t.data.data, | |
3171 | + }); | |
3172 | + | |
2971 | 3173 | if (t.data.code != 0) { |
2972 | 3174 | ee.get_normal(gid); |
2973 | 3175 | return false; |
... | ... | @@ -2994,7 +3196,6 @@ Page({ |
2994 | 3196 | var prom_start_time = ut.formatTime(t.data.data.start_time, "yyyy-MM-dd hh:mm:ss"); |
2995 | 3197 | |
2996 | 3198 | ee.setData({ |
2997 | - 'data.shop_price': t.data.data.user_price, | |
2998 | 3199 | prom_price: t.data.data.user_price, |
2999 | 3200 | prom_type: 1, |
3000 | 3201 | prom_id: prom_id, |
... | ... | @@ -3011,8 +3212,7 @@ Page({ |
3011 | 3212 | var endTime1 = t.data.data.start_time; |
3012 | 3213 | if (endTime1 > newTime) { |
3013 | 3214 | ee.setData({ |
3014 | - prom_time_text: '距秒杀开始还有', | |
3015 | - prom_st: 0, | |
3215 | + prom_time_text: '距秒杀开始还有' | |
3016 | 3216 | }) |
3017 | 3217 | ee.countDown(endTime1, 0); |
3018 | 3218 | } else { |
... | ... | @@ -3026,60 +3226,60 @@ Page({ |
3026 | 3226 | } |
3027 | 3227 | |
3028 | 3228 | //如果是进行中的话 |
3029 | - // if (endTime1 < newTime) { | |
3030 | - // //-- 获取秒杀活动的多少规格 -- | |
3031 | - // ee.get_more_flahs(function (list) { | |
3032 | - // if (list && list.length > 1) { | |
3033 | - | |
3034 | - // var n_item = list[0]; | |
3035 | - // var ind = list.findIndex(function (ele) { | |
3036 | - // return ele.goods_id == ee.data.data.goods_id; | |
3037 | - // }) | |
3038 | - // if (ind < 0) return false; | |
3039 | - // if (ind > 0) { | |
3040 | - // n_item = JSON.parse(JSON.stringify(list[ind])); | |
3041 | - // list.splice(ind, 1); | |
3042 | - // list.unshift(n_item); | |
3043 | - // } | |
3044 | - | |
3045 | - // ee.data.sele_g.viplimited = n_item.viplimited; | |
3046 | - // ee.data.data.viplimited = n_item.viplimited; | |
3047 | - | |
3048 | - // var gb = 1; | |
3049 | - // //-- 显示多规格 -- | |
3050 | - // for (let i in list) { | |
3051 | - // let item = list[i]; | |
3052 | - // var gg = ""; | |
3053 | - // if (item.goods_spec == "null" || item.goods_spec == null) item.goods_spec = ""; | |
3054 | - // if (item.goods_color == "null" || item.goods_color == null) item.goods_color = ""; | |
3055 | - | |
3056 | - // if (item.goods_spec != "" && item.goods_color != "") { | |
3057 | - // gg = item.goods_spec + "/" + item.goods_color; | |
3058 | - // } else if (item.goods_spec != "" || item.goods_color != "") { | |
3059 | - // gg = item.goods_spec + item.goods_color; | |
3060 | - // } else { | |
3061 | - // gg = "规格" + gb; | |
3062 | - // gb++; | |
3063 | - // } | |
3064 | - // item.gg = gg; | |
3065 | - // item.prom_id = item.prom_id; | |
3066 | - // item.prom_type = 1; | |
3067 | - // } | |
3068 | - | |
3069 | - // ee.setData({ | |
3070 | - // sku_g: list, | |
3071 | - // }); | |
3072 | - | |
3073 | - // } | |
3074 | - // }) | |
3075 | - // } | |
3229 | + if (endTime1 < newTime) { | |
3230 | + //-- 获取秒杀活动的多少规格 -- | |
3231 | + ee.get_more_flahs(function (list) { | |
3232 | + if (list && list.length > 1) { | |
3233 | + | |
3234 | + var n_item = list[0]; | |
3235 | + var ind = list.findIndex(function (ele) { | |
3236 | + return ele.goods_id == ee.data.data.goods_id; | |
3237 | + }) | |
3238 | + if (ind < 0) return false; | |
3239 | + if (ind > 0) { | |
3240 | + n_item = JSON.parse(JSON.stringify(list[ind])); | |
3241 | + list.splice(ind, 1); | |
3242 | + list.unshift(n_item); | |
3243 | + } | |
3244 | + | |
3245 | + ee.data.sele_g.viplimited = n_item.viplimited; | |
3246 | + ee.data.data.viplimited = n_item.viplimited; | |
3247 | + | |
3248 | + var gb = 1; | |
3249 | + //-- 显示多规格 -- | |
3250 | + for (let i in list) { | |
3251 | + let item = list[i]; | |
3252 | + var gg = ""; | |
3253 | + if (item.goods_spec == "null" || item.goods_spec == null) item.goods_spec = ""; | |
3254 | + if (item.goods_color == "null" || item.goods_color == null) item.goods_color = ""; | |
3255 | + | |
3256 | + if (item.goods_spec != "" && item.goods_color != "") { | |
3257 | + gg = item.goods_spec + "/" + item.goods_color; | |
3258 | + } else if (item.goods_spec != "" || item.goods_color != "") { | |
3259 | + gg = item.goods_spec + item.goods_color; | |
3260 | + } else { | |
3261 | + gg = "规格" + gb; | |
3262 | + gb++; | |
3263 | + } | |
3264 | + item.gg = gg; | |
3265 | + item.prom_id = item.prom_id; | |
3266 | + item.prom_type = 1; | |
3267 | + } | |
3268 | + | |
3269 | + ee.setData({ | |
3270 | + sku_g: list, | |
3271 | + }); | |
3272 | + | |
3273 | + } | |
3274 | + }) | |
3275 | + } | |
3076 | 3276 | |
3077 | 3277 | } |
3078 | 3278 | }); |
3079 | 3279 | } |
3080 | 3280 | }) |
3081 | 3281 | } |
3082 | - | |
3282 | + | |
3083 | 3283 | }, |
3084 | 3284 | |
3085 | 3285 | |
... | ... | @@ -3088,51 +3288,194 @@ Page({ |
3088 | 3288 | let prom_type = e.currentTarget.dataset.promtype; |
3089 | 3289 | let prom_id = e.currentTarget.dataset.promid; |
3090 | 3290 | let goods_id = this.data.data.goods_id; |
3091 | - let url = `/packageA/pages/goodsInfo/goodsInfo?goods_id=${goods_id}&prom_type=${prom_type}&prom_id=${prom_id}`; | |
3092 | - // console.log('url~~~~', url); | |
3291 | + let url = `/packageA/pages/goodsInfo/goodsInfo?goods_id=${goods_id}&prom_type=${prom_type}&prom_id=${prom_id}`;s | |
3093 | 3292 | getApp().goto(url); |
3094 | 3293 | }, |
3095 | 3294 | |
3096 | 3295 | |
3097 | 3296 | |
3098 | - | |
3099 | - //-- 检验商品的活动情况 -- | |
3100 | - check_gd_prom_new: function (func) { | |
3101 | - var th = this; | |
3297 | + //获取更多秒杀 | |
3298 | + get_more_flahs: async function (func) { | |
3299 | + var f_more = false; | |
3102 | 3300 | var user_id = getApp().globalData.user_id; |
3103 | 3301 | if (!user_id) user_id = 0; |
3104 | 3302 | |
3105 | - var url = '/api/weshop/activitylist/listGoodActInfo2'; | |
3106 | - var req_d = { | |
3107 | - "store_id": os.stoid, | |
3108 | - "goods_id": this.data.gid, | |
3109 | - "user_id": user_id, | |
3303 | + var url = "/api/weshop/goods/listSkuFlash?store_id=" + os.stoid + "&goods_id=" + this.data.data.goods_id + "&user_id=" + user_id; | |
3304 | + //获取秒杀的多规格 | |
3305 | + await getApp().request.promiseGet(url, {}).then(res => { | |
3306 | + if (res.data.code == 0 && res.data.data && res.data.data.length > 0) { | |
3307 | + f_more = res.data.data; | |
3308 | + } | |
3309 | + }) | |
3310 | + if (!f_more) { | |
3311 | + func(false); | |
3312 | + return false; | |
3110 | 3313 | } |
3111 | - getApp().request.get(url, { | |
3112 | - data: req_d, | |
3113 | - success: function (e) { | |
3114 | - if (e.data.code == 0 && e.data.data && e.data.data.length > 0) { | |
3115 | - var arr = e.data.data; | |
3116 | - var arr2 = arr.filter(function (e) { | |
3117 | - return e.s_time < ut.gettimestamp(); | |
3118 | - }) | |
3119 | - //-- 如果只有一个活动的话 -- | |
3120 | - if (arr.length == 1) { | |
3121 | - th.data.prom_type = arr[0].prom_type; | |
3122 | - th.data.prom_id = arr[0].act_id; | |
3123 | - } | |
3124 | - //-- 如果只有一个进行中的活动的话 -- | |
3125 | - else if (arr2.length == 1) { | |
3126 | - th.data.prom_type = arr2[0].prom_type; | |
3127 | - th.data.prom_id = arr2[0].act_id; | |
3314 | + //-- 秒杀的价格要更新 -- | |
3315 | + for (let i in f_more) { | |
3316 | + | |
3317 | + let item = f_more[i]; | |
3318 | + f_more[i].prom_id = item.act_id; | |
3319 | + f_more[i].prom_type = 1; | |
3320 | + if (item.goods_id == this.data.data.goods_id) { | |
3321 | + continue; | |
3322 | + } | |
3323 | + var url = "/api/ms/flash_sale/getNew/" + os.stoid + "/" + user_id + "/" + item.act_id; | |
3324 | + await getApp().request.promiseGet(url, {}).then(rs => { | |
3325 | + if (rs.data.code == 0) { | |
3326 | + f_more[i].price = rs.data.data.user_price; | |
3327 | + | |
3328 | + } | |
3329 | + }) | |
3330 | + } | |
3331 | + func(f_more); | |
3332 | + | |
3333 | + }, | |
3334 | + | |
3335 | + | |
3336 | + | |
3337 | + | |
3338 | + | |
3339 | + | |
3340 | + //-------------获取购买数量的总函数---------------- | |
3341 | + get_buy_num: function (gd, func) { | |
3342 | + | |
3343 | + var th = this, | |
3344 | + user_id = getApp().globalData.user_id; | |
3345 | + | |
3346 | + | |
3347 | + //----获取商品购买数---- | |
3348 | + getApp().request.get("/api/weshop/ordergoods/getUserBuyGoodsNum", { | |
3349 | + data: { | |
3350 | + store_id: os.stoid, | |
3351 | + user_id: user_id, | |
3352 | + goods_id: this.data.gid, | |
3353 | + }, | |
3354 | + success: function (t) { | |
3355 | + if (t.data.code == 0) { | |
3356 | + var g_buy_num = t.data.data.goodsbuynum; | |
3357 | + | |
3358 | + // 如果是秒杀的时候 | |
3359 | + // if (th.data.prom_type == 0 && gd.prom_type == 1) { | |
3360 | + // gd.prom_type = 0; | |
3361 | + // } | |
3362 | + | |
3363 | + //----获取活动购买数---- | |
3364 | + getApp().request.get("/api/weshop/ordergoods/getUserBuyGoodsNum", { | |
3365 | + data: { | |
3366 | + store_id: os.stoid, | |
3367 | + user_id: user_id, | |
3368 | + goods_id: th.data.gid, | |
3369 | + prom_type: th.data.prom_type, | |
3370 | + prom_id: th.data.prom_id | |
3371 | + }, | |
3372 | + //-----获取----- | |
3373 | + success: function (tt) { | |
3374 | + if (tt.data.code == 0) { | |
3375 | + th.setData({ | |
3376 | + prom_buy_num: tt.data.data.goodsbuynum, | |
3377 | + }); | |
3378 | + "function" == typeof func && func(); | |
3379 | + } | |
3380 | + } | |
3381 | + }); | |
3382 | + | |
3383 | + | |
3128 | 3384 | } |
3385 | + }, | |
3386 | + }); | |
3387 | + }, | |
3388 | + | |
3389 | + | |
3390 | + | |
3391 | + | |
3392 | + | |
3393 | + // 促销 -> 送礼包 -> 查看详情 | |
3394 | + viewLbDetails(e) { | |
3395 | + let id = e.currentTarget.dataset.id; // 获取礼包id | |
3396 | + let url = `/packageA/pages/myGiftDetails/myGiftDetails?btn=0&index=0&id=${id}`; // btn=0 控制跳转到的页面不显示按钮 | |
3397 | + // console.log('myurl', url); | |
3398 | + getApp().goto(url); | |
3399 | + }, | |
3400 | + | |
3401 | + go_more_ladder: function (e) { | |
3402 | + var prom_id = e.currentTarget.dataset.id; | |
3403 | + getApp().goto("/pages/goods/goodsList/goodsList?ladder_id=" + prom_id); | |
3404 | + }, | |
3405 | + | |
3406 | + getHistoryBuy() { | |
3407 | + let _this = this; | |
3408 | + let req_data = { | |
3409 | + store_id: os.stoid, | |
3410 | + goods_id: this.data.gid, | |
3411 | + pay_status: 1, | |
3412 | + rndid: 1 | |
3413 | + }; | |
3414 | + getApp().request.promiseGet('/api/weshop/ordergoods/list', { | |
3415 | + data: req_data, | |
3416 | + }) | |
3417 | + .then(res => { | |
3418 | + if (t.ajax_ok(res)) { | |
3419 | + _this.setData({ | |
3420 | + historyBuyInfo: res.data.data.pageData, | |
3421 | + }) | |
3129 | 3422 | } |
3130 | - //-- 调用回调 -- | |
3131 | - func(); | |
3132 | - } | |
3133 | - }); | |
3423 | + }) | |
3134 | 3424 | }, |
3135 | 3425 | |
3426 | + | |
3427 | + | |
3428 | + //-- 秒杀的普通购买 -- | |
3429 | + openSpecModel_Nor: function () { | |
3430 | + this.data.g_buy_num = new Map(); | |
3431 | + var th = this; | |
3432 | + this.setData({open_ind_store: 5, goodsInputNum: 1});//拼团直接给4 | |
3433 | + if (th.data.sku_g_pt) { | |
3434 | + this.get_sto(1) | |
3435 | + this.setData({openSpecModal_flash_normal: 1}); | |
3436 | + } else { | |
3437 | + th.get_sto(1); | |
3438 | + th.get_sku(o.stoid, th.data.data, th.data.gid, 1, function () { | |
3439 | + th.setData({ | |
3440 | + openSpecModal_flash_normal: 1 | |
3441 | + }); | |
3442 | + }); | |
3443 | + } | |
3444 | + this.check_is_youhui(th.data.gid, 1); | |
3445 | + }, | |
3446 | + | |
3447 | + closeSpecModal_flash_normal: function () { | |
3448 | + this.setData({openSpecModal_flash_normal: 0}); | |
3449 | + }, | |
3450 | + | |
3451 | + | |
3452 | + //打开客服操作菜单 | |
3453 | + openCS() { | |
3454 | + // csType/在线客服设置: | |
3455 | + // 0关闭(如果有设置热线电话,则显示拨打热线电话)、 | |
3456 | + // 1小程序客服、 | |
3457 | + // 2企业微信客服 | |
3458 | + let csType = this.data.sys_switch.weapp_customertype; | |
3459 | + if(csType == 0) { | |
3460 | + // 获取电话号码 | |
3461 | + this.contactService(); | |
3462 | + } else { | |
3463 | + this.getTel() | |
3464 | + .then(() => { | |
3465 | + self.setData({ | |
3466 | + hiddenCS: false, | |
3467 | + }); | |
3468 | + }); | |
3469 | + | |
3470 | + }; | |
3471 | + }, | |
3472 | + | |
3473 | + //关闭客服操作菜单 | |
3474 | + closeCS() { | |
3475 | + this.setData({ | |
3476 | + hiddenCS: true, | |
3477 | + }); | |
3478 | + } | |
3136 | 3479 | |
3137 | 3480 | |
3138 | 3481 | |
... | ... | @@ -3140,9 +3483,11 @@ Page({ |
3140 | 3483 | |
3141 | 3484 | |
3142 | 3485 | |
3486 | + | |
3143 | 3487 | |
3144 | 3488 | |
3145 | 3489 | |
3490 | + | |
3146 | 3491 | |
3147 | 3492 | |
3148 | 3493 | ... | ... |
packageA/pages/goodsInfo/goodsInfo.wxml
... | ... | @@ -101,7 +101,8 @@ |
101 | 101 | <!-- 秒杀价 --> |
102 | 102 | <!-- <view class="co-red" wx:if="{{options.prom_type == 1}}"><text class="rel yuan fs28">¥</text>{{filters.toFix(prom_price,2)}}</view> --> |
103 | 103 | <!-- 手店价 --> |
104 | - <view class="co-red"><text class="rel yuan fs28">¥</text>{{filters.toFix(data.shop_price,2)}}</view> | |
104 | + <view class="co-red" wx:if="{{options.prom_type == 1}}"><text class="rel yuan fs28">¥</text>{{filters.toFix(prom_price,2)}}</view> | |
105 | + <view class="co-red" wx:else><text class="rel yuan fs28">¥</text>{{filters.toFix(data.shop_price,2)}}</view> | |
105 | 106 | <view class="goods-title"> |
106 | 107 | <view class="goods-name elli">{{data.goods_name}}</view> |
107 | 108 | </view> |
... | ... | @@ -506,7 +507,7 @@ |
506 | 507 | <view class="join-cart jc_sb ai_c"> |
507 | 508 | |
508 | 509 | <view class="flex"> |
509 | - <button wx:if="{{sys_switch.weapp_customertype==1}}" class="custom-service cart-ico new_split pdh20" open-type="contact" | |
510 | + <!-- <button wx:if="{{sys_switch.weapp_customertype==1}}" class="custom-service cart-ico new_split pdh20" open-type="contact" | |
510 | 511 | session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}"> |
511 | 512 | <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image> |
512 | 513 | <view>客服</view> |
... | ... | @@ -521,6 +522,11 @@ |
521 | 522 | <view wx:else class="custom-service cart-ico new_split pdh20" bindtap="contactService" style="text-align: center"> |
522 | 523 | <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image> |
523 | 524 | <view>客服</view> |
525 | + </view> --> | |
526 | + | |
527 | + <view class="custom-service cart-ico new_split pdh20" bindtap="openCS"> | |
528 | + <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image> | |
529 | + <view>客服</view> | |
524 | 530 | </view> |
525 | 531 | |
526 | 532 | <view bindtap="collectGoods" class="custom-service cart-ico new_split t-c pdh20"> |
... | ... | @@ -542,8 +548,8 @@ |
542 | 548 | <view class="flex f1 btn-group"> |
543 | 549 | |
544 | 550 | <!-- 从“秒杀”入口进入购买商品 --> |
545 | - <!-- <block wx:if="{{options.prom_type == 1}}"> --> | |
546 | 551 | <block wx:if="{{options.prom_type == 1}}"> |
552 | + | |
547 | 553 | <block wx:if="{{prom_st==1 && !prom_r_null}}"> |
548 | 554 | <view bindtap="openSpecModel" data-ind="1" class="join-btn cart-btn f1">加入购物车</view> |
549 | 555 | <view bindtap="openSpecModel" data-ind="2" class="buy-btn cart-btn f1">立即抢购</view> |
... | ... | @@ -560,9 +566,7 @@ |
560 | 566 | </block> |
561 | 567 | </block> |
562 | 568 | |
563 | - | |
564 | - <block wx:if="{{prom_r_null}}"> | |
565 | - | |
569 | + <block wx:if="{{prom_r_null}}"> | |
566 | 570 | <block wx:if="{{prom_type==1 && prom_act.is_shop_buy}}"> |
567 | 571 | <view bindtap="openSpecModel_Nor" data-nor="1" class="join-btn cart-btn f1">单独购买</view> |
568 | 572 | <view class="buy-btn cart-btn huise f1">已抢光</view> |
... | ... | @@ -575,11 +579,10 @@ |
575 | 579 | <view bindtap="openSpecModel_Nor" data-nor="1" class="join-btn cart-btn f1">单独购买</view> |
576 | 580 | <view class="buy-btn cart-btn huise f1">活动已经结束</view> |
577 | 581 | </block> |
578 | - | |
579 | 582 | <view wx:else class="buy-btn cart-btn cart-btn-lg huise set_width f1">活动已经结束</view> |
580 | 583 | </block> |
584 | + | |
581 | 585 | </block> |
582 | - <!-- </block> --> | |
583 | 586 | |
584 | 587 | |
585 | 588 | <!-- 从“我的服务”入口进入购买商品 --> |
... | ... | @@ -615,7 +618,8 @@ |
615 | 618 | <view class="spec-goods-name ellipsis-2">{{data.goods_name}}</view> |
616 | 619 | <view class="flex ai_end xc-val-money"> |
617 | 620 | <view class="spec-goods-price"><text class="fs20">¥</text> |
618 | - <block wx>{{data.shop_price}}</block> | |
621 | + <block wx:if="{{options.prom_type == 1}}">{{prom_price}}</block> | |
622 | + <block wx:else>{{data.shop_price}}</block> | |
619 | 623 | </view> |
620 | 624 | </view> |
621 | 625 | </view> |
... | ... | @@ -902,3 +906,31 @@ |
902 | 906 | </view> |
903 | 907 | </view> |
904 | 908 | </view> |
909 | + | |
910 | + | |
911 | +<!-- 联系客服操作菜单 --> | |
912 | +<view class="action {{!hiddenCS ? 'active':''}}" hidden="{{hiddenCS}}"> | |
913 | + <view class="pd20 t-c pr"> | |
914 | + <text class="bold">联系客服</text> | |
915 | + <text class="iconfont icon-guan" bindtap="closeCS"></text> | |
916 | + </view> | |
917 | + <!-- 客服热线 --> | |
918 | + <view class="pd20 bdt fs30 btn2" bindtap="contactService"> | |
919 | + <text class="iconfont icon-dianhua"></text>客服热线: | |
920 | + <text class="c-red">{{store_tel}}</text> | |
921 | + </view> | |
922 | + <!-- 小程序客服 --> | |
923 | + <block wx:if="{{sys_switch.weapp_customertype == 1}}"> | |
924 | + <button class="pd20 bdt fs30 btn2" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}"> | |
925 | + <text class="iconfont icon-kefu1"></text>在线客服 | |
926 | + </button> | |
927 | + </block> | |
928 | + <!-- 微信客服 --> | |
929 | + <block wx:elif="{{sys_switch.weapp_customertype == 2}}"> | |
930 | + <view class="pd20 bdt fs30 btn2" bindtap="con_weixin"> | |
931 | + <text class="iconfont icon-kefu1"></text>在线客服 | |
932 | + </view> | |
933 | + </block> | |
934 | +</view> | |
935 | + | |
936 | +<view class="mask2" bindtap="closeCS"></view> | ... | ... |
packageA/pages/goodsInfo/goodsInfo.wxss
... | ... | @@ -2968,3 +2968,56 @@ button.custom-service::after{ |
2968 | 2968 | left: -1000px; |
2969 | 2969 | top: -1000px; |
2970 | 2970 | } |
2971 | + | |
2972 | + | |
2973 | + | |
2974 | +/* 联系客服操作菜单 */ | |
2975 | +.action { | |
2976 | + position: fixed; | |
2977 | + bottom: 100rpx; | |
2978 | + z-index: 1; | |
2979 | + width: 100%; | |
2980 | + background-color: white; | |
2981 | + border-radius: 20rpx 20rpx 0 0; | |
2982 | +} | |
2983 | + | |
2984 | +.action .icon-guan { | |
2985 | + position: absolute; | |
2986 | + left: 20rpx !important; | |
2987 | + right: auto !important; | |
2988 | +} | |
2989 | + | |
2990 | +.action .iconfont { | |
2991 | + color: #ff7295; | |
2992 | + margin-right: 10rpx; | |
2993 | +} | |
2994 | + | |
2995 | +.action button { | |
2996 | + text-align: left; | |
2997 | + line-height: normal; | |
2998 | +} | |
2999 | + | |
3000 | +.action button::after { | |
3001 | + border-width: 0; | |
3002 | +} | |
3003 | + | |
3004 | +.action .btn2 { | |
3005 | + box-sizing: border-box; | |
3006 | + height: 100rpx; | |
3007 | + display: flex; | |
3008 | + align-items: center; | |
3009 | +} | |
3010 | + | |
3011 | +.mask2 { | |
3012 | + display: none; | |
3013 | + position: fixed; | |
3014 | + left: 0; | |
3015 | + right: 0; | |
3016 | + top: 0; | |
3017 | + bottom: 0; | |
3018 | + background-color: rgba(0,0,0,.5); | |
3019 | +} | |
3020 | + | |
3021 | +.action.active ~ .mask2 { | |
3022 | + display: block; | |
3023 | +} | ... | ... |
pages/goods/goodsInfo/goodsInfo.js
... | ... | @@ -255,6 +255,8 @@ Page({ |
255 | 255 | share_hidden: false, |
256 | 256 | all_activity_list: null, //所有活动的列表 |
257 | 257 | |
258 | + hiddenCS: true, //控制客服操作菜单 | |
259 | + | |
258 | 260 | }, |
259 | 261 | |
260 | 262 | //------初始化加载---------- |
... | ... | @@ -2280,25 +2282,55 @@ Page({ |
2280 | 2282 | |
2281 | 2283 | //---------联系客服------------ |
2282 | 2284 | contactService: function () { |
2283 | - s.getConfig(function (t) { | |
2284 | - if (t.store_tel == undefined) { | |
2285 | - getApp().request.get("/api/weshop/store/get/" + os.stoid, { | |
2286 | - isShowLoading: 1, | |
2287 | - data: {}, | |
2288 | - success: function (rs) { | |
2289 | - getApp().globalData.config = rs.data.data; | |
2290 | - if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) { | |
2291 | - getApp().my_warnning("商家未设置电话", 0, th); | |
2292 | - return false; | |
2293 | - } | |
2294 | - s.confirmBox("请联系客服:" + rs.data.data.store_tel); | |
2295 | - } | |
2296 | - }) | |
2297 | - } else { | |
2298 | - s.confirmBox("请联系客服:" + t.store_tel); | |
2299 | - } | |
2300 | - }); | |
2285 | + this.getTel() | |
2286 | + .then(() => { | |
2287 | + if(self.data.store_tel) { | |
2288 | + wx.showModal({ | |
2289 | + title: '联系客服', | |
2290 | + content: '客服热线:' + self.data.store_tel, | |
2291 | + confirmText: '拨打', | |
2292 | + success(res) { | |
2293 | + if(res.confirm) { | |
2294 | + wx.makePhoneCall({ | |
2295 | + phoneNumber: self.data.store_tel, | |
2296 | + }) | |
2297 | + }; | |
2298 | + }, | |
2299 | + }); | |
2300 | + }; | |
2301 | + }); | |
2301 | 2302 | }, |
2303 | + // 获取客服电话 | |
2304 | + getTel() { | |
2305 | + return new Promise((resolve, reject) => { | |
2306 | + s.getConfig(function (t) { | |
2307 | + if (t.store_tel == undefined) { | |
2308 | + getApp().request.get("/api/weshop/store/get/" + os.stoid, { | |
2309 | + isShowLoading: 1, | |
2310 | + data: {}, | |
2311 | + success: function (rs) { | |
2312 | + getApp().globalData.config = rs.data.data; | |
2313 | + if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) { | |
2314 | + getApp().my_warnning("商家未设置电话", 0, th); | |
2315 | + return false; | |
2316 | + } | |
2317 | + self.setData({ | |
2318 | + store_tel: rs.data.data.store_tel, | |
2319 | + }); | |
2320 | + // s.confirmBox("请联系客服:" + rs.data.data.store_tel); | |
2321 | + } | |
2322 | + }) | |
2323 | + } else { | |
2324 | + self.setData({ | |
2325 | + store_tel: t.store_tel, | |
2326 | + }); | |
2327 | + // s.confirmBox("请联系客服:" + t.store_tel); | |
2328 | + }; | |
2329 | + resolve(); | |
2330 | + }); | |
2331 | + }); | |
2332 | + }, | |
2333 | + | |
2302 | 2334 | //-------获取购物车数量---------- |
2303 | 2335 | requestCardNum: function () { |
2304 | 2336 | var t = this; |
... | ... | @@ -6621,6 +6653,35 @@ Page({ |
6621 | 6653 | }, |
6622 | 6654 | |
6623 | 6655 | |
6656 | + //打开客服操作菜单 | |
6657 | + openCS() { | |
6658 | + // csType/在线客服设置: | |
6659 | + // 0关闭(如果有设置热线电话,则显示拨打热线电话)、 | |
6660 | + // 1小程序客服、 | |
6661 | + // 2企业微信客服 | |
6662 | + let csType = this.data.sys_switch.weapp_customertype; | |
6663 | + if(csType == 0) { | |
6664 | + // 获取电话号码 | |
6665 | + this.contactService(); | |
6666 | + } else { | |
6667 | + this.getTel() | |
6668 | + .then(() => { | |
6669 | + self.setData({ | |
6670 | + hiddenCS: false, | |
6671 | + }); | |
6672 | + }); | |
6673 | + | |
6674 | + }; | |
6675 | + }, | |
6676 | + | |
6677 | + //关闭客服操作菜单 | |
6678 | + closeCS() { | |
6679 | + this.setData({ | |
6680 | + hiddenCS: true, | |
6681 | + }); | |
6682 | + } | |
6683 | + | |
6684 | + | |
6624 | 6685 | |
6625 | 6686 | |
6626 | 6687 | ... | ... |
pages/goods/goodsInfo/goodsInfo.wxml
... | ... | @@ -1011,17 +1011,17 @@ |
1011 | 1011 | <!-- -----------------底部按钮------------------ --> |
1012 | 1012 | <view class="join-cart"> |
1013 | 1013 | <!-- bindtap="contactService" --> |
1014 | - <button wx:if="{{sys_switch.weapp_customertype==1}}" class="custom-service cart-ico new_split" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}"> | |
1014 | + <!-- <button wx:if="{{sys_switch.weapp_customertype==1}}" class="custom-service cart-ico new_split" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}"> | |
1015 | 1015 | <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image> |
1016 | 1016 | <view>客服</view> |
1017 | - </button> | |
1017 | + </button> --> | |
1018 | 1018 | |
1019 | - <view wx:elif="{{sys_switch.weapp_customertype==2}}" class="custom-service cart-ico new_split" bindtap="con_weixin"> | |
1019 | + <!-- <view wx:elif="{{sys_switch.weapp_customertype==2}}" class="custom-service cart-ico new_split" bindtap="con_weixin"> | |
1020 | 1020 | <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image> |
1021 | 1021 | <view>客服</view> |
1022 | - </view> | |
1022 | + </view> --> | |
1023 | 1023 | |
1024 | - <view wx:else class="custom-service cart-ico new_split" bindtap="contactService"> | |
1024 | + <view class="custom-service cart-ico new_split" bindtap="openCS"> | |
1025 | 1025 | <image class="cs-img" src="{{iurl}}/miniapp/images/custom-service.png"></image> |
1026 | 1026 | <view>客服</view> |
1027 | 1027 | </view> |
... | ... | @@ -1718,3 +1718,32 @@ |
1718 | 1718 | <view hidden="{{!openSpecModal_flash_normal}}"> |
1719 | 1719 | <include src="buy_flash_normal.wxml" /> |
1720 | 1720 | </view> |
1721 | + | |
1722 | + | |
1723 | + | |
1724 | +<!-- 联系客服操作菜单 --> | |
1725 | +<view class="action {{!hiddenCS ? 'active':''}}" hidden="{{hiddenCS}}"> | |
1726 | + <view class="pd20 t-c pr"> | |
1727 | + <text class="bold">联系客服</text> | |
1728 | + <text class="iconfont icon-guan" bindtap="closeCS"></text> | |
1729 | + </view> | |
1730 | + <!-- 客服热线 --> | |
1731 | + <view class="pd20 bdt fs30 btn2" bindtap="contactService"> | |
1732 | + <text class="iconfont icon-dianhua"></text>客服热线: | |
1733 | + <text class="c-red">{{store_tel}}</text> | |
1734 | + </view> | |
1735 | + <!-- 小程序客服 --> | |
1736 | + <block wx:if="{{sys_switch.weapp_customertype == 1}}"> | |
1737 | + <button class="pd20 bdt fs30 btn2" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}"> | |
1738 | + <text class="iconfont icon-kefu1"></text>在线客服 | |
1739 | + </button> | |
1740 | + </block> | |
1741 | + <!-- 微信客服 --> | |
1742 | + <block wx:elif="{{sys_switch.weapp_customertype == 2}}"> | |
1743 | + <view class="pd20 bdt fs30 btn2" bindtap="con_weixin"> | |
1744 | + <text class="iconfont icon-kefu1"></text>在线客服 | |
1745 | + </view> | |
1746 | + </block> | |
1747 | +</view> | |
1748 | + | |
1749 | +<view class="mask2" bindtap="closeCS"></view> | ... | ... |
pages/goods/goodsInfo/goodsInfo.wxss
... | ... | @@ -4001,3 +4001,54 @@ button.custom-service::after { |
4001 | 4001 | left: -1000px; |
4002 | 4002 | top: -1000px; |
4003 | 4003 | } |
4004 | + | |
4005 | + | |
4006 | + | |
4007 | + | |
4008 | +/* 联系客服操作菜单 */ | |
4009 | +.action { | |
4010 | + position: fixed; | |
4011 | + bottom: 100rpx; | |
4012 | + z-index: 1; | |
4013 | + width: 100%; | |
4014 | + background-color: white; | |
4015 | + border-radius: 20rpx 20rpx 0 0; | |
4016 | +} | |
4017 | + | |
4018 | +.action .icon-guan { | |
4019 | + position: absolute; | |
4020 | + left: 20rpx !important; | |
4021 | + right: auto !important; | |
4022 | +} | |
4023 | + | |
4024 | +.action .iconfont { | |
4025 | + color: #ff7295; | |
4026 | + margin-right: 10rpx; | |
4027 | +} | |
4028 | + | |
4029 | +.action button { | |
4030 | + text-align: left; | |
4031 | + line-height: normal; | |
4032 | +} | |
4033 | + | |
4034 | +.action .btn2 { | |
4035 | + box-sizing: border-box; | |
4036 | + height: 100rpx; | |
4037 | + display: flex; | |
4038 | + align-items: center; | |
4039 | +} | |
4040 | + | |
4041 | +.mask2 { | |
4042 | + display: none; | |
4043 | + position: fixed; | |
4044 | + left: 0; | |
4045 | + right: 0; | |
4046 | + top: 0; | |
4047 | + bottom: 0; | |
4048 | + background-color: rgba(0,0,0,.5); | |
4049 | +} | |
4050 | + | |
4051 | +.action.active ~ .mask2 { | |
4052 | + display: block; | |
4053 | +} | |
4054 | + | ... | ... |
pages/user/index/index.js
... | ... | @@ -11,6 +11,7 @@ const { |
11 | 11 | qrcode |
12 | 12 | } = require('../../../utils/index.js'); |
13 | 13 | var ut = require("../../../utils/util.js"); |
14 | +let self = null; | |
14 | 15 | |
15 | 16 | Page({ |
16 | 17 | /** |
... | ... | @@ -44,7 +45,7 @@ Page({ |
44 | 45 | ad_img:"", |
45 | 46 | add_card_data:'', //等级卡的内容 |
46 | 47 | |
47 | - | |
48 | + hiddenCS: true, | |
48 | 49 | }, |
49 | 50 | goto_nav: function(e) { |
50 | 51 | var th = this; |
... | ... | @@ -62,6 +63,7 @@ Page({ |
62 | 63 | */ |
63 | 64 | onLoad: function(options) { |
64 | 65 | var th=this; |
66 | + self = this; | |
65 | 67 | getApp().request.get("/api/weshop/ad/page?pid=401&store_id=" + os.stoid, { |
66 | 68 | data: { |
67 | 69 | enabled: 1 |
... | ... | @@ -703,26 +705,60 @@ Page({ |
703 | 705 | |
704 | 706 | //---------联系客服------------ |
705 | 707 | contactService: function() { |
706 | - var s = getApp(); | |
707 | - s.getConfig(function(t) { | |
708 | - if (t.store_tel == undefined) { | |
709 | - getApp().request.get("/api/weshop/store/get/" + os.stoid, { | |
710 | - isShowLoading: 1, | |
711 | - data: {}, | |
712 | - success: function(rs) { | |
713 | - getApp().globalData.config = rs.data.data; | |
714 | - if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) { | |
715 | - getApp().showWarning("商家未设置电话"); | |
716 | - return false; | |
717 | - } | |
718 | - s.confirmBox("请联系客服:" + rs.data.data.store_tel); | |
719 | - } | |
720 | - }) | |
721 | - } else { | |
722 | - s.confirmBox("请联系客服:" + t.store_tel); | |
723 | - } | |
724 | - }); | |
725 | - }, | |
708 | + this.getTel() | |
709 | + .then(() => { | |
710 | + if(self.data.store_tel) { | |
711 | + wx.showModal({ | |
712 | + title: '联系客服', | |
713 | + content: '客服热线:' + self.data.store_tel, | |
714 | + confirmText: '拨打', | |
715 | + success(res) { | |
716 | + if(res.confirm) { | |
717 | + wx.makePhoneCall({ | |
718 | + phoneNumber: self.data.store_tel, | |
719 | + }) | |
720 | + }; | |
721 | + }, | |
722 | + }); | |
723 | + }; | |
724 | + }); | |
725 | + }, | |
726 | + | |
727 | + // 获取客服热线 | |
728 | + getTel() { | |
729 | + return new Promise((resolve, reject) => { | |
730 | + var self = this; | |
731 | + var s = getApp(); | |
732 | + s.getConfig(function(t) { | |
733 | + if (t.store_tel == undefined) { | |
734 | + getApp().request.get("/api/weshop/store/get/" + os.stoid, { | |
735 | + isShowLoading: 1, | |
736 | + data: {}, | |
737 | + success: function(rs) { | |
738 | + getApp().globalData.config = rs.data.data; | |
739 | + if (rs.data.data.store_tel == null && rs.data.data.store_tel == undefined) { | |
740 | + getApp().showWarning("商家未设置电话"); | |
741 | + return false; | |
742 | + } else { | |
743 | + self.setData({ | |
744 | + store_tel: rs.data.data.store_tel, | |
745 | + }); | |
746 | + // s.confirmBox("客服热线:" + rs.data.data.store_tel); | |
747 | + }; | |
748 | + | |
749 | + } | |
750 | + }) | |
751 | + } else { | |
752 | + self.setData({ | |
753 | + store_tel: t.store_tel, | |
754 | + }); | |
755 | + // s.confirmBox("客服热线:" + t.store_tel); | |
756 | + } | |
757 | + resolve(); | |
758 | + }); | |
759 | + }); | |
760 | + }, | |
761 | + | |
726 | 762 | |
727 | 763 | go_info: function() { |
728 | 764 | getApp().goto("/pages/user/userinfo/userinfo"); |
... | ... | @@ -902,7 +938,38 @@ Page({ |
902 | 938 | } |
903 | 939 | }) |
904 | 940 | this.setData({user_tool:d_list}); |
905 | - } | |
941 | + }, | |
942 | + | |
943 | + | |
944 | + //打开客服操作菜单 | |
945 | + openCS() { | |
946 | + // csType/在线客服设置: | |
947 | + // 0关闭(如果有设置热线电话,则显示拨打热线电话)、 | |
948 | + // 1小程序客服、 | |
949 | + // 2企业微信客服 | |
950 | + let csType = this.data.sys_switch.weapp_customertype; | |
951 | + if(csType == 0) { | |
952 | + // 获取电话号码 | |
953 | + this.contactService(); | |
954 | + } else { | |
955 | + this.getTel() | |
956 | + .then(() => { | |
957 | + self.setData({ | |
958 | + hiddenCS: false, | |
959 | + }); | |
960 | + }); | |
961 | + | |
962 | + }; | |
963 | + }, | |
964 | + | |
965 | + //关闭客服操作菜单 | |
966 | + closeCS() { | |
967 | + this.setData({ | |
968 | + hiddenCS: true, | |
969 | + }); | |
970 | + } | |
971 | + | |
972 | + | |
906 | 973 | |
907 | 974 | |
908 | 975 | ... | ... |
pages/user/index/index.wxml
... | ... | @@ -261,7 +261,7 @@ |
261 | 261 | <!-- 没有链接地址的时候 --> |
262 | 262 | <block wx:else> |
263 | 263 | <block wx:if="{{item.name=='联系客服'}}"> |
264 | - <button class="item t-c" wx:if="{{sys_switch.weapp_customertype==1}}" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}"> | |
264 | + <!-- <button class="item t-c" wx:if="{{sys_switch.weapp_customertype==1}}" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}"> | |
265 | 265 | <image class="xc-center-img " src="{{iurl+item.icoimg}}"></image> |
266 | 266 | <view class="fs26">联系客服</view> |
267 | 267 | </button> |
... | ... | @@ -274,7 +274,12 @@ |
274 | 274 | <view class="item t-c" bindtap="contactService" wx:else> |
275 | 275 | <image class="xc-center-img " src="{{iurl+item.icoimg}}"></image> |
276 | 276 | <view class="fs26">联系客服</view> |
277 | - </view> | |
277 | + </view> --> | |
278 | + | |
279 | + <view class="item t-c" bindtap="openCS"> | |
280 | + <image class="xc-center-img " src="{{iurl+item.icoimg}}"></image> | |
281 | + <view class="fs26">联系客服</view> | |
282 | + </view> | |
278 | 283 | |
279 | 284 | </block> |
280 | 285 | <block wx:elif="{{item.name=='收入卡包'}}"> |
... | ... | @@ -346,4 +351,34 @@ |
346 | 351 | </view> |
347 | 352 | </view> |
348 | 353 | |
349 | -<pop_txt id="pop_txt"></pop_txt> | |
350 | 354 | \ No newline at end of file |
355 | +<pop_txt id="pop_txt"></pop_txt> | |
356 | + | |
357 | + | |
358 | +<!-- 联系客服操作菜单 --> | |
359 | +<view class="action {{!hiddenCS ? 'active':''}}" hidden="{{hiddenCS}}"> | |
360 | + <view class="pd20 t-c pr"> | |
361 | + <text class="bold">联系客服</text> | |
362 | + <text class="iconfont icon-guan" bindtap="closeCS"></text> | |
363 | + </view> | |
364 | + <!-- 客服热线 --> | |
365 | + <view class="pd20 bdt fs30 btn" bindtap="contactService"> | |
366 | + <text class="iconfont icon-dianhua"></text>客服热线: | |
367 | + <text class="c-red">{{store_tel}}</text> | |
368 | + </view> | |
369 | + <!-- 小程序客服 --> | |
370 | + <block wx:if="{{sys_switch.weapp_customertype == 1}}"> | |
371 | + <button class="pd20 bdt fs30 btn" open-type="contact" session-from="wechat|{{userInfo.user_id}}|{{userInfo.nickname}}|{{userInfo.head_pic}}"> | |
372 | + <text class="iconfont icon-kefu1"></text>在线客服 | |
373 | + </button> | |
374 | + </block> | |
375 | + <!-- 微信客服 --> | |
376 | + <block wx:elif="{{sys_switch.weapp_customertype == 2}}"> | |
377 | + <view class="pd20 bdt fs30 btn" bindtap="con_weixin"> | |
378 | + <text class="iconfont icon-kefu1"></text>在线客服 | |
379 | + </view> | |
380 | + </block> | |
381 | +</view> | |
382 | + | |
383 | +<view class="mask" bindtap="closeCS"></view> | |
384 | + | |
385 | + | ... | ... |
pages/user/index/index.wxss
... | ... | @@ -739,4 +739,50 @@ button::after{ border: 0} |
739 | 739 | |
740 | 740 | .c-5 { |
741 | 741 | color: #555; |
742 | -} | |
743 | 742 | \ No newline at end of file |
743 | +} | |
744 | + | |
745 | +.action { | |
746 | + position: fixed; | |
747 | + bottom: 100rpx; | |
748 | + z-index: 1; | |
749 | + width: 100%; | |
750 | + background-color: white; | |
751 | + border-radius: 20rpx 20rpx 0 0; | |
752 | +} | |
753 | + | |
754 | +.action .icon-guan { | |
755 | + position: absolute; | |
756 | + right: 20rpx; | |
757 | +} | |
758 | + | |
759 | +.action .iconfont { | |
760 | + color: #ff7295; | |
761 | + margin-right: 10rpx; | |
762 | +} | |
763 | + | |
764 | +.action button { | |
765 | + text-align: left; | |
766 | + line-height: normal; | |
767 | +} | |
768 | + | |
769 | +.action .btn { | |
770 | + box-sizing: border-box; | |
771 | + height: 100rpx; | |
772 | + display: flex; | |
773 | + align-items: center; | |
774 | +} | |
775 | + | |
776 | +.mask { | |
777 | + display: none; | |
778 | + position: fixed; | |
779 | + left: 0; | |
780 | + right: 0; | |
781 | + top: 0; | |
782 | + bottom: 0; | |
783 | + background-color: rgba(0,0,0,.5); | |
784 | +} | |
785 | + | |
786 | +.action.active ~ .mask { | |
787 | + display: block; | |
788 | +} | |
789 | + | ... | ... |