wangfukang 7 days ago
parent
commit
a1bbc6eae1
  1. 35
      package1/address/addressList.vue
  2. 45
      package1/buyFood/buyFood.vue
  3. 25
      package1/components/delivery-time-op/delivery-time-op.vue
  4. 13
      package1/order/orderDetail.vue
  5. 9
      package1/runErrand/runErrand.vue
  6. 5
      package1/tabbar/fishRelease.vue

35
package1/address/addressList.vue

@ -39,9 +39,10 @@
</view>
<!-- 新增地址弹出层 -->
<uni-popup ref="addBookPopup" background-color="#fff">
<view class="book-popup-content">
<view style="height: 80rpx;line-height: 80rpx;font-size: 36rpx;font-weight: 700;text-align: center;">
<view class="book-popup-content" @tap.stop @touchmove.stop>
<view class="book-popup-title">
{{addressForm.id ? '编辑地址' : '填写地址'}}
<uni-icons type="closeempty" size="24" color="#333" class="book-popup-close" @tap="closeAddBookPopup"></uni-icons>
</view>
<view class="area-select" @tap="openAreaPopup">
<text v-if="areaTitleInput">{{areaTitleInput}}</text>
@ -70,7 +71,7 @@
</view>
</uni-popup>
<uni-popup ref="areaPopup" type="center" background-color="#fff">
<view class="area-popup-content">
<view class="area-popup-content" @tap.stop @touchmove.stop.prevent>
<view class="area-popup-title">
<text>选择楼座区域</text>
<uni-icons type="closeempty" size="22" color="#333" @tap="closeAreaPopup"></uni-icons>
@ -86,7 +87,7 @@
:cursor-spacing="160"
/>
</view>
<scroll-view scroll-y class="area-result-list">
<scroll-view scroll-y class="area-result-list" @touchmove.stop>
<view v-if="filteredAreaTitleList.length === 0" class="area-result-empty">
未找到匹配的楼座
</view>
@ -264,16 +265,19 @@
this.$refs.addBookPopup.open('bottom');
},
openAreaPopup() {
this.areaSearchInput = this.areaTitleInput;
this.areaSearchInput = '';
this.getAreaList();
this.$refs.areaPopup.open();
},
closeAreaPopup() {
this.$refs.areaPopup.close();
},
closeAddBookPopup() {
this.$refs.addBookPopup.close();
},
selectAreaTitle(title) {
this.areaTitleInput = title;
this.areaSearchInput = title;
this.areaSearchInput = '';
this.closeAreaPopup();
},
onFloorInput(e) {
@ -464,6 +468,25 @@
padding-top: 40rpx;
}
.book-popup-title {
height: 80rpx;
line-height: 80rpx;
font-size: 36rpx;
font-weight: 700;
text-align: center;
position: relative;
}
.book-popup-close {
position: absolute;
right: 0;
top: 0;
width: 80rpx;
height: 80rpx;
line-height: 80rpx;
text-align: center;
}
.area-select {
margin-bottom: 20rpx;
display: flex;

45
package1/buyFood/buyFood.vue

@ -1,6 +1,8 @@
<template>
<!-- 代买饭页 -->
<view class="page1" :class="{'store-group-checkout': isStoreGroupOrder}">
<page-meta :page-style="addressBookVisible ? 'overflow: hidden;' : 'overflow: visible;'"></page-meta>
<view class="page1" :class="{'store-group-checkout': isStoreGroupOrder, 'page1--locked': addressBookVisible}">
<view class="checkout-fixed-header" :class="{'checkout-fixed-header--store': isStoreGroupOrder}">
<view class="title">
<view class="title-sreach">
<view class="back-btn" @tap="back" :style="{'top': menuButtonInfo.top +'px'}">
@ -47,6 +49,8 @@
</view>
</view>
</view>
</view>
<view class="checkout-header-holder" :class="{'checkout-header-holder--store': isStoreGroupOrder}"></view>
<view class="ziqu-box" v-if="isPaotui==false">
<view class="ziqu-xuanfu">
{{isStoreGroupOrder ? '到店信息' : '取餐信息'}}
@ -346,7 +350,7 @@
</view>
<!-- 地址簿弹出层 -->
<uni-popup ref="bookPopup" background-color="#fff" @change="onAddressPopupChange">
<view class="book-popup-content">
<view class="book-popup-content" @tap.stop>
<address-list v-if="addressBookVisible" @selectAddress="handleSelectAddress" @syncAddress="handleSyncAddress"
@close="closeAddressBook"></address-list>
</view>
@ -603,7 +607,8 @@
freeOrderEffectVisible: false,
freeOrderAmount: '0.00',
navigatingFromPayPopup: false,
isNavigatingToWorkerList: false
isNavigatingToWorkerList: false,
isSeckillOrder: false
}
},
components: {
@ -641,6 +646,7 @@
if (option.packageFee) {
this.totalPackageFee = parseFloat(option.packageFee) || 0;
}
this.isSeckillOrder = option.seckillOrder == 1 || option.seckillOrder === '1';
if (this.isStoreGroupOrder) {
this.isPaotui = false;
this.nowMake = false;
@ -1386,6 +1392,9 @@
if(this.isStoreGroupOrder){
payload.otherOrder = 2
}
if(this.isSeckillOrder){
payload.seckillOrder = 1
}
payload.regionId = JSON.parse(uni.getStorageSync('area')).id
this.tui.request("/mall/order/create", "POST", payload, false, false).then(res => {
uni.hideLoading();
@ -1526,11 +1535,41 @@
#F5F8F5;
}
.page1--locked {
height: 100vh;
overflow: hidden;
}
.checkout-fixed-header {
position: fixed;
top: 0;
left: 0;
right: 0;
height: 344rpx;
z-index: 100;
overflow: hidden;
background: #F5F8F5;
}
.checkout-fixed-header--store {
height: 360rpx;
background: #fff0df;
}
.title {
background: url('https://jewel-shop.oss-cn-beijing.aliyuncs.com/8bc15960c2dc40268e295d6dd23aecce.png') no-repeat;
width: 100%;
height: 340rpx;
background-size: 100% 100%;
position: relative;
}
.checkout-header-holder {
height: 344rpx;
}
.checkout-header-holder--store {
height: 360rpx;
}
.title-sreach {

25
package1/components/delivery-time-op/delivery-time-op.vue

@ -10,7 +10,10 @@
:class="{ add: model }"
@tap.stop
>
<view class="title-model">{{ title }} <text @tap="close">x</text></view>
<view class="title-model">
{{ title }}
<text class="title-close" @tap.stop="close">×</text>
</view>
<view class="cont" :style="{ height: barHidth - 80 + 'rpx' }">
<!-- -->
<scroll-view class="day" :scroll-y="true">
@ -208,15 +211,21 @@ export default {
border-bottom: 2rpx solid #eee;
}
.title-model > text {
.title-close {
position: absolute;
right: 14rpx;
width: 46rpx;
height: 46rpx;
line-height: 38rpx;
background-color: #ccc;
color: #fff;
top: 50%;
right: 24rpx;
display: flex;
align-items: center;
justify-content: center;
width: 48rpx;
height: 48rpx;
background-color: #f2f5f3;
border-radius: 50%;
color: #9aa5a0;
font-size: 32rpx;
line-height: 1;
transform: translateY(-50%);
}
.cont {

13
package1/order/orderDetail.vue

@ -230,10 +230,10 @@
@tap="makeMeal" style="background: rgba(0, 35, 28, 1);color:rgba(166, 255, 234, 1);">
立即备餐
</view>
<view class="btn" style="width: 40%;" v-if="orderDetail.status == 2 && orderDetail.shopDelivery != 1" @tap="openAddFeePopup">
<view class="btn" :class="{'btn-full': isErrandDeliveryOrder(orderDetail)}" v-if="orderDetail.status == 2 && orderDetail.shopDelivery != 1" @tap="openAddFeePopup">
增加配送佣金
</view>
<view class="btn" style="width: 40%;" v-if="orderDetail.status == 2 && orderDetail.shopDelivery != 1" @tap="goAssignWorker">
<view class="btn" v-if="orderDetail.status == 2 && orderDetail.shopDelivery != 1 && !isErrandDeliveryOrder(orderDetail)" @tap="goAssignWorker">
改派配送员
</view>
<!-- <view class="btn">
@ -1421,6 +1421,9 @@
hasNoDeliveryWorker(item) {
return !item || !item.deliveryInfo || !item.deliveryInfo.workerId || item.deliveryInfo.status === 0;
},
isErrandDeliveryOrder(item) {
return item && item.deliveryInfo && item.deliveryInfo.deliveryType == 3;
},
isGroupSuccess(item) {
return item && item.groupInfo && (item.groupInfo.status == 1 || item.groupInfo.successTime);
},
@ -2689,6 +2692,12 @@
box-shadow: 0 14rpx 28rpx rgba(0, 191, 160, 0.12);
}
.btn-full {
flex-basis: 100%;
width: 100%;
min-width: 100%;
}
.box1 > view[style*="rgba(247, 248, 248"] {
background: linear-gradient(180deg, rgba(250, 255, 252, 0.96) 0%, rgba(255, 255, 255, 0.9) 100%) !important;
border: 1px solid rgba(166, 255, 234, 0.34);

9
package1/runErrand/runErrand.vue

@ -1,5 +1,6 @@
<template>
<!-- 代跑腿/快递页 -->
<page-meta :page-style="isBookPopupOpen ? 'overflow: hidden;' : 'overflow: visible;'"></page-meta>
<view class="page1">
<view class="title">
<view class="title-sreach">
@ -32,7 +33,7 @@
</view>
</view>
</view>
<view class="content">
<view class="content" :class="{'content--locked': isBookPopupOpen}">
<view class="" style="background: #fff;padding: 20rpx;">
<!-- 取货地址 -->
<view v-if="isKuaidi" class="dizhi" style="border-bottom: 1px solid #eee; padding-bottom: 20rpx; margin-bottom: 20rpx;">
@ -253,7 +254,7 @@
<!-- 收货/取货地址簿弹出层 -->
<uni-popup ref="bookPopup" background-color="#fff" @change="onBookPopupChange">
<view class="book-popup-content">
<view class="book-popup-content" @tap.stop>
<address-list v-if="addressBookVisible" @selectAddress="handleSelectAddress"
@syncAddress="handleSyncAddress" @shopAreaList="updateArea" @close="closeAddressBook"></address-list>
</view>
@ -1144,6 +1145,10 @@
height: 100%;
}
.content--locked {
overflow: hidden;
}
.tab1 {
width: 100%;
height: 160rpx;

5
package1/tabbar/fishRelease.vue

@ -16,7 +16,7 @@
<view class="form-card">
<view class="field" id="fieldTitle">
<view class="label">标题</view>
<input v-model.trim="form.title" maxlength="10" placeholder="最多10个字" />
<input v-model.trim="form.title" maxlength="30" placeholder="最多30个字" />
</view>
<view class="field price-row" id="fieldPrice">
@ -423,11 +423,12 @@
const phone = String(this.form.phone || '').trim()
if (!title) return '请填写标题'
if (title.length < 2) return '标题至少2个字'
if (title.length > 10) return '标题最多10个字'
if (title.length > 30) return '标题最多30个字'
if (this.selectedCategoryIndex < 0) return '请选择分类'
if (!price) return this.publishType == 'sell' ? '请填写售价' : '请填写预算'
if (!this.isValidPrice(price)) return this.publishType == 'sell' ? '售价必须大于0且最多2位小数' : '预算必须大于0且最多2位小数'
if (originPrice && !this.isValidAmount(originPrice)) return '原价最多2位小数'
if (this.publishType == 'sell' && originPrice && Number(price) > Number(originPrice)) return '售价不得大于原价'
if (this.publishType == 'sell' && this.form.images.length == 0) return '请至少上传1张商品图片'
if (this.publishType == 'want' && this.form.images.length > 1) return '求购最多上传1张图片'
if (!contentText) return this.publishType == 'sell' ? '请填写商品介绍' : '请填写求购内容'

Loading…
Cancel
Save