diff --git a/packageC/pages/presell/cart/cart.js b/packageC/pages/presell/cart/cart.js
index e6d2731..eacf3fc 100644
--- a/packageC/pages/presell/cart/cart.js
+++ b/packageC/pages/presell/cart/cart.js
@@ -1,6 +1,6 @@
//这个页面是付尾款
var t = getApp(), app = t, a = t.request, e = require("../../../../utils/common.js"),
- s = require("../../../../utils/util.js"), ut = s, o = require("../../../../utils/md5.js"), to = getApp();
+ s = require("../../../../utils/util.js"), ut = s, o = require("../../../../utils/md5.js"), to = getApp();
var oo = t.globalData.setting, os = oo;
var regeneratorRuntime = require('../../../../utils/runtime.js');
var util_pay = require("../../../../utils/pay.js");
@@ -8,3485 +8,3789 @@ const t_pay = require("../../../../utils/pay2.js");
Page({
- data: {
- 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,
- //提交订单的格式
- /*-----------当是购物车结算的时候-------------*/
- 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: '',
- isget_by_quan: {}, //是否调用了接口获取包邮券
- // 设计一个数组来存放已经选择了的券编号,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,
-
- order_sn: '',
- order_id: '',
- exp_price:0,
- order_prom_amount:0,
- paying:0,
- same_ok:1, //同城配送按钮控制
- bconfig: null,
- showFold:true,
-
- is_fwk:0, //-- 是不是服务卡项的购买 --
- sameCityExp_off:0, //未达到起送价
- sameCityExp_info:'',//未达到起送价提示信息
- },
-
-
-
- onReady() {
-
- setTimeout(() => {
- wx.createSelectorQuery().selectAll(".showArea, .hideArea").boundingClientRect(res => {
- if (res.length != 0) {
- this.setData({
- showFold: res[0].height < res[1].height,
- });
- };
-
- }).exec();
- }, 1000);
-
- },
-
- clickCollapse() {
- this.setData({
- flag: !this.data.flag,
- })
- },
- onLoad: function (t) {
-
- //定义第一次进入
- this.data.fir_in=1;
-
- if (t.order_id) this.data.order_id = t.order_id;
- if (t.order_sn) this.data.order_sn = t.order_sn;
-
- if(t.is_fwk){
- this.setData({is_fwk:1});
- }
-
- wx.setNavigationBarTitle({ title: "订单详情", })
- var th = this;
- getApp().getConfig2(function (e) {
- th.setData({
- bconfig: e
- });
- }, 1);
- this.setData({ is_b_now: t.is_bnow == undefined ? 0 : t.is_bnow, });
- th.data.param = t;
- //清理一下,确保最新的系统配置
- 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) {
- }
- });
- if (!getApp().globalData.userInfo) {
- getApp().goto("/packageE/pages/togoin/togoin");
- }
-
- getApp().getConfig2(function (e) {
- th.setData({
- bconfig: e
- });
- }, 1);
-
- //判断是不是佣金抵扣
- getApp().is_distribut(this);
-
- },
- onUnload: function () {
- this.setData({ isclose: 1 })
- },
- onHide: function () {
- this.setData({
- isget_by_quan: {},
- is_no_by: {},
- is_by: {}
- })
- this.data.fir_in=0;
- },
-
- //----------子页返回父页触发----------
- onShow: function () {
-
- this.data.paying=0;
-
- console.log('onshow-2222');
-
- var th = this;
- //判断是不是第一次进入
- if(this.data.fir_in){
- this.data.fir_in=0;
- }else{
-
- console.log('onshow-3333');
- let o_list="/pages/user/order_list/order_list";
- if(this.data.is_fwk){
- o_list='/pages/user/order_list/order_list?index=2&tabindex=1';
- }
- //-- 富友支付的 --
- var fy= ut.fy_back(o_list,1);
- if(fy) return false;
- util_pay.set_fir();
- t_pay.set_fir();
-
- //-- 通联的第三方支付的返回优化 --
- ut.is_pay_ok(th.data.ok_order_sn,"back","back",function (){
-
- console.log('onshow-444');
- console.log(th.data.ok_order_sn);
-
- if(!th.data.ok_order_sn) return false;
-
- let ord_url='';
- let ord_req={};
- //-- 如果是服务卡项的时候 --
- if(th.data.is_fwk){
- ord_url="/api/weshop/recharge/user/page";
- ord_req={store_id:os.stoid,order_sn:th.data.ok_order_sn,user_id:getApp().globalData.user_id};
- }else{
- ord_url="/api/weshop/order/page";
- ord_req={store_id:os.stoid,parent_sn:th.data.ok_order_sn};
- }
-
- getApp().request.promiseGet(ord_url,
- {data:ord_req}).then(res=>{
- if(ut.ajax_ok(res)){
-
- console.log('onshow-444');
- console.log(res);
-
- var item=res.data.data.pageData[0];
- if(item.pay_status==1){
- //支付支付,返回首页
- ut.m_toast('支付成功');
- setTimeout(()=>{
- wx.navigateBack();
- },1000)
-
- }else{
- //支付支付,返回首页
- ut.m_toast('支付失败');
- setTimeout(()=>{
- wx.navigateBack();
- },1000)
- }
- }
- })
- });
-
- }
-
-
-
- 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 });
- th.setData({ add_back: 1,same_ok:1 });
- th.calculatePrice2();
- } 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;
- var is_same_city = json_d.is_same_city;
-
- 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,
- is_same_city: is_same_city,
- sys_switch: json_d,
- });
-
- 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 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,
- to = getApp();
- th.setData({
- userinfo: to.globalData.userInfo,
- });
- //选获取地址
- th.getuser_addr(function (addr) {
-
- if (addr == null || addr == undefined || addr.length == 0) {
- th.setData({
- enterAddressPage: 1,
- });
-
- } else {
- th.setData({
- user_addr: addr, enterAddressPage: 0,
- });
- }
- //获取立即购买的商品信息
- th.get_buy_goods(th.data.order_id, th.data.order_sn);
- });
- //获取提现金额
- getApp().request.get("/api/weshop/withdrawals/summoney", {
- data: {
- user_id: to.globalData.user_id,
- store_id: oo.stoid,
- status: 0
- },
- success: function (su) {
- console.log("withdrawals");
- if (su.data.code == 0) {
- var yuer = parseFloat(th.data.userinfo.user_money -
- th.data.userinfo.frozen_money - su.data.data.summoney).toFixed(2);
- th.setData({
- txmon: su.data.data.summoney,
- yuer: yuer
- });
- }
- }
- });
- },
-
- //-----获取商品------
- async get_buy_goods(ord, o_sn) {
-
- console.log('is_fwk');
- console.log(this.data.is_fwk);
-
- if(this.data.is_fwk){
- this.get_buy_card(o_sn,ord);
- return false;
- }
-
- var order = null,
- order_goods = null,
- goods = null,
- pickup = null,
- distr_type = 0,
- exp_type = 0,
- presell = null, //订单从表
- pre_arr = null, //订单内容
- act = null, //订单内容
- th = this;
-
- if (o_sn) {
- //获取order信息根据订单编号order_sn
- await getApp().request.promiseGet("/api/weshop/order/page", {
- data: { store_id: os.stoid, order_sn: o_sn, }
- }).then(res => {
- order = res.data.data.pageData[0];
- })
-
-
- ord = order.order_id;
- } else {
- //---获取订单---
- await getApp().request.promiseGet("/api/weshop/order/get/" + oo.stoid + "/" + ord, {}).then(res => {
- order = res.data.data;
- });
- }
-
-
- //---获取订单从表---
- await getApp().request.promiseGet("/api/weshop/ordergoods/page", {
- data: {
- store_id: oo.stoid,
- order_id: ord
- }
- }).then(res => {
- order_goods = res.data.data.pageData[0];
- });
-
- await getApp().request.promiseGet("/api/weshop/order/orderPresell/get/" + oo.stoid + "/" + order.order_id, {}).then(res => {
- presell = res.data.data;
- });
-
- //等待定金
- if (order.order_status < 2 && presell.deposit_pay_time <= 0) {
- th.setData({ wait_dj: 1 })
- }
- //等待尾款
- if (order.order_status < 2 && presell.deposit_pay_time > 0 && presell.tail_pay_state == 0 && presell.presell_type != 1) {
- th.setData({ wait_wk: 1 })
- wx.setNavigationBarTitle({ title: "支付尾款", })
- }
- //等待发货
- if (order.pay_status == 1 && order.shipping_status == 0) {
- th.setData({ wait_fh: 1 })
- }
-
- if (order.pay_status == 1 && order.shipping_status == 1 && order.order_status < 2) {
- th.setData({ wait_sh: 1 })
- }
- //------获取预售主表----------
- await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellForm/get/" + os.stoid + "/" + presell.prom_id, {}).then(res => {
- if (res.data.code == 0 && res.data.data) {
- act = res.data.data;
-
- th.setData({
- act: res.data.data,
- });
- }
- })
-
- //-- 判断一下会员的身份 --
- if (order.pay_status == 0) {
- var pre_data = { store_id: os.stoid, presell_id: presell.prom_id, timetype: 12, goods_id: order_goods.goods_id };
- pre_data.user_id = order.user_id;
- var isok = 1;
- await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellList/page", {
- data: pre_data,
- }).then(e => {
- if (e.data.code == 0 && e.data.data.pageData && e.data.data.pageData.length > 0) {
- pre_arr = e.data.data.pageData[0];
- } else {
- isok = 0;
- }
- })
-
- if (!isok) {
- getApp().confirmBox("会员身份不符合");
- return false;
- }
-
- if (th.data.wait_dj) {
- if (act.is_end) {
- getApp().confirmBox("活动已经结束");
- return false;
- }
- if (!act.isuse) {
- getApp().confirmBox("活动未启用");
- return false;
- }
- if (th.data.act.end_time < ut.gettimestamp()) {
- getApp().confirmBox("活动的定金时间已经结束", function () {
- ut.wx_back();
- });
- return false;
- }
-
- }
- if (th.data.wait_wk) {
- if (th.data.act.pay_enddate < ut.gettimestamp()) {
- getApp().confirmBox("活动的尾款时间已经结束", function () {
- ut.wx_back();
- });
- return false;
- }
- }
- }
- else {
- await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellList/list", {
- data: { store_id: os.stoid, goods_id: order_goods.goods_id, presell_id: order_goods.prom_id }
- }).then(re => {
- if (re.data.code == 0 && re.data.data && re.data.data.length > 0) {
- pre_arr = re.data.data[0];
- }
- })
-
- if (!pre_arr) {
- getApp().confirmBox("未找到商品");
- return false;
- }
- }
-
- //---获取商品---
- await getApp().request.promiseGet("/api/weshop/goods/get/" + oo.stoid + "/" + order_goods.goods_id, {}).then(res => {
- goods = res.data.data;
- order.market_price = goods.market_price;
- order.show_img = oo.imghost + goods.original_img;
- });
-
- //-- 如果商品有同城配送的参数的时候,一件代发商品不能显示同城配送按钮 --
- if(goods.is_same_city && th.data.is_same_city && goods.whsle_id<=0){
-
- await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+order.pickup_id, {}).then(res=>{
- if(res.data.code==0){
- var pk=res.data.data;
- if(pk && pk.is_same_city){
- th.setData({show_same_city:1})
- }
- }
-
- })
-
- }
-
- //如果有开启佣金抵扣,同时会员是分销商的时候
- if(getApp().globalData.userInfo.is_distribut
- && th.data.dis_config && th.data.dis_config.is_yongjin_dk){
- var fir_num=0;
- var sec_num=0;
- var thi_num=0;
- if(th.data.dis_config.pattern==1){
- fir_num=(goods.fir_rate || 0)*order_goods.goods_num;
- sec_num=(goods.sec_rate || 0)*order_goods.goods_num;
- thi_num=(goods.thi_rate || 0)*order_goods.goods_num;
- }else{
- fir_num=parseFloat((goods.commission || 0) *order_goods.goods_num*(th.data.dis_config.firstRate || 0)/100).toFixed(2);
- sec_num=parseFloat((goods.commission || 0)*order_goods.goods_num*(th.data.dis_config.secondRate || 0)/100).toFixed(2);
- thi_num=parseFloat((goods.commission || 0)*order_goods.goods_num*(th.data.dis_config.thirdRate || 0)/100).toFixed(2);
- }
- var c_num=getApp().get_commission(fir_num,sec_num,thi_num,th);
- goods.use_commission=c_num;
- }
-
-
- var g_url = "/packageC/pages/presell/goodsInfo/goodsInfo?goods_id=" + order_goods.goods_id + "&pre_id=" + pre_arr.id;
- if (act.is_end || th.data.act.end_time < ut.gettimestamp()) {
-
- if (goods.prom_type == 8 && goods.prom_id == act.id) {
- g_url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + order_goods.goods_id;
- getApp().request.put("/api/weshop/goods/update",
- {
- data: { goods_id: order_goods.goods_id, store_id: os.stoid, prom_id: 0, prom_type: 0 },
- success: function (e) { }
- });
- } else {
- g_url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + order_goods.goods_id;
- if (goods.prom_type == 8) {
- g_url = "/packageC/pages/presell/goodsInfo/goodsInfo?goods_id=" + order_goods.goods_id + "&prom_id=" + goods.prom_id;
- }
-
- }
-
- }
-
-
- //判断使用优惠券的接口需要
- th.data.check_quan_ware_list = goods.erpwareid;
- //---获取门店---
- await getApp().request.promiseGet("/api/weshop/pickup/get/" + oo.stoid + "/" + order.pickup_id, {}).then(res => {
- pickup = res.data.data;
- });
-
- order['is_all_return'] = 0;
- //------------对比一下有没有退款记录------------
- await getApp().request.promiseGet("/api/weshop/order/returngoods/page", {
- data: {
- order_id: order.order_id, store_id: oo.stoid,
- user_id: order.user_id, pageSize: 200
- }
- }).then(rss => {
- var ttd = rss;
- //----没有相关的退款记录----
- if (ttd.data.data.total == 0) {
- order['is_all_return'] = 0;
- } else {
- var eea = ttd.data.data.pageData[0];
- //1.退款正在进行中,
- //2.退款被拒绝就要显示可以退款
- //3.退款已经完成
- order['is_all_return'] = 1;
- order['is_all_return_status'] = ttd.data.data.pageData[0].status;
-
- if (order['order_status'] == 1 && order['pay_status'] == 1) {
- switch (eea.status) {
- case 0:
- case 1:
- order.order_status_detail = "退款中";
- order['return_btn'] = 2; break;
- case 2:
- order.order_status_detail = "退款完成";
- order['return_btn'] = 4; break;
- case 3:
- order['return_btn'] = 3; break;
- default:
- order['return_btn'] = 0;
- }
- }
- }
- })
-
- var price = presell.presell_price;
- if (!goods) return false;
-
- if(goods.is_minishop==1 && getApp().is_sp_hao()){
-
- if(goods.distr_type==1 || pickup.distr_type==1) {
- wx.showToast({
- title: "视频号仅支持物流",
- icon: 'none',
- duration: 2000
- })
-
- setTimeout(function(){
- wx.navigateBack({delta: 1})
- },1000)
-
- return false
- }
-
- goods.distr_type=2;
- th.setData({show_same_city:0})
-
- }
-
- //--判断物流--
- if (goods.distr_type)
- distr_type = goods.distr_type;
- else
- distr_type = pickup.distr_type;
-
- switch (distr_type) {
- case 0:
- exp_type = 1;
- //-- 系统后台有设置要默认的 --
- if (th.data.sys_switch.pickupway && th.data.sys_switch.pickupway == 1) exp_type = 0;
- break; //自选
- case 1:
- exp_type = 1;
-
- break //自提
- case 2:
- exp_type = 0;
- break; //物流
- }
-
-
- if(th.data.show_same_city==1 && th.data.sys_switch.pickupway && th.data.sys_switch.pickupway == 2 ){
- exp_type = 2;
- }
-
- if (th.data.exp_type) {
- exp_type=th.data.exp_type
- }
-
-
- //等待发货的时候
- if (th.data.wait_fh) {
- var send_time = th.data.act.delivery_date;
- if (th.data.act.delivery_type == 2) {
- send_time = ut.gettimestamp() + th.data.act.delivery_daynum * 3600 * 24;
- }
- }
-
- order.order_goods = order_goods;
- var tail_pay = pre_arr.presell_price * order_goods.goods_num - presell.presell_deposit;
- this.setData({
- order: order,
- distr_type: distr_type,
- pickup: pickup,
- exp_type: exp_type,
- goods: goods,
- presell: presell,
- pre_arr: pre_arr,
- userInfo: getApp().globalData.userInfo,
- tail_pay: tail_pay,
- order_goods: order_goods,
- all_price: pre_arr.presell_price * order_goods.goods_num,
- pickup_id: pickup.pickup_id,
- send_time: send_time,
- g_url: g_url
- });
- th.get_diff();
- //统一进行计算金额
- th.calculatePrice2();
- //如果可以
- if (th.data.act.is_usecoupon) {
- th.get_buy_now_quan();
- }
- },
-
-
- //-- 服务卡项购买的时候 --
- async get_buy_card(o_sn,ord){
-
- let order = null,
- order_goods = null,
- goods = null,
- pickup = null,
- distr_type = 0,
- exp_type = 0,
- presell = null, //订单从表
- pre_arr = null, //订单内容
- act = null, //订单内容
- th = this;
-
- let url = '/api/weshop/recharge/user/page'
- let data = {
- store_id: os.stoid,
- user_id: getApp().globalData.user_id,
- order_sn: o_sn,
- };
-
- if(!o_sn){
- delete data.order_sn;
- data.order_id=ord;
- }
-
-
-
- // 请求数据
- let res= await app.promiseGet(url, {
- data: data,
- });
-
- if(!ut.ajax_ok(res)){
- getApp().confirmBox("未找到订单");
- return false;
- }
-
- order= res.data.data.pageData[0];
- //---获取订单从表---
- await getApp().request.promiseGet("/api/weshop/rechargeServicelist/page", {
- data: {
- store_id: os.stoid,
- order_id: order.order_id
- }
- }).then(res => {
- order_goods = res.data.data.pageData[0];
- });
-
- order_goods.goods_num=order_goods.qty;
-
- await getApp().request.promiseGet("/api/weshop/recharge/rechargePresell/get/" + oo.stoid + "/" + order.order_id, {}).then(res => {
- presell = res.data.data;
- });
-
- //等待定金
- if (order.order_status < 2 && presell.deposit_pay_time <= 0) {
- th.setData({ wait_dj: 1 })
- }
- //等待尾款
- if (order.order_status < 2 && presell.deposit_pay_time > 0 && presell.tail_pay_state == 0 && presell.presell_type != 1) {
- th.setData({ wait_wk: 1 })
- wx.setNavigationBarTitle({ title: "支付尾款", })
- }
- //等待发货
- if (order.pay_status == 1 && order.shipping_status == 0) {
- th.setData({ wait_fh: 1 })
- }
-
- if (order.pay_status == 1 && order.shipping_status == 1 && order.order_status < 2) {
- th.setData({ wait_sh: 1 })
- }
- //------获取预售主表----------
- await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellForm/get/" + os.stoid + "/" + presell.prom_id, {}).then(res => {
- if (res.data.code == 0 && res.data.data) {
- act = res.data.data;
- th.setData({
- act: res.data.data,
- });
- }
- })
-
- //-- 判断一下会员的身份 --
- if (order.pay_status == 0) {
- var pre_data = { store_id: os.stoid, presell_id: presell.prom_id, timetype: 12, goods_id: order_goods.card_id };
- pre_data.user_id = order.user_id;
- var isok = 1;
- await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellList/page", {
- data: pre_data,
- }).then(e => {
- if (e.data.code == 0 && e.data.data.pageData && e.data.data.pageData.length > 0) {
- pre_arr = e.data.data.pageData[0];
- } else {
- isok = 0;
- }
- })
-
- if (!isok) {
- getApp().confirmBox("会员身份不符合");
- return false;
- }
-
- if (th.data.wait_dj) {
- if (act.is_end) {
- getApp().confirmBox("活动已经结束");
- return false;
- }
- if (!act.isuse) {
- getApp().confirmBox("活动未启用");
- return false;
- }
- if (th.data.act.end_time < ut.gettimestamp()) {
- getApp().confirmBox("活动的定金时间已经结束", function () {
- ut.wx_back();
- });
- return false;
- }
-
- }
- if (th.data.wait_wk) {
- if (th.data.act.pay_enddate < ut.gettimestamp()) {
- getApp().confirmBox("活动的尾款时间已经结束", function () {
- ut.wx_back();
- });
- return false;
- }
- }
- }
- else {
- await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellList/list", {
- data: { store_id: os.stoid, goods_id: order_goods.card_id, presell_id: order_goods.prom_id }
- }).then(re => {
- if (re.data.code == 0 && re.data.data && re.data.data.length > 0) {
- pre_arr = re.data.data[0];
- }
- })
-
- if (!pre_arr) {
- getApp().confirmBox("未找到商品");
- return false;
- }
- }
-
- //---获取商品---
- await getApp().request.promiseGet("/api/weshop/serviceCard/get/" + oo.stoid + "/" + order_goods.card_id, {}).then(res => {
- goods = res.data.data;
- order.market_price = goods.show_price;
- order.show_img = oo.imghost + goods.imgUrl;
- goods.original_img =goods.imgUrl;
- goods.goods_name =goods.serviceName;
- });
-
- var g_url = "/packageC/pages/presell/cardInfo/goodsInfo?goods_id=" + order_goods.card_id + "&pre_id=" + pre_arr.id;
- if (act.is_end || th.data.act.end_time < ut.gettimestamp()) {
- g_url = "/packageA/pages/goods/goodsInfo/goodsInfo?goods_id=" + order_goods.card_id;
- }
-
- //---获取门店---
- await getApp().request.promiseGet("/api/weshop/pickup/get/" + oo.stoid + "/" + order_goods.pickup_id, {}).then(res => {
- pickup = res.data.data;
- });
-
- order['is_all_return'] = 0;
- var price = presell.presell_price;
- if (!goods) return false;
-
-
- //等待发货的时候
- if (th.data.wait_fh) {
- var send_time = th.data.act.delivery_date;
- if (th.data.act.delivery_type == 2) {
- send_time = ut.gettimestamp() + th.data.act.delivery_daynum * 3600 * 24;
- }
- }
-
- order.order_goods = order_goods;
- var tail_pay = pre_arr.presell_price * order_goods.goods_num - presell.presell_deposit;
- this.setData({
- order: order,
- pickup: pickup,
- goods: goods,
- presell: presell,
- pre_arr: pre_arr,
- userInfo: getApp().globalData.userInfo,
- tail_pay: tail_pay,
- order_goods: order_goods,
- all_price: pre_arr.presell_price * order_goods.goods_num,
- pickup_id: pickup.pickup_id,
- send_time: send_time,
- g_url: g_url
- });
- th.get_diff();
- //统一进行计算金额
- th.calculatePrice2();
- },
-
- async calculatePrice2() {
- var th = this;
- if (!this.data.pre_arr) return false;
- th.setData({ show_submit: 0,disabled_btn:0 })
-
- //--计算物流--
- if (this.data.exp_type == 0) {
- this.calculate_wuliu();
- }else if (this.data.exp_type == 2) {
- this.calculate_same_city();
- }
-
- else {
- var allpice = this.data.pre_arr.presell_price * this.data.order_goods.goods_num;
- allpice = allpice.toFixed(2);
- //--看一下有没有订单优惠--
- var o_condition = parseFloat(allpice);
- //---如果有选择优惠券的情况下---
- var quan_price = 0, bn_pick = th.data.pickup.pickup_id;
- 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 && 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;
- }
- })
- } else {
- th.setData({ quan_price: 0 });
- if (th.data.using_quan && th.data.using_quan[bn_pick] && th.data.using_quan[bn_pick].isby == 1) {
- var txt = "using_quan[" + bn_pick + "]";
- th.setData({ [txt]: {} });
- }
-
- }
-
- if (quan_price > 0) {
- if (quan_price < th.data.tail_pay) th.setData({ quan_price: quan_price })
- else {
- th.setData({ quan_price: th.data.tail_pay })
- }
- o_condition = o_condition - quan_price;
-
- } else {
- th.setData({ quan_price: 0 })
- }
- if (o_condition < 0) o_condition = 0;
-
- //如果同意参与订单优惠
- if (o_condition > 0 && this.data.pre_arr.is_useorderyh) {
- th.check_is_order_prom(o_condition, function (ord_price) {
- var bn_pick = th.data.pickup.pickup_id
- var order_prom_amount = 0;
- var order_prom_id = 0;
- var o_condition1 = 0;
- if (th.data.order_prom[bn_pick]) {
- var ord_prom = th.data.order_prom[bn_pick];
- if (!ord_prom.is_xz_yh || quan_price <= 0) {
- order_prom_id = ord_prom['id'];
- switch (ord_prom['type']) {
- case 0:
- var all_1 = o_condition;
- o_condition1 = Math.round(ord_price * ord_prom['expression']) / 100;//满额打折
- order_prom_amount = (all_1 - o_condition1).toFixed(2);
- break;
- case 1:
-
- var bs=1;
- if(ord_prom.is_bz){
- bs=Math.floor(o_condition/ord_prom.money);
- }
-
- o_condition1 = ord_price - bs*ord_prom['expression'];//满额优惠金额
- order_prom_amount = bs*ord_prom['expression'];
- break;
- }
- }
- }
- //--订单优惠的显示--
- var order_prom_txt1 = "order_prom_id";
- var order_prom_txt2 = "order_prom_amount";
- if (order_prom_id > 0) {
- th.setData({ [order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount })
- } else {
- o_condition1 = ord_price;
- th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 0 })
- }
-
- o_condition1 = parseFloat(o_condition1) - parseFloat(th.data.presell.presell_deposit);
-
- if (o_condition1 < 0) o_condition1 = 0;
- else if(o_condition1>th.data.goods.use_commission && th.data.bn_use_commission){
- o_condition1-=th.data.goods.use_commission;
- }
-
- th.setData({ exp_price: 0, order_m: o_condition1, show_submit: 1, })
- })
- } else {
- o_condition = parseFloat(o_condition) - parseFloat(th.data.presell.presell_deposit);
- if (o_condition < 0) o_condition = 0;
- //if (o_condition1 < 0) o_condition1 = 0;
- else if(o_condition>th.data.goods.use_commission && th.data.bn_use_commission){
- o_condition-=th.data.goods.use_commission;
- }
-
- th.setData({ exp_price: 0, order_m: o_condition, show_submit: 1, })
- }
- }
- },
-
- //---------------检查是否有收货地址-------------------
- 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) {
- this.setData({
- maxWord: t.detail.value.length,
- user_note: 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 });
- }
- },
- 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 () {
- if (!this.data.wait_wk) return false;
-
- getApp().globalData.is_cart_old = 1;
- this.data.isget_by_quan = {};
- this.data.enterAddressPage = !0, wx.navigateTo({
- url: "/packageF/pages/user/address_list/address_list"
- });
- },
-
- //--------立即购买时,选择自提和物流----------
- 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[bn_pick] && th.data.using_quan[bn_pick].isby == 1) {
- th.setData({ using_quan: {} });
- }
- }
-
- //判断有没有默认的物流地址值
- if (def_exp_code != "" && def_exp_code != null && def_exp_code != undefined && !th.data.is_default_logistics) {
- 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();
- },
- //-----------------计算物流-------------
- calculatewuliu: function (code, o_shipping_price, goods_weight, out_of_weight,
- goods_piece, user_addr, freight_free, o_price, rs, pickid) {
- var price = 0, th = this;
- price += parseFloat(o_shipping_price);
- //如果是包邮
- if (freight_free > 0 && o_price >= freight_free && out_of_weight >= 0) {
- 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 (out_of_weight < 0 && o_price >= freight_free && !th.data.is_no_by[pickid]) {
- fw_price = parseFloat(item['money']);
- var out_of_weight = Math.abs(out_of_weight);
- if (out_of_weight > item['first_weight']) {
- var fw = out_of_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();
- },
- /*----券的所有操作----*/
- 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 });
- }
-
- 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 th = this;
- var ind = e.currentTarget.dataset.ind;
- var quan_item = this.data.selected_quan_list[ind];
- var pickid = this.data.pickup.pickup_id; //现在选择的是哪一个门店
-
- 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;
-
- //---如果是不使用优惠券---
- if (no_use == 1) {
- if (using_quan[pickid]) {
- using_quan[pickid].is_nouse_red = 1;
- }
- else {
- using_quan[pickid] = { 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[pickid]) {
- using_quan[pickid].is_nouse_red = 0;
- }
- else {
- using_quan[pickid] = { 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;
-
- 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);
-
-
- 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.pickup.pickup_id; //选中的门店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; //购物车购买的包邮券列表
-
- //循环普通的券
- 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.calculatePrice2();
- th.setData({ open_quan: 0 });
- th.setData({ using_quan: using_quan });
- }
- }
-
-
-
- },
-
- //----把券插入之后的操作,同时还要重新计算价格----
- 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 });
- this.calculatePrice2();
- },
-
- //点击打开优惠券使用说明
- 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 });
- //----计算此时购物车的价格----
- th.calculatePrice2();
-
- }
- }
- })
- },
-
- //更新下默认,在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);
- if(th.data.is_default_logistics) return false;
- 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 allprice = this.data.pre_arr.presell_price * this.data.order_goods.goods_num;
- th.data.ckeck_quan_price = allprice;
-
- //--如果商家后台没有限制使用优惠券,同时商品的优惠活动没有限制使用优惠券--
- if (th.data.is_close_quan != 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.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;
- },
-
-
- //--检查订单优惠--
- check_is_order_prom: function (condition, func, pick) {
- var th = this;
- pick = this.data.pickup.pickup_id;
- //---获取订单优惠---
- 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;
-
- //如果订单促销的取价不是实收,清空订单促销
- if(data && data.discount_field>0) data=null;
-
- th.data.order_prom[pick] = data;
- } else {
- th.data.order_prom[pick] = null;
- }
- func(condition);
- })
- },
-
- //--- 加入优惠活动的映射中,同时要有一个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;
- // out_of_weight = 0;
- th.data.is_no_by[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;
- // out_of_weight = 0;
- th.data.is_no_by[bn_pick] = 1;
- }
- }
-
- var t_shipping_price =
- this.calculatewuliu(code, gift_shipping_price, goods_weight, out_of_weight,
- goods_piece, user_addr, gift_freight_free, allpice, rs, th.data.bn_pick);
- 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;
- },
-
-
-
- //----计算物流的钱----
- async calculate_wuliu() {
- var to = getApp(), th = this;
- //to.getwuliuprice(async function (rs) {
- var o_shipping_price = 0,
- goods_weight = -1,
- goods_piece = -1,
- good = th.data.goods,
- quan_price = 0,
- exp_price = 0;
-
- var quan_no = null;
- var bn_pick = th.data.pickup.pickup_id;
- var allpice = th.data.all_price;
- var out_of_weight = null; //超出多少重量
-
- good.buynum=th.data.order.order_goods.goods_num;
-
- 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 (quan_price > 0) {
- if (quan_price < th.data.tail_pay) th.setData({ quan_price: quan_price })
- else {
- th.setData({ quan_price: th.data.tail_pay })
- quan_price = th.data.tail_pay;
- }
- } else {
- th.setData({ quan_price: 0 })
- }
- } else {
- th.setData({ quan_price: 0 })
- }
- } else {
- th.setData({ quan_price: 0 })
- }
-
-
- //---获取订单优惠---
- var condition = allpice - quan_price; //判断的条件
- var prom_ord=null
- if(condition > 0 && this.data.pre_arr.is_useorderyh) {
- await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
- data: {store_id: os.stoid, orderAmount: condition}
- }).then(res => {
- if (res.data.code == 0) {
- prom_ord = res.data.data;
-
- //如果订单促销的取价不是实收,清空订单促销
- if(prom_ord && prom_ord.discount_field>0) prom_ord=null;
- }
-
- })
- }
-
- //-----------当地址不为空,且是物流时,计算物流费用----------
- if (th.data.user_addr != null && th.data.exp_type == 0 && good.is_free_shipping == 0) {
- //看是不是有调用过包邮券,如果活动可以使用优化券的情况下
- if (!th.data.isget_by_quan[bn_pick] && th.data.act.is_usecoupon) {
-
- //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱---
- 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[bn_pick] = 1;
- }
- })
- }
- if (quan_no && th.data.using_quan[bn_pick].isby == 1) {
- exp_price = 0;
- } else {
- var user_addr=th.data.user_addr;
- var req_d = {
- province: user_addr.province, city: user_addr.city, district: user_addr.district,
- wuliu: parseFloat(condition).toFixed(2), store_id: os.stoid
- }
- var back_data = null;
-
- //-- 判断是不是包邮 --
- if (this.data.act.is_post_temp && (!prom_ord || prom_ord.is_post_temp)) {
-
- await getApp().request.promisePost("/api/weshop/order/areaFreight", {
- is_json: 1, data: req_d
- }).then(rs => {
- if (rs.data.code == 0) back_data = rs.data.data;
- });
- }
-
- var gd_arr_list = [];
- gd_arr_list.push(good);
-
- var cut_good_weight = 0;
- for (let i in gd_arr_list) {
- let item = gd_arr_list[i];
-
- if (back_data && back_data['is_by_all'] && (!back_data.no_free_goods || back_data.no_free_goods.indexOf(item.goods_id) == -1)) {
-
- if (item['exp_sum_type'] == 2 && back_data.weight_free > 0) {
- if (goods_weight < 0) goods_weight = 0;
- goods_weight += item['weight'] * item['buynum'];
- cut_good_weight += item['weight'] * item['buynum'];
- }
- if (back_data.weight_free > 0) {
- out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
- }
- continue;
- }
-
- switch (item['exp_sum_type']) {
- case 1:
- //统一运费
- o_shipping_price += item['uniform_exp_sum'];
- break;
- case 2:
- if (goods_weight < 0) goods_weight = 0;
- //累积商品重量 每种商品的重量 * 数量
- goods_weight += item['weight'] * item['buynum'];
-
- if (back_data && back_data.is_by_all && !back_data.no_free_goods) {
- cut_good_weight += item['weight'] * item['buynum'];
- if (back_data.weight_free > 0) {
- out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
- }
- }
- break;
- case 3:
- if (goods_piece < 0) goods_piece = 0;
- //累积商品数量
- goods_piece += item['buynum'];
- break;
- }
- }
-
- //如果是正值的时候
- if (out_of_weight >= 0) out_of_weight = -cut_good_weight;
- else out_of_weight = -back_data.weight_free * 1000;
-
-
- if(!th.data.wu_arr){
- wx.hideLoading();
- wx.showToast({
- title: "物流配置未启用物流公司", icon: 'none', duration: 2000
- })
- //th.setData({ show_submit:0, });
- th.setData({show_submit:1, submit: 0,same_ok:0 })
- return false;
- }
-
- var code = th.data.wu_arr[th.data.index].code;
- th.data.is_no_by[th.data.bn_pick] = 0;
-
- //--------------开始计算物流------------------
- var shipping_price =0;
-
- //ut.calculatewuliu(code, o_shipping_price, goods_weight, out_of_weight,
- //goods_piece, th.data.user_addr, back_data, rs);
- var w_data={
- store_id:os.stoid, code:code,
- o_shipping_price:o_shipping_price,
- goods_weight:goods_weight,
- out_of_weight:out_of_weight,goods_piece:goods_piece,
- user_addr_province:th.data.user_addr.province,
- user_addr_city:th.data.user_addr.city,
- user_addr_district:th.data.user_addr.district,
- is_by_all:back_data && back_data.is_by_all?1:0,
- no_free_goods:back_data && back_data.no_free_goods && back_data.no_free_goods.length>0?1:0,
- }
-
- var is_ok=0;
- await getApp().request.promisePost('/api/weshop/order/getOrderWuLiPrice', {data:w_data,is_json:1}).then(res=>{
- if(res.data.code==0){
- shipping_price=res.data.data; is_ok=1;
- }
- })
- if(!is_ok){
- wx.hideLoading();
- wx.showToast({
- title: "计算物流错误", icon: 'none',duration: 2000
- })
- //th.setData({ show_submit:0 });
- th.setData({show_submit:1, submit: 0,same_ok:0 })
- return false;
- }
-
- exp_price = parseFloat(shipping_price).toFixed(2);
- }
- th.wuliu_next(allpice, quan_price, exp_price,prom_ord,1);
- } else {
- th.wuliu_next(allpice, quan_price, exp_price,prom_ord,1);
- }
- //});
- },
-
- async calculate_same_city() {
- var th = this,
- good = th.data.goods,
- quan_price = 0,
- exp_price = 0;
-
- var quan_no = null;
- var bn_pick = th.data.pickup.pickup_id;
- var allpice = th.data.all_price;
-
- good.buynum=th.data.order.order_goods.goods_num;
-
- 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 (quan_price > 0) {
- if (quan_price < th.data.tail_pay) th.setData({ quan_price: quan_price })
- else {
- th.setData({ quan_price: th.data.tail_pay })
- quan_price = th.data.tail_pay;
- }
- } else {
- th.setData({ quan_price: 0 })
- }
- } else {
- th.setData({ quan_price: 0 })
- }
- } else {
- th.setData({ quan_price: 0 })
- }
-
- //-----------当地址不为空,且是物流时,计算物流费用----------
- if (th.data.user_addr != null) {
- th.wuliu_next(allpice, quan_price, 0);
- } else {
- wx.showToast({
- title: '请先选择收货地址', icon: 'none', duration: 2000
- })
- th.setData({show_submit: 1,})
- return false;
- }
- //});
- },
-
-
-
-
- //相同的东西统一在一起,is_get表示订单优惠有没有被读取一遍
- async wuliu_next(allpice, quan_price, exp_price,ord_prom,is_get) {
- var th = this;
- var o_condition = parseFloat(allpice) - parseFloat(quan_price);
- if (o_condition < 0) o_condition = 0;
-
- if(!ord_prom && !is_get){
- if(o_condition > 0 && this.data.pre_arr.is_useorderyh){
- await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
- data: { store_id: os.stoid, orderAmount: o_condition }
- }).then(res => {
- if (res.data.code == 0) {
- ord_prom = res.data.data;
-
- //如果订单促销的取价不是实收,清空订单促销
- if(ord_prom && ord_prom.discount_field>0) ord_prom=null;
- }
- })
- }
- }
-
-
- var bn_pick = th.data.pickup.pickup_id
- //如果同意参与订单优惠
- if (ord_prom) {
- //th.check_is_order_prom(o_condition,async function (ord_price) {
- var ord_price=o_condition;
- var order_prom_amount = 0;
- var order_prom_id = 0;
- var order_m = 0;
- //if (th.data.order_prom[bn_pick]) {
- //var ord_prom = th.data.order_prom[bn_pick];
- //么有使用券,或者活动没有限制使用优惠券
- if (quan_price <= 0 || !ord_prom.is_xz_yh) {
- order_prom_id = ord_prom['id'];
- switch (ord_prom['type']) {
- case 0:
- order_m = Math.round(ord_price * ord_prom['expression']) / 100;//满额打折
- order_prom_amount = (ord_price - order_m).toFixed(2);
- break;
- case 1:
- order_m = ord_price - ord_prom['expression'];//满额优惠金额
- order_prom_amount = ord_prom['expression'];
- break;
- }
- ord_price = order_m;
- }
- //}
-
- //--订单优惠的显示--
- if (order_prom_id > 0) {
- var order_prom_txt1 = "order_prom_id";
- var order_prom_txt2 = "order_prom_amount";
- th.setData({ [order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount })
- } else {
- var order_prom_txt1 = "order_prom_id";
- var order_prom_txt2 = "order_prom_amount";
- th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 0 })
- }
-
- if(th.data.exp_type == 2) {
- var good = th.data.goods;
- //--------------开始计算物流------------------
- var shipping_price = 0;
- var lon = 0;
- var lat = 0;
- //-- 获取距离 --
- await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {
- is_json: 1, data: {address: th.data.user_addr.more_address + th.data.user_addr.address,store_id:os.stoid}
- }).then(res => {
- if (res.data.code == 0) {
- var data = JSON.parse(res.data.data);
- if (data.status == 0) {
- lon = data.result.location.lng;
- lat = data.result.location.lat;
- }
- }
- })
- var gd_w = good['weight'] * good['buynum'];
- //-- 获取距离 --
- var req_data = {
- store_id: os.stoid,
- order_amount: parseFloat(ord_price),
- lon: lon, lat: lat,
- pickup_id: bn_pick,
- goods_weight: gd_w
- }
-
- var is_next = 1;
- //获取同城配送参数
- await getApp().request.promisePost("/api/weshop/order/sameCityExp/getMoney", {
- is_json: 1,
- data: req_data
- }).then(res => {
- if (res.data.code == 0) {
- shipping_price = res.data.data;
- th.setData({
- sameCityExp_off:0,
- sameCityExp_info:''
- })
- } else {
- if (res.data.code==-2) { //未达到起送价
- th.setData({
- sameCityExp_off:2,
- sameCityExp_info:res.data.msg
- })
- }else{
- th.setData({
- sameCityExp_off:1,
- sameCityExp_info:res.data.msg
- })
- }
- is_next = 0;
- wx.showToast({
- title: res.data.msg, icon: 'none', duration: 2000
- })
- }
- })
- if (!is_next) {
- th.setData({show_submit: 1, disabled_btn: 1})
- return false
- }
- exp_price = parseFloat(shipping_price).toFixed(2);
- th.data.lon=lon;
- th.data.lat=lat;
- th.data.bn_gd_w=gd_w;
- th.data.bn_samecity_order_amount=req_data.order_amount;
- }
-
- ord_price = parseFloat(ord_price) - parseFloat(th.data.presell.presell_deposit);
- if (ord_price < 0) ord_price = 0;
-
- var the_price=ord_price + parseFloat(exp_price);
-
- if(the_price
{
+ wx.createSelectorQuery().selectAll(".showArea, .hideArea").boundingClientRect(res => {
+ if (res.length != 0) {
+ this.setData({
+ showFold: res[0].height < res[1].height,
+ });
+ };
- //})
+ }).exec();
+ }, 1000);
+
+ },
+
+ clickCollapse() {
+ this.setData({
+ flag: !this.data.flag,
+ })
+ },
+ onLoad: function (t) {
+
+ //定义第一次进入
+ this.data.fir_in = 1;
+
+ if (t.order_id) this.data.order_id = t.order_id;
+ if (t.order_sn) this.data.order_sn = t.order_sn;
+
+ if (t.is_fwk) {
+ this.setData({ is_fwk: 1 });
+ }
+
+ wx.setNavigationBarTitle({ title: "订单详情", })
+ var th = this;
+ getApp().getConfig2(function (e) {
+ th.setData({
+ bconfig: e
+ });
+ }, 1);
+ this.setData({ is_b_now: t.is_bnow == undefined ? 0 : t.is_bnow, });
+ th.data.param = t;
+ //清理一下,确保最新的系统配置
+ 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) {
+ }
+ });
+ if (!getApp().globalData.userInfo) {
+ getApp().goto("/packageE/pages/togoin/togoin");
+ }
+
+ getApp().getConfig2(function (e) {
+ th.setData({
+ bconfig: e
+ });
+ }, 1);
+
+ //判断是不是佣金抵扣
+ getApp().is_distribut(this);
+
+ },
+ onUnload: function () {
+ this.setData({ isclose: 1 })
+ },
+ onHide: function () {
+ this.setData({
+ isget_by_quan: {},
+ is_no_by: {},
+ is_by: {}
+ })
+ this.data.fir_in = 0;
+ },
+
+ //----------子页返回父页触发----------
+ onShow: function () {
+
+ this.data.paying = 0;
+
+ console.log('onshow-2222');
+
+ var th = this;
+ //判断是不是第一次进入
+ if (this.data.fir_in) {
+ this.data.fir_in = 0;
+ } else {
+
+ console.log('onshow-3333');
+ let o_list = "/pages/user/order_list/order_list";
+ if (this.data.is_fwk) {
+ o_list = '/pages/user/order_list/order_list?index=2&tabindex=1';
+ }
+ //-- 富友支付的 --
+ var fy = ut.fy_back(o_list, 1);
+ if (fy) return false;
+ util_pay.set_fir();
+ t_pay.set_fir();
+
+ //-- 通联的第三方支付的返回优化 --
+ ut.is_pay_ok(th.data.ok_order_sn, "back", "back", function () {
+
+ console.log('onshow-444');
+ console.log(th.data.ok_order_sn);
+
+ if (!th.data.ok_order_sn) return false;
+
+ let ord_url = '';
+ let ord_req = {};
+ //-- 如果是服务卡项的时候 --
+ if (th.data.is_fwk) {
+ ord_url = "/api/weshop/recharge/user/page";
+ ord_req = { store_id: os.stoid, order_sn: th.data.ok_order_sn, user_id: getApp().globalData.user_id };
} else {
+ ord_url = "/api/weshop/order/page";
+ ord_req = { store_id: os.stoid, parent_sn: th.data.ok_order_sn };
+ }
+
+ getApp().request.promiseGet(ord_url,
+ { data: ord_req }).then(res => {
+ if (ut.ajax_ok(res)) {
+
+ console.log('onshow-444');
+ console.log(res);
+
+ var item = res.data.data.pageData[0];
+ if (item.pay_status == 1) {
+ //支付支付,返回首页
+ ut.m_toast('支付成功');
+ setTimeout(() => {
+ wx.navigateBack();
+ }, 1000)
+
+ } else {
+ //支付支付,返回首页
+ ut.m_toast('支付失败');
+ setTimeout(() => {
+ wx.navigateBack();
+ }, 1000)
+ }
+ }
+ })
+ });
+
+ }
+
+
+
+ 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 });
+ th.setData({ add_back: 1, same_ok: 1 });
+ th.calculatePrice2();
+ } else {
+ th.setData({ user_addr: ie });
+ }
+ var going = 0;
+ });
- var o_condition1 = parseFloat(o_condition) - parseFloat(th.data.presell.presell_deposit);
- if (o_condition1 < 0) o_condition1 = 0;
-
- if(th.data.exp_type == 2) {
- var good = th.data.goods;
- //--------------开始计算物流------------------
- var shipping_price = 0;
- var lon = 0;
- var lat = 0;
- //-- 获取距离 --
- await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {
- is_json: 1, data: {address: th.data.user_addr.more_address + th.data.user_addr.address,store_id:os.stoid}
- }).then(res => {
- if (res.data.code == 0) {
- var data = JSON.parse(res.data.data);
- if (data.status == 0) {
- lon = data.result.location.lng;
- lat = data.result.location.lat;
- }
- }
- })
- var gd_w = good['weight'] * good['buynum'];
- //这个不是取尾款而是取总金额
- let order_amount = parseFloat(o_condition);
- // var o_condition1 = parseFloat(o_condition);
- if (order_amount < 0) order_amount = 0;
- //-- 获取距离 --
- var req_data = {
- store_id: os.stoid,
- order_amount: parseFloat(order_amount),
- lon: lon, lat: lat,
- pickup_id: bn_pick,
- goods_weight: gd_w,
- }
+ 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;
+ var is_same_city = json_d.is_same_city;
+
+ 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,
+ is_same_city: is_same_city,
+ sys_switch: json_d,
+ });
+
+ 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 is_next = 1;
- //获取同城配送参数
- await getApp().request.promisePost("/api/weshop/order/sameCityExp/getMoney", {
- is_json: 1,
- data: req_data
- }).then(res => {
- if (res.data.code == 0) {
- shipping_price = res.data.data;
- th.setData({
- sameCityExp_off:0,
- sameCityExp_info:''
- })
- } else {
- if (res.data.code==-2) { //未达到起送价
- th.setData({
- sameCityExp_off:2,
- sameCityExp_info:res.data.msg
- })
- }else{
- th.setData({
- sameCityExp_off:1,
- sameCityExp_info:res.data.msg
- })
- }
- is_next = 0;
- wx.showToast({
- title: res.data.msg, icon: 'none', duration: 2000
- })
- }
- })
- if (!is_next) {
-
- th.setData({show_submit: 1, disabled_btn: 1,same_ok: 0})
- return false
- }
- exp_price = parseFloat(shipping_price).toFixed(2);
- th.data.lon=lon;
- th.data.lat=lat;
- th.data.bn_gd_w=gd_w;
- th.data.bn_samecity_order_amount=req_data.order_amount;
+ 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];
+ }
- var the_price=parseFloat(o_condition1) + parseFloat(exp_price);
+ if (item == undefined) item = null;
+ if (!item) th.setData({ user_addr: null }); //地址为空的时候,要清空,因为返回的时候,有缓存
- if(the_price {
+ order = res.data.data.pageData[0];
+ })
+
+
+ ord = order.order_id;
+ } else {
+ //---获取订单---
+ await getApp().request.promiseGet("/api/weshop/order/get/" + oo.stoid + "/" + ord, {}).then(res => {
+ order = res.data.data;
+ });
+ }
+
+
+ //---获取订单从表---
+ await getApp().request.promiseGet("/api/weshop/ordergoods/page", {
+ data: {
+ store_id: oo.stoid,
+ order_id: ord
+ }
+ }).then(res => {
+ order_goods = res.data.data.pageData[0];
+ });
+
+ await getApp().request.promiseGet("/api/weshop/order/orderPresell/get/" + oo.stoid + "/" + order.order_id, {}).then(res => {
+ presell = res.data.data;
+ });
+
+ //等待定金
+ if (order.order_status < 2 && presell.deposit_pay_time <= 0) {
+ th.setData({ wait_dj: 1 })
+ }
+ //等待尾款
+ if (order.order_status < 2 && presell.deposit_pay_time > 0 && presell.tail_pay_state == 0 && presell.presell_type != 1) {
+ th.setData({ wait_wk: 1 })
+ wx.setNavigationBarTitle({ title: "支付尾款", })
+ }
+ //等待发货
+ if (order.pay_status == 1 && order.shipping_status == 0) {
+ th.setData({ wait_fh: 1 })
+ }
+
+ if (order.pay_status == 1 && order.shipping_status == 1 && order.order_status < 2) {
+ th.setData({ wait_sh: 1 })
+ }
+ //------获取预售主表----------
+ await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellForm/get/" + os.stoid + "/" + presell.prom_id, {}).then(res => {
+ if (res.data.code == 0 && res.data.data) {
+ act = res.data.data;
+
+ th.setData({
+ act: res.data.data,
+ });
+ }
+ })
+
+ //-- 判断一下会员的身份 --
+ if (order.pay_status == 0) {
+ var pre_data = { store_id: os.stoid, presell_id: presell.prom_id, timetype: 12, goods_id: order_goods.goods_id };
+ pre_data.user_id = order.user_id;
+ var isok = 1;
+ await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellList/page", {
+ data: pre_data,
+ }).then(e => {
+ if (e.data.code == 0 && e.data.data.pageData && e.data.data.pageData.length > 0) {
+ pre_arr = e.data.data.pageData[0];
+ } else {
+ isok = 0;
+ }
+ })
+
+ if (!isok) {
+ getApp().confirmBox("会员身份不符合");
+ return false;
+ }
- th.setData({ exp_price: exp_price, order_m:the_price.toFixed(2), show_submit: 1, })
+ if (th.data.wait_dj) {
+ if (act.is_end) {
+ getApp().confirmBox("活动已经结束");
+ return false;
+ }
+ if (!act.isuse) {
+ getApp().confirmBox("活动未启用");
+ return false;
+ }
+ if (th.data.act.end_time < ut.gettimestamp()) {
+ getApp().confirmBox("活动的定金时间已经结束", function () {
+ ut.wx_back();
+ });
+ return false;
}
- },
- //-- 获取时间差 --
- get_diff() {
+ }
+ if (th.data.wait_wk) {
+ if (th.data.act.pay_enddate < ut.gettimestamp()) {
+ getApp().confirmBox("活动的尾款时间已经结束", function () {
+ ut.wx_back();
+ });
+ return false;
+ }
+ }
+ }
+ else {
+ await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellList/list", {
+ data: { store_id: os.stoid, goods_id: order_goods.goods_id, presell_id: order_goods.prom_id }
+ }).then(re => {
+ if (re.data.code == 0 && re.data.data && re.data.data.length > 0) {
+ pre_arr = re.data.data[0];
+ }
+ })
- switch (this.data.act.presell_type) {
- //部分定金
+ if (!pre_arr) {
+ getApp().confirmBox("未找到商品");
+ return false;
+ }
+ }
+
+ //---获取商品---
+ await getApp().request.promiseGet("/api/weshop/goods/get/" + oo.stoid + "/" + order_goods.goods_id, {}).then(res => {
+ goods = res.data.data;
+ order.market_price = goods.market_price;
+ order.show_img = oo.imghost + goods.original_img;
+ });
+
+ //-- 如果商品有同城配送的参数的时候,一件代发商品不能显示同城配送按钮 --
+ if (goods.is_same_city && th.data.is_same_city && goods.whsle_id <= 0) {
+
+ await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + order.pickup_id, {}).then(res => {
+ if (res.data.code == 0) {
+ var pk = res.data.data;
+ if (pk && pk.is_same_city) {
+ th.setData({ show_same_city: 1 })
+ }
+ }
+
+ })
+
+ }
+
+ //如果有开启佣金抵扣,同时会员是分销商的时候
+ if (getApp().globalData.userInfo.is_distribut
+ && th.data.dis_config && th.data.dis_config.is_yongjin_dk) {
+ var fir_num = 0;
+ var sec_num = 0;
+ var thi_num = 0;
+ if (th.data.dis_config.pattern == 1) {
+ fir_num = (goods.fir_rate || 0) * order_goods.goods_num;
+ sec_num = (goods.sec_rate || 0) * order_goods.goods_num;
+ thi_num = (goods.thi_rate || 0) * order_goods.goods_num;
+ } else {
+ fir_num = parseFloat((goods.commission || 0) * order_goods.goods_num * (th.data.dis_config.firstRate || 0) / 100).toFixed(2);
+ sec_num = parseFloat((goods.commission || 0) * order_goods.goods_num * (th.data.dis_config.secondRate || 0) / 100).toFixed(2);
+ thi_num = parseFloat((goods.commission || 0) * order_goods.goods_num * (th.data.dis_config.thirdRate || 0) / 100).toFixed(2);
+ }
+ var c_num = getApp().get_commission(fir_num, sec_num, thi_num, th);
+ goods.use_commission = c_num;
+ }
+
+
+ var g_url = "/packageC/pages/presell/goodsInfo/goodsInfo?goods_id=" + order_goods.goods_id + "&pre_id=" + pre_arr.id;
+ if (act.is_end || th.data.act.end_time < ut.gettimestamp()) {
+
+ if (goods.prom_type == 8 && goods.prom_id == act.id) {
+ g_url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + order_goods.goods_id;
+ getApp().request.put("/api/weshop/goods/update",
+ {
+ data: { goods_id: order_goods.goods_id, store_id: os.stoid, prom_id: 0, prom_type: 0 },
+ success: function (e) { }
+ });
+ } else {
+ g_url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + order_goods.goods_id;
+ if (goods.prom_type == 8) {
+ g_url = "/packageC/pages/presell/goodsInfo/goodsInfo?goods_id=" + order_goods.goods_id + "&prom_id=" + goods.prom_id;
+ }
+
+ }
+
+ }
+
+
+ //判断使用优惠券的接口需要
+ th.data.check_quan_ware_list = goods.erpwareid;
+ //---获取门店---
+ await getApp().request.promiseGet("/api/weshop/pickup/get/" + oo.stoid + "/" + order.pickup_id, {}).then(res => {
+ pickup = res.data.data;
+ });
+
+ order['is_all_return'] = 0;
+ //------------对比一下有没有退款记录------------
+ await getApp().request.promiseGet("/api/weshop/order/returngoods/page", {
+ data: {
+ order_id: order.order_id, store_id: oo.stoid,
+ user_id: order.user_id, pageSize: 200
+ }
+ }).then(rss => {
+ var ttd = rss;
+ //----没有相关的退款记录----
+ if (ttd.data.data.total == 0) {
+ order['is_all_return'] = 0;
+ } else {
+ var eea = ttd.data.data.pageData[0];
+ //1.退款正在进行中,
+ //2.退款被拒绝就要显示可以退款
+ //3.退款已经完成
+ order['is_all_return'] = 1;
+ order['is_all_return_status'] = ttd.data.data.pageData[0].status;
+
+ if (order['order_status'] == 1 && order['pay_status'] == 1) {
+ switch (eea.status) {
case 0:
- if (this.data.act.pay_begindate > ut.gettimestamp()) {
- this.setData({ no_start: 1 })
- } else if (this.data.act.pay_enddate < ut.gettimestamp()) {
- this.setData({ is_end: 1 })
- } else {
- var end_time = this.data.act.pay_enddate;
- var e_str = ut.formatTime(end_time);
- var new_date = new Date(); //新建一个日期对象,默认现在的时间
- var old_date = new Date(e_str.replace(/-/g, '/')); //设置过去的一个时间点,"yyyy-MM-dd HH:mm:ss"格式化日期
- var difftime =Math.abs((new_date - old_date) / 1000); //计算时间差,并把毫秒转换成秒
- var days = parseInt(difftime / 86400); // 天 24*60*60*1000
- var hours = parseInt(difftime / 3600) - 24 * days; // 小时 60*60 总小时数-过去的小时数=现在的小时数
- var minutes = parseInt(difftime % 3600 / 60); // 分钟 -(day*24) 以60秒为一整份 取余 剩下秒数 秒数/60 就是分钟数
- var seconds = parseInt(difftime % 60); // 以60秒为一整份 取余 剩下秒数
- this.setData({ days: days, hours: hours, minutes: minutes, seconds: seconds })
- }
- break;
- //全额付款
case 1:
- if (this.data.act.start_time > ut.gettimestamp()) {
- this.setData({ no_start: 1 })
- } else if (this.data.act.end_time < ut.gettimestamp()) {
- this.setData({ is_end: 1 })
- } else {
- var end_time = this.data.act.end_time;
- var e_str = ut.formatTime(end_time);
- var new_date = new Date(); //新建一个日期对象,默认现在的时间
- var old_date = new Date(e_str.replace(/-/g, '/')); //设置过去的一个时间点,"yyyy-MM-dd HH:mm:ss"格式化日期
- var difftime =Math.abs((new_date - old_date) / 1000); //计算时间差,并把毫秒转换成秒
- var days = parseInt(difftime / 86400); // 天 24*60*60*1000
- var hours = parseInt(difftime / 3600) - 24 * days; // 小时 60*60 总小时数-过去的小时数=现在的小时数
- var minutes = parseInt(difftime % 3600 / 60); // 分钟 -(day*24) 以60秒为一整份 取余 剩下秒数 秒数/60 就是分钟数
- var seconds = parseInt(difftime % 60); // 以60秒为一整份 取余 剩下秒数
- this.setData({ days: days, hours: hours, minutes: minutes, seconds: seconds })
- }
- break;
-
+ order.order_status_detail = "退款中";
+ order['return_btn'] = 2; break;
+ case 2:
+ order.order_status_detail = "退款完成";
+ order['return_btn'] = 4; break;
+ case 3:
+ order['return_btn'] = 3; break;
+ default:
+ order['return_btn'] = 0;
+ }
}
- },
+ }
+ })
+ var price = presell.presell_price;
+ if (!goods) return false;
- //显示支付选择
- show_pay: function () {
+ if (goods.is_minishop == 1 && getApp().is_sp_hao()) {
- //-- 服务卡项没有余额支付 --
- if(this.data.is_fwk){
- this.to_pay_type(0);
- return false;
- }
+ if (goods.distr_type == 1 || pickup.distr_type == 1) {
+ wx.showToast({
+ title: "视频号仅支持物流",
+ icon: 'none',
+ duration: 2000
+ })
- //不用钱直接支付
- if (this.data.order_m <= 0) {
- this.to_pay_type(1);
+ setTimeout(function () {
+ wx.navigateBack({ delta: 1 })
+ }, 1000)
+
+ return false
+ }
+
+ goods.distr_type = 2;
+ th.setData({ show_same_city: 0 })
+
+ }
+
+ //--判断物流--
+ if (goods.distr_type)
+ distr_type = goods.distr_type;
+ else
+ distr_type = pickup.distr_type;
+
+ switch (distr_type) {
+ case 0:
+ exp_type = 1;
+ //-- 系统后台有设置要默认的 --
+ if (th.data.sys_switch.pickupway && th.data.sys_switch.pickupway == 1) exp_type = 0;
+ break; //自选
+ case 1:
+ exp_type = 1;
+
+ break //自提
+ case 2:
+ exp_type = 0;
+ break; //物流
+ }
+
+
+ if (th.data.show_same_city == 1 && th.data.sys_switch.pickupway && th.data.sys_switch.pickupway == 2) {
+ exp_type = 2;
+ }
+
+ if (th.data.exp_type) {
+ exp_type = th.data.exp_type
+ }
+
+
+ //等待发货的时候
+ if (th.data.wait_fh) {
+ var send_time = th.data.act.delivery_date;
+ if (th.data.act.delivery_type == 2) {
+ send_time = ut.gettimestamp() + th.data.act.delivery_daynum * 3600 * 24;
+ }
+ }
+
+ order.order_goods = order_goods;
+ var tail_pay = pre_arr.presell_price * order_goods.goods_num - presell.presell_deposit;
+ this.setData({
+ order: order,
+ distr_type: distr_type,
+ pickup: pickup,
+ exp_type: exp_type,
+ goods: goods,
+ presell: presell,
+ pre_arr: pre_arr,
+ userInfo: getApp().globalData.userInfo,
+ tail_pay: tail_pay,
+ order_goods: order_goods,
+ all_price: pre_arr.presell_price * order_goods.goods_num,
+ pickup_id: pickup.pickup_id,
+ send_time: send_time,
+ g_url: g_url
+ });
+ th.get_diff();
+ //如果可以
+ if (th.data.act.is_usecoupon) {
+ await th.get_buy_now_quan();
+ }
+ //统一进行计算金额
+ th.calculatePrice2();
+
+ },
+
+
+ //-- 服务卡项购买的时候 --
+ async get_buy_card(o_sn, ord) {
+
+ let order = null,
+ order_goods = null,
+ goods = null,
+ pickup = null,
+ distr_type = 0,
+ exp_type = 0,
+ presell = null, //订单从表
+ pre_arr = null, //订单内容
+ act = null, //订单内容
+ th = this;
+
+ let url = '/api/weshop/recharge/user/page'
+ let data = {
+ store_id: os.stoid,
+ user_id: getApp().globalData.user_id,
+ order_sn: o_sn,
+ };
+
+ if (!o_sn) {
+ delete data.order_sn;
+ data.order_id = ord;
+ }
+
+
+
+ // 请求数据
+ let res = await app.promiseGet(url, {
+ data: data,
+ });
+
+ if (!ut.ajax_ok(res)) {
+ getApp().confirmBox("未找到订单");
+ return false;
+ }
+
+ order = res.data.data.pageData[0];
+ //---获取订单从表---
+ await getApp().request.promiseGet("/api/weshop/rechargeServicelist/page", {
+ data: {
+ store_id: os.stoid,
+ order_id: order.order_id
+ }
+ }).then(res => {
+ order_goods = res.data.data.pageData[0];
+ });
+
+ order_goods.goods_num = order_goods.qty;
+
+ await getApp().request.promiseGet("/api/weshop/recharge/rechargePresell/get/" + oo.stoid + "/" + order.order_id, {}).then(res => {
+ presell = res.data.data;
+ });
+
+ //等待定金
+ if (order.order_status < 2 && presell.deposit_pay_time <= 0) {
+ th.setData({ wait_dj: 1 })
+ }
+ //等待尾款
+ if (order.order_status < 2 && presell.deposit_pay_time > 0 && presell.tail_pay_state == 0 && presell.presell_type != 1) {
+ th.setData({ wait_wk: 1 })
+ wx.setNavigationBarTitle({ title: "支付尾款", })
+ }
+ //等待发货
+ if (order.pay_status == 1 && order.shipping_status == 0) {
+ th.setData({ wait_fh: 1 })
+ }
+
+ if (order.pay_status == 1 && order.shipping_status == 1 && order.order_status < 2) {
+ th.setData({ wait_sh: 1 })
+ }
+ //------获取预售主表----------
+ await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellForm/get/" + os.stoid + "/" + presell.prom_id, {}).then(res => {
+ if (res.data.code == 0 && res.data.data) {
+ act = res.data.data;
+ th.setData({
+ act: res.data.data,
+ });
+ }
+ })
+
+ //-- 判断一下会员的身份 --
+ if (order.pay_status == 0) {
+ var pre_data = { store_id: os.stoid, presell_id: presell.prom_id, timetype: 12, goods_id: order_goods.card_id };
+ pre_data.user_id = order.user_id;
+ var isok = 1;
+ await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellList/page", {
+ data: pre_data,
+ }).then(e => {
+ if (e.data.code == 0 && e.data.data.pageData && e.data.data.pageData.length > 0) {
+ pre_arr = e.data.data.pageData[0];
} else {
- this.setData({ show_pay_type: 1 });
- }
-
- },
- //关闭支付
- close_show_pay: function () {
- this.setData({ show_pay_type: 0 });
- },
- //--弹起支付框--
- to_pay() {
- //--物流支付时要有地址--
- if (this.data.exp_type == 0 && this.data.user_addr == null) {
- return getApp().my_warnning("请选择收货地址", 0, this);
- }
-
- this.setData({ show_pay_type: 1 });
- },
- //选择支付方式
- set_pay_type: function (e) {
- if(this.data.paying) return false;
- this.data.paying=1;
- var type = e.currentTarget.dataset.type;
- this.to_pay_type(type);
- },
-
- //--立即支付--
- to_pay_type: function (ind) {
- var th = this;
- //--物流支付时要有地址--
- //if (th.data.exp_type == 0 && th.data.user_addr == null) {
- if(getApp().is_no_addr(th,th.data.exp_type)){
- this.data.paying=0;
- return getApp().my_warnning("请选择收货地址", 0, th);
- }
- th.data.exp_type=parseInt(th.data.exp_type+'');
- //---支付参数--
- var dd = {
- order_sn: th.data.order.order_sn,
- order_id: th.data.order.order_id,
- store_id: oo.stoid,
- exp_type: th.data.exp_type,
- user_id: getApp().globalData.userInfo.user_id,
- prom_id: th.data.pre_arr.presell_id,
- tail_pay_type: ind,//0微信支付 1余额支付
- };
+ isok = 0;
+ }
+ })
+ if (!isok) {
+ getApp().confirmBox("会员身份不符合");
+ return false;
+ }
- //尾款支付的网址
- var wk_url=oo.url + '/api/weshop/order/pay/payPresellWk';
- if(!th.data.is_fwk){
- if (th.data.exp_type == 0 || th.data.exp_type==2 ) {
- var index = th.data.index;
- dd.shipping_code = th.data.wu_arr[index].code;
- dd.shipping_name = th.data.wu_arr[index].name;
- dd.shipping_price = parseFloat(th.data.exp_price);
- dd.addressid = th.data.user_addr.address_id;
- }
- }else{
- delete dd.exp_type;
- wk_url=oo.url + '/api/weshop/order/pay/payPresellWkCard';
+ if (th.data.wait_dj) {
+ if (act.is_end) {
+ getApp().confirmBox("活动已经结束");
+ return false;
}
-
- if(dd.exp_type==2){
- dd.lon=th.data.lon?th.data.lon:0;
- dd.lat=th.data.lat?th.data.lat:0;
- dd.goods_weight=th.data.bn_gd_w;
- dd.samecity_order_amount=th.data.bn_samecity_order_amount;
+ if (!act.isuse) {
+ getApp().confirmBox("活动未启用");
+ return false;
+ }
+ if (th.data.act.end_time < ut.gettimestamp()) {
+ getApp().confirmBox("活动的定金时间已经结束", function () {
+ ut.wx_back();
+ });
+ return false;
}
- if (th.data.order_prom_amount > 0) {
- var e = {
- order_prom_id: th.data.order_prom_id,
- order_prom_amount: th.data.order_prom_amount,
- }
- dd.order_prom_list = e;
- }
-
- if(th.data.bn_use_commission){
- dd.use_commission =th.data.goods.use_commission;
- }
-
-
- var bn_pick = th.data.pickup_id;
- var quan_no = '';
- 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) {
- dd.coupon_no = quan_no;
- if (th.data.quan_price) dd.coupon_price = th.data.quan_price;
- }
- if (th.data.user_note) {
- dd.user_note = th.data.user_note;
- }
- dd.order_amount = parseFloat(th.data.order_m).toFixed(2);
-
- if(getApp().globalData.scene)
- dd.scene=getApp().globalData.scene;
-
- console.log(JSON.stringify(dd));
- wx.request({
- url: wk_url,
- data: JSON.stringify(dd),
- method: 'POST',
- header: {
- 'content-type': 'application/json'
- },// 设置请求的 header
- success: function (t) {
- th.close_show_pay();
-
- //---用微信支付---
- if (dd.tail_pay_type == 0) {
-
- if(t.data.code!=0){
- getApp().my_warnning(t.data.msg, 1, th);
- th.data.paying=0;
- return false;
- }
-
- //-- 订单OK --
- th.data.ok_order_sn=th.data.order.order_sn;
-
- util_pay.pay_data(t,function (){
- //---用余额支付---
- getApp().my_warnning("支付成功", 1, th);
- var send_time = th.data.pre_arr.delivery_date;
- if (th.data.pre_arr.delivery_type == 2) {
- send_time = ut.gettimestamp() +th.data.pre_arr.delivery_daynum * 3600*24;
- }
- th.setData({ isclose: 0, 'order.order_status': 1, 'order.pay_status': 1, 'wait_wk': 0, 'presell.tail_pay_state': 1, 'wait_fh': 1, send_time: send_time });
- th.data.paying=0;
-
- },function (e){
- th.data.paying=0;
- wx.showToast({
- title:e,
- icon: 'none',
- duration: 2500
- })
- })
- // var n = t.data.data;
- // th.weixinPay(n,
- // function () {
- // //---用余额支付---
- // getApp().my_warnning("支付成功", 1, th);
- // var send_time = th.data.pre_arr.delivery_date;
- // if (th.data.pre_arr.delivery_type == 2) {
- // send_time = th.data.pre_arr.delivery_daynum * 3600;
- // }
- // th.setData({ isclose: 0, 'order.order_status': 1, 'order.pay_status': 1, 'wait_wk': 0, 'presell.tail_pay_state': 1, 'wait_fh': 1, send_time: send_time });
- // th.data.paying=0;
- //
- // }, function () {
- // this.data.paying=0;
- // getApp().my_warnning("支付失败", 0, th);
- // })
- } else {
- if (t.data.code == 0) {
- var send_time = th.data.pre_arr.delivery_date;
- if (th.data.pre_arr.delivery_type == 2) {
- send_time = ut.gettimestamp() +th.data.pre_arr.delivery_daynum * 3600*24;
- }
- //---用余额支付---
- getApp().my_warnning("支付成功", 1, th);
- th.setData({ isclose: 0, 'order.order_status': 1, 'order.pay_status': 1, 'wait_wk': 0, 'presell.tail_pay_state': 1, 'wait_fh': 1, send_time: send_time });
-
- } else {
- getApp().my_warnning(t.data.msg, 1, th);
- }
- th.data.paying=0;
- }
- }
- });
- },
-
- //------调起支付框--------
- weixinPay: function (n, success, fail) {
- if (!n) return false;
- var th = this;
-
- getApp().globalData.no_clear=1;
-
- wx.requestPayment({
- timeStamp: String(n.timeStamp),
- nonceStr: n.nonceStr,
- package: n.packageValue,
- signType: n.signType,
- paySign: n.paySign,
- success: function (n) {
- console.log(n), getApp().showSuccess("支付成功!");
- "function" == typeof success && success();
- },
- fail: function (n) {
- console.log(n), "requestPayment:fail" == n.errMsg ? getApp().my_warnning("支付失败", 0, th) : "requestPayment:fail cancel" == n.errMsg ? getApp().my_warnning("您已取消支付", 0, th) : getApp().my_warnning("支付失败:" + n.errMsg.substr("requestPayment:fail ".length), 0, th),
- "function" == typeof fail && fail();
- }
- });
- },
-
-
- show_liuyan: function () {
- this.setData({ sh_liuyan: true })
- },
- close_liuyan() {
- this.setData({ sh_liuyan: false })
- },
-
- //--------点击选择----------
- set_wuliu: function (e) {
- var type = e.currentTarget.dataset.type;
- this.setData({
- exp_type: type,
- same_ok:1,
- sameCityExp_off:0,
- sameCityExp_info:'',
- });
- this.calculatePrice2();
- },
-
- //--------立即支付----------
- async jumpToCart4(e) {
- var th = this;
- if (this.data.optionIsGoup)
- wx.navigateTo({
- url: "/pages/team/team_confirm/team_confirm?orderSn=" + this.data.order.order_sn + "&orderPay=true"
- })
- var order = this.data.order;
- var order_goods = this.data.order_goods;
- var user_id = getApp().globalData.userInfo.user_id;
-
- var wlist = "";
-
- var good = order_goods;
- //线下取价功能已经关闭或者过期
- if (!th.data.is_open_offline && good.offline_cut > 0) {
- wx.showModal({
- title: '提示',
- content: '线下取价功能已经关闭或者过期!'
- });
- return false;
+ }
+ if (th.data.wait_wk) {
+ if (th.data.act.pay_enddate < ut.gettimestamp()) {
+ getApp().confirmBox("活动的尾款时间已经结束", function () {
+ ut.wx_back();
+ });
+ return false;
}
- //如果不是小程序有的功能,直接提示要去3.0处理
- if (good.prom_type == 2) {
- wx.showModal({
- title: '提示',
- content: '小程序还未有该活动,请到3.0公众号支付'
- });
- return false;
+ }
+ }
+ else {
+ await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellList/list", {
+ data: { store_id: os.stoid, goods_id: order_goods.card_id, presell_id: order_goods.prom_id }
+ }).then(re => {
+ if (re.data.code == 0 && re.data.data && re.data.data.length > 0) {
+ pre_arr = re.data.data[0];
}
+ })
- //要每件每件的商品进行检查,看有么有超出库存,超出限购
- var goodsbuynum = 0, promgoodsbuynum = 0, gg = null;
- //获取单品的现在的活动状态
- await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + good.goods_id, {
- }).then(res => {
- gg = res.data.data;
- })
- var limit = gg.viplimited;
- var store_count = gg.store_count;
- good.erpwareid = gg.erpwareid;
-
- //---要获得商品,该用户买了多少件,同步应用---
- await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
- data: {
- store_id: os.stoid,
- user_id: getApp().globalData.user_id,
- goods_id: good.goods_id,
- prom_type: good.prom_type,
- prom_id: good.prom_id,
- isnew:1
- },
+ if (!pre_arr) {
+ getApp().confirmBox("未找到商品");
+ return false;
+ }
+ }
+
+ //---获取商品---
+ await getApp().request.promiseGet("/api/weshop/serviceCard/get/" + oo.stoid + "/" + order_goods.card_id, {}).then(res => {
+ goods = res.data.data;
+ order.market_price = goods.show_price;
+ order.show_img = oo.imghost + goods.imgUrl;
+ goods.original_img = goods.imgUrl;
+ goods.goods_name = goods.serviceName;
+ });
+
+ var g_url = "/packageC/pages/presell/cardInfo/goodsInfo?goods_id=" + order_goods.card_id + "&pre_id=" + pre_arr.id;
+ if (act.is_end || th.data.act.end_time < ut.gettimestamp()) {
+ g_url = "/packageA/pages/goods/goodsInfo/goodsInfo?goods_id=" + order_goods.card_id;
+ }
+
+ //---获取门店---
+ await getApp().request.promiseGet("/api/weshop/pickup/get/" + oo.stoid + "/" + order_goods.pickup_id, {}).then(res => {
+ pickup = res.data.data;
+ });
+
+ order['is_all_return'] = 0;
+ var price = presell.presell_price;
+ if (!goods) return false;
+
+
+ //等待发货的时候
+ if (th.data.wait_fh) {
+ var send_time = th.data.act.delivery_date;
+ if (th.data.act.delivery_type == 2) {
+ send_time = ut.gettimestamp() + th.data.act.delivery_daynum * 3600 * 24;
+ }
+ }
+
+ order.order_goods = order_goods;
+ var tail_pay = pre_arr.presell_price * order_goods.goods_num - presell.presell_deposit;
+ this.setData({
+ order: order,
+ pickup: pickup,
+ goods: goods,
+ presell: presell,
+ pre_arr: pre_arr,
+ userInfo: getApp().globalData.userInfo,
+ tail_pay: tail_pay,
+ order_goods: order_goods,
+ all_price: pre_arr.presell_price * order_goods.goods_num,
+ pickup_id: pickup.pickup_id,
+ send_time: send_time,
+ g_url: g_url
+ });
+ th.get_diff();
+ //统一进行计算金额
+ th.calculatePrice2();
+ },
+
+ async calculatePrice2() {
+ var th = this;
+ if (!this.data.pre_arr) return false;
+ th.setData({ show_submit: 0, disabled_btn: 0 })
+
+ //--计算物流--
+ if (this.data.exp_type == 0) {
+ await this.calculate_wuliu();
+ } else if (this.data.exp_type == 2) {
+ await this.calculate_same_city();
+ } else {
+ var allpice = this.data.pre_arr.presell_price * this.data.order_goods.goods_num;
+ allpice = allpice.toFixed(2);
+ //--看一下有没有订单优惠--
+ var o_condition = parseFloat(allpice);
+ //---如果有选择优惠券的情况下---
+ var quan_price = 0, bn_pick = th.data.pickup.pickup_id;
+ 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 && 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 => {
- var buy_num_data = res.data.data;
- if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
- goodsbuynum = buy_num_data.goodsbuynum;
+ if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
+ quan_price = res.data.data[0].WareCashSum;
+ }
})
-
- var buyed_mum2 = goodsbuynum + good.goods_num;
- if (buyed_mum2 > limit && limit > 0) {
-
- var content = gg.goods_name + '购买数量超出商品限购,请取消订单';
- th.toast(content);
- return false;
+ } else {
+ th.setData({ quan_price: 0 });
+ if (th.data.using_quan && th.data.using_quan[bn_pick] && th.data.using_quan[bn_pick].isby == 1) {
+ var txt = "using_quan[" + bn_pick + "]";
+ th.setData({ [txt]: {} });
}
+ }
-
- //如果是预售的时候,
- if (good.prom_type == 8) {
- await getApp().request.promiseGet("/api/weshop/order/orderPresell/countBuyGoodsSum", {
- data: { store_id: os.stoid, user_id: user_id, goods_id: good.goods_id, prom_id: good.prom_id },
- }).then(e => {
- if (e.data.code == 0) {
- promgoodsbuynum = e.data.data.sumgoodsnum;
- }
+ if (quan_price > 0) {
+ if (quan_price < th.data.tail_pay) th.setData({ quan_price: quan_price })
+ else {
+ th.setData({ quan_price: th.data.tail_pay })
+ }
+ o_condition = o_condition - quan_price;
+
+ } else {
+ th.setData({ quan_price: 0 })
+ }
+ if (o_condition < 0) o_condition = 0;
+
+ //如果同意参与订单优惠
+ if (o_condition > 0 && this.data.pre_arr.is_useorderyh) {
+ th.check_is_order_prom(o_condition, function (ord_price) {
+ var bn_pick = th.data.pickup.pickup_id
+ var order_prom_amount = 0;
+ var order_prom_id = 0;
+ var o_condition1 = 0;
+ if (th.data.order_prom[bn_pick]) {
+ var ord_prom = th.data.order_prom[bn_pick];
+ if (!ord_prom.is_xz_yh || quan_price <= 0) {
+ order_prom_id = ord_prom['id'];
+ switch (ord_prom['type']) {
+ case 0:
+ var all_1 = o_condition;
+ o_condition1 = Math.round(ord_price * ord_prom['expression']) / 100;//满额打折
+ order_prom_amount = (all_1 - o_condition1).toFixed(2);
+ break;
+ case 1:
+
+ var bs = 1;
+ if (ord_prom.is_bz) {
+ bs = Math.floor(o_condition / ord_prom.money);
+ }
+
+ o_condition1 = ord_price - bs * ord_prom['expression'];//满额优惠金额
+ order_prom_amount = bs * ord_prom['expression'];
+ break;
+ }
+ }
+ }
+ //--订单优惠的显示--
+ var order_prom_txt1 = "order_prom_id";
+ var order_prom_txt2 = "order_prom_amount";
+ if (order_prom_id > 0) {
+ th.setData({ [order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount })
+ } else {
+ o_condition1 = ord_price;
+ th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 0 })
+ }
+
+ o_condition1 = parseFloat(o_condition1) - parseFloat(th.data.presell.presell_deposit);
+
+ if (o_condition1 < 0) o_condition1 = 0;
+ else if (o_condition1 > th.data.goods.use_commission && th.data.bn_use_commission) {
+ o_condition1 -= th.data.goods.use_commission;
+ }
+
+ th.setData({ exp_price: 0, order_m: o_condition1, show_submit: 1, })
+ })
+ } else {
+ o_condition = parseFloat(o_condition) - parseFloat(th.data.presell.presell_deposit);
+ if (o_condition < 0) o_condition = 0;
+ //if (o_condition1 < 0) o_condition1 = 0;
+ else if (o_condition > th.data.goods.use_commission && th.data.bn_use_commission) {
+ o_condition -= th.data.goods.use_commission;
+ }
+
+ th.setData({ exp_price: 0, order_m: o_condition, show_submit: 1, })
+ }
+ //调用默认优惠券方法
+ th.def_coupon_fn()
+ }
+
+ },
+
+ //---------------检查是否有收货地址-------------------
+ 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) {
+ this.setData({
+ maxWord: t.detail.value.length,
+ user_note: 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 });
+ }
+ },
+ 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 () {
+ if (!this.data.wait_wk) return false;
+
+ getApp().globalData.is_cart_old = 1;
+ this.data.isget_by_quan = {};
+ this.data.enterAddressPage = !0, wx.navigateTo({
+ url: "/packageF/pages/user/address_list/address_list"
+ });
+ },
+
+ //--------立即购买时,选择自提和物流----------
+ 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[bn_pick] && th.data.using_quan[bn_pick].isby == 1) {
+ th.setData({ using_quan: {} });
+ }
+ }
+
+ //判断有没有默认的物流地址值
+ if (def_exp_code != "" && def_exp_code != null && def_exp_code != undefined && !th.data.is_default_logistics) {
+ 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();
+ },
+ //-----------------计算物流-------------
+ calculatewuliu: function (code, o_shipping_price, goods_weight, out_of_weight,
+ goods_piece, user_addr, freight_free, o_price, rs, pickid) {
+ var price = 0, th = this;
+ price += parseFloat(o_shipping_price);
+ //如果是包邮
+ if (freight_free > 0 && o_price >= freight_free && out_of_weight >= 0) {
+ 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 (out_of_weight < 0 && o_price >= freight_free && !th.data.is_no_by[pickid]) {
+ fw_price = parseFloat(item['money']);
+ var out_of_weight = Math.abs(out_of_weight);
+ if (out_of_weight > item['first_weight']) {
+ var fw = out_of_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();
+ },
+ /*----券的所有操作----*/
+ 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 });
+ }
+
+ 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_befor: function (e) {
+ var th = this;
+ var ind = 0;
+ var quan_item = this.data.selected_quan_list[ind];
+ var pickid = this.data.pickup.pickup_id; //现在选择的是哪一个门店
+
+ var 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;
+
+ //---如果是不使用优惠券---
+ // if (no_use == 1) {
+ // if (using_quan[pickid]) {
+ // using_quan[pickid].is_nouse_red = 1;
+ // }
+ // else {
+ // using_quan[pickid] = { 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[pickid]) {
+ using_quan[pickid].is_nouse_red = 0;
+ }
+ else {
+ using_quan[pickid] = { is_nouse_red: 0 };
+ }
+ this.setData({ using_quan: using_quan });
+ return true
+ },
+ /*--点击选择券--*/
+ sele_quan_item: function (e) {
+ var th = this;
+ var ind = e.currentTarget.dataset.ind;
+ var quan_item = this.data.selected_quan_list[ind];
+ var pickid = this.data.pickup.pickup_id; //现在选择的是哪一个门店
+
+ 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;
+
+ //---如果是不使用优惠券---
+ if (no_use == 1) {
+ if (using_quan[pickid]) {
+ using_quan[pickid].is_nouse_red = 1;
+ }
+ else {
+ using_quan[pickid] = { 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[pickid]) {
+ using_quan[pickid].is_nouse_red = 0;
+ }
+ else {
+ using_quan[pickid] = { is_nouse_red: 0 };
+ }
+ this.setData({ using_quan: using_quan });
+
+ },
+ /*----- 点击选择包邮券 -----*/
+ sele_quan_item_by_befor: 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 = 0;
+ //--如果是立即购买的部分--
+ var txt = "";
+ var txt1 = "";
+ var quan_item = null;
+
+ 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);
+
+
+ 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;
+
+ 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);
+
+
+ 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.pickup.pickup_id; //选中的门店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; //购物车购买的包邮券列表
+
+ //循环普通的券
+ 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.calculatePrice2();
+ th.setData({ open_quan: 0 });
+ th.setData({ using_quan: using_quan });
+ }
+ }
+
+
+
+ },
+ //--确认使用券---
+ confirm_quan_befor: async function () {
+ var using_quan = this.data.using_quan; //正在使用中的券列表
+ var pickid = this.data.pickup.pickup_id; //选中的门店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; //购物车购买的包邮券列表
+
+ //循环普通的券
+ 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, 0, false);
+ 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, false);
+ 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, false);
+ return;
+ }
+ }
+
+ //选择了的券,看是不是点击了不使用券,点击了不使用优惠券
+ if (using_quan[pickid]) {
+ if (using_quan[pickid].is_nouse_red == 1) {
+ using_quan[pickid] = { is_nouse_red: 1 };
+ th.calculatePrice2();
+ th.setData({ open_quan: 0 });
+ th.setData({ using_quan: using_quan });
+ }
+ }
+
+
+
+ },
+ //默认选择优惠券
+ def_coupon_fn() {
+ // setTimeout(() => {
+ // this.def_coupon_fn_aft()
+ // }, 100);
+ try {
+ setTimeout(() => {
+ this.def_coupon_fn_aft()
+ }, 1000);
+ } catch (error) { }
+
+ },
+ //默认选择优惠券
+ def_coupon_fn_aft() {
+ console.error('进入默认优惠券选择');
+ let th = this;
+ let first_entry = th.data.first_entry;
+ console.error(first_entry);
+ if (first_entry > 0) {
+ return
+ }
+ first_entry += 1;
+ th.setData({
+ first_entry
+ })
+ let length1 = th.data.def_coupon1 ? th.data.def_coupon1.length : 0
+ let length2 = th.data.def_coupon2 ? th.data.def_coupon2.length : 0
+ let length3 = th.data.def_coupon3 ? th.data.def_coupon3.length : 0
+ let length4 = th.data.def_coupon4 ? th.data.def_coupon4.length : 0
+ // let length = length1 + length2 + length3 + length4
+ let length = length1 + length2
+ if (th.data.exp_type==0) {
+ length+= length3 + length4
+ }
+ console.error(length);
+ if (length != 1) {
+ return
+ }
+ if (length1 == 1) {
+ console.error('优惠券1');
+ let first_entry = th.data.first_entry;
+ let quan_list = th.data.def_coupon1
+ if (quan_list && quan_list.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ th.setData({
+ sele_cart_ind: 0,
+ sele_exp_type: th.data.cartlist[0].exp_type,
+ selected_quan_pick: th.data.cartlist[0].pickup_id,
+ selected_quan_list: th.data.cartlist[0].quan_list,
+ // first_entry
+ })
+ let quan_off = th.sele_quan_item_befor();
+ if (quan_off) {
+ th.confirm_quan_befor()
+ }
+ }
+ }
+ if (length2 == 1) {
+ console.error('优惠券2');
+ let first_entry = th.data.first_entry;
+ let quanlist = th.data.def_coupon2
+ if (quanlist && quanlist.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ th.setData({
+ selected_quan_pick: th.data.bn_pick,
+ // first_entry
+ })
+ let quan_off = th.sele_quan_item_befor();
+ if (quan_off) {
+ th.confirm_quan_befor()
+ }
+
+ }
+ }
+ if (length3 == 1 && th.data.exp_type==0) {
+ console.error('优惠券3');
+ let first_entry = th.data.first_entry;
+ let quanlist = th.data.def_coupon3
+ if (quanlist && quanlist.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ th.setData({
+ selected_quan_pick: th.data.bn_pick,
+ // first_entry
+ })
+
+ th.sele_quan_item_by_befor();
+ th.confirm_quan_befor()
+
+ }
+ }
+
+ },
+ //----把券插入之后的操作,同时还要重新计算价格----
+ insert_into_using_quan: function (item, using_quan, pickid, isby, showToast = true) {
+ 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 });
+ this.calculatePrice2();
+ },
+
+ //点击打开优惠券使用说明
+ 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 });
+ //----计算此时购物车的价格----
+ th.calculatePrice2();
+
+ }
+ }
+ })
+ },
+
+ //更新下默认,在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);
+ if (th.data.is_default_logistics) return false;
+ 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 => {
+ console.error('优惠券1---------------------');
+ 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);
+ th.setData({
+ def_coupon1: quan_list
})
-
- var presell_id = good.prom_id;
- var presellList = null;
- var url = "/api/weshop/marketing/marketingPresellList/list"
- var rd = {
- store_id: os.stoid,
- presell_id: presell_id,
- goods_id: good.goods_id
+ }
+ })
+ }
+ }
+
+ //如果是搭配购的立即购买的时候
+ 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: async function () {
+ var quanlist = null, th = this, frozenQuan = null;
+ var allprice = this.data.pre_arr.presell_price * this.data.order_goods.goods_num;
+ th.data.ckeck_quan_price = allprice;
+
+ //--如果商家后台没有限制使用优惠券,同时商品的优惠活动没有限制使用优惠券--
+ if (th.data.is_close_quan != 1) {
+ var url0 = "/api/weshop/users/frozenQuan/listFrozenQuan/" + app.globalData.user_id;
+ var url = "/api/weshop/couponList/getUseCouponList";
+ await 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) {
+ console.error('优惠券2-------------------');
+ 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, def_coupon2: quanlist })
+ }
}
- //------获取预售从表----------
- await getApp().request.promiseGet(url, {
- data: rd
- }).then(res => {
- if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
- var arr = res.data.data[0];
- presellList = arr
- }
- })
+ }
+ })
+ })
+ }
+ },
+
+ //检查区域是不是包邮
+ 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.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;
+ },
+
+
+ //--检查订单优惠--
+ check_is_order_prom: function (condition, func, pick) {
+ var th = this;
+ pick = this.data.pickup.pickup_id;
+ //---获取订单优惠---
+ 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;
+
+ //如果订单促销的取价不是实收,清空订单促销
+ if (data && data.discount_field > 0) data = null;
+
+ th.data.order_prom[pick] = data;
+ } else {
+ th.data.order_prom[pick] = null;
+ }
+ func(condition);
+ })
+ },
+
+ //--- 加入优惠活动的映射中,同时要有一个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;
+ // out_of_weight = 0;
+ th.data.is_no_by[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;
+ // out_of_weight = 0;
+ th.data.is_no_by[bn_pick] = 1;
+ }
+ }
+
+ var t_shipping_price =
+ this.calculatewuliu(code, gift_shipping_price, goods_weight, out_of_weight,
+ goods_piece, user_addr, gift_freight_free, allpice, rs, th.data.bn_pick);
+ 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;
+ },
+
+
+
+ //----计算物流的钱----
+ async calculate_wuliu() {
+ var to = getApp(), th = this;
+ //to.getwuliuprice(async function (rs) {
+ var o_shipping_price = 0,
+ goods_weight = -1,
+ goods_piece = -1,
+ good = th.data.goods,
+ quan_price = 0,
+ exp_price = 0;
+
+ var quan_no = null;
+ var bn_pick = th.data.pickup.pickup_id;
+ var allpice = th.data.all_price;
+ var out_of_weight = null; //超出多少重量
+
+ good.buynum = th.data.order.order_goods.goods_num;
+
+ 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(!presellList){
- var content = good.goods_name + '未找到预售活动,请取消订单';
- th.toast(content);
- th.setData({ paying: 0 });
- return false;
- }
+ if (quan_price > 0) {
+ if (quan_price < th.data.tail_pay) th.setData({ quan_price: quan_price })
+ else {
+ th.setData({ quan_price: th.data.tail_pay })
+ quan_price = th.data.tail_pay;
+ }
+ } else {
+ th.setData({ quan_price: 0 })
+ }
+ } else {
+ th.setData({ quan_price: 0 })
+ }
+ } else {
+ th.setData({ quan_price: 0 })
+ }
- if (presellList) {
+ //---获取订单优惠---
+ var condition = allpice - quan_price; //判断的条件
+ var prom_ord = null
+ if (condition > 0 && this.data.pre_arr.is_useorderyh) {
+ await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
+ data: { store_id: os.stoid, orderAmount: condition }
+ }).then(res => {
+ if (res.data.code == 0) {
+ prom_ord = res.data.data;
- if (good.goods_num > presellList.presell_sumqty - presellList.buy_goodnum) {
- var content = gg.goods_name + '购买数量超出商品库存,请取消订单';
- th.toast(content);
- return false;
- }
- var buyed_mum3 = promgoodsbuynum + good.goods_num;
- if (buyed_mum3 > presellList.vip_butyqty && presellList.vip_butyqty > 0) {
- var content = gg.goods_name + '购买数量超出商品限购,请取消订单';
- th.toast(content);
- return false;
- }
+ //如果订单促销的取价不是实收,清空订单促销
+ if (prom_ord && prom_ord.discount_field > 0) prom_ord = null;
+ }
- var fres=await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellForm/get/"+os.stoid+"/"+presell_id, {});
- //接口调用成功的时候
- if(fres && fres.data.code==0 && fres.data.data){
- //如果有指定门店的时候
- if(fres.data.data.pick_up_lists){
- var idx0=fres.data.data.pick_up_lists.findIndex(function (e){
- return e.pickup_id==order.pickup_id;
- })
- if(idx0<0){
- getApp().confirmBox(good.goods_name+"预售活动的门店不可售");
- th.setData({ paying: 0 });
- return false;
- }
- }
-
- }else{
- var content = good.goods_name + '未找到预售活动,请取消订单';
- th.toast(content);
- th.setData({ paying: 0 });
- return false;
- }
+ })
+ }
+ //-----------当地址不为空,且是物流时,计算物流费用----------
+ if (th.data.user_addr != null && th.data.exp_type == 0 && good.is_free_shipping == 0) {
+ //看是不是有调用过包邮券,如果活动可以使用优化券的情况下
+ if (!th.data.isget_by_quan[bn_pick] && th.data.act.is_usecoupon) {
+ //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱---
+ 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, def_coupon3: arr });
+ }
+ th.data.isget_by_quan[bn_pick] = 1;
+ }
+ })
+ }
+ if (quan_no && th.data.using_quan[bn_pick].isby == 1) {
+ exp_price = 0;
+ } else {
+ var user_addr = th.data.user_addr;
+ var req_d = {
+ province: user_addr.province, city: user_addr.city, district: user_addr.district,
+ wuliu: parseFloat(condition).toFixed(2), store_id: os.stoid
+ }
+ var back_data = null;
+
+ //-- 判断是不是包邮 --
+ if (this.data.act.is_post_temp && (!prom_ord || prom_ord.is_post_temp)) {
+
+ await getApp().request.promisePost("/api/weshop/order/areaFreight", {
+ is_json: 1, data: req_d
+ }).then(rs => {
+ if (rs.data.code == 0) back_data = rs.data.data;
+ });
}
+ var gd_arr_list = [];
+ gd_arr_list.push(good);
- //如果优惠促销和搭配购的时候
- if ((good.prom_type == 3 || good.prom_type == 5) && good.is_collocation != 1 && good.is_gift != 1) {
- var p_ok = 1;
- await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/0"+"/"+getApp().globalData.user_id, {}).then(res => {
- if (res.data.code == 0) {
- var r_data = res.data.data;
- if (!r_data.collocationPromList && good.prom_type == 5) {
+ var cut_good_weight = 0;
+ for (let i in gd_arr_list) {
+ let item = gd_arr_list[i];
- var content = good.goods_name + '未找到活动,请取消订单重新购买';
- th.toast(content);
- p_ok = 0;
- }
- if (!r_data.promGoodsLists && good.prom_type == 3) {
+ if (back_data && back_data['is_by_all'] && (!back_data.no_free_goods || back_data.no_free_goods.indexOf(item.goods_id) == -1)) {
- var content = good.goods_name + '未找到活动,请取消订单重新购买';
- th.toast(content);
- p_ok = 0;
- }
- } else {
+ if (item['exp_sum_type'] == 2 && back_data.weight_free > 0) {
+ if (goods_weight < 0) goods_weight = 0;
+ goods_weight += item['weight'] * item['buynum'];
+ cut_good_weight += item['weight'] * item['buynum'];
+ }
+ if (back_data.weight_free > 0) {
+ out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
+ }
+ continue;
+ }
- var content = good.goods_name + '未找到活动,请取消订单重新购买';
- th.toast(content);
- p_ok = 0;
+ switch (item['exp_sum_type']) {
+ case 1:
+ //统一运费
+ o_shipping_price += item['uniform_exp_sum'];
+ break;
+ case 2:
+ if (goods_weight < 0) goods_weight = 0;
+ //累积商品重量 每种商品的重量 * 数量
+ goods_weight += item['weight'] * item['buynum'];
+
+ if (back_data && back_data.is_by_all && !back_data.no_free_goods) {
+ cut_good_weight += item['weight'] * item['buynum'];
+ if (back_data.weight_free > 0) {
+ out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
}
+ }
+ break;
+ case 3:
+ if (goods_piece < 0) goods_piece = 0;
+ //累积商品数量
+ goods_piece += item['buynum'];
+ break;
+ }
+ }
+
+ //如果是正值的时候
+ if (out_of_weight >= 0) out_of_weight = -cut_good_weight;
+ else out_of_weight = -back_data.weight_free * 1000;
+
+
+ if (!th.data.wu_arr) {
+ wx.hideLoading();
+ wx.showToast({
+ title: "物流配置未启用物流公司", icon: 'none', duration: 2000
+ })
+ //th.setData({ show_submit:0, });
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0 })
+ return false;
+ }
+
+ var code = th.data.wu_arr[th.data.index].code;
+ th.data.is_no_by[th.data.bn_pick] = 0;
+
+ //--------------开始计算物流------------------
+ var shipping_price = 0;
+
+ //ut.calculatewuliu(code, o_shipping_price, goods_weight, out_of_weight,
+ //goods_piece, th.data.user_addr, back_data, rs);
+ var w_data = {
+ store_id: os.stoid, code: code,
+ o_shipping_price: o_shipping_price,
+ goods_weight: goods_weight,
+ out_of_weight: out_of_weight, goods_piece: goods_piece,
+ user_addr_province: th.data.user_addr.province,
+ user_addr_city: th.data.user_addr.city,
+ user_addr_district: th.data.user_addr.district,
+ is_by_all: back_data && back_data.is_by_all ? 1 : 0,
+ no_free_goods: back_data && back_data.no_free_goods && back_data.no_free_goods.length > 0 ? 1 : 0,
+ }
+
+ var is_ok = 0;
+ await getApp().request.promisePost('/api/weshop/order/getOrderWuLiPrice', { data: w_data, is_json: 1 }).then(res => {
+ if (res.data.code == 0) {
+ shipping_price = res.data.data; is_ok = 1;
+ }
+ })
+ if (!is_ok) {
+ wx.hideLoading();
+ wx.showToast({
+ title: "计算物流错误", icon: 'none', duration: 2000
+ })
+ //th.setData({ show_submit:0 });
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0 })
+ return false;
+ }
+
+ exp_price = parseFloat(shipping_price).toFixed(2);
+ }
+ th.wuliu_next(allpice, quan_price, exp_price, prom_ord, 1);
+ } else {
+ th.wuliu_next(allpice, quan_price, exp_price, prom_ord, 1);
+ }
+ //调用默认优惠券方法
+ // th.def_coupon_fn()
+ //});
+ },
+
+ async calculate_same_city() {
+ var th = this,
+ good = th.data.goods,
+ quan_price = 0,
+ exp_price = 0;
+
+ var quan_no = null;
+ var bn_pick = th.data.pickup.pickup_id;
+ var allpice = th.data.all_price;
+
+ good.buynum = th.data.order.order_goods.goods_num;
+
+ 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 (quan_price > 0) {
+ if (quan_price < th.data.tail_pay) th.setData({ quan_price: quan_price })
+ else {
+ th.setData({ quan_price: th.data.tail_pay })
+ quan_price = th.data.tail_pay;
+ }
+ } else {
+ th.setData({ quan_price: 0 })
+ }
+ } else {
+ th.setData({ quan_price: 0 })
+ }
+ } else {
+ th.setData({ quan_price: 0 })
+ }
+
+ //-----------当地址不为空,且是物流时,计算物流费用----------
+ if (th.data.user_addr != null) {
+ th.wuliu_next(allpice, quan_price, 0);
+ } else {
+ wx.showToast({
+ title: '请先选择收货地址', icon: 'none', duration: 2000
+ })
+ th.setData({ show_submit: 1, })
+ return false;
+ }
+ //});
+ },
+
+
+
+
+ //相同的东西统一在一起,is_get表示订单优惠有没有被读取一遍
+ async wuliu_next(allpice, quan_price, exp_price, ord_prom, is_get) {
+ var th = this;
+ var o_condition = parseFloat(allpice) - parseFloat(quan_price);
+ if (o_condition < 0) o_condition = 0;
+
+ if (!ord_prom && !is_get) {
+ if (o_condition > 0 && this.data.pre_arr.is_useorderyh) {
+ await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
+ data: { store_id: os.stoid, orderAmount: o_condition }
+ }).then(res => {
+ if (res.data.code == 0) {
+ ord_prom = res.data.data;
+
+ //如果订单促销的取价不是实收,清空订单促销
+ if (ord_prom && ord_prom.discount_field > 0) ord_prom = null;
+ }
+ })
+ }
+ }
+
+
+ var bn_pick = th.data.pickup.pickup_id
+ //如果同意参与订单优惠
+ if (ord_prom) {
+ //th.check_is_order_prom(o_condition,async function (ord_price) {
+ var ord_price = o_condition;
+ var order_prom_amount = 0;
+ var order_prom_id = 0;
+ var order_m = 0;
+ //if (th.data.order_prom[bn_pick]) {
+ //var ord_prom = th.data.order_prom[bn_pick];
+ //么有使用券,或者活动没有限制使用优惠券
+ if (quan_price <= 0 || !ord_prom.is_xz_yh) {
+ order_prom_id = ord_prom['id'];
+ switch (ord_prom['type']) {
+ case 0:
+ order_m = Math.round(ord_price * ord_prom['expression']) / 100;//满额打折
+ order_prom_amount = (ord_price - order_m).toFixed(2);
+ break;
+ case 1:
+ order_m = ord_price - ord_prom['expression'];//满额优惠金额
+ order_prom_amount = ord_prom['expression'];
+ break;
+ }
+ ord_price = order_m;
+ }
+ //}
+
+ //--订单优惠的显示--
+ if (order_prom_id > 0) {
+ var order_prom_txt1 = "order_prom_id";
+ var order_prom_txt2 = "order_prom_amount";
+ th.setData({ [order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount })
+ } else {
+ var order_prom_txt1 = "order_prom_id";
+ var order_prom_txt2 = "order_prom_amount";
+ th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 0 })
+ }
+
+ if (th.data.exp_type == 2) {
+ var good = th.data.goods;
+ //--------------开始计算物流------------------
+ var shipping_price = 0;
+ var lon = 0;
+ var lat = 0;
+ //-- 获取距离 --
+ await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {
+ is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address, store_id: os.stoid }
+ }).then(res => {
+ if (res.data.code == 0) {
+ var data = JSON.parse(res.data.data);
+ if (data.status == 0) {
+ lon = data.result.location.lng;
+ lat = data.result.location.lat;
+ }
+ }
+ })
+ var gd_w = good['weight'] * good['buynum'];
+ //-- 获取距离 --
+ var req_data = {
+ store_id: os.stoid,
+ order_amount: parseFloat(ord_price),
+ lon: lon, lat: lat,
+ pickup_id: bn_pick,
+ goods_weight: gd_w
+ }
+
+ var is_next = 1;
+ //获取同城配送参数
+ await getApp().request.promisePost("/api/weshop/order/sameCityExp/getMoney", {
+ is_json: 1,
+ data: req_data
+ }).then(res => {
+ if (res.data.code == 0) {
+ shipping_price = res.data.data;
+ th.setData({
+ sameCityExp_off: 0,
+ sameCityExp_info: ''
+ })
+ } else {
+ if (res.data.code == -2) { //未达到起送价
+ th.setData({
+ sameCityExp_off: 2,
+ sameCityExp_info: res.data.msg
+ })
+ } else {
+ th.setData({
+ sameCityExp_off: 1,
+ sameCityExp_info: res.data.msg
+ })
+ }
+ // is_next = 0;
+ wx.showToast({
+ title: res.data.msg, icon: 'none', duration: 2000
})
- if (!p_ok) return false;
+ }
+ })
+ if (!is_next) {
+ th.setData({ show_submit: 1, disabled_btn: 1 })
+ return false
}
+ exp_price = parseFloat(shipping_price).toFixed(2);
+ th.data.lon = lon;
+ th.data.lat = lat;
+ th.data.bn_gd_w = gd_w;
+ th.data.bn_samecity_order_amount = req_data.order_amount;
+ }
- //商品的普通购买 ,不要进行判断
- if ((good.prom_type == 1 || good.prom_type == 2 || good.prom_type == 4 || good.prom_type == 6 || good.prom_type == 8 || good.prom_type == 9 ) && !good.is_gift && !good.is_collocation && !good.is_integral_normal && !good.is_pd_normal) {
+ ord_price = parseFloat(ord_price) - parseFloat(th.data.presell.presell_deposit);
+ if (ord_price < 0) ord_price = 0;
- } else {
- if ((gg.prom_type == 1 || gg.prom_type == 3 || gg.prom_type == 5 || gg.prom_type == 6 || gg.prom_type == 4)
- && !good.is_collocation && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) {
- var prom = null;
- //---如果是活动的时候---
- var prom = null, th = this;
- if (gg.prom_type == 1) {
- await getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + gg.prom_id, {
- }).then(res => {
- if (res.data.code == 0) {
- prom = res.data.data;
- }
- })
- }
- if (gg.prom_type == 6) {
- await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + gg.prom_id, {
- }).then(res => {
- if (res.data.code == 0) {
- prom = res.data.data;
- }
- })
- }
+ var the_price = ord_price + parseFloat(exp_price);
- if (gg.prom_type == 4) {
- await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1", {
- data: { store_id: os.stoid, goods_id: gg.goods_id,user_id: getApp().globalData.user_id, }
- }).then(res => {
- if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length) {
- prom = res.data.data.pageData[0];
- }
- })
- }
+ if (the_price < th.data.goods.use_commission) {
- if (prom) {
- var t_now = ut.gettimestamp();
- if (prom.is_end == 0 && prom.start_time < t_now && prom.end_time > t_now) {
+ if (th.data.bn_use_commission) {
+ wx.showToast({
+ title: '应付金额小于本单佣金,不可使用!',
+ icon: 'none',
+ duration: 2000
+ })
+ }
- var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
- th.toast(content);
- return false;
- }
- }
- }
- else {
- //不是赠品的时候
- if (!good.is_gift && good.prom_type != 3) {
- var t_ok = 1;
- await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/0"+"/"+getApp().globalData.user_id, {}).then(res => {
- if (res.data.code == 0) {
- var r_data = res.data.data;
- //-- 参加了全局的优惠活动 --
- if (r_data.promGoodsLists) {
-
- var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
- th.toast(content);
- t_ok = 0;
- }
- }
- })
- if (!t_ok) return false;
- }
+ th.setData({
+ bn_use_commission: 0
+ });
- //-- 如果有参加线下取价 --
- if (good.offline_cut > 0) wlist += encodeURIComponent(gg.erpwareid) + ",";
- }
- //赠品和搭配购不判断商品金额
- var isok = 1;
- var card_field = th.data.card_field;
- //如果会员是等级会员,商品有等级价,且不是活动商品
- if (!good.is_gift && !good.is_collocation && good.prom_type != 8) {
- if (card_field && gg[card_field] > 0) {
- if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0;
- if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过
+ }
- } else {
- if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0;
- if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过
- }
- var is_h = 0;
- if (!isok) {
+ if (th.data.bn_use_commission) {
+ the_price -= th.data.goods.use_commission;
+ }
+ th.setData({ exp_price: exp_price, order_m: the_price, show_submit: 1, })
- var content = gg.goods_name + '商品的价格发生了变化,请取消订单重新购买';
- th.toast(content);
- return false;
- }
+ //})
+ } else {
+
+ var o_condition1 = parseFloat(o_condition) - parseFloat(th.data.presell.presell_deposit);
+ if (o_condition1 < 0) o_condition1 = 0;
+
+ if (th.data.exp_type == 2) {
+ var good = th.data.goods;
+ //--------------开始计算物流------------------
+ var shipping_price = 0;
+ var lon = 0;
+ var lat = 0;
+ //-- 获取距离 --
+ await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {
+ is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address, store_id: os.stoid }
+ }).then(res => {
+ if (res.data.code == 0) {
+ var data = JSON.parse(res.data.data);
+ if (data.status == 0) {
+ lon = data.result.location.lng;
+ lat = data.result.location.lat;
}
+ }
+ })
+ var gd_w = good['weight'] * good['buynum'];
+ //这个不是取尾款而是取总金额
+ let order_amount = parseFloat(o_condition);
+ // var o_condition1 = parseFloat(o_condition);
+ if (order_amount < 0) order_amount = 0;
+ //-- 获取距离 --
+ var req_data = {
+ store_id: os.stoid,
+ order_amount: parseFloat(order_amount),
+ lon: lon, lat: lat,
+ pickup_id: bn_pick,
+ goods_weight: gd_w,
+ }
+
+ var is_next = 1;
+ //获取同城配送参数
+ await getApp().request.promisePost("/api/weshop/order/sameCityExp/getMoney", {
+ is_json: 1,
+ data: req_data
+ }).then(res => {
+ if (res.data.code == 0) {
+ shipping_price = res.data.data;
+ th.setData({
+ sameCityExp_off: 0,
+ sameCityExp_info: ''
+ })
+ } else {
+ if (res.data.code == -2) { //未达到起送价
+ th.setData({
+ sameCityExp_off: 2,
+ sameCityExp_info: res.data.msg
+ })
+ } else {
+ th.setData({
+ sameCityExp_off: 1,
+ sameCityExp_info: res.data.msg
+ })
+ }
+ // is_next = 0;
+ wx.showToast({
+ title: res.data.msg, icon: 'none', duration: 2000
+ })
+ }
+ })
+ if (!is_next) {
+ th.setData({ show_submit: 1, disabled_btn: 1, same_ok: 0 })
+ return false
+ }
+ exp_price = parseFloat(shipping_price).toFixed(2);
+ th.data.lon = lon;
+ th.data.lat = lat;
+ th.data.bn_gd_w = gd_w;
+ th.data.bn_samecity_order_amount = req_data.order_amount;
+ }
- if (good.goods_num > store_count) {
- var content = gg.goods_name + '商品的库存不足,请取消订单';
- th.toast(content);
- return false;
- }
+ var the_price = parseFloat(o_condition1) + parseFloat(exp_price);
+ if (the_price < th.data.goods.use_commission) {
+ if (th.data.bn_use_commission) {
+ wx.showToast({
+ title: '应付金额小于本单佣金,不可使用!',
+ icon: 'none',
+ duration: 2000
+ })
}
- console.log("------------------------------------");
- //---如果是活动的时候---
- var prom = null, goodsinfo = good, th = this;
- if (goodsinfo.prom_type == 1) {
- await getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + goodsinfo.prom_id, {
- }).then(res => {
- if (res.data.code == 0) {
- prom = res.data.data;
- }
+ th.setData({
+ bn_use_commission: 0
+ })
+ }
+
+ if (th.data.bn_use_commission) {
+ the_price -= th.data.goods.use_commission;
+ }
+
+ th.setData({ exp_price: exp_price, order_m: the_price.toFixed(2), show_submit: 1, })
+ }
+ //调用默认优惠券方法
+ th.def_coupon_fn()
+ },
+
+ //-- 获取时间差 --
+ get_diff() {
+
+ switch (this.data.act.presell_type) {
+ //部分定金
+ case 0:
+ if (this.data.act.pay_begindate > ut.gettimestamp()) {
+ this.setData({ no_start: 1 })
+ } else if (this.data.act.pay_enddate < ut.gettimestamp()) {
+ this.setData({ is_end: 1 })
+ } else {
+ var end_time = this.data.act.pay_enddate;
+ var e_str = ut.formatTime(end_time);
+ var new_date = new Date(); //新建一个日期对象,默认现在的时间
+ var old_date = new Date(e_str.replace(/-/g, '/')); //设置过去的一个时间点,"yyyy-MM-dd HH:mm:ss"格式化日期
+ var difftime = Math.abs((new_date - old_date) / 1000); //计算时间差,并把毫秒转换成秒
+ var days = parseInt(difftime / 86400); // 天 24*60*60*1000
+ var hours = parseInt(difftime / 3600) - 24 * days; // 小时 60*60 总小时数-过去的小时数=现在的小时数
+ var minutes = parseInt(difftime % 3600 / 60); // 分钟 -(day*24) 以60秒为一整份 取余 剩下秒数 秒数/60 就是分钟数
+ var seconds = parseInt(difftime % 60); // 以60秒为一整份 取余 剩下秒数
+ this.setData({ days: days, hours: hours, minutes: minutes, seconds: seconds })
+ }
+ break;
+ //全额付款
+ case 1:
+ if (this.data.act.start_time > ut.gettimestamp()) {
+ this.setData({ no_start: 1 })
+ } else if (this.data.act.end_time < ut.gettimestamp()) {
+ this.setData({ is_end: 1 })
+ } else {
+ var end_time = this.data.act.end_time;
+ var e_str = ut.formatTime(end_time);
+ var new_date = new Date(); //新建一个日期对象,默认现在的时间
+ var old_date = new Date(e_str.replace(/-/g, '/')); //设置过去的一个时间点,"yyyy-MM-dd HH:mm:ss"格式化日期
+ var difftime = Math.abs((new_date - old_date) / 1000); //计算时间差,并把毫秒转换成秒
+ var days = parseInt(difftime / 86400); // 天 24*60*60*1000
+ var hours = parseInt(difftime / 3600) - 24 * days; // 小时 60*60 总小时数-过去的小时数=现在的小时数
+ var minutes = parseInt(difftime % 3600 / 60); // 分钟 -(day*24) 以60秒为一整份 取余 剩下秒数 秒数/60 就是分钟数
+ var seconds = parseInt(difftime % 60); // 以60秒为一整份 取余 剩下秒数
+ this.setData({ days: days, hours: hours, minutes: minutes, seconds: seconds })
+ }
+ break;
+
+ }
+ },
+
+
+ //显示支付选择
+ show_pay: function () {
+
+ //-- 服务卡项没有余额支付 --
+ if (this.data.is_fwk) {
+ this.to_pay_type(0);
+ return false;
+ }
+
+ //不用钱直接支付
+ if (this.data.order_m <= 0) {
+ this.to_pay_type(1);
+ } else {
+ this.setData({ show_pay_type: 1 });
+ }
+
+ },
+ //关闭支付
+ close_show_pay: function () {
+ this.setData({ show_pay_type: 0 });
+ },
+ //--弹起支付框--
+ to_pay() {
+ //--物流支付时要有地址--
+ if (this.data.exp_type == 0 && this.data.user_addr == null) {
+ return getApp().my_warnning("请选择收货地址", 0, this);
+ }
+
+ this.setData({ show_pay_type: 1 });
+ },
+ //选择支付方式
+ set_pay_type: function (e) {
+ if (this.data.paying) return false;
+ this.data.paying = 1;
+ var type = e.currentTarget.dataset.type;
+ this.to_pay_type(type);
+ },
+
+ //--立即支付--
+ to_pay_type: function (ind) {
+ var th = this;
+ //--物流支付时要有地址--
+ //if (th.data.exp_type == 0 && th.data.user_addr == null) {
+ if (getApp().is_no_addr(th, th.data.exp_type)) {
+ this.data.paying = 0;
+ return getApp().my_warnning("请选择收货地址", 0, th);
+ }
+ th.data.exp_type = parseInt(th.data.exp_type + '');
+ //---支付参数--
+ var dd = {
+ order_sn: th.data.order.order_sn,
+ order_id: th.data.order.order_id,
+ store_id: oo.stoid,
+ exp_type: th.data.exp_type,
+ user_id: getApp().globalData.userInfo.user_id,
+ prom_id: th.data.pre_arr.presell_id,
+ tail_pay_type: ind,//0微信支付 1余额支付
+ };
+
+
+ //尾款支付的网址
+ var wk_url = oo.url + '/api/weshop/order/pay/payPresellWk';
+ if (!th.data.is_fwk) {
+ if (th.data.exp_type == 0 || th.data.exp_type == 2) {
+ var index = th.data.index;
+ dd.shipping_code = th.data.wu_arr[index].code;
+ dd.shipping_name = th.data.wu_arr[index].name;
+ dd.shipping_price = parseFloat(th.data.exp_price);
+ dd.addressid = th.data.user_addr.address_id;
+ }
+ } else {
+ delete dd.exp_type;
+ wk_url = oo.url + '/api/weshop/order/pay/payPresellWkCard';
+ }
+
+ if (dd.exp_type == 2) {
+ dd.lon = th.data.lon ? th.data.lon : 0;
+ dd.lat = th.data.lat ? th.data.lat : 0;
+ dd.goods_weight = th.data.bn_gd_w;
+ dd.samecity_order_amount = th.data.bn_samecity_order_amount;
+ }
+
+ if (th.data.order_prom_amount > 0) {
+ var e = {
+ order_prom_id: th.data.order_prom_id,
+ order_prom_amount: th.data.order_prom_amount,
+ }
+ dd.order_prom_list = e;
+ }
+
+ if (th.data.bn_use_commission) {
+ dd.use_commission = th.data.goods.use_commission;
+ }
+
+
+ var bn_pick = th.data.pickup_id;
+ var quan_no = '';
+ 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) {
+ dd.coupon_no = quan_no;
+ if (th.data.quan_price) dd.coupon_price = th.data.quan_price;
+ }
+ if (th.data.user_note) {
+ dd.user_note = th.data.user_note;
+ }
+ dd.order_amount = parseFloat(th.data.order_m).toFixed(2);
+
+ if (getApp().globalData.scene)
+ dd.scene = getApp().globalData.scene;
+
+ console.log(JSON.stringify(dd));
+ wx.request({
+ url: wk_url,
+ data: JSON.stringify(dd),
+ method: 'POST',
+ header: {
+ 'content-type': 'application/json'
+ },// 设置请求的 header
+ success: function (t) {
+ th.close_show_pay();
+
+ //---用微信支付---
+ if (dd.tail_pay_type == 0) {
+
+ if (t.data.code != 0) {
+ getApp().my_warnning(t.data.msg, 1, th);
+ th.data.paying = 0;
+ return false;
+ }
+
+ //-- 订单OK --
+ th.data.ok_order_sn = th.data.order.order_sn;
+
+ util_pay.pay_data(t, function () {
+ //---用余额支付---
+ getApp().my_warnning("支付成功", 1, th);
+ var send_time = th.data.pre_arr.delivery_date;
+ if (th.data.pre_arr.delivery_type == 2) {
+ send_time = ut.gettimestamp() + th.data.pre_arr.delivery_daynum * 3600 * 24;
+ }
+ th.setData({ isclose: 0, 'order.order_status': 1, 'order.pay_status': 1, 'wait_wk': 0, 'presell.tail_pay_state': 1, 'wait_fh': 1, send_time: send_time });
+ th.data.paying = 0;
+
+ }, function (e) {
+ th.data.paying = 0;
+ wx.showToast({
+ title: e,
+ icon: 'none',
+ duration: 2500
})
+ })
+ // var n = t.data.data;
+ // th.weixinPay(n,
+ // function () {
+ // //---用余额支付---
+ // getApp().my_warnning("支付成功", 1, th);
+ // var send_time = th.data.pre_arr.delivery_date;
+ // if (th.data.pre_arr.delivery_type == 2) {
+ // send_time = th.data.pre_arr.delivery_daynum * 3600;
+ // }
+ // th.setData({ isclose: 0, 'order.order_status': 1, 'order.pay_status': 1, 'wait_wk': 0, 'presell.tail_pay_state': 1, 'wait_fh': 1, send_time: send_time });
+ // th.data.paying=0;
+ //
+ // }, function () {
+ // this.data.paying=0;
+ // getApp().my_warnning("支付失败", 0, th);
+ // })
+ } else {
+ if (t.data.code == 0) {
+ var send_time = th.data.pre_arr.delivery_date;
+ if (th.data.pre_arr.delivery_type == 2) {
+ send_time = ut.gettimestamp() + th.data.pre_arr.delivery_daynum * 3600 * 24;
+ }
+ //---用余额支付---
+ getApp().my_warnning("支付成功", 1, th);
+ th.setData({ isclose: 0, 'order.order_status': 1, 'order.pay_status': 1, 'wait_wk': 0, 'presell.tail_pay_state': 1, 'wait_fh': 1, send_time: send_time });
+
+ } else {
+ getApp().my_warnning(t.data.msg, 1, th);
+ }
+ th.data.paying = 0;
+ }
+ }
+ });
+ },
+
+ //------调起支付框--------
+ weixinPay: function (n, success, fail) {
+ if (!n) return false;
+ var th = this;
+
+ getApp().globalData.no_clear = 1;
+
+ wx.requestPayment({
+ timeStamp: String(n.timeStamp),
+ nonceStr: n.nonceStr,
+ package: n.packageValue,
+ signType: n.signType,
+ paySign: n.paySign,
+ success: function (n) {
+ console.log(n), getApp().showSuccess("支付成功!");
+ "function" == typeof success && success();
+ },
+ fail: function (n) {
+ console.log(n), "requestPayment:fail" == n.errMsg ? getApp().my_warnning("支付失败", 0, th) : "requestPayment:fail cancel" == n.errMsg ? getApp().my_warnning("您已取消支付", 0, th) : getApp().my_warnning("支付失败:" + n.errMsg.substr("requestPayment:fail ".length), 0, th),
+ "function" == typeof fail && fail();
+ }
+ });
+ },
+
+
+ show_liuyan: function () {
+ this.setData({ sh_liuyan: true })
+ },
+ close_liuyan() {
+ this.setData({ sh_liuyan: false })
+ },
+
+ //--------点击选择----------
+ set_wuliu: function (e) {
+ var type = e.currentTarget.dataset.type;
+ this.setData({
+ exp_type: type,
+ same_ok: 1,
+ sameCityExp_off: 0,
+ sameCityExp_info: '',
+ first_entry: 0
+ });
+ this.calculatePrice2();
+ },
+
+ //--------立即支付----------
+ async jumpToCart4(e) {
+ var th = this;
+ if (this.data.optionIsGoup)
+ wx.navigateTo({
+ url: "/pages/team/team_confirm/team_confirm?orderSn=" + this.data.order.order_sn + "&orderPay=true"
+ })
+ var order = this.data.order;
+ var order_goods = this.data.order_goods;
+ var user_id = getApp().globalData.userInfo.user_id;
+
+ var wlist = "";
+
+ var good = order_goods;
+ //线下取价功能已经关闭或者过期
+ if (!th.data.is_open_offline && good.offline_cut > 0) {
+ wx.showModal({
+ title: '提示',
+ content: '线下取价功能已经关闭或者过期!'
+ });
+ return false;
+ }
+ //如果不是小程序有的功能,直接提示要去3.0处理
+ if (good.prom_type == 2) {
+ wx.showModal({
+ title: '提示',
+ content: '小程序还未有该活动,请到3.0公众号支付'
+ });
+ return false;
+ }
+
+ //要每件每件的商品进行检查,看有么有超出库存,超出限购
+ var goodsbuynum = 0, promgoodsbuynum = 0, gg = null;
+ //获取单品的现在的活动状态
+ await getApp().request.promiseGet("/api/weshop/goods/get/" + os.stoid + "/" + good.goods_id, {
+ }).then(res => {
+ gg = res.data.data;
+ })
+ var limit = gg.viplimited;
+ var store_count = gg.store_count;
+ good.erpwareid = gg.erpwareid;
+
+ //---要获得商品,该用户买了多少件,同步应用---
+ await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {
+ data: {
+ store_id: os.stoid,
+ user_id: getApp().globalData.user_id,
+ goods_id: good.goods_id,
+ prom_type: good.prom_type,
+ prom_id: good.prom_id,
+ isnew: 1
+ },
+ }).then(res => {
+ var buy_num_data = res.data.data;
+ if (buy_num_data.promgoodsbuynum) promgoodsbuynum = buy_num_data.promgoodsbuynum;
+ goodsbuynum = buy_num_data.goodsbuynum;
+ })
+
+ var buyed_mum2 = goodsbuynum + good.goods_num;
+ if (buyed_mum2 > limit && limit > 0) {
+
+ var content = gg.goods_name + '购买数量超出商品限购,请取消订单';
+ th.toast(content);
+ return false;
+ }
+
+
+
+ //如果是预售的时候,
+ if (good.prom_type == 8) {
+ await getApp().request.promiseGet("/api/weshop/order/orderPresell/countBuyGoodsSum", {
+ data: { store_id: os.stoid, user_id: user_id, goods_id: good.goods_id, prom_id: good.prom_id },
+ }).then(e => {
+ if (e.data.code == 0) {
+ promgoodsbuynum = e.data.data.sumgoodsnum;
+ }
+ })
+
+ var presell_id = good.prom_id;
+ var presellList = null;
+ var url = "/api/weshop/marketing/marketingPresellList/list"
+ var rd = {
+ store_id: os.stoid,
+ presell_id: presell_id,
+ goods_id: good.goods_id
+ }
+ //------获取预售从表----------
+ await getApp().request.promiseGet(url, {
+ data: rd
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
+ var arr = res.data.data[0];
+ presellList = arr
+ }
+ })
+
+ if (!presellList) {
+ var content = good.goods_name + '未找到预售活动,请取消订单';
+ th.toast(content);
+ th.setData({ paying: 0 });
+ return false;
+ }
+
+
+ if (presellList) {
+
+ if (good.goods_num > presellList.presell_sumqty - presellList.buy_goodnum) {
+ var content = gg.goods_name + '购买数量超出商品库存,请取消订单';
+ th.toast(content);
+ return false;
}
- if (goodsinfo.prom_type == 6 && !good.is_pd_normal) {
- await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + goodsinfo.prom_id, {
- }).then(res => {
- if (res.data.code == 0) {
- prom = res.data.data;
- }
- })
+ var buyed_mum3 = promgoodsbuynum + good.goods_num;
+ if (buyed_mum3 > presellList.vip_butyqty && presellList.vip_butyqty > 0) {
+ var content = gg.goods_name + '购买数量超出商品限购,请取消订单';
+ th.toast(content);
+ return false;
}
- if (goodsinfo.prom_type == 4 && !good.is_integral_normal) {
- await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1", {
- data: { store_id: os.stoid, goods_id: goodsinfo.goods_id,user_id: getApp().globalData.user_id, }
- }).then(res => {
- if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length) {
- prom = res.data.data.pageData[0];
- }
+ var fres = await getApp().request.promiseGet("/api/weshop/marketing/marketingPresellForm/get/" + os.stoid + "/" + presell_id, {});
+ //接口调用成功的时候
+ if (fres && fres.data.code == 0 && fres.data.data) {
+ //如果有指定门店的时候
+ if (fres.data.data.pick_up_lists) {
+ var idx0 = fres.data.data.pick_up_lists.findIndex(function (e) {
+ return e.pickup_id == order.pickup_id;
})
+ if (idx0 < 0) {
+ getApp().confirmBox(good.goods_name + "预售活动的门店不可售");
+ th.setData({ paying: 0 });
+ return false;
+ }
+ }
+
+ } else {
+ var content = good.goods_name + '未找到预售活动,请取消订单';
+ th.toast(content);
+ th.setData({ paying: 0 });
+ return false;
}
- //----------如果有活动,并且在进行中,就不计算线下库存---------------
- if (prom) {
- var now = ut.gettimestamp();
- if (prom.is_end == 1 && prom.end_time < now) {
- var content = goodsinfo.goods_name + '商品的活动已经结束,请取消订单重新购买';
- th.toast(content);
- return false;
- }
+ }
+ }
- buyed_mum2 = promgoodsbuynum + good.goods_num;
- if (buyed_mum2 > prom.buy_limit && prom.buy_limit > 0) {
- var content = goodsinfo.goods_name + '购买数量超出商品活动限购,请取消订单重新购买';
- th.toast(content);
- return false;
- }
+ //如果优惠促销和搭配购的时候
+ if ((good.prom_type == 3 || good.prom_type == 5) && good.is_collocation != 1 && good.is_gift != 1) {
+ var p_ok = 1;
+ await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/0" + "/" + getApp().globalData.user_id, {}).then(res => {
+ if (res.data.code == 0) {
+ var r_data = res.data.data;
+ if (!r_data.collocationPromList && good.prom_type == 5) {
- if (goodsinfo.prom_type == 4) {
- if (good.goods_num > prom.limitqty - prom.buy_num) {
+ var content = good.goods_name + '未找到活动,请取消订单重新购买';
+ th.toast(content);
+ p_ok = 0;
+ }
+ if (!r_data.promGoodsLists && good.prom_type == 3) {
- var content = goodsinfo.goods_name + '购买数量超出商品活动库存,请取消订单';
- th.toast(content);
- return false;
- }
- } else {
- var redis_num = 0;
- //------判断活动是否抢光-----
- await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
- os.stoid + "/" + goodsinfo.prom_type + "/" + goodsinfo.prom_id, {
- }).then(res => {
- redis_num = res.data.data;
- });
-
- if (good.goods_num > redis_num) {
-
- var content = gg.goods_name + '超出商品活动库存,请取消订单';
- th.toast(content);
- return false;
- }
- }
+ var content = good.goods_name + '未找到活动,请取消订单重新购买';
+ th.toast(content);
+ p_ok = 0;
+ }
+ } else {
+ var content = good.goods_name + '未找到活动,请取消订单重新购买';
+ th.toast(content);
+ p_ok = 0;
}
+ })
+ if (!p_ok) return false;
+ }
+ //商品的普通购买 ,不要进行判断
+ if ((good.prom_type == 1 || good.prom_type == 2 || good.prom_type == 4 || good.prom_type == 6 || good.prom_type == 8 || good.prom_type == 9) && !good.is_gift && !good.is_collocation && !good.is_integral_normal && !good.is_pd_normal) {
-
- //-- 要判断一下线下取价价格是不是发生改变 --
- if (wlist != "" && th.data.is_open_offline && th.data.is_open_offline > 0) {
- wlist = ut.sub_last(wlist);
- var keyid = order.pickup_id;
- var user_info = getApp().globalData.userInfo;
- if (!keyid) return false;
- var offarr = null;
- await getApp().request.promiseGet("/api/weshop/goods/listWarePrice", {
- data: {
- VIPId: encodeURIComponent(user_info.erpvipid),
- store_id: os.stoid,
- PickupId: keyid,
- WareIds: wlist
- },
- },
- ).then(res => {
- if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
- offarr = res.data.data;
- }
- })
- if (!offarr && offarr.length <= 0) {
- wx.showModal({ title: '获取线下取价失败', });
+ } else {
+ if ((gg.prom_type == 1 || gg.prom_type == 3 || gg.prom_type == 5 || gg.prom_type == 6 || gg.prom_type == 4)
+ && !good.is_collocation && !good.is_gift && !good.is_integral_normal && !good.is_pd_normal) {
+ var prom = null;
+ //---如果是活动的时候---
+ var prom = null, th = this;
+ if (gg.prom_type == 1) {
+ await getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + gg.prom_id, {
+ }).then(res => {
+ if (res.data.code == 0) {
+ prom = res.data.data;
}
- var newarr = ut.convert_arr_key(offarr, 'WareId');
- //-- 循环判断线下的价格 --
- for (var k in order_goods) {
- var good = order_goods[k];
- //判断线下取价是不是一样
- if (newarr[good.erpwareid] &&
- parseFloat(newarr[good.erpwareid].WarePrice) != parseFloat(good.goods_price)) {
-
- var content = good.goods_name + '商品的价格发生了变化,请取消订单重新购买';
- th.toast(content);
- return false;
- }
+ })
+ }
+ if (gg.prom_type == 6) {
+ await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + gg.prom_id, {
+ }).then(res => {
+ if (res.data.code == 0) {
+ prom = res.data.data;
+ }
+ })
+ }
+
+ if (gg.prom_type == 4) {
+ await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1", {
+ data: { store_id: os.stoid, goods_id: gg.goods_id, user_id: getApp().globalData.user_id, }
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length) {
+ prom = res.data.data.pageData[0];
}
+ })
+ }
+
+ if (prom) {
+ var t_now = ut.gettimestamp();
+ if (prom.is_end == 0 && prom.start_time < t_now && prom.end_time > t_now) {
+
+ var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
+ th.toast(content);
+ return false;
+ }
+ }
+ }
+ else {
+ //不是赠品的时候
+ if (!good.is_gift && good.prom_type != 3) {
+ var t_ok = 1;
+ await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromList/" + os.stoid + "/" + good.goods_id + "/0" + "/" + getApp().globalData.user_id, {}).then(res => {
+ if (res.data.code == 0) {
+ var r_data = res.data.data;
+ //-- 参加了全局的优惠活动 --
+ if (r_data.promGoodsLists) {
+ var content = gg.goods_name + '商品的活动发生了变化,请取消订单重新购买';
+ th.toast(content);
+ t_ok = 0;
+ }
+ }
+ })
+ if (!t_ok) return false;
}
- if(this.data.paying) return false;
- this.data.paying=1;
+ //-- 如果有参加线下取价 --
+ if (good.offline_cut > 0) wlist += encodeURIComponent(gg.erpwareid) + ",";
+ }
+ //赠品和搭配购不判断商品金额
+ var isok = 1;
+ var card_field = th.data.card_field;
+ //如果会员是等级会员,商品有等级价,且不是活动商品
+ if (!good.is_gift && !good.is_collocation && good.prom_type != 8) {
+ if (card_field && gg[card_field] > 0) {
+ if (good.goods_price != gg[card_field] && good.offline_cut <= 0) isok = 0;
+ if (good.goods_price > gg[card_field] && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过
- /*---
- o.jumpToCart4({
- order_sn: this.data.order.order_sn,
- order_amount: this.data.order.order_amount,
- type: 1 //正常单
- }, 1);--*/
+ } else {
+ if (good.goods_price != gg.shop_price && good.offline_cut <= 0) isok = 0;
+ if (good.goods_price > gg.shop_price && good.offline_cut > 0) isok = 0; //如果线下价格比较贵,则不通过
+ }
+ var is_h = 0;
+ if (!isok) {
+ var content = gg.goods_name + '商品的价格发生了变化,请取消订单重新购买';
+ th.toast(content);
+ return false;
+ }
+ }
- th.data.ok_order_sn=this.data.order.order_sn;
- util_pay.pay(this.data.order.order_sn, function () {
- wx.showToast({ title: '支付成功' })
- wx.navigateBack();
- }, null, os.stoid, 1);
+ if (good.goods_num > store_count) {
- },
+ var content = gg.goods_name + '商品的库存不足,请取消订单';
+ th.toast(content);
+ return false;
+ }
+
+
+ }
+
+ console.log("------------------------------------");
+ //---如果是活动的时候---
+ var prom = null, goodsinfo = good, th = this;
+ if (goodsinfo.prom_type == 1) {
+ await getApp().request.promiseGet("/api/ms/flash_sale/get/" + os.stoid + "/" + goodsinfo.prom_id, {
+ }).then(res => {
+ if (res.data.code == 0) {
+ prom = res.data.data;
+ }
+ })
+ }
+ if (goodsinfo.prom_type == 6 && !good.is_pd_normal) {
+ await getApp().request.promiseGet("/api/weshop/teamlist/get/" + os.stoid + "/" + goodsinfo.prom_id, {
+ }).then(res => {
+ if (res.data.code == 0) {
+ prom = res.data.data;
+ }
+ })
+ }
+
+ if (goodsinfo.prom_type == 4 && !good.is_integral_normal) {
+ await getApp().request.promiseGet("/api/weshop/integralbuy/pageIntegralBuyGoodsList?stype=1&stypeup=1", {
+ data: { store_id: os.stoid, goods_id: goodsinfo.goods_id, user_id: getApp().globalData.user_id, }
+ }).then(res => {
+ if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length) {
+ prom = res.data.data.pageData[0];
+ }
+ })
+ }
+
+ //----------如果有活动,并且在进行中,就不计算线下库存---------------
+ if (prom) {
+ var now = ut.gettimestamp();
+ if (prom.is_end == 1 && prom.end_time < now) {
+
+ var content = goodsinfo.goods_name + '商品的活动已经结束,请取消订单重新购买';
+ th.toast(content);
+ return false;
+ }
- //--------取消订单---------
- cancelOrder: function (e) {
- var t = this, th = t, ord_id = this.data.order.order_id, order = this.data.order;
+ buyed_mum2 = promgoodsbuynum + good.goods_num;
+ if (buyed_mum2 > prom.buy_limit && prom.buy_limit > 0) {
- wx.showModal({
- title: "是否取消订单?",
- success: function (e) {
- if (!e.confirm) return false;
- //如果是秒杀和拼单的商品,取消订单要返回redis,并取消订单
- //if(is_skill==1 || is_zsorder>=2){
- getApp().request.post("/api/weshop/order/cancelOrder/" + os.stoid + "/" + ord_id + "/" + getApp().globalData.user_id, {
- data: {},
- success: function (t) {
- if (t.data.code == 0) {
- th.setData({ 'order.order_status': 3 });
- wx.setStorageSync("order:order_list:update", !0);
- }
+ var content = goodsinfo.goods_name + '购买数量超出商品活动限购,请取消订单重新购买';
+ th.toast(content);
+ return false;
+ }
- },
- })
+ if (goodsinfo.prom_type == 4) {
+ if (good.goods_num > prom.limitqty - prom.buy_num) {
- }
+ var content = goodsinfo.goods_name + '购买数量超出商品活动库存,请取消订单';
+ th.toast(content);
+ return false;
+ }
+ } else {
+ var redis_num = 0;
+ //------判断活动是否抢光-----
+ await getApp().request.promiseGet("/api/weshop/activitylist/getActLen/" +
+ os.stoid + "/" + goodsinfo.prom_type + "/" + goodsinfo.prom_id, {
+ }).then(res => {
+ redis_num = res.data.data;
});
- },
+ if (good.goods_num > redis_num) {
- //-----删除订单-----
- deleteOrderData: function (t) {
- var th = this;
- var order_id = this.data.order.order_id;
- var up_data = {
- order_id: order_id, isdel: 1
- };
- if (th.data.order.order_status != 6) {
- up_data.order_status = 5;
- }
- wx.showModal({
- title: "是否删除订单?",
- success: function (tt) {
- tt.confirm && getApp().request.put("/api/weshop/order/updatebyId", {
- data: up_data,
- success: function (t) {
- getApp().my_warnning("删除成功", 1, th);
- setTimeout(function () {
- getApp().goto("/pages/user/order_list/order_list");
- }, 1000);
- }
- })
- }
- });
- },
+ var content = gg.goods_name + '超出商品活动库存,请取消订单';
+ th.toast(content);
+ return false;
+ }
+ }
- go_goods: function (e) {
- var url = e.currentTarget.dataset.url;
- getApp().goto(url);
- },
- toast(msg) {
- wx.showToast({
- title: msg,
- icon: 'none',
- duration: 3000
- })
- },
- //--------确认收货---------
- confirmOrder: function (e) {
- var th = this;
- var o = this.data.order.order_id, order = this.data.order;
- wx.showModal({
- title: "是否确认收货?",
- success: function (t) {
- t.confirm && getApp().request.post("/api/weshop/order/confirmOrder/" + os.stoid + "/" + o + "/" + getApp().globalData.user_id, {
- success: function (e) {
- if (e.data.code == 0) {
- th.setData({})
- }
- }
- })
- }
- });
- },
+ }
- //---------联系客服------------
- contactService: function () {
- getApp().con_Service();
- },
- //---------联系微信客服------------
- con_weixin: function () {
- getApp().con_wx(this);
- },
+ //-- 要判断一下线下取价价格是不是发生改变 --
+ if (wlist != "" && th.data.is_open_offline && th.data.is_open_offline > 0) {
+ wlist = ut.sub_last(wlist);
+ var keyid = order.pickup_id;
+ var user_info = getApp().globalData.userInfo;
+ if (!keyid) return false;
+ var offarr = null;
+ await getApp().request.promiseGet("/api/weshop/goods/listWarePrice", {
+ data: {
+ VIPId: encodeURIComponent(user_info.erpvipid),
+ store_id: os.stoid,
+ PickupId: keyid,
+ WareIds: wlist
+ },
+ },
+ ).then(res => {
+ if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
+ offarr = res.data.data;
+ }
+ })
+ if (!offarr && offarr.length <= 0) {
+ wx.showModal({ title: '获取线下取价失败', });
+ }
+ var newarr = ut.convert_arr_key(offarr, 'WareId');
+ //-- 循环判断线下的价格 --
+ for (var k in order_goods) {
+ var good = order_goods[k];
+ //判断线下取价是不是一样
+ if (newarr[good.erpwareid] &&
+ parseFloat(newarr[good.erpwareid].WarePrice) != parseFloat(good.goods_price)) {
+
+ var content = good.goods_name + '商品的价格发生了变化,请取消订单重新购买';
+ th.toast(content);
+ return false;
+ }
+ }
+
+ }
+
+ if (this.data.paying) return false;
+ this.data.paying = 1;
+
+ /*---
+ o.jumpToCart4({
+ order_sn: this.data.order.order_sn,
+ order_amount: this.data.order.order_amount,
+ type: 1 //正常单
+ }, 1);--*/
+
+
+ th.data.ok_order_sn = this.data.order.order_sn;
+ util_pay.pay(this.data.order.order_sn, function () {
+ wx.showToast({ title: '支付成功' })
+ wx.navigateBack();
+ }, null, os.stoid, 1);
+
+
+ },
+
+ //--------取消订单---------
+ cancelOrder: function (e) {
+ var t = this, th = t, ord_id = this.data.order.order_id, order = this.data.order;
+
+ wx.showModal({
+ title: "是否取消订单?",
+ success: function (e) {
+ if (!e.confirm) return false;
+ //如果是秒杀和拼单的商品,取消订单要返回redis,并取消订单
+ //if(is_skill==1 || is_zsorder>=2){
+ getApp().request.post("/api/weshop/order/cancelOrder/" + os.stoid + "/" + ord_id + "/" + getApp().globalData.user_id, {
+ data: {},
+ success: function (t) {
+ if (t.data.code == 0) {
+ th.setData({ 'order.order_status': 3 });
+ wx.setStorageSync("order:order_list:update", !0);
+ }
+
+ },
+ })
- //使用
- set_bn_commission:function(){
- var th = this;
- th.setData({bn_use_commission: !th.data.bn_use_commission});
- th.calculatePrice2();
- },
-
- //-- 查看物流 --
- go_wuliu:function (e) {
- getApp().go_wuliu(e);
- },
- //去凑单
- qcd(){
- getApp().goto("/pages/index/index/index");
- },
+ }
+ });
+ },
+
+
+ //-----删除订单-----
+ deleteOrderData: function (t) {
+ var th = this;
+ var order_id = this.data.order.order_id;
+ var up_data = {
+ order_id: order_id, isdel: 1
+ };
+ if (th.data.order.order_status != 6) {
+ up_data.order_status = 5;
+ }
+ wx.showModal({
+ title: "是否删除订单?",
+ success: function (tt) {
+ tt.confirm && getApp().request.put("/api/weshop/order/updatebyId", {
+ data: up_data,
+ success: function (t) {
+ getApp().my_warnning("删除成功", 1, th);
+ setTimeout(function () {
+ getApp().goto("/pages/user/order_list/order_list");
+ }, 1000);
+ }
+ })
+ }
+ });
+ },
+
+ go_goods: function (e) {
+ var url = e.currentTarget.dataset.url;
+ getApp().goto(url);
+ },
+ toast(msg) {
+ wx.showToast({
+ title: msg,
+ icon: 'none',
+ duration: 3000
+ })
+ },
+ //--------确认收货---------
+ confirmOrder: function (e) {
+ var th = this;
+ var o = this.data.order.order_id, order = this.data.order;
+ wx.showModal({
+ title: "是否确认收货?",
+ success: function (t) {
+ t.confirm && getApp().request.post("/api/weshop/order/confirmOrder/" + os.stoid + "/" + o + "/" + getApp().globalData.user_id, {
+ success: function (e) {
+ if (e.data.code == 0) {
+ th.setData({})
+ }
+ }
+ })
+ }
+ });
+ },
+
+
+ //---------联系客服------------
+ contactService: function () {
+ getApp().con_Service();
+ },
+
+ //---------联系微信客服------------
+ con_weixin: function () {
+ getApp().con_wx(this);
+ },
+
+ //使用
+ set_bn_commission: function () {
+ var th = this;
+ th.setData({ bn_use_commission: !th.data.bn_use_commission });
+ th.calculatePrice2();
+ },
+
+ //-- 查看物流 --
+ go_wuliu: function (e) {
+ getApp().go_wuliu(e);
+ },
+ //去凑单
+ qcd() {
+ getApp().goto("/pages/index/index/index");
+ },
diff --git a/packageC/pages/presell/cart/cart.wxml b/packageC/pages/presell/cart/cart.wxml
index 3a03245..4145960 100644
--- a/packageC/pages/presell/cart/cart.wxml
+++ b/packageC/pages/presell/cart/cart.wxml
@@ -236,12 +236,12 @@
+ wx:if="{{(selected_quan_list && selected_quan_list.length>0) || (get_by_quan_list && get_by_quan_list.length>0 && exp_type==0)}}">
优惠券
{{(selected_quan_list?selected_quan_list.length:0)+
- (get_by_quan_list?get_by_quan_list.length:0)}}张可用
+ ( (get_by_quan_list && exp_type==0)?get_by_quan_list.length:0)}}张可用
diff --git a/packageC/pages/presell/cart/cart2.js b/packageC/pages/presell/cart/cart2.js
index b9bf2d3..81d77c8 100644
--- a/packageC/pages/presell/cart/cart2.js
+++ b/packageC/pages/presell/cart/cart2.js
@@ -1,3435 +1,3767 @@
//预售全款
var t = getApp(), app = t, a = t.request, e = require("../../../../utils/common.js"),
- s = require("../../../../utils/util.js"), ut = s, to = getApp();
+ 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");
const t_pay = require("../../../../utils/pay2.js");
-
+
Page({
- data: {
- 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: 1, //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: {},
-
- dis_config:null,
- bn_use_commission:0, //是不是使用佣金
- same_ok:1,
- appoint_pick_keyid: '',
- bconfig:null,
- showFold:true,
-
- is_fwk:0, //-- 判断是不是服务卡项订单 --
-
- //-- 订单促销判断积累 ---2024-2-20
- order_prom_map_ck: {},
- //能不能使用订单促销
- can_use_ord_prom:{},
- //存储订单促销的取价,按照门店进行索引
- show_ord_prom:{},
- sameCityExp_off:0, //未达到起送价
- sameCityExp_info:'',//未达到起送价提示信息
- },
-
-
-
- onReady() {
-
- setTimeout(() => {
- wx.createSelectorQuery().selectAll(".showArea, .hideArea").boundingClientRect(res => {
- if (res.length != 0) {
- this.setData({
- showFold: res[0].height < res[1].height,
- });
- };
-
- }).exec();
- }, 1000);
-
- },
-
- clickCollapse() {
- this.setData({
- flag: !this.data.flag,
- })
- },
- onLoad: function (t) {
-
- //定义第一次进入
- this.data.fir_in=1;
-
- 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) {
- }
- });
- getApp().getConfig2(function (e) {
- th.setData({
- bconfig: e
- });
- }, 1);
- //判断是不是佣金抵扣
- getApp().is_distribut(this);
-
- var gg = to.get_b_now();
- if(gg.fwk){
- this.setData({is_fwk: 1});
- }
-
-
- },
- onUnload: function () {
- this.setData({ isclose: 1 })
- },
- onHide: function () {
- this.setData({
- isget_by_quan: {},
- is_no_by: {},
- is_by: {}
- })
- },
-
- //----------子页返回父页触发----------
- onShow: function () {
- var th = this;
- //判断是不是第一次进入
- if(this.data.fir_in){
- this.data.fir_in=0;
- }else{
- //富友支付插件
- var fy= ut.fy_back('',0,function (){
- var cps = getCurrentPages();
- if (cps.length > 1) {
- wx.navigateBack({ delta: 1 })
- } else {
- getApp().goto("/pages/index/index/index");
- }
-
- })
- if(fy) return false;
- util_pay.set_fir();
- t_pay.set_fir();
+ data: {
+ 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: 1, //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: {},
+
+ dis_config: null,
+ bn_use_commission: 0, //是不是使用佣金
+ same_ok: 1,
+ appoint_pick_keyid: '',
+ bconfig: null,
+ showFold: true,
+
+ is_fwk: 0, //-- 判断是不是服务卡项订单 --
+
+ //-- 订单促销判断积累 ---2024-2-20
+ order_prom_map_ck: {},
+ //能不能使用订单促销
+ can_use_ord_prom: {},
+ //存储订单促销的取价,按照门店进行索引
+ show_ord_prom: {},
+ sameCityExp_off: 0, //未达到起送价
+ sameCityExp_info: '',//未达到起送价提示信息
+ first_entry: 0,//进入次数,如果是第一次进入,进行判断是否进行优惠券是否直接使用
+ def_coupon1: null,//购物车优惠券列表
+ def_coupon2: null,//直接购买优惠券列表
+ def_coupon3: null,//购物车包邮券列表
+ def_coupon4: null,//直接购买包邮券列表
+ },
- let err_url="/pages/user/order_list/order_list";
- let ok_url="/packageG/pages/payment/pay_success/pay_success?type=2&order_sn=" + this.data.ok_order_sn;
- if(th.data.is_fwk){
- err_url='/pages/user/order_list/order_list?index=2&tabindex=1';
- ok_url="/packageG/pages/payment/pay_success/pay_success?card=1&order_id=" + this.data.order_id;
- }
- //-- 通联的第三方支付的返回优化 --
- ut.is_pay_ok(th.data.ok_order_sn,ok_url,err_url,function (){
- if(!th.data.ok_order_sn) return false;
+ onReady() {
- let ord_url='';
- let ord_req={};
+ setTimeout(() => {
+ wx.createSelectorQuery().selectAll(".showArea, .hideArea").boundingClientRect(res => {
+ if (res.length != 0) {
+ this.setData({
+ showFold: res[0].height < res[1].height,
+ });
+ };
- //如果是服务卡项的时候
- if(th.data.is_fwk){
- ord_url="/api/weshop/recharge/user/page";
- ord_req={store_id:os.stoid,order_sn:th.data.ok_order_sn,user_id:getApp().globalData.user_id};
- }else{
- ord_url="/api/weshop/order/page"
- ord_req={store_id:os.stoid,parent_sn:th.data.ok_order_sn};
- }
+ }).exec();
+ }, 1000);
- getApp().request.promiseGet(ord_url,
- {data:ord_req}).then(res=>{
-
- console.log(ord_url);
- console.log(ord_req);
- console.log(res);
-
-
- if(ut.ajax_ok(res)){
- var item=res.data.data.pageData[0];
- if(item.pay_status==1){
- //支付支付,返回首页
- ut.m_toast('支付成功');
- setTimeout(()=>{
- getApp().re_to(ok_url);
- },1000)
-
- }else{
- //支付支付,返回首页
- ut.m_toast('支付失败');
- setTimeout(()=>{
- getApp().re_to(err_url);
- },1000)
- }
- }
- })
- });
- }
+ },
- this.setData({
- show_ord_prom:{},
- can_use_ord_prom:{}
- })
+ clickCollapse() {
+ this.setData({
+ flag: !this.data.flag,
+ })
+ },
+ onLoad: function (t) {
+
+ //定义第一次进入
+ this.data.fir_in = 1;
+
+ 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) {
+ }
+ });
+ getApp().getConfig2(function (e) {
+ th.setData({
+ bconfig: e
+ });
+ }, 1);
+ //判断是不是佣金抵扣
+ getApp().is_distribut(this);
+
+ var gg = to.get_b_now();
+ if (gg.fwk) {
+ this.setData({ is_fwk: 1 });
+ }
- th.data.g_cart_q_time = null;
- if (th.data.isclose == 0) {
- wx.navigateTo({
- url: "/pages/index/index/index"
- })
+ },
+ onUnload: function () {
+ this.setData({ isclose: 1 })
+ },
+ onHide: function () {
+ this.setData({
+ isget_by_quan: {},
+ is_no_by: {},
+ is_by: {}
+ })
+ },
+ //----------子页返回父页触发----------
+ onShow: function () {
+ var th = this;
+ //判断是不是第一次进入
+ if (this.data.fir_in) {
+ this.data.fir_in = 0;
+ } else {
+ //富友支付插件
+ var fy = ut.fy_back('', 0, function () {
+ var cps = getCurrentPages();
+ if (cps.length > 1) {
+ wx.navigateBack({ delta: 1 })
} 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,show_submit:0 });
- if (th.data.is_b_now == 1) {
- if (th.data.bn_goods) {
- th.setData({ add_back: 1,same_ok:1 });
- //th.calculatePrice2();
- }
- } else {
- if (th.data.cartlist) {
- th.setData({ add_back: 1 });
- //th.calculatePrice();
- }
- }
- } else {
- th.setData({ user_addr: ie,show_submit:0 });
- }
- 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().goto("/pages/index/index/index");
}
- //先获取是否有关闭使用优惠券
- getApp().getConfig2(function (ee) {
- var json_d = JSON.parse(ee.switch_list);
+ })
+ if (fy) return false;
+ util_pay.set_fir();
+ t_pay.set_fir();
- //测试强行写死,后面一定要删除
- //json_d.pickupway=2;
+ let err_url = "/pages/user/order_list/order_list";
+ let ok_url = "/packageG/pages/payment/pay_success/pay_success?type=2&order_sn=" + this.data.ok_order_sn;
- th.data.json_d = json_d;
- th.data.ispt_goods = json_d.ispt_goods; //是不是平摊到单品的控制参数赋值
- var is_default_logistics = json_d.is_default_logistics;
- var is_same_city = json_d.is_same_city;
+ if (th.data.is_fwk) {
+ err_url = '/pages/user/order_list/order_list?index=2&tabindex=1';
+ ok_url = "/packageG/pages/payment/pay_success/pay_success?card=1&order_id=" + this.data.order_id;
+ }
- 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,
- is_same_city: is_same_city,
- appoint_pick_keyid: json_d.appoint_pick_keyid
- });
+ //-- 通联的第三方支付的返回优化 --
+ ut.is_pay_ok(th.data.ok_order_sn, ok_url, err_url, function () {
+ if (!th.data.ok_order_sn) return false;
- 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));
- }
+ let ord_url = '';
+ let ord_req = {};
- }, 1);
+ //如果是服务卡项的时候
+ if (th.data.is_fwk) {
+ ord_url = "/api/weshop/recharge/user/page";
+ ord_req = { store_id: os.stoid, order_sn: th.data.ok_order_sn, user_id: getApp().globalData.user_id };
+ } else {
+ ord_url = "/api/weshop/order/page"
+ ord_req = { store_id: os.stoid, parent_sn: th.data.ok_order_sn };
+ }
+
+ getApp().request.promiseGet(ord_url,
+ { data: ord_req }).then(res => {
+
+ console.log(ord_url);
+ console.log(ord_req);
+ console.log(res);
+
+
+ if (ut.ajax_ok(res)) {
+ var item = res.data.data.pageData[0];
+ if (item.pay_status == 1) {
+ //支付支付,返回首页
+ ut.m_toast('支付成功');
+ setTimeout(() => {
+ getApp().re_to(ok_url);
+ }, 1000)
+
+ } else {
+ //支付支付,返回首页
+ ut.m_toast('支付失败');
+ setTimeout(() => {
+ getApp().re_to(err_url);
+ }, 1000)
+ }
+ }
+ })
+ });
+ }
+
+ this.setData({
+ show_ord_prom: {},
+ can_use_ord_prom: {}
+ })
+
+
+ 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, show_submit: 0 });
+ if (th.data.is_b_now == 1) {
+ if (th.data.bn_goods) {
+ th.setData({ add_back: 1, same_ok: 1 });
+ //th.calculatePrice2();
+ }
+ } else {
+ if (th.data.cartlist) {
+ th.setData({ add_back: 1 });
+ //th.calculatePrice();
+ }
+ }
+ } else {
+ th.setData({ user_addr: ie, show_submit: 0 });
+ }
+ 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);
+
+ //测试强行写死,后面一定要删除
+ //json_d.pickupway=2;
+
+ th.data.json_d = json_d;
+ th.data.ispt_goods = json_d.ispt_goods; //是不是平摊到单品的控制参数赋值
+ var is_default_logistics = json_d.is_default_logistics;
+ var is_same_city = json_d.is_same_city;
+
+ 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,
+ is_same_city: is_same_city,
+ appoint_pick_keyid: json_d.appoint_pick_keyid
+ });
+
+ 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);
- },
+ //-------------------获取物流---------------
+ 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];
- }
+ //------获取会员收货地址-----
+ 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);
+ }
+ });
+ },
- if (item == undefined) item = null;
- if (!item) th.setData({ user_addr: null }); //地址为空的时候,要清空,因为返回的时候,有缓存
+ //----------------展示页面,是再获取用户信息之后--------------
+ 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();
+ });
- 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 });
- }
- }
- });
-
- },
+ //获取提现金额
+ 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:async function (e) {
- var th = this;
- th.data.gg = to.get_b_now();
+ },
- //定义变量
- 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;
- }
+ //-----获取立即购买的商品信息,入口----
+ get_buy_goods: async function (e) {
+ var th = this;
+ th.data.gg = to.get_b_now();
+
+ //定义变量
+ 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 (gg.fwk) {
+ th.get_card_detail(act, prelist, gg);
+ }
+ //如果是商品的时候
+ else {
+ th.get_goods_detail(act, prelist, gg);
+ }
+ },
+
+ //-- 获取到服务卡项的详情 --
+ get_card_detail(act, prelist, gg) {
+ var th = this;
+ //--------如果goods_id一样,就是要立即购买-----
+ var cd_url = "/api/weshop/serviceCard/get/" + oo.stoid + "/" + th.data.gg.goods_id
+ getApp().request.get(cd_url, {
+ success: async function (t) {
+ var gd = t.data.data;
+ if (!gd) return false;
+
+ //-- 如果商品有同城配送的参数的时候,一件代发商品不能显示同城配送按钮 --
+ if (gd.is_same_city && th.data.is_same_city && gd.whsle_id <= 0) {
- var url = "/api/weshop/marketing/marketingPresellList/get/" + os.stoid + "/" + gg.presell_list_id;
- await getApp().request.promiseGet(url, {}).then(res => {
+ await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + th.data.gg.pick_id, {}).then(res => {
if (res.data.code == 0) {
- prelist = res.data.data;
+ var pk = res.data.data;
+ if (pk && pk.is_same_city) {
+ th.setData({ show_same_city: 1 })
+ }
}
- })
- if (!prelist) {
- wx.showToast({ title: "未找到商品", icon: 'none', duration: 3000 });
- return false;
+ })
}
- //如果是服务卡是时候
- if(gg.fwk){
- th.get_card_detail(act, prelist,gg);
- }
- //如果是商品的时候
- else{
- th.get_goods_detail(act, prelist,gg);
- }
- },
+ t.data.data.original_img = oo.imghost + t.data.data.imgUrl;
+ t.data.data['buynum'] = th.data.gg.goods_num;
+ t.data.data.prom_id = th.data.gg.prom_id;
+ t.data.data.prom_type = 8;
+ t.data.data.goods_name = t.data.data.serviceName;
- //-- 获取到服务卡项的详情 --
- get_card_detail(act, prelist,gg){
- var th = this;
- //--------如果goods_id一样,就是要立即购买-----
- var cd_url="/api/weshop/serviceCard/get/" + oo.stoid + "/" + th.data.gg.goods_id
- getApp().request.get(cd_url, {
- success: async function (t) {
- var gd = t.data.data;
- if (!gd) return false;
-
- //-- 如果商品有同城配送的参数的时候,一件代发商品不能显示同城配送按钮 --
- if(gd.is_same_city && th.data.is_same_city && gd.whsle_id<=0){
-
- await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+th.data.gg.pick_id, {}).then(res=>{
- if(res.data.code==0){
- var pk=res.data.data;
- if(pk && pk.is_same_city){
- th.setData({show_same_city:1})
- }
- }
- })
- }
- t.data.data.original_img = oo.imghost + t.data.data.imgUrl;
- t.data.data['buynum'] = th.data.gg.goods_num;
- t.data.data.prom_id=th.data.gg.prom_id;
- t.data.data.prom_type=8;
- t.data.data.goods_name=t.data.data.serviceName;
-
-
- //这个位置要拿活动的预售价
- t.data.data.shop_price = prelist.presell_money;
- th.setData({
- bn_goods: t.data.data,
- bn_pickname: gg.pick_name,
- bn_pick: gg.pick_id,
- act: act,
- });
-
- //计算价格
- th.calculatePrice2();
-
- },
+ //这个位置要拿活动的预售价
+ t.data.data.shop_price = prelist.presell_money;
+ th.setData({
+ bn_goods: t.data.data,
+ bn_pickname: gg.pick_name,
+ bn_pick: gg.pick_id,
+ act: act,
});
- },
-
- //-- 获取到商品的详情 --
- get_goods_detail(act, prelist,gg){
- var th = this;
- //--------如果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;
-
- //-- 如果商品有同城配送的参数的时候,一件代发商品不能显示同城配送按钮 --
- if(gd.is_same_city && th.data.is_same_city && gd.whsle_id<=0){
-
- await getApp().request.promiseGet("/api/weshop/pickup/get/"+os.stoid+"/"+th.data.gg.pick_id, {}).then(res=>{
- if(res.data.code==0){
- var pk=res.data.data;
- if(pk && pk.is_same_city){
- th.setData({show_same_city:1})
- }
- }
- })
- }
- t.data.data.original_img = oo.imghost + t.data.data.original_img;
- t.data.data['buynum'] = th.data.gg.goods_num;
- t.data.data.prom_id=th.data.gg.prom_id;
- t.data.data.prom_type=8;
+ //计算价格
+ th.calculatePrice2();
+ },
+ });
+ },
- var distr_t = 0, et = 0;
+ //-- 获取到商品的详情 --
+ get_goods_detail(act, prelist, gg) {
+ var th = this;
+ //--------如果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;
- if(t.data.data.is_minishop==1 && getApp().is_sp_hao()){
+ //-- 如果商品有同城配送的参数的时候,一件代发商品不能显示同城配送按钮 --
+ if (gd.is_same_city && th.data.is_same_city && gd.whsle_id <= 0) {
- if(t.data.data.distr_type==1 || gg.pick_dis==1) {
- wx.showToast({
- title: "视频号仅支持物流",
- icon: 'none',
- duration: 2000
- })
+ await getApp().request.promiseGet("/api/weshop/pickup/get/" + os.stoid + "/" + th.data.gg.pick_id, {}).then(res => {
+ if (res.data.code == 0) {
+ var pk = res.data.data;
+ if (pk && pk.is_same_city) {
+ th.setData({ show_same_city: 1 })
+ }
+ }
+ })
+ }
- setTimeout(function(){
- wx.navigateBack({delta: 1})
- },1000)
+ t.data.data.original_img = oo.imghost + t.data.data.original_img;
+ t.data.data['buynum'] = th.data.gg.goods_num;
+ t.data.data.prom_id = th.data.gg.prom_id;
+ t.data.data.prom_type = 8;
- return false
- }
- t.data.data.distr_type=2;
- th.setData({show_same_city:0})
+ var distr_t = 0, et = 0;
- }
+ if (t.data.data.is_minishop == 1 && getApp().is_sp_hao()) {
- if (t.data.data.distr_type == 0) {
- distr_t = th.data.gg.pick_dis;
- } else {
- distr_t = t.data.data.distr_type;
- }
+ if (t.data.data.distr_type == 1 || gg.pick_dis == 1) {
+ wx.showToast({
+ title: "视频号仅支持物流",
+ icon: 'none',
+ duration: 2000
+ })
- 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;
- }
+ setTimeout(function () {
+ wx.navigateBack({ delta: 1 })
+ }, 1000)
- if(th.data.show_same_city==1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2 ){
- et = 2;
- }
+ return false
+ }
+ t.data.data.distr_type = 2;
+ th.setData({ show_same_city: 0 })
- var m_wind = 0, def_exp_code = getApp().globalData.userInfo.def_exp_code;
- if (et == 0 && def_exp_code && !th.data.is_default_logistics) {
- 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;
- }
+ if (t.data.data.distr_type == 0) {
+ distr_t = th.data.gg.pick_dis;
+ } else {
+ distr_t = t.data.data.distr_type;
+ }
- //---是不是购买等级卡成功的返回---等级卡显示的判断---
- 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 });
- }
- }
+ 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;
+ }
+ if (th.data.show_same_city == 1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2) {
+ et = 2;
+ }
- //如果有开启佣金抵扣,同时会员是分销商的时候
- if(getApp().globalData.userInfo.is_distribut
- && th.data.dis_config && th.data.dis_config.is_yongjin_dk){
- var fir_num=0;
- var sec_num=0;
- var thi_num=0;
- if(th.data.dis_config.pattern==1){
- fir_num=(t.data.data.fir_rate || 0)*gg.goods_num;
- sec_num=(t.data.data.sec_rate || 0)*gg.goods_num;
- thi_num=(t.data.data.thi_rate || 0)*gg.goods_num;
- }else{
- fir_num=parseFloat((t.data.data.commission || 0) *gg.goods_num*(th.data.dis_config.firstRate || 0)/100).toFixed(2);
- sec_num=parseFloat((t.data.data.commission || 0)*gg.goods_num*(th.data.dis_config.secondRate || 0)/100).toFixed(2);
- thi_num=parseFloat((t.data.data.commission || 0)*gg.goods_num*(th.data.dis_config.thirdRate || 0)/100).toFixed(2);
- }
- var c_num=getApp().get_commission(fir_num,sec_num,thi_num,th);
-
- gd.use_commission=c_num;
- t.data.data.use_commission=c_num;
- }
+ var m_wind = 0, def_exp_code = getApp().globalData.userInfo.def_exp_code;
+ if (et == 0 && def_exp_code && !th.data.is_default_logistics) {
+ 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;
+ }
+ }
+ }
- //这个位置要拿活动的预售价
- t.data.data.shop_price_y = t.data.data.shop_price;
- t.data.data.shop_price = prelist.presell_money;
+ if (th.data.bn_goods) {
+ et = th.data.bn_exp_type;
+ m_wind = th.data.index;
+ }
- 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 + "";
- }else{
- t.data.data.is_xz_yh=1;
- }
+ //---是不是购买等级卡成功的返回---等级卡显示的判断---
+ 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 });
+ }
+ }
+
+
+ //如果有开启佣金抵扣,同时会员是分销商的时候
+ if (getApp().globalData.userInfo.is_distribut
+ && th.data.dis_config && th.data.dis_config.is_yongjin_dk) {
+ var fir_num = 0;
+ var sec_num = 0;
+ var thi_num = 0;
+ if (th.data.dis_config.pattern == 1) {
+ fir_num = (t.data.data.fir_rate || 0) * gg.goods_num;
+ sec_num = (t.data.data.sec_rate || 0) * gg.goods_num;
+ thi_num = (t.data.data.thi_rate || 0) * gg.goods_num;
+ } else {
+ fir_num = parseFloat((t.data.data.commission || 0) * gg.goods_num * (th.data.dis_config.firstRate || 0) / 100).toFixed(2);
+ sec_num = parseFloat((t.data.data.commission || 0) * gg.goods_num * (th.data.dis_config.secondRate || 0) / 100).toFixed(2);
+ thi_num = parseFloat((t.data.data.commission || 0) * gg.goods_num * (th.data.dis_config.thirdRate || 0) / 100).toFixed(2);
+ }
+ var c_num = getApp().get_commission(fir_num, sec_num, thi_num, th);
+
+ gd.use_commission = c_num;
+ t.data.data.use_commission = c_num;
+
+ }
+
+ //这个位置要拿活动的预售价
+ t.data.data.shop_price_y = t.data.data.shop_price;
+ t.data.data.shop_price = prelist.presell_money;
+ 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 + "";
+ }
+ else
+ {
+ t.data.data.is_xz_yh=1;
+ }
+ th.data.old_bn_goods = ut.deep_cp(t.data.data);
- th.data.old_bn_goods=ut.deep_cp(t.data.data);
+ 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.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();
+ },
+ });
+ },
- //计算价格
- 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 });
+ }
+ },
- },
- });
- },
- //---------------检查是否有收货地址-------------------
- 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();
+ //---------计算立即购买----------
+ calculatePrice2: async function () {
+ var th = this, good = this.data.bn_goods;
+ if (!good) return false;
+ //搭配的计算要用购物的车计算方法
+ // if (good.prom_type == 5) {
+ // th.calculatePrice();
+ // return false;
+ // }
+
+ th.setData({ dis_btn: 1, submit: 1 })
+ //this.data.submit=0;
+
+ wx.showLoading({
+ title: "处理中.", mask: true
+ })
+ //-----------计算商品总价--------------
+ 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;
+ }
+
+ var o_shipping_price = 0, goods_weight = -1, goods_piece = -1;
+ var out_of_weight = null; //超出多少重量
+
+ //---如果有选择优惠券的情况下---
+ 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;
+ }
+ })
+ }
+ }
+
+ //-----------------支付价,优惠券不减物流-----------------
+ 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);
+
+ //-- 判断订单优惠的叠加 --
+ var ord_prom = null;
+ //var o_condition = allpice;
+ if (th.data.act.is_useorderyh) {
+ // await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
+ // data: { store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id }
+ // }).then(res => {
+ // if (res.data.code == 0) {
+ // ord_prom = res.data.data;
+ // }
+ // })
+
+ th.set_by_now_ord_prom(th.data.bn_goods);
+ th.data.order_prom_map_ck[bn_pick].goods_price_all = o_condition;
+ ord_prom = await th.get_cur_ord_prom(bn_pick);
+ }
+
+ //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮,同时商品购买时候,服务卡项购买不计算运费----------
+ if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_past != 1 && th.data.act.goods_type == 0) {
+ //看是不是有调用过包邮券
+ if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1 && !th.data.can_use_ord_prom[th.data.bn_pick]) {
+ 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);
}
- }), !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++;
- }
+ if (arr) {
+ th.setData({ get_by_quan_list: arr, def_coupon3: arr });
}
- //-- 包邮券 --
- 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++;
- }
+ th.data.isget_by_quan[th.data.bn_pick] = 1;
+ }
+ })
+ }
+
+ //要让包邮券消失,在使用非实收包邮券的时候
+ if (th.data.can_use_ord_prom[th.data.bn_pick]) {
+ th.setData({ get_by_quan_list: null });
+ th.data.isget_by_quan[th.data.bn_pick] = 0;
+ }
+
+ var shipping_price = 0;
+ if (good.is_free_shipping == 0) {
+ //-- 在没有使用包邮券的时候 --
+ if (!quan_no || !th.data.using_quan[bn_pick].isby) {
+
+ var gd_arr_list = [];
+ gd_arr_list.push(good);
+ if (th.data.buy_now_gift_goods) {
+ gd_arr_list = [...gd_arr_list, ...th.data.buy_now_gift_goods];
+ }
+
+ var user_addr = th.data.user_addr;
+ var req_d = {
+ province: user_addr.province,
+ city: user_addr.city,
+ district: user_addr.district,
+ wuliu: parseFloat(parseFloat(allpice) - cut_price - quan_price).toFixed(2),
+ store_id: os.stoid
+ }
+ var back_data = null;
+
+ if (!ord_prom || ord_prom.is_post_temp) {
+ if (th.data.act.is_post_temp) {
+ await getApp().request.promisePost("/api/weshop/order/areaFreight", {
+ is_json: 1, data: req_d
+ }).then(rs => {
+ if (rs.data.code == 0) back_data = rs.data.data;
+ });
}
- var set_txt = "cartlist[" + iter + "].can_num";
- th.setData({ [set_txt]: num });
- }
- },
+ }
+ var cut_good_weight = 0;
+ for (let i in gd_arr_list) {
+ let item = gd_arr_list[i];
- //---------计算立即购买----------
- calculatePrice2: async function () {
- var th = this, good = this.data.bn_goods;
- if (!good) return false;
- //搭配的计算要用购物的车计算方法
- // if (good.prom_type == 5) {
- // th.calculatePrice();
- // return false;
- // }
+ if (back_data && back_data['is_by_all'] && (!back_data.no_free_goods || back_data.no_free_goods.indexOf(item.goods_id) == -1)) {
- th.setData({dis_btn:1,submit:1})
- //this.data.submit=0;
+ if (item['exp_sum_type'] == 2 && back_data.weight_free > 0) {
+ if (goods_weight < 0) goods_weight = 0;
+ cut_good_weight += item['weight'] * item['buynum'];
+ goods_weight += item['weight'] * item['buynum'];
- wx.showLoading({
- title: "处理中.",mask:true
- })
- //-----------计算商品总价--------------
- 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;
- }
-
- var o_shipping_price = 0, goods_weight = -1, goods_piece = -1;
- var out_of_weight = null; //超出多少重量
-
- //---如果有选择优惠券的情况下---
- 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;
- }
- })
- }
- }
-
- //-----------------支付价,优惠券不减物流-----------------
- 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);
-
- //-- 判断订单优惠的叠加 --
- var ord_prom=null;
- //var o_condition=allpice;
- if (th.data.act.is_useorderyh) {
- // await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
- // data: { store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id }
- // }).then(res => {
- // if (res.data.code == 0) {
- // ord_prom = res.data.data;
- // }
- // })
-
- th.set_by_now_ord_prom(th.data.bn_goods);
- th.data.order_prom_map_ck[bn_pick].goods_price_all=o_condition;
- ord_prom=await th.get_cur_ord_prom(bn_pick);
- }
+ }
+ if (back_data.weight_free > 0) {
+ out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
+ }
+ continue;
+ }
- //-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮,同时商品购买时候,服务卡项购买不计算运费----------
- if (th.data.user_addr != null && th.data.bn_exp_type == 0 && good.is_past != 1 && th.data.act.goods_type==0) {
- //看是不是有调用过包邮券
- if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1 && !th.data.can_use_ord_prom[th.data.bn_pick] ) {
- 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;
- }
- })
- }
-
- //要让包邮券消失,在使用非实收包邮券的时候
- if(th.data.can_use_ord_prom[th.data.bn_pick]){
- th.setData({ get_by_quan_list: null });
- th.data.isget_by_quan[th.data.bn_pick] = 0;
- }
-
- var shipping_price =0;
- if(good.is_free_shipping == 0 ) {
- //-- 在没有使用包邮券的时候 --
- if (!quan_no || !th.data.using_quan[bn_pick].isby) {
-
- var gd_arr_list = [];
- gd_arr_list.push(good);
- if (th.data.buy_now_gift_goods) {
- gd_arr_list = [...gd_arr_list, ...th.data.buy_now_gift_goods];
- }
-
- var user_addr = th.data.user_addr;
- var req_d = {
- province: user_addr.province,
- city: user_addr.city,
- district: user_addr.district,
- wuliu: parseFloat(parseFloat(allpice) - cut_price - quan_price).toFixed(2),
- store_id: os.stoid
- }
- var back_data = null;
-
- if (!ord_prom || ord_prom.is_post_temp) {
- if (th.data.act.is_post_temp) {
- await getApp().request.promisePost("/api/weshop/order/areaFreight", {
- is_json: 1, data: req_d
- }).then(rs => {
- if (rs.data.code == 0) back_data = rs.data.data;
- });
- }
- }
-
- var cut_good_weight = 0;
- for (let i in gd_arr_list) {
- let item = gd_arr_list[i];
-
- if (back_data && back_data['is_by_all'] && (!back_data.no_free_goods || back_data.no_free_goods.indexOf(item.goods_id) == -1)) {
-
- if (item['exp_sum_type'] == 2 && back_data.weight_free > 0) {
- if (goods_weight < 0) goods_weight = 0;
- cut_good_weight += item['weight'] * item['buynum'];
- goods_weight += item['weight'] * item['buynum'];
-
- }
- if (back_data.weight_free > 0) {
- out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
- }
- continue;
- }
-
- switch (item['exp_sum_type']) {
- case 1:
- //统一运费
- o_shipping_price += item['uniform_exp_sum'];
- break;
- case 2:
- if (goods_weight < 0) goods_weight = 0;
- //累积商品重量 每种商品的重量 * 数量
- goods_weight += item['weight'] * item['buynum'];
-
- if (back_data && back_data.is_by_all && !back_data.no_free_goods) {
- cut_good_weight += item['weight'] * item['buynum'];
- if (back_data.weight_free > 0) {
- out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
- }
- }
- break;
- case 3:
- if (goods_piece < 0) goods_piece = 0;
- //累积商品数量
- goods_piece += item['buynum'];
- break;
- }
- }
-
- //如果是正值的时候
- if (out_of_weight >= 0) out_of_weight = -cut_good_weight;
- else out_of_weight = -back_data.weight_free * 1000;
-
-
- var code = "";
- if (th.data.wu_arr && th.data.wu_arr[th.data.index]) code = th.data.wu_arr[th.data.index].code;
-
- //--------------开始计算物流------------------
- var shipping_price = 0;
- // ut.calculatewuliu(code, o_shipping_price, goods_weight, out_of_weight,
- // goods_piece, th.data.user_addr, back_data, rs);
- var w_data = {
- store_id: os.stoid, code: code,
- o_shipping_price: o_shipping_price,
- goods_weight: goods_weight,
- out_of_weight: out_of_weight, goods_piece: goods_piece,
- user_addr_province: th.data.user_addr.province,
- user_addr_city: th.data.user_addr.city,
- user_addr_district: th.data.user_addr.district,
- is_by_all: back_data && back_data.is_by_all ? 1 : 0,
- no_free_goods: back_data && back_data.no_free_goods && back_data.no_free_goods.length > 0 ? 1 : 0,
- }
-
- var is_ok = 0;
- await getApp().request.promisePost('/api/weshop/order/getOrderWuLiPrice', {
- data: w_data,
- is_json: 1
- }).then(res => {
- if (res.data.code == 0) {
- shipping_price = res.data.data;
- is_ok = 1;
- }
- })
- if (!is_ok) {
- wx.hideLoading();
- wx.showToast({
- title: "计算物流错误", icon: 'none', duration: 2000
- })
- //th.setData({ show_submit:0 });
- th.setData({show_submit:1, submit: 0,same_ok:0 })
-
- return false;
- }
-
-
- 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 if(th.data.bn_exp_type==1) {
- var wl_txt = "formData.shipping_price";
- th.setData({ [wl_txt]: 0, })
- }
+ switch (item['exp_sum_type']) {
+ case 1:
+ //统一运费
+ o_shipping_price += item['uniform_exp_sum'];
+ break;
+ case 2:
+ if (goods_weight < 0) goods_weight = 0;
+ //累积商品重量 每种商品的重量 * 数量
+ goods_weight += item['weight'] * item['buynum'];
- 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, })
- }
+ if (back_data && back_data.is_by_all && !back_data.no_free_goods) {
+ cut_good_weight += item['weight'] * item['buynum'];
+ if (back_data.weight_free > 0) {
+ out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
+ }
}
+ break;
+ case 3:
+ if (goods_piece < 0) goods_piece = 0;
+ //累积商品数量
+ goods_piece += item['buynum'];
+ break;
+ }
+ }
+
+ //如果是正值的时候
+ if (out_of_weight >= 0) out_of_weight = -cut_good_weight;
+ else out_of_weight = -back_data.weight_free * 1000;
+
+
+ var code = "";
+ if (th.data.wu_arr && th.data.wu_arr[th.data.index]) code = th.data.wu_arr[th.data.index].code;
+
+ //--------------开始计算物流------------------
+ var shipping_price = 0;
+ // ut.calculatewuliu(code, o_shipping_price, goods_weight, out_of_weight,
+ // goods_piece, th.data.user_addr, back_data, rs);
+ var w_data = {
+ store_id: os.stoid, code: code,
+ o_shipping_price: o_shipping_price,
+ goods_weight: goods_weight,
+ out_of_weight: out_of_weight, goods_piece: goods_piece,
+ user_addr_province: th.data.user_addr.province,
+ user_addr_city: th.data.user_addr.city,
+ user_addr_district: th.data.user_addr.district,
+ is_by_all: back_data && back_data.is_by_all ? 1 : 0,
+ no_free_goods: back_data && back_data.no_free_goods && back_data.no_free_goods.length > 0 ? 1 : 0,
+ }
+
+ var is_ok = 0;
+ await getApp().request.promisePost('/api/weshop/order/getOrderWuLiPrice', {
+ data: w_data,
+ is_json: 1
+ }).then(res => {
+ if (res.data.code == 0) {
+ shipping_price = res.data.data;
+ is_ok = 1;
+ }
+ })
+ if (!is_ok) {
+ wx.hideLoading();
+ wx.showToast({
+ title: "计算物流错误", icon: 'none', duration: 2000
+ })
+ //th.setData({ show_submit:0 });
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0 })
+ return false;
+ }
+
+
+ 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 if (th.data.bn_exp_type == 1) {
+ 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 order_prom_amount = 0;
+ var order_prom_id = 0;
+ var order_prom_txt1 = "formData.order_prom_id";
+ var order_prom_txt2 = "formData.order_prom_amount";
+ if (ord_prom) {
+ if (!ord_prom.is_xz_yh || quan_price <= 0) {
+ 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:
+
+ var bs = 1;
+ if (ord_prom.is_bz) {
+ bs = Math.floor(o_condition / ord_prom.money);
+ }
+ order_m = o_condition - bs * ord_prom['expression'];//满额优惠金额
+ order_prom_amount = bs * ord_prom['expression'];
+ break;
+ }
+ }
+ //--订单优惠的显示--
+ if (order_prom_id > 0) {
+ th.setData({ [order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount })
+ }
+ } else {
+ th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 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 })
+
+
+ //判断是否同城配送,而且没有调用过
+ if (th.data.bn_exp_type == 2 && th.data.user_addr) {
+ var lon = 0; var lat = 0;
+ //-- 获取距离 --
+ await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {
+ is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address, store_id: os.stoid }
+ }).then(res => {
+ if (res.data.code == 0) {
+ var data = JSON.parse(res.data.data);
+ if (data.status == 0) {
+ lon = data.result.location.lng;
+ lat = data.result.location.lat;
+ }
+ }
+ })
+
+ var gd_w = good['weight'] * good['buynum'];
+ //-- 获取距离 --
+ var req_data = {
+ store_id: os.stoid,
+ order_amount: parseFloat(order_m),
+ lon: lon, lat: lat,
+ pickup_id: bn_pick,
+ goods_weight: gd_w
+ }
+
+ var is_next = 1;
+ //获取同城配送参数
+ await getApp().request.promisePost("/api/weshop/order/sameCityExp/getMoney", {
+ is_json: 1,
+ data: req_data
+ }).then(res => {
+ if (res.data.code == 0) {
+ var wl_txt = "formData.shipping_price";
+ th.setData({ [wl_txt]: res.data.data, })
+ th.setData({
+ sameCityExp_off: 0,
+ sameCityExp_info: ''
+ })
+ } else {
+ if (res.data.code == -2) { //未达到起送价
+ th.setData({
+ sameCityExp_off: 2,
+ sameCityExp_info: res.data.msg
+ })
+ } else {
+ th.setData({
+ sameCityExp_off: 1,
+ sameCityExp_info: res.data.msg
+ })
+ }
+ is_next = 0;
+ wx.showToast({
+ title: res.data.msg, icon: 'none', duration: 2000
+ })
+ }
+ })
+ if (!is_next) {
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0 })
+ return false
+ }
- var order_prom_amount = 0;
- var order_prom_id = 0;
- var order_prom_txt1 = "formData.order_prom_id";
- var order_prom_txt2 = "formData.order_prom_amount";
- if(ord_prom){
- if (!ord_prom.is_xz_yh || quan_price <= 0) {
- 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:
-
- var bs=1;
- if(ord_prom.is_bz){
- bs=Math.floor(o_condition/ord_prom.money);
- }
- order_m = o_condition - bs*ord_prom['expression'];//满额优惠金额
- order_prom_amount = bs*ord_prom['expression'];
- break;
- }
- }
- //--订单优惠的显示--
- if (order_prom_id > 0) {
- th.setData({ [order_prom_txt1]: order_prom_id, [order_prom_txt2]: order_prom_amount })
- }
- }else {
- th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 0 })
- }
+ th.data.lon = lon;
+ th.data.lat = lat;
+ th.data.bn_gd_w = gd_w;
+ th.data.bn_samecity_order_amount = req_data.order_amount;
+ }
- 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 })
-
-
- //判断是否同城配送,而且没有调用过
- if(th.data.bn_exp_type==2 && th.data.user_addr) {
- var lon=0;var lat=0;
- //-- 获取距离 --
- await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {
- is_json: 1, data: {address:th.data.user_addr.more_address+th.data.user_addr.address,store_id:os.stoid}
- }).then(res=>{
- if(res.data.code==0){
- var data= JSON.parse(res.data.data);
- if(data.status==0){
- lon=data.result.location.lng;
- lat=data.result.location.lat;
- }
- }
- })
+ 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";
- var gd_w = good['weight'] * good['buynum'];
- //-- 获取距离 --
- var req_data = {
- store_id: os.stoid,
- order_amount:parseFloat(order_m),
- lon: lon, lat: lat,
- pickup_id: bn_pick,
- goods_weight: gd_w
- }
-
- var is_next=1;
- //获取同城配送参数
- await getApp().request.promisePost("/api/weshop/order/sameCityExp/getMoney", {
- is_json: 1,
- data: req_data
- }).then(res => {
- if (res.data.code == 0) {
- var wl_txt = "formData.shipping_price";
- th.setData({ [wl_txt]: res.data.data, })
- th.setData({
- sameCityExp_off:0,
- sameCityExp_info:''
- })
- }else{
- if (res.data.code==-2) { //未达到起送价
- th.setData({
- sameCityExp_off:2,
- sameCityExp_info:res.data.msg
- })
- }else{
- th.setData({
- sameCityExp_off:1,
- sameCityExp_info:res.data.msg
- })
- }
- is_next=0;
- wx.showToast({
- title: res.data.msg, icon: 'none', duration: 2000
- })
- }
- })
- if(!is_next) {
- th.setData({show_submit:1, submit: 0,same_ok:0 })
- return false
- }
+ total_m = total_m.toFixed(2);
+ order_m = order_m.toFixed(2);
- th.data.lon=lon;
- th.data.lat=lat;
- th.data.bn_gd_w=gd_w;
- th.data.bn_samecity_order_amount=req_data.order_amount;
+ th.setData({ [atxt]: total_m, })
- }
+ var txt = "formData.user_money";
+ var txt2 = "formData.order_amount";
+ var txt3 = "formData.coupon_price";
- 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";
+ if (parseFloat(order_m) < parseFloat(th.data.bn_goods.use_commission)) {
- total_m = total_m.toFixed(2);
- order_m = order_m.toFixed(2);
+ if (th.data.bn_use_commission) {
+ wx.showToast({
+ title: '应付金额小于本单佣金,不可使用!',
+ icon: 'none',
+ duration: 2000
+ })
+ }
+
+ th.setData({
+ bn_use_commission: 0
+ })
+ }
+
+
+
+ var txt4 = "formData.use_commission";
+
+ if (th.data.bn_use_commission) {
+ order_m = (parseFloat(order_m) - parseFloat(th.data.bn_goods.use_commission)).toFixed(2);
+ th.setData({ [txt4]: th.data.bn_goods.use_commission })
+ }
+
+
+
+ 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, submit: 0, show_submit: 1, dis_btn: 0 })
+ } else {
+ order_m = parseFloat(order_m) - parseFloat(amoney);
+ order_m = order_m.toFixed(2);
+ th.setData({ [txt]: amoney, [txt2]: order_m, [txt3]: coupon_price, submit: 0, show_submit: 1, dis_btn: 0 })
+ }
+ } else {
+ th.setData({ [txt]: 0, [txt2]: order_m, [txt3]: coupon_price, submit: 0, show_submit: 1, dis_btn: 0 })
+ }
+ //优惠活动送积分
+ 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 });
+ }
+
+ //调用默认优惠券方法
+ th.def_coupon_fn()
+ wx.hideLoading();
- th.setData({ [atxt]: total_m, })
- var txt = "formData.user_money";
- var txt2 = "formData.order_amount";
- var txt3 = "formData.coupon_price";
+ },
- if(parseFloat(order_m) {
+ if (res.data.code == 0) {
+ goods.guide_name = res.data.data.salesman;
+ goods.guide_sn = res.data.data.salesman_no;
+ }
+ })
+ }
+
+ if (gg.groupchat_id) {
+ goods.groupchat_id = gg.groupchat_id
+ }
+ item.list.push(goods);
+
+ pdata = item;
+ var str = JSON.stringify(pdata);
+ console.log("支付数据");
+ console.log(str);
+ //return false;
+ wx.showLoading({
+ title: "加载中"
+ });
+ wx.request({
+ url: oo.url + '/api/weshop/recharge/saveRecharge',
+ 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) {
+ th.data.order_id = data.data.order_id;
+ th.data.ok_order_sn = data.data.order_sn;
+ // console.log('myyyyyyyyyyyyyyyyyy', data.data);
+ if (th.data.is_cart) {
+ var list = th.data.cartlist_y;
+ for (var i = 0; i < list.length; i++) {
+ //删除购物车
+ a.delete("/api/weshop/cartService/del/" + oo.stoid + "/" + list[i].id, {});
+ }
+ }
+ var order_amount = pdata.account;
+ //要进行判断,如果是用微信支付,就要跳转到支付界面
+ if (order_amount > 0) {
+ th.setData({
+ isclose: 0
+ });
- th.setData({
- bn_use_commission:0
+ t_pay.set_pay_url("/api/weshop/order/pay/createRechargeOrder")
+ t_pay.pay(
+ {
+ parentSn: data.data.order_sn,
+ store_id: oo.stoid
+ }, function () {
+ wx.showToast({
+ title: '购买成功',
+ icon: 'success',
+ duration: 2000
+ });
+ setTimeout(function () {
+ wx.reLaunch({
+ url: "/packageG/pages/payment/pay_success/pay_success?card=1&order_id=" + th.data.order_id,
})
- }
+ }, 1000)
+ }, function (e) {
+ console.log('kkkkkkk');
- var txt4 = "formData.use_commission";
+ wx.showToast({
+ title: e,
+ icon: 'none',
+ duration: 2000
+ });
+
+ setTimeout(function () {
+ wx.reLaunch({
+ url: "/pages/user/order_list/order_list?index=2&tabindex=1",
+ })
+ }, 1000)
- if(th.data.bn_use_commission){
- order_m=(parseFloat(order_m)- parseFloat(th.data.bn_goods.use_commission)).toFixed(2);
- th.setData({[txt4]:th.data.bn_goods.use_commission})
}
+ )
+ }
+ } else {
+ th.data.is_summit_ing = 0; //是否提交中
+ getApp().confirmBox(data.msg);
+ }
+ } 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 submitForm(t) {
+
+ if (this.data.is_fwk == 1) {
+ this.submitForm_card_next();
+ return false;
+ }
+
+ 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( [0,2].indexOf(th.data.bn_exp_type)>-1 && th.data.user_addr == null) {
+ if (getApp().is_no_addr(th, th.data.bn_exp_type)) {
+ 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;
+
+ //-- 如果有使用佣金抵扣的话 --
+ if (th.data.bn_use_commission) {
+ item.use_commission = th.data.bn_goods.use_commission;
+ }
+
+ if (item.exp_type == 2) {
+ item.lon = th.data.lon ? th.data.lon : 0;
+ item.lat = th.data.lat ? th.data.lat : 0;
+ item.goods_weight = th.data.bn_gd_w;
+ item.samecity_order_amount = th.data.bn_samecity_order_amount;
+ }
+
+ //获取立即购买的商品的信息
+ 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 (th.data.bn_goods.discount_field) {
+ goods.discount_field = th.data.bn_goods.discount_field;
+ }
+
+ //如果有参与非实收的订单促销,那么就相当于是普通购买
+ if (th.data.can_use_ord_prom[th.data.bn_pick]) {
+ goods.is_integral_normal = 1;
+ //如果是指定门店,就要判断
+ if (th.data.bn_goods.pick_group_ids) {
+ var idx0 = th.data.bn_goods.pick_up_lists.findIndex(function (e) {
+ return e.pickup_id == th.data.bn_pick;
+ })
+ if (idx0 < 0) {
+ getApp().my_warnning(th.data.bn_goods.goods_name + "的门店不可售", 0, th);
+ th.data.is_summit_ing = 0;
+ th.setData({
+ submit: 0
+ })
+ return false;
+ }
+ }
+
+ if (th.data.sales_rules == 1 && th.data.bn_goods.store_count < goods.goods_num) {
+ getApp().confirmBox("商品的门店库存不足");
+ th.data.is_summit_ing = 0;
+ th.setData({
+ submit: 0
+ })
+ return false;
+ }
+ //如果不立即购买或者秒杀,如果是线下库存购买的时候
+ if (th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) {
+ var isok = 1;
+ await th.check_store_num(goods.goods_id, th.data.bn_pick, goods.goods_num, function (res) {
+ isok = res;
+ });
+ if (!isok) {
+ getApp().confirmBox("商品的门店库存不足");
+ th.data.is_summit_ing = 0;
+ th.setData({
+ submit: 0
+ })
+ return false;
+ }
+ }
+ }
- 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,submit: 0, show_submit: 1,dis_btn:0 })
- } else {
- order_m = parseFloat(order_m) - parseFloat(amoney);
- order_m = order_m.toFixed(2);
- th.setData({ [txt]: amoney, [txt2]: order_m, [txt3]: coupon_price,submit: 0, show_submit: 1,dis_btn:0 })
- }
- } else {
- th.setData({ [txt]: 0, [txt2]: order_m, [txt3]: coupon_price,submit: 0, show_submit: 1,dis_btn:0 })
- }
- //优惠活动送积分
- 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();
+ if (getApp().globalData.skinface_id) {
+ goods.skinface_id = getApp().globalData.skinface_id;
+ }
+ if (th.data.bn_goods.whsle_id) {
+ item.is_whsle = 1;
+ goods.is_whsle_goods = 1;
+ }
- },
+ //-- 把导购的信息填入--
+ 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;
+ }
- //-- 服务卡项的支付的下一步 --
- submitForm_card_next: async function() {
+ //积分购,先要带is_integral_normal=1
+ if (gg.is_integral_normal) goods.is_integral_normal = 1;
- if (this.data.is_summit_ing == 1) return false; //--提交中退出--
- this.data.is_summit_ing = 1;
- var th = this,pdata = new Array();
+ //先要带is_pd_normal=1
+ if (gg.is_pd_normal) goods.is_pd_normal = 1;
- var item = {
- 'user_id': to.globalData.user_id,
- 'account': th.data.formData.order_amount, //使用余额
- 'store_id': oo.stoid, //商家
- 'list': new Array(),
+ //如果不立即购买或者秒杀,如果是线下库存购买的时候
+ if ([1, 2, 4, 6, 8, 9].indexOf(goods.prom_type) == -1 && th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) {
+ 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,
};
-
- //判断是不是购物车购买还是立即购买
- var gg = th.data.gg;
- if (!gg.pick_id) {
- getApp().showWarning("未找到门店");
+ 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;
+
+ 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];
+
+ if (t_item.exp_type == 0) {
+ if (th.data.wu_arr == null || th.data.wu_arr.length <= 0) {
+ th.data.is_summit_ing = 0;
+ getApp().confirmBox("读取物流失败");
return false;
+ }
}
- var goods = {
- 'card_id': th.data.bn_goods.id,
- 'itemid': th.data.bn_goods.erpItemID,
- 'qty': gg.goods_num,
- 'price': th.data.bn_goods.shop_price,
- // 'price': th.data.formData.order_amount,
- 'pickup_id': gg.pick_id,
- 'pickup_keyid': gg.keyid,
- 'prom_type': 8, //促销活动类型
- 'prom_id': this.data.act.id, //促销活动id
+
+ 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;
+ }
- if(getApp().globalData.skinface_id){
- goods.skinface_id=getApp().globalData.skinface_id;
+ 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;
}
- if(this.data.postdata && this.data.postdata.is_pd_normal==1){
- goods.is_pd_normal=1;
+ 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;
}
- //--导购分享过来的id--
- if (gg.guide_id) {
- goods.guide_id = gg.guide_id;
- goods.guide_type = gg.guide_type;
+ //老会员成为分销下线需要的参数
+ 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
+ case 8:
+ goods.prom_type = 8;
+ 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 && !g_item.whsle_id && !getApp().is_virtual(g_item)) {
+ 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 + "/" + 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;
- }
+ 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);
+ th.data.ok_order_sn = data.data;
+
+ util_pay.pay(data.data, function () {
+ //app.my_warnning("支付成功",1,th);
+ //setTimeout(function () {
+ wx.redirectTo({
+ url: "/packageG/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data
})
- }
+ //},1000)
- if(gg.groupchat_id){
- goods.groupchat_id=gg.groupchat_id
- }
- item.list.push(goods);
-
- pdata = item;
- var str = JSON.stringify(pdata);
- console.log("支付数据");
- console.log(str);
- //return false;
- wx.showLoading({
- title: "加载中"
- });
- wx.request({
- url: oo.url + '/api/weshop/recharge/saveRecharge',
- 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) {
- th.data.order_id = data.data.order_id;
- th.data.ok_order_sn = data.data.order_sn;
- // console.log('myyyyyyyyyyyyyyyyyy', data.data);
- if (th.data.is_cart) {
- var list = th.data.cartlist_y;
- for (var i = 0; i < list.length; i++) {
- //删除购物车
- a.delete("/api/weshop/cartService/del/" + oo.stoid + "/" + list[i].id, {});
- }
- }
- var order_amount = pdata.account;
- //要进行判断,如果是用微信支付,就要跳转到支付界面
- if (order_amount > 0) {
- th.setData({
- isclose: 0
- });
-
- t_pay.set_pay_url("/api/weshop/order/pay/createRechargeOrder")
- t_pay.pay(
- {
- parentSn: data.data.order_sn,
- store_id: oo.stoid
- },function (){
- wx.showToast({
- title: '购买成功',
- icon: 'success',
- duration: 2000
- });
- setTimeout(function () {
- wx.reLaunch({
- url: "/packageG/pages/payment/pay_success/pay_success?card=1&order_id=" + th.data.order_id,
- })
- }, 1000)
-
- },function (e){
-
- console.log('kkkkkkk');
-
- wx.showToast({
- title: e,
- icon: 'none',
- duration: 2000
- });
-
- setTimeout(function () {
- wx.reLaunch({
- url: "/pages/user/order_list/order_list?index=2&tabindex=1",
- })
- }, 1000)
-
- }
- )
- }
- } else {
- th.data.is_summit_ing = 0; //是否提交中
- getApp().confirmBox(data.msg);
- }
- } 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 submitForm(t) {
-
- if(this.data.is_fwk==1){
- this.submitForm_card_next();
- return false;
- }
-
- 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( [0,2].indexOf(th.data.bn_exp_type)>-1 && th.data.user_addr == null) {
- if(getApp().is_no_addr(th,th.data.bn_exp_type)){
- 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;
-
- //-- 如果有使用佣金抵扣的话 --
- if(th.data.bn_use_commission){
- item.use_commission=th.data.bn_goods.use_commission;
- }
-
- if(item.exp_type==2){
- item.lon=th.data.lon?th.data.lon:0;
- item.lat=th.data.lat?th.data.lat:0;
- item.goods_weight=th.data.bn_gd_w;
- item.samecity_order_amount=th.data.bn_samecity_order_amount;
- }
-
- //获取立即购买的商品的信息
- 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(th.data.bn_goods.discount_field){
- goods.discount_field=th.data.bn_goods.discount_field;
- }
-
- //如果有参与非实收的订单促销,那么就相当于是普通购买
- if(th.data.can_use_ord_prom[th.data.bn_pick]){
- goods.is_pd_normal=1;
- //如果是指定门店,就要判断
- if (th.data.bn_goods.pick_group_ids) {
- var idx0 = th.data.bn_goods.pick_up_lists.findIndex(function (e) {
- return e.pickup_id == th.data.bn_pick;
- })
- if (idx0 < 0) {
- getApp().my_warnning(th.data.bn_goods.goods_name + "的门店不可售", 0, th);
- th.data.is_summit_ing = 0;
- th.setData({
- submit: 0
- })
- return false;
- }
- }
-
- if (th.data.sales_rules==1 && th.data.bn_goods.store_count= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) {
- var isok = 1;
- await th.check_store_num(goods.goods_id, th.data.bn_pick, goods.goods_num, function (res) {
- isok = res;
- });
- if (!isok) {
- getApp().confirmBox("商品的门店库存不足");
- th.data.is_summit_ing = 0;
- th.setData({
- submit: 0
- })
- return false;
- }
- }
-
-
- }
-
-
-
- if(getApp().globalData.skinface_id){
- goods.skinface_id=getApp().globalData.skinface_id;
- }
-
- if(th.data.bn_goods.whsle_id){
- item.is_whsle=1;
- goods.is_whsle_goods=1;
- }
-
- //-- 把导购的信息填入--
- 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 ([1,2,4,6,8,9].indexOf(goods.prom_type)== -1 && th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) {
- 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;
-
- 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];
-
- if (t_item.exp_type==0){
- if (th.data.wu_arr == null || th.data.wu_arr.length <= 0) {
- th.data.is_summit_ing = 0;
- getApp().confirmBox("读取物流失败");
- return false;
- }
- }
-
- 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;
- }
+ }, function () {
+ //支付失败
+ setTimeout(function () {
+ var cps = getCurrentPages();
+ if (cps.length > 1) {
+ wx.navigateBack({ delta: 1 })
+ } else {
+ getApp().goto("/pages/index/index/index");
+ }
+ }, 1000)
+ }, oo.stoid);
- //老会员成为分销下线需要的参数
- 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);
- }
- }
+ } 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: "/packageG/pages/payment/pay_success/pay_success?type=2&order_sn=" + data.data,
})
- }
+ //}, 1000)
+ }
+ },
+ fail: function () {
-
- //房间号的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
- case 8:
- goods.prom_type = 8;
- 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 && !g_item.whsle_id && !getApp().is_virtual(g_item)) {
- 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);
- th.data.ok_order_sn=data.data;
-
- util_pay.pay(data.data, function () {
- //app.my_warnning("支付成功",1,th);
- //setTimeout(function () {
- wx.redirectTo({
- url: "/packageG/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: "/packageG/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 {
+ }
+ 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; //是否提交中
- 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;
-
- var lock_rq = { store_id: os.stoid, wareId: goods_id, storageId: pick, pageSize: 1000 };
- if (this.data.sales_rules == 3) {
- lock_rq.appoint_pick_keyid = this.data.appoint_pick_keyid;
- delete lock_rq.storageId
- }
- //先读取门店的lock
- await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
- data:lock_rq
- }).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;
- }
- })
-
- if (this.data.sales_rules == 2) {
- //先获取门店的编号
- 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;
+ th.submitForm(sub_value);
+ }
}
- })
- }
- //先获取商品的线下库存
- 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;
+ })
+ return;
}
- })
-
- var sto_rq = { storageNos: pick_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid, pageSize: 2000 };
- if (this.data.sales_rules == 3) {
- sto_rq.storageIds = this.data.appoint_pick_keyid;
- delete sto_rq.storageNos
- }
-
- //读取线下的门店库存
- await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
- data: sto_rq
- }).then(res => {
- if (res.data.code == 0) {
- plist = res.data.data.pageData[0];
+ if (msg.length > 13) {
+ msg = msg.slice(0, 13) + "\r\n" + msg.slice(13);
}
- })
- var isok = 1;
- if (!plist || 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: "/packageF/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 });
+ getApp().confirmBox(msg);
+ th.data.is_summit_ing = 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 });
- }
-
-
+ th.data.is_summit_ing = 0; //是否提交中
+ console.log("index.js wx.request CheckCallUser statusCode" + res.statusCode);
}
- //判断有没有默认的物流地址值
- if (def_exp_code != "" && def_exp_code != null && def_exp_code != undefined && !th.data.is_default_logistics) {
- 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,same_ok:1,sameCityExp_off:0, sameCityExp_info:'',});
- 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 && !th.data.is_default_logistics) {
- 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();
- },
-
- //使用佣金
- set_bn_commission:function(){
- var th = this;
- th.setData({ bn_use_commission: !th.data.bn_use_commission });
- th.calculatePrice2();
- },
-
- //----------立即购买,选择物流-------------
- 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;
+ },
+ fail: function () {
+ th.data.is_summit_ing = 0;
+ wx.hideLoading();
+ console.log("index.js wx.request CheckCallUser fail");
+ },
+ complete: function () {
+ }
+ })
+ },
- //对于在其他门店已经选择了的券 要判断是否显示到界面
- 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 });
- }
+ //---确认线下门店的数量足不足---
+ async check_store_num(goods_id, pick, goods_num, func) {
+ var lock = 0, pick_no, plist, erpwareid;
+
+ var lock_rq = { store_id: os.stoid, wareId: goods_id, storageId: pick, pageSize: 1000 };
+ if (this.data.sales_rules == 3) {
+ lock_rq.appoint_pick_keyid = this.data.appoint_pick_keyid;
+ delete lock_rq.storageId
+ }
+ //先读取门店的lock
+ await getApp().request.promiseGet("/api/weshop/order/ware/lock/page", {
+ data: lock_rq
+ }).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;
+ }
+ })
+
+ if (this.data.sales_rules == 2) {
+ //先获取门店的编号
+ 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;
+ }
+ })
+
+ var sto_rq = { storageNos: pick_no, wareIds: encodeURIComponent(erpwareid), storeId: os.stoid, pageSize: 2000 };
+ if (this.data.sales_rules == 3) {
+ sto_rq.storageIds = this.data.appoint_pick_keyid;
+ delete sto_rq.storageNos
+ }
+
+ //读取线下的门店库存
+ await getApp().request.promiseGet("/api/weshop/goods/getWareStorages", {
+ data: sto_rq
+ }).then(res => {
+ if (res.data.code == 0) {
+ plist = res.data.data.pageData[0];
+ }
+ })
+ var isok = 1;
+ if (!plist || goods_num > plist.CanOutQty - lock) {
+ isok = 0;
+ }
+ func(isok);
+ },
- 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 });
- },
+ 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: "/packageF/pages/user/address_list/address_list"
+ });
+ },
- //---判断券时候在已经选择的列表中---
- 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;
- },
+ //--------购物车购买时,选择自提和物流-----------
+ 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 && !th.data.is_default_logistics) {
+ 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();
+ },
- /*--点击选择券--*/
- 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;
- }
+ //--------立即购买时,选择自提和物流----------
+ 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, same_ok: 1, sameCityExp_off: 0, sameCityExp_info: '', first_entry: 0});
+ 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 && !th.data.is_default_logistics) {
+ 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()
- 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 });
- }
+ //--------立即购买时,使用余额--------
+ 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();
+ },
- 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 });
- }
+ //使用佣金
+ set_bn_commission: function () {
+ var th = this;
+ th.setData({ bn_use_commission: !th.data.bn_use_commission });
+ th.calculatePrice2();
+ },
- 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;
- }
+ //----------立即购买,选择物流-------------
+ 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];
- 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 });
- },
+ 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;
- /*----- 点击选择包邮券 -----*/
- 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 t_user = th.data.using_quan[pickid];
- //--购物车过来的包邮券--
- 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;
-
- 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);
+ 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;
+ },
- 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_befor: function (e) {
+
+ var ind = 0;
+ var quan_item = this.data.selected_quan_list[ind];
+ var pickid = this.data.selected_quan_pick; //现在选择的是哪一个门店
+ console.error('点击选择券------------');
+ //--如果券是单品使用的时候--
+ 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 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;
+
+
+
+ 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 });
+ return true
+ },
+ /*--点击选择券--*/
+ 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 });
- //--确认使用券---
- 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;
- }
- }
+ /*----- 点击选择包邮券 -----*/
+ sele_quan_item_by_befor: 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 = 0;
+ //--如果是立即购买的部分--
+ var txt = "";
+ var txt1 = "";
+ var quan_item = null;
+
+ 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);
+
+
+ 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;
+
+ 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);
+
+
+ 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 });
+ },
- //选择了的券,看是不是点击了不使用券,点击了不使用优惠券
- 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;
- }
+ //--确认使用券---
+ confirm_quan_befor: 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();
}
- },
-
- //----把券插入之后的操作,同时还要重新计算价格----
- 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;
+ th.setData({ open_quan: 0 });
+ return;
+ }
+ }
+ },
+ //--确认使用券---
+ 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 {
- using_quan[pickid] = { coupon_no: item.CashRepNo, money: item.Sum, is_nouse_red: 0 };
- using_quan[pickid].isby = 0;
+ th.calculatePrice();
}
- this.setData({ using_quan: using_quan });
- th.calculatePrice2();
-
th.setData({ open_quan: 0 });
- },
+ return;
+ }
+ }
+ },
+ //默认选择优惠券
+ def_coupon_fn() {
+ // setTimeout(() => {
+ // this.def_coupon_fn_aft()
+ // }, 100);
+ try {
+ setTimeout(() => {
+ this.def_coupon_fn_aft()
+ }, 1000);
+ } catch (error) { }
- 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;
- },
+ },
+ //默认选择优惠券
+ def_coupon_fn_aft() {
+ console.error('进入默认优惠券选择');
+ let th = this;
+ let first_entry = th.data.first_entry;
+ console.error(first_entry);
+ if (first_entry > 0) {
+ return
+ }
+ first_entry += 1;
+ th.setData({
+ first_entry
+ })
+ let length1 = th.data.def_coupon1 ? th.data.def_coupon1.length : 0
+ let length2 = th.data.def_coupon2 ? th.data.def_coupon2.length : 0
+ let length3 = th.data.def_coupon3 ? th.data.def_coupon3.length : 0
+ let length4 = th.data.def_coupon4 ? th.data.def_coupon4.length : 0
+ // let length = length1 + length2 + length3 + length4
+ let length = length1 + length2
+ if (th.data.bn_exp_type==0) {
+ length+= length3 + length4
+ }
+ console.error(length);
+ if (length != 1) {
+ return
+ }
+ if (length1 == 1) {
+ console.error('优惠券1');
+ let first_entry = th.data.first_entry;
+ let quan_list = th.data.def_coupon1
+ if (quan_list && quan_list.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ th.setData({
+ sele_cart_ind: 0,
+ sele_exp_type: th.data.cartlist[0].exp_type,
+ selected_quan_pick: th.data.cartlist[0].pickup_id,
+ selected_quan_list: th.data.cartlist[0].quan_list,
+ // first_entry
+ })
+ let quan_off = th.sele_quan_item_befor();
+ if (quan_off) {
+ th.confirm_quan_befor()
+ }
+ }
+ }
+ if (length2 == 1) {
+ console.error('优惠券2');
+ let first_entry = th.data.first_entry;
+ let quanlist = th.data.def_coupon2
+ if (quanlist && quanlist.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ th.setData({
+ selected_quan_pick: th.data.bn_pick,
+ // first_entry
+ })
+ let quan_off = th.sele_quan_item_befor();
+ if (quan_off) {
+ th.confirm_quan_befor()
+ }
+
+ }
+ }
+ if (length3 == 1 && th.data.bn_exp_type==0) {
+ console.error('优惠券3');
+ let first_entry = th.data.first_entry;
+ let quanlist = th.data.def_coupon3
+ if (quanlist && quanlist.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ th.setData({
+ selected_quan_pick: th.data.bn_pick,
+ // first_entry
+ })
- //// 开启物流的弹窗
- 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 };
+ th.sele_quan_item_by_befor();
+ th.confirm_quan_befor()
- //--如果是多个门店的时候--
- 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();
- },
+ },
+ //----把券插入之后的操作,同时还要重新计算价格----
+ insert_into_using_quan: function (item, using_quan, pickid, isby, showToast = true) {
+ 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 });
+ },
- //点击打开优惠券使用说明
- clik_coupons: function (e) {
- var ind = e.currentTarget.dataset.idx;
- var is_open = this.data.selected_quan_list[ind].is_open;
+ 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;
+ },
- if (is_open == 1) is_open = 0;
- else is_open = 1;
+ //// 开启物流的弹窗
+ 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);
+ },
- var txt = "selected_quan_list[" + ind + "].is_open"
- var obj = {};
- obj[txt] = is_open;
+ //点击确定物流
+ determine_expres: function (e) {
+ this.setData({ open_express: 0 });
+ if (this.data.is_b_now == 1)
+ this.calculatePrice2();
+ else
+ this.calculatePrice();
+ },
- this.setData(obj);
- this.setData({ disabled: 1 })
- },
+ //点击打开优惠券使用说明
+ clik_coupons: function (e) {
+ var ind = e.currentTarget.dataset.idx;
+ var is_open = this.data.selected_quan_list[ind].is_open;
- 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;
- 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;
- var txt = "get_by_quan_list[" + ind + "].is_open"
- var obj = {};
- obj[txt] = is_open;
+ this.setData(obj);
+ this.setData({ disabled: 1 })
+ },
- 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;
- //设置默认物流
- 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();
- }
- }
- })
- },
+ var txt = "get_by_quan_list[" + ind + "].is_open"
+ var obj = {};
+ obj[txt] = is_open;
- //更新下默认,在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);
- if(th.data.is_default_logistics) return false;
- 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;
+ this.setData(obj);
+ this.setData({ disabled: 1 })
+ },
- //--组装价格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);
- }
- })
- }
- }
+ //设置默认物流
+ 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();
+ }
+ }
+ })
+ },
- //如果是搭配购的立即购买的时候
- 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 })
- }
+ //更新下默认,在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);
+ if (th.data.is_default_logistics) return false;
+ 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 {
- 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;
+ 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;
}
- 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: parseFloat(price).toFixed(2),
- prom_id: prom_id,
- goods_num: arr.goods_num,
- user_id: getApp().globalData.user_id,
- is_bz: prom.is_bz
- }
- })
- } else {
- func(arr);
- }
+ //--组装商品的线下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 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);
+ 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);
+ th.setData({
+ def_coupon1: quan_list
+ })
+ }
})
- },
- //--检查订单优惠--
- 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 (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) {
- var data = res.data.data;
- th.data.order_prom[pick] = data;
+ quanlist = res.data.data.pageData;
+ if (quanlist) {
+ quanlist = th.check_is_frozenQuan(quanlist, frozenQuan);
+ th.setData({ selected_quan_list: quanlist, def_coupon2: quanlist })
+ }
}
- 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 });
+ //检查区域是不是包邮
+ 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;
+ },
- var obj = {};
- obj[item.prom_id] = ob;
- map[pickid] = obj;
+ //检查立即购买的商品是不是不包邮
+ 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: parseFloat(price).toFixed(2),
+ 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;
+
+ }
+ },
- //从优惠的映射中拿出商品从表的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];
- }
- },
+ //从优惠的映射中拿出商品从表的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;
- },
+ //检查是不是有其他门店的订单在选择了券
+ 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;
- },
+ //跳转到购买卡
+ buycard: function () {
+ getApp().goto("/pages/user/plus/plus");
+ getApp().globalData.plus_buy_back = 1;
+ },
- //跳转关闭弹出框的显示
- close_offline: function () {
- this.setData({ is_offline_show: 0 });
- },
+ //跳转关闭弹出框的显示
+ 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 });
- },
+ //立即购买显示弹出框
+ 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();
- }
- },
+ //确定使用线下取价
+ 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();
- }
- },
+ //取消使用线下取价
+ 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
- });
- },
+ //-- 弹出购物车选择是不是要店铺优惠 --
+ 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 })
- },
+ 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 })
- },
+ clear_hid_inp: function (e) {
+ var index = e.currentTarget.dataset.index;
+ var txt = "cartlist[" + index + "].focus";
+ this.setData({ [txt]: 0 })
+ },
- go_detail:function(e){
- var gid=e.currentTarget.dataset.gid;
- var act=this.data.act;
- var url='';
- if(this.data.is_fwk){
- url = `/packageC/pages/presell/cardInfo/goodsInfo?goods_id=${gid}&prom_id=${act.id}`;
- }else{
- url= "/pages/goods/goodsInfo/goodsInfo?goods_id="+gid;
- }
- getApp().goto(url);
- },
+ go_detail: function (e) {
+ var gid = e.currentTarget.dataset.gid;
+ var act = this.data.act;
+ var url = '';
+ if (this.data.is_fwk) {
+ url = `/packageC/pages/presell/cardInfo/goodsInfo?goods_id=${gid}&prom_id=${act.id}`;
+ } else {
+ url = "/pages/goods/goodsInfo/goodsInfo?goods_id=" + gid;
+ }
+ getApp().goto(url);
+ },
- //-- 获取订单促销的判断结构 --
- set_by_now_ord_prom(item){
- let pickid=this.data.bn_pick;
- let order_prom_map_ck= this.data.order_prom_map_ck;
- order_prom_map_ck[pickid]={
- shop_price_all:0, //手店价的累计
- market_price_all:0, //市场价的累计
- goods_price_all:0, //实收价的累计
- no_ord_price:0, //要累计上不参与订单促销的金额
- goodsList:[],
- }
+ //-- 获取订单促销的判断结构 --
+ set_by_now_ord_prom(item) {
+ let pickid = this.data.bn_pick;
+ let order_prom_map_ck = this.data.order_prom_map_ck;
+ order_prom_map_ck[pickid] = {
+ shop_price_all: 0, //手店价的累计
+ market_price_all: 0, //市场价的累计
+ goods_price_all: 0, //实收价的累计
+ no_ord_price: 0, //要累计上不参与订单促销的金额
+ goodsList: [],
+ }
- let pk_ord_map=order_prom_map_ck[pickid];
- pk_ord_map.shop_price_all += item.shop_price_y * item.buynum;
- pk_ord_map.market_price_all += item.market_price * item.buynum;
+ let pk_ord_map = order_prom_map_ck[pickid];
+ pk_ord_map.shop_price_all += item.shop_price_y * item.buynum;
+ pk_ord_map.market_price_all += item.market_price * item.buynum;
- },
+ },
- //获取当前进行中订单促销,同时带入相应的金额判断订单促销是不是运行,同时订单促销的条件不是实收价判断的话,默认的时候,订单促销是不参与运算的
- async get_cur_ord_prom(pickid) {
- let ord_prom = null;
- let order_prom_map_ck = this.data.order_prom_map_ck[pickid];
- if(!order_prom_map_ck) return null;
-
- //获取当前进行中的优惠促销
- await getApp().request.promiseGet("/api/weshop/promorder/getPromOrder", {
- data: {
- store_id: os.stoid,
- orderAmount: -1, //-1为不判断金额条件
- user_id: getApp().globalData.user_id
- }
- }).then(res => {
- if (res.data.code == 0) {
- ord_prom = res.data.data;
- }
- })
+ //获取当前进行中订单促销,同时带入相应的金额判断订单促销是不是运行,同时订单促销的条件不是实收价判断的话,默认的时候,订单促销是不参与运算的
+ async get_cur_ord_prom(pickid) {
+ let ord_prom = null;
+ let order_prom_map_ck = this.data.order_prom_map_ck[pickid];
+ if (!order_prom_map_ck) return null;
+
+ //获取当前进行中的优惠促销
+ await getApp().request.promiseGet("/api/weshop/promorder/getPromOrder", {
+ data: {
+ store_id: os.stoid,
+ orderAmount: -1, //-1为不判断金额条件
+ user_id: getApp().globalData.user_id
+ }
+ }).then(res => {
+ if (res.data.code == 0) {
+ ord_prom = res.data.data;
+ }
+ })
+
+ if (!ord_prom) return null;
+ //用于计算订单促销的金额
+ let calculate_price = 0;
+
+ let txt1 = 'show_ord_prom[' + pickid + ']';
+ //-- 此时判断活动的金额满足与否 --
+ switch (ord_prom.discount_field) {
+ //实收价的时候
+ case 0:
+ //要先还原
+ this.setData({
+ [txt1]: 0
+ });
- if (!ord_prom) return null;
- //用于计算订单促销的金额
- let calculate_price=0;
-
- let txt1='show_ord_prom['+pickid+']';
- //-- 此时判断活动的金额满足与否 --
- switch (ord_prom.discount_field) {
- //实收价的时候
- case 0:
- //要先还原
- this.setData({
- [txt1]: 0
- });
-
- if (ord_prom.money > order_prom_map_ck.goods_price_all){
- return null;
- }
- break;
- //手店价的时候
- case 1:
- if (ord_prom.money > order_prom_map_ck.shop_price_all){
- //要先还原
- this.setData({
- [txt1]: 0
- });
- return null;
- }
- //要显示订单促销使用的按钮
- this.setData({
- [txt1]: 1
- });
- break;
- //市场价的时候
- case 2:
- if (ord_prom.money > order_prom_map_ck.market_price_all){
- //要先还原
- this.setData({
- [txt1]: 0
- });
- return null;
- }
- //要显示订单促销使用的按钮
- this.setData({
- [txt1]: 2
- });
- break;
+ if (ord_prom.money > order_prom_map_ck.goods_price_all) {
+ return null;
}
- //如果订单促销是不参与订单促销的,那么就直接返回null(订单促销不是实收价的时候)
- if(ord_prom.discount_field>0 && !this.data.can_use_ord_prom[pickid]){
- return null;
+ break;
+ //手店价的时候
+ case 1:
+ if (ord_prom.money > order_prom_map_ck.shop_price_all) {
+ //要先还原
+ this.setData({
+ [txt1]: 0
+ });
+ return null;
}
- return ord_prom;
- },
-
- //立即购买的时候,点击订单促销的参与
- set_can_use_ord_prom_now:function (e){
-
- if(this.data.submit) return false;
- this.data.submit=1;
-
- let pickid=this.data.bn_pick;
- let txt = 'can_use_ord_prom[' + pickid + ']';
- let can_use = this.data.can_use_ord_prom[pickid] ? this.data.can_use_ord_prom[pickid] : 0;
+ //要显示订单促销使用的按钮
this.setData({
- [txt]: !can_use
- })
-
- let th=this;
- let good=th.data.bn_goods;
-
- //如果有要参与订单促销的按钮点击后,要修改商品的价格
- if(th.data.can_use_ord_prom[pickid]){
- let discount_field=th.data.show_ord_prom[pickid];
- switch (discount_field){
- case 1:
- good.shop_price=good.shop_price_y;
- break;
- case 2:
- good.shop_price=good.market_price;
- break;
- }
- //-- 转成普通商品 ---
- good.prom_type=0;
- good.prom_id=0;
- good.integral=0;
- good.discount_field=discount_field;
-
- //把优惠券的使用还原
- th.setData({
- selected_quan_list: null,
- using_quan: {}
- })
-
- }else{
- good=ut.deep_cp(th.data.old_bn_goods);
+ [txt1]: 1
+ });
+ break;
+ //市场价的时候
+ case 2:
+ if (ord_prom.money > order_prom_map_ck.market_price_all) {
+ //要先还原
+ this.setData({
+ [txt1]: 0
+ });
+ return null;
}
+ //要显示订单促销使用的按钮
+ this.setData({
+ [txt1]: 2
+ });
+ break;
+ }
+ //如果订单促销是不参与订单促销的,那么就直接返回null(订单促销不是实收价的时候)
+ if (ord_prom.discount_field > 0 && !this.data.can_use_ord_prom[pickid]) {
+ return null;
+ }
+ return ord_prom;
+ },
- th.setData({
- bn_goods:good
- })
- wx.showLoading({
- title: "处理中.",
- mark:true
- })
- th.calculatePrice2()
-
- if(!th.data.can_use_ord_prom[pickid]){
- th.get_buy_now_quan();
- }
- },
- //去凑单
- qcd(){
+ //立即购买的时候,点击订单促销的参与
+ set_can_use_ord_prom_now: function (e) {
+
+ if (this.data.submit) return false;
+ this.data.submit = 1;
+
+ let pickid = this.data.bn_pick;
+ let txt = 'can_use_ord_prom[' + pickid + ']';
+ let can_use = this.data.can_use_ord_prom[pickid] ? this.data.can_use_ord_prom[pickid] : 0;
+ this.setData({
+ [txt]: !can_use
+ })
+
+ let th = this;
+ let good = th.data.bn_goods;
+
+ //如果有要参与订单促销的按钮点击后,要修改商品的价格
+ if (th.data.can_use_ord_prom[pickid]) {
+ let discount_field = th.data.show_ord_prom[pickid];
+ switch (discount_field) {
+ case 1:
+ good.shop_price = good.shop_price_y;
+ break;
+ case 2:
+ good.shop_price = good.market_price;
+ break;
+ }
+ //-- 转成普通商品 ---
+ good.prom_type = 0;
+ good.prom_id = 0;
+ good.integral = 0;
+ good.discount_field = discount_field;
+
+ //把优惠券的使用还原
+ th.setData({
+ selected_quan_list: null,
+ using_quan: {}
+ })
+
+ } else {
+ good = ut.deep_cp(th.data.old_bn_goods);
+ }
+
+ th.setData({
+ bn_goods: good
+ })
+ wx.showLoading({
+ title: "处理中.",
+ mark: true
+ })
+ th.calculatePrice2()
+
+ if (!th.data.can_use_ord_prom[pickid]) {
+ th.get_buy_now_quan();
+ }
+ },
+ //去凑单
+ qcd() {
getApp().goto("/pages/index/index/index");
},
diff --git a/packageC/pages/presell/cart/cart2.wxml b/packageC/pages/presell/cart/cart2.wxml
index 69a23c3..c88f34a 100644
--- a/packageC/pages/presell/cart/cart2.wxml
+++ b/packageC/pages/presell/cart/cart2.wxml
@@ -156,15 +156,15 @@
参与订单促销
-
+
+ wx:if="{{(selected_quan_list && selected_quan_list.length>0) || (get_by_quan_list && get_by_quan_list.length>0 && bn_exp_type==0) }}">
- 优惠券 {{(selected_quan_list?selected_quan_list.length:0)+ (get_by_quan_list?get_by_quan_list.length:0)}}张可用
-
+ 优惠券 {{(selected_quan_list?selected_quan_list.length:0)+ ((get_by_quan_list && bn_exp_type==0)?get_by_quan_list.length:0)}}张可用
+
不使用
diff --git a/packageE/pages/cart/cart2/cart2.js b/packageE/pages/cart/cart2/cart2.js
index 562a88a..b73986c 100644
--- a/packageE/pages/cart/cart2/cart2.js
+++ b/packageE/pages/cart/cart2/cart2.js
@@ -132,13 +132,13 @@ Page({
currentTabIndex: 1,
in_zhact_gdmap: {}, //不同门店参与同一活动的限购,这些都是map表,很
- in_zhact:{}, //组合购活动在列表中的显示
- in_yhact:{}, //优惠活动在列表中的显示
- in_zh_gd_buy_map:{}, //就是商品在组合购中的
+ in_zhact: {}, //组合购活动在列表中的显示
+ in_yhact: {}, //优惠活动在列表中的显示
+ in_zh_gd_buy_map: {}, //就是商品在组合购中的
in_zhact_gdmap_new: {}, //不同门店参与同一活动的限购,这些都是map表,是多促销互动专用,不能和in_zhact_gdmap重叠
- in_zhact_new:{}, //组合购活动在列表中的显示 是多促销互动专用,不能和in_zhact重叠
- in_yhact_new:{}, //组合购活动在列表中的显示 是多促销互动专用,不能和in_yhact重叠
+ in_zhact_new: {}, //组合购活动在列表中的显示 是多促销互动专用,不能和in_zhact重叠
+ in_yhact_new: {}, //组合购活动在列表中的显示 是多促销互动专用,不能和in_yhact重叠
hid_inp: 1,
user_note: "",
@@ -159,35 +159,40 @@ Page({
//订单所有搭配购的
all_collocation_list: [],
appoint_pick_keyid: '',
- is_pre_cut:0, //是否可以使用预存 0是不可以1的可以
+ is_pre_cut: 0, //是否可以使用预存 0是不可以1的可以
- coll_prom:{}, //搭配活动存储
- yh_is_xz_yh:{},//优惠促销优惠券使用开关
+ coll_prom: {}, //搭配活动存储
+ yh_is_xz_yh: {},//优惠促销优惠券使用开关
- same_ok:1, //同城配送的控制,默认ok
+ same_ok: 1, //同城配送的控制,默认ok
bconfig: null,
- showFold:true,
+ showFold: true,
- ly_map:{},
- template_id:[],
+ ly_map: {},
+ template_id: [],
//用于后台计算的多促销集合
- show_can_cx_map:{},
+ show_can_cx_map: {},
//优惠促销活动的集合
yhcx_act_map: {},
//优惠促销购买次数
- yhcx_buy_map:{},
+ yhcx_buy_map: {},
//-- 订单促销判断积累 ---2024-2-20
order_prom_map_ck: {},
//能不能使用订单促销
- can_use_ord_prom:{},
+ can_use_ord_prom: {},
//存储订单促销的取价,按照门店进行索引
- show_ord_prom:{},
- sameCityExp_off:0, //未达到起送价
- sameCityExp_info:'',//未达到起送价提示信息
+ show_ord_prom: {},
+ sameCityExp_off: 0, //未达到起送价
+ sameCityExp_info: '',//未达到起送价提示信息
+ first_entry: 0,//进入次数,如果是第一次进入,进行判断是否进行优惠券是否直接使用
+ def_coupon1: null,//购物车优惠券列表
+ def_coupon2: null,//直接购买优惠券列表
+ def_coupon3: null,//购物车包邮券列表
+ def_coupon4: null,//直接购买包邮券列表
},
@@ -205,16 +210,16 @@ Page({
}, 1000);
},
-
+
clickCollapse() {
this.setData({
flag: !this.data.flag,
})
},
- onLoad:async function (t) {
+ onLoad: async function (t) {
- this.data.fir_in=1;
+ this.data.fir_in = 1;
wx.setNavigationBarTitle({ title: "填写订单", })
var th = this;
@@ -225,7 +230,7 @@ Page({
//清空is_pick_up
getApp().request.put("/api/weshop/useraddress/updatePickUp", {
data: { user_id: getApp().globalData.user_id, is_pickup: 0 },
- success: function (s) {}
+ success: function (s) { }
});
getApp().getConfig2(function (e) {
th.setData({
@@ -249,11 +254,11 @@ Page({
// }
// })
try {
- let template_id =await getApp().get_template_id('1001,1012,1027')
+ let template_id = await getApp().get_template_id('1001,1012,1027')
this.setData({
template_id
})
- } catch (error) {}
+ } catch (error) { }
//判断是不是佣金抵扣
getApp().is_distribut(this);
@@ -276,7 +281,7 @@ Page({
}, 1000);
},
-
+
clickCollapse() {
this.setData({
flag: !this.data.flag,
@@ -299,39 +304,39 @@ Page({
var th = this;
//判断是不是第一次进入
- if(this.data.fir_in){
- this.data.fir_in=0;
- }else{
- //富友支付取消支付强行回去
- var fy=ut.fy_back("/pages/user/order_list/order_list",1);
- if(fy) return false;
- util_pay.set_fir();
-
- //-- 通联的第三方支付的返回优化 --
- ut.is_pay_ok(th.data.ok_order_sn,"/packageG/pages/payment/pay_success/pay_success?type=2&order_sn=" + this.data.ok_order_sn,
- "/pages/user/order_list/order_list",function (){
+ if (this.data.fir_in) {
+ this.data.fir_in = 0;
+ } else {
+ //富友支付取消支付强行回去
+ var fy = ut.fy_back("/pages/user/order_list/order_list", 1);
+ if (fy) return false;
+ util_pay.set_fir();
+
+ //-- 通联的第三方支付的返回优化 --
+ ut.is_pay_ok(th.data.ok_order_sn, "/packageG/pages/payment/pay_success/pay_success?type=2&order_sn=" + this.data.ok_order_sn,
+ "/pages/user/order_list/order_list", function () {
//支付信息会先记录着
- if(!th.data.ok_order_sn) return false;
+ if (!th.data.ok_order_sn) return false;
getApp().request.promiseGet("/api/weshop/order/page",
- {data:{store_id:os.stoid,parent_sn:th.data.ok_order_sn}}).then(res=>{
- if(ut.ajax_ok(res)){
- var item=res.data.data.pageData[0];
- if(item.pay_status==1){
- //支付支付,返回首页
- ut.m_toast('支付成功');
- setTimeout(()=>{
- getApp().re_to("/packageG/pages/payment/pay_success/pay_success?type=2&order_sn=" + th.data.ok_order_sn);
- },1000)
-
- }else{
- //支付支付,返回首页
- ut.m_toast('支付失败');
- setTimeout(()=>{
- getApp().goto("/pages/index/index/index");
- },1000)
+ { data: { store_id: os.stoid, parent_sn: th.data.ok_order_sn } }).then(res => {
+ if (ut.ajax_ok(res)) {
+ var item = res.data.data.pageData[0];
+ if (item.pay_status == 1) {
+ //支付支付,返回首页
+ ut.m_toast('支付成功');
+ setTimeout(() => {
+ getApp().re_to("/packageG/pages/payment/pay_success/pay_success?type=2&order_sn=" + th.data.ok_order_sn);
+ }, 1000)
+
+ } else {
+ //支付支付,返回首页
+ ut.m_toast('支付失败');
+ setTimeout(() => {
+ getApp().goto("/pages/index/index/index");
+ }, 1000)
+ }
}
- }
- })
+ })
});
}
@@ -364,20 +369,20 @@ Page({
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,show_submit:0 });
+ th.setData({ user_addr: ie, show_submit: 0 });
if (th.data.is_b_now == 1) {
if (th.data.bn_goods) {
- th.setData({ add_back: 1,same_ok:1 });
+ th.setData({ add_back: 1, same_ok: 1 });
//th.calculatePrice2();
}
} else {
if (th.data.cartlist) {
- th.setData({ add_back: 1,same_ok:1 });
+ th.setData({ add_back: 1, same_ok: 1 });
//th.calculatePrice();
}
}
} else {
- th.setData({ user_addr: ie,show_submit:0 });
+ th.setData({ user_addr: ie, show_submit: 0 });
}
});
var is_card_back = getApp().globalData.is_card_back;
@@ -408,9 +413,9 @@ Page({
th.data.ispt_goods = json_d.ispt_goods; //是不是平摊到单品的控制参数赋值
var is_default_logistics = json_d.is_default_logistics;
var is_same_city = json_d.is_same_city;
-
+
th.setData({
- is_pre_cut:json_d.is_pre_cut,//预存是否可以使用0是不可以 ,1是可以
+ is_pre_cut: json_d.is_pre_cut,//预存是否可以使用0是不可以 ,1是可以
is_close_quan: json_d.is_close_quan,
sales_rules: ee.sales_rules,
rank_switch: json_d.rank_switch,
@@ -510,16 +515,16 @@ Page({
this.setData({ [txt]: 2 })
}
//搭配购直接购买特殊处理
- if(this.data.collocation_goods && this.data.collocation_goods.length>0 && this.data.cartlist){
+ if (this.data.collocation_goods && this.data.collocation_goods.length > 0 && this.data.cartlist) {
let txt = 'cartlist[0].yck_off';
let txt1 = 'old_cartlist[0].yck_off';
- if (this.data.cartlist[0].yck_off == 2) {
+ if (this.data.cartlist[0].yck_off == 2) {
this.setData({ [txt]: 1, [txt1]: 1 })
} else if (this.data.cartlist[0].yck_off == 1) {
this.setData({ [txt]: 2, [txt1]: 2 })
}
this.calculatePrice()//计算金额
- }else{
+ } else {
this.calculatePrice2()//计算金额
}
},
@@ -528,7 +533,7 @@ Page({
// let cartList= this.data.cartlist
// let cartList= arr
// let length = cartList.length
- if(!this.data.is_pre_cut){
+ if (!this.data.is_pre_cut) {
return {}
}
wx.showLoading({
@@ -547,15 +552,15 @@ Page({
//--- 预存要以商品的实收为准, ---
goods.map(ite => {
//-- 不是赠品的时候 --
- if(!ite.is_gift){
+ if (!ite.is_gift) {
let obj = {
- goods_sn:ite.goods_sn,
+ goods_sn: ite.goods_sn,
goods_id: ite.goods_id,
prom_type: ite.prom_type,
prom_id: ite.id,
goods_price: ite.goods_price, //account是平摊后的实收价格
goods_num: ite.goods_num,
- sumgoods_price: ite.account_fir * ite.goods_num - ite.account_yu_fir-(ite.quan_num?ite.quan_num:0) //-- 优惠后的实收 --
+ sumgoods_price: ite.account_fir * ite.goods_num - ite.account_yu_fir - (ite.quan_num ? ite.quan_num : 0) //-- 优惠后的实收 --
}
new_arr.push(obj);
}
@@ -578,7 +583,7 @@ Page({
}
})
if (pt_res) {
- for (let io = 0; io {
//-- 不是赠品的时候 --
- if(!ite.is_gift) {
+ if (!ite.is_gift) {
let obj = {
wareno: ite.goods_sn,
price: ite.account_fir, //account是平摊后的实收价格
qty: ite.goods_num,
- sumprice: parseFloat(ite.account_fir * ite.goods_num - ite.account_yu_fir-(ite.quan_num?ite.quan_num:0)).toFixed(2)
+ sumprice: parseFloat(ite.account_fir * ite.goods_num - ite.account_yu_fir - (ite.quan_num ? ite.quan_num : 0)).toFixed(2)
}
listform.push(obj)
}
@@ -620,15 +625,15 @@ Page({
//计算商品预存款请求方法------------------------------------
async getGoodsAdvancesum(storageid, listform, cartList) {
- if(!getApp().globalData.config){
- await getApp().request.promiseGet("/api/weshop/store/get/" + os.stoid,{
- }).then(res=>{
- if(res.data.code==0){
- getApp().globalData.config = res.data.data
- }
+ if (!getApp().globalData.config) {
+ await getApp().request.promiseGet("/api/weshop/store/get/" + os.stoid, {
+ }).then(res => {
+ if (res.data.code == 0) {
+ getApp().globalData.config = res.data.data
+ }
})
}
- if(!getApp().globalData.config) return false;
+ if (!getApp().globalData.config) return false;
let res = await getApp().request.promisePost(`/api/weshop/delphiapi/saveErpApi`, {
data: {
accdb: getApp().globalData.config.erpid,
@@ -651,7 +656,7 @@ Page({
if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
let resData = res.data.data
resData.map(ite => {
- yck += ite.advancesum*1
+ yck += ite.advancesum * 1
yckIdArr.push(ite.advanceitemid)
})
pre_json = resData
@@ -816,7 +821,7 @@ Page({
var collocation_list = [];
var pick = null;
var distr_t = 0;
-
+
//如果是购物车的时候,
if (arr) {
// var idx = th.data.allsto.findIndex(function (e) {
@@ -843,7 +848,7 @@ Page({
distr_t = gd.distr_type || pick.distr_type;
}
- var prom=null;
+ var prom = null;
await getApp().request.promiseGet("/api/weshop/goods/getGoodsPromListNew/"
+ os.stoid + "/" + gd.goods_id + "/0/" + user_id, {
}).then(res => {
@@ -851,7 +856,7 @@ Page({
var r_data = res.data.data;
if (r_data.collocationList) {
collocation_list = r_data.collocationList;
- prom= r_data.collocationPromList;
+ prom = r_data.collocationPromList;
}
}
})
@@ -866,25 +871,25 @@ Page({
// new_arr.push(item0);
// }
// }
-
+
if (!new_arr.length) return null;
- this.data.coll_prom[prom.id]=prom;
+ this.data.coll_prom[prom.id] = prom;
for (let i = 0; i < new_arr.length; i++) {
- new_arr[i].is_coupon=prom.is_coupon;
+ new_arr[i].is_coupon = prom.is_coupon;
}
if (arr) {
//-- 看一下增品是不是已经在购物车列表中 --
- for(var ig=0;ig-1){
- last_id=goods[i].goods_id;
- }
+ is_last(gid, goods, map) {
+ let last_id = 0;
+ for (let i = 0; i < goods.length; i++) {
+ if (map && map.indexOf(goods[i].goods_id) > -1) {
+ last_id = goods[i].goods_id;
+ }
}
- if(gid==last_id) return true;
+ if (gid == last_id) return true;
return false;
},
//-- is_change是有没有切换活动的意思 --
- async get_cart_next(carr,is_change,old_prom){
+ async get_cart_next(carr, is_change, old_prom) {
- this.setData({yh_is_xz_yh:{}});
+ this.setData({ yh_is_xz_yh: {} });
//--- 切换的时候一定要把赠品去掉 ---
- if(is_change){
+ if (is_change) {
- carr=JSON.parse(JSON.stringify(this.data.cartlist_y));
+ carr = JSON.parse(JSON.stringify(this.data.cartlist_y));
//-- 剔除赠品的数据,等到确定活动是优惠促销的时候,在显示赠品, 赠品直接删除 --
- var new_arr=[];
+ var new_arr = [];
for (var ir = 0; ir < carr.length; ir++) {
- var c_ok=1;
- if(old_prom && (carr[ir].prom_type!=old_prom.prom_type || carr[ir].prom_id!=old_prom.prom_id) ){
- c_ok=0;
+ var c_ok = 1;
+ if (old_prom && (carr[ir].prom_type != old_prom.prom_type || carr[ir].prom_id != old_prom.prom_id)) {
+ c_ok = 0;
}
- if(carr[ir].is_gift && carr[ir].id && c_ok) {
+ if (carr[ir].is_gift && carr[ir].id && c_ok) {
var url = '/api/weshop/cart/del/' + oo.stoid + '/' + carr[ir].id;
getApp().request.delete(url, {
- success: function (t) {}
+ success: function (t) { }
});
//商品已经下架
continue;
@@ -1013,15 +1018,15 @@ Page({
new_arr.push(carr[ir]);
}
- this.data.cartlist_y=JSON.parse(JSON.stringify(new_arr));
- carr=new_arr;
+ this.data.cartlist_y = JSON.parse(JSON.stringify(new_arr));
+ carr = new_arr;
//-- map cy_cx属性要删除 --
- var map=this.data.prom_goods_map;
- if(map){
+ var map = this.data.prom_goods_map;
+ if (map) {
for (var ky in map) {
- if(map[ky]){
- var ob=map[ky];
+ if (map[ky]) {
+ var ob = map[ky];
for (var ii in ob) {
var item_map = ob[ii];
if (item_map.hasOwnProperty('cy_cx')) {
@@ -1036,16 +1041,16 @@ Page({
//按门店分类的数组
var arr = new Array();
- var th=this;
+ var th = this;
th.data.in_zhact_gdmap = {};
//---是不是购买等级卡成功的返回---等级卡显示的判断---
var is_card_back = getApp().globalData.is_card_back;
//-- 判断组合购是总数量是不是存在 --
- var no_zh_num={};
+ var no_zh_num = {};
//-- 多促销活动调用接口需要的参数,和商品的购买数量和活动的购买数量的请求参数 --
- if(!is_change) {
+ if (!is_change) {
//-- 多促销活动调用接口需要的参数,和商品的购买数量和活动的购买数量的请求参数 --
var dug_cx_arr = [];
//获取 限购 和 多活动的促销---2024-2-1
@@ -1054,7 +1059,7 @@ Page({
let item1 = carr[iv];
//如果不是活动的时候,不是代发商品的时候,不是赠品的时候,不是阶梯商品拆分的,不是组合购拆分的
if ([1, 2, 4, 6, 8, 9].indexOf(item1.prom_type) == -1 && !item1.whsle_id
- && !item1.is_gift && !item1.is_ld_split && !item1.is_zh_split) {
+ && !item1.is_gift && !item1.is_ld_split && !item1.is_zh_split) {
//-- 快速查找,组装查询多活动的列表 --
let f_idx = dug_cx_arr.findIndex(function (ele) {
return ele.goods_id == item1.goods_id
@@ -1077,8 +1082,8 @@ Page({
}
}
//-- 对商品的多促销进行判断 ---2024-2-1--
- if(dug_cx_arr.length){
- await th.buy_pro_group(dug_cx_arr,carr);
+ if (dug_cx_arr.length) {
+ await th.buy_pro_group(dug_cx_arr, carr);
}
}
//在分组的时候,就不要再调用接口,await
@@ -1105,8 +1110,8 @@ Page({
break;
}
- if(!carr[i].prom_type) carr[i].prom_type=0;
- switch (parseInt(carr[i].prom_type)){
+ if (!carr[i].prom_type) carr[i].prom_type = 0;
+ switch (parseInt(carr[i].prom_type)) {
case 4:
carr[i].is_integral_normal = 1;
break;
@@ -1137,7 +1142,7 @@ Page({
} else {
// 拼团,搭配购不计算,赠品也不计算,同时会员还未购买等级会员
if (item[th.data.card_name] > 0 && item['prom_type'] != 5 && item['prom_type'] != 6 && !th.data.userinfo.card_field
- && !item.is_gift && !item['is_collocation'] && item.goods_price > item[th.data.card_name]) {
+ && !item.is_gift && !item['is_collocation'] && item.goods_price > item[th.data.card_name]) {
item.cut_price1 = item.goods_price - item[th.data.card_name];
carr[i].cut_price1 = (item.goods_price - item[th.data.card_name]) * item.goods_num;
}
@@ -1145,7 +1150,7 @@ Page({
}
//商品的图片不能重复的赋值
- if(item.original_img.indexOf(oo.imghost)==-1)
+ if (item.original_img.indexOf(oo.imghost) == -1)
item.original_img = oo.imghost + item.original_img;
var car_item = item;
@@ -1163,8 +1168,8 @@ Page({
if (arr[j].distr_t == 0) {
arr[j].distr_t = car_item.distr_type;
}
- }else{
- item.distr_type=0; //赠品不控制物流的方式
+ } else {
+ item.distr_type = 0; //赠品不控制物流的方式
}
var e_t = 0, dis_t = 0;//物流方式,配送方式
@@ -1175,22 +1180,22 @@ Page({
}
switch (dis_t) {
case 0:
- if(!arr[j].exp_sure){
+ if (!arr[j].exp_sure) {
e_t = 1;
//-- 系统后台有设置要默认的 --
if (th.data.json_d.pickupway && th.data.json_d.pickupway == 1) e_t = 0;
- arr[j].exp_type=e_t
+ arr[j].exp_type = e_t
}
break;
case 1:
e_t = 1;
- arr[j].exp_sure=1
- arr[j].exp_type=1
+ arr[j].exp_sure = 1
+ arr[j].exp_type = 1
break;
case 2:
e_t = 0;
- arr[j].exp_sure=1
- arr[j].exp_type=0
+ arr[j].exp_sure = 1
+ arr[j].exp_type = 0
break;
}
//如果是物流的话,全部自提的控制要弄成0
@@ -1210,7 +1215,7 @@ Page({
}
}
- if(car_item.is_gift != 1){
+ if (car_item.is_gift != 1) {
arr[j].exp_type = e_t;
if (e_t == 0) th.setData({ is_all_zt: 0 });
}
@@ -1241,12 +1246,12 @@ Page({
var pikname = '', sto = null;
//----找到门店名称-----
pikname = item.pickup_name;
- sto ={
- pickup_id:item.pick_id,
- pickup_name:pikname,
- distr_type:item.pickup_distr_type,
- keyid:item.keyid,
- is_same_city:item.is_same_city,
+ sto = {
+ pickup_id: item.pick_id,
+ pickup_name: pikname,
+ distr_type: item.pickup_distr_type,
+ keyid: item.keyid,
+ is_same_city: item.is_same_city,
};
var e_t = 0, dis_t = 0;//物流方式,配送方式
if (item.distr_type == 0) {
@@ -1255,7 +1260,7 @@ Page({
dis_t = item.distr_type;
}
- let exp_sure=0;
+ let exp_sure = 0;
switch (dis_t) {
case 0:
e_t = 1;
@@ -1264,11 +1269,11 @@ Page({
break;
case 1:
e_t = 1;
- exp_sure=1;
+ exp_sure = 1;
break;
case 2:
e_t = 0;
- exp_sure=1;
+ exp_sure = 1;
break;
}
//如果是物流的话,全部自提的控制要弄成0
@@ -1308,7 +1313,7 @@ Page({
order_amount: 0,
user_note: "",
sto: sto,
- exp_sure:1
+ exp_sure: 1
};
//-- 把等级卡会优惠多少钱装进去 --
@@ -1336,14 +1341,14 @@ Page({
}
}
}
- else{
- var is_a_zt =1;
+ else {
+ var is_a_zt = 1;
for (var ih in arr) {
var ie = arr[ih];
//-- 是不是全部自提清空 --
- if (ie.exp_type == 0 || ie.exp_type == 2) is_a_zt= 0;
+ if (ie.exp_type == 0 || ie.exp_type == 2) is_a_zt = 0;
}
- th.setData({ is_all_zt: is_a_zt});
+ th.setData({ is_all_zt: is_a_zt });
}
var cart_commission = 0;
@@ -1354,18 +1359,18 @@ Page({
//-- 要进行归类一下活动 --
await m_cx.cart_cx_group(th, arr[k].goods, c_item, 0, 0, (show_can_cx) => {
//后台计算使用
- th.data.show_can_cx_map[c_item.pickup_id]=show_can_cx;
+ th.data.show_can_cx_map[c_item.pickup_id] = show_can_cx;
//-- 把活动组装进去 ---
let show_can_cx1 = ut.deep_cp(show_can_cx);
//前端处理渲染的时,要处理一些不需要的字段属性
- if(show_can_cx1){
+ if (show_can_cx1) {
for (const key in show_can_cx1) {
let element = show_can_cx1[key];
- if(element.cur_act){
- let c_act=element.cur_act;
+ if (element.cur_act) {
+ let c_act = element.cur_act;
delete c_act.goods;
}
- if(element.act_arr && element.act_arr.length>0){
+ if (element.act_arr && element.act_arr.length > 0) {
for (var ij = 0; ij < element.act_arr.length; ij++) {
var act_ite = element.act_arr[ij];
delete act_ite.goods;
@@ -1375,7 +1380,7 @@ Page({
}
}
arr[k].show_can_cx = show_can_cx1;
- },2)
+ }, 2)
} else {
var show_can_cx = this.data.cartlist[k].show_can_cx;
//-- 多促销活动的优化 --
@@ -1388,28 +1393,28 @@ Page({
for (var jh = 0; jh < arr[k].goods.length; jh++) {
var item1 = arr[k].goods[jh];
- if(arr[k].show_can_cx){
+ if (arr[k].show_can_cx) {
for (let key_o in arr[k].show_can_cx) {
- let k_arr=key_o.split(',');
- if(k_arr.indexOf(item1.goods_id+'')>-1 ){
+ let k_arr = key_o.split(',');
+ if (k_arr.indexOf(item1.goods_id + '') > -1) {
//-- 如果初始活动在计算的时候,是不满足的时候,就要把活动清理掉 --
- var is_no_ok=arr[k].show_can_cx[key_o].cur_act.is_no_ok;
- if(is_no_ok==1){
-
- let temp_id=arr[k].show_can_cx[key_o].cur_act.prom_id;
- switch (parseInt(arr[k].show_can_cx[key_o].cur_act.prom_type+'')){
- case 3:
- var yhcx_act_map=th.data.yhcx_act_map?th.data.yhcx_act_map[temp_id]:null;
- if(yhcx_act_map && !yhcx_act_map.is_order_yh){
- item1.is_no_order_yh=1;
- }
- break;
- case 7:
- var zhhe_act=th.data.zhhe_act_map?th.data.zhhe_act_map[temp_id]:null;
- if(zhhe_act && !zhhe_act.is_orderyh){
- item1.is_no_order_yh=1;
- }
- break;
+ var is_no_ok = arr[k].show_can_cx[key_o].cur_act.is_no_ok;
+ if (is_no_ok == 1) {
+
+ let temp_id = arr[k].show_can_cx[key_o].cur_act.prom_id;
+ switch (parseInt(arr[k].show_can_cx[key_o].cur_act.prom_type + '')) {
+ case 3:
+ var yhcx_act_map = th.data.yhcx_act_map ? th.data.yhcx_act_map[temp_id] : null;
+ if (yhcx_act_map && !yhcx_act_map.is_order_yh) {
+ item1.is_no_order_yh = 1;
+ }
+ break;
+ case 7:
+ var zhhe_act = th.data.zhhe_act_map ? th.data.zhhe_act_map[temp_id] : null;
+ if (zhhe_act && !zhhe_act.is_orderyh) {
+ item1.is_no_order_yh = 1;
+ }
+ break;
}
@@ -1417,17 +1422,17 @@ Page({
item1.prom_type = 0;
//这里要判断一下活动的最后一个商品,is_act_last
- if(th.is_last(item1.goods_id,arr[k].goods,arr[k].show_can_cx[key_o].ch_map)){
- item1.is_act_last=1; //这个是要在前端显示按钮切换的
+ if (th.is_last(item1.goods_id, arr[k].goods, arr[k].show_can_cx[key_o].ch_map)) {
+ item1.is_act_last = 1; //这个是要在前端显示按钮切换的
}
- }else{
+ } else {
- let obj=arr[k].show_can_cx[key_o];
+ let obj = arr[k].show_can_cx[key_o];
//不是优惠促销的不参与 不是订单促销参与(订单促销不是实收价的时候)
- let ck1=obj.no_cj_prom && obj.cur_act.prom_type==3;
- let ck2=th.data.can_use_ord_prom[arr[k].pickup_id];
- if( !ck1 && !ck2){
+ let ck1 = obj.no_cj_prom && obj.cur_act.prom_type == 3;
+ let ck2 = th.data.can_use_ord_prom[arr[k].pickup_id];
+ if (!ck1 && !ck2) {
item1.prom_id = arr[k].show_can_cx[key_o].cur_act.prom_id;
item1.prom_type = arr[k].show_can_cx[key_o].cur_act.prom_type;
}
@@ -1616,30 +1621,30 @@ Page({
}
//默认是包邮和优惠的
- item1.is_order_yh=1;
- item1.is_post_temp=1;
+ item1.is_order_yh = 1;
+ item1.is_post_temp = 1;
//如果是秒杀,团购的时候,优惠促销和搭配购的时候
- if([1,2,3,5,6,7,10].indexOf(item1.prom_type)>-1){
+ if ([1, 2, 3, 5, 6, 7, 10].indexOf(item1.prom_type) > -1) {
//由于是购物车购买,所以prom_type 基本不会员等于6
- if(item1.prom_type==1 || item1.prom_type==6) {
- item1.is_quan=0;
+ if (item1.prom_type == 1 || item1.prom_type == 6) {
+ item1.is_quan = 0;
}
- let t_goodsActinfo=item1.goodsActinfo;
- if(t_goodsActinfo && t_goodsActinfo.length){
- let ff_prom=t_goodsActinfo.find(function (e){
- return e.prom_type==item1.prom_type;
+ let t_goodsActinfo = item1.goodsActinfo;
+ if (t_goodsActinfo && t_goodsActinfo.length) {
+ let ff_prom = t_goodsActinfo.find(function (e) {
+ return e.prom_type == item1.prom_type;
})
- if(ff_prom){
- if(item1.prom_type!=7 && item1.prom_type!=10) {
- item1.is_order_yh=ff_prom.is_order_yh;
- }else item1.is_order_yh=0;
+ if (ff_prom) {
+ if (item1.prom_type != 7 && item1.prom_type != 10) {
+ item1.is_order_yh = ff_prom.is_order_yh;
+ } else item1.is_order_yh = 0;
- item1.is_post_temp=ff_prom.is_post_temp;
+ item1.is_post_temp = ff_prom.is_post_temp;
//由于是购物车购买,所以prom_type 基本不会员等于6
- if(item1.prom_type==1 || item1.prom_type==6) {
- item1.is_quan=item1.cartActinfo.is_quan;
+ if (item1.prom_type == 1 || item1.prom_type == 6) {
+ item1.is_quan = item1.cartActinfo.is_quan;
}
}
}
@@ -1677,7 +1682,7 @@ Page({
//-- 有开启佣金抵扣的时候 --
if (getApp().globalData.userInfo.is_distribut
- && th.data.dis_config && th.data.dis_config.is_yongjin_dk) {
+ && th.data.dis_config && th.data.dis_config.is_yongjin_dk) {
if (!item[c].is_gift) {
var hr = {
@@ -1744,7 +1749,7 @@ Page({
var u_item = arr[var1];
//把组合购进行分组
var obj = zh_calc.find_split(u_item);
- if (!obj){
+ if (!obj) {
continue;
}
//存储不同活动的商品列表
@@ -1779,7 +1784,7 @@ Page({
//-- 要判断总开关有没有同城配送 --
- if(th.data.is_same_city) {
+ if (th.data.is_same_city) {
//----- 判断每一个商品的配送方式,和门店的配送方式 -------
for (var ik = 0; ik < arr.length; ik++) {
if (!arr[ik].sto.is_same_city) continue;
@@ -1794,30 +1799,30 @@ Page({
//深拷贝
th.data.old_cartlist = JSON.parse(JSON.stringify(arr));
- th.data.cartlist=arr;
+ th.data.cartlist = arr;
//-- 大于20使用逐步渲染 --
- if(arr.length>10){
- for (let ib = 0; ib 10) {
+ for (let ib = 0; ib < arr.length; ib++) {
//-- 都用深拷贝 --
- var ite=ut.deep_cp(th.data.old_cartlist[ib]);
+ var ite = ut.deep_cp(th.data.old_cartlist[ib]);
delete ite.goods;
- var txt0="cartlist["+ib+"]";
+ var txt0 = "cartlist[" + ib + "]";
th.setData({
- [txt0]:ite
+ [txt0]: ite
})
//都用深拷贝
- var tt_goods=ut.deep_cp(th.data.old_cartlist[ib].goods);
- for (let iz = 0; iz {
+ var tt_goods = ut.deep_cp(th.data.old_cartlist[ib].goods);
+ for (let iz = 0; iz < tt_goods.length; iz++) {
+ var txt = "cartlist[" + ib + "].goods[" + iz + "]";
+ setTimeout(() => {
th.setData({
- [txt]:tt_goods[iz]
+ [txt]: tt_goods[iz]
})
- },ib*200+iz*300+100)
+ }, ib * 200 + iz * 300 + 100)
}
}
- }else{
+ } else {
th.setData({
cartlist: arr,
});
@@ -1843,7 +1848,7 @@ Page({
get_buy_goods: function (e) {
var th = this;
var gg = to.get_b_now();
-
+
//--------如果goods_id一样,就是要立即购买-----
if (e == gg.goods_id) {
a.get("/api/weshop/goods/get/" + oo.stoid + "/" + e, {
@@ -1865,7 +1870,7 @@ Page({
})
}
-
+
t.data.data.original_img = oo.imghost + t.data.data.original_img;
t.data.data['buynum'] = gg.goods_num;
var distr_t = 0, et = 0
@@ -1912,7 +1917,7 @@ Page({
break;
}
- if(th.data.show_same_city==1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2 ){
+ if (th.data.show_same_city == 1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2) {
et = 2;
}
@@ -1954,9 +1959,9 @@ Page({
//-- 当是搭配购的时候 --
gd.prom_type = gg.prom_type ? gg.prom_type : 0;
gd.prom_id = gg.prom_id ? gg.prom_id : 0;
-
+
//-- 判断是不是可以收藏 --
- if (gd.prom_type == 5 && !th.data.all_collocation_list.length) {
+ if (gd.prom_type == 5 && !th.data.all_collocation_list.length) {
await th.set_collection(gd);
}
@@ -2091,11 +2096,11 @@ Page({
t.data.data.guide_id = gg.guide_id;
t.data.data.guide_type = gg.guide_type;
}
- if(gg.groupchat_id && gg.groupchat_id!='undefined'){
- t.data.data.groupchat_id=groupchat_id;
+ if (gg.groupchat_id && gg.groupchat_id != 'undefined') {
+ t.data.data.groupchat_id = groupchat_id;
}
//搭配购如果原来就有勾选,不能直接赋值,旧的要保留
- if(!th.data.collocation_goods){
+ if (!th.data.collocation_goods) {
th.setData({ collocation_goods: gg.collocation_goods });
}
// if(th.data.collocation_goods && th.data.collocation_goods.length){
@@ -2107,8 +2112,8 @@ Page({
// }else{
// th.setData({ collocation_goods: gg.collocation_goods });
// }
-
- if (th.data.all_collocation_list && gg.collocation_goods && gg.collocation_goods.length>0) {
+
+ if (th.data.all_collocation_list && gg.collocation_goods && gg.collocation_goods.length > 0) {
for (var i = 0; i < th.data.all_collocation_list.length; i++) {
var item0 = th.data.all_collocation_list[i];
var idx = gg.collocation_goods.findIndex(function (e) {
@@ -2118,15 +2123,15 @@ Page({
if (idx != -1) {
var txt = 'all_collocation_list[' + i + '].selected';
th.setData({ [txt]: 1 });
- }else{
+ } else {
var txt = 'all_collocation_list[' + i + '].selected';
th.setData({ [txt]: 0 });
}
}
}
-
- if( gg.collocation_goods && gg.collocation_goods.length>0){
+
+ if (gg.collocation_goods && gg.collocation_goods.length > 0) {
//var narr=gg.collocation_goods;
//修改成深拷贝,确保返回是数据正确
var narr = JSON.parse(JSON.stringify(gg.collocation_goods));
@@ -2142,7 +2147,7 @@ Page({
//--搭配促销也是按照购物车的方式来计算优惠券--
- if (gg.prom_type == 5 && th.data.collocation_goods && th.data.collocation_goods.length>0 ) {
+ if (gg.prom_type == 5 && th.data.collocation_goods && th.data.collocation_goods.length > 0) {
var frozenQuan = null;
var url0 = "/api/weshop/users/frozenQuan/listFrozenQuan/" + app.globalData.user_id;
app.request.promiseGet(url0, { 1: 1 }).then(res => {
@@ -2172,8 +2177,8 @@ Page({
if (tt.data.code == 0) {
//t.data.data.shop_price = tt.data.data.prom_price;
- gd.shop_price_y=gd.shop_price;
- gd.shop_price=t.data.data.shop_price = tt.data.data.prom_user_price;
+ gd.shop_price_y = gd.shop_price;
+ gd.shop_price = t.data.data.shop_price = tt.data.data.prom_user_price;
th.data.ckeck_quan_price = 0;
t.data.data.fir_rate = tt.data.data.fir_rate;
@@ -2222,7 +2227,7 @@ Page({
//用深拷贝把商品缓存起来,方便后面使用
- th.data.old_bn_goods=ut.deep_cp(gd);
+ th.data.old_bn_goods = ut.deep_cp(gd);
th.setData({
bn_goods: gd,
@@ -2249,34 +2254,34 @@ Page({
success: async function (tt) {
if (tt.data.code == 0) {
//获取一下主表的信息
- ut.get_active_info(2,gd.prom_id,os.stoid,function(e){
+ ut.get_active_info(2, gd.prom_id, os.stoid, function (e) {
//t.data.data.shop_price = tt.data.data.prom_price;
- gd.shop_price_y=gd.shop_price;
- gd.shop_price=t.data.data.shop_price = tt.data.data.price;
+ gd.shop_price_y = gd.shop_price;
+ gd.shop_price = t.data.data.shop_price = tt.data.data.price;
t.data.data.fir_rate = tt.data.data.fir_rate;
t.data.data.sec_rate = tt.data.data.sec_rate;
t.data.data.thi_rate = tt.data.data.thi_rate;
t.data.data.commission = tt.data.data.commission;
- if(tt.data.data.is_order_yh){
- th.data.bn_is_order_yh=1;
- }else{
- th.data.bn_is_order_yh=0;
+ if (tt.data.data.is_order_yh) {
+ th.data.bn_is_order_yh = 1;
+ } else {
+ th.data.bn_is_order_yh = 0;
}
- if(tt.data.data.is_post_temp){
- th.data.bn_is_post_temp=1;
- }else{
- th.data.bn_is_post_temp=0;
+ if (tt.data.data.is_post_temp) {
+ th.data.bn_is_post_temp = 1;
+ } else {
+ th.data.bn_is_post_temp = 0;
}
//-- 计算获得佣金的金额 --
if (getApp().globalData.userInfo.is_distribut
- && th.data.dis_config && th.data.dis_config.is_yongjin_dk) {
+ && th.data.dis_config && th.data.dis_config.is_yongjin_dk) {
- var c_num = getApp().get_commission(th.data.dis_config, t.data.data, gg.goods_num,th);
+ var c_num = getApp().get_commission(th.data.dis_config, t.data.data, gg.goods_num, th);
gd.use_commission = c_num;
t.data.data.use_commission = c_num;
@@ -2294,7 +2299,7 @@ Page({
//用深拷贝把商品缓存起来,方便后面使用
- th.data.old_bn_goods=ut.deep_cp(gd);
+ th.data.old_bn_goods = ut.deep_cp(gd);
th.setData({
bn_goods: gd,
@@ -2322,7 +2327,7 @@ Page({
//-- 计算获得佣金的金额 --
if (getApp().globalData.userInfo.is_distribut
- && th.data.dis_config && th.data.dis_config.is_yongjin_dk) {
+ && th.data.dis_config && th.data.dis_config.is_yongjin_dk) {
var c_num = getApp().get_commission2(th.data.dis_config, t.data.data, gg.goods_num);
gd.use_commission = c_num;
@@ -2371,34 +2376,34 @@ Page({
//-- 立即购买的时候,获取商品优惠活动,is_state判断是不是单个商品购买,
// 很多活动需要判断会员的plus等级, 权益登陆,user_id调用接口是必须的 --
//先用着,后面会用接口来代替
- async buy_pro_group(g_arr,carr) {
- var th=this;
+ async buy_pro_group(g_arr, carr) {
+ var th = this;
//获取商品参与的促销活,优惠促,搭配促,组合促,阶梯促销
- let cx_rs= await getApp().request.promisePost("/api/weshop/cart/listGoodsPromInfo",{
- is_json:1,
- data:{
- user_id:app.globalData.user_id,
- store_id:oo.stoid,
- goods:g_arr,
+ let cx_rs = await getApp().request.promisePost("/api/weshop/cart/listGoodsPromInfo", {
+ is_json: 1,
+ data: {
+ user_id: app.globalData.user_id,
+ store_id: oo.stoid,
+ goods: g_arr,
}
});
//-- 判断返回结果有没有正确,有促销活动就要进行赋值 --
- if(cx_rs && cx_rs.data.code==0 && cx_rs.data.data && cx_rs.data.data.goods) {
- let g_list=cx_rs.data.data.goods;
+ if (cx_rs && cx_rs.data.code == 0 && cx_rs.data.data && cx_rs.data.data.goods) {
+ let g_list = cx_rs.data.data.goods;
for (var ia = 0; ia < carr.length; ia++) {
if (carr[ia].whsle_id) continue; //代发商品不进行赋值
if (carr[ia].is_gift) continue; //赠品不进行赋值
//有参与秒,团购之类的活动不进行赋值
- if([1, 2, 4, 6, 8, 9].indexOf(carr[ia].prom_type)> -1 ) continue;
+ if ([1, 2, 4, 6, 8, 9].indexOf(carr[ia].prom_type) > -1) continue;
//再g_list中快速查找
- let i_fd=g_list.find(function (ele) {
+ let i_fd = g_list.find(function (ele) {
return ele.goods_id == carr[ia].goods_id
});
- if(i_fd.goodsPromInfoRespDto){
+ if (i_fd.goodsPromInfoRespDto) {
//-- 多促销活动的优化 --
- i_fd=i_fd.goodsPromInfoRespDto;
+ i_fd = i_fd.goodsPromInfoRespDto;
//-- 赋值多促销活动的优化--
- carr[ia].more_cx=i_fd.more_cx;
+ carr[ia].more_cx = i_fd.more_cx;
//商品优惠促销的缓存
if (i_fd.yhcx_pro) {
@@ -2469,42 +2474,42 @@ Page({
},
- show_ly:function (t){
- var index = t.currentTarget.dataset.index;
- var txt='ly_map['+index+']';
- this.setData({
- [txt]:1
- })
+ show_ly: function (t) {
+ var index = t.currentTarget.dataset.index;
+ var txt = 'ly_map[' + index + ']';
+ this.setData({
+ [txt]: 1
+ })
},
- hide_ly:function (t){
- var index = t.currentTarget.dataset.index;
- var txt='ly_map['+index+']';
- this.setData({
- [txt]:0
- })
+ hide_ly: function (t) {
+ var index = t.currentTarget.dataset.index;
+ var txt = 'ly_map[' + index + ']';
+ this.setData({
+ [txt]: 0
+ })
},
//寻找活动在列表中的最后一个
- find_pro_last(ord_goods,prom_type,prom_id){
- if(!ord_goods || ord_goods.length==0) return -1;
- var len=ord_goods.length;
- for(var i=len-1;i>-1;i--){
- var e=ord_goods[i];
- if(e.prom_type==prom_type && e.prom_id==prom_id && e.is_gift!=1){
- return i;
- }
- }
- return -1;
+ find_pro_last(ord_goods, prom_type, prom_id) {
+ if (!ord_goods || ord_goods.length == 0) return -1;
+ var len = ord_goods.length;
+ for (var i = len - 1; i > -1; i--) {
+ var e = ord_goods[i];
+ if (e.prom_type == prom_type && e.prom_id == prom_id && e.is_gift != 1) {
+ return i;
+ }
+ }
+ return -1;
},
//寻找活动在列表中的最后一个
- is_has_gift(ord_goods,prom_id){
- if(!ord_goods || ord_goods.length==0) return false;
- var len=ord_goods.length;
- for(var i=0;i-1){
- var newd = {
- goods_id: get_data.goods_id,
- goods_num: get_data.bs * get_data.zp_num, //是赠品的翻倍
- pick_id: pickid,
- user_id: app.globalData.user_id,
- store_id: os.stoid,
- goods_price: 0,
- member_goods_price: 0,
- goods_name: get_data.goods_name,
- goods_sn: get_data.goodsinfo.goods_sn,
- sku: get_data.goodsinfo.sku,
- is_gift: 1,
- prom_id: item_map.prom_id,
- prom_type: 3,
- selected: 1,
- gift_id: get_data.gift_id,
- original_img: th.data.imgUrl + get_data.goodsinfo.original_img,
- weight:get_data.goodsinfo.weight, //赠品在计算运费必须的字段
- exp_sum_type:get_data.goodsinfo.exp_sum_type, //赠品在计算运费必须的字段
- uniform_exp_sum:get_data.goodsinfo.uniform_exp_sum, //赠品在计算运费必须的字段
- };
- var fd_gd=ord_goods[pos]
+ //看一下要插入的位置
+ var pos = this.find_pro_last(ord_goods, 3, item_map.prom_id);
+ var pos2 = this.find_pro_last(th.data.old_cartlist[i].goods, 3, item_map.prom_id);
- newd.guide_id=fd_gd.guide_id;
- newd.guide_type=fd_gd.guide_type;
- newd.distr_type=fd_gd.distr_type;
- newd.is_order_yh = fd_gd.is_order_yh;
- newd.is_post_temp = fd_gd.is_post_temp;
+ if (pos > -1) {
+ var newd = {
+ goods_id: get_data.goods_id,
+ goods_num: get_data.bs * get_data.zp_num, //是赠品的翻倍
+ pick_id: pickid,
+ user_id: app.globalData.user_id,
+ store_id: os.stoid,
+ goods_price: 0,
+ member_goods_price: 0,
+ goods_name: get_data.goods_name,
+ goods_sn: get_data.goodsinfo.goods_sn,
+ sku: get_data.goodsinfo.sku,
+ is_gift: 1,
+ prom_id: item_map.prom_id,
+ prom_type: 3,
+ selected: 1,
+ gift_id: get_data.gift_id,
+ original_img: th.data.imgUrl + get_data.goodsinfo.original_img,
+ weight: get_data.goodsinfo.weight, //赠品在计算运费必须的字段
+ exp_sum_type: get_data.goodsinfo.exp_sum_type, //赠品在计算运费必须的字段
+ uniform_exp_sum: get_data.goodsinfo.uniform_exp_sum, //赠品在计算运费必须的字段
+ };
+ var fd_gd = ord_goods[pos]
- if(get_data.zp_by>0){
- newd.is_past=1;
- }
+ newd.guide_id = fd_gd.guide_id;
+ newd.guide_type = fd_gd.guide_type;
+ newd.distr_type = fd_gd.distr_type;
+ newd.is_order_yh = fd_gd.is_order_yh;
+ newd.is_post_temp = fd_gd.is_post_temp;
- ord_goods.splice(pos+1,0,newd);
- th.data.old_cartlist[i].goods.splice(pos2+1,0,newd);
- var txt9 = "cartlist[" + i + "].goods";
- th.setData({ [txt9]: ord_goods })
+ if (get_data.zp_by > 0) {
+ newd.is_past = 1;
+ }
+ ord_goods.splice(pos + 1, 0, newd);
+ th.data.old_cartlist[i].goods.splice(pos2 + 1, 0, newd);
+ var txt9 = "cartlist[" + i + "].goods";
+ th.setData({ [txt9]: ord_goods })
- }
}
+ }
+
},
//-- 其他门店赠品的总和 --
- get_other_gift(c_arr,gift_id,pickid){
- var num=0;
+ get_other_gift(c_arr, gift_id, pickid) {
+ var num = 0;
for (var i in c_arr) {
- var cart_item = c_arr[i]; //就是每一单的意思
- var pickid0 = cart_item.pickup_id;
- //相同门店不用统计
- if(pickid0==pickid) continue;
- var ord_goods = cart_item.goods; //就是每一单的从表的意思
- var fd=ord_goods.find(function (er){
- return er.is_gift && er.gift_id==gift_id
- })
- if(fd){
- num+=fd.goods_num;
- }
+ var cart_item = c_arr[i]; //就是每一单的意思
+ var pickid0 = cart_item.pickup_id;
+ //相同门店不用统计
+ if (pickid0 == pickid) continue;
+ var ord_goods = cart_item.goods; //就是每一单的从表的意思
+ var fd = ord_goods.find(function (er) {
+ return er.is_gift && er.gift_id == gift_id
+ })
+ if (fd) {
+ num += fd.goods_num;
+ }
}
return num;
},
@@ -2615,8 +2620,8 @@ Page({
for (var j = 0; j < ord_goods.length; j++) {
if (ord_goods[j].is_gift) continue;
- ord_goods[j].account_fir=ord_goods[j].goods_price; //初始实际价格
- ord_goods[j].account_yu_fir=0; //初始余数
+ ord_goods[j].account_fir = ord_goods[j].goods_price; //初始实际价格
+ ord_goods[j].account_yu_fir = 0; //初始余数
if (ord_goods[j].whsle_id) continue;
o_price += ord_goods[j].goods_price * ord_goods[j].goods_num;
@@ -2627,7 +2632,7 @@ Page({
var ob = th.data.prom_goods_map[pickid];
for (var ii in ob) {
var item_map = ob[ii];
- var b=1;
+ var b = 1;
//if (item_map.bs == undefined || item_map.bs == null) {
if (!item_map.hasOwnProperty('cy_cx')) {
@@ -2654,26 +2659,26 @@ Page({
item_map.zxlbtitle = get_data.zxlbtitle;
- var rule=JSON.parse(get_data.rule);
- if(rule.is_monthgiftbag && parseFloat(rule.is_monthgiftbag )>0){
+ var rule = JSON.parse(get_data.rule);
+ if (rule.is_monthgiftbag && parseFloat(rule.is_monthgiftbag) > 0) {
//每月礼包
item_map.monthlbtitle = get_data.monthlbtitle;
}
//-- 单赠品和多赠品 --
- if(get_data.gift_id || parseInt(get_data.zp_mode) == 1){
- item_map.zp_by=rule.zp_by;
- get_data.zp_by=rule.zp_by;
+ if (get_data.gift_id || parseInt(get_data.zp_mode) == 1) {
+ item_map.zp_by = rule.zp_by;
+ get_data.zp_by = rule.zp_by;
}
//-- 其他门店赠品的总和 --
- var other_gift=0;
- other_gift=th.get_other_gift(c_arr,get_data.gift_id,pickid);
+ var other_gift = 0;
+ other_gift = th.get_other_gift(c_arr, get_data.gift_id, pickid);
//------end------- ,因为增加了限购数量不限的情况
if (get_data.gift_id && parseInt(get_data.zp_mode) != 1
- && (get_data.zp_num * item_map.bs <= get_data.limit_num-other_gift || !get_data.limit_num)
- && get_data.zp_num * item_map.bs <= get_data.gift_storecount
- && get_data.zp_num>=get_data.must_num //增加一个超量
+ && (get_data.zp_num * item_map.bs <= get_data.limit_num - other_gift || !get_data.limit_num)
+ && get_data.zp_num * item_map.bs <= get_data.gift_storecount
+ && get_data.zp_num >= get_data.must_num //增加一个超量
) {
item_map.gift_id = get_data.gift_id;
@@ -2690,7 +2695,7 @@ Page({
item_map.whsle_id = get_data.goodsinfo.whsle_id;
//-- 购物车添加赠品 --
- th.cart_add_gift(item_map,pickid,i,ord_goods,get_data);
+ th.cart_add_gift(item_map, pickid, i, ord_goods, get_data);
}
item_map.s_libao = get_data.libao;
@@ -2700,9 +2705,9 @@ Page({
item_map.zx_libao = get_data.zxlibao;
item_map.zx_lb_num = get_data.zxlb_num;
//每月礼包
- if(rule.is_monthgiftbag && parseFloat(rule.is_monthgiftbag )>0) {
- item_map.monthlibao = get_data.monthlibao;
- item_map.monthlb_num = get_data.monthlb_num;
+ if (rule.is_monthgiftbag && parseFloat(rule.is_monthgiftbag) > 0) {
+ item_map.monthlibao = get_data.monthlibao;
+ item_map.monthlb_num = get_data.monthlb_num;
}
//------end-------
@@ -2713,15 +2718,15 @@ Page({
for (let iy in get_data.giftsinfo) {
let item = get_data.giftsinfo[iy];
- var c_zp=0;
- if(parseInt(item.limit_num)>0){
- c_zp= parseInt(item.gift_storecount) > parseInt(item.can_num) ? parseInt(item.can_num) : parseInt(item.gift_storecount);
- }else{
- c_zp= parseInt(item.gift_storecount);
+ var c_zp = 0;
+ if (parseInt(item.limit_num) > 0) {
+ c_zp = parseInt(item.gift_storecount) > parseInt(item.can_num) ? parseInt(item.can_num) : parseInt(item.gift_storecount);
+ } else {
+ c_zp = parseInt(item.gift_storecount);
}
- if(c_zp<0) c_zp=0;
- can_zp_num +=c_zp;
+ if (c_zp < 0) c_zp = 0;
+ can_zp_num += c_zp;
}
@@ -2827,21 +2832,21 @@ Page({
ord_goods[j].is_post_temp = item_map.is_post_temp;
//-- 真的判断 --
- var fd_map_gd=th.item_map_get_goods(ord_goods[j].goods_id, item_map);
- if(fd_map_gd){
- if(fd_map_gd.account_fir!=undefined) ord_goods[j].account_fir = fd_map_gd.account_fir;
- if(fd_map_gd.account_yu_fir!=undefined) ord_goods[j].account_yu_fir = fd_map_gd.account_yu_fir;
- if(fd_map_gd.account!=undefined) ord_goods[j].account = fd_map_gd.account;
- if(fd_map_gd.account_yu!=undefined) ord_goods[j].account_yu = fd_map_gd.account_yu;
+ var fd_map_gd = th.item_map_get_goods(ord_goods[j].goods_id, item_map);
+ if (fd_map_gd) {
+ if (fd_map_gd.account_fir != undefined) ord_goods[j].account_fir = fd_map_gd.account_fir;
+ if (fd_map_gd.account_yu_fir != undefined) ord_goods[j].account_yu_fir = fd_map_gd.account_yu_fir;
+ if (fd_map_gd.account != undefined) ord_goods[j].account = fd_map_gd.account;
+ if (fd_map_gd.account_yu != undefined) ord_goods[j].account_yu = fd_map_gd.account_yu;
}
-
+
}
}
}
if (item_map.price != undefined && item_map.price != null
- && item_map.prom_price != undefined && item_map.prom_price != null)
+ && item_map.prom_price != undefined && item_map.prom_price != null)
cart_item.cut_price += (item_map.price - item_map.prom_price);
//---如果有送积分---
if (item_map.s_intValue) {
@@ -2852,10 +2857,10 @@ Page({
if (item_map.s_coupon_id) {
if (!cart_item.s_coupon_id) {
cart_item.s_coupon_id = item_map.s_coupon_id + "";
- cart_item.g_coupon_num = [{'c_id': item_map.s_coupon_id, "num": item_map.s_coupon_num}];
+ cart_item.g_coupon_num = [{ 'c_id': item_map.s_coupon_id, "num": item_map.s_coupon_num }];
} else {
cart_item.s_coupon_id += "," + item_map.s_coupon_id;
- cart_item.g_coupon_num.push({'c_id': item_map.s_coupon_id, "num": item_map.s_coupon_num})
+ cart_item.g_coupon_num.push({ 'c_id': item_map.s_coupon_id, "num": item_map.s_coupon_num })
}
}
@@ -2935,8 +2940,8 @@ Page({
calclate_lbNum(r_data) {
-
- if(!r_data) return false;
+
+ if (!r_data) return false;
let send_lb = this.data.send_lb;
let month_lb = this.data.month_lb;
@@ -2988,7 +2993,7 @@ Page({
}
}
//每月礼包
- let monthArr=[]
+ let monthArr = []
if (r_d.g_monthlb_num) {
let g_lb = r_d.g_monthlb_num;
for (let i = 0; i < g_lb.length; i++) {
@@ -3022,17 +3027,18 @@ Page({
//-------------------计算订单价格-------------------
calculatePrice: async function (qfunc) {
+ console.error('计算价格-----11111111111111111---------');
var th = this;
th.setData({ submit: 1 });
-
+
wx.showLoading({
title: "处理中.",
mask: true
})
//-- to.getwuliuprice(async function (rs) { --
- th.data.lon=0;
- th.data.lat=0;
+ th.data.lon = 0;
+ th.data.lat = 0;
//是不是区域包邮
th.data.is_area_by = 0;
@@ -3043,7 +3049,7 @@ Page({
th.data.cut_goods_weight = 0;
var all_price = 0; //所有的商品总价
- var all_shipping_m = 0; //所有的物流总价
+ var all_shipping_m = 0; //所有的物流总价
var all_total_m = 0; //所有的订单应付总价
var all_order_m = 0; //所有的订单应付总价
var all_user_m = 0; //所有的订单用户使用金额
@@ -3072,22 +3078,22 @@ Page({
for (var i in c_arr) {
var cart_item = c_arr[i];
- cart_item.prom_pt_json=[];
+ cart_item.prom_pt_json = [];
//要清空
- cart_item.g_zxlb_num=[]; //专享礼包
- cart_item.g_lb_num=[]; //旧礼包
- cart_item.g_monthlb_num=[]; //月包
- cart_item.g_coupon_num=[]; //送优惠券
+ cart_item.g_zxlb_num = []; //专享礼包
+ cart_item.g_lb_num = []; //旧礼包
+ cart_item.g_monthlb_num = []; //月包
+ cart_item.g_coupon_num = []; //送优惠券
- cart_item.s_coupon_id='';
- cart_item.s_libao='';
- cart_item.zx_libao='';
- cart_item.monthlibao='';
+ cart_item.s_coupon_id = '';
+ cart_item.s_libao = '';
+ cart_item.zx_libao = '';
+ cart_item.monthlibao = '';
}
- //调用函数计算每件商品的单价
+ //调用函数计算每件商品的单价
await th.calc_per(c_arr);
//调用函数计算每件组合购商品的单价,
@@ -3095,8 +3101,9 @@ Page({
//调用函数计算每件阶梯促销商品的单价,
await ladder_calc.calc_split_price(c_arr, th);
//调用函数计算,优惠券优惠什么商品价格,优惠券优惠什么商品
+ console.error(c_arr);
await th.get_cart_quan(c_arr);
-
+ console.error('优惠券后');
//-- 经纬度不循环调用接口 --
var lon = 0; var lat = 0;
@@ -3146,7 +3153,7 @@ Page({
//普通券的时候
if (quan_no && th.data.using_quan[pickid].isby != 1) {
- var IsUserWare=1;
+ var IsUserWare = 1;
//---获取优惠券优惠---
await getApp().request.promiseGet("/api/weshop/couponList/getUseCouponPrice", {
data: {
@@ -3160,18 +3167,18 @@ Page({
var q_data = res.data.data;
//--存储商品优惠的内容--
cart_item.quan_youhui_list = q_data;
- for (var k in q_data){
- quan_price += q_data[k].WareCashSum;
- IsUserWare=q_data[k].IsUserWare;
- if(!IsUserWare){
- quan_price=0;
- break;
- }
+ for (var k in q_data) {
+ quan_price += q_data[k].WareCashSum;
+ IsUserWare = q_data[k].IsUserWare;
+ if (!IsUserWare) {
+ quan_price = 0;
+ break;
+ }
}
}
})
- if(!IsUserWare){
+ if (!IsUserWare) {
wx.showToast({
title: '优惠券使用对象的订单金额未满足',
@@ -3179,16 +3186,16 @@ Page({
duration: 1000,
});
th.setData({ submit: 0 });
- var txt='using_quan['+pickid+']';
- th.setData({[txt]:null});
+ var txt = 'using_quan[' + pickid + ']';
+ th.setData({ [txt]: null });
return false;
}
- if(cart_item.quan_youhui_list){
+ if (cart_item.quan_youhui_list) {
for (var kk in cart_item.quan_youhui_list) {
- var you_item = cart_item.quan_youhui_list[kk];
- //-- 对券的价格进行平摊 --
- await th.split_set_goods_quanprice(you_item, cart_item);
+ var you_item = cart_item.quan_youhui_list[kk];
+ //-- 对券的价格进行平摊 --
+ await th.split_set_goods_quanprice(you_item, cart_item);
}
}
@@ -3196,14 +3203,14 @@ Page({
var whsle_goods_price = 0;
- var no_zh_all_quan_num=0; //不是组合购商品的使用的优惠券综合
+ var no_zh_all_quan_num = 0; //不是组合购商品的使用的优惠券综合
//--------循环计算总价-----------
for (var jc = 0; jc < item.length; jc++) {
//如果item的prom_type==0,没有如果活动的时候,如果是优惠促销和组合促销不满足的时候
//或者是组合购和阶梯购多出来的商品
if (item[jc].prom_type == 0 && !item[jc].whsle_id && !item[jc].is_no_order_yh) {
- th.get_order_prom_map_ck(item[jc],pickid);
+ th.get_order_prom_map_ck(item[jc], pickid);
}
if (item[jc].whsle_id > 0) {
@@ -3217,43 +3224,43 @@ Page({
if (item[jc].prom_type == 7 && th.data.zhhe_act_map && th.data.zhhe_act_map[item[jc].prom_id]
&& th.data.zhhe_act_map[item[jc].prom_id].is_orderyh) {
is_no_zh = 1;
- th.get_order_prom_map_ck(item[jc],pickid); //有订单优惠叠加的时候,就要构建数据解救
+ th.get_order_prom_map_ck(item[jc], pickid); //有订单优惠叠加的时候,就要构建数据解救
}
//阶梯购的商品,且有订单优惠的叠加,is_orderyh就是优惠叠加,就要累积阶梯促销的金额
if (item[jc].prom_type == 10 && ladder_prom_goods && ladder_prom_goods[item[jc].prom_id]
&& th.data.ladder_map[item[jc].prom_id].is_useorderyh) {
is_no_zh = 1;
- th.get_order_prom_map_ck(item[jc],pickid); //有订单优惠叠加的时候,就要构建数据解救
+ th.get_order_prom_map_ck(item[jc], pickid); //有订单优惠叠加的时候,就要构建数据解救
}
if (is_no_zh) {
o_price_no_zh += item[jc].goods_price * item[jc].goods_num;
- if(item[jc].quan_num && item[jc].quan_num>0) no_zh_all_quan_num += item[jc].quan_num;
+ if (item[jc].quan_num && item[jc].quan_num > 0) no_zh_all_quan_num += item[jc].quan_num;
}
o_price += item[jc].goods_price * item[jc].goods_num;
//--- 秒杀, 团购的时候,判断有没有订单优惠和包邮模板的叠加 ---
- if( [1,2,3,5,6,7,10].indexOf(item[jc].prom_type)>-1){
+ if ([1, 2, 3, 5, 6, 7, 10].indexOf(item[jc].prom_type) > -1) {
- var gd_price=item[jc].goods_price;
- if(item[jc].account_fir) gd_price=item[jc].account_fir;
+ var gd_price = item[jc].goods_price;
+ if (item[jc].account_fir) gd_price = item[jc].account_fir;
//组合购和阶梯购是订单优惠是另外算的,不参与订单促销的时候
- if(!item[jc].is_order_yh && !item[jc].whsle_id && item[jc].prom_type!=7 && item[jc].prom_type!=10){
- no_order_yh+=gd_price * item[jc].goods_num;
- if(item[jc].quan_num) no_order_yh-=item[jc].quan_num; //券要把他补回去
+ if (!item[jc].is_order_yh && !item[jc].whsle_id && item[jc].prom_type != 7 && item[jc].prom_type != 10) {
+ no_order_yh += gd_price * item[jc].goods_num;
+ if (item[jc].quan_num) no_order_yh -= item[jc].quan_num; //券要把他补回去
}
//参与订单促销的时候
- if(item[jc].is_order_yh && !item[jc].whsle_id && item[jc].prom_type!=7 && item[jc].prom_type!=10){
- th.get_order_prom_map_ck(item[jc],pickid); //有订单优惠叠加的时候,就要构建数据解救
+ if (item[jc].is_order_yh && !item[jc].whsle_id && item[jc].prom_type != 7 && item[jc].prom_type != 10) {
+ th.get_order_prom_map_ck(item[jc], pickid); //有订单优惠叠加的时候,就要构建数据解救
}
- if(!item[jc].is_post_temp){
- no_post_temp+=gd_price * item[jc].goods_num;
- no_post_temp_shop_price+=item[jc].shop_price * item[jc].goods_num;
- no_post_temp_market_price+=item[jc].goods_market_price * item[jc].goods_num;
- if(item[jc].quan_num) no_post_temp-=item[jc].quan_num; //券要把他补回去
+ if (!item[jc].is_post_temp) {
+ no_post_temp += gd_price * item[jc].goods_num;
+ no_post_temp_shop_price += item[jc].shop_price * item[jc].goods_num;
+ no_post_temp_market_price += item[jc].goods_market_price * item[jc].goods_num;
+ if (item[jc].quan_num) no_post_temp -= item[jc].quan_num; //券要把他补回去
}
}
@@ -3278,13 +3285,13 @@ Page({
if (kitem.act.is_orderyh)
o_price_no_zh -= kitem.cut_price;
}
- }else{
- //找到那些可以订单优惠叠加的
- for (let ij in zh_prom_goods) {
- let kitem_z = zh_prom_goods[ij];
- if (!kitem_z.act.is_orderyh)
- no_order_yh+=kitem_z.actual_price;
- }
+ } else {
+ //找到那些可以订单优惠叠加的
+ for (let ij in zh_prom_goods) {
+ let kitem_z = zh_prom_goods[ij];
+ if (!kitem_z.act.is_orderyh)
+ no_order_yh += kitem_z.actual_price;
+ }
}
}
@@ -3298,12 +3305,12 @@ Page({
if (th.data.ladder_map[ij].is_useorderyh)
o_price_no_zh -= kitem.cut_price;
}
- }else{
+ } else {
//找到那些可以订单优惠叠加的不参与的要减掉
for (let ij in ladder_prom_goods) {
let kitem_l = ladder_prom_goods[ij];
if (!th.data.ladder_map[ij].is_useorderyh)
- no_order_yh+=kitem_l.actual_price;
+ no_order_yh += kitem_l.actual_price;
}
}
}
@@ -3330,26 +3337,26 @@ Page({
var ord_prom = null;
- var ord_prom_condition=0;
+ var ord_prom_condition = 0;
//如果有组合购
- if(o_price_no_zh){
- ord_prom_condition=o_price_no_zh-whsle_goods_price-no_zh_all_quan_num- no_order_yh;
- }else{
- ord_prom_condition=o_price - quan_price - whsle_goods_price - no_order_yh;
+ if (o_price_no_zh) {
+ ord_prom_condition = o_price_no_zh - whsle_goods_price - no_zh_all_quan_num - no_order_yh;
+ } else {
+ ord_prom_condition = o_price - quan_price - whsle_goods_price - no_order_yh;
}
//判断订单促销的实收价的累计
- if(!this.data.order_prom_map_ck[pickid]){
- this.data.order_prom_map_ck[pickid]={
- shop_price_all:0, //手店价的累计
- market_price_all:0, //市场价的累计
- goods_price_all:0, //实收价的累计
- no_ord_price:0, //要累计上不参与订单促销的金额
- goodsList:[],
+ if (!this.data.order_prom_map_ck[pickid]) {
+ this.data.order_prom_map_ck[pickid] = {
+ shop_price_all: 0, //手店价的累计
+ market_price_all: 0, //市场价的累计
+ goods_price_all: 0, //实收价的累计
+ no_ord_price: 0, //要累计上不参与订单促销的金额
+ goodsList: [],
}
}
- this.data.order_prom_map_ck[pickid].goods_price_all=ord_prom_condition;
+ this.data.order_prom_map_ck[pickid].goods_price_all = ord_prom_condition;
//---判断是不是有订单优惠---
// await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
// data: { store_id: os.stoid, orderAmount: parseFloat(ord_prom_condition).toFixed(2), user_id: getApp().globalData.user_id }
@@ -3359,11 +3366,11 @@ Page({
// }
// })
//获取当前时间段的进行中的订单促销
- ord_prom=await th.get_cur_ord_prom(pickid);
+ ord_prom = await th.get_cur_ord_prom(pickid);
//如果有使用优惠券,如何订单促销有控制使用优惠券不参与此活动的话
- if(quan_price>0 && ord_prom && ord_prom.is_xz_yh ){
- ord_prom=null;
+ if (quan_price > 0 && ord_prom && ord_prom.is_xz_yh) {
+ ord_prom = null;
}
//--如果是物流,且选择了地址,就要开始显示包邮券,且包邮券也已经优惠了优惠活动的金额--
@@ -3382,6 +3389,7 @@ Page({
pageSize: 2000
}
}).then(res => {
+ console.error('包邮券1111111111111111111111111111');
if (res.data.code == 0 && res.data.data.total > 0) {
//此时要循环判断包邮的地区,不包邮商品是不是符合
var arr = [], quanlist = res.data.data.pageData;
@@ -3402,10 +3410,22 @@ Page({
}
if (arr) {
th.data.get_by_quan_list_cart[pickid] = arr;
- th.setData({ get_by_quan_list_cart: th.data.get_by_quan_list_cart });
- //if (th.data.is_b_now) {
- // th.setData({get_by_quan_list: arr});
- //}
+ th.setData({ get_by_quan_list_cart: th.data.get_by_quan_list_cart, def_coupon3: arr });
+
+ // let first_entry = th.data.first_entry;
+ // if (arr && arr.length == 1 && first_entry == 0) {
+ // first_entry += 1;
+ // th.setData({
+ // by_quan_list_cart: arr,
+ // sele_cart_ind: 0,
+ // sele_exp_type: cart_item.exp_type,
+ // selected_quan_pick: pickid,
+ // first_entry
+ // })
+ // th.sele_quan_item_by_befor();
+ // th.confirm_quan_befor()
+ // }
+
}
th.data.isget_by_quan[pickid] = 1;
}
@@ -3413,20 +3433,20 @@ Page({
}
//要让包邮券消失,在使用非实收包邮券的时候
- if(th.data.can_use_ord_prom[pickid]){
- var tt_by='get_by_quan_list_cart['+pickid+']';
+ if (th.data.can_use_ord_prom[pickid]) {
+ var tt_by = 'get_by_quan_list_cart[' + pickid + ']';
th.setData({ [tt_by]: null });
th.data.isget_by_quan[pickid] = 0;
}
-
+
//-- 如果没有订单优惠,或者订单优惠中有勾选包邮模板 --
if (!ord_prom || ord_prom.is_post_temp) {
let user_addr = th.data.user_addr;
- let c_wuliu=parseFloat(o_price - quan_price - whsle_goods_price - no_post_temp).toFixed(2);
+ let c_wuliu = parseFloat(o_price - quan_price - whsle_goods_price - no_post_temp).toFixed(2);
+
-
var req_d = {
province: user_addr.province, city: user_addr.city, district: user_addr.district,
wuliu: c_wuliu, store_id: os.stoid
@@ -3492,7 +3512,7 @@ Page({
//-- 如果有达到包邮条件,同时判断商品有没有在不包邮商品里面 --
if (back_data && back_data['is_by_all'] && item[j].is_post_temp
- && (!back_data.no_free_goods || !th.ck_no_goods_arr(back_data.no_free_goods,item[j].goods_id))) {
+ && (!back_data.no_free_goods || !th.ck_no_goods_arr(back_data.no_free_goods, item[j].goods_id))) {
if (item[j]['exp_sum_type'] == 2 && back_data.weight_free > 0) {
if (goods_weight < 0) goods_weight = 0;
@@ -3538,13 +3558,13 @@ Page({
var code = "";
- if(!th.data.wu_arr){
+ if (!th.data.wu_arr) {
wx.hideLoading();
wx.showToast({
title: "物流配置未启用物流公司", icon: 'none', duration: 2000
})
//th.setData({ show_submit:0, });
- th.setData({show_submit:1, submit: 0,same_ok:0 })
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0 })
return false;
}
@@ -3554,7 +3574,7 @@ Page({
// cart_item.shipping_price =
// ut.calculatewuliu(code, o_shipping_price, goods_weight, out_of_weight,goods_piece, th.data.user_addr, back_data, rs);
- var no_free=back_data && back_data.no_free_goods && back_data.no_free_goods.length > 0 ? 1 : 0
+ var no_free = back_data && back_data.no_free_goods && back_data.no_free_goods.length > 0 ? 1 : 0
var w_data = {
@@ -3566,7 +3586,7 @@ Page({
user_addr_city: th.data.user_addr.city,
user_addr_district: th.data.user_addr.district,
is_by_all: back_data && back_data.is_by_all ? 1 : 0,
- no_free_goods: no_post_temp>0 || no_free?1:0 ,
+ no_free_goods: no_post_temp > 0 || no_free ? 1 : 0,
}
var is_ok = 1;
@@ -3584,7 +3604,7 @@ Page({
title: "计算物流错误", icon: 'none', duration: 2000
})
//th.setData({ show_submit:0, });
- th.setData({show_submit:1, submit: 0,same_ok:0 })
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0 })
return false;
}
@@ -3631,22 +3651,22 @@ Page({
var order_m = 0;
//么有使用券,或者活动没有限制使用优惠券
if (ord_prom && (quan_price <= 0 || !ord_prom.is_xz_yh)) {
- 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'];//满额优惠金额
- var bs = 1;
- if (ord_prom.is_bz) {
- bs = Math.floor(o_condition / ord_prom.money);
- }
- order_prom_amount = ord_prom['expression'];
- break;
- }
+ 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'];//满额优惠金额
+ var bs = 1;
+ if (ord_prom.is_bz) {
+ bs = Math.floor(o_condition / ord_prom.money);
+ }
+ order_prom_amount = ord_prom['expression'];
+ break;
+ }
}
@@ -3676,7 +3696,7 @@ Page({
if (!lon) {
//-- 获取距离 --
await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {
- is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address,store_id:os.stoid }
+ is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address, store_id: os.stoid }
}).then(res => {
if (res.data.code == 0) {
var data = JSON.parse(res.data.data);
@@ -3700,19 +3720,19 @@ Page({
if (res.data.code == 0) {
cart_item.shipping_price = res.data.data;
th.setData({
- sameCityExp_off:0,
- sameCityExp_info:''
+ sameCityExp_off: 0,
+ sameCityExp_info: ''
})
} else {
- if (res.data.code==-2) { //未达到起送价
+ if (res.data.code == -2) { //未达到起送价
th.setData({
- sameCityExp_off:2,
- sameCityExp_info:res.data.msg
+ sameCityExp_off: 2,
+ sameCityExp_info: res.data.msg
})
- }else{
+ } else {
th.setData({
- sameCityExp_off:1,
- sameCityExp_info:res.data.msg
+ sameCityExp_off: 1,
+ sameCityExp_info: res.data.msg
})
}
// is_next = 0;
@@ -3728,19 +3748,19 @@ Page({
}
})
if (!is_next) {
- th.setData({show_submit:1, submit: 0,same_ok:0 })
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0 })
return false
}
//重量要带出去
- cart_item.gd_w=gd_w;
- cart_item.samecity_order_amount=req_data.order_amount;
+ cart_item.gd_w = gd_w;
+ cart_item.samecity_order_amount = req_data.order_amount;
}
//预存金额使用参与计算
if (th.data.udata && th.data.udata.Balance > 0 && cart_item.order_amount * 1 > 0) {
-
+
if (!cart_item.sto) {
console.log('没有线下门店id');
//获取门店信息
@@ -3757,7 +3777,7 @@ Page({
if (resData && resData[0]) {
let keyid = resData[0].keyid
- cart_item.sto={
+ cart_item.sto = {
keyid
}
}
@@ -3766,12 +3786,12 @@ Page({
})
}
let cart_yc = await th.beforAdvancesum(cart_item)
-
+
console.log('购物车--------');
if (!cart_item.yck_off) {
cart_item.yck_off = cart_yc.yck_off
}
- if(cart_yc.yck*1==0){
+ if (cart_yc.yck * 1 == 0) {
cart_item.yck_off = 0
}
cart_item.yck = cart_yc.yck
@@ -3796,7 +3816,7 @@ Page({
[yct44]: cart_item.pre_json,
})
//搭配购直接购买特殊处理
- if(th.data.collocation_goods){
+ if (th.data.collocation_goods) {
let yct1 = 'bn_goods.yck_off';
let yct2 = 'bn_goods.yck';
let yct3 = 'bn_goods.yckid';
@@ -3960,13 +3980,15 @@ Page({
[atxt12]: all_yck_arr,
})
- th.data.lon=lon;
- th.data.lat=lat;
+ th.data.lon = lon;
+ th.data.lat = lat;
th.data.order_prom_list_cart = c_arr;
th.set_can_num();
+ //调用默认优惠券方法
+ th.def_coupon_fn();
wx.hideLoading();
-
+
//});
},
@@ -4000,13 +4022,13 @@ Page({
},
//-- 判断商品是不是在不包邮商品里面 --
- ck_no_goods_arr(no_free_goods,goods_id){
+ ck_no_goods_arr(no_free_goods, goods_id) {
for (var j = 0; j < no_free_goods.length; j++) {
- var ck_gd_id= parseInt(no_free_goods[j]+'');
- var goods_id= parseInt(goods_id+'');
- if(ck_gd_id==goods_id){
- return true;
- }
+ var ck_gd_id = parseInt(no_free_goods[j] + '');
+ var goods_id = parseInt(goods_id + '');
+ if (ck_gd_id == goods_id) {
+ return true;
+ }
}
return false;
},
@@ -4014,21 +4036,21 @@ Page({
//---------计算立即购买----------
calculatePrice2: async function (qfunc) {
var th = this, good = this.data.bn_goods;
-
- if (!good) return false;
+ if (!good) return false;
+ console.error('计算价格-----222222222222222---------');
//搭配的计算要用购物的车计算方法
// if (good.prom_type == 5 ) {
-
- if (good.prom_type == 5 ) {
- if( th.data.old_cartlist && th.data.old_cartlist.length > 0){
+
+ if (good.prom_type == 5) {
+ if (th.data.old_cartlist && th.data.old_cartlist.length > 0) {
th.calculatePrice();
return false;
- }else{
+ } else {
//如果搭配购搭配商品未空的话,让主商品的活动变成0,取消搭配购
th.setData({ 'bn_goods.prom_type': 0, 'bn_goods.prom_id': 0, collocation_goods: [] });
- good.prom_type=0
- good.prom_id=0
+ good.prom_type = 0
+ good.prom_id = 0
}
}
@@ -4043,8 +4065,8 @@ Page({
var cut_price = 0;
var allpice1 = allpice;
- th.data.lon=0;
- th.data.lat=0;
+ th.data.lon = 0;
+ th.data.lat = 0;
//如果有线下取价的时候
if (good.is_offline) {
@@ -4109,7 +4131,7 @@ Page({
if (th.data.bn_is_order_yh && !th.data.bn_goods.whsle_id) {
th.set_by_now_ord_prom(th.data.bn_goods);
- th.data.order_prom_map_ck[bn_pick].goods_price_all=condition;
+ th.data.order_prom_map_ck[bn_pick].goods_price_all = condition;
// await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
// data: { store_id: os.stoid, orderAmount: condition, user_id: getApp().globalData.user_id }
@@ -4119,7 +4141,7 @@ Page({
// ord_prom = data;
// }
// })
- ord_prom=await th.get_cur_ord_prom(bn_pick);
+ ord_prom = await th.get_cur_ord_prom(bn_pick);
if (ord_prom && ord_prom.is_post_temp) {
is_ord_prom_post = 1;
@@ -4127,8 +4149,8 @@ Page({
}
//如果有使用优惠券,订单促销又是使用优惠券不参与此活动
- if(quan_price>0 && ord_prom && ord_prom.is_xz_yh ){
- ord_prom=null;
+ if (quan_price > 0 && ord_prom && ord_prom.is_xz_yh) {
+ ord_prom = null;
}
//-----------当地址不为空,且是物流时,计算物流费用,并同时商品不是优惠活动的包邮----------
@@ -4137,7 +4159,7 @@ Page({
if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1 && !th.data.can_use_ord_prom[th.data.bn_pick]) {
//--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱---
- getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", {
+ await getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", {
data: {
store_id: os.stoid,
isuse: 0,
@@ -4146,6 +4168,7 @@ Page({
pageSize: 2000
}
}).then(res => {
+ console.error('包邮券22222222222222222222');
if (res.data.code == 0 && res.data.data.total > 0) {
//此时要循环判断包邮的地区,不包邮商品是不是符合
var arr = [], quanlist = res.data.data.pageData;
@@ -4160,7 +4183,22 @@ Page({
arr.push(item);
}
if (arr) {
- th.setData({ get_by_quan_list: arr });
+ th.setData({ get_by_quan_list: arr, def_coupon4: arr });
+ // let first_entry = th.data.first_entry;
+ // if ( arr && arr.length == 1 && first_entry == 0) {
+ // first_entry += 1;
+ // th.setData({
+ // first_entry
+ // })
+ // setTimeout(() => {
+ // th.setData({
+ // sele_cart_ind: 0,
+ // selected_quan_pick: th.data.bn_pick,
+ // })
+ // th.sele_quan_item_by_befor();
+ // th.confirm_quan_befor()
+ // }, 500);
+ // }
}
th.data.isget_by_quan[th.data.bn_pick] = 1;
}
@@ -4168,11 +4206,11 @@ Page({
}
- //要让包邮券消失,在使用非实收包邮券的时候
- if(th.data.can_use_ord_prom[th.data.bn_pick]){
- th.setData({ get_by_quan_list: null });
- th.data.isget_by_quan[th.data.bn_pick] = 0;
- }
+ //要让包邮券消失,在使用非实收包邮券的时候
+ if (th.data.can_use_ord_prom[th.data.bn_pick]) {
+ th.setData({ get_by_quan_list: null });
+ th.data.isget_by_quan[th.data.bn_pick] = 0;
+ }
var shipping_price = 0;
@@ -4238,7 +4276,7 @@ Page({
//-- 代发商品不算运费 --
if (good.whsle_id) continue;
- if (back_data && back_data['is_by_all'] && (!back_data.no_free_goods || !th.ck_no_goods_arr(back_data.no_free_goods,item.goods_id))) {
+ if (back_data && back_data['is_by_all'] && (!back_data.no_free_goods || !th.ck_no_goods_arr(back_data.no_free_goods, item.goods_id))) {
if (item['exp_sum_type'] == 2 && back_data.weight_free > 0) {
if (goods_weight < 0) goods_weight = 0;
@@ -4282,13 +4320,13 @@ Page({
else out_of_weight = -back_data.weight_free * 1000;
var code = "";
- if(!th.data.wu_arr){
+ if (!th.data.wu_arr) {
wx.hideLoading();
wx.showToast({
title: "物流配置未启用物流公司", icon: 'none', duration: 2000
})
//th.setData({ show_submit:0, });
- th.setData({show_submit:1, submit: 0,same_ok:0 })
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0 })
return false;
}
@@ -4328,7 +4366,7 @@ Page({
title: "计算物流错误", icon: 'none', duration: 2000
})
//th.setData({ show_submit:0 });
- th.setData({show_submit:1, submit: 0,same_ok:0 })
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0 })
return false;
}
@@ -4346,7 +4384,8 @@ Page({
var wl_txt = "formData.shipping_price";
th.setData({ [wl_txt]: 0, })
}
-
+ console.error('包邮券汇总----');
+
if (quan_no) {
if (th.data.using_quan[bn_pick].isby == 1) {
shipping_price = 0;
@@ -4401,7 +4440,7 @@ Page({
} else {
th.setData({ [order_prom_txt1]: 0, [order_prom_txt2]: 0 })
}
-
+
//预存金额使用参与计算
if (th.data.udata && th.data.udata.Balance > 0 && order_m * 1 > 0) {
if (!th.data.bn_goods.keyid) {
@@ -4429,7 +4468,7 @@ Page({
}
if (th.data.bn_goods.keyid) {
-
+
let cart_yc = await th.beforAdvancesum({
order_amount: order_m,
goods: [{
@@ -4437,19 +4476,19 @@ Page({
goods_price: th.data.bn_goods.shop_price || th.data.bn_goods.goods_price,
goods_num: th.data.bn_goods.buynum || th.data.bn_goods.goods_num,
- account_fir:th.data.bn_goods.shop_price || th.data.bn_goods.goods_price,
- account_yu_fir:0
+ account_fir: th.data.bn_goods.shop_price || th.data.bn_goods.goods_price,
+ account_yu_fir: 0
}],
sto: {
keyid: th.data.bn_goods.keyid
}
})
-
+
if (!good.yck_off) {
good.yck_off = cart_yc.yck_off
}
- if(cart_yc.yck*1==0){
+ if (cart_yc.yck * 1 == 0) {
good.yck_off = 0
}
good.yck = cart_yc.yck
@@ -4490,7 +4529,7 @@ Page({
// all_yck_arr.push(yck) //真实预存款抵扣金额
// all_pre_json.push(good.pre_json)
// all_prestore = parseFloat(all_prestore); //真实预存款抵扣金额总和
- }else{
+ } else {
let atxt10 = "formData.prestore"; //预存金额
let atxt11 = "formData.pre_json"; //预存json
let atxt12 = "formData.all_yck_arr"; //预存真实抵扣列表
@@ -4530,7 +4569,7 @@ Page({
//-- 获取距离 --
await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {
- is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address,store_id:os.stoid }
+ is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address, store_id: os.stoid }
}).then(res => {
if (res.data.code == 0) {
var data = JSON.parse(res.data.data);
@@ -4556,19 +4595,19 @@ Page({
var wl_txt = "formData.shipping_price";
th.setData({ [wl_txt]: res.data.data, })
th.setData({
- sameCityExp_off:0,
- sameCityExp_info:''
+ sameCityExp_off: 0,
+ sameCityExp_info: ''
})
} else {
- if (res.data.code==-2) { //未达到起送价
+ if (res.data.code == -2) { //未达到起送价
th.setData({
- sameCityExp_off:2,
- sameCityExp_info:res.data.msg
+ sameCityExp_off: 2,
+ sameCityExp_info: res.data.msg
})
- }else{
+ } else {
th.setData({
- sameCityExp_off:1,
- sameCityExp_info:res.data.msg
+ sameCityExp_off: 1,
+ sameCityExp_info: res.data.msg
})
}
// is_next = 0;
@@ -4584,14 +4623,14 @@ Page({
}
})
- if (!is_next){
- th.setData({show_submit:1,same_ok:0,submit: 0})
+ if (!is_next) {
+ th.setData({ show_submit: 1, same_ok: 0, submit: 0 })
return false
}
- th.data.lon=lon;
- th.data.lat=lat;
- th.data.bn_gd_w=gd_w;
- th.data.bn_samecity_order_amount=req_data.order_amount;
+ th.data.lon = lon;
+ th.data.lat = lat;
+ th.data.bn_gd_w = gd_w;
+ th.data.bn_samecity_order_amount = req_data.order_amount;
}
@@ -4691,6 +4730,9 @@ Page({
th.setData({ [l_txt]: good.month_libao, [l_txt1]: ob });
}
+ //调用默认优惠券方法
+ th.def_coupon_fn()
+
wx.hideLoading();
//});
@@ -4750,8 +4792,8 @@ Page({
df_goods[index].df_room_ids += room_id + ",";
}
- if(getApp().globalData.groupchat_id && getApp().globalData.groupchat_id!='undefined'){
- df_goods[index].groupchat_id=getApp().globalData.groupchat_id
+ if (getApp().globalData.groupchat_id && getApp().globalData.groupchat_id != 'undefined') {
+ df_goods[index].groupchat_id = getApp().globalData.groupchat_id
}
} else {
var e = {
@@ -4760,8 +4802,8 @@ Page({
df_goods: []
}
if (room_id) e.df_room_ids = room_id + ','
- if(getApp().globalData.groupchat_id && getApp().globalData.groupchat_id!='undefined'){
- e.groupchat_id=getApp().globalData.groupchat_id
+ if (getApp().globalData.groupchat_id && getApp().globalData.groupchat_id != 'undefined') {
+ e.groupchat_id = getApp().globalData.groupchat_id
}
e.df_goods.push(good);
df_goods.push(e);
@@ -4778,7 +4820,7 @@ Page({
if (cartlist && cartlist.length > 0) {
for (let index = 0, length = cartlist.length; index < length; index++) {
let item = cartlist[index].goods;
- if(!item) continue;
+ if (!item) continue;
for (let i = 0, leng = item.length; i < leng; i++) {
if (item[i].prom_type == 7) {
strarr.push(item[i])
@@ -4879,7 +4921,7 @@ Page({
//------------立即购买-------------
if (th.data.is_b_now == 1 && th.data.bn_goods.prom_type != 5) {
//if ( [0,2].indexOf(th.data.bn_exp_type)>-1 && th.data.user_addr == null) {
- if(getApp().is_no_addr(th,th.data.bn_exp_type)){
+ if (getApp().is_no_addr(th, th.data.bn_exp_type)) {
ff = false;
getApp().my_warnning("请选择收货地址", 0, th);
th.data.is_summit_ing = 0;
@@ -4896,7 +4938,7 @@ Page({
})
return false;
}
-
+
var item = {
'user_id': to.globalData.user_id,
@@ -4933,11 +4975,11 @@ Page({
item.use_commission = th.data.bn_goods.use_commission;
}
- if(item.exp_type==2){
- item.lon=th.data.lon?th.data.lon:0;
- item.lat=th.data.lat?th.data.lat:0;
- item.goods_weight=th.data.bn_gd_w;
- item.samecity_order_amount=th.data.bn_samecity_order_amount;
+ if (item.exp_type == 2) {
+ item.lon = th.data.lon ? th.data.lon : 0;
+ item.lat = th.data.lat ? th.data.lat : 0;
+ item.goods_weight = th.data.bn_gd_w;
+ item.samecity_order_amount = th.data.bn_samecity_order_amount;
}
//获取立即购买的商品的信息
@@ -4947,8 +4989,8 @@ Page({
item.room_ids = gg.room_id;
}
//群id
- if(gg.groupchat_id && gg.groupchat_id!='undefined'){
- item.groupchat_ids=gg.groupchat_id;
+ if (gg.groupchat_id && gg.groupchat_id != 'undefined') {
+ item.groupchat_ids = gg.groupchat_id;
}
var order_prom_list = {};
//--判断有没有优惠活动--
@@ -5075,8 +5117,8 @@ Page({
}
})
}
- if(gg.groupchat_id && gg.groupchat_id!='undefined'){
- goods.groupchat_id=gg.groupchat_id
+ if (gg.groupchat_id && gg.groupchat_id != 'undefined') {
+ goods.groupchat_id = gg.groupchat_id
}
//--商品的房间号--
@@ -5095,12 +5137,12 @@ Page({
}
- var act=await getApp().get_has_cx_act(th.data.bn_goods.goods_id);
- var mo_num=getApp().get_limit_qty(th.data.bn_goods,act.length);
- var steep=getApp().get_limit_qty(th.data.bn_goods,act.length,1);
+ var act = await getApp().get_has_cx_act(th.data.bn_goods.goods_id);
+ var mo_num = getApp().get_limit_qty(th.data.bn_goods, act.length);
+ var steep = getApp().get_limit_qty(th.data.bn_goods, act.length, 1);
- if ([0,3,5,7,10].indexOf(goods.prom_type)>-1){
- if(mo_num>goods.goods_num){
+ if ([0, 3, 5, 7, 10].indexOf(goods.prom_type) > -1) {
+ if (mo_num > goods.goods_num) {
getApp().confirmBox(goods.goods_name + "的未达到起订数量");
th.data.is_summit_ing = 0;
th.setData({
@@ -5108,7 +5150,7 @@ Page({
})
return false;
}
- if(steep>1 && (goods.goods_num-mo_num)%steep!=0 ){
+ if (steep > 1 && (goods.goods_num - mo_num) % steep != 0) {
getApp().confirmBox(goods.goods_name + "的购买的数量不是起订量的倍数");
th.data.is_summit_ing = 0;
th.setData({
@@ -5120,7 +5162,7 @@ Page({
//如果不立即购买或者秒杀,如果是线下库存购买的时候
if (goods.prom_type != 1 && goods.prom_type != 6 && goods.prom_type != 2
- && th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) {
+ && th.data.sales_rules >= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) {
var isok = 1;
await th.check_store_num(goods.goods_id, th.data.bn_pick, gg.goods_num, function (res) {
@@ -5214,8 +5256,8 @@ Page({
}
})
}
- if(gg.groupchat_id && gg.groupchat_id!='undefined'){
- g_goods.groupchat_id=gg.groupchat_id;
+ if (gg.groupchat_id && gg.groupchat_id != 'undefined') {
+ g_goods.groupchat_id = gg.groupchat_id;
}
item.order_goods.push(g_goods);
@@ -5230,7 +5272,7 @@ Page({
th.data.is_summit_ing = 0;
ff = false;
getApp().confirmBox("请新建收货地址");
- th.setData({submit: 0})
+ th.setData({ submit: 0 })
}
if (!ff) return false;
@@ -5242,12 +5284,12 @@ Page({
var order_prom_list_cart = th.data.order_prom_list_cart;
//优惠商品限购的优化
- var yh_lm_map={};
+ var yh_lm_map = {};
//--组装推送数据--
for (var i = 0; i < order_prom_list_cart.length; i++) {
var t_item = order_prom_list_cart[i];
- if (t_item.exp_type==0){
+ if (t_item.exp_type == 0) {
if (th.data.wu_arr == null || th.data.wu_arr.length <= 0) {
th.data.is_summit_ing = 0;
getApp().confirmBox("读取物流失败");
@@ -5305,11 +5347,11 @@ Page({
item.use_commission = t_item.can_usecommise;
}
- if(item.exp_type==2){
- item.lon=th.data.lon?th.data.lon:0;
- item.lat=th.data.lat?th.data.lat:0;
- item.goods_weight=t_item.gd_w;
- item.samecity_order_amount=t_item.samecity_order_amount;
+ if (item.exp_type == 2) {
+ item.lon = th.data.lon ? th.data.lon : 0;
+ item.lat = th.data.lat ? th.data.lat : 0;
+ item.goods_weight = t_item.gd_w;
+ item.samecity_order_amount = t_item.samecity_order_amount;
}
var order_prom_list = {};
@@ -5361,15 +5403,15 @@ Page({
//-- 送每月礼包的时候 --
if (t_item.monthlibao) {
order_prom_list.give_monthlb_id = t_item.monthlibao;
- let marr=[];
- if (t_item.g_monthlb_num && t_item.g_monthlb_num.length>0) {
- t_item.g_monthlb_num.map(ite=>{
- let obj={
- num:ite.monthnum,
- l_id:ite.month_id,
- monthlbtitle:ite.monthlbtitle
- }
- marr.push(obj)
+ let marr = [];
+ if (t_item.g_monthlb_num && t_item.g_monthlb_num.length > 0) {
+ t_item.g_monthlb_num.map(ite => {
+ let obj = {
+ num: ite.monthnum,
+ l_id: ite.month_id,
+ monthlbtitle: ite.monthlbtitle
+ }
+ marr.push(obj)
})
}
order_prom_list.g_monthlb_num = JSON.stringify(marr);
@@ -5412,22 +5454,22 @@ Page({
}
//看一下有没有活动不参与的,要记录到order_more表中
- let can_cx=t_item.show_can_cx;
- let is_user_no_yhcx=null;
- for(let iu in can_cx){
- if(can_cx[iu].no_cj_prom){
-
- if(!is_user_no_yhcx) is_user_no_yhcx=[];
- is_user_no_yhcx.push({
- prom_id:can_cx[iu].cur_act.prom_id,
- prom_type:can_cx[iu].cur_act.prom_type,
- })
- break;
- }
+ let can_cx = t_item.show_can_cx;
+ let is_user_no_yhcx = null;
+ for (let iu in can_cx) {
+ if (can_cx[iu].no_cj_prom) {
+
+ if (!is_user_no_yhcx) is_user_no_yhcx = [];
+ is_user_no_yhcx.push({
+ prom_id: can_cx[iu].cur_act.prom_id,
+ prom_type: can_cx[iu].cur_act.prom_type,
+ })
+ break;
+ }
}
//如果有活动不参与的,要记录到order_more表中
- if(is_user_no_yhcx){
- item.is_user_no_yhcx=JSON.stringify(is_user_no_yhcx);
+ if (is_user_no_yhcx) {
+ item.is_user_no_yhcx = JSON.stringify(is_user_no_yhcx);
}
@@ -5438,9 +5480,9 @@ Page({
//此单的组合活动汇总
- var zh_map_count={};
+ var zh_map_count = {};
var check_map = {};
- let groupchat_ids=[];
+ let groupchat_ids = [];
//-------------让商品添加到商品列表--------------------
@@ -5462,21 +5504,21 @@ Page({
//订单促销取价规则使用
if (g_item.discount_field) {
- goods.discount_field =g_item.discount_field;
- //此时要判断商品的门店是不是匹配
- if(g_item.prom_type==0 && g_item.pick_group_ids){
- var idx0 = g_item.pick_up_lists.findIndex(function (e) {
- return e.pickup_id == item.pickup_id;
- })
- if (idx0 < 0) {
- getApp().my_warnning(g_item.goods_name + "的门店不可售", 0, th);
- th.data.is_summit_ing = 0;
- th.setData({
- submit: 0
- })
- return false;
- }
- }
+ goods.discount_field = g_item.discount_field;
+ //此时要判断商品的门店是不是匹配
+ if (g_item.prom_type == 0 && g_item.pick_group_ids) {
+ var idx0 = g_item.pick_up_lists.findIndex(function (e) {
+ return e.pickup_id == item.pickup_id;
+ })
+ if (idx0 < 0) {
+ getApp().my_warnning(g_item.goods_name + "的门店不可售", 0, th);
+ th.data.is_summit_ing = 0;
+ th.setData({
+ submit: 0
+ })
+ return false;
+ }
+ }
}
@@ -5504,17 +5546,17 @@ Page({
}
//如果活动一样,那么商品的活动就要清理成0
- var sh_can_cx=t_item.show_can_cx;
- if(sh_can_cx && !g_item.is_zh_split){
- for (let kh in sh_can_cx) {
- var cur=sh_can_cx[kh]?sh_can_cx[kh].cur_act:null;
- if(cur && cur.is_no_ok){
- //如果活动一样,那么商品的活动就要清理成0
- if(g_item.prom_type==cur.prom_type && g_item.prom_id==cur.prom_id){
- g_item.prom_type=0;
- }
- }
+ var sh_can_cx = t_item.show_can_cx;
+ if (sh_can_cx && !g_item.is_zh_split) {
+ for (let kh in sh_can_cx) {
+ var cur = sh_can_cx[kh] ? sh_can_cx[kh].cur_act : null;
+ if (cur && cur.is_no_ok) {
+ //如果活动一样,那么商品的活动就要清理成0
+ if (g_item.prom_type == cur.prom_type && g_item.prom_id == cur.prom_id) {
+ g_item.prom_type = 0;
+ }
}
+ }
}
//--判断活动的类型--
@@ -5535,19 +5577,19 @@ Page({
break;
case 5:
//看一下有没有搭配商品
- if(th.has_collocation(t_item.goods,g_item.prom_id)){
- goods.prom_type = 5;
- goods.prom_id = g_item.prom_id;
- if (g_item.is_collocation) {
- goods.is_collocation = g_item.is_collocation;
- }
+ if (th.has_collocation(t_item.goods, g_item.prom_id)) {
+ 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;
- zh_map_count[g_item.prom_id]= (zh_map_count[g_item.prom_id]?zh_map_count[g_item.prom_id]:0)+goods.goods_num; //汇总一下组合购的活动
+ zh_map_count[g_item.prom_id] = (zh_map_count[g_item.prom_id] ? zh_map_count[g_item.prom_id] : 0) + goods.goods_num; //汇总一下组合购的活动
break
default:
goods.prom_type = 0;
@@ -5565,75 +5607,75 @@ Page({
check_map[txt] = 1;
}
- goods.prom_type=parseInt(goods.prom_type+'');
+ goods.prom_type = parseInt(goods.prom_type + '');
- var act=await getApp().get_has_cx_act(g_item.goods_id);
- var mo_num=getApp().get_limit_qty(g_item,act.length);
- var steep=getApp().get_limit_qty(g_item,act.length,1);
+ var act = await getApp().get_has_cx_act(g_item.goods_id);
+ var mo_num = getApp().get_limit_qty(g_item, act.length);
+ var steep = getApp().get_limit_qty(g_item, act.length, 1);
//赠品要排除之外,不进行判断
- if ([0,3,5,7,10].indexOf(goods.prom_type)>-1 && !goods.is_gift){
- if(mo_num>goods.goods_num){
- getApp().confirmBox(goods.goods_name + "的未达到起订数量");
- th.data.is_summit_ing = 0;
- th.setData({ submit: 0 })
- return false;
- }
- if(steep>1 && (goods.goods_num-mo_num)%steep!=0 ){
- getApp().confirmBox(goods.goods_name + "的购买的数量不是起订量的倍数");
- th.data.is_summit_ing = 0;
- th.setData({ submit: 0 })
- return false;
- }
+ if ([0, 3, 5, 7, 10].indexOf(goods.prom_type) > -1 && !goods.is_gift) {
+ if (mo_num > goods.goods_num) {
+ getApp().confirmBox(goods.goods_name + "的未达到起订数量");
+ th.data.is_summit_ing = 0;
+ th.setData({ submit: 0 })
+ return false;
+ }
+ if (steep > 1 && (goods.goods_num - mo_num) % steep != 0) {
+ getApp().confirmBox(goods.goods_name + "的购买的数量不是起订量的倍数");
+ th.data.is_summit_ing = 0;
+ th.setData({ submit: 0 })
+ return false;
+ }
- //-- 要判断一下优惠促销的商品的限购 --
- if(goods.prom_type==3){
- var pro_gd_limit_num=0;
- var p_limit_rs= await getApp().request.promisePost('/api/weshop/promgoods/getPromGoodsLimitNum',{
- data:{
- store_id:os.stoid,goods_id:goods.goods_id,prom_id:goods.prom_id,prom_type:3
- }
- })
- if(p_limit_rs && p_limit_rs.data.code==0){
- pro_gd_limit_num=p_limit_rs.data.data
- }
- //-- 如果有商品限购的时候 --
- if(pro_gd_limit_num>0){
- //-- 获取会员之前优惠促销商品买了多少件 --
- var pro_by_num=0;
- var lrs= {
- store_id: os.stoid,user_id: getApp().globalData.user_id,
- goods_id: goods.goods_id, prom_type: 3,
- prom_id: goods.prom_id, isnew:1
- };
- var gd_limit_rs=await getApp().promiseGet('/api/weshop/ordergoods/getUserBuyGoodsNum',{data:lrs});
- if(gd_limit_rs && gd_limit_rs.data.code==0){
- pro_by_num=gd_limit_rs.data.data.promgoodsbuynum
- }
+ //-- 要判断一下优惠促销的商品的限购 --
+ if (goods.prom_type == 3) {
+ var pro_gd_limit_num = 0;
+ var p_limit_rs = await getApp().request.promisePost('/api/weshop/promgoods/getPromGoodsLimitNum', {
+ data: {
+ store_id: os.stoid, goods_id: goods.goods_id, prom_id: goods.prom_id, prom_type: 3
+ }
+ })
+ if (p_limit_rs && p_limit_rs.data.code == 0) {
+ pro_gd_limit_num = p_limit_rs.data.data
+ }
+ //-- 如果有商品限购的时候 --
+ if (pro_gd_limit_num > 0) {
+ //-- 获取会员之前优惠促销商品买了多少件 --
+ var pro_by_num = 0;
+ var lrs = {
+ store_id: os.stoid, user_id: getApp().globalData.user_id,
+ goods_id: goods.goods_id, prom_type: 3,
+ prom_id: goods.prom_id, isnew: 1
+ };
+ var gd_limit_rs = await getApp().promiseGet('/api/weshop/ordergoods/getUserBuyGoodsNum', { data: lrs });
+ if (gd_limit_rs && gd_limit_rs.data.code == 0) {
+ pro_by_num = gd_limit_rs.data.data.promgoodsbuynum
+ }
- var m_ky=goods.goods_id+'|'+goods.prom_id;
+ var m_ky = goods.goods_id + '|' + goods.prom_id;
- var more_num=yh_lm_map[m_ky]?yh_lm_map[m_ky]:0;
+ var more_num = yh_lm_map[m_ky] ? yh_lm_map[m_ky] : 0;
- if(pro_gd_limit_num-1 && th.data.sales_rules >= 2 && !g_item.whsle_id && !getApp().is_virtual(g_item) ) {
+ //如果不立即购买或者秒杀,如果是线下库存购买的时候
+ if (!goods.is_gift && [0, 3, 5, 7, 10].indexOf(goods.prom_type) > -1 && th.data.sales_rules >= 2 && !g_item.whsle_id && !getApp().is_virtual(g_item)) {
var isok = 1;
await th.check_store_num(goods.goods_id, t_item.pickup_id, goods.goods_num, function (res) {
isok = res;
@@ -5665,9 +5707,9 @@ Page({
}
})
}
-
- if(g_item.groupchat_id && g_item.groupchat_id!='undefined'){
- goods.groupchat_id=g_item.groupchat_id;
+
+ if (g_item.groupchat_id && g_item.groupchat_id != 'undefined') {
+ goods.groupchat_id = g_item.groupchat_id;
groupchat_ids.push(g_item.groupchat_id);
}
//如果有阶梯促销
@@ -5704,29 +5746,29 @@ Page({
//-- 如果订单中有组合购,要统计到倍增的情况 ---
- if(Object.keys(zh_map_count).length){
- var zhlist=[];
+ if (Object.keys(zh_map_count).length) {
+ var zhlist = [];
for (var kf in zh_map_count) {
- var zh_act_th=th.data.zhhe_act_map[kf];
- var ite={zhid:kf,zhnum:1};
+ var zh_act_th = th.data.zhhe_act_map[kf];
+ var ite = { zhid: kf, zhnum: 1 };
- if(zh_act_th.is_bz){
- if(zh_map_count[kf]>zh_act_th.zhbuyqty){
- ite.zhnum=zh_map_count[kf]/zh_act_th.zhbuyqty;
- }
+ if (zh_act_th.is_bz) {
+ if (zh_map_count[kf] > zh_act_th.zhbuyqty) {
+ ite.zhnum = zh_map_count[kf] / zh_act_th.zhbuyqty;
+ }
}
zhlist.push(ite);
}
- item.zhlist=zhlist;
+ item.zhlist = zhlist;
}
//如果房间号不为空的时候
if (room_ids != "") item.room_ids = ut.sub_last(room_ids);
- if (groupchat_ids && groupchat_ids.length>0) item.groupchat_ids = groupchat_ids.join(',');
+ if (groupchat_ids && groupchat_ids.length > 0) item.groupchat_ids = groupchat_ids.join(',');
// if (getApp().globalData.groupchat_id) {item.groupchat_id = getApp().globalData.groupchat_id;}
//处理代发商品的拆分
if (df_goods.length > 0) {
@@ -5780,9 +5822,9 @@ Page({
if (ddff_item.df_room_ids)
df_item.room_ids = ut.sub_last(ddff_item.df_room_ids);
- if (getApp().globalData.groupchat_id && getApp().globalData.groupchat_id!='undefined'){
+ if (getApp().globalData.groupchat_id && getApp().globalData.groupchat_id != 'undefined') {
df_item.groupchat_ids = getApp().globalData.groupchat_id;
- }
+ }
df_item.order_goods = ddff_item.df_goods;
pdata.push(df_item);
}
@@ -5802,7 +5844,7 @@ Page({
if (pdata.length == 0) return;
//如果有使用预存,要处理
- if (th.data.formData && th.data.formData.prestore * 1 > 0 ) {
+ if (th.data.formData && th.data.formData.prestore * 1 > 0) {
let formData = th.data.formData
let pre_json = formData.pre_json
let all_yck_arr = formData.all_yck_arr
@@ -5821,7 +5863,7 @@ Page({
// pdata.keyid = th.data.bn_goods.keyid
}
var str = JSON.stringify(pdata);
-
+
wx.showLoading({ title: "加载中" });
@@ -5843,7 +5885,7 @@ Page({
//如果是购物车结算,还要删除购物车
if (th.data.is_b_now == 0) {
console.log(th.data.cartlist_y);
- var list =JSON.parse(JSON.stringify(th.data.cartlist_y));
+ var list = JSON.parse(JSON.stringify(th.data.cartlist_y));
for (var i = 0; i < list.length; i++) {
//删除购物车
a.delete("/api/weshop/cart/del/" + oo.stoid + "/" + list[i].id, {});
@@ -5861,7 +5903,7 @@ Page({
// order_sn: data.data,
//}, 1);
- th.data.ok_order_sn=data.data;
+ th.data.ok_order_sn = data.data;
util_pay.pay(data.data, async function () {
//app.my_warnning("支付成功",1,th);
//setTimeout(function () {
@@ -5890,7 +5932,7 @@ Page({
// return false;
//支付失败
setTimeout(function () {
- getApp().re_to("/pages/user/order_list/order_list");
+ getApp().re_to("/pages/user/order_list/order_list");
}, 1000)
}, oo.stoid);
@@ -5969,22 +6011,22 @@ Page({
th.setData({
submit: 0,
})
- if(data.code==-2){
+ if (data.code == -2) {
//-- 如果是购物车结算,还要删除购物车 --
if (th.data.is_b_now == 0) {
console.log(th.data.cartlist_y);
- var list =JSON.parse(JSON.stringify(th.data.cartlist_y));
+ var list = JSON.parse(JSON.stringify(th.data.cartlist_y));
for (var i = 0; i < list.length; i++) {
//删除购物车
a.delete("/api/weshop/cart/del/" + oo.stoid + "/" + list[i].id, {});
}
}
- setTimeout(()=>{
- getApp().re_to('/pages/user/order_list/order_list')
- },1300)
+ setTimeout(() => {
+ getApp().re_to('/pages/user/order_list/order_list')
+ }, 1300)
}
@@ -6012,11 +6054,11 @@ Page({
},
//看一下有没有选择搭配的商品
- has_collocation(goods,prom_id){
- var idx=goods.findIndex(function (e){
- return e.prom_type==5 && e.prom_id==prom_id && e.is_collocation;
- })
- return idx>0;
+ has_collocation(goods, prom_id) {
+ var idx = goods.findIndex(function (e) {
+ return e.prom_type == 5 && e.prom_id == prom_id && e.is_collocation;
+ })
+ return idx > 0;
},
//---确认线下门店的数量足不足---
@@ -6139,7 +6181,7 @@ Page({
}
//判断有没有默认的物流地址值
if (def_exp_code != "" && def_exp_code != null && def_exp_code != undefined && !th.data.is_default_logistics && !th.data.get_exp_ing) {
- th.data.get_exp_ing=1;
+ th.data.get_exp_ing = 1;
var wu_arr = this.data.wu_arr;
if (wu_arr != null && wu_arr != "") {
for (var i = 0; i < wu_arr.length; i++) {
@@ -6179,7 +6221,7 @@ Page({
//判断有没有默认的物流地址值
if (def_exp_code != "" && def_exp_code != null && def_exp_code != undefined && !th.data.is_default_logistics && !th.data.get_exp_ing) {
- th.data.get_exp_ing=1;
+ th.data.get_exp_ing = 1;
var wu_arr = this.data.wu_arr;
if (wu_arr != null && wu_arr != "") {
for (var i = 0; i < wu_arr.length; i++) {
@@ -6306,9 +6348,10 @@ Page({
},
/*--点击选择券--*/
- sele_quan_item: function (e) {
+ sele_quan_item_befor: async function (e) {
- var ind = e.currentTarget.dataset.ind;
+ // var ind = e.currentTarget.dataset.ind;
+ var ind = 0;
var quan_item = this.data.selected_quan_list[ind];
var pickid = this.data.selected_quan_pick; //现在选择的是哪一个门店
//--如果券是单品使用的时候--
@@ -6336,7 +6379,7 @@ Page({
}
}
if (!gd) {
- getApp().my_warnning("未找到指定商品使用", 0, this, 600);
+ // getApp().my_warnning("未找到指定商品使用", 0, this, 600);
return false;
}
//计算价格,如果有平摊的实收要计算实收的金额
@@ -6347,13 +6390,14 @@ Page({
}
if (item_price < parseFloat(quan_item.BuySum)) {
- getApp().my_warnning("该单品金额没有大于等于" + quan_item.BuySum + "元时不能使用优惠券", 0, this, 600);
+ // getApp().my_warnning("该单品金额没有大于等于" + quan_item.BuySum + "元时不能使用优惠券", 0, this, 600);
return false;
}
}
}
- var no_use = e.currentTarget.dataset.no, quanlist = this.data.selected_quan_list;
+ // var no_use = e.currentTarget.dataset.no, quanlist = this.data.selected_quan_list;
+ var quanlist = this.data.selected_quan_list;
//---所有的券的显示红色选择都清理一遍---
for (var i in quanlist) {
quanlist[i].show_red = 0;
@@ -6380,17 +6424,17 @@ Page({
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: th.is_coupon });
- return;
- }
+ // 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: th.is_coupon });
+ // return;
+ // }
var txt = "selected_quan_list[" + ind + "].show_red";
@@ -6408,29 +6452,209 @@ Page({
using_quan[th.data.selected_quan_pick] = { is_nouse_red: 0 };
}
this.setData({ using_quan: using_quan });
-
+ return true
},
+ /*--点击选择券--*/
+ sele_quan_item: function (e) {
- /*----- 点击选择包邮券 -----*/
- 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;
- }
+ 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: th.is_coupon });
+ 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_befor: function () {
+ // 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 });
+ }
+ console.error('选中包邮');
+
+ //--购物车过来的包邮券--
+ 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: th.is_coupon });
+ // return;
+ // }
+
+ var pickid = th.data.selected_quan_pick; //现在选择的是哪一个门店
+ var ind = 0;
+ //--如果是立即购买的部分--
+ 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 });
+ },
+ /*----- 点击选择包邮券 -----*/
+ 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 });
}
//普通券
@@ -6445,6 +6669,7 @@ Page({
var th = this;
var using_quan = this.data.using_quan;
+
//---如果是不使用优惠券---
if (no_use == 1) {
if (using_quan[th.data.selected_quan_pick]) {
@@ -6497,7 +6722,7 @@ Page({
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];
@@ -6540,7 +6765,7 @@ Page({
return;
}
}
-
+
//选择了的券,看是不是点击了不使用券,点击了不使用优惠券
if (using_quan[pickid]) {
if (using_quan[pickid].is_nouse_red == 1) {
@@ -6556,13 +6781,83 @@ Page({
}
}
},
+ //--第一次进入如果只有一张券时使用使用券---
+ confirm_quan_befor: async 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, 0, false);
+ return;
+ }
+ }
+ console.error('66确认使用劵');
+ //循环包邮的券,立即购买的
+ 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, false);
+ return;
+ }
+ }
+ console.error('777确认使用劵');
+ //循环包邮的券
+ 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, false);
+ 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: async function (item, using_quan, pickid, isby) {
+ insert_into_using_quan: async function (item, using_quan, pickid, isby, showToast = true) {
var th = this;
var old_quan = null;
+
if (isby == 1) {
using_quan[pickid] = {
coupon_no: item.no,
@@ -6580,27 +6875,29 @@ Page({
this.setData({ using_quan: using_quan });
if (th.data.is_b_now == 1) {
th.calculatePrice2(function () {
-
- if (old_quan) using_quan[pickid] = old_quan;
- else using_quan[pickid] = null;
- th.setData({ using_quan: using_quan, submit: 0 });
- wx.showToast({
- title: "不能使用优惠券,同城起送价不足",
- icon: 'none',
- duration: 2000
- })
-
+ // if (old_quan) using_quan[pickid] = old_quan;
+ // else using_quan[pickid] = null;
+ // th.setData({ using_quan: using_quan, submit: 0 });
+ // if(showToast){
+ // wx.showToast({
+ // title: "不能使用优惠券,同城起送价不足",
+ // icon: 'none',
+ // duration: 2000
+ // })
+ // }
});
} else {
th.calculatePrice(function () {
- if (old_quan) using_quan[pickid] = old_quan;
- else using_quan[pickid] = null;
- th.setData({ using_quan: using_quan, submit: 0 });
- wx.showToast({
- title: "不能使用优惠券,同城起送价不足",
- icon: 'none',
- duration: 2000
- })
+ // if (old_quan) using_quan[pickid] = old_quan;
+ // else using_quan[pickid] = null;
+ // th.setData({ using_quan: using_quan, submit: 0 });
+ // if(showToast){
+ // wx.showToast({
+ // title: "不能使用优惠券,同城起送价不足",
+ // icon: 'none',
+ // duration: 2000
+ // })
+ // }
});
}
th.setData({ open_quan: 0 });
@@ -6736,7 +7033,7 @@ Page({
var uii = setInterval(function () {
if (th.data.wu_arr) {
clearInterval(uii);
- if(th.data.is_default_logistics) return false;
+ if (th.data.is_default_logistics) return false;
for (var k = 0; k < th.data.wu_arr.length; k++) {
var item = th.data.wu_arr[k];
if (def_exp_code == item.code) {
@@ -6779,10 +7076,10 @@ Page({
var ep = arr[ind];
//如果门店订单使用订单促销(此订单促销取价规则不是实收价的时候)
- if(th.data.can_use_ord_prom[ep.pickup_id]){
+ if (th.data.can_use_ord_prom[ep.pickup_id]) {
continue;
}
-
+
var goodlist = ep.goods;
var pickup_id = ep.pickup_id;
//--更优惠券抵用有关,立即购买的,如果是购物车,如果有等级价还有考虑等级价的东西
@@ -6796,20 +7093,20 @@ Page({
for (var i in goodlist) {
var gd = goodlist[i];
//--如果是秒杀就跳出,如果是赠品,如果是组合购限制使用优惠券--
- if (gd.whsle_id == 1 || gd.is_gift || (gd.prom_type == 7 && gd.act && gd.act.is_xz_yh) || gd.is_xz_yh == 1) {
+ if (gd.whsle_id == 1 || gd.is_gift || (gd.prom_type == 7 && gd.act && gd.act.is_xz_yh) || gd.is_xz_yh == 1) {
continue;
}
//有搭配购的时候才来判断
- if(gd.prom_type==5 && th.data.coll_prom && th.data.coll_prom[gd.prom_id]){
- if(!th.data.coll_prom[gd.prom_id].is_coupon && th.has_dp(goodlist,gd.prom_id)){
- continue;
- }
+ if (gd.prom_type == 5 && th.data.coll_prom && th.data.coll_prom[gd.prom_id]) {
+ if (!th.data.coll_prom[gd.prom_id].is_coupon && th.has_dp(goodlist, gd.prom_id)) {
+ continue;
+ }
}
//--如果是秒杀,要判断有没有限制使用优惠券
if (gd.prom_type == 1 && !gd.is_quan) {
- continue;
+ continue;
}
//--如果是团购,要判断有没有限制使用优惠券
@@ -6919,7 +7216,7 @@ Page({
arr[ind].ckeck_quan_price = ckeck_quan_price - (cut_price ? cut_price : 0);
arr[ind].check_quan_ware_list = check_quan_ware_list;
arr[ind].check_quan_price_list = check_quan_price_list;
- arr[ind].quan_list=null;
+ arr[ind].quan_list = null;
//-- 是否关闭使用优惠券,循环有找到商品 --
if (th.data.is_close_quan != 1 && check_quan_ware_list) {
@@ -6934,14 +7231,33 @@ Page({
pageSize: 100
}
}).then(res => {
+ console.error('优惠券111111111111');
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);
- quan_list= th.check_is_frozenQuan(quan_list, th.data.frozenQuan);
+ quan_list = th.check_is_frozenQuan(quan_list, th.data.frozenQuan);
var set_txt = "cartlist[" + ind + "].quan_list";
th.setData({
- [set_txt]:quan_list
+ [set_txt]: quan_list,
+ def_coupon1: quan_list
})
+ //判断是否是第一进入且优惠券只有一张的时候,进行优惠券使用 first_entry 表示是否是第一次进入
+ // let first_entry = th.data.first_entry;
+ // if (quan_list && quan_list.length == 1 && first_entry == 0) {
+ // first_entry += 1;
+ // th.setData({
+ // sele_cart_ind: 0,
+ // sele_exp_type: th.data.cartlist[0].exp_type,
+ // selected_quan_pick: th.data.cartlist[0].pickup_id,
+ // selected_quan_list: th.data.cartlist[0].quan_list,
+ // first_entry
+ // })
+ // let quan_off = th.sele_quan_item_befor();
+ // if (quan_off) {
+ // th.confirm_quan_befor()
+ // }
+ // }
+ //--------------end--------------
}
})
}
@@ -6992,11 +7308,24 @@ Page({
pageSize: 100
},
success: function (res) {
+ console.error('优惠券22222222222222222');
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 })
+ th.setData({ selected_quan_list: quanlist, def_coupon2: quanlist })
+ // let first_entry = th.data.first_entry;
+ // if (quanlist && quanlist.length == 1 && first_entry == 0) {
+ // first_entry += 1;
+ // th.setData({
+ // selected_quan_pick: th.data.bn_pick,
+ // first_entry
+ // })
+ // let quan_off = th.sele_quan_item_befor();
+ // if (quan_off) {
+ // th.confirm_quan_befor()
+ // }
+ // }
}
}
}
@@ -7004,7 +7333,114 @@ Page({
})
}
},
+ //默认选择优惠券
+ def_coupon_fn() {
+ // setTimeout(() => {
+ // this.def_coupon_fn_aft()
+ // }, 100);
+ try {
+ setTimeout(() => {
+ this.def_coupon_fn_aft()
+ }, 1000);
+ } catch (error) { }
+ },
+ //默认选择优惠券
+ def_coupon_fn_aft() {
+ console.error('进入默认优惠券选择');
+ let th = this;
+ let first_entry = th.data.first_entry;
+ console.error(first_entry);
+ if (first_entry > 0) {
+ return
+ }
+ first_entry += 1;
+ th.setData({
+ first_entry
+ })
+ let length1 = th.data.def_coupon1 ? th.data.def_coupon1.length : 0
+ let length2 = th.data.def_coupon2 ? th.data.def_coupon2.length : 0
+ let length3 = th.data.def_coupon3 ? th.data.def_coupon3.length : 0
+ let length4 = th.data.def_coupon4 ? th.data.def_coupon4.length : 0
+ let length = length1 + length2 + length3 + length4
+ console.error(length);
+ if (length != 1) {
+ return
+ }
+ if (length1 == 1) {
+ console.error('优惠券1');
+ let first_entry = th.data.first_entry;
+ let quan_list = th.data.def_coupon1
+ if (quan_list && quan_list.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ th.setData({
+ sele_cart_ind: 0,
+ sele_exp_type: th.data.cartlist[0].exp_type,
+ selected_quan_pick: th.data.cartlist[0].pickup_id,
+ selected_quan_list: th.data.cartlist[0].quan_list,
+ // first_entry
+ })
+ let quan_off = th.sele_quan_item_befor();
+ if (quan_off) {
+ th.confirm_quan_befor()
+ }
+ }
+ }
+ if (length2 == 1) {
+ console.error('优惠券2');
+ let first_entry = th.data.first_entry;
+ let quanlist = th.data.def_coupon2
+ if (quanlist && quanlist.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ th.setData({
+ selected_quan_pick: th.data.bn_pick,
+ // first_entry
+ })
+ let quan_off = th.sele_quan_item_befor();
+ if (quan_off) {
+ th.confirm_quan_befor()
+ }
+ }
+ }
+ if (length3 == 1) {
+ console.error('优惠券3');
+ let arr = th.data.def_coupon3
+ let first_entry = th.data.first_entry;
+ if (arr && arr.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ let cart_item= th.data.cartlist[0]
+ th.setData({
+ by_quan_list_cart: arr,
+ sele_cart_ind: 0,
+ sele_exp_type: cart_item.exp_type,
+ selected_quan_pick: cart_item.pickup_id,
+ // first_entry
+ })
+ th.sele_quan_item_by_befor();
+ th.confirm_quan_befor()
+ }
+ }
+ if (length4 == 1) {
+ console.error('优惠券4');
+ let first_entry = th.data.first_entry;
+ let arr = th.data.def_coupon4
+ if (arr && arr.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ // th.setData({
+ // first_entry
+ // })
+ setTimeout(() => {
+ th.setData({
+ sele_cart_ind: 0,
+ selected_quan_pick: th.data.bn_pick,
+ })
+ th.sele_quan_item_by_befor();
+ th.confirm_quan_befor()
+ }, 500);
+ }
+ }
+
+ },
//检查区域是不是包邮
check_area: function (arr) {
var user_addr = this.data.user_addr;
@@ -7045,22 +7481,22 @@ Page({
var price = arr.shop_price * arr.goods_num;
var prom = null;
var gg = to.get_b_now();
- getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + prom_id, {}).then( async res => {
-
+ getApp().request.promiseGet("/api/weshop/promgoods/get/" + os.stoid + "/" + prom_id, {}).then(async res => {
+
if (res.data.code == 0) {
prom = res.data.data;
- if(prom && prom.limit_num*1){
- let user_pre_buynum=await th.getUserBuyPromNum_pre(prom.id)
- if (user_pre_buynum>=prom.limit_num) {
- arr.prom_price=null;
- arr.prom_id="";
- arr.prom_type="";
- if(prom.is_xz_yh){
- arr.is_xz_yh=prom.is_xz_yh
+ if (prom && prom.limit_num * 1) {
+ let user_pre_buynum = await th.getUserBuyPromNum_pre(prom.id)
+ if (user_pre_buynum >= prom.limit_num) {
+ arr.prom_price = null;
+ arr.prom_id = "";
+ arr.prom_type = "";
+ if (prom.is_xz_yh) {
+ arr.is_xz_yh = prom.is_xz_yh
}
func(arr);
- }else{
+ } else {
let min_value = 0
if (prom && prom.is_xz_yh) {
let arr = prom.promGoodsList || []
@@ -7095,7 +7531,7 @@ Page({
}
})
}
- }else{
+ } else {
let min_value = 0
if (prom && prom.is_xz_yh) {
let arr = prom.promGoodsList || []
@@ -7136,12 +7572,12 @@ Page({
}
}).then(res => {
if (res.data.code == 0) {
-
+
var get_data = res.data.data;
//只有在活动已经开始参与优惠促销的时候
- th.data.bn_is_order_yh=prom.is_order_yh;
- th.data.bn_is_post_temp=prom.is_post_temp;
+ th.data.bn_is_order_yh = prom.is_order_yh;
+ th.data.bn_is_post_temp = prom.is_post_temp;
arr.is_bz = prom.is_bz; //是不是倍增
arr.is_xz_yh = arr.is_xz_yh ? arr.is_xz_yh : prom.is_xz_yh; //是不是优惠
@@ -7204,7 +7640,7 @@ Page({
if (a_limit_num >= t_zp_num && a_stock_num >= t_zp_num) {
send_gf[pickid].push({
pickup_id: pickid, giftsinfo: get_data.giftsinfo, zp_num: get_data.zp_num * get_data.bs,
- gf_pr_name: prom.name, prom_id: prom.prom_id,bs:get_data.bs
+ gf_pr_name: prom.name, prom_id: prom.prom_id, bs: get_data.bs
});
}
th.setData({ send_gf: send_gf });
@@ -7214,32 +7650,32 @@ Page({
})
},
//优惠促销用户参与次数
- async getUserBuyPromNum_pre(prom_id){
+ async getUserBuyPromNum_pre(prom_id) {
//如果有缓存的数据,就用缓存的数据
- if(this.data.in_yhact[prom_id] && this.data.in_yhact[prom_id].buyed!=undefined){
- let user_pre_buynum=this.data.in_yhact[prom_id].buyed;
- return user_pre_buynum;
+ if (this.data.in_yhact[prom_id] && this.data.in_yhact[prom_id].buyed != undefined) {
+ let user_pre_buynum = this.data.in_yhact[prom_id].buyed;
+ return user_pre_buynum;
}
var userInfo = getApp().globalData.userInfo;
var url = `/api/weshop/ordergoods/getUserBuyPromNum?is_all=1&store_id=${os.stoid}&user_id=${userInfo.user_id}&prom_type=3&prom_id=${prom_id}`;
let res = await getApp().request.promiseGet(url, {
- data:{}
+ data: {}
});
- let user_pre_buynum=0
- if(res.data.code==0 && res.data.data){
- user_pre_buynum=res.data.data.userbuynum
+ let user_pre_buynum = 0
+ if (res.data.code == 0 && res.data.data) {
+ user_pre_buynum = res.data.data.userbuynum
}
return user_pre_buynum
},
//获取优惠活动
- getprom(item){
+ getprom(item) {
- let prom_id=item.prom_id
- let pickup_id=item.pick_id
- let limit_num=0
+ let prom_id = item.prom_id
+ let pickup_id = item.pick_id
+ let limit_num = 0
//不再调用接口活动优惠促销活动的内容
// await getApp().request.promiseGet("/api/weshop/promgoods/get/" + oo.stoid + "/" + prom_id, {}).then(res => {
// if (res.data.code == 0) {
@@ -7252,13 +7688,13 @@ Page({
// })
// }
// })
- if(this.data.yhcx_act_map[prom_id]){
+ if (this.data.yhcx_act_map[prom_id]) {
let prom = this.data.yhcx_act_map[prom_id];
- limit_num =prom.limit_num
- let yh_is_xz_yh=this.data.yh_is_xz_yh
- yh_is_xz_yh[pickup_id]=prom.is_xz_yh
+ limit_num = prom.limit_num
+ let yh_is_xz_yh = this.data.yh_is_xz_yh
+ yh_is_xz_yh[pickup_id] = prom.is_xz_yh
this.setData({
- ['yh_is_xz_yh']:yh_is_xz_yh
+ ['yh_is_xz_yh']: yh_is_xz_yh
})
}
return limit_num
@@ -7286,7 +7722,7 @@ Page({
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]) {
@@ -7300,16 +7736,16 @@ Page({
}
//优惠促销取价的优化
- let f_price=item.goods_price;
- if(ob.discount_field!=undefined){
- switch (ob.discount_field){
- case 0: f_price=item.goods_price;break;
- case 1: f_price=item.shop_price;break;
- case 2: f_price=item.goods_market_price;break;
+ let f_price = item.goods_price;
+ if (ob.discount_field != undefined) {
+ switch (ob.discount_field) {
+ case 0: f_price = item.goods_price; break;
+ case 1: f_price = item.shop_price; break;
+ case 2: f_price = item.goods_market_price; break;
}
}
- item.goods_price=f_price;
+ item.goods_price = f_price;
ob.price += f_price * item.goods_num;
ob.goods_num += item.goods_num;
@@ -7319,52 +7755,52 @@ Page({
var prom = null;
- if(th.data.yhcx_act_map[item.prom_id]){
+ if (th.data.yhcx_act_map[item.prom_id]) {
- prom = th.data.yhcx_act_map[item.prom_id];
+ prom = th.data.yhcx_act_map[item.prom_id];
- let min_value = 0
- if (prom && prom.is_xz_yh) {
- let arr = prom.promGoodsList || []
- arr.map(ite => {
- if (min_value) {
+ let min_value = 0
+ if (prom && prom.is_xz_yh) {
+ let arr = prom.promGoodsList || []
+ arr.map(ite => {
+ if (min_value) {
+ min_value = ite.condition
+ } else {
+ if (min_value < ite.condition) {
min_value = ite.condition
- } else {
- if (min_value < ite.condition) {
- min_value = ite.condition
- }
}
- })
- if (arr.length > 0) {
- if (arr[0].prom_type == 0) {
- if ((item.goods_price * item.goods_num) < min_value) {
- prom.is_xz_yh = 0
- }
- } else {
- if (item.goods_num < min_value) {
- prom.is_xz_yh = 0
- }
+ }
+ })
+ if (arr.length > 0) {
+ if (arr[0].prom_type == 0) {
+ if ((item.goods_price * item.goods_num) < min_value) {
+ prom.is_xz_yh = 0
+ }
+ } else {
+ if (item.goods_num < min_value) {
+ prom.is_xz_yh = 0
}
}
}
}
+ }
- if(!prom) return false;
+ if (!prom) return false;
var ob = {};
ob.prom_id = item.prom_id;
ob.name = prom.name;
//优惠促销取价的优化
- let f_price=item.goods_price;
- if(prom.discount_field!=undefined){
- switch (prom.discount_field){
- case 0: f_price=item.goods_price;break;
- case 1: f_price=item.shop_price;break;
- case 2: f_price=item.goods_market_price;break;
- }
+ let f_price = item.goods_price;
+ if (prom.discount_field != undefined) {
+ switch (prom.discount_field) {
+ case 0: f_price = item.goods_price; break;
+ case 1: f_price = item.shop_price; break;
+ case 2: f_price = item.goods_market_price; break;
+ }
}
- item.goods_price=f_price;
+ item.goods_price = f_price;
ob.price = f_price * item.goods_num;
ob.goods_num = item.goods_num;
@@ -7382,47 +7818,47 @@ Page({
var ob = {};
var prom = null;
- if(th.data.yhcx_act_map[item.prom_id]){
- prom = th.data.yhcx_act_map[item.prom_id];
- let min_value = 0
- if (prom && prom.is_xz_yh) {
- let arr = prom.promGoodsList || []
- arr.map(ite => {
- if (min_value) {
+ if (th.data.yhcx_act_map[item.prom_id]) {
+ prom = th.data.yhcx_act_map[item.prom_id];
+ let min_value = 0
+ if (prom && prom.is_xz_yh) {
+ let arr = prom.promGoodsList || []
+ arr.map(ite => {
+ if (min_value) {
+ min_value = ite.condition
+ } else {
+ if (min_value < ite.condition) {
min_value = ite.condition
- } else {
- if (min_value < ite.condition) {
- min_value = ite.condition
- }
}
- })
- if (arr.length > 0) {
- if (arr[0].prom_type == 0) {
- if ((item.goods_price * item.goods_num) < min_value) {
- prom.is_xz_yh = 0
- }
- } else {
- if (item.goods_num < min_value) {
- prom.is_xz_yh = 0
- }
+ }
+ })
+ if (arr.length > 0) {
+ if (arr[0].prom_type == 0) {
+ if ((item.goods_price * item.goods_num) < min_value) {
+ prom.is_xz_yh = 0
+ }
+ } else {
+ if (item.goods_num < min_value) {
+ prom.is_xz_yh = 0
}
}
}
}
+ }
- if(!prom) return false;
+ if (!prom) return false;
//优惠促销取价的优化
- let f_price=item.goods_price;
+ let f_price = item.goods_price;
- if(prom.discount_field!=undefined){
- switch (prom.discount_field){
- case 0: f_price=item.goods_price;break;
- case 1: f_price=item.shop_price;break;
- case 2: f_price=item.goods_market_price;break;
+ if (prom.discount_field != undefined) {
+ switch (prom.discount_field) {
+ case 0: f_price = item.goods_price; break;
+ case 1: f_price = item.shop_price; break;
+ case 2: f_price = item.goods_market_price; break;
}
}
- item.goods_price=f_price;
+ item.goods_price = f_price;
ob.prom_id = item.prom_id;
ob.name = prom.name;
@@ -7445,7 +7881,7 @@ Page({
check_is_youhui: function (r_data, pick_id) {
let send_lb = this.data.send_lb;
let lodash = null;
-
+
r_data.forEach(item => {
if (send_lb[pick_id]) {
for (let i = 0; i < send_lb[pick_id].length; i++) {
@@ -7534,7 +7970,7 @@ Page({
//从优惠的映射中拿出商品从表的item,要防止空对象的时候,空就返回空对象
arr_get_goods_n: function (good, arr) {
for (var i in arr) {
- if (arr[i].goods_id == good.goods_id && arr[i].prom_id == good.prom_id && arr[i].prom_type == good.prom_type ) return arr[i];
+ if (arr[i].goods_id == good.goods_id && arr[i].prom_id == good.prom_id && arr[i].prom_type == good.prom_type) return arr[i];
}
return {};
},
@@ -7599,7 +8035,7 @@ Page({
if (flag == 2) { // flag =2 控制跳转到每月礼包
// url = `/pages/giftpack/giftpacklist/giftpacklist?lbId=${id}&flag=1`;
url = `/packageE/pages/user/monthgiftbag/giftpackinfo/giftpackinfo?isBuy=1&id=${id}&is_act=1`;
- }else if (flag == 1) {
+ } else if (flag == 1) {
url = `/packageA/pages/myGiftDetails/myGiftDetails?btn=0&index=0&id=${id}`; // btn=0 控制跳转到的页面不显示按钮
} else {
url = `/pages/giftpack/giftpacklist/giftpacklist?lbId=${id}&flag=1`;
@@ -7721,16 +8157,16 @@ Page({
if (q_s_num > parseFloat(coupon_price) || q_s_num < parseFloat(coupon_price)) {
var pri = Math.floor(coupon_price * 100) / 100 - Math.floor(q_s_num * 100) / 100
- var is_ok=0;
+ var is_ok = 0;
for (var ik in arr) {
if (arr[ik].goods_num == 1) {
var id = arr[ik].idx;
t_item.goods[id].quan_num += pri;
- is_ok=1;
+ is_ok = 1;
break;
}
}
- if(!is_ok){
+ if (!is_ok) {
var id2 = arr[0].idx;
t_item.goods[id2].quan_num += pri;
}
@@ -7758,17 +8194,17 @@ Page({
setexptype2: function (e) {
- if(this.data.submit) return false;
- this.setData({ submit: 1,same_ok:1,sameCityExp_off:0, sameCityExp_info:'',});
+ if (this.data.submit) return false;
+ this.setData({ submit: 1, same_ok: 1, sameCityExp_off: 0, sameCityExp_info: '',first_entry: 0 });
- if(this.data.all_collocation_list){
- var bn_coll= this.selectComponent('#bn_coll');
- bn_coll.clear_sele();
- this.setData({ collocation_goods: [] });
- this.data.old_cartlist=null;
- //让主商品的活动变成5,搭配购
- if(this.data.bn_goods==5)
- this.setData({ 'bn_goods.prom_type': 0, 'bn_goods.prom_id': 0 });
+ if (this.data.all_collocation_list) {
+ var bn_coll = this.selectComponent('#bn_coll');
+ bn_coll.clear_sele();
+ this.setData({ collocation_goods: [] });
+ this.data.old_cartlist = null;
+ //让主商品的活动变成5,搭配购
+ if (this.data.bn_goods == 5)
+ this.setData({ 'bn_goods.prom_type': 0, 'bn_goods.prom_id': 0 });
}
this.debounce(this.setexptype.bind(this, e), 400)();
@@ -7777,36 +8213,36 @@ Page({
setexptype_w2: function (e) {
- if(this.data.submit) return false;
- this.setData({ submit: 1,same_ok:1,sameCityExp_off:0, sameCityExp_info:'',});
+ if (this.data.submit) return false;
+ this.setData({ submit: 1, same_ok: 1, sameCityExp_off: 0, sameCityExp_info: '', first_entry:0});
- for (let i = 0; i 0 && discount.can_num < all_limit_num) {
+ if (discount.limit_num > 0 && discount.can_num < all_limit_num) {
wx.showToast({
title: "超出赠品限购",
icon: 'none',
@@ -7962,22 +8398,22 @@ Page({
var th = this;
var gf_pickup_id = this.data.gift_pkid;
//包邮券要重新获取
- th.data.isget_by_quan[gf_pickup_id]=null;
+ th.data.isget_by_quan[gf_pickup_id] = null;
var zp_num = this.data.zp_num;
- var gf_bs = this.data.gf_bs?this.data.gf_bs:1;
+ var gf_bs = this.data.gf_bs ? this.data.gf_bs : 1;
var giftsinfo = this.data.giftsinfo;
var all_num = 0;
for (let i in giftsinfo) {
let item = giftsinfo[i];
- if(item.must_num>0 ){
- if(!item.selected){
+ if (item.must_num > 0) {
+ if (!item.selected) {
ut.m_toast("必送的赠品没有选中");
return false;
}
- if(item.goods_num0){
- newd.is_past=1;
+ if (set_data.zp_by && set_data.zp_by > 0) {
+ newd.is_past = 1;
}
}
//赠品的优惠要和商品的一样
- if(fd_gd){
- newd.is_post_temp=fd_gd.is_post_temp;
- newd.is_order_yh=fd_gd.is_order_yh;
+ if (fd_gd) {
+ newd.is_post_temp = fd_gd.is_post_temp;
+ newd.is_order_yh = fd_gd.is_order_yh;
}
//-- 如果是代发商品的时候 --
@@ -8192,13 +8628,13 @@ Page({
var limit_all = 0;
var stock_all = 0;
- var no_limit=0;
+ var no_limit = 0;
for (let iu in giftsinfo) {
let gf_item = giftsinfo[iu];
- limit_all += gf_item.can_num>0?gf_item.can_num:0;
+ limit_all += gf_item.can_num > 0 ? gf_item.can_num : 0;
stock_all += gf_item.gift_storecount;
- if(gf_item.limit_num<=0) no_limit=1;
+ if (gf_item.limit_num <= 0) no_limit = 1;
}
if (!no_limit && limit_all < zp_num) {
error_arr.push(gf_pr_name + "限购不足");
@@ -8262,7 +8698,7 @@ Page({
select_coll(e) {
console.log("--1111--aaa--");
console.log(e);
-
+
//-- 如果是购物车的选择添加搭配商品 --
if (e.detail.is_cart == 1) {
this.select_coll_buy_cart(e.detail);
@@ -8277,16 +8713,16 @@ Page({
//--按钮变灰色 --
th.setData({ submit: 1 });
var txt = 'using_quan[' + th.data.bn_pick + ']';
- th.setData({[txt]: null})
+ th.setData({ [txt]: null })
//如果是选中
if (e.selected) {
var item = this.data.all_collocation_list[e.index];
//如果是自提的时候
- if(this.data.bn_exp_type==1){
+ if (this.data.bn_exp_type == 1) {
- if(item.distr_type==2){
+ if (item.distr_type == 2) {
wx.showToast({
title: "商品的配送方式不一致",
icon: 'none',
@@ -8296,30 +8732,30 @@ Page({
return false;
}
- }else{
+ } else {
- if(this.data.bn_exp_type==2){
+ if (this.data.bn_exp_type == 2) {
- if(!item.is_same_city){
- wx.showToast({
- title: "商品不支持同城配送",
- icon: 'none',
- duration: 2000
- })
- th.setData({ submit: 0 });
- return false;
- }
+ if (!item.is_same_city) {
+ wx.showToast({
+ title: "商品不支持同城配送",
+ icon: 'none',
+ duration: 2000
+ })
+ th.setData({ submit: 0 });
+ return false;
+ }
- }else{
- if(item.distr_type==1){
- wx.showToast({
- title: "商品的配送方式不一致",
- icon: 'none',
- duration: 2000
- })
- th.setData({ submit: 0 });
- return false;
- }
+ } else {
+ if (item.distr_type == 1) {
+ wx.showToast({
+ title: "商品的配送方式不一致",
+ icon: 'none',
+ duration: 2000
+ })
+ th.setData({ submit: 0 });
+ return false;
+ }
}
}
@@ -8333,7 +8769,7 @@ Page({
item.is_post_temp = 1;
- th.setData({is_coupon:item.is_coupon})
+ th.setData({ is_coupon: item.is_coupon })
var coll_arr = [];
@@ -8362,7 +8798,7 @@ Page({
var item = this.data.all_collocation_list[e.index];
- th.setData({is_coupon:item.is_coupon})
+ th.setData({ is_coupon: item.is_coupon })
var coll_arr = this.data.collocation_goods;
var find = coll_arr.findIndex(function (e) {
@@ -8375,7 +8811,7 @@ Page({
//让主商品的活动变成0,取消搭配购
this.setData({ 'bn_goods.prom_type': 0, 'bn_goods.prom_id': 0, collocation_goods: [] });
- th.setData({is_coupon:1})
+ th.setData({ is_coupon: 1 })
//计算价格
th.calculatePrice2();
@@ -8402,9 +8838,9 @@ Page({
var th = this;
var cart_index = e.cart_index;
var index = e.index;
-
+
var collocationList = this.data.cartlist[cart_index].collocationList;
- var item =JSON.parse(JSON.stringify(collocationList[index]));
+ var item = JSON.parse(JSON.stringify(collocationList[index]));
var goods = this.data.cartlist[cart_index].goods;
@@ -8413,22 +8849,22 @@ Page({
//有改,都强制把券选择清理一下
var pickup_id = this.data.cartlist[cart_index].pickup_id;
- var txt1='using_quan['+pickup_id+']';
- th.setData({[txt1]:null});
+ var txt1 = 'using_quan[' + pickup_id + ']';
+ th.setData({ [txt1]: null });
//-- 如果是选中 --
if (e.selected) {
- var m_cartlist=this.data.old_cartlist;
- if(this.data.order_prom_list_cart){
- m_cartlist=this.data.order_prom_list_cart;
+ var m_cartlist = this.data.old_cartlist;
+ if (this.data.order_prom_list_cart) {
+ m_cartlist = this.data.order_prom_list_cart;
}
- var exp_type=m_cartlist[cart_index].exp_type; //配送方式
+ var exp_type = m_cartlist[cart_index].exp_type; //配送方式
//如果是自提的时候
- if(exp_type==1){
+ if (exp_type == 1) {
- if(item.distr_type==2){
+ if (item.distr_type == 2) {
wx.showToast({
title: "商品的配送方式不一致",
icon: 'none',
@@ -8437,11 +8873,11 @@ Page({
return false;
}
- }else{
+ } else {
- if(exp_type==2){
+ if (exp_type == 2) {
- if(!item.is_same_city){
+ if (!item.is_same_city) {
wx.showToast({
title: "商品不支持同城配送",
icon: 'none',
@@ -8451,33 +8887,33 @@ Page({
return false;
}
- }else {
+ } else {
- if (item.distr_type == 1) {
- wx.showToast({
- title: "商品的配送方式不一致",
- icon: 'none',
- duration: 2000
- })
- return false;
- }
+ if (item.distr_type == 1) {
+ wx.showToast({
+ title: "商品的配送方式不一致",
+ icon: 'none',
+ duration: 2000
+ })
+ return false;
+ }
}
}
//promise_get. 看一下有没有指定门店的限制
- let gd=null
- let gd_rs= await getApp().promiseGet('/api/weshop/goods/get/' + os.stoid + "/" + item.goods_id,{})
- if(gd_rs && gd_rs.data.code==0 && gd_rs.data.data){
- gd=gd_rs.data.data;
+ let gd = null
+ let gd_rs = await getApp().promiseGet('/api/weshop/goods/get/' + os.stoid + "/" + item.goods_id, {})
+ if (gd_rs && gd_rs.data.code == 0 && gd_rs.data.data) {
+ gd = gd_rs.data.data;
}
- if(gd.pick_group_ids){
- var idx0=gd.pick_up_lists.findIndex(function (e){
- return e.pickup_id==pickup_id;
+ if (gd.pick_group_ids) {
+ var idx0 = gd.pick_up_lists.findIndex(function (e) {
+ return e.pickup_id == pickup_id;
})
- if(idx0<0){
+ if (idx0 < 0) {
wx.showToast({
- title: item.goods_name+"的门店不可售",
+ title: item.goods_name + "的门店不可售",
icon: 'none',
duration: 2000
})
@@ -8486,7 +8922,7 @@ Page({
}
- var bn_coll = th.selectComponent("#col"+cart_index); //组件的id
+ var bn_coll = th.selectComponent("#col" + cart_index); //组件的id
bn_coll.set_sele(index);
item.goods_num = 1;
@@ -8494,8 +8930,8 @@ Page({
item.prom_type = 5;
item.is_collocation = 1;
item.is_post_temp = 1;
- if(!item.original_img) item.original_img=1;
- else item.original_img=th.data.imgUrl+item.original_img;
+ if (!item.original_img) item.original_img = 1;
+ else item.original_img = th.data.imgUrl + item.original_img;
goods.push(item);
@@ -8529,7 +8965,7 @@ Page({
var distr_t = 0; // 配送方式 0=用户自选 1=自提 2=物流
for (var hi in narr) {
- narr[hi].is_post_temp=1; //-- 固定都是参与包邮模板 --
+ narr[hi].is_post_temp = 1; //-- 固定都是参与包邮模板 --
var dis_t = narr[hi].distr_type;
if (dis_t == 2) {
th.setData({ is_all_zt: 0 });
@@ -8551,7 +8987,7 @@ Page({
}
//-- 如果是同城配送和默认同城配送的时候 --
- if(th.data.show_same_city==1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2) {
+ if (th.data.show_same_city == 1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2) {
et = 2; th.setData({ is_all_zt: 0 });
}
@@ -8613,131 +9049,131 @@ Page({
},
//-- 获取到搭配 --
- has_dp:function (list,prom_id){
+ has_dp: function (list, prom_id) {
for (let i in list) {
- var it=list[i];
- if(it.prom_id==prom_id && it.is_collocation==1){
- return true;
- }
+ var it = list[i];
+ if (it.prom_id == prom_id && it.is_collocation == 1) {
+ return true;
+ }
}
return false;
},
//-- 开始显示活动的弹出 --
- switch_cx_group:function (e){
- var idx=e.currentTarget.dataset.index;
- var gd_key=e.currentTarget.dataset.gd_key;
- this.data.sele_cx_group_cidx=idx;
- this.data.cx_group_gd_key=gd_key;
+ switch_cx_group: function (e) {
+ var idx = e.currentTarget.dataset.index;
+ var gd_key = e.currentTarget.dataset.gd_key;
+ this.data.sele_cx_group_cidx = idx;
+ this.data.cx_group_gd_key = gd_key;
//-- 获取到--
- var cx_prom_group=this.data.cartlist[idx].show_can_cx[gd_key].act_arr;
+ var cx_prom_group = this.data.cartlist[idx].show_can_cx[gd_key].act_arr;
- var cx_arr=[];
+ var cx_arr = [];
- for (var h=0;h-1
- && g_item.pick_id==pk && g_item.is_gift==0;
+ var fg = goods.findIndex(function (g_item) {
+ return g_item.goods_id == ck_prom_type2.goods[b].goods_id
+ && [0, 3, 5, 7, 10].indexOf(g_item.prom_type) > -1
+ && g_item.pick_id == pk && g_item.is_gift == 0;
})
- if(fg>-1){
- goods[fg].prom_type=ck_prom_type.prom_type;
- goods[fg].prom_id=ck_prom_type.prom_id;
+ if (fg > -1) {
+ goods[fg].prom_type = ck_prom_type.prom_type;
+ goods[fg].prom_id = ck_prom_type.prom_id;
//如果是不参与的话,商品的活动状态要清理
- if(th.data.cartlist[idx].show_can_cx[gd_key].no_cj_prom && ck_prom_type.prom_type==3){
- goods[fg].prom_type=0;
- goods[fg].prom_id=0;
+ if (th.data.cartlist[idx].show_can_cx[gd_key].no_cj_prom && ck_prom_type.prom_type == 3) {
+ goods[fg].prom_type = 0;
+ goods[fg].prom_id = 0;
}
- for(var ik=0;ik< th.data.cartlist[idx].goods.length;ik++){
- if(th.data.cartlist[idx].goods[ik].id==goods[fg].id){
- th.data.cartlist[idx].goods[ik].prom_type= goods[fg].prom_type;
- th.data.cartlist[idx].goods[ik].prom_id= goods[fg].prom_id;
+ for (var ik = 0; ik < th.data.cartlist[idx].goods.length; ik++) {
+ if (th.data.cartlist[idx].goods[ik].id == goods[fg].id) {
+ th.data.cartlist[idx].goods[ik].prom_type = goods[fg].prom_type;
+ th.data.cartlist[idx].goods[ik].prom_id = goods[fg].prom_id;
}
}
//原始数据要有深拷贝不能有地址的牵连
- th.data.cartlist_y=JSON.parse(JSON.stringify(goods))
+ th.data.cartlist_y = JSON.parse(JSON.stringify(goods))
}
}
@@ -8746,17 +9182,17 @@ Page({
mask: true
})
//-- 重新计算一下价格 --
- th.get_cart_next(null,1,cx_prom_group[fir_sele]);
- }else{
+ th.get_cart_next(null, 1, cx_prom_group[fir_sele]);
+ } else {
wx.showToast({
title: ck_res.msg,
icon: 'none',
- duration:2500
+ duration: 2500
});
- for(var dx=0;dx 0 && num > fd['limit_num']) {
- func({'code': -1, 'msg': '超出优惠促销活动的限购'});
+ func({ 'code': -1, 'msg': '超出优惠促销活动的限购' });
return false;
}
}
@@ -8822,20 +9258,20 @@ Page({
var num0 = nei_in_zhact[ky];
var zh = this.data.zhhe_act_map[ky];
- var buyed=0;
+ var buyed = 0;
//获取已经购买了多少件
- var z_url = "/api/weshop/ordergoods/getUserBuyPromNum?store_id="+os.stoid+"user_id="+getApp().globalData.user_id+"prom_type=7&prom_id="+ky;
- var zbuy=await getApp().request.promiseGet(z_url,{});
- if(zbuy && zbuy.data.code==0){
- buyed=zbuy.data.data.userbuynum;
+ var z_url = "/api/weshop/ordergoods/getUserBuyPromNum?store_id=" + os.stoid + "user_id=" + getApp().globalData.user_id + "prom_type=7&prom_id=" + ky;
+ var zbuy = await getApp().request.promiseGet(z_url, {});
+ if (zbuy && zbuy.data.code == 0) {
+ buyed = zbuy.data.data.userbuynum;
}
if (zh['zh_num'] > 0 && zh['zh_buy_num'] + num0 > zh['zh_num']) {
//func({'code': -1, 'msg': '超出组合购活动总数量'});
//return false;
}
- if (zh && zh['buy_limit'] > 0 && num0+buyed > zh['buy_limit']) {
+ if (zh && zh['buy_limit'] > 0 && num0 + buyed > zh['buy_limit']) {
//func({'code': -1, 'msg': '超出超出组合购活动的限购'});
//return false;
}
@@ -8856,10 +9292,10 @@ Page({
var promgoodsbuynum = 0;
var rq = {
'store_id': os.stoid, 'user_id': getApp().globalData.user_id, 'goods_id': gid,
- 'prom_type': 7, 'prom_id': pid, isnew:1
+ 'prom_type': 7, 'prom_id': pid, isnew: 1
};
- var res = await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", {data: rq});
+ var res = await getApp().request.promiseGet("/api/weshop/ordergoods/getUserBuyGoodsNum", { data: rq });
if (res && res.data.code == 0) {
promgoodsbuynum = res.data.data.promgoodsbuynum;
}
@@ -8874,14 +9310,14 @@ Page({
}
}
}
- func({'code': 0, 'msg': '成功'})
+ func({ 'code': 0, 'msg': '成功' })
},
//--- 不参与优惠促销的开关 ---
no_cj_prom: function (e) {
//避免重复点击
- if(this.data.submit) return false;
- this.setData({ submit: 1,same_ok:1 });
+ if (this.data.submit) return false;
+ this.setData({ submit: 1, same_ok: 1 });
//重新调用cart_next,进行下一步计算
wx.showLoading({
@@ -8889,23 +9325,23 @@ Page({
})
this.setData({
- send_lb:{},
- month_lb:{},
- send_gf:{}
+ send_lb: {},
+ month_lb: {},
+ send_gf: {}
})
//清空优惠促销的内容
this.data.prom_goods_map = {};
- let th=this;
+ let th = this;
let can_cx_idx = e.currentTarget.dataset.can_cx_idx; //多促销的索引
let pidx = e.currentTarget.dataset.pidx; //订单索引
let item = this.data.cartlist[pidx].show_can_cx[can_cx_idx]; //促销内容
- let pk=this.data.cartlist[pidx].pickup_id; //门店ID
+ let pk = this.data.cartlist[pidx].pickup_id; //门店ID
//获取到后台计算多促销的数据
- var cx_prom_group2= this.data.show_can_cx_map[pk][can_cx_idx].act_arr;
+ var cx_prom_group2 = this.data.show_can_cx_map[pk][can_cx_idx].act_arr;
//给no_cj_prom进行赋值
item.no_cj_prom = !item.no_cj_prom ? 1 : 0;
@@ -8915,14 +9351,14 @@ Page({
})
//使用深拷贝,生成临时的变量
- let ck_prom_type= ut.deep_cp(item.cur_act);
- var f_act=cx_prom_group2.find(function (ite){
- return ite.prom_type==ck_prom_type.prom_type
+ let ck_prom_type = ut.deep_cp(item.cur_act);
+ var f_act = cx_prom_group2.find(function (ite) {
+ return ite.prom_type == ck_prom_type.prom_type
})
- if(!ck_prom_type || !f_act){
- ut.m_toast('未找到活动');
+ if (!ck_prom_type || !f_act) {
+ ut.m_toast('未找到活动');
}
- ck_prom_type.goods=f_act.goods;
+ ck_prom_type.goods = f_act.goods;
//处理一下商品
let goods0 = JSON.parse(JSON.stringify(th.data.cartlist_y));
@@ -8938,17 +9374,17 @@ Page({
//-- 开始查找 --
var fg = goods.findIndex(function (g_item) {
return g_item.goods_id == ck_prom_type.goods[b].goods_id
- && [0, 3, 5, 7, 10].indexOf(g_item.prom_type) > -1
- && g_item.pick_id == pk && g_item.is_gift == 0;
+ && [0, 3, 5, 7, 10].indexOf(g_item.prom_type) > -1
+ && g_item.pick_id == pk && g_item.is_gift == 0;
})
if (fg > -1) {
goods[fg].prom_type = ck_prom_type.prom_type;
goods[fg].prom_id = ck_prom_type.prom_id;
//如果是不参与的话,商品的活动状态要清理
- if(item.no_cj_prom && ck_prom_type.prom_type==3){
- goods[fg].prom_type=0;
- goods[fg].prom_id=0;
+ if (item.no_cj_prom && ck_prom_type.prom_type == 3) {
+ goods[fg].prom_type = 0;
+ goods[fg].prom_id = 0;
}
for (var ik = 0; ik < th.data.cartlist[pidx].goods.length; ik++) {
@@ -8961,12 +9397,12 @@ Page({
}
//清理下赠品
- let n_goods=[];
- for (let ig = 0; ig order_prom_map_ck.goods_price_all){
+ if (ord_prom.money > order_prom_map_ck.goods_price_all) {
return null;
}
break;
- //手店价的时候
+ //手店价的时候
case 1:
- if (ord_prom.money > order_prom_map_ck.shop_price_all){
+ if (ord_prom.money > order_prom_map_ck.shop_price_all) {
//要先还原
this.setData({
[txt1]: 0
@@ -9083,9 +9519,9 @@ Page({
[txt1]: 1
});
break;
- //市场价的时候
+ //市场价的时候
case 2:
- if (ord_prom.money > order_prom_map_ck.market_price_all){
+ if (ord_prom.money > order_prom_map_ck.market_price_all) {
//要先还原
this.setData({
[txt1]: 0
@@ -9099,7 +9535,7 @@ Page({
break;
}
//如果订单促销是不参与订单促销的,那么就直接返回null(订单促销不是实收价的时候)
- if(ord_prom.discount_field>0 && !this.data.can_use_ord_prom[pickid]){
+ if (ord_prom.discount_field > 0 && !this.data.can_use_ord_prom[pickid]) {
return null;
}
return ord_prom;
@@ -9108,8 +9544,8 @@ Page({
//设置能够参与订单促销
set_can_use_ord_prom: function (e) {
- if(this.data.submit) return false;
- this.setData({ submit: 1,same_ok:1 });
+ if (this.data.submit) return false;
+ this.setData({ submit: 1, same_ok: 1 });
let pickid = e.currentTarget.dataset.pd;
let txt = 'can_use_ord_prom[' + pickid + ']';
@@ -9132,8 +9568,8 @@ Page({
let goods = [];
for (var ik = 0; ik < goods0.length; ik++) {
var item_c = goods0[ik];
- if(item_c.pick_id == pickid && item_c.is_collocation) continue;
- if(item_c.is_gift) continue
+ if (item_c.pick_id == pickid && item_c.is_collocation) continue;
+ if (item_c.is_gift) continue
goods.push(item_c);
}
@@ -9142,71 +9578,68 @@ Page({
//重新调用cart_next,进行下一步计算
wx.showLoading({
title: "处理中.",
- mark:true
+ mark: true
})
//-- 重新计算一下价格 --
- this.get_cart_next(null, 1, {prom_type: 0, prom_id: 0});
+ this.get_cart_next(null, 1, { prom_type: 0, prom_id: 0 });
},
//立即购买的时候,点击订单促销的参与
- set_can_use_ord_prom_now:function (e){
+ set_can_use_ord_prom_now: function (e) {
- if(this.data.submit) return false;
- this.setData({ submit: 1,same_ok:1 });
+ if (this.data.submit) return false;
+ this.setData({ submit: 1, same_ok: 1 });
- let pickid=this.data.bn_pick;
+ let pickid = this.data.bn_pick;
let txt = 'can_use_ord_prom[' + pickid + ']';
let can_use = this.data.can_use_ord_prom[pickid] ? this.data.can_use_ord_prom[pickid] : 0;
this.setData({
[txt]: !can_use
})
- let th=this;
- let good=th.data.bn_goods;
+ let th = this;
+ let good = th.data.bn_goods;
//如果有要参与订单促销的按钮点击后,要修改商品的价格
- if(th.data.can_use_ord_prom[pickid]){
- let discount_field=th.data.show_ord_prom[pickid];
- switch (discount_field){
- case 1:
- good.shop_price=good.shop_price_y;
- break;
- case 2:
- good.shop_price=good.market_price;
- break;
- }
-
- //-- 转成普通商品 ---
- good.prom_type=0;
- good.prom_id=0;
-
- th.setData({
- selected_quan_list: null,
- using_quan:{}
- })
+ if (th.data.can_use_ord_prom[pickid]) {
+ let discount_field = th.data.show_ord_prom[pickid];
+ switch (discount_field) {
+ case 1:
+ good.shop_price = good.shop_price_y;
+ break;
+ case 2:
+ good.shop_price = good.market_price;
+ break;
+ }
- var ggy=th.data.old_bn_goods;
+ //-- 转成普通商品 ---
+ good.prom_type = 0;
+ good.prom_id = 0;
- }else{
- good=ut.deep_cp(th.data.old_bn_goods);
+ th.setData({
+ selected_quan_list: null,
+ using_quan: {}
+ })
+ } else {
+ good = ut.deep_cp(th.data.old_bn_goods);
}
th.setData({
- bn_goods:good
+ bn_goods: good
})
wx.showLoading({
title: "处理中.",
- mark:true
+ mark: true
})
th.calculatePrice2()
- if(!th.data.can_use_ord_prom[pickid]){
+ if (!th.data.can_use_ord_prom[pickid]) {
th.get_buy_now_quan();
}
},
//去凑单
- qcd(){
+ qcd() {
getApp().goto("/pages/index/index/index");
},
diff --git a/packageE/pages/cart/cart2_pt/cart2_pt.js b/packageE/pages/cart/cart2_pt/cart2_pt.js
index ae50ae8..4e24bf0 100644
--- a/packageE/pages/cart/cart2_pt/cart2_pt.js
+++ b/packageE/pages/cart/cart2_pt/cart2_pt.js
@@ -1,12 +1,12 @@
var t = getApp(), app = t, a = t.request, e = require("../../../../utils/common.js"),
- s = require("../../../../utils/util.js"), ut = s, o = require("../../../../utils/md5.js"), to = getApp();
+ s = require("../../../../utils/util.js"), ut = s, o = require("../../../../utils/md5.js"), to = getApp();
var oo = t.globalData.setting, os = oo;
var regeneratorRuntime = require('../../../../utils/runtime.js');
var util_pay = require("../../../../utils/pay.js");
Page({
- data: {
+ data: {
url: t.globalData.setting.url,
resourceUrl: t.globalData.setting.resourceUrl,
imgUrl: t.globalData.setting.imghost,
@@ -68,15 +68,15 @@ Page({
udata: null,//用户预存值,数据
dis_config: null,
bn_use_commission: 0, //是不是使用佣金
- is_pre_cut:0, //是否可以使用预存 0是不可以1的可以
+ is_pre_cut: 0, //是否可以使用预存 0是不可以1的可以
- bn_is_order_yh:1, //是不是订单优惠
- bn_is_post_temp:1, //是不是进行计算包邮模板
+ bn_is_order_yh: 1, //是不是订单优惠
+ bn_is_post_temp: 1, //是不是进行计算包邮模板
- same_ok:1, //同城配送的控制,默认ok
- bconfig:null,
- showFold:true,
- template_id:[],
+ same_ok: 1, //同城配送的控制,默认ok
+ bconfig: null,
+ showFold: true,
+ template_id: [],
//--更优惠券抵用有关,立即购买的,如果是购物车,就要把相应的值,写入cartlist数组中--
ckeck_quan_price: 0,
@@ -94,11 +94,16 @@ Page({
//-- 订单促销判断积累 ---2024-2-20
order_prom_map_ck: {},
//能不能使用订单促销
- can_use_ord_prom:{},
+ can_use_ord_prom: {},
//存储订单促销的取价,按照门店进行索引
- show_ord_prom:{},
- sameCityExp_off:0, //未达到起送价
- sameCityExp_info:'',//未达到起送价提示信息
+ show_ord_prom: {},
+ sameCityExp_off: 0, //未达到起送价
+ sameCityExp_info: '',//未达到起送价提示信息
+ first_entry: 0,//进入次数,如果是第一次进入,进行判断是否进行优惠券是否直接使用
+ def_coupon1: null,//购物车优惠券列表
+ def_coupon2: null,//直接购买优惠券列表
+ def_coupon3: null,//购物车包邮券列表
+ def_coupon4: null,//直接购买包邮券列表
},
@@ -117,14 +122,14 @@ Page({
}, 1000);
},
-
+
clickCollapse() {
this.setData({
flag: !this.data.flag,
})
},
onLoad: async function (t) {
- this.data.fir_in=1;
+ this.data.fir_in = 1;
wx.setNavigationBarTitle({ title: "填写订单", })
var th = this;
getApp().getConfig2(function (e) {
@@ -156,11 +161,11 @@ Page({
//判断是不是佣金抵扣
getApp().is_distribut(this);
try {
- let template_id =await getApp().get_template_id('1001,1012,1027')
+ let template_id = await getApp().get_template_id('1001,1012,1027')
this.setData({
template_id
})
- } catch (error) {}
+ } catch (error) { }
},
onUnload: function () {
this.setData({ isclose: 1 })
@@ -266,7 +271,7 @@ Page({
// let cartList= this.data.cartlist
// let cartList= arr
// let length = cartList.length
- if(!this.data.is_pre_cut){
+ if (!this.data.is_pre_cut) {
return {}
}
wx.showLoading({
@@ -283,7 +288,7 @@ Page({
wareno: ite.goods_sn,
price: ite.goods_price,
qty: ite.goods_num,
- sumprice:ite.sumprice
+ sumprice: ite.sumprice
}
listform.push(obj)
})
@@ -294,15 +299,15 @@ Page({
},
//计算商品预存款请求方法------------------------------------
async getGoodsAdvancesum(storageid, listform, cartList) {
- if(!getApp().globalData.config){
- await getApp().request.promiseGet("/api/weshop/store/get/" + os.stoid,{
- }).then(res=>{
- if(res.data.code==0){
+ if (!getApp().globalData.config) {
+ await getApp().request.promiseGet("/api/weshop/store/get/" + os.stoid, {
+ }).then(res => {
+ if (res.data.code == 0) {
getApp().globalData.config = res.data.data
}
})
}
- if(!getApp().globalData.config) return false;
+ if (!getApp().globalData.config) return false;
let res = await getApp().request.promisePost(`/api/weshop/delphiapi/saveErpApi`, {
data: {
@@ -326,7 +331,7 @@ Page({
if (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
let resData = res.data.data
resData.map(ite => {
- yck += ite.advancesum*1
+ yck += ite.advancesum * 1
yckIdArr.push(ite.advanceitemid)
})
pre_json = resData
@@ -449,11 +454,11 @@ Page({
break;
}
- if(th.data.show_same_city==1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2 && th.data.kt_type!=3 ){
+ if (th.data.show_same_city == 1 && th.data.json_d.pickupway && th.data.json_d.pickupway == 2 && th.data.kt_type != 3) {
et = 2;
}
- t.data.data.shop_price_y=t.data.data.shop_price
+ t.data.data.shop_price_y = t.data.data.shop_price
t.data.data.shop_price = gg.goods_price;
//--如果是普通购买的时候--
@@ -497,7 +502,7 @@ Page({
}
//用深拷贝把商品缓存起来,方便后面使用
- th.data.old_bn_goods=ut.deep_cp(t.data.data);
+ th.data.old_bn_goods = ut.deep_cp(t.data.data);
th.setData({
bn_goods: t.data.data, bn_pickname: gg.pick_name,
@@ -513,7 +518,7 @@ Page({
th.data.check_quan_price_list = t.data.data.shop_price * gg.goods_num + "";
th.data.check_quan_ware_list = t.data.data.erpwareid + "";
- gd.prom_id=gg.prom_id;
+ gd.prom_id = gg.prom_id;
//--阶梯团很特殊,不能用总表来拿价格--
getApp().request.get("/api/weshop/teamlist/get/" + oo.stoid + "/" + gd.prom_id, {
success: function (tt) {
@@ -542,10 +547,10 @@ Page({
if (!tt.data.data.is_quan || pt_data.kttype == 3) {
- th.data.ckeck_quan_price = 0;
- th.data.check_quan_price_list = "";
- th.data.check_quan_ware_list = "";
- gd.is_xz_yh = 1;
+ th.data.ckeck_quan_price = 0;
+ th.data.check_quan_price_list = "";
+ th.data.check_quan_ware_list = "";
+ gd.is_xz_yh = 1;
}
@@ -557,16 +562,16 @@ Page({
t.data.data.prom_id = gd.prom_id;
t.data.data.prom_type = 6;
- if(tt.data.data.is_order_yh){
- th.data.bn_is_order_yh=1;
- }else{
- th.data.bn_is_order_yh=0;
+ if (tt.data.data.is_order_yh) {
+ th.data.bn_is_order_yh = 1;
+ } else {
+ th.data.bn_is_order_yh = 0;
}
- if(tt.data.data.is_post_temp){
- th.data.bn_is_post_temp=1;
- }else{
- th.data.bn_is_post_temp=0;
+ if (tt.data.data.is_post_temp) {
+ th.data.bn_is_post_temp = 1;
+ } else {
+ th.data.bn_is_post_temp = 0;
}
@@ -604,17 +609,17 @@ Page({
}
//用深拷贝把商品缓存起来,方便后面使用
- th.data.old_bn_goods=ut.deep_cp(t.data.data);
+ th.data.old_bn_goods = ut.deep_cp(t.data.data);
- th.setData({
- bn_goods: t.data.data, bn_pickname: gg.pick_name,
- bn_pick: gg.pick_id, bn_t_exp_t: distr_t, bn_exp_type: et
- });
+ th.setData({
+ bn_goods: t.data.data, bn_pickname: gg.pick_name,
+ bn_pick: gg.pick_id, bn_t_exp_t: distr_t, bn_exp_type: et
+ });
- //计算价格
- th.calculatePrice2();
- th.get_buy_now_quan();
+ //计算价格
+ th.calculatePrice2();
+ th.get_buy_now_quan();
}
});
}
@@ -627,38 +632,38 @@ Page({
var th = this;
//判断是不是第一次进入
- if(this.data.fir_in){
- this.data.fir_in=0;
- }else{
- //-- 富有的支付 --
- var fy=ut.fy_back("/pages/user/order_list/order_list",1);
- if(fy) return false;
- util_pay.set_fir();
- //-- 通联的第三方支付的返回优化 --
- ut.is_pay_ok(th.data.ok_order_sn,"/packageG/pages/team/team_success/team_success?ordersn=" + th.data.ok_order_sn,
- "/pages/user/order_list/order_list",function (){
- if(!th.data.ok_order_sn) return false;
+ if (this.data.fir_in) {
+ this.data.fir_in = 0;
+ } else {
+ //-- 富有的支付 --
+ var fy = ut.fy_back("/pages/user/order_list/order_list", 1);
+ if (fy) return false;
+ util_pay.set_fir();
+ //-- 通联的第三方支付的返回优化 --
+ ut.is_pay_ok(th.data.ok_order_sn, "/packageG/pages/team/team_success/team_success?ordersn=" + th.data.ok_order_sn,
+ "/pages/user/order_list/order_list", function () {
+ if (!th.data.ok_order_sn) return false;
getApp().request.promiseGet("/api/weshop/order/page",
- {data:{store_id:os.stoid,parent_sn:th.data.ok_order_sn}}).then(res=>{
- if(ut.ajax_ok(res)){
- var item=res.data.data.pageData[0];
+ { data: { store_id: os.stoid, parent_sn: th.data.ok_order_sn } }).then(res => {
+ if (ut.ajax_ok(res)) {
+ var item = res.data.data.pageData[0];
//拼团成功的判断
- if(item.pt_status==1 || item.pt_status==2){
+ if (item.pt_status == 1 || item.pt_status == 2) {
//支付支付,返回首页
ut.m_toast('支付成功');
- setTimeout(()=>{
+ setTimeout(() => {
getApp().re_to("/packageG/pages/team/team_success/team_success?ordersn=" + th.data.ok_order_sn);
- },1000)
+ }, 1000)
- }else{
+ } else {
//支付支付,返回首页
ut.m_toast('支付失败');
- setTimeout(()=>{
+ setTimeout(() => {
getApp().goto("/pages/index/index/index");
- },1000)
+ }, 1000)
}
- }
- })
+ }
+ })
});
}
@@ -673,10 +678,10 @@ Page({
//更换地址回来要重新调用计算价钱的接口
if (!th.data.user_addr || !ie || th.data.user_addr.address_id != ie.address_id) {
- th.setData({ add_back: 1,same_ok:1 });
+ th.setData({ add_back: 1, same_ok: 1 });
//if (th.data.bn_goods) th.calculatePrice2();
}
- th.setData({ user_addr: ie,show_btn:0 });
+ th.setData({ user_addr: ie, show_btn: 0 });
th.data.isget_by_quan = {};
})
@@ -689,8 +694,8 @@ Page({
}
this.setData({
- show_ord_prom:{},
- can_use_ord_prom:{}
+ show_ord_prom: {},
+ can_use_ord_prom: {}
})
@@ -707,7 +712,7 @@ Page({
var is_same_city = json_d.is_same_city;
th.setData({
- is_pre_cut:json_d.is_pre_cut,is_close_quan: json_d.is_close_quan, sales_rules: ee.sales_rules, is_same_city: is_same_city,
+ is_pre_cut: json_d.is_pre_cut, is_close_quan: json_d.is_close_quan, sales_rules: ee.sales_rules, is_same_city: is_same_city,
rank_switch: json_d.rank_switch, is_default_logistics: is_default_logistics
});
@@ -815,269 +820,269 @@ Page({
- //---如果有选择优惠券的情况下---
- 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;
+ //---如果有选择优惠券的情况下---
+ 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 (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 (res.data.code == 0 && res.data.data && res.data.data.length > 0) {
+ quan_price = res.data.data[0].WareCashSum;
- allpice=allpice-quan_price;
+ allpice = allpice - quan_price;
- }
- })
}
- }
+ })
+ }
+ }
- //-- 判断订单优惠的叠加 --
- var ord_prom=null;
- var o_condition=allpice;
- var pickid = th.data.bn_pick;
+ //-- 判断订单优惠的叠加 --
+ var ord_prom = null;
+ var o_condition = allpice;
+ var pickid = th.data.bn_pick;
- if(th.data.bn_is_order_yh && th.data.kt_type != 3 ){
+ if (th.data.bn_is_order_yh && th.data.kt_type != 3) {
- // await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
- // data: { store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id }
- // }).then(res => {
- // if (res.data.code == 0) {
- // ord_prom = res.data.data;
- // }
- // })
+ // await getApp().request.promiseGet("/api/weshop/promorder/getOrderPromotion", {
+ // data: { store_id: os.stoid, orderAmount: o_condition, user_id: getApp().globalData.user_id }
+ // }).then(res => {
+ // if (res.data.code == 0) {
+ // ord_prom = res.data.data;
+ // }
+ // })
- th.set_by_now_ord_prom(th.data.bn_goods);
- th.data.order_prom_map_ck[bn_pick].goods_price_all=o_condition;
- ord_prom=await th.get_cur_ord_prom(bn_pick);
- }
+ th.set_by_now_ord_prom(th.data.bn_goods);
+ th.data.order_prom_map_ck[bn_pick].goods_price_all = o_condition;
+ ord_prom = await th.get_cur_ord_prom(bn_pick);
+ }
- //如果有使用优惠券,如何订单促销有控制使用优惠券不参与此活动的话
- if(quan_price>0 && ord_prom && ord_prom.is_xz_yh ){
- ord_prom=null;
- }
+ //如果有使用优惠券,如何订单促销有控制使用优惠券不参与此活动的话
+ if (quan_price > 0 && ord_prom && ord_prom.is_xz_yh) {
+ ord_prom = null;
+ }
- //-----------当地址不为空,且是物流时,计算物流费用,同时阶梯团不计算拼团价格----------
- if (th.data.user_addr != null && th.data.bn_exp_type == 0 && (th.data.kt_type != 3 || th.data.bn_goods.is_normal == 1)) {
+ //-----------当地址不为空,且是物流时,计算物流费用,同时阶梯团不计算拼团价格----------
+ if (th.data.user_addr != null && th.data.bn_exp_type == 0 && (th.data.kt_type != 3 || th.data.bn_goods.is_normal == 1)) {
- //看是不是有调用过包邮券
- if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1 && !th.data.can_use_ord_prom[th.data.bn_pick] ) {
+ //看是不是有调用过包邮券
+ if (!th.data.isget_by_quan[th.data.bn_pick] && good.is_xz_yh != 1 && !th.data.can_use_ord_prom[th.data.bn_pick]) {
- //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱---
- getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", {
- data: {
- store_id: os.stoid,
- isuse: 0,
- condition: o_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) {
- var no_goods_arr = item.goods_list.split(",");
- if (ut.isContained(no_goods_arr, gd_arr_list)) continue; //如果是不包邮商品
- }
- arr.push(item);
- }
- if (arr) {
- th.setData({ get_by_quan_list: arr });
- }
- th.data.isget_by_quan[th.data.bn_pick] = 1;
- }
- })
+ //--判断要不要显示包邮券,链式调用接口,调取包邮券,已经是减了优惠的金额,见到优惠券的钱---
+ getApp().request.promiseGet("/api/weshop/userfeemail/pageAndArea", {
+ data: {
+ store_id: os.stoid,
+ isuse: 0,
+ condition: o_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) {
+ var no_goods_arr = item.goods_list.split(",");
+ if (ut.isContained(no_goods_arr, gd_arr_list)) continue; //如果是不包邮商品
+ }
+ arr.push(item);
}
-
- //要让包邮券消失,在使用非实收包邮券的时候
- if(th.data.can_use_ord_prom[th.data.bn_pick]){
- th.setData({ get_by_quan_list: null });
- th.data.isget_by_quan[th.data.bn_pick] = 0;
+ if (arr) {
+ th.setData({ get_by_quan_list: arr, def_coupon3: arr });
+ }
+ th.data.isget_by_quan[th.data.bn_pick] = 1;
}
+ })
+ }
- if(good.is_free_shipping){
- var wl_txt = "formData.shipping_price";
- th.setData({ [wl_txt]: 0 })
- }else{
- var user_addr = th.data.user_addr;
- var req_d = {
- province: user_addr.province, city: user_addr.city, district: user_addr.district,
- wuliu: parseFloat(allpice).toFixed(2), store_id: os.stoid
- }
- var back_data = null;
- var quan_no_goods_arr=null;
-
- if(!ord_prom || ord_prom.is_post_temp) {
- if (th.data.bn_is_post_temp || th.data.bn_goods.is_normal == 1) {
- await getApp().request.promisePost("/api/weshop/order/areaFreight", {
- is_json: 1, data: req_d
- }).then(rs => {
- if (rs.data.code == 0) back_data = rs.data.data;
- });
- }
- }
+ //要让包邮券消失,在使用非实收包邮券的时候
+ if (th.data.can_use_ord_prom[th.data.bn_pick]) {
+ th.setData({ get_by_quan_list: null });
+ th.data.isget_by_quan[th.data.bn_pick] = 0;
+ }
- var is_by_quan = 0;
- //如果是包邮券的时候,要看看券的情况,判断一下包邮有没有不包邮模板
- if (quan_no && th.data.using_quan[pickid].isby == 1) {
- var quan = th.data.using_quan[pickid];
- if (quan.goods_list) {
- quan_no_goods_arr = quan.goods_list.split(",");
- } else {
- is_by_quan = 1;
- }
- }
+ if (good.is_free_shipping) {
+ var wl_txt = "formData.shipping_price";
+ th.setData({ [wl_txt]: 0 })
+ } else {
+ var user_addr = th.data.user_addr;
+ var req_d = {
+ province: user_addr.province, city: user_addr.city, district: user_addr.district,
+ wuliu: parseFloat(allpice).toFixed(2), store_id: os.stoid
+ }
+ var back_data = null;
+ var quan_no_goods_arr = null;
+
+ if (!ord_prom || ord_prom.is_post_temp) {
+ if (th.data.bn_is_post_temp || th.data.bn_goods.is_normal == 1) {
+ await getApp().request.promisePost("/api/weshop/order/areaFreight", {
+ is_json: 1, data: req_d
+ }).then(rs => {
+ if (rs.data.code == 0) back_data = rs.data.data;
+ });
+ }
+ }
- //如果有包邮券的不包邮商品的时候
- if (quan_no_goods_arr) {
- if (back_data && back_data.no_free_goods) {
- back_data['is_by_all'] = 1;
- var arr3 = back_data.no_free_goods.filter(item => {
- return quan_no_goods_arr.includes(item)
- })
- back_data.no_free_goods = null;
- if (arr3.length) {
- back_data.no_free_goods = arr3;
- }
- }
- if (!back_data || !back_data.no_free_goods) {
- if (!back_data) back_data = {};
- back_data['is_by_all'] = 1;
- back_data['no_free_goods'] = quan_no_goods_arr;
- }
- }
+ var is_by_quan = 0;
+ //如果是包邮券的时候,要看看券的情况,判断一下包邮有没有不包邮模板
+ if (quan_no && th.data.using_quan[pickid].isby == 1) {
+ var quan = th.data.using_quan[pickid];
+ if (quan.goods_list) {
+ quan_no_goods_arr = quan.goods_list.split(",");
+ } else {
+ is_by_quan = 1;
+ }
+ }
+ //如果有包邮券的不包邮商品的时候
+ if (quan_no_goods_arr) {
+ if (back_data && back_data.no_free_goods) {
+ back_data['is_by_all'] = 1;
+ var arr3 = back_data.no_free_goods.filter(item => {
+ return quan_no_goods_arr.includes(item)
+ })
+ back_data.no_free_goods = null;
+ if (arr3.length) {
+ back_data.no_free_goods = arr3;
+ }
+ }
+ if (!back_data || !back_data.no_free_goods) {
+ if (!back_data) back_data = {};
+ back_data['is_by_all'] = 1;
+ back_data['no_free_goods'] = quan_no_goods_arr;
+ }
+ }
- if(!is_by_quan){
- var gd_arr_list = [];
- gd_arr_list.push(good);
- var cut_good_weight = 0;
- for (let i in gd_arr_list) {
- let item = gd_arr_list[i];
-
- if (back_data && back_data['is_by_all'] && (!back_data.no_free_goods || back_data.no_free_goods.indexOf(item.goods_id) == -1)) {
-
- if (item['exp_sum_type'] == 2 && back_data.weight_free > 0) {
- if (goods_weight < 0) goods_weight = 0;
- cut_good_weight += item['weight'] * item['buynum'];
- goods_weight += item['weight'] * item['buynum'];
- }
- if (back_data.weight_free > 0) {
- out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
- }
- continue;
- }
- switch (item['exp_sum_type']) {
- case 1:
- //统一运费
- o_shipping_price += item['uniform_exp_sum'];
- break;
- case 2:
- if (goods_weight < 0) goods_weight = 0;
- //累积商品重量 每种商品的重量 * 数量
- goods_weight += item['weight'] * item['buynum'];
-
- if (back_data && back_data.is_by_all && !back_data.no_free_goods) {
- cut_good_weight += item['weight'] * item['buynum'];
- if (back_data.weight_free > 0) {
- out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
- }
- }
- break;
- case 3:
- if (goods_piece < 0) goods_piece = 0;
- //累积商品数量
- goods_piece += item['buynum'];
- break;
- }
- }
+ if (!is_by_quan) {
+ var gd_arr_list = [];
+ gd_arr_list.push(good);
+ var cut_good_weight = 0;
+ for (let i in gd_arr_list) {
+ let item = gd_arr_list[i];
- //如果是正值的时候
- if (out_of_weight >= 0) out_of_weight = -cut_good_weight;
- else out_of_weight = -back_data.weight_free * 1000;
+ if (back_data && back_data['is_by_all'] && (!back_data.no_free_goods || back_data.no_free_goods.indexOf(item.goods_id) == -1)) {
+ if (item['exp_sum_type'] == 2 && back_data.weight_free > 0) {
+ if (goods_weight < 0) goods_weight = 0;
+ cut_good_weight += item['weight'] * item['buynum'];
+ goods_weight += item['weight'] * item['buynum'];
+ }
+ if (back_data.weight_free > 0) {
+ out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
+ }
+ continue;
+ }
- if(!th.data.wu_arr){
- wx.hideLoading();
- wx.showToast({
- title: "物流配置未启用物流公司", icon: 'none', duration: 2000
- })
- //th.setData({ show_submit:0, });
- th.setData({show_submit:1, submit: 0,same_ok:0 })
- return false;
+ switch (item['exp_sum_type']) {
+ case 1:
+ //统一运费
+ o_shipping_price += item['uniform_exp_sum'];
+ break;
+ case 2:
+ if (goods_weight < 0) goods_weight = 0;
+ //累积商品重量 每种商品的重量 * 数量
+ goods_weight += item['weight'] * item['buynum'];
+
+ if (back_data && back_data.is_by_all && !back_data.no_free_goods) {
+ cut_good_weight += item['weight'] * item['buynum'];
+ if (back_data.weight_free > 0) {
+ out_of_weight = (back_data.weight_free * 1000) - cut_good_weight;
}
+ }
+ break;
+ case 3:
+ if (goods_piece < 0) goods_piece = 0;
+ //累积商品数量
+ goods_piece += item['buynum'];
+ break;
+ }
+ }
- var code = th.data.wu_arr[th.data.index].code;
-
- //--------------开始计算物流------------------
- var shipping_price = 0;
- // var shipping_price = ut.calculatewuliu(code, o_shipping_price, goods_weight, out_of_weight,
- // goods_piece, th.data.user_addr, back_data, rs);
-
- var w_data = {
- store_id: os.stoid, code: code,
- o_shipping_price: o_shipping_price,
- goods_weight: goods_weight,
- out_of_weight: out_of_weight, goods_piece: goods_piece,
- user_addr_province: th.data.user_addr.province,
- user_addr_city: th.data.user_addr.city,
- user_addr_district: th.data.user_addr.district,
- is_by_all: back_data && back_data.is_by_all ? 1 : 0,
- no_free_goods: back_data && back_data.no_free_goods && back_data.no_free_goods.length > 0 ? 1 : 0,
- }
+ //如果是正值的时候
+ if (out_of_weight >= 0) out_of_weight = -cut_good_weight;
+ else out_of_weight = -back_data.weight_free * 1000;
- var is_ok = 0;
- await getApp().request.promisePost('/api/weshop/order/getOrderWuLiPrice', {
- data: w_data,
- is_json: 1
- }).then(res => {
- if (res.data.code == 0) {
- shipping_price = res.data.data;
- is_ok = 1;
- }
- })
- if (!is_ok) {
- wx.hideLoading();
- wx.showToast({
- title: "计算物流错误", icon: 'none', duration: 2000
- })
- //th.setData({ show_submit:0 });
- th.setData({show_submit:1, submit: 0,same_ok:0 })
-
- return false;
- }
- shipping_price = parseFloat(shipping_price).toFixed(2);
- var wl_txt = "formData.shipping_price";
- th.setData({ [wl_txt]: shipping_price, })
+ if (!th.data.wu_arr) {
+ wx.hideLoading();
+ wx.showToast({
+ title: "物流配置未启用物流公司", icon: 'none', duration: 2000
+ })
+ //th.setData({ show_submit:0, });
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0 })
+ return false;
+ }
- }
- else{
- var wl_txt = "formData.shipping_price";
- th.setData({ [wl_txt]: 0, })
- }
+ var code = th.data.wu_arr[th.data.index].code;
+
+ //--------------开始计算物流------------------
+ var shipping_price = 0;
+ // var shipping_price = ut.calculatewuliu(code, o_shipping_price, goods_weight, out_of_weight,
+ // goods_piece, th.data.user_addr, back_data, rs);
+
+ var w_data = {
+ store_id: os.stoid, code: code,
+ o_shipping_price: o_shipping_price,
+ goods_weight: goods_weight,
+ out_of_weight: out_of_weight, goods_piece: goods_piece,
+ user_addr_province: th.data.user_addr.province,
+ user_addr_city: th.data.user_addr.city,
+ user_addr_district: th.data.user_addr.district,
+ is_by_all: back_data && back_data.is_by_all ? 1 : 0,
+ no_free_goods: back_data && back_data.no_free_goods && back_data.no_free_goods.length > 0 ? 1 : 0,
+ }
+
+ var is_ok = 0;
+ await getApp().request.promisePost('/api/weshop/order/getOrderWuLiPrice', {
+ data: w_data,
+ is_json: 1
+ }).then(res => {
+ if (res.data.code == 0) {
+ shipping_price = res.data.data;
+ is_ok = 1;
}
+ })
+ if (!is_ok) {
+ wx.hideLoading();
+ wx.showToast({
+ title: "计算物流错误", icon: 'none', duration: 2000
+ })
+ //th.setData({ show_submit:0 });
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0 })
+
+ return false;
+ }
+
+ 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, })
+ }
+ }
} else if (th.data.bn_exp_type == 1) {
var wl_txt = "formData.shipping_price";
th.setData({ [wl_txt]: 0, })
@@ -1086,9 +1091,9 @@ Page({
//-- 如果是订单优惠的时候,allpice要拿来减掉一些 --
- var order_prom_id=0;
- var order_prom_amount=0;
- if(ord_prom){
+ var order_prom_id = 0;
+ var order_prom_amount = 0;
+ if (ord_prom) {
order_prom_id = ord_prom['id'];
switch (ord_prom['type']) {
case 0:
@@ -1107,14 +1112,14 @@ Page({
}
}
-
+
//判断是否同城配送,而且没有调用过
if (th.data.bn_exp_type == 2 && th.data.user_addr) {
var lon = 0;
var lat = 0;
//-- 获取距离 --
await getApp().request.promisePost("/api/weshop/order/sameCityExp/getGeocoder", {
- is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address,store_id:os.stoid }
+ is_json: 1, data: { address: th.data.user_addr.more_address + th.data.user_addr.address, store_id: os.stoid }
}).then(res => {
if (res.data.code == 0) {
var data = JSON.parse(res.data.data);
@@ -1146,19 +1151,19 @@ Page({
var wl_txt = "formData.shipping_price";
th.setData({ [wl_txt]: res.data.data, })
th.setData({
- sameCityExp_off:0,
- sameCityExp_info:''
- })
+ sameCityExp_off: 0,
+ sameCityExp_info: ''
+ })
} else {
- if (res.data.code==-2) { //未达到起送价
+ if (res.data.code == -2) { //未达到起送价
th.setData({
- sameCityExp_off:2,
- sameCityExp_info:res.data.msg
+ sameCityExp_off: 2,
+ sameCityExp_info: res.data.msg
})
- }else{
+ } else {
th.setData({
- sameCityExp_off:1,
- sameCityExp_info:res.data.msg
+ sameCityExp_off: 1,
+ sameCityExp_info: res.data.msg
})
}
// is_next = 0;
@@ -1167,15 +1172,15 @@ Page({
})
}
})
- if (!is_next){
- th.setData({show_submit:1, submit: 0,same_ok:0,show_btn:1})
+ if (!is_next) {
+ th.setData({ show_submit: 1, submit: 0, same_ok: 0, show_btn: 1 })
return false
}
- th.data.lon=lon;
- th.data.lat=lat;
- th.data.bn_gd_w=gd_w;
- th.data.bn_samecity_order_amount=req_data.order_amount;
+ th.data.lon = lon;
+ th.data.lat = lat;
+ th.data.bn_gd_w = gd_w;
+ th.data.bn_samecity_order_amount = req_data.order_amount;
}
@@ -1234,7 +1239,7 @@ Page({
goods_sn: th.data.bn_goods.goods_sn,
goods_price: th.data.bn_goods.shop_price || th.data.bn_goods.goods_price,
goods_num: th.data.bn_goods.buynum || th.data.bn_goods.goods_num,
- sumprice:parseFloat(allpice).toFixed(2)
+ sumprice: parseFloat(allpice).toFixed(2)
}],
sto: {
keyid: th.data.bn_goods.keyid
@@ -1282,7 +1287,7 @@ Page({
// all_yck_arr.push(yck) //真实预存款抵扣金额
// all_pre_json.push(good.pre_json)
// all_prestore = parseFloat(all_prestore); //真实预存款抵扣金额总和
- }else{
+ } else {
let atxt10 = "formData.prestore"; //预存金额
let atxt11 = "formData.pre_json"; //预存json
let atxt12 = "formData.all_yck_arr"; //预存真实抵扣列表
@@ -1317,9 +1322,9 @@ Page({
- //-----------------总价-----------------
- var total_m = parseFloat(allpice) + parseFloat(th.data.formData.shipping_price);
- total_m = parseFloat(total_m).toFixed(2);
+ //-----------------总价-----------------
+ var total_m = parseFloat(allpice) + parseFloat(th.data.formData.shipping_price);
+ total_m = parseFloat(total_m).toFixed(2);
var txt = "formData.user_money";
var txt2 = "formData.order_amount";
@@ -1351,37 +1356,39 @@ Page({
//--------------如果使用余额---------------------
if (th.data.bn_use_money == 1 && th.data.yuer > 0) {
if (parseFloat(th.data.yuer) > parseFloat(order_m)) {
- th.setData({ [txt]: order_m, [txt2]: 0, [txt3]:quan_price,submit: 0, show_btn: 1 })
+ th.setData({ [txt]: order_m, [txt2]: 0, [txt3]: quan_price, submit: 0, show_btn: 1 })
} else {
order_m = parseFloat(order_m) - parseFloat(th.data.yuer);
order_m = order_m.toFixed(2);
- th.setData({ [txt]: th.data.yuer, [txt2]: order_m,[txt3]:quan_price, submit: 0, show_btn: 1 })
+ th.setData({ [txt]: th.data.yuer, [txt2]: order_m, [txt3]: quan_price, submit: 0, show_btn: 1 })
}
} else {
- th.setData({ [txt]: 0, [txt2]: order_m,[txt3]:quan_price, submit: 0, show_btn: 1 })
+ th.setData({ [txt]: 0, [txt2]: order_m, [txt3]: quan_price, submit: 0, show_btn: 1 })
}
+ //调用默认优惠券方法
+ th.def_coupon_fn()
wx.hideLoading();
//});
},
- //订阅消息提醒
- sendsm: function (t) {
- let that = this;
- let template_id = this.data.template_id;
- // //授权订阅
- wx.requestSubscribeMessage({
- tmplIds: template_id,
- success(res) {
- that.submitForm(t)
- },
- fail(res) {
- that.submitForm(t)
- }
- })
-
- },
+ //订阅消息提醒
+ sendsm: function (t) {
+ let that = this;
+ let template_id = this.data.template_id;
+ // //授权订阅
+ wx.requestSubscribeMessage({
+ tmplIds: template_id,
+ success(res) {
+ that.submitForm(t)
+ },
+ fail(res) {
+ that.submitForm(t)
+ }
+ })
+
+ },
//--------------------提交订单-----------------------
submitForm: async function (t) {
if (this.data.is_summit_ing == 1) return false; //--提交中退出--
@@ -1394,7 +1401,7 @@ Page({
//如果不是阶梯团,或者是普通购买,商家选择了物流,以及地址为空的时候
//th.data.bn_exp_type == 0 && th.data.user_addr == null
- if (getApp().is_no_addr(th,th.data.bn_exp_type) && (th.data.kt_type != 3 || th.data.bn_goods.is_normal == 1)) {
+ if (getApp().is_no_addr(th, th.data.bn_exp_type) && (th.data.kt_type != 3 || th.data.bn_goods.is_normal == 1)) {
ff = false;
getApp().my_warnning("请选择收货地址", 0, this);
this.data.is_summit_ing = 0;
@@ -1448,28 +1455,28 @@ Page({
};
//-- 同城配送检验的参数 --
- if(item.exp_type==2){
- item.lon=th.data.lon?th.data.lon:0;
- item.lat=th.data.lat?th.data.lat:0;
- item.goods_weight=th.data.bn_gd_w;
- item.samecity_order_amount=th.data.bn_samecity_order_amount;
+ if (item.exp_type == 2) {
+ item.lon = th.data.lon ? th.data.lon : 0;
+ item.lat = th.data.lat ? th.data.lat : 0;
+ item.goods_weight = th.data.bn_gd_w;
+ item.samecity_order_amount = th.data.bn_samecity_order_amount;
}
//--判断有没有优惠活动--
- if (th.data.formData.order_prom_amount > 0) {
- var order_prom_list = {};
- order_prom_list.order_prom_id = th.data.formData.order_prom_id;
- order_prom_list.order_prom_amount = th.data.formData.order_prom_amount;
- item.order_prom_list = order_prom_list;
- }
+ if (th.data.formData.order_prom_amount > 0) {
+ var order_prom_list = {};
+ order_prom_list.order_prom_id = th.data.formData.order_prom_id;
+ order_prom_list.order_prom_amount = th.data.formData.order_prom_amount;
+ item.order_prom_list = order_prom_list;
+ }
- //如果不是阶梯团,或者是普通购买,
- if ((th.data.kt_type != 3 || th.data.bn_goods.is_normal == 1)) {
- item['shipping_code'] = th.data.bn_exp_type == 1 ? 0 : th.data.wu_arr[th.data.index].code;
- item['shipping_name'] = th.data.bn_exp_type == 1 ? '' : th.data.wu_arr[th.data.index].name;
- }
+ //如果不是阶梯团,或者是普通购买,
+ if ((th.data.kt_type != 3 || th.data.bn_goods.is_normal == 1)) {
+ item['shipping_code'] = th.data.bn_exp_type == 1 ? 0 : th.data.wu_arr[th.data.index].code;
+ item['shipping_name'] = th.data.bn_exp_type == 1 ? '' : th.data.wu_arr[th.data.index].name;
+ }
//组装优惠券的钱
@@ -1524,13 +1531,13 @@ Page({
'prom_id': th.data.bn_goods.prom_id, //促销活动id
};
- if(th.data.bn_goods.discount_field){
- goods.discount_field=th.data.bn_goods.discount_field;
+ if (th.data.bn_goods.discount_field) {
+ goods.discount_field = th.data.bn_goods.discount_field;
}
//如果有参与非实收的订单促销,那么就相当于是普通购买
- if(th.data.can_use_ord_prom[th.data.bn_pick]){
- goods.is_integral_normal=1;
+ if (th.data.can_use_ord_prom[th.data.bn_pick]) {
+ goods.is_integral_normal = 1;
//如果是指定门店,就要判断
if (th.data.bn_goods.pick_group_ids) {
@@ -1547,13 +1554,13 @@ Page({
}
}
- if (th.data.sales_rules==1 && th.data.bn_goods.store_count= 2 && !th.data.bn_goods.whsle_id && !getApp().is_virtual(th.data.bn_goods)) {
@@ -1594,9 +1601,9 @@ Page({
}
})
}
- if(gg.groupchat_id && gg.groupchat_id!='undefined'){
- goods.groupchat_id=gg.groupchat_id
- item.groupchat_ids=gg.groupchat_id
+ if (gg.groupchat_id && gg.groupchat_id != 'undefined') {
+ goods.groupchat_id = gg.groupchat_id
+ item.groupchat_ids = gg.groupchat_id
}
//--商品的房间号--
@@ -1614,7 +1621,7 @@ Page({
if (pdata.length == 0) return;
//如果有使用预存,要处理
- if (th.data.formData && th.data.formData.prestore * 1 > 0 && th.data.bn_goods.yck_off==2) {
+ if (th.data.formData && th.data.formData.prestore * 1 > 0 && th.data.bn_goods.yck_off == 2) {
let formData = th.data.formData
let pre_json = formData.pre_json
let all_yck_arr = formData.all_yck_arr
@@ -1672,7 +1679,7 @@ Page({
// order_sn: data.data,
// type:1,
// }, 1);
- th.data.ok_order_sn=data.data;
+ th.data.ok_order_sn = data.data;
util_pay.pay(data.data, function () {
setTimeout(function () {
wx.reLaunch({
@@ -1807,7 +1814,7 @@ Page({
setexptype_w: function (t) {
var th = this;
var ty = t.currentTarget.dataset.t, txt = t.currentTarget.dataset.txt;
- th.setData({ [txt]: ty,same_ok:1,sameCityExp_off:0, sameCityExp_info:'', });
+ th.setData({ [txt]: ty, same_ok: 1, sameCityExp_off: 0, sameCityExp_info: '', });
var iszt = 1;
if (ty == 0) {
th.setData({ is_all_zt: 0 });
@@ -1829,11 +1836,26 @@ Page({
setexptype: function (t) {
var th = this;
var ty = t.currentTarget.dataset.t;
- th.setData({ bn_exp_type: ty, same_ok:1, sameCityExp_off:0, sameCityExp_info:'',});
+ th.setData({ bn_exp_type: ty, same_ok: 1, sameCityExp_off: 0, sameCityExp_info: '', first_entry: 0});
//当物流为空的时候。
if (ty == 0 && th.data.wu_arr == null) {
return th.get_wuliu(th.calculatePrice2());
}
+
+ if (ty !=0 && th.data.using_quan[th.data.bn_pick].isby==1) {
+ let using_quan={
+ [th.data.bn_pick]:{
+ is_nouse_red:1
+ }
+ }
+ // using_quan[th.data.bn_pick].is_nouse_red=1
+ // let txt=`using_quan.${th.data.bn_pick}.is_nouse_red`
+ th.setData({
+ using_quan:using_quan
+ })
+ }
+
+
th.calculatePrice2()
console.log('setexptype');
},
@@ -1890,7 +1912,7 @@ Page({
var uii = setInterval(function () {
if (th.data.wu_arr) {
clearInterval(uii);
- if(th.data.is_default_logistics) return false;
+ if (th.data.is_default_logistics) return false;
for (var k = 0; k < th.data.wu_arr.length; k++) {
var item = th.data.wu_arr[k];
if (def_exp_code == item.code) {
@@ -1953,7 +1975,7 @@ Page({
//一件代发商品不使用优惠券
if (good.whsle_id) return false;
- if(!th.data.check_quan_ware_list) return false;
+ if (!th.data.check_quan_ware_list) return false;
//--如果商家后台没有限制使用优惠券,同时商品的优惠活动没有限制使用优惠券--
if (th.data.is_close_quan != 1 && th.data.bn_goods.is_xz_yh != 1 && th.data.check_quan_ware_list) {
@@ -1977,7 +1999,7 @@ Page({
quanlist = res.data.data.pageData;
if (quanlist) {
quanlist = th.check_is_frozenQuan(quanlist, frozenQuan);
- th.setData({ selected_quan_list: quanlist })
+ th.setData({ selected_quan_list: quanlist, def_coupon2: quanlist })
}
}
}
@@ -2065,6 +2087,100 @@ Page({
},
/*--点击选择券--*/
+ sele_quan_item_befor: function (e) {
+ console.error('选择券-----');
+ var ind = 0;
+ 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 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;
+
+
+
+ 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 });
+ return true
+ },
+ /*--点击选择券--*/
sele_quan_item: function (e) {
var ind = e.currentTarget.dataset.ind;
@@ -2171,6 +2287,81 @@ Page({
},
/*----- 点击选择包邮券 -----*/
+ sele_quan_item_by_befor: 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: th.is_coupon });
+ // return;
+ // }
+
+ var pickid = th.data.selected_quan_pick; //现在选择的是哪一个门店
+ var ind = 0;
+ //--如果是立即购买的部分--
+ 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 });
+ },
+ /*----- 点击选择包邮券 -----*/
sele_quan_item_by: function (e) {
var no_use = e.currentTarget.dataset.no;
//立即购买的包邮券
@@ -2247,6 +2438,75 @@ Page({
},
//--确认使用券---
+ confirm_quan_befor: 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;
+ }
+ }
+ },
+ //--确认使用券---
confirm_quan: function () {
var using_quan = this.data.using_quan; //正在使用中的券列表
var pickid = this.data.selected_quan_pick; //选中的门店ID
@@ -2315,9 +2575,99 @@ Page({
}
}
},
+ //默认选择优惠券
+ def_coupon_fn() {
+ // setTimeout(() => {
+ // this.def_coupon_fn_aft()
+ // }, 100);
+ try {
+ setTimeout(() => {
+ this.def_coupon_fn_aft()
+ }, 1000);
+ } catch (error) { }
+
+ },
+ //默认选择优惠券
+ def_coupon_fn_aft() {
+ console.error('进入默认优惠券选择');
+ let th = this;
+ let first_entry = th.data.first_entry;
+ console.error(first_entry);
+ if (first_entry > 0) {
+ return
+ }
+ first_entry += 1;
+ th.setData({
+ first_entry
+ })
+ let length1 = th.data.def_coupon1 ? th.data.def_coupon1.length : 0
+ let length2 = th.data.def_coupon2 ? th.data.def_coupon2.length : 0
+ let length3 = th.data.def_coupon3 ? th.data.def_coupon3.length : 0
+ let length4 = th.data.def_coupon4 ? th.data.def_coupon4.length : 0
+ let length = length1 + length2
+ if (th.data.bn_exp_type==0) {
+ length+= length3 + length4
+ }
+ console.error(length);
+ if (length != 1) {
+ return
+ }
+ if (length1 == 1) {
+ console.error('优惠券1');
+ let first_entry = th.data.first_entry;
+ let quan_list = th.data.def_coupon1
+ if (quan_list && quan_list.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ th.setData({
+ sele_cart_ind: 0,
+ sele_exp_type: th.data.cartlist[0].exp_type,
+ selected_quan_pick: th.data.cartlist[0].pickup_id,
+ selected_quan_list: th.data.cartlist[0].quan_list,
+ // first_entry
+ })
+ let quan_off = th.sele_quan_item_befor();
+ if (quan_off) {
+ th.confirm_quan_befor()
+ }
+ }
+ }
+ if (length2 == 1) {
+ console.error('优惠券2');
+ let first_entry = th.data.first_entry;
+ let quanlist = th.data.def_coupon2
+ if (quanlist && quanlist.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ th.setData({
+ selected_quan_pick: th.data.bn_pick,
+ // first_entry
+ })
+ let quan_off = th.sele_quan_item_befor();
+ if (quan_off) {
+ th.confirm_quan_befor()
+ }
+
+ }
+ }
+ if (length3 == 1 && th.data.bn_exp_type == 0) {
+ console.error('优惠券3');
+ let first_entry = th.data.first_entry;
+ let quanlist = th.data.def_coupon3
+ if (quanlist && quanlist.length == 1 && first_entry == 1) {
+ // first_entry += 1;
+ th.setData({
+ selected_quan_pick: th.data.bn_pick,
+ // first_entry
+ })
+
+ th.sele_quan_item_by_befor();
+ th.confirm_quan_befor()
+
+ }
+ }
+ },
//----把券插入之后的操作,同时还要重新计算价格----
- insert_into_using_quan: async function (item, using_quan, pickid, isby) {
+ insert_into_using_quan: async function (item, using_quan, pickid, isby, showToast = true) {
var th = this;
@@ -2340,44 +2690,44 @@ Page({
if (th.data.is_b_now == 1) {
th.calculatePrice2(function () {
- if (old_quan) using_quan[pickid] = old_quan;
- else using_quan[pickid] = null;
- th.setData({ using_quan: using_quan, submit: 0 });
- wx.showToast({
- title: "不能使用优惠券,同城起送价不足",
- icon: 'none',
- duration: 2000
- })
+ // if (old_quan) using_quan[pickid] = old_quan;
+ // else using_quan[pickid] = null;
+ // th.setData({ using_quan: using_quan, submit: 0 });
+ // wx.showToast({
+ // title: "不能使用优惠券,同城起送价不足",
+ // icon: 'none',
+ // duration: 2000
+ // })
});
} else {
th.calculatePrice(function () {
- if (old_quan) using_quan[pickid] = old_quan;
- else using_quan[pickid] = null;
- th.setData({ using_quan: using_quan, submit: 0 });
- wx.showToast({
- title: "不能使用优惠券,同城起送价不足",
- icon: 'none',
- duration: 2000
- })
+ // if (old_quan) using_quan[pickid] = old_quan;
+ // else using_quan[pickid] = null;
+ // th.setData({ using_quan: using_quan, submit: 0 });
+ // wx.showToast({
+ // title: "不能使用优惠券,同城起送价不足",
+ // icon: 'none',
+ // duration: 2000
+ // })
});
}
th.setData({ open_quan: 0 });
},
//-- 获取订单促销的判断结构 --
- set_by_now_ord_prom(item){
- let pickid=this.data.bn_pick;
- let order_prom_map_ck= this.data.order_prom_map_ck;
- order_prom_map_ck[pickid]={
- shop_price_all:0, //手店价的累计
- market_price_all:0, //市场价的累计
- goods_price_all:0, //实收价的累计
- no_ord_price:0, //要累计上不参与订单促销的金额
- goodsList:[],
- }
-
- let pk_ord_map=order_prom_map_ck[pickid];
+ set_by_now_ord_prom(item) {
+ let pickid = this.data.bn_pick;
+ let order_prom_map_ck = this.data.order_prom_map_ck;
+ order_prom_map_ck[pickid] = {
+ shop_price_all: 0, //手店价的累计
+ market_price_all: 0, //市场价的累计
+ goods_price_all: 0, //实收价的累计
+ no_ord_price: 0, //要累计上不参与订单促销的金额
+ goodsList: [],
+ }
+
+ let pk_ord_map = order_prom_map_ck[pickid];
pk_ord_map.shop_price_all += item.shop_price_y * item.buynum;
pk_ord_map.market_price_all += item.market_price * item.buynum;
@@ -2387,7 +2737,7 @@ Page({
async get_cur_ord_prom(pickid) {
let ord_prom = null;
let order_prom_map_ck = this.data.order_prom_map_ck[pickid];
- if(!order_prom_map_ck) return null;
+ if (!order_prom_map_ck) return null;
//获取当前进行中的优惠促销
await getApp().request.promiseGet("/api/weshop/promorder/getPromOrder", {
@@ -2404,25 +2754,25 @@ Page({
if (!ord_prom) return null;
//用于计算订单促销的金额
- let calculate_price=0;
+ let calculate_price = 0;
- let txt1='show_ord_prom['+pickid+']';
+ let txt1 = 'show_ord_prom[' + pickid + ']';
//-- 此时判断活动的金额满足与否 --
switch (ord_prom.discount_field) {
- //实收价的时候
+ //实收价的时候
case 0:
//要先还原
this.setData({
[txt1]: 0
});
- if (ord_prom.money > order_prom_map_ck.goods_price_all){
+ if (ord_prom.money > order_prom_map_ck.goods_price_all) {
return null;
}
break;
- //手店价的时候
+ //手店价的时候
case 1:
- if (ord_prom.money > order_prom_map_ck.shop_price_all){
+ if (ord_prom.money > order_prom_map_ck.shop_price_all) {
//要先还原
this.setData({
[txt1]: 0
@@ -2434,9 +2784,9 @@ Page({
[txt1]: 1
});
break;
- //市场价的时候
+ //市场价的时候
case 2:
- if (ord_prom.money > order_prom_map_ck.market_price_all){
+ if (ord_prom.money > order_prom_map_ck.market_price_all) {
//要先还原
this.setData({
[txt1]: 0
@@ -2450,63 +2800,63 @@ Page({
break;
}
//如果订单促销是不参与订单促销的,那么就直接返回null(订单促销不是实收价的时候)
- if(ord_prom.discount_field>0 && !this.data.can_use_ord_prom[pickid]){
+ if (ord_prom.discount_field > 0 && !this.data.can_use_ord_prom[pickid]) {
return null;
}
return ord_prom;
},
//立即购买的时候,点击订单促销的参与
- set_can_use_ord_prom_now:function (e){
+ set_can_use_ord_prom_now: function (e) {
- if(this.data.submit) return false;
- this.setData({ submit: 1,same_ok:1 });
+ if (this.data.submit) return false;
+ this.setData({ submit: 1, same_ok: 1 });
- let pickid=this.data.bn_pick;
+ let pickid = this.data.bn_pick;
let txt = 'can_use_ord_prom[' + pickid + ']';
let can_use = this.data.can_use_ord_prom[pickid] ? this.data.can_use_ord_prom[pickid] : 0;
this.setData({
[txt]: !can_use
})
- let th=this;
- let good=th.data.bn_goods;
+ let th = this;
+ let good = th.data.bn_goods;
//如果有要参与订单促销的按钮点击后,要修改商品的价格
- if(th.data.can_use_ord_prom[pickid]){
- let discount_field=th.data.show_ord_prom[pickid];
- switch (discount_field){
+ if (th.data.can_use_ord_prom[pickid]) {
+ let discount_field = th.data.show_ord_prom[pickid];
+ switch (discount_field) {
case 1:
- good.shop_price=good.shop_price_y;
+ good.shop_price = good.shop_price_y;
break;
case 2:
- good.shop_price=good.market_price;
+ good.shop_price = good.market_price;
break;
}
//-- 转成普通商品 ---
- good.prom_type=0;
- good.prom_id=0;
- good.discount_field=discount_field;
+ good.prom_type = 0;
+ good.prom_id = 0;
+ good.discount_field = discount_field;
//把优惠券的使用还原
th.setData({
selected_quan_list: null,
using_quan: {}
})
- }else{
- good=ut.deep_cp(th.data.old_bn_goods);
+ } else {
+ good = ut.deep_cp(th.data.old_bn_goods);
}
th.setData({
- bn_goods:good
+ bn_goods: good
})
wx.showLoading({
title: "处理中.",
- mark:true
+ mark: true
})
th.calculatePrice2()
- if(!th.data.can_use_ord_prom[pickid]){
+ if (!th.data.can_use_ord_prom[pickid]) {
th.get_buy_now_quan();
}
},
@@ -2573,7 +2923,7 @@ Page({
func(isok);
},
//去凑单
- qcd(){
+ qcd() {
getApp().goto("/pages/index/index/index");
},
diff --git a/packageE/pages/cart/cart2_pt/cart2_pt.wxml b/packageE/pages/cart/cart2_pt/cart2_pt.wxml
index ddc72c9..aca4c59 100644
--- a/packageE/pages/cart/cart2_pt/cart2_pt.wxml
+++ b/packageE/pages/cart/cart2_pt/cart2_pt.wxml
@@ -2,7 +2,7 @@