diff --git a/packageC/pages/presell/cart/cart2.js b/packageC/pages/presell/cart/cart2.js new file mode 100644 index 0000000..5a3e236 --- /dev/null +++ b/packageC/pages/presell/cart/cart2.js @@ -0,0 +1,2716 @@ +var t = getApp(), app = t, a = t.request, e = require("../../../../utils/common.js"), + s = require("../../../../utils/util.js"), ut = s, to = getApp(); +var oo = t.globalData.setting, os = oo; +var regeneratorRuntime = require('../../../../utils/runtime.js'); +var util_pay = require("../../../../utils/pay.js"); + + +Page({ + data: { + is_b_now:1, //立即购买 + url: t.globalData.setting.url, + resourceUrl: t.globalData.setting.resourceUrl, + imgUrl: t.globalData.setting.imghost, + goods: null, + order: null, + orderPrices: null, + coupons: null, + coupon: null, + invoiceToggle: !0, + payWithUserMoney: !0, + payWithPoints: !0, + maxWord: 0, + enterAddressPage: !1, + firstEnter: !0, + //页面获取的参数 + param: null, + //提交订单的格式 + formData: { + order_amount: 0,//支付金额 + total_amount: 0,//总价 + all_price: 0,//商品卖的总价 + pay_points: 0,//使用积分 + user_money: 0,//使用余额 + couponCode: "",//使用优惠券(多单就用逗号隔开) + shipping_price: 0,//物流费用 + }, + /*-----------当是购物车结算的时候-------------*/ + cartlist: null, + old_cartlist: null, + cartlist_y: null, //购物车原始列表 + js_use_money: 0, //是否使用余额 + is_all_zt: 1, //是否全部都是自提 + + /*----------------立即购买---------------------*/ + is_b_now: 0, //0是购物车结算 1立即购买 + bn_goods: null, //立即购买时候的调用商品 + bn_use_money: 0,//是否使用余额 + bn_exp_type: 1, //0是物流 1自提 + bn_pick: 0, //选择的门店 + bn_pickname: "", //选择的门店名称 + bn_t_exp_t: 0, //判断商品和门店一起决定的物流自提的方式0 都可以 1自提 2物流 + + bn_plus_cut_price: 0, //显示等级卡会优惠多少钱 + /*------------------------*/ + user_addr: null,//物流 + userinfo: null, //获取会员 + /*----------物流选择--------*/ + wu_arr: null, + index: 0, + w_sele_index: 0, + + //判断页面是返回回来的还是 首次进入的 + isclose: 1, + //申请提现的金额 + txmon: 0, + yuer: 0, + //提交中,不重复提交 + is_summit_ing: 0, + //--更优惠券抵用有关,立即购买的,如果是购物车,就要把相应的值,写入cartlist数组中-- + ckeck_quan_price: 0, + check_quan_price_list: '', + check_quan_ware_list: '', + + // 设计一个数组来存放已经选择了的券编号,coupon_no是券号,money是面值,coupon_price是真正优惠的价格,数组的下标是pickid + //using_quan[11]={coupon_no:"1212121",money:"20",coupon_price:"45"} + using_quan: {}, + open_quan: 0, + //选择的券列表 + selected_quan_list: null, + //选择的券的门店 + selected_quan_pick: null, + is_close_quan: 0, + disabled: 0, + open_express: 0,//控制选择物流名列表 的属性 + + is_express: 0, //选中物流的属性 + expres_name: "", //点击选定 + isopen: 0, //券的说明 + is_coupon: null, //选择券的控制属性 + is_shipping_code: "",//插入用户默认地址 + wu_arr_txt: "", //要更新的物流的字段 + + sales_rules: 1, //默认是显示线上库存 + isget_by_quan: {}, //是否调用了接口获取包邮券 + get_by_quan_list: null, //立即购买的 + get_by_quan_list_cart: {}, //购物车的 + by_quan_list_cart: null, //点击选择的包邮列表 + + //如果是全场包邮了,或者是全场不包邮了,就不要选包邮券 + is_no_by: {}, + is_by: {}, + is_quan_by: {}, + //--购买赠送的商品-- + buy_now_gift_goods: null, + //--订单优惠-- + order_prom: {}, + //-- 购物车优惠活动 -- + prom_goods_map: {}, + //-- order_prom_list -- + order_prom_list_cart: null, + + ispt_goods: 0, //是否平摊至单品,0要平摊 1不平摊 + + rank_switch: 0, //是不是开同等级卡 + show_card: null, //显示的等级卡 + card_name: '', //显示的卡的名称 + card_cut_price: null,//减价多少钱 + + show_submit: 0, //提交按钮变正常显示 + is_get_offline: 1, + + tabs: ['门店自提', '快递邮寄'], + currentTabIndex: 1, + + in_zhact_gdmap:{}, //不同门店参与同一活动的限购 + hid_inp:1, + user_note:{}, + }, + onLoad: function (t) { + wx.setNavigationBarTitle({title: "填写订单",}) + var th = this; + //清理一下,确保最新的系统配置 + getApp().globalData.config2 = null; + //清空is_pick_up + getApp().request.put("/api/weshop/useraddress/updatePickUp", { + data: {user_id: getApp().globalData.user_id, is_pickup: 0}, + success: function (s) { + } + }); + + }, + onUnload: function () { + this.setData({isclose: 1}) + }, + onHide: function () { + this.setData({ + isget_by_quan: {}, + is_no_by: {}, + is_by: {} + }) + }, + + //----------子页返回父页触发---------- + onShow: function () { + var th = this; + th.setData({show_submit: 0}); //让提交先掩藏 + th.data.g_cart_q_time = null; + + if (th.data.isclose == 0) { + wx.navigateTo({ + url: "/pages/index/index/index" + }) + + } else { + this.getuser_addr(function (ie) { + + //地址切换要把包邮券清空 + if (!th.data.user_addr || !ie || th.data.user_addr.address_id != ie.address_id) { + var using_quan = th.data.using_quan; + for (var i in using_quan) { + var item = using_quan[i]; + if (item.isby == 1) { + var ob = {}, txt = "using_quan[" + i + "]"; + ob[txt] = {}; + th.setData(ob); + } + } + th.data.isget_by_quan = {}; + } + + + th.data.prom_goods_map = {}; + th.data.is_summit_ing = 0; + //更换地址回来要重新调用计算价钱的接口 + if (!th.data.user_addr || th.data.user_addr.address_id != ie.address_id) { + th.setData({user_addr: ie}); + if (th.data.is_b_now == 1) { + if (th.data.bn_goods) { + th.setData({add_back: 1}); + //th.calculatePrice2(); + } + } else { + if (th.data.cartlist) { + th.setData({add_back: 1}); + //th.calculatePrice(); + } + } + } else { + th.setData({user_addr: ie}); + } + var going = 0; + + }); + var is_card_back = getApp().globalData.is_card_back; + //--更新默认地址--,看一下是不是跳到地址页面,同时也不是购买等级卡返回的,这里很重要,否则会重新更新收货物流公司 + if (!getApp().globalData.is_cart_old && !is_card_back && !getApp().globalData.plus_buy_back) { + this.update_code(); + } else { + getApp().globalData.is_cart_old = 0; + getApp().globalData.plus_buy_back = 0; + } + } + + //先获取是否有关闭使用优惠券 + getApp().getConfig2(function (ee) { + var json_d = JSON.parse(ee.switch_list); + th.data.json_d = json_d; + th.data.ispt_goods = json_d.ispt_goods; //是不是平摊到单品的控制参数赋值 + var is_default_logistics = json_d.is_default_logistics; + + th.setData({ + is_close_quan: json_d.is_close_quan, + sales_rules: ee.sales_rules, + rank_switch: json_d.rank_switch, + is_default_logistics: is_default_logistics + }); + + var rank_switch = json_d.rank_switch; + var max_price = -1; + var show_card = null; + var name = ""; + //如果有开等级卡的时候, + //因为都是调接口,要返回在计算 + if (rank_switch == 2) { + //-- 获取所有的等级卡, -- + getApp().request.promiseGet("/api/weshop/plus/vip/mem/bership/list?storeId=" + os.stoid, + {}).then(res => { + if (res.data.code == 0) { + var plusCard = res.data.data; + //-- 循环判断,拿到最贵的那张卡 -- + for (var ih in plusCard) { + if (plusCard[ih].IsStopBuy == true) { + continue; + } + if (max_price < 0) { + max_price = plusCard[ih].CardFee; + name = 'card' + plusCard[ih]['CorrPrice']; + show_card = plusCard[ih]; + } else { + if (max_price < plusCard[ih].CardFee) { + max_price = plusCard[ih].CardFee; + name = 'card' + plusCard[ih]['CorrPrice']; + show_card = plusCard[ih]; + } + } + } + + if (show_card) { + name = name.toLowerCase(); + th.setData({card_name: name, show_card: show_card}) + } + } + //-----先获取物流,再获取用户信息,再展示页面----- + th.get_wuliu(th.get_info(th.show_page)); + }) + } else { + //-----先获取物流,再获取用户信息,再展示页面----- + th.get_wuliu(th.get_info(th.show_page)); + } + + }, 1); + + //值在这里换 + getApp().globalData.plus_buy_back = 0; + }, + + //-------------------获取物流--------------- + get_wuliu(func) { + var th = this; + to.getwuliu(function (e) { + //系统是是否开启了默认的物流 + if (th.data.is_default_logistics) { + //如果第一个不是开启默认,说明要让用户自己选 + if (!e[0].is_default) { + th.setData({is_default_logistics: 0}); + } + } + th.setData({wu_arr: e}) + typeof func == "function" && func(); + }) + }, + //------获取会员信息-----先获取用户信息,在进行下一步--- + get_info: function (func) { + var user_id = t.globalData.user_id; + to.auth.get_u(func); + }, + + //------获取会员收货地址----- + getuser_addr: function (func) { + var th = this; + a.get("/api/weshop/useraddress/page", { + data: {user_id: to.globalData.user_id, store_id: oo.stoid, pageSize: 600, t: Math.random()}, + success: function (su) { + /*--- + var user_addr=[ + { 'address_id': 882, 'user_id': 2661, 'consignee': '测试测试测', 'province': 3102, 'city': 3431, 'district': 3466, + 'address': 'ed', 'more_address': '山西-长治市-襄垣县-虎(音si)亭镇', 'mobile': 13012345678,'is_default':1}, + ];---*/ + var item = null; + if (su.data.code == 0 && su.data.data && su.data.data.pageData) { + var user_addr = su.data.data.pageData; + var def_item = null; + for (var i = 0; i < user_addr.length; i++) { + if (user_addr[i]['is_default'] == 1) { + def_item = user_addr[i]; + } + if (user_addr[i]['is_pickup'] == 1) { + item = user_addr[i]; + } + } + + if (item == null) item = def_item; + if (item == null) item = user_addr[0]; + } + + if (item == undefined) item = null; + if (!item) th.setData({user_addr: null}); //地址为空的时候,要清空,因为返回的时候,有缓存 + + func(item); + } + }); + }, + + //----------------展示页面,是再获取用户信息之后-------------- + show_page: function () { + var th = this; + //th.setData({ userinfo: getApp().globalData.userInfo,}); //这个余额被缓存了 + + //会员的信息,要获取最新 + var user = getApp().globalData.userInfo; + getApp().request.get("/api/weshop/users/get/" + oo.stoid + "/" + user.user_id, { + data: {r: Math.random()}, + success: function (e) { + getApp().globalData.userInfo = e.data.data; + th.setData({userinfo: e.data.data}); + + //选获取地址 + th.getuser_addr(function (addr) { + th.setData({user_addr: addr}); + //--------------------------立即购买------------------ + //读取门店 + to.get_allsto(function (e) { + th.setData({allsto: e}); + //获取立即购买的商品信息 + th.get_buy_goods(); + }); + + }); + + //获取提现金额 + getApp().request.get("/api/weshop/withdrawals/summoney", { + data: {user_id: to.globalData.user_id, store_id: oo.stoid, status: 0}, + success: function (su) { + if (su.data.code == 0) { + var yuer = parseFloat(th.data.userinfo.user_money - + (th.data.userinfo.frozen_money > 0 ? th.data.userinfo.frozen_money : 0) - su.data.data.summoney).toFixed(2); + th.setData({txmon: su.data.data.summoney, yuer: yuer}); + } + } + }); + + }, + }); + + }, + + //-----获取立即购买的商品信息,入口---- + get_buy_goods: function (e) { + var th = this; + th.data.gg = to.get_b_now(); + //--------如果goods_id一样,就是要立即购买----- + getApp().request.get("/api/weshop/goods/get/" + oo.stoid + "/" + th.data.gg.goods_id, { + success: async function (t) { + var gd = t.data.data; + if (!gd) return false; + + t.data.data.original_img = oo.imghost + t.data.data.original_img; + t.data.data['buynum'] = th.data.gg.goods_num; + var distr_t = 0, et = 0 + if (t.data.data.distr_type == 0) { + distr_t = th.data.gg.pick_dis; + } else { + distr_t = t.data.data.distr_type; + } + + switch (distr_t) { + case 0: + et = 1; + //-- 系统后台有设置要默认的 -- + if (th.data.json_d.pickupway && th.data.json_d.pickupway == 1) et = 0; + break; + case 1: + et = 1; + break; + case 2: + et = 0; + break; + } + + + var m_wind = 0, def_exp_code = getApp().globalData.userInfo.def_exp_code; + if (et == 0 && def_exp_code) { + for (var k = 0; k < th.data.wu_arr.length; k++) { + var item = th.data.wu_arr[k]; + if (def_exp_code == item.code) { + m_wind = k; + } + } + } + + if (th.data.bn_goods) { + et = th.data.bn_exp_type; + m_wind = th.data.index; + } + + //---是不是购买等级卡成功的返回---等级卡显示的判断--- + var is_card_back = getApp().globalData.is_card_back; + if (is_card_back) { + th.data.card_name = th.data.userinfo.card_field; + th.data.gg.goods_price = gd[th.data.card_name]; + getApp().globalData.is_card_back = 0; + th.setData({card_cut_price: 0}); + //如果是秒杀的返回 + if (gd.prom_type == 1) gd.prom_type = 0; + } else { + //--- 商家等级卡开通的情况下, 会员不是等级会员的情况, 商品有设置等级卡价格,同时等级卡价格小于商品的价格 + //-- 搭配购的商品也可以单独购买,所以此时搭配购的商品要进行计算优惠 -- + if (!th.data.gg.collocation_goods && gd['prom_type'] != 6 && th.data.card_name && gd[th.data.card_name] > 0 && th.data.gg.goods_price > gd[th.data.card_name] && !th.data.userinfo.card_field) { + var cut_p = (th.data.gg.goods_price - gd[th.data.card_name]) * th.data.gg.goods_num; + th.setData({card_cut_price: cut_p}); + } + } + + //定义变量 + var gg = th.data.gg,act = null,prelist = null; + var url = "/api/weshop/marketing/marketingPresellForm/get/" + os.stoid + "/" + gg.prom_id; + await getApp().request.promiseGet(url, {}).then(res => { + if (res.data.code == 0) { + act = res.data.data; + } + }) + if (!act) { + wx.showToast({title: "未找到活动", icon: 'none', duration: 3000}); + return false; + } + if (act.is_end==1 ) { + wx.showToast({title:'活动已经结束' , icon: 'none', duration: 3000}); + return false; + } + if( ut.gettimestamp()>act.end_time){ + wx.showToast({title:"活动定金支付时间已过期" , icon: 'none', duration: 3000}); + return false; + } + + var url = "/api/weshop/marketing/marketingPresellList/get/" + os.stoid + "/" + gg.presell_list_id; + await getApp().request.promiseGet(url, {}).then(res => { + if (res.data.code == 0) { + prelist = res.data.data; + } + }) + if (!prelist) { + wx.showToast({title: "未找到商品", icon: 'none', duration: 3000}); + return false; + } + + if(act.is_usecoupon==1){ + th.data.ckeck_quan_price = t.data.data.shop_price * gg.goods_num; + th.data.check_quan_price_list = t.data.data.shop_price * gg.goods_num + ""; + th.data.check_quan_ware_list = t.data.data.erpwareid + ""; + } + + //这个位置要拿活动的预售价 + t.data.data.shop_price = prelist.presell_money; + th.setData({ + bn_goods: t.data.data, + bn_pickname: gg.pick_name, + bn_exp_type: et, + index: m_wind, + bn_pick: gg.pick_id, + bn_t_exp_t: distr_t, + bn_exp_type: et, + act:act + }); + + //计算价格 + th.calculatePrice2(); + //获取优惠券,如果有券的钱,就调用 + if(th.data.ckeck_quan_price>0) th.get_buy_now_quan(); + + + }, + }); + + }, + + //---------------检查是否有收货地址------------------- + checkAddressList: function () { + var t = this; + return !(!this.data.order || null == this.data.order.userAddress) || (wx.showModal({ + title: "请先填写或选择收货地址~", + success: function (a) { + a.confirm ? t.enterAddressPage() : wx.navigateBack(); + }, + fail: function () { + wx.navigateBack(); + } + }), !1); + }, + showInvoice: function () { + this.setData({ + invoiceToggle: !this.data.invoiceToggle + }); + }, + keyUpChangePay1: function (t) { + this.setData({ + payWithUserMoney: !(t.detail.value.length > 0) + }); + }, + keyUpChangePay2: function (t) { + this.setData({ + payWithPoints: !(t.detail.value.length > 0) + }); + }, + keyUpChangeNum: function (t) { + var index = t.currentTarget.dataset.index; + var txt="user_note."+index; + this.setData({ + maxWord: t.detail.value.length, + [txt]: t.detail.value + }); + }, + set_can_num: function () { + var th = this; + //-- 这个地方,循环计算几张优惠券可用-- + for (var iter in th.data.cartlist) { + var num = 0; + var c_item = th.data.cartlist[iter]; + var pkid = c_item.pickup_id; + //-- 普通券 -- + if (c_item.quan_list) { + for (var iter1 in c_item.quan_list) { + //判断是不是其他订单有选用 + var is_other_is_use = th.check_other_use(c_item.quan_list[iter1], pkid); + if (!is_other_is_use) num++; + } + } + //-- 包邮券 -- + var by_quan = th.data.get_by_quan_list_cart[pkid]; + if (by_quan) { + for (var iter2 in by_quan) { + //判断是不是其他订单有选用 + var is_other_is_use = th.check_other_use_by(by_quan[iter2], pkid); + if (!is_other_is_use) num++; + } + } + var set_txt = "cartlist[" + iter + "].can_num"; + th.setData({[set_txt]: num}); + } + }, + + + //---------计算立即购买---------- + calculatePrice2: function () { + var th = this, good = this.data.bn_goods; + + if (!good) return false; + + //搭配的计算要用购物的车计算方法 + if (good.prom_type == 5) { + th.calculatePrice(); + return false; + } + + wx.showLoading({ + title: "处理中." + }) + //-----------计算商品总价-------------- + var allpice = good.shop_price * good.buynum; + var cut_price = 0; + var allpice1 = allpice; + + + if (good.prom_type == 3 && good.prom_price !== null) { + cut_price = allpice - good.prom_price; + } + + allpice = parseFloat(allpice).toFixed(2); + var txt = "formData.all_price"; + th.setData({[txt]: allpice,}); + if (cut_price) { + var c_txt = "formData.cut_price"; + th.setData({[c_txt]: cut_price,}); + + } + + //如果有线下取价的时候 + if (good.is_offline) { + allpice = good.offline_price * good.buynum; + } + + + to.getConfig2(function (ee) { + to.getwuliuprice(async function (rs) { + + var o_shipping_price = 0, goods_weight = -1, goods_piece = -1; + + //---如果有选择优惠券的情况下--- + var quan_price = 0, bn_pick = th.data.bn_pick; + var quan_no = null; + if (th.data.using_quan[bn_pick] != null && th.data.using_quan[bn_pick] != undefined) + quan_no = th.data.using_quan[bn_pick].coupon_no; + + if (quan_no) { + if (th.data.using_quan[bn_pick].isby != 1) { + //---获取优惠券优惠--- + await getApp().request.promiseGet("/api/weshop/couponList/getUseCouponPrice", { + data: { + storeId: oo.stoid, + CashRepNo: quan_no, + WaresSum: th.data.ckeck_quan_price, + WareIds: th.data.check_quan_ware_list + } + }).then(res => { + if (res.data.code == 0 && res.data.data && res.data.data.length > 0) { + quan_price = res.data.data[0].WareCashSum; + } + }) + } + } + + //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮---------- + if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_free_shipping == 0 && good.is_past != 1) { + //看是不是有调用过包邮券 + if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1) { + var condition = allpice - cut_price - quan_price; + //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱--- + getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", { + data: { + store_id: os.stoid, + isuse: 0, + condition: condition, + user_id: getApp().globalData.user_id, + pageSize: 2000 + } + }).then(res => { + if (res.data.code == 0 && res.data.data.total > 0) { + //此时要循环判断包邮的地区,不包邮商品是不是符合 + var arr = [], quanlist = res.data.data.pageData; + quanlist = th.check_is_frozenQuan(quanlist, th.data.frozenQuan, 1); + for (var i in quanlist) { + var item = quanlist[i]; + if (item.region_list && th.check_by_area(item.region_list)) continue; //如果是不包邮区域 + if (item.goods_list && th.check_by_goods(item.goods_list)) continue; //如果是不包邮商品 + arr.push(item); + } + if (arr) { + th.setData({get_by_quan_list: arr}); + } + th.data.isget_by_quan[th.data.bn_pick] = 1; + } + }) + } + + switch (good['exp_sum_type']) { + case 1: + //统一运费 + o_shipping_price += good['uniform_exp_sum']; + break; + case 2: + if (goods_weight < 0) goods_weight = 0; + //累积商品重量 每种商品的重量 * 数量 + goods_weight += good['weight'] * good['buynum']; + break; + case 3: + if (goods_piece < 0) goods_piece = 0; + //累积商品数量 + goods_piece += good['buynum']; + break; + } + + var code = ""; + if (th.data.wu_arr && th.data.wu_arr[th.data.index]) code = th.data.wu_arr[th.data.index].code; + var freight_free = ee.freight_free; //全场满多少包邮 + var no_ex_id = ee.no_ex_id; + th.data.is_no_by[th.data.bn_pick] = 0; + + var no_by_data = null; + var gift_freight_free = freight_free; + + + //有不包邮区域,且不免运费 + if (no_ex_id && freight_free > 0 && freight_free <= parseFloat(allpice) - cut_price - quan_price) { + //-----------获取不包邮区域,不包邮商品------- + await getApp().request.promiseGet("/api/weshop/areaFeemail/getAreaGoods", { + data: {store_id: os.stoid, id: no_ex_id} + }).then(res => { + if (res.data.code == 0 && res.data.data && res.data.data.length > 0) { + no_by_data = res.data.data[0]; + //如果有设置不包邮区域的时候 + if (res.data.data[0].region_list) { + if (th.check_by_area(res.data.data[0].region_list)) { + freight_free = 0; + th.data.is_no_by[th.data.bn_pick] = 1; + } + } + //如果有设置不包邮商品 + if (res.data.data[0].goods_list && freight_free) { + if (th.check_by_goods(res.data.data[0].goods_list)) { + freight_free = 0; + th.data.is_no_by[th.data.bn_pick] = 1; + } + } + } + }) + } + + th.data.is_by[th.data.bn_pick] = 0; + //--------------开始计算物流------------------ + var shipping_price = + th.calculatewuliu(code, o_shipping_price, goods_weight, + goods_piece, th.data.user_addr, freight_free, parseFloat(allpice) - cut_price - quan_price, rs); + + //如果有赠品的时候,也要计算赠品的物流费用 + if (th.data.buy_now_gift_goods) { + shipping_price = th.get_now_gift_goods_wuliu(code, o_shipping_price, th.data.user_addr, gift_freight_free, + parseFloat(allpice) - cut_price - quan_price, rs, shipping_price, no_by_data, goods_weight, goods_piece); + } + + if (shipping_price <= 0) { + th.data.is_by[th.data.bn_pick] = 1; //已经是包邮了,就不要选择包邮券 + } + + shipping_price = parseFloat(shipping_price).toFixed(2); + var wl_txt = "formData.shipping_price"; + th.setData({[wl_txt]: shipping_price,}) + + } else { + var wl_txt = "formData.shipping_price"; + th.setData({[wl_txt]: 0,}) + } + + if (quan_no) { + if (th.data.using_quan[bn_pick].isby == 1) { + shipping_price = 0; + var wl_txt = "formData.shipping_price"; + th.setData({[wl_txt]: 0,}) + } + } + //-----------------支付价,优惠券不减物流----------------- + var total_m = (parseFloat(allpice1)).toFixed(2); + var order_m = (parseFloat(allpice - cut_price) - quan_price).toFixed(2); + var coupon_price = quan_price; //优惠券优惠了多少钱 + if (order_m < 0) { + order_m = 0; + coupon_price = parseFloat(order_m).toFixed(2); + } + //--看一下有没有订单优惠-- + var o_condition = parseFloat(order_m); + if (o_condition > 0 && th.data.act.is_useorderyh) { + th.check_is_order_prom(o_condition, function () { + var order_prom_amount = 0; + var order_prom_id = 0; + if (th.data.order_prom[th.data.bn_pick]) { + var ord_prom = th.data.order_prom[th.data.bn_pick]; + order_prom_id = ord_prom['id']; + switch (ord_prom['type']) { + case 0: + order_m = Math.round(o_condition * ord_prom['expression']) / 100;//满额打折 + order_prom_amount = (o_condition - order_m).toFixed(2); + break; + case 1: + order_m = o_condition - ord_prom['expression'];//满额优惠金额 + order_prom_amount = ord_prom['expression']; + break; + } + } + //--订单优惠的显示-- + if (order_prom_id > 0) { + var order_prom_txt1 = "formData.order_prom_id"; + var order_prom_txt2 = "formData.order_prom_amount"; + th.setData({[order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount}) + } + + total_m = parseFloat(total_m) + parseFloat(th.data.formData.shipping_price); + order_m = parseFloat(order_m) + parseFloat(th.data.formData.shipping_price); + + total_m = total_m.toFixed(2); + order_m = order_m.toFixed(2); + + var atxt = "formData.total_amount"; + th.setData({[atxt]: total_m,}) + + var txt = "formData.user_money"; + var txt2 = "formData.order_amount"; + var txt3 = "formData.coupon_price"; + var amoney = parseFloat(th.data.userinfo.user_money - th.data.txmon - th.data.userinfo.frozen_money); + //--------------如果使用余额--------------------- + if (th.data.bn_use_money == 1) { + if (amoney > order_m) { + order_m = parseFloat(order_m).toFixed(2); + th.setData({[txt]: order_m, [txt2]: 0, [txt3]: coupon_price, show_submit: 1}) + } else { + order_m = parseFloat(order_m) - parseFloat(amoney); + order_m = order_m.toFixed(2); + th.setData({[txt]: amoney, [txt2]: order_m, [txt3]: coupon_price, show_submit: 1}) + } + } else { + th.setData({[txt]: 0, [txt2]: order_m, [txt3]: coupon_price, show_submit: 1}) + } + //优惠活动送积分 + if (good.s_intValue) { + txt = "formData.give_integral"; + th.setData({[txt]: good.s_intValue}); + } + //优惠送券 + if (good.s_coupon_id) { + var i_txt = "formData.give_coupon_id"; + //这个是json格式的 + var i_txt1 = "formData.g_coupon_num"; + var ob = [{"num": good.s_coupon_num, "c_id": good.s_coupon_id}]; + ob = JSON.stringify(ob); + th.setData({[i_txt]: good.s_coupon_id, [i_txt1]: ob}); + } + //优惠礼包 + if (good.s_libao) { + var l_txt = "formData.give_lb_id"; + //这个是json格式的 + var l_txt1 = "formData.g_lb_num"; + var ob = [{"num": good.s_lb_num, "l_id": good.s_libao}]; + ob = JSON.stringify(ob); + th.setData({[l_txt]: good.s_libao, [l_txt1]: ob}); + } + }) + } else { + total_m = parseFloat(total_m) + parseFloat(th.data.formData.shipping_price); + order_m = parseFloat(order_m) + parseFloat(th.data.formData.shipping_price); + var atxt = "formData.total_amount"; + + total_m = total_m.toFixed(2); + order_m = order_m.toFixed(2); + + th.setData({[atxt]: total_m,}) + + var txt = "formData.user_money"; + var txt2 = "formData.order_amount"; + var txt3 = "formData.coupon_price"; + var amoney = parseFloat(th.data.userinfo.user_money - th.data.txmon - th.data.userinfo.frozen_money); + //--------------如果使用余额--------------------- + if (th.data.bn_use_money == 1) { + if (amoney > order_m) { + order_m = parseFloat(order_m).toFixed(2); + th.setData({[txt]: order_m, [txt2]: 0, [txt3]: coupon_price, show_submit: 1}) + } else { + order_m = parseFloat(order_m) - parseFloat(amoney); + order_m = order_m.toFixed(2); + th.setData({[txt]: amoney, [txt2]: order_m, [txt3]: coupon_price, show_submit: 1}) + } + } else { + th.setData({[txt]: 0, [txt2]: order_m, [txt3]: coupon_price, show_submit: 1}) + } + //优惠活动送积分 + if (good.s_intValue) { + txt = "formData.give_integral"; + th.setData({[txt]: good.s_intValue}); + } + //优惠送券 + if (good.s_coupon_id) { + var i_txt = "formData.give_coupon_id"; + //这个是json格式的 + var i_txt1 = "formData.g_coupon_num"; + var ob = [{"num": good.s_coupon_num, "c_id": good.s_coupon_id}]; + ob = JSON.stringify(ob); + th.setData({[i_txt]: good.s_coupon_id, [i_txt1]: ob}); + } + //优惠礼包 + if (good.s_libao) { + var l_txt = "formData.give_lb_id"; + //这个是json格式的 + var l_txt1 = "formData.g_lb_num"; + var ob = [{"num": good.s_lb_num, "l_id": good.s_libao}]; + ob = JSON.stringify(ob); + th.setData({[l_txt]: good.s_coupon_id, [l_txt1]: ob}); + } + } + + wx.hideLoading(); + + }); + }); + }, + + //--------------------提交订单----------------------- + async submitForm(t){ + var sub_value = t; + + if (this.data.is_summit_ing == 1) return false; //--提交中退出-- + this.data.is_summit_ing = 1; + var th = this, pdata = new Array(); + var ff = true; + th.data.is_b_now = 1; + //------------立即购买------------- + if (th.data.is_b_now == 1 && th.data.bn_goods.prom_type != 5) { + + if (th.data.bn_exp_type == 0 && th.data.user_addr == null) { + ff = false; + getApp().my_warnning("请选择收货地址", 0, th); + th.data.is_summit_ing = 0; + } + if (!ff) return false; + var addr = th.data.user_addr; + if (th.data.bn_exp_type == 1) addr = null; + + if (th.data.bn_exp_type == 0) + if (th.data.wu_arr == null || th.data.wu_arr.length <= 0) { + getApp().my_warnning("读取物流失败", 0, th); + th.data.is_summit_ing = 0; + return false; + } + + var item = { + 'user_id': to.globalData.user_id, + 'consignee': addr == null ? "" : addr.consignee, + 'province': addr == null ? 0 : addr.province, + 'city': addr == null ? 0 : addr.city, + 'district': addr == null ? 0 : addr.district, + 'twon': addr == null ? 0 : addr.twon, + 'address': addr == null ? "" : addr.address, + 'more_address': addr == null ? "" : addr.more_address, + //'mobile': th.data.userinfo.mobile, + 'mobile': addr == null ? th.data.userinfo.mobile : addr.mobile, + 'email': '', + 'shipping_code': th.data.bn_exp_type == 1 ? 0 : th.data.wu_arr[th.data.index].code, + 'shipping_name': th.data.bn_exp_type == 1 ? '' : th.data.wu_arr[th.data.index].name, + 'invoice_title': '', + 'goods_price': th.data.formData.all_price, //商品总价 + 'shipping_price': th.data.formData.shipping_price, //物流金额 + 'user_money': th.data.formData.user_money, //使用余额 + 'total_amount': th.data.formData.total_amount, //订单总价 + 'order_amount': th.data.formData.order_amount, //应付 + 'user_note': t.detail.value.user_note, //用户备注 + 'store_id': oo.stoid, //商家 + 'pickup_id': th.data.bn_pick, //门店 + 'exp_type': th.data.bn_exp_type, //配送方式 + 'order_goods': new Array(), + }; + //是不是重新提交 + if (th.data.is_continue == 1) item.is_continue = 1; + + //获取立即购买的商品的信息 + var gg = to.get_b_now(); + //--商品的房间号-- + if (gg.room_id && gg.room_id > 0) { + item.room_ids = gg.room_id; + } + + var order_prom_list = {}; + //--判断有没有优惠活动-- + if (th.data.order_prom[item.pickup_id]) { + if (th.data.formData.order_prom_amount > 0) { + order_prom_list.order_prom_id = th.data.formData.order_prom_id; + order_prom_list.order_prom_amount = th.data.formData.order_prom_amount; + } + } + + //--判断优惠活动的提交-- + if (th.data.formData.cut_price > 0 ) { + order_prom_list.discount_amount = th.data.formData.cut_price.toFixed(2); + var ob = [{ + "prom_id": th.data.bn_goods.prom_id, + "dis": parseFloat(th.data.formData.cut_price).toFixed(2), + "ispt": 0 + }] + order_prom_list.prom_pt_json = JSON.stringify(ob); + } + if (th.data.formData.give_integral > 0) { + order_prom_list.give_integral = th.data.formData.give_integral; + } + if (th.data.formData.give_coupon_id > 0) { + order_prom_list.give_coupon_id = th.data.formData.give_coupon_id; + order_prom_list.g_coupon_num = th.data.formData.g_coupon_num; + } + if (th.data.formData.give_lb_id > 0) { + order_prom_list.give_lb_id = th.data.formData.give_lb_id; + order_prom_list.g_lb_num = th.data.formData.g_lb_num; + } + item.order_prom_list = order_prom_list; + + //组装优惠券的钱 + if (parseFloat(th.data.formData.coupon_price) > 0) { + item.coupon_price = th.data.formData.coupon_price; + item.coupon_no = th.data.using_quan[th.data.bn_pick].coupon_no; + } + if (th.data.using_quan[th.data.bn_pick] && th.data.using_quan[th.data.bn_pick].coupon_no && th.data.using_quan[th.data.bn_pick].isby) { + item.coupon_no = th.data.using_quan[th.data.bn_pick].coupon_no; + item.coupon_price = 0; + } + + //老会员成为分销下线需要的参数 + if (getApp().globalData.first_leader && !getApp().globalData.userInfo.first_leader) { + //判断一下分享人是不是分享商 + await app.request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + getApp().globalData.first_leader, {}).then(res => { + if (res.data.code == 0) { + var user = res.data.data; + if (user.is_distribut == 1) { + item.first_leader = parseInt(getApp().globalData.first_leader); + } + } + }) + } + + var goods = { + 'goods_id': gg.goods_id, + 'goods_name': gg.goods_name, + 'goods_sn': gg.goods_sn, + 'goods_num': gg.goods_num, + 'market_price': th.data.bn_goods.market_price, + 'goods_price': th.data.bn_goods.shop_price, + 'member_goods_price': th.data.bn_goods.shop_price, + 'store_id': oo.stoid, + 'prom_type': th.data.bn_goods.prom_type, //促销活动类型 + 'prom_id': th.data.bn_goods.prom_id, //促销活动id + }; + + //-- 把导购的信息填入-- + if (gg.guide_id) { + goods.guide_id = gg.guide_id; + goods.guide_type = gg.guide_type; + //调用接口判断是不是会员 + await getApp().request.promiseGet("/api/weshop/shoppingGuide/getId/" + oo.stoid + "/" + gg.guide_id, {}).then(res => { + if (res.data.code == 0) { + goods.guide_name = res.data.data.salesman; + goods.guide_sn = res.data.data.salesman_no; + } + }) + } + + //--商品的房间号-- + if (gg.room_id && gg.room_id > 0) { + goods.room_id = gg.room_id; + } + + //积分购,先要带is_integral_normal=1 + if (gg.is_integral_normal) goods.is_integral_normal = 1; + + //先要带is_pd_normal=1 + if (gg.is_pd_normal) goods.is_pd_normal = 1; + + //如果不立即购买或者秒杀,如果是线下库存购买的时候 + if (goods.prom_type != 1 && goods.prom_type != 6 && th.data.sales_rules == 2) { + var isok = 1; + await th.check_store_num(goods.goods_id, th.data.bn_pick, gg.goods_num, function (res) { + isok = res; + }); + if (!isok) { + getApp().confirmBox("商品的门店库存不足"); + th.data.is_summit_ing = 0; + return false; + } + } + + //-- 如果有线下取价的话 -- + if (th.data.bn_goods.is_offline) { + item.sum_offline_cut = (th.data.bn_goods.shop_price - th.data.bn_goods.offline_price).toFixed(2); + goods.offline_cut = item.sum_offline_cut; + goods.pricing_type = th.data.bn_goods.pricing_type; + goods.goods_price = th.data.bn_goods.offline_price; + goods.member_goods_price = th.data.bn_goods.offline_price; + } + + //--- 如果有优惠促销的金额,要把金额先平摊下去 --- + if (th.data.formData.cut_price > 0 && !th.data.ispt_goods) { + var g_arr = new Array(); + g_arr.push(goods); + var pt_data = { + 'prom_id': goods.prom_id, + 'dis': parseFloat(th.data.formData.cut_price), + 'goods': g_arr, + } + + var pt_res = null; + await getApp().request.promisePost("/api/weshop/order/getGoodsSplit", { + is_json: 1, + data: pt_data + }).then(res => { + if (res.data.code == 0) { + pt_res = res.data.data; + } + }) + if (pt_res) { + //平摊赋值 + goods.account = pt_res[0].fisrt_account; + goods.account_yu = pt_res[0].fisrt_account_yu; + item.is_discount_amount = 1; + } + } + + //--组装优惠券的钱-- + if (th.data.formData.coupon_price) { + item.coupon_price = th.data.formData.coupon_price; + item.coupon_no = th.data.using_quan[th.data.bn_pick].coupon_no; + goods.quan_num = th.data.formData.coupon_price; + goods.quan_no = item.coupon_no; + } + + item.order_goods.push(goods); + + //--如果有赠品的时候,赠品也要提交--- + if (th.data.buy_now_gift_goods) { + var gift_gg = th.data.buy_now_gift_goods; + var g_goods = { + 'goods_id': gift_gg.goods_id, + 'goods_name': gift_gg.goods_name, + 'goods_sn': gift_gg.goods_sn, + 'goods_num': gift_gg.buynum, + 'market_price': gift_gg.market_price, + 'goods_price': 0, + 'member_goods_price': 0, + 'store_id': oo.stoid, + 'is_gift': 1, + 'gift_id': gift_gg.gift_id, + 'prom_id': gift_gg.prom_id, + }; + item.order_goods.push(g_goods); + } + pdata.push(item); + + console.log(pdata); + } else { + //---------购物车的结算--------- + if (th.data.is_all_zt == 0 && th.data.user_addr == null) { + th.data.is_summit_ing = 0; + ff = false; + getApp().confirmBox("请新建收货地址"); + } + if (!ff) return false; + + var addr = th.data.user_addr; + if (th.data.is_all_zt == 1) addr = null; + var val_arr = t.detail.value; + + if (th.data.is_all_zt != 1) + if (th.data.wu_arr == null || th.data.wu_arr.length <= 0) { + th.data.is_summit_ing = 0; + getApp().confirmBox("读取物流失败"); + return false; + } + + var order_prom_list_cart = th.data.order_prom_list_cart; + + //--组装推送数据-- + for (var i = 0; i < order_prom_list_cart.length; i++) { + var t_item = order_prom_list_cart[i]; + var item = { + 'user_id': to.globalData.user_id, + 'consignee': addr == null ? th.data.userinfo.mobile : addr.consignee, + 'province': addr == null ? 0 : addr.province, + 'city': addr == null ? 0 : addr.city, + 'district': addr == null ? 0 : addr.district, + 'twon': addr == null ? 0 : addr.twon, + 'address': addr == null ? "" : addr.address, + 'more_address': addr == null ? "" : addr.more_address, + 'mobile': addr == null ? th.data.userinfo.mobile : addr.mobile, + 'email': '', + 'shipping_code': th.data.is_all_zt == 1 ? 0 : th.data.wu_arr[t_item.wind].code, + 'shipping_name': th.data.is_all_zt == 1 ? '' : th.data.wu_arr[t_item.wind].name, + 'invoice_title': '', + 'goods_price': t_item.goods_price, //商品总价 + 'shipping_price': t_item.shipping_price, //物流金额 + 'user_money': t_item.user_money, //使用余额 + 'total_amount': t_item.total_amount, //订单总价 + 'order_amount': t_item.order_amount, //应付 + 'user_note': val_arr['user_note_' + t_item.pickup_id], //用户备注 + 'store_id': oo.stoid, //商家 + 'pickup_id': t_item.pickup_id, //门店 + 'exp_type': t_item.exp_type, //配送方式 + 'order_goods': new Array(), + }; + //是不是重新提交 + if (th.data.is_continue == 1) item.is_continue = 1; + //----- 如果有线下取价的话 ---- + if (t_item.is_offline == 1) { + item.sum_offline_cut = t_item.offline_price.toFixed(2); + } + + //组装优惠券的钱 + if (t_item.coupon_price) { + item.coupon_price = t_item.coupon_price; + item.coupon_no = th.data.using_quan[t_item.pickup_id].coupon_no; + } else if (t_item.quan_no) { + item.coupon_no = t_item.quan_no; + item.coupon_price = 0; + } + + var order_prom_list = {}; + //--判断有没有优惠活动-- + if (t_item.order_prom_amount > 0) { + order_prom_list.order_prom_id = t_item.order_prom_id; + order_prom_list.order_prom_amount = t_item.order_prom_amount; + } + + order_prom_list.discount_amount =0; + //--判断优惠活动的提交-- + if (t_item.cut_price > 0) { + order_prom_list.discount_amount += t_item.cut_price; + order_prom_list.prom_pt_json = JSON.stringify(t_item.prom_pt_json); + } + //--判断组合优惠活动的提交-- + if (t_item.zh_cut_price > 0 || t_item.zh_cut_price<0) { + order_prom_list.discount_amount += t_item.zh_cut_price; + order_prom_list.zh_pt_json = JSON.stringify(t_item.zh_pt_json); + } + if (t_item.s_intValue > 0) { + order_prom_list.give_integral = t_item.s_intValue; + } + if (t_item.s_coupon_id) { + order_prom_list.give_coupon_id = t_item.s_coupon_id; + order_prom_list.g_coupon_num = JSON.stringify(t_item.g_coupon_num); + } + if (t_item.s_libao) { + order_prom_list.give_lb_id = t_item.s_libao; + order_prom_list.g_lb_num = JSON.stringify(t_item.g_lb_num); + } + if (Object.keys(order_prom_list).length > 0){ + if(order_prom_list.discount_amount) + order_prom_list.discount_amount= parseFloat(order_prom_list.discount_amount).toFixed(2); + if(order_prom_list.order_prom_amount) + order_prom_list.order_prom_amount= parseFloat(order_prom_list.order_prom_amount).toFixed(2); + item.order_prom_list = order_prom_list; + } + + + //老会员成为分销下线需要的参数 + if (getApp().globalData.first_leader && !getApp().globalData.userInfo.first_leader) { + //判断一下分享人是不是分享商 + await app.request.promiseGet("/api/weshop/users/get/" + os.stoid + "/" + getApp().globalData.first_leader, {}).then(res => { + if (res.data.code == 0) { + var user = res.data.data; + if (user.is_distribut == 1) { + item.first_leader = parseInt(getApp().globalData.first_leader); + } + } + }) + } + + + //房间号的ids + var room_ids = ""; + //-------------让商品添加到商品列表-------------------- + for (var k = 0; k < t_item.goods.length; k++) { + var g_item = t_item.goods[k]; + if(g_item.goods_num<=0) continue; + var goods = { + 'goods_id': g_item.goods_id, + 'goods_name': g_item.goods_name, + 'goods_sn': g_item.goods_sn, + 'goods_num': g_item.goods_num, + 'market_price': g_item.market_price, + 'goods_price': g_item.goods_price, + 'member_goods_price': g_item.goods_price, + 'store_id': oo.stoid, + }; + + //-- 线下取价也要写入,组合购的商品不能去线下价格 -- + if (g_item.offline_price && t_item.is_offline == 1 && g_item.prom_type!=7) { + goods.goods_price = g_item.offline_price; + goods.member_goods_price = g_item.offline_price; + goods.offline_cut = (g_item.goods_price - g_item.offline_price).toFixed(2); + goods.pricing_type = g_item.pricing_type; + } + + //--把券的钱,写入从表--- + if (t_item.quan_youhui_list && t_item.coupon_price) { + for (var kk in t_item.quan_youhui_list) { + var you_item = t_item.quan_youhui_list[kk]; + if (g_item.prom_type!=7 && g_item.erpwareid == you_item.WareId) { + goods.quan_num = you_item.WareCashSum; + goods.quan_no = you_item.CashRepNo; + } + } + } + + //--判断活动的类型-- + switch (g_item.prom_type) { + case 1: + goods.prom_type = g_item.prom_type; + goods.prom_id = g_item.prom_id; + break; + case 3: + goods.prom_type = 3; + goods.prom_id = g_item.prom_id; + if (g_item.is_gift) { + goods.is_gift = g_item.is_gift; + goods.gift_id = g_item.gift_id; + } + break; + case 5: + goods.prom_type = 5; + goods.prom_id = g_item.prom_id; + if (g_item.is_collocation) { + goods.is_collocation = g_item.is_collocation; + } + break + case 7: + goods.prom_type = 7; + goods.prom_id = g_item.prom_id; + break + default: + goods.prom_type = 0; + goods.prom_id = 0; + } + + //如果不立即购买或者秒杀,如果是线下库存购买的时候 + if (goods.prom_type == 0 && th.data.sales_rules == 2) { + var isok = 1; + await th.check_store_num(goods.goods_id, t_item.pickup_id, goods.goods_num, function (res) { + isok = res; + }); + if (!isok) { + getApp().confirmBox(goods.goods_name + "的门店库存不足"); + th.data.is_summit_ing = 0; + return false; + } + } + + //把优惠的平摊结果写进去 + if (g_item.account >= 0 || (g_item.account_yu != 0 && g_item.account!=undefined)) { + if (g_item.account >= 0) goods.account = g_item.account; + if (g_item.account_yu != 0) goods.account_yu = g_item.account_yu; + item.is_discount_amount = 1; + } + + //导购ID + if (g_item.guide_id) { + goods.guide_id = g_item.guide_id; + goods.guide_type = g_item.guide_type; + //调用接口判断是不是会员 + await getApp().request.promiseGet("/api/weshop/shoppingGuide/getId/" + oo.stoid + "/" + g_item.guide_id, {}).then(res => { + if (res.data.code == 0) { + goods.guide_name = res.data.data.salesman; + goods.guide_sn = res.data.data.salesman_no; + } + }) + } + //如果房间号不为空的时候 + if (g_item.room_id) { + goods.room_id = g_item.room_id; + room_ids += g_item.room_id + ","; + } + item.order_goods.push(goods); + } + + //如果房间号不为空的时候 + if (room_ids != "") item.room_ids = ut.sub_last(room_ids); + pdata.push(item); + } + + + } + + if (pdata.length == 0) return; + var str = JSON.stringify(pdata); + + wx.showLoading({title: "加载中"}); + wx.request({ + url: oo.url + '/api/weshop/order/createWxdOrder', + data: str, + method: 'POST', + header: { + 'content-type': 'application/json' + },// 设置请求的 header + success: function (res) { + + + wx.hideLoading(); + if (res.statusCode == 200) { + var data = res.data; + if (data.code == 0) { + console.log(th.data.is_b_now); + //如果是购物车结算,还要删除购物车 + if (th.data.is_b_now == 0) { + console.log(th.data.cartlist_y); + var list = th.data.cartlist_y; + for (var i = 0; i < list.length; i++) { + //删除购物车 + a.delete("/api/weshop/cart/del/" + oo.stoid + "/" + list[i].id, {}); + } + } + var order_amount = 0; + pdata.forEach(function (em, ind) { + order_amount += em.order_amount; + }) + //要进行判断,如果是用微信支付,就要跳转到支付界面 + if (order_amount > 0) { + th.setData({isclose: 0}); + //void e.jumpToCart4({ + // order_sn: data.data, + //}, 1); + util_pay.pay(data.data, function () { + //app.my_warnning("支付成功",1,th); + //setTimeout(function () { + wx.redirectTo({ + url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data + }) + //},1000) + + }, function () { + //支付失败 + setTimeout(function () { + var cps=getCurrentPages(); + if(cps.length>1){ + wx.navigateBack({delta: 1}) + }else{ + getApp().goto("/pages/index/index/index"); + } + + }, 1000) + }, oo.stoid); + + } else { + var dd = { + parent_sn: data.data, + store_id: oo.stoid, + type: 2, + }; + a.post("/api/weshop/order/pay/createOrder", { + data: dd, + success: function (t) { + //console.log(t); + if (t.data.code == 0) { + //app.my_warnning("支付成功",1,th); + //setTimeout(function () { + th.setData({isclose: 0}); + wx.redirectTo({ + url: "/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data, + }) + //}, 1000) + } + }, + fail: function () { + + } + }); + } + + } + else { + //--内容换行-- + var msg = data.msg; + //赠品活动已经取消,无法赠送,是否继续买单? + if (msg.indexOf("是否继续买单") > 0) { + wx.showModal({ + title: "提示", + content: data.msg, + cancelText: '取消', + confirmText: '确定', + showCancel: true, + success(res){ + if (res.cancel) { + return; + } else if (res.confirm) { + th.data.is_continue = 1; + th.data.is_summit_ing = 0; //是否提交中 + th.submitForm(sub_value); + } + } + }) + return; + } + if (msg.length > 13) { + msg = msg.slice(0, 13) + "\r\n" + msg.slice(13); + } + getApp().confirmBox(msg); + th.data.is_summit_ing = 0; //是否提交中 + } + } else { + th.data.is_summit_ing = 0; //是否提交中 + console.log("index.js wx.request CheckCallUser statusCode" + res.statusCode); + } + }, + fail: function () { + th.data.is_summit_ing = 0; + wx.hideLoading(); + console.log("index.js wx.request CheckCallUser fail"); + }, + complete: function () { + } + }) + + }, + //---确认线下门店的数量足不足--- + async check_store_num(goods_id, pick, goods_num, func){ + var lock = 0, pick_no, plist, erpwareid; + //先读取门店的lock + await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", { + data: {store_id: os.stoid, wareId: goods_id, storageId: pick, pageSize: 1000} + }).then(res => { + if (res.data.code == 0 && res.data.data.total > 0) { + for (var i in res.data.data.pageData) + lock += res.data.data.pageData[i].outQty; + } + }) + //先获取门店的编号 + await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + pick, { + data: {storeId: os.stoid, goodsId: t.goods_id, pickupId: pick} + }).then(res => { + if (res.data.code == 0) { + pick_no = res.data.data.pickup_no; + } + }) + //先获取商品的线下库存 + await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + goods_id, { + data: {storeId: os.stoid, goodsId: t.goods_id, pickupId: pick} + }).then(res => { + if (res.data.code == 0) { + erpwareid = res.data.data.erpwareid; + } + }) + //读取线下的门店库存 + await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", { + data: {storageNos: pick_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid, pageSize: 2000} + }).then(res => { + if (res.data.code == 0) { + plist = res.data.data.pageData[0]; + } + }) + var isok = 1; + if (goods_num > plist.CanOutQty - lock) { + isok = 0; + } + func(isok); + }, + + useCoupon: function () { + if (this.data.order.couponNum <= 0) { + getApp().my_warnning("无可用优惠券", 0, this); + return; + } + + var a = { + lid: this.data.coupon ? this.data.coupon.id : "0" + }; + wx.navigateTo({ + url: "/pages/user/checkcoupon/checkcoupon?" + s.Obj2Str(a) + }); + }, + enterAddressPage: function () { + getApp().globalData.is_cart_old = 1; + this.data.isget_by_quan = {}; + this.data.enterAddressPage = !0, wx.navigateTo({ + url: "/pages/user/address_list/address_list" + }); + }, + + //--------购物车购买时,选择自提和物流----------- + setexptype_w: function (t) { + + var def_exp_code = getApp().globalData.userInfo.def_exp_code, th = this; + var ty = t.currentTarget.dataset.t, txt = t.currentTarget.dataset.txt, + wl_txt = t.currentTarget.dataset.wl_txt, + ont = t.currentTarget.dataset.ont; + + th.setData({[txt]: ty}); + var iszt = 1; + + if (ty == 0) { + th.setData({is_all_zt: 0}); + } else { + for (var i = 0; i < th.data.cartlist.length; i++) { + var item = th.data.cartlist[i]; + if (item.exp_type == 0) { + iszt = 0; + break; + } + } + + th.setData({is_all_zt: iszt}); + + var ind = t.currentTarget.dataset.ind; + var c_item = th.data.cartlist[ind]; + var pickid = c_item.pickup_id; + + if (th.data.using_quan[pickid] && th.data.using_quan[pickid].isby == 1) { + th.data.using_quan[pickid] = {}; + th.setData({using_quan: th.data.using_quan}); + } + + + } + //判断有没有默认的物流地址值 + if (def_exp_code != "" && def_exp_code != null && def_exp_code != undefined) { + var wu_arr = this.data.wu_arr; + if (wu_arr != null && wu_arr != "") { + for (var i = 0; i < wu_arr.length; i++) { + if (wu_arr[i].shipping_code == def_exp_code) { + var set_txt = "cartlist" + th.setData({wl_txt: i}); + } + } + } + } + //----计算此时购物车的价格---- + th.calculatePrice(); + }, + + //--------立即购买时,选择自提和物流---------- + setexptype: function (t) { + var th = this; + var ty = t.currentTarget.dataset.t, def_exp_code = getApp().globalData.userInfo.def_exp_code; + th.setData({bn_exp_type: ty}); + if (ty == 0) { + th.setData({is_all_zt: 0}); + } + + //当物流为空的时候。 + if (ty == 0 && th.data.wu_arr == null) { + th.data.isget_by_quan = {}; + return th.get_wuliu(th.calculatePrice2()); + } + + //--自提就要把包邮券清理掉-- + if (ty == 1) { + th.data.isget_by_quan = {}; + if (th.data.using_quan[th.data.bn_pick] && th.data.using_quan[th.data.bn_pick].isby == 1) { + th.setData({using_quan: {}}); + } + } + + //判断有没有默认的物流地址值 + if (def_exp_code != "" && def_exp_code != null && def_exp_code != undefined) { + var wu_arr = this.data.wu_arr; + if (wu_arr != null && wu_arr != "") { + for (var i = 0; i < wu_arr.length; i++) { + if (wu_arr[i].shipping_code == def_exp_code) { + th.setData({index: i}); + } + } + } + } + th.calculatePrice2() + + }, + + //--------立即购买时,使用余额-------- + set_bn_useyuer: function () { + var th = this; + th.setData({bn_use_money: !th.data.bn_use_money}); + th.calculatePrice2(); + }, + set_js_useyuer: function () { + var th = this; + th.setData({js_use_money: !th.data.js_use_money}); + th.calculatePrice(); + }, + //-------------------计算物流--------------- + calculatewuliu: function (code, o_shipping_price, goods_weight, + goods_piece, user_addr, freight_free, o_price, rs) { + var price = 0, th = this; + price += parseFloat(o_shipping_price); + //如果是包邮 + if (freight_free > 0 && o_price >= freight_free) { + return 0; + } + if (user_addr == null) { + return 0; + } + //计算物流的config item; + var item = null; + //先根据 镇 县 区找计算的config + item = th.get_wuliu_config(user_addr.district, code, rs); + if (item == null) item = th.get_wuliu_config(user_addr.city, code, rs); + if (item == null) item = th.get_wuliu_config(user_addr.province, code, rs); + if (item == null) item = th.get_wuliu_default(code, rs); + if (item == null) return o_shipping_price; + var fw_price = 0, fp_price = 0; + item = item.config; + if (item == null) return o_shipping_price; + //------按重量---------- + if (goods_weight >= 0 && item['money']) { + fw_price = parseFloat(item['money']); + if (goods_weight > item['first_weight']) { + var fw = goods_weight - item['first_weight']; + var n = Math.ceil(fw / item['second_weight']) + fw_price = fw_price + n * parseFloat(item['add_money']); + } + } + //------按件数---------- + if (goods_piece > 0 && item['piecemoney']) { + fp_price = parseFloat(item['piecemoney']); + if (goods_piece > item['first_piece']) { + var fp = goods_piece - item['first_piece']; + var m = Math.ceil(fp / item['second_piece']) + fp_price = fp_price + m * parseFloat(item['add_piecemoney']); + } + } + var rspice = parseFloat(price + fw_price + fp_price); + return rspice; + }, + + //------------循环获取config----------- + get_wuliu_config: function (region_id, code, rs) { + var item = null, rslist = rs.pageData; + for (var i = 0; i < rslist.length; i++) { + if (rslist[i].code == code && rslist[i].region_id == region_id) { + item = rslist[i]; + } + } + return item; + }, + //-------循环获取config,code default------- + get_wuliu_default: function (code, rs) { + var item = null, rslist = rs.pageData; + for (var i = 0; i < rslist.length; i++) { + if (rslist[i].shipping_code == code && rslist[i].is_default == 1) { + item = rslist[i]; + } + } + return item; + }, + + //----------立即购买,选择物流------------- + bindPickerChange: function (e) { + var ind = e.detail.value + this.setData({index: ind}); + this.calculatePrice2(); + }, + //----------购物车结算,选择物流------------- + bindPickerChange_w: function (e) { + var ind = e.detail.value, txt = e.currentTarget.dataset.txt; + this.setData({[txt]: ind}); + this.calculatePrice(); + }, + + /*----券的所有操作----*/ + open_coupon_list: function (e) { + var th = this; + var pickid = e.currentTarget.dataset.pickid; + var bn = e.currentTarget.dataset.bn; + var cindx = e.currentTarget.dataset.cind; + var get_by_quan_list_cart = th.data.get_by_quan_list_cart[pickid]; + + + if (bn == 1) { + th.setData({open_quan: 1, selected_quan_pick: pickid, disabled: 1}); + } else { + //---多单打开券的时候,就要判断券在其他门店是否有使用--- + var quanlist = th.data.cartlist[cindx].quan_list; + var exp_type = th.data.cartlist[cindx].exp_type; + + + //对于在其他门店已经选择了的券 要判断是否显示到界面 + var t_user = th.data.using_quan[pickid]; + + for (var i in quanlist) { + quanlist[i].is_using = th.check_in_sele(quanlist[i].CashRepNo, pickid); + if (t_user && quanlist[i].CashRepNo == t_user.coupon_no) + quanlist[i].show_red = 1; + else + quanlist[i].show_red = 0; + } + + if (get_by_quan_list_cart) { + for (var i in get_by_quan_list_cart) { + get_by_quan_list_cart[i].is_using = th.check_in_sele(get_by_quan_list_cart[i].no, pickid); + if (t_user && get_by_quan_list_cart[i].no == t_user.coupon_no) + get_by_quan_list_cart[i].show_red = 1; + else + get_by_quan_list_cart[i].show_red = 0; + } + th.setData({by_quan_list_cart: get_by_quan_list_cart}); + } else { + th.setData({by_quan_list_cart: null}); + } + + console.log("2222222券的列表", quanlist); + th.setData({ + sele_cart_ind: cindx, + sele_exp_type: exp_type, + open_quan: 1, + selected_quan_pick: pickid, + selected_quan_list: quanlist, + disabled: 1 + }); + } + }, + close_coupon: function (e) { + var th = this; + th.setData({open_quan: 0, disabled: 0}); + }, + + //---判断券时候在已经选择的列表中--- + check_in_sele: function (no, pick_id) { + var th = this; + if (th.data.using_quan.length <= 0) return false; + for (var i in th.data.using_quan) { + //--如果键值等于本身就要跳出-- + if (parseInt(i) == parseInt(pick_id)) continue; + var item = th.data.using_quan[i]; + if (item.coupon_no == no) { + return true; + } + } + return false; + }, + + /*--点击选择券--*/ + sele_quan_item: function (e) { + + var ind = e.currentTarget.dataset.ind; + var quan_item = this.data.selected_quan_list[ind]; + var pickid = this.data.selected_quan_pick; //现在选择的是哪一个门店 + //--如果券是单品使用的时候-- + if (quan_item && quan_item.UseObjectType && quan_item.UseObjectType == "20") { + //---只有多件购买的时候才要计算,//购物车购买和搭配勾的时候--- + var gg = getApp().get_b_now(); + if (this.data.is_b_now == 0 || gg.prom_type == 5) { + var arr = this.data.order_prom_list_cart; + var t_pk_item = null; + for (var ii in arr) { + var ep = arr[ii]; + if (pickid == ep.pickup_id) { + t_pk_item = ep; + break; + } + } + //--寻找券指定的商品-- + var gd = null; + if (t_pk_item) { + var goods = t_pk_item.goods; + for (var gid in goods) { + if (quan_item.UseObjectID == goods[gid].erpwareid) { + gd = goods[gid]; + } + } + } + if (!gd) { + getApp().my_warnning("未找到指定商品使用", 0, this, 600); + return false; + } + //计算价格,如果有平摊的实收要计算实收的金额 + var item_price = gd.goods_price * gd.goods_num; + //-- 如果有平摊下去,有实收价格的时候,就要用account_fir来计算价格 -- + if (gd.account_fir != null && gd.account_fir != undefined) { + item_price = gd.account_fir * gd.goods_num; + } + + if (item_price < parseFloat(quan_item.BuySum)) { + getApp().my_warnning("该单品金额没有大于等于" + quan_item.BuySum + "元时不能使用优惠券", 0, this, 600); + return false; + } + } + } + + var no_use = e.currentTarget.dataset.no, quanlist = this.data.selected_quan_list; + //---所有的券的显示红色选择都清理一遍--- + for (var i in quanlist) { + quanlist[i].show_red = 0; + } + this.setData({selected_quan_list: quanlist}); + var by_quanlist = this.data.get_by_quan_list; + if (by_quanlist) { + //---所有的券的显示红色选择都清理一遍--- + for (var inb in by_quanlist) { + by_quanlist[inb].show_red = 0; + } + this.setData({get_by_quan_list: by_quanlist}); + } + + var by_cart_list = this.data.by_quan_list_cart; + if (by_cart_list) { + //---所有的券的显示红色选择都清理一遍--- + for (var inc in by_cart_list) { + by_cart_list[inc].show_red = 0; + } + this.setData({by_quan_list_cart: by_cart_list}); + } + + var using_quan = this.data.using_quan; + var th = this; + //---如果是不使用优惠券--- + if (no_use == 1) { + console.log("有进来吗券", no_use); + if (using_quan[th.data.selected_quan_pick]) { + using_quan[th.data.selected_quan_pick].is_nouse_red = 1; + } + else { + using_quan[th.data.selected_quan_pick] = {is_nouse_red: 1}; + } + this.setData({using_quan: using_quan, is_coupon: 2222}); + return; + } + + + var txt = "selected_quan_list[" + ind + "].show_red"; + var obj = {}; + obj[txt] = 1; + if (quan_item.show_red) { + obj[txt] = 0; + } + this.setData(obj); + console.log(this.data.selected_quan_list, "选中的券的下标", quan_item, "数据都在这里", txt); + if (using_quan[th.data.selected_quan_pick]) { + using_quan[th.data.selected_quan_pick].is_nouse_red = 0; + } + else { + using_quan[th.data.selected_quan_pick] = {is_nouse_red: 0}; + } + this.setData({using_quan: using_quan}); + + }, + + + /*----- 点击选择包邮券 -----*/ + sele_quan_item_by: function (e) { + var no_use = e.currentTarget.dataset.no; + //立即购买的包邮券 + var by_quanlist = this.data.get_by_quan_list; + if (by_quanlist) { + //---所有的券的显示红色选择都清理一遍--- + for (var ind in by_quanlist) { + by_quanlist[ind].show_red = 0; + } + this.setData({get_by_quan_list: by_quanlist}); + } + + //--购物车过来的包邮券-- + var by_cart_list = this.data.by_quan_list_cart; + if (by_cart_list) { + //---所有的券的显示红色选择都清理一遍--- + for (var ind in by_cart_list) { + by_cart_list[ind].show_red = 0; + } + this.setData({by_quan_list_cart: by_cart_list}); + } + //普通券 + var quanlist = this.data.selected_quan_list; + if (quanlist) { + //---所有的券的显示红色选择都清理一遍--- + for (var ind in quanlist) { + quanlist[ind].show_red = 0; + } + this.setData({selected_quan_list: quanlist}); + } + + var th = this; + var using_quan = this.data.using_quan; + //---如果是不使用优惠券--- + if (no_use == 1) { + if (using_quan[th.data.selected_quan_pick]) { + using_quan[th.data.selected_quan_pick].is_nouse_red = 1; + } + else { + using_quan[th.data.selected_quan_pick] = {is_nouse_red: 1}; + } + this.setData({using_quan: using_quan, is_coupon: 2222}); + return; + } + + var pickid = th.data.selected_quan_pick; //现在选择的是哪一个门店 + var ind = e.currentTarget.dataset.ind; + //--如果是立即购买的部分-- + var txt = ""; + var txt1 = ""; + var quan_item = null; + if (th.data.is_b_now) { + quan_item = this.data.get_by_quan_list[ind]; + txt = "get_by_quan_list[" + ind + "].show_red"; + var obj = {}; + obj[txt] = 1; + this.setData(obj); + } else { + txt = "by_quan_list_cart[" + ind + "].show_red"; + quan_item = th.data.by_quan_list_cart[ind]; + var obj = {}; + obj[txt] = 1; + this.setData(obj); + th.data.get_by_quan_list_cart[pickid] = JSON.parse(JSON.stringify(th.data.by_quan_list_cart)); //要把选中的弄回数组 + } + + if (using_quan[th.data.selected_quan_pick]) { + using_quan[th.data.selected_quan_pick].is_nouse_red = 0; + } + else { + using_quan[th.data.selected_quan_pick] = {is_nouse_red: 0}; + } + this.setData({using_quan: using_quan}); + }, + + //--确认使用券--- + confirm_quan: function () { + var using_quan = this.data.using_quan; //正在使用中的券列表 + var pickid = this.data.selected_quan_pick; //选中的门店ID + var th = this; + var selected_quan_list = this.data.selected_quan_list; //选择了那个门店的券列表 + var get_by_quan_list = this.data.get_by_quan_list; //立即购买的包邮券列表 + var by_quan_list_cart = this.data.by_quan_list_cart; //购物车购买的包邮券列表 + //选择了的券 + var sele_quan = null; + + //循环普通的券 + for (var i in selected_quan_list) { + var item = selected_quan_list[i]; + if (item.show_red) { + th.insert_into_using_quan(item, using_quan, pickid); + return; + } + } + //循环包邮的券,立即购买的 + for (var i in get_by_quan_list) { + var item = get_by_quan_list[i]; + if (item.show_red) { + if (th.data.is_no_by[pickid] == 1) { + getApp().my_warnning("已全场不能包邮,不能选择包邮券", 0, th); + return false; + } + if (th.data.is_by[pickid] == 1) { + getApp().my_warnning("已全场包邮,不能选择包邮券", 0, th); + return false; + } + + th.insert_into_using_quan(item, using_quan, pickid, 1); + return; + } + } + + //循环包邮的券 + for (var i in by_quan_list_cart) { + var item = by_quan_list_cart[i]; + if (item.show_red) { + if (th.data.is_no_by[pickid] == 1) { + getApp().my_warnning("已全场不能包邮,不能选择包邮券", 0, th); + return false; + } + if (th.data.is_by[pickid] == 1) { + getApp().my_warnning("已全场包邮,不能选择包邮券", 0, th); + return false; + } + th.insert_into_using_quan(item, using_quan, pickid, 1); + return; + } + } + + //选择了的券,看是不是点击了不使用券,点击了不使用优惠券 + if (using_quan[pickid]) { + if (using_quan[pickid].is_nouse_red == 1) { + using_quan[pickid] = {is_nouse_red: 1}; + th.setData({using_quan: using_quan}); + if (th.data.is_b_now == 1) { + th.calculatePrice2(); + } else { + th.calculatePrice(); + } + th.setData({open_quan: 0}); + return; + } + } + }, + + //----把券插入之后的操作,同时还要重新计算价格---- + insert_into_using_quan: function (item, using_quan, pickid, isby) { + var th = this; + if (isby == 1) { + using_quan[pickid] = { + coupon_no: item.no, + money: 0, + is_nouse_red: 0, + region_list: item.region_list, + goods_list: item.goods_list + }; + using_quan[pickid].isby = 1; + } else { + using_quan[pickid] = {coupon_no: item.CashRepNo, money: item.Sum, is_nouse_red: 0}; + using_quan[pickid].isby = 0; + } + this.setData({using_quan: using_quan}); + th.calculatePrice2(); + + th.setData({open_quan: 0}); + }, + + cart_set_err: function (e) { + var txt = e.currentTarget.dataset.err; + var ob = {}; + ob[txt] = this.data.imgUrl + "/miniapp/images/default_g_img.gif"; + this.setData(ob); + }, + //--验证是否已经冻结-- + check_is_frozenQuan: function (quanlist, frozenQuan, isby) { + console.log("券列表", quanlist); + if (!quanlist) return null; + if (!frozenQuan) return quanlist; + var arr = []; + for (var i = 0; i < quanlist.length; i++) { + var item = quanlist[i]; + var is_find = 0; + var Q_no = quanlist[i].CashRepNo; + if (isby) Q_no = quanlist[i].no; + for (var j = 0; j < frozenQuan.length; j++) { + var q_no = frozenQuan[j].cashRepNo; + if (Q_no == q_no) { + is_find = 1; + break; + } + } + if (!is_find) arr.push(item); + } + return arr; + }, + + //// 开启物流的弹窗 + show_wu_arr: function (e) { + var wu_arr_txt = e.currentTarget.dataset.txt; + var w_sele_index = e.currentTarget.dataset.w_sele_index; + var is_express = null; + var ob = {open_express: 1, wu_arr_txt: wu_arr_txt, disabled: 1}; + + //--如果是多个门店的时候-- + if (w_sele_index != undefined) { + is_express = this.data.cartlist[w_sele_index].wind; + ob['is_express'] = is_express; + } + this.setData(ob); + }, + // 关闭物流的弹窗 + close_express: function () { + this.setData({open_express: 0, disabled: 0}); + }, + // 选择物流 + click_express_name: function (e) { + var express_name = e.currentTarget.dataset.name, shippingcode = e.currentTarget.dataset.shippingcode; + var index = e.currentTarget.dataset.idxe; + var ob = {is_express: index, is_shipping_code: shippingcode, disabled: 0}; + ob[this.data.wu_arr_txt] = index; + this.setData(ob); + }, + + //点击确定物流 + determine_expres: function (e) { + this.setData({open_express: 0}); + if (this.data.is_b_now == 1) + this.calculatePrice2(); + else + this.calculatePrice(); + }, + + //点击打开优惠券使用说明 + clik_coupons: function (e) { + var ind = e.currentTarget.dataset.idx; + var is_open = this.data.selected_quan_list[ind].is_open; + + if (is_open == 1) is_open = 0; + else is_open = 1; + + var txt = "selected_quan_list[" + ind + "].is_open" + var obj = {}; + obj[txt] = is_open; + + this.setData(obj); + this.setData({disabled: 1}) + }, + + clik_coupons2: function (e) { + var ind = e.currentTarget.dataset.idx; + var is_open = this.data.get_by_quan_list[ind].is_open; + + if (is_open == 1) is_open = 0; + else is_open = 1; + + var txt = "get_by_quan_list[" + ind + "].is_open" + var obj = {}; + obj[txt] = is_open; + + this.setData(obj); + this.setData({disabled: 1}) + }, + + + //设置默认物流 + select_default_logistics: function () { + var th = this; + var is_shipping_code = this.data.is_shipping_code + getApp().request.put("/api/weshop/users/update", { + data: {user_id: getApp().globalData.user_id, store_id: oo.stoid, def_exp_code: is_shipping_code}, + success: function (rse) { + if (rse.data.code == 0) { + getApp().globalData.userInfo.def_exp_code = is_shipping_code; + th.setData({open_express: 0}); + //----计算此时购物车的价格---- + if (th.data.is_b_now == 1) th.calculatePrice2(); + else th.calculatePrice(); + } + } + }) + }, + + //更新下默认,在onshow里面 + update_code(){ + var th = this, m_wind = 0, def_exp_code = getApp().globalData.userInfo.def_exp_code; + //--定时器,判断wu_arr不未空-- + var uii = setInterval(function () { + if (th.data.wu_arr) { + clearInterval(uii); + for (var k = 0; k < th.data.wu_arr.length; k++) { + var item = th.data.wu_arr[k]; + if (def_exp_code == item.code) { + m_wind = k; + } + } + //--如果是立即购买-- + if (th.data.is_b_now == 1) { + th.setData({index: m_wind, is_express: m_wind}); + } else { + var ui = setInterval(function () { + if (th.data.cartlist) { + var c_arr = th.data.cartlist; + for (var i in c_arr) { + c_arr[i].wind = m_wind; + } + th.setData({cartlist: c_arr, is_express: m_wind}) + clearInterval(ui); + } + }, 500) + } + } + }, 500); + }, + //-----获取购物车进来的劵------- + get_cart_quan: async function (order_prom_list_cart) { + var th = this; + var is_xz_yh = 1; + //等待值的出现 + //getApp().waitfor2(this,"g_cart_q_time","order_prom_list_cart",async function () { + //var arr=th.data.order_prom_list_cart; + var arr = order_prom_list_cart; + if (!arr) arr = []; + //如果系统有限制使用优惠券 + if (th.data.is_close_quan) return false; + + //------------开始计算使用优惠券相关------------ + for (var ind in arr) { + var ep = arr[ind]; + var goodlist = ep.goods; + var pickup_id = ep.pickup_id; + //--更优惠券抵用有关,立即购买的,如果是购物车,如果有等级价还有考虑等级价的东西 + //就要把相应的值,写入cartlist数组中-- + var ckeck_quan_price = 0, + check_quan_price_list = '', + check_quan_ware_list = ''; + + for (var i in goodlist) { + var gd = goodlist[i]; + //--如果是秒杀就跳出,如果是赠品,如果是组合购,如果是限制使用优惠券-- + if (gd.prom_type == 1 || gd.is_gift || gd.prom_type == 7) { + continue; + } + //如果有限制使用优惠券,就要返回 + if (gd.prom_type == 3) { + if (th.data.prom_goods_map[pickup_id][gd.prom_id].is_xz_yh) continue; + th.data.prom_goods_map[pickup_id][gd.prom_id].coupon_sele = 1; + } + is_xz_yh = 0; + var item_price = gd.goods_price * gd.goods_num; + //-- 如果有平摊下去,有实收价格的时候,就要用account来计算价格 -- + if (gd.account_fir != null && gd.account_fir != undefined) { + item_price = gd.account_fir * gd.goods_num; + } + ckeck_quan_price += item_price; + + //--组装价格list-- + if (check_quan_price_list) { + check_quan_price_list += "," + item_price; + } else { + check_quan_price_list = item_price; + } + //--组装商品的线下erpwareid-- + if (check_quan_ware_list) { + check_quan_ware_list += "," + encodeURIComponent(gd['erpwareid']); + } else { + check_quan_ware_list = encodeURIComponent(gd['erpwareid']); + } + } + //优惠券优惠的金额要控制到优惠券的选择条件 + var cut_price = 0; + for (var i in th.data.prom_goods_map[pickup_id]) { + var obj = th.data.prom_goods_map[pickup_id][i]; + if (obj.coupon_sele) { + cut_price += obj.price - obj.prom_price; + } + } + + arr[ind].ckeck_quan_price = ckeck_quan_price - cut_price; + arr[ind].check_quan_ware_list = check_quan_ware_list; + arr[ind].check_quan_price_list = check_quan_price_list; + + //是否关闭使用优惠券 + if (th.data.is_close_quan != 1 && !is_xz_yh) { + //--调用接口,获取优惠券的列表,3秒钟内控制接口请求-- + var url = "/api/weshop/couponList/getUseCouponList"; + await app.request.promiseGet(url, { + data: { + storeId: oo.stoid, + userId: app.globalData.user_id, + BuySum: ckeck_quan_price, + WareIds: check_quan_ware_list, + pageSize: 100 + } + }).then(res => { + if (res.data.code == 0) { + var quan_list = res.data.data.pageData; + arr[ind].quan_list = th.check_is_frozenQuan(quan_list, th.data.frozenQuan); + } + }) + } + } + + //如果是搭配购的立即购买的时候 + if (th.data.is_b_now) { + if (arr && arr.length > 0) { + var quanlist = arr[0].quan_list; + th.setData({selected_quan_list: quanlist, cartlist: arr}) + } + } else { + th.setData({cartlist: arr}) + th.set_can_num(); + } + + //}) + }, + + //------ 获取立即购买的购物车的劵 -------- + get_buy_now_quan: function () { + var quanlist = null, th = this, frozenQuan = null; + var good = this.data.bn_goods; + if (good.prom_price) { + th.data.ckeck_quan_price = good.prom_price; //如果有优惠价,就用优惠价 + } else if (good.is_offline) { + th.data.ckeck_quan_price = good.offline_price; //如果有线下取价,就用线下价 + } + //--如果商家后台没有限制使用优惠券,同时商品的优惠活动没有限制使用优惠券-- + if (th.data.is_close_quan != 1 && th.data.bn_goods.is_xz_yh != 1) { + var url0 = "/api/weshop/users/frozenQuan/listFrozenQuan/" + app.globalData.user_id; + var url = "/api/weshop/couponList/getUseCouponList"; + app.request.promiseGet(url0, {1: 1}).then(res => { + if (res.data.code == 0) { + frozenQuan = res.data.data; + th.data.frozenQuan = frozenQuan; + } + app.request.time_limit_get(6, url, { + data: { + storeId: oo.stoid, + userId: app.globalData.user_id, + BuySum: th.data.ckeck_quan_price, + WareIds: encodeURIComponent(th.data.check_quan_ware_list), + pageSize: 100 + }, + success: function (res) { + if (res.data.code == 0) { + quanlist = res.data.data.pageData; + if (quanlist) { + quanlist = th.check_is_frozenQuan(quanlist, frozenQuan); + th.setData({selected_quan_list: quanlist}) + } + } + } + }) + }) + } + }, + + //检查区域是不是包邮 + check_area: function (arr) { + var user_addr = this.data.user_addr; + if (!user_addr) return 0; + for (var i in arr) { + var item = arr[i]; + if (user_addr.twon == item || user_addr.district == item + || user_addr.city == item || user_addr.province == item) { + return 0; + } + } + return 1; + }, + + //检查立即购买的商品是不是不包邮 + check_good: function (arr, goods_id) { + if (!goods_id) goods_id = this.data.bn_goods.goods_id; + for (var i in arr) { + var item = arr[i]; + if (goods_id == item) return 0; + } + return 1; + }, + check_by_area: function (region_list) { + var arr = region_list.split(","); + var check = this.check_area(arr); + return !check; + }, + check_by_goods: function (goods_list, goods_id) { + var arr = goods_list.split(","); + var check = this.check_good(arr, goods_id); + return !check; + }, + //立即购买获取优惠活动的内容 + buy_now_prom_goods: function (prom_id, arr, func) { + var price = arr.shop_price * arr.goods_num; + var prom = null; + getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + prom_id, {}).then(res => { + if (res.data.code == 0) { + prom = res.data.data; + return getApp().request.promiseGet("/api/weshop/goods/getDiscount", { + data: { + price: price, + prom_id: prom_id, + goods_num: arr.goods_num, + user_id: getApp().globalData.user_id, + is_bz: prom.is_bz + } + }) + } else { + func(arr); + } + }).then(res => { + if (res.data.code == 0) { + var get_data = res.data.data; + arr.is_bz = prom.is_bz; //是不是倍增 + arr.is_xz_yh = prom.is_xz_yh; //是不是优惠 + arr.bs = get_data.bs; //是不是倍数 + arr.is_past = get_data.is_past; //是不是包邮 + arr.prom_price = get_data.price >= 0 ? get_data.price : price; + arr.s_intValue = get_data.intValue; + arr.s_coupon_id = get_data.coupon_id; + arr.s_coupon_num = get_data.coupon_num; + //-- 看是不是有赠品 -- + if (get_data.gift_id) { + arr.gift_id = get_data.gift_id; + arr.gift_goods_id = get_data.goods_id; + arr.gift_goods_name = get_data.goods_name; + arr.gift_goods_color = get_data.goodsinfo.goods_color; + arr.gift_goods_spec = get_data.goodsinfo.goods_spec; + arr.gift_original_img = get_data.goodsinfo.original_img; + arr.gift_weight = get_data.goodsinfo.weight; + arr.gift_exp_sum_type = get_data.goodsinfo.exp_sum_type; + arr.gift_uniform_exp_sum = get_data.goodsinfo.uniform_exp_sum; + arr.gift_limit_num = get_data.limit_num; + arr.gift_storecount = get_data.gift_storecount; + } + arr.s_libao = get_data.libao; + arr.s_lb_num = get_data.lb_num; + arr.prom_id = prom_id; + } + func(arr); + }) + }, + //--检查订单优惠-- + check_is_order_prom: function (condition, func, pick) { + var th = this; + pick = this.data.bn_pick; + //---获取订单优惠--- + getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", { + data: {store_id: os.stoid, orderAmount: condition} + }).then(res => { + if (res.data.code == 0) { + var data = res.data.data; + th.data.order_prom[pick] = data; + } + func(); + }) + }, + + //--- 加入优惠活动的映射中,同时要有一个good列表 --- + add_prom_goods_map: async function (item) { + var th = this; + var pickid = item.pick_id; + var map = th.data.prom_goods_map; + var obj = map[pickid]; + + if (map[pickid]) { + if (map[pickid][item.prom_id]) { + var ob = map[pickid][item.prom_id]; + ob.price += item.goods_price * item.goods_num; + ob.goods_num += item.goods_num; + ob.goods.push({goods_id: item.goods_id, goods_price: item.goods_price, goods_num: item.goods_num}); + + } else { + var prom = null; + await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + item.prom_id, {}).then(res => { + if (res.data.code == 0) { + prom = res.data.data; + } + }) + var ob = {}; + ob.prom_id = item.prom_id; + ob.price = item.goods_price * item.goods_num; + ob.goods_num = item.goods_num; + ob.is_bz = prom.is_bz; + ob.is_xz_yh = prom.is_xz_yh; + ob.goods = new Array(); + ob.goods.push({goods_id: item.goods_id, goods_price: item.goods_price, goods_num: item.goods_num}); + map[pickid][item.prom_id] = ob; + } + } else { + var ob = {}; + var prom = null; + await getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + item.prom_id, {}).then(res => { + if (res.data.code == 0) { + prom = res.data.data; + } + }) + ob.prom_id = item.prom_id; + ob.price = item.goods_price * item.goods_num; + ob.goods_num = item.goods_num; + ob.is_bz = prom.is_bz; + ob.is_xz_yh = prom.is_xz_yh; + ob.goods = new Array(); + ob.goods.push({goods_id: item.goods_id, goods_price: item.goods_price, goods_num: item.goods_num}); + + var obj = {}; + obj[item.prom_id] = ob; + map[pickid] = obj; + + } + }, + + //计算立即购买赠品的物流费用 + get_now_gift_goods_wuliu: function (code, o_shipping_price, user_addr, gift_freight_free, allpice, rs, shipping_price, no_by_data, goods_weight1, goods_piece1) { + var good = this.data.buy_now_gift_goods; + var goods_weight = -1, goods_piece = -1; + var gift_shipping_price = 0; + var th = this; + switch (good['exp_sum_type']) { + case 1: + //统一运费 + gift_shipping_price += good['uniform_exp_sum']; + gift_shipping_price += o_shipping_price; + break; + case 2: + if (goods_weight < 0) goods_weight = 0; + //累积商品重量 每种商品的重量 * 数量 + goods_weight += good['weight'] * good['buynum']; + if (goods_weight1 > 0) { + goods_weight += goods_weight1; + } + break; + case 3: + if (goods_piece < 0) goods_piece = 0; + //累积商品数量 + goods_piece += good['buynum']; + if (goods_piece1) { + goods_piece += goods_piece1; + } + break; + } + + + //如果有设置不包邮区域的时候 + if (no_by_data && no_by_data.region_list) { + if (th.check_by_area(no_by_data.region_list)) { + gift_freight_free = 0; + th.data.is_no_by[th.data.bn_pick] = 1; + } + } + //如果有设置不包邮商品 + if (no_by_data && no_by_data.goods_list && gift_freight_free) { + if (th.check_by_goods(no_by_data.goods_list, good.goods_id)) { + gift_freight_free = 0; + //th.data.is_no_by[th.data.bn_pick]=1; + } + } + + var t_shipping_price = + this.calculatewuliu(code, gift_shipping_price, goods_weight, + goods_piece, user_addr, gift_freight_free, allpice, rs); + return t_shipping_price; + + }, + + //从优惠的映射中拿出商品从表的item + item_map_get_goods: function (goods_id, map) { + for (var i in map.goods) { + if (map.goods[i].goods_id == goods_id) return map.goods[i]; + } + }, + //从优惠的映射中拿出商品从表的item + arr_get_goods: function (goods_id, arr) { + for (var i in arr) { + if (arr[i].goods_id == goods_id) return arr[i]; + } + }, + + //检查是不是有其他门店的订单在选择了券 + check_other_use: function (iter, pkid) { + var using = this.data.using_quan; + var is_use = 0; + if (using) { + for (var i in using) { + if (i == pkid) continue; + if (iter.CashRepNo == using[i].coupon_no) { + is_use = 1; + break; + } + } + } + return is_use; + }, + //检查是不是有其他门店的订单在选择了包邮券 + check_other_use_by: function (iter, pkid) { + var using = this.data.using_quan; + var is_use = 0; + if (using) { + for (var i in using) { + if (i == pkid) continue; + if (iter.no == using[i].coupon_no) { + is_use = 1; + break; + } + } + } + return is_use; + }, + + //跳转到购买卡 + buycard: function () { + getApp().goto("/pages/user/plus/plus"); + getApp().globalData.plus_buy_back = 1; + }, + + //跳转关闭弹出框的显示 + close_offline: function () { + this.setData({is_offline_show: 0}); + }, + + //立即购买显示弹出框 + bn_pop_offline: function () { + var off_price = this.data.bn_goods.shop_price - this.data.bn_goods.offline_price; + //是不是线下 + var is_get_offline = this.data.bn_goods.is_offline; + this.setData({is_offline_show: 1, show_off_price: off_price.toFixed(2), is_get_offline: is_get_offline}); + }, + + //确定使用线下取价 + sure_offline: function () { + var bn_goods = this.data.bn_goods; + if (bn_goods && bn_goods.prom_type == 0) { + bn_goods.is_offline = 1; + this.setData({is_offline_show: 0, bn_goods: bn_goods}); + this.calculatePrice2(); + } + //就是购物车结算时的 + else { + var index = this.data.pop_offline_index; + var txt = "cartlist[" + index + "].is_offline"; + this.setData({[txt]: 1, is_offline_show: 0,}); + this.data.old_cartlist[index].is_offline = 1; + this.calculatePrice(); + } + }, + + + //取消使用线下取价 + cancle_offline: function () { + //判断是不是立即购买 + var bn_goods = this.data.bn_goods; + if (bn_goods && bn_goods.prom_type == 0) { + bn_goods.is_offline = 0; + this.setData({is_offline_show: 0, bn_goods: bn_goods}); + this.calculatePrice2(); + } + //就是购物车结算时的 + else { + var index = this.data.pop_offline_index; + var txt = "cartlist[" + index + "].is_offline"; + this.setData({[txt]: 0, is_offline_show: 0,}) + this.data.old_cartlist[index].is_offline = 0; + this.calculatePrice(); + } + }, + + //-- 弹出购物车选择是不是要店铺优惠 -- + cart_pop_offline: function (e) { + var index = e.currentTarget.dataset.index; + var item = this.data.cartlist[index]; + var off_price = item.offline_price; + //是不是线下 + var is_get_offline = item.is_offline; + this.setData({ + pop_offline_index: index, + is_offline_show: 1, + show_off_price: off_price.toFixed(2), + is_get_offline: is_get_offline + }); + }, + + set_hid_inp:function (e) { + var index = e.currentTarget.dataset.index; + var txt = "cartlist[" + index + "].focus"; + this.setData({[txt]:1}) + }, + + clear_hid_inp:function (e) { + var index = e.currentTarget.dataset.index; + var txt = "cartlist[" + index + "].focus"; + this.setData({[txt]:0}) + }, + + + +}); diff --git a/packageC/pages/presell/cart/cart2.json b/packageC/pages/presell/cart/cart2.json new file mode 100644 index 0000000..0cfb931 --- /dev/null +++ b/packageC/pages/presell/cart/cart2.json @@ -0,0 +1,7 @@ +{ + "navigationBarTitleText": "填写订单", + "enablePullDownRefresh": false, + "usingComponents": { + "warn": "/components/long_warn/long_warn" + } +} \ No newline at end of file diff --git a/packageC/pages/presell/cart/cart2.wxml b/packageC/pages/presell/cart/cart2.wxml new file mode 100644 index 0000000..04d0b6a --- /dev/null +++ b/packageC/pages/presell/cart/cart2.wxml @@ -0,0 +1,422 @@ + + + + +
+ + + + + + + + + + + + + + + + + + + + {{bn_pickname}} + + + + + + + + {{bn_goods.goods_name}} + + + + {{filters.show_gui_ge(bn_goods.goods_spec,bn_goods.goods_color)}} + + + + + + {{filters.toFix(bn_goods.shop_price,2)}} + x{{bn_goods.buynum}} + + + + + + + + + + + + + {{buy_now_gift_goods.goods_name}} + + + + {{filters.show_gui_ge(buy_now_gift_goods.goods_spec,buy_now_gift_goods.goods_color)}} + + + + + 0 + x{{buy_now_gift_goods.buynum}} + + + + + + + + + + + + + {{item.goods_name}} + + + + {{filters.show_gui_ge(item.goods_spec,item.goods_color)}} + + + + + {{item.price}} + x{{item.goods_num}} + + + + + + + + + + + {{show_card.CardName}} + + 立减 {{filters.toFix(card_cut_price,2) }} + + + vip超级会员仅需{{show_card.CardFee}}元 + + + + + 立即开通 + + + + + + {{order.store_prom}} + + + + + + 优惠券 {{(selected_quan_list?selected_quan_list.length:0)+ (get_by_quan_list?get_by_quan_list.length:0)}}张可用 + + + 不使用 + + ¥{{using_quan[bn_pick].money}}元优惠券 + 包邮券 + + + + + + + + + 选择物流 + + {{wu_arr[index].name}} + + + + + + + + 留言 + + + + + + + + 店铺优惠 + + 省{{filters.toFix(bn_goods.shop_price-bn_goods.offline_price,2)}}元 + + + -¥{{filters.toFix(bn_goods.shop_price-bn_goods.offline_price,2)}} + + + 不使用优惠 + + + + + + + + + 使用余额 :¥{{yuer}} + + + + + + + 商品金额 + ¥ {{formData.all_price}}元 + + + 配送费用 + ¥ {{formData.shipping_price}}元 + + + 使用优惠券 + - ¥ {{formData.coupon_price}}元 + + + + 优惠活动 + - ¥ {{filters.toFix(formData.cut_price,2)}}元 + + + + 订单优惠 + - ¥ {{filters.toFix(formData.order_prom_amount,2)}}元 + + + 使用余额 + - ¥ {{formData.user_money}}元 + + + + + + + 应付金额:{{formData.order_amount}} + + + +
+ + + + + + + + + 优惠券使用 + + + × + + + + 可使用的优惠券 + 不使用优惠券 + + Γ + + + + + + + + + + + + + + + + + + + {{item.Sum}} + 满{{item.BuySum}}元可用 + 满0元可用 + + + + + + + + + {{filter.get_type_card(item.UseObjectType)}} + {{item.Sum}}元优惠券 + + {{filters.replace_time2(item.BeginDate)}}至{{item.ValidDate?filters.replace_time2(item.ValidDate):'不限'}} + + + + Γ + + + + + + + + + + + + + + + + + + + + + + + 包邮券 + 满{{item.condition}}元可用 + 满0元可用 + + + + + + + + + {{filter.get_type_card(0)}} + 包邮券 + + {{filters.format_time(item.use_start_time)}}至{{item.use_end_time?filters.format_time(item.use_end_time):'不限'}} + + + + Γ + + + + + + + + + + + + + + + + + + + + + + 确定 + + + + + + + + + + + + 选择物流名字 + + + × + + + + + + + + Γ + + + + + {{express_list.name}} + + + + + + + 确定 + + + 设为默认 + + + + + + + + + + 店铺优惠 + + 优惠¥{{show_off_price}} + + 不用优惠 + + + + diff --git a/packageC/pages/presell/cart/cart2.wxss b/packageC/pages/presell/cart/cart2.wxss new file mode 100644 index 0000000..addf4ea --- /dev/null +++ b/packageC/pages/presell/cart/cart2.wxss @@ -0,0 +1,995 @@ +.bdr_t-14 { + border-top-left-radius: 14rpx; + border-top-right-radius: 14rpx; +} +.bdr_b-14 { + border-bottom-left-radius: 14rpx; + border-bottom-right-radius: 14rpx; +} +.bdr14 { + border-radius: 14rpx; +} +.mgt20 { + margin-top: 20rpx; +} +.shadow { + box-shadow: 0 4rpx 12px #e7e9eb; +} +.shadow-1 { + box-shadow: 16rpx 0px 12px #e7e9eb; +} + + + + +page { + /* background-color: #FAFAFA; */ + background-color: #F0F0F0; + padding: 0 22rpx; + box-sizing: border-box; +} +.container { + background-color: #F0F0F0; + /* padding-top: 28rpx; */ + padding-bottom: 120rpx; +} + +.tab-container { + font-size: 28rpx; + margin-top: 20rpx; + display: flex; +} + +.tab-wrapper { + background-color: #ccc; + display: flex; + border-radius: 40rpx; + overflow: hidden; +} + +.tab { + padding: 20rpx 30rpx; + +} + + +.tab.active { + background-color: white; + border-radius: 40rpx; +} + + +.user-mes { + position: relative; + background-color: #fff; + font-size: 32rpx; + color: #444; + /* margin-top: 28rpx; */ + border-radius: 14rpx; + padding: 20rpx 70rpx 20rpx 20rpx; +} +.user-contact { + /* padding: 24rpx 26rpx; + font-weight: 600; */ +} + +.location { + position: relative; + /* padding: 0 70rpx 24rpx; */ +} + +.pos-icon { + /* position: absolute; */ + /* left: 28rpx; + top: 6rpx; */ + width: 20rpx; + height: 24rpx; + display: inline-block; +} + +.border-img { + width: 100%; + height: 12rpx; +} + +.update-logistics { + position: absolute; + right: 0; + top: 0; + width: 80rpx; + height: 100%; + display: flex; + align-items: center; + justify-content: center; +} + +.arrow-rigth { + width: 32rpx; + height: 32rpx; +} + +.order-meg { + margin-bottom: 20rpx; + font-size: 28rpx; + +} + +.order-detail { + padding: 30rpx 0; + border-bottom: 2rpx solid #eee; + color: #777; + min-height: 190rpx; + background-color: #fff; + +} + +.goods-img { + float: left; + width: 200rpx; + height: 200rpx; + margin: 0 20rpx; +} + +.order-cont { + float: left; + width: 438rpx; +} + +.goods-name { + height: 74rpx; + line-height: 40rpx; + overflow: hidden; + margin-bottom: 16rpx; + font-size: 28rpx; + color: #333; + +} + +.goods-color { + font-size: 24rpx; +} + +.order-num { + margin-top: 25rpx; + font-size: 24rpx; + line-height: 42rpx; +} + +.set-mes{ + background-color: #fff; + /* margin-top: 20rpx; */ +} +.use-item{ + display: flex; + align-items: center; + /* height: 80rpx; */ + /* border-bottom: 1px solid #ddd; */ + font-size: 26rpx; + /* width:95%; +margin:auto; */ + padding: 20rpx; +} +.use-item>view{ + display: flex; + /* margin-right: 12rpx; */ +} +.use-item.bfff{ + background-color: #fff; +} +.use-item .dp{ + display: block; + width: 40rpx; + height: 40rpx; + /* margin-left: -6rpx; */ +} + +.set-item { + justify-content: space-between; + background-color: #fff; +} + +.set-btn { + display: flex; + font-size: 24rpx; +} + +.set-mes input { + width: 380rpx; + height: 50rpx; + line-height: 50rpx; + border: 1px solid #ddd; +} + +.use-btn { + width: 100rpx; + height: 50rpx; + margin-left: 20rpx; + line-height: 50rpx; + text-align: center; + background-color: #f23030; + color: #fff; +} + +.coupon-mes { + /* box-sizing: border-box; */ + /* height:95rpx; */ + padding: 20rpx; + background-color: #fff; + font-size: 30rpx; + /* color: #444; */ + /* width: 100%; */ + border-radius: 14rpx; + margin-top: 20rpx; + margin-bottom: 20rpx; +} + +.coupon-title { + display: flex; + justify-content: space-between; + align-items: center; + height: 92rpx; +} + +.coupon-title>view { + display: flex; +} + +.coupon-num { + height: 36rpx; + margin-left: 20rpx; + padding: 0 16rpx; + line-height: 36rpx; + text-align: center; + background-color: #f23030; + color: #fff; + font-size: 24rpx; +} + +.leave-word { + position: relative; + font-size: 24rpx; + margin-left: 20rpx; + display: flex; + align-items: center; + height: 50rpx; + width: 500rpx; +} + +.word-box { + font-size: 26rpx; + /* width: 600rpx; */ + /* padding: 10rpx; + height: 28rpx; + line-height: 40rpx; */ +} + +.max-word { + position: absolute; + right: 0; + bottom: 0; +} + +.information { + /* padding: 20rpx; */ + background-color: #fff; + /* margin-bottom: 120rpx; */ +} + +.information .item { + display: flex; + justify-content: space-between; + /* height: 60rpx; + line-height: 60rpx; */ + font-size: 24rpx; + /* color: #333; */ + padding: 20rpx; +} + +.btn-wrap { + height: 94rpx; + box-sizing: border-box; + display: flex; + justify-content: space-between; + background-color: white; + align-items: center; + position: fixed; + bottom: 0; + left: 0; + width: 100%; + padding: 0 30rpx; +} + +.tips-btn { + /* float: right; + width: 200rpx; + height: 100rpx; + line-height: 100rpx; + text-align: center; + font-size: 30rpx; + color: #fff; + background-color: #f23030; */ + color: white; + background-color: #FE4445; + height: 72rpx; + line-height: 72rpx; + padding: 0 42rpx; + border-radius: 36rpx; + margin-left: 0; + margin-right: 0; +} + +.pay-amount { + /* float: right; + display: flex; + align-items: center; + height: 100rpx; + font-size: 26rpx; + margin-right: 40rpx; */ +} + +.payable { + color: #444; + /* margin-right: 20rpx; */ +} + +.shipping-modal { + z-index: 20; + position: fixed; + bottom: 0; + left: 0; + right: 0; + overflow-y: hidden; + color: #666666; + background-color: white; +} + +.shipping-nav { + text-align: center; + font-size: 35rpx; + padding-top: 30rpx; +} + +.shipping-list { + padding: 20rpx 30rpx 40rpx; + font-size: 28rpx; +} + +.shipping-item { + display: block; + padding: 20rpx 0; +} + +.shipping-btn { + width: 100%; + color: white; + background-color: #f23030; + line-height: 90rpx; + text-align: center; + font-size: 40rpx; +} + +/*----------nyf新增,地址---------*/ +.add_new{ + height: 90rpx; + display: flex; + align-items: center; + padding: 0 26rpx; +} +.addr_jia{width: 45rpx; height: 45rpx; border: 1rpx solid #ddd; + margin-right: 15rpx;vertical-align: middle;} +.yu_er{ + margin-left: 10rpx; + /* margin-right: 60rpx; */ +} +.wuliu{margin-left: 20rpx;} + + +/*---- 优惠券列表 -----*/ +.xc-coupon-frame{ + width: 100%; + height: 92rpx; + +} +.xc-coupon-frame .work-frame{ + width: 100%; + height: 100%; + border-bottom:3rpx solid #eee; + padding: 0 26rpx; + background-color: white; +} +.xc-right{ + width:12rpx; + height:12rpx; + border-top:2rpx solid #000; + border-right:2rpx solid #000; + transform:rotate(45deg); + display:inline-block; + margin-left: 10rpx; +} + +.xc-coupon-frame .work-frame .work{ font-size: 30rpx; line-height: 92rpx; } +.xc-right-frame{font-size: 30rpx;line-height: 92rpx; margin-right: 10rpx } + +/* 自定义弹出窗口 */ +.cx-popup{ + width:100%; + height:880rpx; + background: #fff; + z-index: 35; + border-top-left-radius: 20rpx; + border-top-right-radius: 20rpx; + position:fixed; + bottom:0; + left: 0; + /* padding-bottom: 25rpx; */ +} + +.cx-popup .top{ + width:95%; + height:100rpx; + border-bottom:3rpx solid #ddd; + margin: auto; + margin-top: 30rpx; + +} +.xc-top-content{ + width: 93%; + height:85rpx; + padding-top: 30rpx; + font-size: 34rpx; + font-weight: 600; + +} + + +.xc-valid-coupon{ + width: 90%; + height:40rpx; + padding-top: 24rpx; + overflow: hidden; +} +.xc-frame{ + width: 100%; + height:60%; +} + +.xc-frame .list-frame{ + width: 95%; + height: 100%; + overflow-y:scroll; + +} +.xc-close-frame{ + margin-top:-10rpx; + +} + +.xc-close{ + width: 37rpx; +height: 37rpx; +border-radius: 50%; +border: 3rpx solid #333; +text-align: center; +line-height: 34rpx; +font-size: 29rpx; +color: #333; + +} +.xc-money{ + color: #af2346; + font-size: 35rpx; +} + +.xc-money-frame{ + margin-left:35rpx; + +} +.xc-coupon-effect{ + width: 99%; + min-height: 100rpx; + border-bottom:3rpx solid #ddd; + + +} +.xc-goods-coupon{ + width: 85%; + height:100%; + +} +.xc-title{ + width:50%; + margin-left:222rpx; + +} +.xc-coupon-money0{ + color: #c91e31; + font-size: 35rpx; + line-height: 40rpx; + +} +.xc-coupon-money{ + color: #c91e31; + font-size: 35rpx; + line-height: 40rpx; + padding-top: 10px; + +} +.xc-coupon-money1{ + color: #444; + font-size: 28rpx; + line-height: 60rpx; + + +} +.xc-coupon-time{ + height: 50rpx; + font-size: 27rpx; + color: #a4a4a4; +} +.xc-coupon-time .time{ + margin-left: 15rpx; + font-size: 27rpx; +} +.xc-coupon-selection{ + height:100%; +} + +.xc-confirm { + width: 50%; + border-radius: 50rpx; + height: 80rpx; + margin:0 auto; + background:#d60021; + color:#fff; + font-size:28rpx; + margin-top: 28rpx; +} + +.up{ animation: up .7s; } +.down{ animation: down 1s; } +@keyframes up { 0% { transform: translateY(550rpx); } 100% { transform: translateY(0); } } +@keyframes down { 0% { transform: translateY(0); } 100% { transform: translateY(550rpx); } } + +.xc-not-Selection{ + width: 40rpx; +height: 40rpx; + background: #eeeeee; +} + + +.xc-close-express{ + width: 40rpx; +height: 40rpx; +border-radius: 50%; +border: 3rpx solid #333; +text-align: center; +font-size:32rpx; +line-height: 38rpx; +color: #333; +margin-top: 5rpx; +} +.cx-popup .tops{ + width: 100%; +height: 145rpx; +border-bottom: 3rpx solid #eee; + +} +.top-content { + width: 82%; +padding-top: 33px; +height: 100%; +padding-left: 40rpx; +} +.close-frame{ + margin-top: 30rpx; + +} + +.xc-hook { +width: 33rpx; +height: 33rpx; +transform: rotate(-135deg); +line-height: 35rpx; +text-align: center; +margin-right: 20rpx + + +} +.xc-hooks { +width: 30rpx; +height: 30rpx; +border: 1rpx solid #999; +margin-right: 20rpx; +} +.express_list_frame{ + display: flex; +height: 80rpx; +align-items: center; +padding-left: 40rpx; +border-bottom: 1rpx solid #eee; + +} +.express_list{ + width: 100%; + height: 65%; + overflow-y: auto; + margin-bottom: 40rpx; + +} +.xc-confirms { + box-sizing: border-box; + width: 40%; + border-radius: 50rpx; + height: 80rpx; + margin:0 auto; + font-size:28rpx; + background: #fff; + color: #333; + border: 2rpx solid #333; +} + + +/* 优惠券的改版样式 */ +.xc-coupon-frame{ + /* width: 710rpx; */ + width: 100%; + height:auto; + margin: 0 auto; + +} +.xc-coupon-frame .coupon-frame{ + width: 100%; + height: 200rpx; + margin-top:10rpx; + border-bottom: 1rpx solid #eee; + +} +.xc-coupon-frame .coupon-frame .coupon-left{ + width: 215rpx; + height:100%; + overflow: hidden; +} +.xc-money-frames{ + width:96%; + margin-top: -10px; +} + +.xc-rmb-symbol{ + font-size:40rpx; + +} + +.xc-rmb-val{ + font-size:60rpx; + +} +.coupon-explain{ + font-size:25rpx; +width:100%; + + +} +.xc-valuer{ + margin-top:39rpx; + margin-left:28rpx; + font-size:25rpx; +} +.coupon-frame .oval{ + width:155rpx; + height:83rpx; + border-radius: 50%; + right:-78rpx; + top:-37rpx; +} +.coupon-right{ + /* width:490rpx; */ + height: 99%; + border-top: 1rpx solid #eaeaea; + /* //border-bottom: 1rpx solid #eaeaea; */ + border-right: 1rpx solid #eaeaea; + flex-grow: 1; +} +.coupon-annotation{ + width: 95%; + height: 100%; + +} +.xc-brand{ + width:100rpx; + height:35rpx; + line-height: 35rpx; + font-size:21rpx; + border-radius:10rpx; position: relative; top:-1px; + margin-right: 8rpx +} +.top-frame{ + width:82%; + height: 75rpx; + margin-top:10rpx; +} +.top-frame .coupon-wode{ + font-size: 25rpx; + margin-left:10rpx; + width:340rpx; + height:88rpx; +} +.coupon-code{ + width:60rpx; + height:60rpx; + margin-top:5rpx; + +} +.frame{ + width: 100% +} +.coupon-time{ + font-size: 23rpx; + line-height:33rpx; + color: #333; +} + +.clik-get{ + width:125rpx; + height:45rpx; + border-radius: 25rpx; + line-height: 45rpx; + font-size:25rpx; + bottom:67rpx; + right:6px; +} + +.code-img{ + margin-left:20rpx; +} +.bottmo-explain{ +top:145rpx; +width:94%; +border-top:1rpx dashed #eee; +padding-top:8rpx; +height:38rpx; +line-height: 51rpx; + +} +.font-word{ + font-size: 22rpx; +} +.circle-size{ + background: #a0a0a0; + width: 27rpx; + height: 27rpx; + margin-top:13rpx; +margin-left:8rpx; +display: flex; + +align-items: center; +} +.xc-jiantou{ + /* width: 9rpx; + height: 9rpx; */ + /* border-top: 2rpx solid #fff; + border-right: 2rpx solid #fff; */ + transform: rotate(-90deg); + color: #fff; + font-size: 15rpx; + /* display:inline-block; + margin-top: 6.5rpx; */ + text-align: center; +width: 24rpx; +} +.xc-buttom{ + box-sizing: border-box; + width:100%; + min-height:76rpx; + height:auto; + line-height:40rpx; + border-left:1rpx solid #eee; + border-right:1rpx solid #eee; + border-bottom:1rpx solid #eee; +/* margin-left: 6rpx; */ +} + +.goods-num{ + font-size: 28rpx; + color: #333; +} + +.explain-coupon{ + font-size:25rpx; + padding: 10rpx 10rpx +} +.circle-frame{ + width: 20rpx; + height: auto; + z-index:1; + left:210rpx; + +} +.circle-sawtooth{ + width: 11rpx; + height: 11rpx; + background: #fff; +} + +.red{background-color: #fe7496;} +.green{ background-color: #22c7c1;} +.blue{background-color:#5e82e3;} +.g_gray{background-color: #aaaaaa} + +.f_text{text-align: center; height:96rpx; } +.xc-hook.sn { + margin-top:12%; +width:45rpx; +height:45rpx; +font-size:28rpx; +line-height:44rpx; + + +} +.xc-hooks.on{ + margin-top:12%; +width:42rpx; +height:42rpx; +} +.may_use_coupon{ + /* width: 95%; */ + /* height: 68rpx; */ + line-height:78rpx; + padding: 0 26rpx; + justify-content: space-between; + align-items: center; +} +.determine-frame{ + width: 100%; + height: 130rpx; + +} +.xc-determine{ + height: 80rpx; + width: 40%; + border-radius: 50rpx; +background: #d60021; +color: #fff; +font-size: 28rpx; +margin: 0 auto; + +} +.click-buttem{ +width: 90%; +margin: auto; +} +.logistics-name{ + margin-right:20rpx; +} +.xc-border{ + border-top:8rpx solid #eee; +width: 100% +} +.main-top{ +margin-top: 20rpx; + +} +.xc-hookts{ +border: 1rpx solid #999; + +} +.xc-hookts.on{ + width:30rpx; +height:30rpx; + +} +.xc-hookt.sn{ + width: 32rpx; +height: 32rpx; +font-size: 28rpx; +line-height: 34rpx; +} +.xc-hookt{ + transform: rotate(-135deg); +text-align: center; + +} +.main-bottom{ + margin-bottom: 20rpx; + +} +.xc-hookst{ + border: 1rpx solid #999; + +} +.xc-hookst.ons{ + width: 42rpx; +height: 42rpx; +margin-left: 20rpx; + +} +.is_use_coupon{ + width: 65%; +justify-content: flex-end; +padding-top: 10rpx; + + +} +.xc-hooka{ + transform: rotate(-135deg); +text-align: center; + +} +.xc-hooka.sn{ + width: 45rpx; +height: 45rpx; +font-size: 28rpx; +line-height: 44rpx; +margin-left: 20rpx; + +} +.color-gray{ + color: #808080; +} +.n_guige{ display: inline-block; background:rgb(236, 236, 236); color: rgb(63,63,63); padding: 3rpx 10rpx; border-radius: 3rpx } +.gift_image{ width: 60rpx; height: 60rpx; position: absolute; top: 0; left: 0} + +.quan_num_show{ padding: 4rpx 6rpx; background-color:#ea5551; color:#fff; border-radius: 6rpx;margin-left:10rpx;font-size:24rpx;} + +.navigator-hover { + background: none; + opacity: 1; +} + + +.plus_buy{ + background-color: #fff; + margin:15rpx 0; + padding: 20rpx; + position: relative; +} + + +.card_bg { + box-sizing: border-box; + padding: 2rpx 10rpx; + height: 28rpx; + border-radius: 26rpx; + font-size: 18rpx; + line-height: 28rpx; + max-width: 210rpx; + background: #333; + color: #fff; + margin-left: 8rpx; + position:relative; + top:7rpx; +} + +.card_bg image { + width: 19rpx; + height: 19rpx; + margin-right: 8rpx; +} + +/* .card_bg .card_name { + max-width: 76rpx; + width: auto; + overflow: hidden; + white-space: nowrap; +} */ + +.card_name { + position: relative; + top: -4rpx; + margin-left: 6px; +} + +.car_tri_up { + width: 0;height: 0; + border-left: 20rpx solid transparent; + border-right: 20rpx solid transparent; + border-bottom: 20rpx solid #fff; + position: absolute; + right: 20rpx; + top:-10rpx +} +.card_op{ + position: absolute; + right: 20rpx; + top:36rpx +} +