Browse Source

自提

master
jiazhipeng 5 months ago
parent
commit
c8b262ec4a
  1. 3
      pages/order/postOrder/index.js
  2. 11
      project.private.config.json
  3. 76
      subPackages/feiyiNew/index.js
  4. 30
      subPackages/feiyiNew/index.wxml
  5. 56
      subPackages/feiyiNew/index.wxss
  6. 2
      subPackages/techanNew/index.wxml
  7. 4
      utils/https.js
  8. 12
      utils/util.js

3
pages/order/postOrder/index.js

@ -103,6 +103,9 @@ Page({
this.couponCom = this.selectAllComponents("#coupon")[0];
}
this.getPostFee()
this.changePrice()
},
changeUserPost (e) {

11
project.private.config.json

@ -6,12 +6,19 @@
"condition": {
"miniprogram": {
"list": [
{
"name": "pages/info/postProductInfo/index",
"pathName": "pages/info/postProductInfo/index",
"query": "id=464888",
"scene": null,
"launchMode": "default"
},
{
"name": "pages/order/orderList/index",
"pathName": "pages/order/orderList/index",
"query": "flag=mix",
"scene": null,
"launchMode": "default"
"launchMode": "default",
"scene": null
},
{
"name": "subPackages/techanNew/selfPickPoint/index",

76
subPackages/feiyiNew/index.js

@ -44,7 +44,9 @@ Page({
seachFlag:false, //搜索模式
totalPrice:0, //获取购物车总价
name:'非遗专卖',
nowAddListId:[]
nowAddListId:[],
user_type: null,
},
/**
@ -69,10 +71,10 @@ Page({
delAll() {
let ids = []
this.data.gwcList.forEach(item => {
ids.push(item.sku_id)
ids.push(item.id)
})
commonApi.user_post("cart_within/del_sku", {
sku_id: ids+'',
id: ids+'',
type:'2'
}).then(res => {
if (res.code == 1) {
@ -92,10 +94,11 @@ Page({
del(e) {
let item = e.currentTarget.dataset.item
let gwcList = this.data.gwcList
let valueNum = e.currentTarget.dataset.value
commonApi.user_post("cart_within/update_sku", {
num:item.num-1,
sku_id: item.sku_id,
type:'2'
num:item.num + valueNum,
id: item.id,
type:'1'
}).then(res => {
if (res.code == 1) {
// this.getCount()
@ -117,6 +120,9 @@ Page({
if (item.selected ==1) {
totalPrice += item.num*item.sku.price
}
if (item.delivery_method === null) {
item.delivery_method = item.sku.sku_model.use_type == 1?1:0
}
})
}
let status = res.data.every(el => el.selected === 1)
@ -132,6 +138,13 @@ Page({
},
// 添加产品到购物车
addCart: function (e) {
if (![0,1].includes(this.data.user_type)) {
wx.showToast({
title: "请选择配送方式",
icon:"none"
})
return
}
let item = e.currentTarget.dataset.item
app.globalData.postProduct = []
app.globalData.list = []
@ -144,7 +157,8 @@ Page({
commonApi.user_post("cart_within/add_sku", {
sku_id: this.data.showPopup ? item.sku.id :this.data.info.sku[this.data.skuIndex].id,
num: this.data.producNum,
type:"2"
type:"2",
delivery_method: this.data.user_type
}).then(res => {
if (res.code == 1) {
let sku_id = this.data.showPopup ? item.sku.id :this.data.info.sku[this.data.skuIndex].id
@ -187,6 +201,9 @@ Page({
if (element.selected == 1) {
totalPrice += Number(element.num*element.sku.price)
}
if (element.delivery_method === null) {
element.delivery_method = element.sku.sku_model.use_type == 1?1:0
}
})
let status = res.data.every(el => el.selected === 1)
this.setData({
@ -252,7 +269,7 @@ Page({
if (item.product.type == 'post') {
product.push({
product: item.product,
sku: item.sku,
sku: {...item.sku, use_type: item.delivery_method||0},
productNum: item.num
})
} else {
@ -271,21 +288,27 @@ Page({
// })
return;
}
if (product.length > 0 && product1.length > 0) {
this.setData({
flag: 'mix',
isCar: 'multiple'
let repeatSku = product.find(x=>product.filter(v=>v.sku.id == x.sku.id).length>1)
if(repeatSku) {
let str = `${repeatSku.product.title}-${repeatSku.sku.sku_name}邮寄和自提只能选择一种`
wx.showModal({
content: str,
showCancel: false,
complete: (res) => {}
})
return
}
let useType = product[0].sku.use_type
let flag = this.data.flag, isCar = "single";
if (product.some(x=>x.sku.use_type!=useType)) {
flag = "mix"
isCar = "multiple"
}
if (product1.length > 1) {
this.setData({
isCar: 'multiple'
})
} else {
this.setData({
isCar: 'single'
flag: flag,
isCar: isCar
})
}
console.log(product1);
app.globalData.postProduct = product;
if (app.globalData.list) {
@ -427,6 +450,9 @@ Page({
if(item.selected == 1) {
totalPrice += item.num*item.sku.price
}
if (item.delivery_method === null) {
item.delivery_method = item.sku.sku_model.use_type == 1?1:0
}
})
}
this.setData({
@ -581,6 +607,9 @@ Page({
},
// 添加产品弹窗 1.首先获取到该产品下的规格
addBuyCart(e) {
this.setData({
user_type: null
})
let item = e.currentTarget.dataset.item
console.log(item);
commonApi._post("product/get_product_detail", {
@ -637,9 +666,16 @@ Page({
selectSku: function (e) {
let index = e.currentTarget.dataset.index;
this.setData({
skuIndex: index
skuIndex: index,
user_type: null,
})
},
changeSelectSkuPost: function(e) {
let value = e.currentTarget.dataset.value;
this.setData({
user_type: value,
})
},
// 关闭弹窗
hideSku: function () {
this.setData({

30
subPackages/feiyiNew/index.wxml

@ -197,6 +197,25 @@
<view class="number">{{producNum}}</view>
<view class="iconfont icon-add-select" bindtap="add"></view>
</view>
<view class="delivery-method" wx:if="{{info.is_package!=1}}">
<view class="delivery-title">配送方式</view>
<view class="flex" style="display: flex;">
<view class="flex-center" wx:if="{{info.sku[skuIndex].use_type!=1}}" bind:tap="changeSelectSkuPost" data-value="{{0}}">
<view class="select-cycle" wx:if="{{user_type!==0}}"></view>
<view class="select-cycle selected" wx:else>
<image src="https://static.ticket.sz-trip.com/uploads/20240715/a961604bc708670cbdc76d1580eb3f3c.png"></image>
</view>
<view class="method-str">邮寄</view>
</view>
<view class="flex-center" wx:if="{{info.sku[skuIndex].use_type!=0}}" bind:tap="changeSelectSkuPost" data-value="{{1}}">
<view class="select-cycle" wx:if="{{user_type!==1}}"></view>
<view class="select-cycle selected" wx:else="">
<image src="https://static.ticket.sz-trip.com/uploads/20240715/a961604bc708670cbdc76d1580eb3f3c.png"></image>
</view>
<view class="method-str">自提</view>
</view>
</view>
</view>
<view style="height:138rpx"></view>
<view class="btn-box">
<!-- <view class="mask-btn" bindtap="addCart" wx:if="{{info.sku[skuIndex].flag=='on'}}">{{skuFlag=='cart'?'加入购物车':'立即购买'}}
@ -209,7 +228,7 @@
<!-- 购物车的弹窗 -->
<view class="mask" wx:if="{{showPopup}}">
<view bindtap="openPopup" class="mask-bg"></view>
<view class="mask-content" style="padding: 40rpx 0 180rpx;min-height: 600rpx;">
<view class="mask-content" style="padding: 40rpx 0 180rpx;height: 900rpx;">
<view style="margin: 0 26.67rpx;">
<!-- 顶部操作按钮 -->
<view class="flex" style="margin-bottom: 56.67rpx;">
@ -228,7 +247,10 @@
<image lazy-load wx:if="{{item.selected ==1}}" style="width: 40rpx;height: 40rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/a961604bc708670cbdc76d1580eb3f3c.png" mode="" />
<view wx:else style="width: 40rpx;height: 40rpx;border-radius: 50%;border: 1px solid #999999;"></view>
</view>
<image lazy-load style="width:179rpx;height: 179rpx;border-radius: 13rpx;flex-shrink: 0;margin-right: 26rpx;" src="{{item.sku.headimg}}" mode="" />
<view style="position: relative;height: 179rpx;border-radius: 13rpx;flex-shrink: 0;margin-right: 26rpx;">
<image lazy-load style="width:179rpx;height: 179rpx;border-radius: 13rpx;" src="{{item.sku.headimg}}" mode="" />
<view class="use-type">{{item.delivery_method==1?"自提":"邮寄"}}</view>
</view>
<view class="main">
<view>
<view class="title textOver">{{item.product.title}}</view>
@ -237,9 +259,9 @@
<view class="main-bottom">
<view class="price">{{item.sku.price/100}}</view>
<view class="num-box">
<image lazy-load class="reduce" catchtap="del" data-item="{{item}}" src="https://static.ticket.sz-trip.com/uploads/20240715/054627e5d3864a9a4a8b397cae47754e.png" mode="" />
<image lazy-load class="reduce" catchtap="del" data-item="{{item}}" data-value="{{-1}}" src="https://static.ticket.sz-trip.com/uploads/20240715/054627e5d3864a9a4a8b397cae47754e.png" mode="" />
<view style="margin: 0 25.33rpx;">{{item.num}}</view>
<image lazy-load class="grow" catchtap="addCart" data-item="{{item}}" src="https://static.ticket.sz-trip.com/uploads/20240715/3ad59eac0088d47ff4bc2fec6ffd8f56.png" mode="" />
<image lazy-load class="grow" catchtap="del" data-item="{{item}}" data-value="{{1}}" src="https://static.ticket.sz-trip.com/uploads/20240715/3ad59eac0088d47ff4bc2fec6ffd8f56.png" mode="" />
</view>
</view>
</view>

56
subPackages/feiyiNew/index.wxss

@ -440,7 +440,7 @@ page {
display: flex;
font-size: 29rpx;
color: #333;
margin: 0 40rpx;
margin: 0 30rpx;
text-align: center;
flex-wrap: wrap;
margin-bottom: 20rpx;
@ -777,3 +777,57 @@ page {
.phcolor {
color: #ccc;
}
.delivery-method{
font-weight: 400;
font-size: 29rpx;
color: #1E1E1E;
display: flex;
justify-content: space-between;
align-items: center;
padding: 0 40rpx 40rpx;
}
.delivery-method .select-cycle{
width: 32rpx;
height: 32rpx;
border-radius: 50%;
border: 1px solid #999999;
overflow: hidden;
flex-shrink: 0;
}
.delivery-method .select-cycle image{
width: 100%;
height: 100%;
}
.delivery-method .select-cycle.selected {
border: none;
}
.delivery-method .select-cycle.selected image{
width: 32rpx;
height: 32rpx;
border-radius: 50%;
}
.delivery-method .method-str{
padding-left: 10rpx;
flex-shrink: 0;
}
.delivery-method .flex-center{
width: 150rpx;
justify-content: flex-end;
display: flex;
align-items: center;
}
.use-type{
position: absolute;
left: 0;
bottom: 0;
width: 100%;
border-radius: 0rpx 0rpx 7rpx 7rpx;
height: 33rpx;
background: rgba(0,0,0,0.3);
font-weight: 400;
font-size: 24rpx;
color: #FFFFFF;
text-align: center;
line-height: 33rpx;
}

2
subPackages/techanNew/index.wxml

@ -210,7 +210,7 @@
<!-- 购物车的弹窗 -->
<view class="mask" wx:if="{{showPopup}}">
<view bindtap="openPopup" class="mask-bg"></view>
<view class="mask-content" style="padding: 40rpx 0 180rpx;min-height: 600rpx;">
<view class="mask-content" style="padding: 40rpx 0 180rpx;height: 900rpx;">
<view style="margin: 0 26.67rpx;">
<!-- 顶部操作按钮 -->
<view class="flex" style="margin-bottom: 56.67rpx;">

4
utils/https.js

@ -1,8 +1,8 @@
var app = getApp();
import util from "../utils/util"
// import userApi from "../utils/https/user.js";
const baseUrl = "https://test.api.cloud.sz-trip.com/api/";
// let baseUrl = "https://api.cloud.sz-trip.com/api/";
// const baseUrl = "https://test.api.cloud.sz-trip.com/api/";
let baseUrl = "https://api.cloud.sz-trip.com/api/";
const env = wx.getAccountInfoSync().miniProgram.envVersion
if (env == 'develop1') {
baseUrl = "https://test.api.cloud.sz-trip.com/api/"

12
utils/util.js

@ -405,15 +405,15 @@ const gotoOrder = function(item){
// 数量超过两个 购物车下单 跳H5 (小程序二维码没分开)
if (item.order_product_list.length>1) {
// wx.navigateTo({
// url: "/pages/pbService/web/index?weburl=" + encodeURIComponent("https://m.cloud.sz-trip.com/TicketCartOrderDetail?order_id="+item.order_id),
// })
// return;
wx.navigateTo({
url: "/pages/pbService/web/index?weburl=" + encodeURIComponent("https://test.m.cloud.sz-trip.com/TicketCartOrderDetail?order_id="+item.order_id),
url: "/pages/pbService/web/index?weburl=" + encodeURIComponent("https://m.cloud.sz-trip.com/TicketCartOrderDetail?order_id="+item.order_id),
})
return;
// wx.navigateTo({
// url: "/pages/pbService/web/index?weburl=" + encodeURIComponent("https://test.m.cloud.sz-trip.com/TicketCartOrderDetail?order_id="+item.order_id),
// })
// return;
}
if(item.order_product_list[0].product_model=='ticket'){
wx.navigateTo({

Loading…
Cancel
Save