Commit e3e8e991331f84c6ecdbc5320e74d76372098c85

Authored by yvan.ni
1 parent 99feabba

bug的优化

pages/giftpack/public/buy_com.js 0 → 100644
  1 +const t_pay = require("../../../utils/pay2.js");
  2 +module.exports = {
  3 + set_py_fir(){
  4 + t_pay.set_fir();
  5 + },
  6 + //开启定位
  7 + wait_for_store_config: function (th) {
  8 + var t_time = setInterval(function () {
  9 + if (th.data.bconfig == null) false;
  10 + var e = th.data.bconfig;
  11 + if (e && e.is_sort_storage) {
  12 + wx.getLocation({
  13 + type: 'gcj02',
  14 + success: function (res) {
  15 + th.data.lat = res.latitude;
  16 + th.data.lon = res.longitude;
  17 + th.data.is_get_local_ok = 1;
  18 + },
  19 + fail: function (res) {
  20 + if (res.errCode == 2) {
  21 + th.setData({
  22 + is_gps: 0
  23 + });
  24 + if (th.data.is_gps == 0) {
  25 + getApp().confirmBox("请开启GPS定位", null, 10000, !1);
  26 + }
  27 +
  28 + } else {
  29 + th.setData({
  30 + is_gps: "3"
  31 + });
  32 + }
  33 +
  34 + th.data.is_get_local_ok = 1;
  35 + }
  36 + })
  37 + } else {
  38 + th.data.is_get_local_ok = 1;
  39 + }
  40 + clearInterval(t_time);
  41 + }, 500)
  42 + },
  43 + set_user_mo_store(th,os,func){
  44 + var that=th;
  45 + //获取用户的默认门店
  46 + getApp().get_user_store(function (e) {
  47 + if (!e) {
  48 + th.data.fir_def_store = {}; //赋值空对象
  49 + return false;
  50 + }
  51 +
  52 + if(getApp().globalData.is_dj_pk) th.setData({has_def:1})
  53 +
  54 + var ee = JSON.parse(JSON.stringify(e));
  55 + //--定时器推迟一下--
  56 + setTimeout(function () {
  57 + if (th.data.fir_goods) var g_distr_type = th.data.fir_goods.distr_type;
  58 + //--如果默认门店的配送方式不对,就不能被选择,这里不控制,如果不一样,就说明配送方式不对--
  59 + if (ee.distr_type != 0 && g_distr_type != 0 && ee.distr_type != g_distr_type) {
  60 + ee.is_no_dis = 1;
  61 + }
  62 +
  63 + var appd = getApp().globalData;
  64 + var w_time = setInterval(function () {
  65 + if (that.data.is_get_local_ok == 0) return false;
  66 + clearInterval(w_time);
  67 + var distance = null;
  68 + var e = JSON.parse(JSON.stringify(ee));
  69 +
  70 + //如果有开启近距离的话,同时距离优不一样了
  71 + if (that.data.lat != null) {
  72 + //如果经纬度有变化的话
  73 + if (e && appd.lat == that.data.lat && appd.lon == that.data.lon && e.distance > 0) {
  74 + that.set_def_storage(e);
  75 + if(func) func();
  76 + } else {
  77 + //要用接口是获取距离,js的计算不准
  78 + getApp().request.promiseGet("/api/weshop/pickup/list", {
  79 + data: {
  80 + store_id: os.stoid,
  81 + pickup_id: e.pickup_id,
  82 + lat: th.data.lat,
  83 + lon: th.data.lon,
  84 + isstop: 0,
  85 + is_pos: 1
  86 + },
  87 + }).then(res => {
  88 + if (res.data.code == 0) {
  89 + e = res.data.data.pageData[0];
  90 + if (e) {
  91 + e.is_no_dis = ee.is_no_dis;
  92 + appd.pk_store = e;
  93 + that.set_def_storage(e);
  94 + }
  95 +
  96 + }
  97 + if(func) func();
  98 + })
  99 + }
  100 + //e.distance = distance;
  101 + appd.lat = that.data.lat;
  102 + appd.lon = that.data.lon;
  103 +
  104 + } else {
  105 + if (e) {
  106 + e.distance = null;
  107 + that.set_def_storage(e);
  108 + }
  109 + if(func) func();
  110 + }
  111 + }, 500)
  112 + }, 700)
  113 + })
  114 +
  115 + },
  116 +
  117 + //---------拿出门店分类和门店------------
  118 + get_sto(th,os) {
  119 + var that = th;
  120 + var self=this;
  121 + var timer_get = setInterval(function () {
  122 + if (th.data.is_get_local_ok == 0) return false;
  123 + var dd = null;
  124 +
  125 + dd = {
  126 + store_id: os.stoid,
  127 + isstop: 0,
  128 + is_pos: 1,
  129 + pageSize: 2000,
  130 + }
  131 +
  132 + //如果有距离的话
  133 + if (th.data.lat != null) {
  134 + dd.lat = th.data.lat;
  135 + dd.lon = th.data.lon;
  136 + }
  137 +
  138 + if(th.data.sele_g && th.data.sele_g.pickup_list){
  139 + dd.ids=th.data.sele_g.pickup_list
  140 + }
  141 +
  142 + clearInterval(timer_get);
  143 +
  144 + //如果会员是有默认的门店话
  145 + if (!th.data.def_pick_store && th.data.fir_def_store) {
  146 + th.setData({def_pick_store: th.data.fir_def_store});
  147 + }
  148 + wx.showLoading({
  149 + title: '加载中.'
  150 + });
  151 + //----------获取门店----------------
  152 + getApp().request.promiseGet("/api/weshop/pickup/list", {
  153 + data: dd,
  154 + }).then(res => {
  155 + var e = res;
  156 +
  157 + if (e.data.code == 0 && e.data.data && e.data.data.pageData && e.data.data.pageData.length > 0) {
  158 +
  159 + var his_cate_num = 0;
  160 + for (let i in e.data.data.pageData) {
  161 + let item = e.data.data.pageData[i];
  162 + if (item.category_id > 0) {
  163 + his_cate_num = 1;
  164 + break;
  165 + }
  166 + }
  167 + e.his_cate_num = his_cate_num;
  168 +
  169 + //如果有开启距离的功能,没有设置默认门店,要用最近的门店作为默认门店
  170 + if (dd.lat && (!th.data.def_pick_store || JSON.stringify(th.data.def_pick_store) == '{}') && th.data.bconfig && th.data.bconfig.is_sort_storage) {
  171 + th.setData({
  172 + def_pick_store: e.data.data.pageData[0],
  173 + sto_sele_name: e.data.data.pageData[0].pickup_name,
  174 + sto_sele_id: e.data.data.pageData[0].pickup_id,
  175 + sto_sele_distr: e.data.data.pageData[0].distr_type
  176 + });
  177 + th.data.fir_def_store = e.data.data.pageData[0];
  178 + }
  179 +
  180 + //-- 如果有默认选择门店的时候,要把默认门店放在第一位,修改不要配送方式的判断 --
  181 + if (th.data.def_pick_store && JSON.stringify(th.data.def_pick_store) != '{}') {
  182 + for (var k = 0; k < e.data.data.pageData.length; k++) {
  183 + if (e.data.data.pageData[k].pickup_id == th.data.def_pick_store.pickup_id) {
  184 + e.data.data.pageData.splice(k, 1); //删除
  185 + break;
  186 + }
  187 + }
  188 + e.data.data.pageData.splice(0, 0, th.data.def_pick_store); //添加
  189 + }
  190 +
  191 + th.setData({all_pick_list: e.data.data.pageData});
  192 +
  193 + setTimeout(function () {
  194 + self.deal_pickup(e,th,os); //--普通门店排版--
  195 + }, 800)
  196 +
  197 + }
  198 + })
  199 + }, 200)
  200 +
  201 + },
  202 +
  203 + //-- 统一购买 --
  204 + buy_libao:function (th) {
  205 + var _that=this;
  206 + if(th.data.sele_g.is_pickup){
  207 + if(!th.data.def_pick_store || (th.data.def_pick_store && !th.data.def_pick_store.pickup_id)){
  208 + getApp().my_warnning("请先选择门店", 1, th);
  209 + return false;
  210 + }
  211 +
  212 + if(th.data.def_pick_store.is_no_dis){
  213 + getApp().my_warnning("门店不匹配,请重新选择", 1, th);
  214 + return false;
  215 + }
  216 + }
  217 +
  218 + if(th.data.submit) return false;
  219 + th.setData({submit:1})
  220 +
  221 + if(th.pp_bacK_func){
  222 + th.pp_bacK_func();
  223 + return false;
  224 + }
  225 +
  226 + var id=th.data.sele_g.lbId;
  227 + var that=th;
  228 + var json = {
  229 + "actId": '', //活动Id
  230 + "actType": '', //活动类型 1:新人礼、2:评价有礼、3:节日营销、4:生日营销
  231 + "buyType":""+that.data.buyType, //1=积分兑换 2=余额购买
  232 + "giftBagId": id, //礼包Id
  233 + "storeId": that.data.getStorageID, //商家Id
  234 + "userId": that.data.getUserID, //用户ID
  235 + "buyFrom": 2,
  236 + };
  237 +
  238 + if(that.data.first_leader){
  239 + json.first_leader=that.data.first_leader
  240 + }
  241 + if(that.data.guide_id){
  242 + json.guide_id=that.data.guide_id
  243 + }
  244 +
  245 + if(th.data.sele_g.is_pickup && that.data.def_pick_store){
  246 + json.pickup_id=that.data.def_pick_store.pickup_id;
  247 + }
  248 +
  249 + //-- 分享导购要记录 --
  250 + if (getApp().globalData.guide_id) {
  251 + json.guide_id = getApp().globalData.guide_id;
  252 + }
  253 +
  254 + var url ="/api/weshop/marketing/buy/receive/gift/record/insert";
  255 + getApp().request.json_post(url, json,
  256 + function (res) {
  257 + if (res.data.code == 0 && res.data.data) {
  258 +
  259 + switch(that.data.buyType){
  260 + case 1://立即兑换
  261 + var order_sn = res.data.data;
  262 +
  263 + th.setData({submit:0})
  264 + getApp().my_warnning("兑换成功!", 1, th);
  265 + th.closeSpecModal();
  266 + _that.go_detail(id,order_sn,th);
  267 + break;
  268 + case 2://立即购买
  269 +
  270 + var order_sn = res.data.data.orderSn;
  271 + that.data.ok_order_sn=order_sn;
  272 +
  273 + var money=that.data.payMoney;
  274 + var url = "/packageF/pages/giftpack/payment/payment?money=" + money + "&order_sn=" + order_sn;
  275 + getApp().globalData.no_clear=1;
  276 +
  277 + t_pay.pay_data(res,function (){
  278 + th.setData({submit:0})
  279 + getApp().goto(url);
  280 + },function (e){
  281 + th.setData({submit:0})
  282 + wx.showToast({
  283 + title:e,
  284 + icon:'none',
  285 + duration:2500
  286 + })
  287 + })
  288 +
  289 + break;
  290 + case 3://立即领取
  291 +
  292 + var order_sn = res.data.data;
  293 + th.setData({submit:0})
  294 + getApp().my_warnning("领取成功!", 1, th);
  295 + th.closeSpecModal();
  296 + _that.go_detail(id,order_sn,th);
  297 + break;
  298 + }
  299 +
  300 + } else {
  301 + th.setData({submit:0})
  302 + getApp().my_warnning(res.data.msg, 0, th);
  303 + }
  304 + },
  305 + function (res) {
  306 + th.setData({submit:0})
  307 + }
  308 + )
  309 + },
  310 +
  311 + //-- 跳转到商品使用页面 --
  312 + go_detail(id,orderSn,th){
  313 + //不是详情页面,就不跳转了
  314 + if(!th.data.is_detail) return false;
  315 +
  316 + var url='/packageF/pages/giftpack/giftpacklist/giftpacklist?isBuy=0&lbId='+id+'&orderSn='+orderSn;
  317 + getApp().goto(url);
  318 + },
  319 +
  320 + //------------处理门店---------------
  321 + deal_pickup(e,th,os) {
  322 +
  323 + if (!th.data.sele_g) return false
  324 + wx.hideLoading();
  325 +
  326 + //单总量超出10个的时候,同时门店有分类
  327 + if (e.data.data.total > 10 && e.his_cate_num) {
  328 + getApp().request.get("/api/weshop/storagecategory/page", {
  329 + data: {
  330 + store_id: os.stoid,
  331 + pageSize: 1000,
  332 + orderField: "sort",
  333 + orderType: 'asc',
  334 + },
  335 + success: function (ee) {
  336 + if (ee.data.code == 0) {
  337 + var check_all_cate = 0;
  338 + if (ee.data.data && ee.data.data.pageData && ee.data.data.pageData.length > 0) {
  339 + for (let i in ee.data.data.pageData) {
  340 + let item = ee.data.data.pageData[i];
  341 + if (item.is_show == 1) {
  342 + check_all_cate = 1;
  343 + break
  344 + }
  345 + }
  346 + }
  347 + if (check_all_cate) {
  348 + var sto_cate = ee.data.data.pageData;
  349 + var sto_arr = e.data.data.pageData;
  350 + var newarr = new Array();
  351 + var qita = new Array();
  352 +
  353 +
  354 + var is_del_pk = 0;
  355 + //----要进行门店分组--------
  356 + for (var i = 0; i < sto_arr.length; i++) {
  357 + //找一下这个门店有没有在分类数组内
  358 + var find2 = 0, find2name = "", sort = 0;
  359 + is_del_pk = 0;
  360 + for (var m = 0; m < sto_cate.length; m++) {
  361 + if (sto_arr[i].category_id == sto_cate[m].cat_id) {
  362 + if (sto_cate[m].is_show != 1) {
  363 + is_del_pk = 1;
  364 + sto_arr.splice(i, 1);
  365 + i--;
  366 + } else {
  367 + find2 = sto_cate[m].cat_id;
  368 + find2name = sto_cate[m].cat_name;
  369 + sort = sto_cate[m].sort;
  370 + is_del_pk = 0;
  371 + }
  372 + break;
  373 + }
  374 + }
  375 + if (is_del_pk) continue;
  376 +
  377 + if (newarr.length > 0) {
  378 + var find = 0;
  379 + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
  380 + if (find2 != 0) {
  381 + for (var ii = 0; ii < newarr.length; ii++) {
  382 + if (sto_arr[i].category_id == newarr[ii].cat_id) {
  383 + newarr[ii].s_arr.push(sto_arr[i]);
  384 + find = 1;
  385 + break;
  386 + }
  387 + }
  388 + if (find == 0) {
  389 + var arr0 = new Array();
  390 + arr0.push(sto_arr[i]);
  391 + var item = {
  392 + cat_id: find2,
  393 + name: find2name,
  394 + sort: sort,
  395 + s_arr: arr0
  396 + };
  397 + newarr.push(item);
  398 + }
  399 + } else {
  400 + qita.push(sto_arr[i]);
  401 + }
  402 + } else {
  403 + //如果有找到,那门店就在这个分组内,否则,分类就要排在其他
  404 + if (find2 != 0) {
  405 + var arr0 = new Array();
  406 + arr0.push(sto_arr[i]);
  407 + var item = {
  408 + cat_id: find2,
  409 + name: find2name,
  410 + sort: sort,
  411 + s_arr: arr0
  412 + };
  413 + newarr.push(item);
  414 + } else {
  415 + qita.push(sto_arr[i]);
  416 + }
  417 + }
  418 + }
  419 +
  420 + var def_arr = new Array();
  421 + //-- 开始就看10个门店 --
  422 + for (var k = 0; k < 10; k++) {
  423 + if (k == sto_arr.length) break;
  424 + def_arr.push(sto_arr[k]);
  425 + }
  426 +
  427 + th.setData({
  428 + def_pickpu_list: def_arr,
  429 + pickpu_list: ee.data.data.pageData
  430 + });
  431 +
  432 +
  433 + //门店分类要排序下
  434 + function compare(property) {
  435 + return function (a, b) {
  436 + var value1 = a[property];
  437 + var value2 = b[property];
  438 + return value1 - value2;
  439 + }
  440 + }
  441 +
  442 + if (newarr.length > 0)
  443 + newarr.sort(compare("sort"));
  444 +
  445 +
  446 + //----安排其他的分类-----
  447 + if (qita.length > 0) {
  448 + var item = {
  449 + cat_id: -1,
  450 + name: "其他",
  451 + s_arr: qita
  452 + };
  453 + newarr.push(item);
  454 + }
  455 +
  456 + var sd = {
  457 + all_sto: newarr,
  458 + is_show_sto_cat: 1
  459 + }
  460 + if (!sto_arr || sto_arr.length <= 10) {
  461 + sd.is_show_sto_cat = -1;
  462 + sd.only_pk = sto_arr;
  463 + }
  464 + th.setData(sd);
  465 +
  466 + } else {
  467 + th.setData({
  468 + is_show_sto_cat: -1,
  469 + only_pk: e.data.data.pageData
  470 + });
  471 + //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
  472 + if (!th.data.def_pick_store) {
  473 + th.setData({
  474 + def_pick_store: e.data.data.pageData[0],
  475 + sto_sele_name: e.data.data.pageData[0].pickup_name,
  476 + sto_sele_id: e.data.data.pageData[0].pickup_id,
  477 + sto_sele_distr: e.data.data.pageData[0].distr_type
  478 + })
  479 + }
  480 + }
  481 + } else {
  482 + th.setData({
  483 + is_show_sto_cat: -1,
  484 + only_pk: e.data.data.pageData
  485 + });
  486 + //-----如果没有默认门店,要取第一个门店作为默认店.此时没有门店分类的情况------
  487 + if (!th.data.def_pick_store) {
  488 + th.setData({
  489 + def_pick_store: e.data.data.pageData[0],
  490 + sto_sele_name: e.data.data.pageData[0].pickup_name,
  491 + sto_sele_id: e.data.data.pageData[0].pickup_id,
  492 + sto_sele_distr: e.data.data.pageData[0].distr_type
  493 + })
  494 + }
  495 +
  496 + }
  497 + }
  498 + });
  499 + } else {
  500 + th.setData({
  501 + is_show_sto_cat: 0,
  502 + only_pk: e.data.data.pageData
  503 + });
  504 + //-----如果没有默认门店,要取第一个门店作为默认店------
  505 + if (!th.data.def_pick_store && th.data.bconfig && th.data.bconfig.is_sort_storage) {
  506 + th.setData({
  507 + def_pick_store: e.data.data.pageData[0],
  508 + sto_sele_name: e.data.data.pageData[0].pickup_name,
  509 + sto_sele_id: e.data.data.pageData[0].pickup_id,
  510 + sto_sele_distr: e.data.data.pageData[0].distr_type
  511 + })
  512 + }
  513 + }
  514 + },
  515 +
  516 + check_def_pk:function (th) {
  517 + th.data.def_pick_store.is_no_dis=0;
  518 + var def_pick_store=th.data.def_pick_store
  519 + var sele_g=th.data.sele_g;
  520 + var arr=sele_g.pickup_list.split(',');
  521 +
  522 + var idx=arr.findIndex(function (e) {
  523 + return e==def_pick_store.pickup_id;
  524 + })
  525 +
  526 + if(idx==-1){
  527 + def_pick_store.is_no_dis=1;
  528 + }
  529 + th.setData({def_pick_store})
  530 +
  531 + }
  532 +
  533 +
  534 +
  535 +
  536 +}
0 537 \ No newline at end of file
... ...
pages/giftpack/public/buy_com.wxml 0 → 100644
  1 +<!-- 选择门店的弹框,1.1版最新的 -->
  2 +<block wx:if="{{store}}">
  3 + <view class="mongolia-layer" bindtap="close_popup"></view>
  4 + <view class="popup-frame">
  5 + <block wx:if="{{sort_store==0}}">
  6 + <!-- 头部 标题 -->
  7 + <view class="popup-top flex-space-between">
  8 + <text class="fs32 nearby_store">{{choice_sort_store==0?'附近的门店':region_name}}</text>
  9 + <view>
  10 + <view>
  11 + <icon bindtap="close_popup" class="modal-closes" color="black" size="22" type="cancel"></icon>
  12 + </view>
  13 + <view class="felx choose_more" bindtap="more_store" wx:if="{{is_show_sto_cat>0}}">
  14 + <text class="fs26 red-co" >{{choice_sort_store==0?'更多门店':'返回'}}</text> <view class="bg_rights" ></view>
  15 + </view>
  16 + </view>
  17 + </view>
  18 + <view class="searchbar flex-vertical-between storeListpadd">
  19 + <input class="inputstore fs28" placeholder="输入要搜索的门店" value="{{keyword}}" placeholder-class="fs28" maxlength="16" bindinput="input_store" bindconfirm="searchfn" />
  20 + <view class="search flex-center" bindtap="searchfn">
  21 + <view class="fs28">搜索</view>
  22 + </view>
  23 + </view>
  24 + <!-- 门店列表,最外层的门店列表,一开始 -->
  25 + <view class="store-list">
  26 + <!-- 如果还没有点击更多门店的时候 -->
  27 + <block wx:if="{{choice_sort_store==0}}">
  28 + <!-- 需要for循环 -->
  29 + <block wx:if="{{is_show_sto_cat==1}}">
  30 + <view class="store_choose flex" wx:for="{{def_pickpu_list}}" bindtap="choose_for_store_fir" data-ind="{{index}}">
  31 + <view class="store flex-vertical">
  32 + <!-- 需要点击事件 -->
  33 + <block wx:if="{{index==fir_pick_index}}">
  34 + <view class="circle white xc-hook fs20 red-b">Г</view>
  35 + </block>
  36 + <block wx:else>
  37 + <view class="circle xc-hooks"></view>
  38 + </block>
  39 + <view class="address-frame xc-ash">
  40 + <view class="flex-vertical-between butttem5">
  41 + <view class="flex xc-ash">
  42 + <view class="fs30 xc-black3 address_name">{{item.pickup_name}}</view>
  43 + </view>
  44 + <view>
  45 + <view class="distance fs24 address-val" wx:if="{{item.distance!=null}}">
  46 + 距离:{{item.distance>1000?filter.toFix(item.distance/1000,2)+'km':filter.toFix(item.distance,0)+"m"}}
  47 + </view>
  48 + </view>
  49 + </view>
  50 + <view class="fs24 xc-ash-9f">地址:{{item.fulladdress}}</view>
  51 + </view>
  52 + </view>
  53 + </view>
  54 + </block>
  55 + <block wx:else>
  56 + <view class="store_choose flex" wx:for="{{only_pk}}" bindtap="choose_for_store_fir" data-ind="{{index}}">
  57 + <view class="store flex-vertical">
  58 + <!-- 需要点击事件 -->
  59 + <block wx:if="{{index==fir_pick_index}}">
  60 + <view class="circle white xc-hook fs20 red-b">Г</view>
  61 + </block>
  62 + <block wx:else>
  63 + <view class="circle xc-hooks"></view>
  64 + </block>
  65 + <view class="address-frame xc-ash">
  66 + <view class="flex-vertical-between ">
  67 + <view class="flex xc-ash">
  68 + <view class="fs30 xc-black3 address_name">{{item.pickup_name}}</view>
  69 + </view>
  70 + <view>
  71 + <view class="distance fs24 address-val" wx:if="{{item.distance!=null}}">
  72 + 距离:{{item.distance>1000?filter.toFix(item.distance/1000,2)+"km":filter.toFix(item.distance,0)+"m"}}
  73 + </view>
  74 + </view>
  75 + </view>
  76 + <view class="fs24 xc-ash-9f">地址:{{item.fulladdress}}</view>
  77 + </view>
  78 + </view>
  79 + </view>
  80 + </block>
  81 + </block>
  82 + <block wx:else>
  83 + <!-- 如果是点击选择门店分类后显示分类下的门店 -->
  84 + <view class="store_choose flex" wx:for="{{sec_sto.s_arr}}" data-ind="{{index}}" bindtap="choose_for_store">
  85 + <view class="store flex-vertical">
  86 + <!-- 需要点击事件 -->
  87 + <block wx:if="{{index==sec_pick_index}}">
  88 + <view class="circle white xc-hook fs20 red-b">Г</view>
  89 + </block>
  90 + <block wx:else>
  91 + <view class="circle xc-hooks"></view>
  92 + </block>
  93 + <view class="address-frame xc-ash">
  94 + <view class="flex-vertical-between ">
  95 + <view class="flex xc-ash">
  96 + <view class="fs28 xc-black3 address_name">{{item.pickup_name}}</view>
  97 + </view>
  98 + <view>
  99 + <view class="distance fs24 address-val" wx:if="{{item.distance!=null}}">
  100 + 距离:{{item.distance>1000?filter.toFix(item.distance/1000,2)+"km":filter.toFix(item.distance,0)+"m"}}
  101 + </view>
  102 + </view>
  103 + </view>
  104 + <view class="fs24 xc-ash-9f">地址:{{item.fulladdress}}</view>
  105 + </view>
  106 + </view>
  107 + </view>
  108 + </block>
  109 + </view>
  110 + <!-- 门店列表底部 -->
  111 + <view class="store-bottom-frame">
  112 + <view class="store-bottom flex-vertical-between">
  113 + <view class="determine red-b fs28 white t-c" bindtap="sure_pick" data-openindstore="{{open_ind_store}}">
  114 + 确定
  115 + </view>
  116 + <view class="default t-c fs28" bindtap="set_def_pick" data-openindstore="{{open_ind_store}}">
  117 + 设为默认
  118 + </view>
  119 + </view>
  120 + </view>
  121 + </block>
  122 + <block wx:else>
  123 + <view class="popup-top flex-space-between">
  124 + <text class="fs32 nearby_store">门店分类选择</text>
  125 + <view>
  126 + <view>
  127 + <icon bindtap="close_popup" class="modal-closes" color="black" size="22" type="cancel"></icon>
  128 + </view>
  129 + <view class="felx choose_mores" bindtap="returns">
  130 + <text class="fs26 red-co">返回</text>
  131 + </view>
  132 + </view>
  133 + </view>
  134 + <view class="sort_store_list">
  135 + <view class="sort-store-frame" wx:for="{{all_sto}}" data-index="{{index}}" bindtap="choice_sort_store" data-region="{{item.name}}">
  136 + <view class="sort-store flex-vertical-between">
  137 + <view class="fs30" di>{{item.name}}</view>
  138 + <view class="black_rights-frame">
  139 + <view class="black_rights"></view>
  140 + </view>
  141 + </view>
  142 + </view>
  143 + </view>
  144 + </block>
  145 + </view>
  146 +</block>
  147 +
  148 + <!-- --弹起来,选择规格数量,普通商品购买和秒杀---- -->
  149 +<view hidden="{{!openSpecModal}}">
  150 + <view bindtap="closeSpecModal" class="cover-layer"></view>
  151 + <view class="spec-model">
  152 + <view class="pding">
  153 + <icon bindtap="closeSpecModal" class="modal-close" color="black" size="22" type="cancel"></icon>
  154 + <view class="spec-goods">
  155 + <image class="wh100 spec-img xc-distance-bottom" bindtap="previewImage" src="{{iurl+(sele_g.cover_img?sele_g.cover_img:sele_g.lbUrl)}}" binderror="pop_err_img" data-errorimg=""></image>
  156 + <view class="spec-goods-info">
  157 + <view class="spec-goods-name ellipsis-2">{{sele_g.giftTitle}}</view>
  158 + <view class="flex ai_end xc-val-money" wx:if="{{buyType<4}}">
  159 + <view class="spec-goods-price">
  160 + <block wx:if="{{sele_g.payMoney>0}}">
  161 + <text>{{"¥"+sele_g.payMoney}}</text>
  162 + </block>
  163 + <block wx:if="{{sele_g.payMoney>0&&sele_g.payIntegral>0}}">
  164 + <text>/</text>
  165 + </block>
  166 + <block wx:if="{{sele_g.payIntegral>0}}">
  167 + <view class="flex">
  168 + <text class="ellipsis-1">{{sele_g.payIntegral}}</text>
  169 + <view>积分</view>
  170 + </view>
  171 + </block>
  172 +
  173 + </view>
  174 + </view>
  175 +
  176 +
  177 + <view class="flex" wx:if="{{buyType<4}}">
  178 + <view class="spec-goods-stock" >已售:{{sele_g.giftQty}}</view>
  179 + <view class="spec-goods-stock">可售:{{sele_g.lbnum-sele_g.giftQty+(sele_g.virtualsales?sele_g.virtualsales:0)}}</view>
  180 + </view>
  181 + </view>
  182 +
  183 + <view style="clear:both;" ></view>
  184 + <!-- 选择门店模块 -->
  185 + <view class="flex-space-between address ai_end xc-width {{buyType>3?'mgt20':''}}">
  186 + <view class="flex ai_end" wx:if="{{def_pick_store && def_pick_store.pickup_name}}">
  187 + <text class="fs30 xc-black3 shop_name bold">{{def_pick_store.pickup_name}}</text>
  188 + <view class="distance fs24 xc-ash" wx:if="{{def_pick_store.distance!=null}}">
  189 + 距离:{{def_pick_store.distance>1000?filter.toFix(def_pick_store.distance/1000,2)+"km":filter.toFix(def_pick_store.distance,0)+"m"}}
  190 + </view>
  191 + </view>
  192 + <!-- 没有门店的时候 -->
  193 + <view class="flex" bindtap="choice_store" wx:else>
  194 + <image class="stores-img" src="{{iurl}}/miniapp/images/stores.png"></image>
  195 + <view class="fs30" style="color:black;">选择门店</view>
  196 + </view>
  197 + <view hidden="{{has_def && sys_switch.is_pricing_open_store}}" class="red-co fs28" bindtap="choice_store">更多门店<text class="right-arrow"></text></view>
  198 + </view>
  199 + <view wx:if="{{only_pk && !only_pk.length}}">(库存不足)</view>
  200 + <block wx:else>
  201 + <view wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">(库存不足)</view>
  202 + <block wx:else>
  203 + <view class="no_store" wx:if="{{def_pick_store.is_no_dis}}">(配送不匹配)</view>
  204 + <view wx:elif="{{def_pick_store && !def_pick_store.CanOutQty && sales_rules==2 && prom_type==0}}">
  205 + (库存不足)
  206 + </view>
  207 + </block>
  208 + </block>
  209 + <view class="fs24 xc-ash-9f xc-distance-top " wx:if="{{def_pick_store && def_pick_store.fulladdress}}">
  210 + 地址:{{def_pick_store.fulladdress}}
  211 + </view>
  212 + </view>
  213 + <!-- 商品的属性项目 -->
  214 +
  215 +
  216 + </view>
  217 + <view class="spec-cart-btns">
  218 + <!-- 根本就找不到门店 -->
  219 + <block wx:if="{{!only_pk && !def_pickpu_list}}">
  220 + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999;">
  221 + 未找到门店
  222 + </view>
  223 + </block>
  224 + <block wx:else>
  225 + <block wx:if="{{only_pk && !only_pk.length}}">
  226 + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999;">
  227 + 未找到门店
  228 + </view>
  229 + </block>
  230 + <block wx:else>
  231 + <block wx:if="{{def_pickpu_list && !def_pickpu_list.length}}">
  232 + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">
  233 + 库存不足
  234 + </view>
  235 + </block>
  236 + <block wx:else>
  237 + <block wx:if="{{!def_pick_store}}">
  238 + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">
  239 + 请先选择门店
  240 + </view>
  241 + </block>
  242 + <block wx:else>
  243 + <block wx:if="{{sele_g.store_count<=0}}">
  244 + <view class="spec-cart-btn fs32" data-action="add" style="background-color: #dcdcdc;color: #999">
  245 + 库存不足
  246 + </view>
  247 + </block>
  248 + <block wx:else>
  249 + <button bindtap="buy_libao" disabled="{{submit}}" style="display: block" class="spec-cart-btn {{buyType==2?'yellow':'red-b'}} fs32" data-action="add">
  250 + <text wx:if="{{buyType==1}}">立即兑换</text>
  251 + <text wx:if="{{buyType==2}}">立即购买</text>
  252 + <text wx:if="{{buyType==3}}">立即领取</text>
  253 + <text wx:if="{{buyType==4}}">确认选择</text>
  254 + </button>
  255 + </block>
  256 +
  257 + </block>
  258 + </block>
  259 + </block>
  260 + </block>
  261 +
  262 + </view>
  263 + <view class="clear"></view>
  264 +
  265 + </view>
  266 +</view>
0 267 \ No newline at end of file
... ...