Просмотр исходного кода

Merge branch 'master' into zhongqi-itemUpdate

shish 3 месяцев назад
Родитель
Сommit
36a3ee7c65

+ 28 - 28
ghsApp/src/admin/shop/add.vue

@@ -138,35 +138,35 @@
 				</tui-list-cell>
 
 				<view style="border:1upx solid #CCCCCC;margin:0 8upx 0 8upx;">
-				<view style="background-color: white;font-size:28upx;padding-left:26upx;color:#3385FF;padding-top:10upx;">客户自己下单,并且下面二个要同时满足,才有优惠</view>
-				<tui-list-cell class="line-cell" :hover="false">
-					<view class="tui-title " style="color:#3385FF;">整单满扎数</view>
-					<input v-model="form.meetNum" style="color:#3385FF;" @focus="form.meetNum=''" placeholder-class="phcolor" class="tui-input" name="meetNum" placeholder="填写数量" type="digit" />
-				</tui-list-cell>
-				<tui-list-cell class="line-cell" :hover="false">
-					<view class="tui-title " style="color:#3385FF;">整单满金额</view>
-					<input v-model="form.meetAmount" style="color:#3385FF;" @focus="form.meetAmount=''" placeholder-class="phcolor" class="tui-input" name="meetAmount" placeholder="填写金额" type="digit" />
-				</tui-list-cell>
-				<tui-list-cell class="line-cell" :hover="false">
-					<view class="tui-title" style="color:#3385FF;">优惠方式</view>
-					<radio-group class="tui-input" @change="cutStyleChange" style="color:#3385FF;">
-						<label class="list" for="amountLink">
-							<radio id="amountLink" value="0" :checked="form.cutStyle == 0" style="transform:scale(0.7,0.7)" />
-							<span class="checkbox-text">按金额</span>
-						</label>
-						<label class="list" for="discountLink">
-							<radio id="discountLink" value="1" :checked="form.cutStyle == 1" style="transform:scale(0.7,0.7)" />
-							<span class="checkbox-text">按折扣</span>
-						</label>
-						<input v-model="form.cutStyle" name="cutStyle" hidden />
-					</radio-group>
-				</tui-list-cell>
+					<view style="background-color: white;font-size:28upx;padding-left:26upx;color:#3385FF;padding-top:10upx;">客户自己下单,并且下面二个要同时满足,才有优惠</view>
+					<tui-list-cell class="line-cell" :hover="false">
+						<view class="tui-title " style="color:#3385FF;">整单满扎数</view>
+						<input v-model="form.meetNum" style="color:#3385FF;" @focus="form.meetNum=''" placeholder-class="phcolor" class="tui-input" name="meetNum" placeholder="填写数量" type="digit" />
+					</tui-list-cell>
+					<tui-list-cell class="line-cell" :hover="false">
+						<view class="tui-title " style="color:#3385FF;">整单满金额</view>
+						<input v-model="form.meetAmount" style="color:#3385FF;" @focus="form.meetAmount=''" placeholder-class="phcolor" class="tui-input" name="meetAmount" placeholder="填写金额" type="digit" />
+					</tui-list-cell>
+					<tui-list-cell class="line-cell" :hover="false">
+						<view class="tui-title" style="color:#3385FF;">优惠方式</view>
+						<radio-group class="tui-input" @change="cutStyleChange" style="color:#3385FF;">
+							<label class="list" for="amountLink">
+								<radio id="amountLink" value="0" :checked="form.cutStyle == 0" style="transform:scale(0.7,0.7)" />
+								<span class="checkbox-text">按金额</span>
+							</label>
+							<label class="list" for="discountLink">
+								<radio id="discountLink" value="1" :checked="form.cutStyle == 1" style="transform:scale(0.7,0.7)" />
+								<span class="checkbox-text">按折扣</span>
+							</label>
+							<input v-model="form.cutStyle" name="cutStyle" hidden />
+						</radio-group>
+					</tui-list-cell>
 
-				<tui-list-cell class="line-cell" :hover="false">
-					<view class="tui-title " style="color:#3385FF;">优惠{{ form.cutStyle == 0?'金额':'折扣' }}</view>
-					<input v-model="form.cutAmount" style="color:#3385FF;" @focus="form.cutAmount=''" v-if="form.cutStyle == 0" placeholder-class="phcolor" class="tui-input" name="cutAmount" placeholder="请填写金额" type="digit" />
-					<input v-model="form.cutAmount" style="color:#3385FF;" @focus="form.cutAmount=''" v-else placeholder-class="phcolor" class="tui-input" name="cutAmount" placeholder="请填写折扣,95折填0.95" type="digit" />
-				</tui-list-cell>
+					<tui-list-cell class="line-cell" :hover="false">
+						<view class="tui-title " style="color:#3385FF;">优惠{{ form.cutStyle == 0?'金额':'折扣' }}</view>
+						<input v-model="form.cutAmount" style="color:#3385FF;" @focus="form.cutAmount=''" v-if="form.cutStyle == 0" placeholder-class="phcolor" class="tui-input" name="cutAmount" placeholder="请填写金额" type="digit" />
+						<input v-model="form.cutAmount" style="color:#3385FF;" @focus="form.cutAmount=''" v-else placeholder-class="phcolor" class="tui-input" name="cutAmount" placeholder="请填写折扣,95折填0.95" type="digit" />
+					</tui-list-cell>
 				</view>
 
 				<tui-list-cell class="line-cell" :hover="false">

+ 203 - 1
hdApp/src/admin/billing/index2.vue

@@ -14,6 +14,7 @@
 			</view>
 		</view>
 
+		<button class="admin-button-com middle blue" @click="scanCode" style="position: absolute;top:120upx;right:160upx;z-index:99;">扫一扫</button>
 		<button class="admin-button-com middle blue" @click="confirmToSave" style="position: absolute;top:120upx;right:24upx;z-index:99;">选好了</button>
 
 		<view class="scroll-middle_bx">
@@ -101,7 +102,48 @@
 			</template>
 		</modal-module>
 
-		<footer-cart :price="allPrice" :count="allCount" @confirm="confirmToSave" ></footer-cart>
+		<footer-cart :price="allPrice" :count="allCount" @confirm="confirmToSave" @showCartItem="showCartItem" ></footer-cart>
+
+		<view v-if="cartItemShow == true" style="position: fixed;z-index: 190;top: 0;left: 0;width: 100vw;height: 145vh;background: rgba(0, 0, 0, 0.6);color: #fff;" @click="hideCartItem()">
+			<view style="position: fixed;bottom: 108upx;width:100vw;background-color:white;" @click.stop="">
+				<view class="commodity-view">
+					<view class="summary-bar">
+						<button class="admin-button-com blue middle" style="border:none;" @click.stop="delMemory()">清空购物车</button>
+						<button class="admin-button-com middle blue" @click.stop="scanCode()" style="border:none;padding:22upx 34upx; display:flex; align-items:center;">
+							<view class="btn-content">
+								<text class="btn-text" style="font-size: 28upx;color:#fff;">扫一扫</text>
+							</view>
+						</button>
+					</view>
+					<view class="commodity-list">
+						<view class="commodity-item" v-for="(item, index) in selectList" :key="index">
+							<image class="item-icon" :src="item.cover" alt="" />
+							<view class="item-info">
+								<view class="info-line">
+									<text class="item-name">{{ item.name }}</text>
+									<text class="item-price">
+										<text class="unit"></text>
+										<text class="price">
+											¥{{ item.userPrice ? parseFloat(item.userPrice) : 0 }}
+										</text>
+									</text>
+								</view>
+								<view style="text-align:right;">
+									<view class="open-bx" >
+										<i class="iconfont iconjian" @click.stop="delCurrent(item)" v-if="item.bigCount > 0 || item.smallCount > 0"></i>
+										<text class="num" @click.stop="customUpdate(item)">
+										<text v-if="item.bigCount > 0" style="font-weight:bold;color:#3385ff;">{{ item.bigCount }}</text>
+										<text v-if="item.smallCount > 0"><text v-if="item.bigCount > 0">/</text>{{ item.smallCount }}</text>
+										</text>
+										<i class="iconfont iconzeng" @click.stop="addCurrent(item)"></i>
+									</view>
+								</view>
+							</view>
+						</view>
+					</view>
+				</view>
+			</view>
+		</view>
 
 		<uni-popup ref="globalClassImgRef" background-color="#fff" type="center" :animation="false" class="class-popup-style">
 			<view style="display:flex;padding:20upx;height:auto;justify-content: space-between;align-items:center;flex-wrap:wrap;max-height:100vh;overflow:auto;">
@@ -125,6 +167,7 @@ import ModalModule from "@/components/plugin/modal";
 import { COMMODITY_TYPE } from "@/utils/declare";
 import productMins from "@/mixins/product2";
 import { delStatusUpdate } from '@/api/product';
+import { getItemList } from '@/api/item';
 import { mapGetters } from "vuex";
 export default {
 	name: "index",
@@ -145,6 +188,8 @@ export default {
 			autoLoad: false,
 			xjData:{},
 			xjDataInfo:{},
+			cartItemShow:false,
+			localItemData:[],
 		};
 	},
 	computed: {
@@ -194,6 +239,12 @@ export default {
 			this.globalRequestType = 'book'
 			this.initData()
 		}
+		getItemList({classId: 0,requestType: 'kd',page: 1,search: '',customId: this.option.customId, pageSize: 10000}).then(res => {
+			if(res.code == 1){
+				this.localItemData = res.data.list
+			}
+		})
+
 	},
 	methods: {
 		delProduct(info){
@@ -236,6 +287,83 @@ export default {
 			let reduceStock = this.option.reduceStock?this.option.reduceStock:0
 			this.$util.pageTo({ url: '/admin/billing/affirm?customId='+customId+'&customName='+customName+'&orderId='+orderId+'&book='+book+'&reduceStock='+reduceStock+'&fromType=item',type:2})
 		},
+		showCartItem(){
+			if(this.cartItemShow == true){
+				this.cartItemShow = false
+			}else{
+				if(!this.$util.isEmpty(this.selectList)){
+					this.cartItemShow = true
+				}
+			}
+		},
+		hideCartItem(){
+			this.cartItemShow = false
+		},
+		delMemory(){
+			this.cartItemShow = false
+			this.removeFromSave(this.option.customId)
+		},
+		addCurrent(info){
+			if(info.$orig){ info = info.$orig }
+			this.replaceItemFn(info, 0, 'add')
+		},
+		delCurrent(info){
+			if(info.$orig){ info = info.$orig }
+			this.replaceItemFn(info, 0, 'sub')
+		},
+		customUpdate(info){
+			if(info.$orig){ info = info.$orig }
+			this.showAddModelFn(info)
+		},
+		scanCode(){
+			uni.scanCode({
+				onlyFromCamera: false,
+				scanType: ['barCode'],
+				success: (res) => {
+					const itemId = res.result
+					let foundItem = null
+					if(!this.$util.isEmpty(this.localItemData)){
+						for (let i = 0; i < this.localItemData.length; i++) {
+							const productItem = this.localItemData[i]
+							if (productItem && productItem.itemId == itemId) {
+								foundItem = productItem
+								break
+							}
+						}
+					}
+					if (foundItem) {
+						if(Number(foundItem.stock) <= 0 && Number(foundItem.bigNum) <= 0 && Number(foundItem.smallNum) <= 0){
+							uni.showToast({title:'没有货了',icon:'none'})
+							return
+						}
+						const ratio = Number(foundItem.ratio) || 1
+						const selectItem = this.getSelectItemById(foundItem.id, foundItem.classId)
+						const curBig = selectItem && Number(selectItem.bigCount) > 0 ? Number(selectItem.bigCount) : 0
+						const curSmall = selectItem && Number(selectItem.smallCount) > 0 ? Number(selectItem.smallCount) : 0
+						if (curBig * ratio + curSmall + 1 > Number(foundItem.bigNum) * ratio + Number(foundItem.smallNum)) {
+							this.$msg('库存只剩'+foundItem.bigNum)
+							return
+						}
+						let params = {
+							...foundItem,
+							bigCount: curBig,
+							smallCount: curSmall,
+							userPrice: (selectItem && Number(selectItem.userPrice) > 0) ? Number(selectItem.userPrice) : Number(foundItem.bigPrice) || 0,
+							aboutPrice: selectItem && selectItem.aboutPrice ? selectItem.aboutPrice : 0,
+							totalPrice: selectItem && selectItem.totalPrice ? selectItem.totalPrice : 0,
+							assignSeat: selectItem && selectItem.assignSeat ? selectItem.assignSeat : 1
+						}
+						this.replaceItemFn(params, 0, 'add')
+						this.cartItemShow = true
+					} else {
+						this.$msg('未找到对应商品')
+					}
+				},
+				fail: (err) => {
+					console.log(err)
+				}
+			})
+		},
 		goHs(){
 			let customName = this.option.customName ? this.option.customName : '';
 			let orderId = this.option.orderId  ? this.option.orderId : 0
@@ -370,4 +498,78 @@ export default {
 	color:red;
 	font-weight:bold;
 }
+.commodity-view {
+	display: flex;
+	flex-direction: column;
+	.commodity-list {
+		overflow:scroll;
+		height:60vh;
+		padding: 20upx;
+		.commodity-item {
+			display: flex;
+			margin-bottom: 20upx;
+			.item-icon {
+				flex-shrink: 0;
+				width: 140upx;
+				height: 140upx;
+			}
+			.item-info {
+				display: flex;
+				flex-direction: column;
+				justify-content: center;
+				flex: 1;
+				margin-left: 20upx;
+				.info-line {
+					margin-bottom: 20upx;
+					display: flex;
+					justify-content: space-between;
+					align-items: flex-end;
+					.item-name {
+						color: #333333;
+						font-size: 30upx;
+						overflow: hidden;
+						white-space: nowrap;
+						text-overflow: ellipsis;
+						width:400upx;
+					}
+					.item-price {
+						color: #333;
+						font-size: 22upx;
+						.price {
+							font-size: 32upx;
+							font-weight: bold;
+						}
+					}
+				}
+				.open-bx {
+					align-items: center;
+					& .iconfont {
+						color: #3385ff;
+						font-size: 60upx;
+					}
+					& > .num {
+						display: inline-block;
+						width: 130upx;
+						height:55upx;
+						line-height:55upx;
+						text-align:center;
+						margin: 0 8upx;
+						color: #868686;
+						border-radius: 22upx;
+						background-color: #f5f5f5;
+						font-size: 28upx;
+					}
+				}
+			}
+		}
+	}
+	.summary-bar {
+		padding: 0 20upx;
+		height: 90upx;
+		display: flex;
+		align-items: center;
+		justify-content: space-between;
+		border-top: 1px solid #eeeeee;
+	}
+}
 </style>

+ 1 - 1
hdApp/src/admin/cg/mall.vue

@@ -5,7 +5,7 @@
       <image :src="goodsUrl" mode="heightFix" class="img_url"></image>
     </view>
 
-    <view style="margin:20upx auto 20upx auto;width:50vw;font-size:35upx;font-weight:bold;text-align:center;">绿植花束</view>
+    <view style="margin:20upx auto 20upx auto;width:50vw;font-size:35upx;font-weight:bold;text-align:center;">花束</view>
 
     <view class="confirm-btn" style="margin-top:60upx;">
       <button class="admin-button-com big blue" style="width:60vw;" @click="downloadImg(goodsUrl)">保存图片</button>

+ 1 - 5
hdApp/src/admin/goods/category.vue

@@ -18,9 +18,6 @@
               </view>
               <view class="info-details">
                 <text class="detail-text">序号: {{ item.inTurn }}</text>
-                <text class="detail-text status-text active">
-                  {{ item.flower == 0 ? '鲜花' : item.flower ==1?'绿植':'仿真花' }}
-                </text>
               </view>
             </view>
           </view>
@@ -181,8 +178,7 @@ export default {
       catDisabled: false,
       flowerTypes: [
         { label: '鲜花', value: 0 },
-        { label: '绿植', value: 1 },
-        { label: '仿真花', value: 2 }
+        { label: '仿真花', value: 1 }
       ]
     }
   },

+ 2 - 2
hdApp/src/admin/home/apply.vue

@@ -29,7 +29,7 @@ export default {
     return {
       menuList: [
         {
-            title:'🌹 绿植花束',
+            title:'🌹 花束',
             list:[
                 { name: "列表", emoji: "📋", url: "/admin/goods/list",pf:1},
                 { name: "分类", emoji: "📂", url: "/admin/goods/category",pf:1},
@@ -38,7 +38,7 @@ export default {
             ]
         },
         {
-            title:'🌿 花材',
+            title:'🌿 绿植',
             list:[
                 {name: "列表", emoji: "📋", url: "/admin/item/list2",pf:1},
                 {name: "分类", emoji: "📂", url: "/admin/itemClass/list",pf:1},

+ 4 - 4
hdApp/src/admin/home/mall.vue

@@ -60,7 +60,7 @@
         <!-- 花束 -->
         <view class="flower-section">
           <view class="section-header">
-            <view class="header-title">🌹 绿植花束</view>
+            <view class="header-title">🌹 花束</view>
           </view>
           <view class="icon-grid">
             <view class="icon-item" @click="goPage({url: '/admin/cg/mall'})">
@@ -103,7 +103,7 @@
               <view class="icon-wrapper">
                 <view class="icon-emoji">🌸</view>
               </view>
-              <view class="icon-text">绿植花束</view>
+              <view class="icon-text">花束</view>
             </view>
             <view class="icon-item" @click="goPage({url: '/admin/goods/add'})">
               <view class="icon-wrapper">
@@ -117,7 +117,7 @@
         <!-- 花材 -->
         <view class="flower-section">
           <view class="section-header">
-            <view class="header-title">🌿 花材</view>
+            <view class="header-title">🌿 绿植花材</view>
           </view>
           <view class="icon-grid">
             <view class="icon-item" @click="goPage({url: '/admin/cg/item'})">
@@ -130,7 +130,7 @@
               <view class="icon-wrapper">
                 <view class="icon-emoji">🌿</view>
               </view>
-              <view class="icon-text">花材</view>
+              <view class="icon-text">绿植花材</view>
             </view>
             <view class="icon-item" @click="goItemKd()">
               <view class="icon-wrapper">

+ 99 - 22
hdApp/src/admin/shop/add.vue

@@ -93,22 +93,54 @@
 					<input v-model="form.floor" placeholder-class="phcolor" class="tui-input" name="floor" placeholder="楼号门牌号" />
 				</tui-list-cell>
 
-			<tui-list-cell class="line-cell remark-wrap" :hover="false">
-				<view class="tui-title">简介</view>
-				<view class="tui-input">
-					<textarea v-model="form.introduction" class="tui-textarea remark" placeholder-class="phcolor" placeholder="请输入简介" />
-				</view>
-			</tui-list-cell>
+				<tui-list-cell class="line-cell remark-wrap" :hover="false">
+					<view class="tui-title">简介</view>
+					<view class="tui-input">
+						<textarea v-model="form.introduction" class="tui-textarea remark" placeholder-class="phcolor" placeholder="请输入简介" />
+					</view>
+				</tui-list-cell>
+
+				<tui-list-cell class="line-cell" :hover="false">
+					<view class="tui-title">充值赠送</view>
+					<view class="recharge-buttons">
+						<button class="admin-button-com big" :class="{blue: form.rechargeWeal == 0}" @click="updateRechargeWeal(0)">没有</button>
+						<button class="admin-button-com big" :class="{blue: form.rechargeWeal == 1}" @click="updateRechargeWeal(1)">送钱</button>
+						<button class="admin-button-com big" :class="{blue: form.rechargeWeal == 2}" @click="updateRechargeWeal(2)">送红包</button>
+					</view>
+				</tui-list-cell>
+
+				<view style="border:1upx solid #CCCCCC;margin:0 8upx 0 8upx;">
+					<view style="background-color: white;font-size:28upx;padding-left:26upx;color:#3385FF;padding-top:10upx;">客户自己下单,并且下面二个要同时满足,才有优惠</view>
+					<tui-list-cell class="line-cell" :hover="false">
+						<view class="tui-title " style="color:#3385FF;">整单满扎数</view>
+						<input v-model="form.meetNum" style="color:#3385FF;" @focus="form.meetNum=''" placeholder-class="phcolor" class="tui-input" name="meetNum" placeholder="填写数量" type="digit" />
+					</tui-list-cell>
+					<tui-list-cell class="line-cell" :hover="false">
+						<view class="tui-title " style="color:#3385FF;">整单满金额</view>
+						<input v-model="form.meetAmount" style="color:#3385FF;" @focus="form.meetAmount=''" placeholder-class="phcolor" class="tui-input" name="meetAmount" placeholder="填写金额" type="digit" />
+					</tui-list-cell>
+					<tui-list-cell class="line-cell" :hover="false">
+						<view class="tui-title" style="color:#3385FF;">优惠方式</view>
+						<radio-group class="tui-input" @change="cutStyleChange" style="color:#3385FF;">
+							<label class="list" for="amountLink">
+								<radio id="amountLink" value="0" :checked="form.cutStyle == 0" style="transform:scale(0.7,0.7)" />
+								<span class="checkbox-text">按金额</span>
+							</label>
+							<label class="list" for="discountLink">
+								<radio id="discountLink" value="1" :checked="form.cutStyle == 1" style="transform:scale(0.7,0.7)" />
+								<span class="checkbox-text">按折扣</span>
+							</label>
+							<input v-model="form.cutStyle" name="cutStyle" hidden />
+						</radio-group>
+					</tui-list-cell>
 
-			<tui-list-cell class="line-cell" :hover="false">
-				<view class="tui-title">充值赠送</view>
-				<view class="recharge-buttons">
-					<button class="admin-button-com big" :class="{blue: form.rechargeWeal == 0}" @click="updateRechargeWeal(0)">没有</button>
-					<button class="admin-button-com big" :class="{blue: form.rechargeWeal == 1}" @click="updateRechargeWeal(1)">送钱</button>
-					<button class="admin-button-com big" :class="{blue: form.rechargeWeal == 2}" @click="updateRechargeWeal(2)">送红包</button>
+					<tui-list-cell class="line-cell" :hover="false">
+						<view class="tui-title " style="color:#3385FF;">优惠{{ form.cutStyle == 0?'金额':'折扣' }}</view>
+						<input v-model="form.cutAmount" style="color:#3385FF;" @focus="form.cutAmount=''" v-if="form.cutStyle == 0" placeholder-class="phcolor" class="tui-input" name="cutAmount" placeholder="请填写金额" type="digit" />
+						<input v-model="form.cutAmount" style="color:#3385FF;" @focus="form.cutAmount=''" v-else placeholder-class="phcolor" class="tui-input" name="cutAmount" placeholder="请填写折扣,95折填0.95" type="digit" />
+					</tui-list-cell>
 				</view>
-			</tui-list-cell>
-		</view>
+			</view>
 
 			<view class="module-com input-line-wrap goods-wrap">
 				<view class="module-tit">
@@ -139,8 +171,7 @@ import TuiListCell from '@/components/plugin/list-cell'
 import SimpleAddress from '@/components/plugin/simple-address'
 import AppAreaSel from '@/components/app-area-sel'
 const form = require('@/utils/formValidation.js')
-import {getDetail} from "@/api/shop"
-import { updateShop as update, addShop as add } from '@/api/shop'
+import { getDetail, updateShop as update, addShop as add } from '@/api/shop'
 //已改造,不能再升级 shish 20211228
 import htzImageUpload from '@/components/htz-image-upload/htz-image-upload.vue'
 
@@ -179,7 +210,12 @@ export default {
 				default:0,
 				superWx:[],
 				rechargeWeal: 0,
-				openLocation:0 // 是否开启定位 0不开启 1开启
+				openLocation:0, // 是否开启定位 0不开启 1开启
+				// 满减优惠
+				meetNum:0,
+				meetAmount:0,
+				cutAmount:0,
+				cutStyle:0,
 			},
 			hasMap:0, // 是否具备地址功能 0不具备 1具备
 			showRegion: false,
@@ -189,7 +225,8 @@ export default {
 			},
 			cityPickerValueDefault: [0, 0],
       		headers:{token:''},
-			currentImgData:[]
+			currentImgData:[],
+			cutAmountCache: { amount: '', discount: '' } // 优惠值缓存
 		}
 	},
 	onLoad() {
@@ -268,6 +305,12 @@ export default {
 				this.hasMap = data.hasMap || 0
 				this.merchantName = data.merchantName||''
 				this.form.rechargeWeal = data.rechargeWeal || 0
+				// 初始化优惠值缓存,便于切换优惠方式后再切回时恢复
+				if (this.form.cutStyle == 0) {
+					this.cutAmountCache.amount = this.form.cutAmount
+				} else {
+					this.cutAmountCache.discount = this.form.cutAmount
+				}
 			})
 			}
 		},
@@ -282,6 +325,20 @@ export default {
 		joinChange(e){
 			this.form.join = e.detail.value
 		},
+		cutStyleChange(e){
+			const newStyle = Number(e.detail.value)
+			if (newStyle === this.form.cutStyle) return
+			// 先缓存当前输入框的值到对应方式的缓存位
+			if (this.form.cutStyle == 0) {
+				this.cutAmountCache.amount = this.form.cutAmount
+			} else {
+				this.cutAmountCache.discount = this.form.cutAmount
+			}
+			this.form.cutStyle = newStyle
+			// 切换到新方式时,若有缓存则恢复,否则置空
+			const cached = newStyle == 0 ? this.cutAmountCache.amount : this.cutAmountCache.discount
+			this.form.cutAmount = cached !== undefined && cached !== '' ? cached : ''
+		},
 		endTimeChange: function(e) {
 			this.end_time = e.detail.value
 			this.form.openEndTime = e.detail.value
@@ -335,6 +392,10 @@ export default {
 				superWx = this.form.superWx[0]
 			}
 			this.form.openLocation = this.option.openLocation ? 1 : 0
+			this.form.meetNum = Number(this.form.meetNum) || 0
+			this.form.meetAmount = Number(this.form.meetAmount) || 0
+			this.form.cutAmount = Number(this.form.cutAmount) || 0
+			this.form.cutStyle = Number(this.form.cutStyle) || 0
 			this.form = {...this.form,...this.region,superWx:superWx}
 			uni.showLoading({mask:true})
 			hostFn(this.form).then(res => {
@@ -380,12 +441,28 @@ export default {
 			// 进行表单检查
 			let formData = e.detail.value
 			let checkRes = form.validation(formData, rules)
-			// 验证通过!
-			if (!checkRes) {
-				this.confirmFn()
-			} else {
+			if (checkRes) {
 				this.$msg(checkRes)
+				return
+			}
+			// 满减优惠额外校验
+			const meetNum = Number(this.form.meetNum) || 0
+			const meetAmount = Number(this.form.meetAmount) || 0
+			const cutAmount = Number(this.form.cutAmount) || 0
+			// meetNum 要为整数
+			if (meetNum !== Math.floor(meetNum)) {
+				this.$msg('整单满扎数必须为整数')
+				return
+			}
+			if (meetNum < 0 || meetAmount < 0 || cutAmount < 0) {
+				this.$msg('满减优惠数值不能为负数')
+				return
+			}
+			if (this.form.cutStyle == 1 && cutAmount > 0 && (cutAmount <= 0 || cutAmount >= 1)) {
+				this.$msg('折扣请填写 0 到 1 之间的数字,如 95 折填 0.95')
+				return
 			}
+			this.confirmFn()
 		}
 	}
 }

+ 2 - 2
hdApp/src/admin/shop/sk.vue

@@ -75,7 +75,7 @@
 
           <view style="border: 1px solid #2bb931;margin:20upx 10upx;background-color: white;">
             <view class="action-btn" style="margin-top:20upx;margin-bottom:10upx;background-color: white;">
-              <text style="font-size: 30upx;font-weight: bold;">【零售-花材】跑腿费计算方式</text>
+              <text style="font-size: 30upx;font-weight: bold;">【零售-绿植】跑腿费计算方式</text>
             </view>
             <view style="display: flex; align-items: center; margin-left:30upx;">
               <input class="input-field" type="number" v-model="hcFreeKm" placeholder="0" style="width:100upx;" @focus="hcFreeKm = ''" />
@@ -105,7 +105,7 @@
 
 
           <view style="border: 1px solid #2bb931;margin:20upx 10upx;background-color: white;">
-            <view class="section-title" style="margin-bottom:10upx;background-color: white;">【零售-绿植花束】跑腿费计算方式</view>
+            <view class="section-title" style="margin-bottom:10upx;background-color: white;">【零售-花束】跑腿费计算方式</view>
             <tui-list-cell class="line-cell" :hover="false">
               <view class="tui-title">包配送的</view>
               <input class="input-field" v-model="hsFreeKm" type="number" placeholder="0" @focus="hsFreeKm = ''" />

+ 1 - 1
hdApp/src/config.js

@@ -4,4 +4,4 @@ export const FORMALHOST = 'https://shop.huaml.com'
 export const IMGHOST = 'https://img.huaml.com'
 export const CURRENT_ENV = 'dev'
 export const WSSHOST = 'wss://chat.shop.huaml.com'
-export const APP_VERSION = '2.3.3'
+export const APP_VERSION = '2.3.4'

+ 0 - 1
hdApp/src/mixins/product2.js

@@ -359,7 +359,6 @@ export default {
 			}
 
 			const list = this.selectList
-
 			let index = list.findIndex(element => element.id == item.id)
 
 			//扫码数量累加

+ 2 - 2
hdApp/src/pages.json

@@ -1,7 +1,7 @@
 {
 	"pages": [
 		{ "path": "admin/home/workbench", "style": { "navigationBarTitleText": "进货", "enablePullDownRefresh": true } },
-		{ "path": "admin/home/mall", "style": { "navigationBarTitleText": "商城", "enablePullDownRefresh": true } },
+		{ "path": "admin/home/mall", "style": { "navigationBarTitleText": "店铺", "enablePullDownRefresh": true } },
 		{ "path": "admin/home/login","style": {"navigationBarTitleText": "","enablePullDownRefresh": false}},
 		{ "path": "admin/home/loginRemind","style": {"navigationBarTitleText": "登录提示","enablePullDownRefresh": false}},
 		{ "path": "admin/home/appLoginRemind","style": {"navigationBarTitleText": "无法登录怎么办","enablePullDownRefresh": false}},
@@ -298,7 +298,7 @@
 		{
 			"root": "admin/goods",
 			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "绿植花束" } },
+				{ "path": "list", "style": { "navigationBarTitleText": "花束" } },
 				{ "path": "lz", "style": { "navigationBarTitleText": "绿植" } },
 				{ "path": "category", "style": { "navigationBarTitleText": "分类" } },
 				{ "path": "kind", "style": { "navigationBarTitleText": "花束品类" } },

+ 0 - 654
hdApp/src/pages_app.json

@@ -1,654 +0,0 @@
-{
-	"pages": [
-		{ "path": "admin/home/mall", "style": { "navigationBarTitleText": "商城", "enablePullDownRefresh": true } },
-		{ "path": "admin/home/workbench", "style": { "navigationBarTitleText": "进货", "enablePullDownRefresh": true } },
-		{ "path": "admin/home/login","style": {"navigationBarTitleText": "","enablePullDownRefresh": false}},
-		{ "path": "admin/home/loginRemind","style": {"navigationBarTitleText": "登录提示","enablePullDownRefresh": false}},
-		{ "path": "admin/home/appLoginRemind","style": {"navigationBarTitleText": "无法登录怎么办","enablePullDownRefresh": false}},
-		{ "path": "admin/home/order", "style": { "navigationBarTitleText": "订单", "enablePullDownRefresh": true } },
-		{ "path": "admin/home/member", "style": { "navigationBarTitleText": "客户", "enablePullDownRefresh": true } },
-		{ "path": "admin/home/apply", "style": { "navigationBarTitleText": "应用", "enablePullDownRefresh": true } },
-		{ "path": "admin/home/close","style": {"navigationBarTitleText": "申请注销账号"}},
-		{"path": "admin/home/register","style": {"navigationBarTitleText": "服务协议"}},
-		{"path": "admin/home/privacy","style": {"navigationBarTitleText": "隐私政策"}},
-		{ "path": "admin/home/me", "style": { "navigationBarTitleText": "我的", "enablePullDownRefresh": true, "navigationStyle": "custom" } },
-		{ "path": "admin/home/moneyChangeList", "style": { "navigationBarTitleText": "变动明细", "enablePullDownRefresh": true } },
-		{ "path": "admin/home/edit", "style": { "navigationBarTitleText": "花店信息" } },
-		{"path": "common/success","style": {"navigationBarBackgroundColor": "#ffffff","navigationBarTextStyle": "black"}},
-		{"path": "common/webview","style": {"navigationBarTitleText": "网页","navigationBarBackgroundColor": "#ffffff","navigationBarTextStyle": "black"}}
-	],
-	"subPackages": [
-		{
-			"root": "admin/work",
-			"pages": [
-				{"path": "add","style": {"navigationBarTitleText": "新建任务"}},
-				{"path": "statCat","style": {"navigationBarTitleText": "生产统计"}},
-				{"path": "statCatItem","style": {"navigationBarTitleText": "明细"}},
-				{"path": "addResult","style": {"navigationBarTitleText": "新建成功"}},
-				{"path": "list","style": {"navigationBarTitleText": "列表","enablePullDownRefresh": true}},
-				{"path": "detail","style": {"navigationBarTitleText": "详情"}},
-				{"path": "set","style": {"navigationBarTitleText": "设置"}}
-			]
-		},
-		{
-			"root": "admin/ll",
-			"pages": [
-				{"path": "list","style": {"navigationBarTitleText": "花卉行业"}},
-				{"path": "add","style": {"navigationBarTitleText": "新增"}},
-				{"path": "userDetail","style": {"navigationBarTitleText": "明细"}},
-				{"path": "eventDetail","style": {"navigationBarTitleText": "明细"}},
-				{"path": "myEventList","style": {"navigationBarTitleText": "我提交的记录"}}
-			]
-		},
-		{
-			"root": "admin/settle",
-			"pages": [
-				{"path": "list","style": {"navigationBarTitleText": "结账单","enablePullDownRefresh": false}},
-				{"path": "detail","style": {"navigationBarTitleText": "详情","enablePullDownRefresh": false}}
-			]
-		},
-		{
-			"root": "admin/ptItem",
-			"pages": [
-				{"path": "itemList","style": {"navigationBarTitleText": "从平台选择花材"}}
-			]
-		},
-		{
-			"root": "admin/custom",
-			"pages": [
-				{"path": "addCustom","style": {"navigationBarTitleText": "添加客户"}},
-				{"path": "selectCustom","style": {"navigationBarTitleText": "选择客户"}},
-				{"path": "showTotalBalance","style": {"navigationBarTitleText": "挂账与余额汇总"}},
-				{"path": "balanceChange","style": {"navigationBarTitleText": "总余额变动"}},
-				{"path": "balancePayChange","style": {"navigationBarTitleText": "充值余额变动"}},
-				{"path": "balanceGiveChange","style": {"navigationBarTitleText": "赠送余额变动"}},
-				{"path": "debtChange","style": {"navigationBarTitleText": "挂账变动明细"}},
-				{"path": "rechargeChange","style": {"navigationBarTitleText": "充值记录"}},
-				{"path": "levelChange","style": {"navigationBarTitleText": "等级变动记录"}},
-				{"path": "visit","style": {"navigationBarTitleText": "今日访客"}}
-			]
-		},
-		{
-			"root": "admin/breakage",
-			"pages": [
-				{"path": "list","style": {"navigationBarTitleText": "报损记录","enablePullDownRefresh": true}},
-				{"path": "info","style": {"navigationBarTitleText": "详情"}},
-				{"path": "index","style": {"navigationBarTitleText": "选择花材"}},
-				{"path": "confirm","style": {"navigationBarTitleText": "确认订单"}},
-				{"path": "result","style": {"navigationBarTitleText": "操作成功"}}
-			]
-		},
-		{
-			"root": "admin/part",
-			"pages": [
-				{"path": "list","style": {"navigationBarTitleText": "拆散记录","enablePullDownRefresh": true}},
-				{"path": "info","style": {"navigationBarTitleText": "详情"}},
-				{"path": "index","style": {"navigationBarTitleText": "选择花材"}},
-				{"path": "confirm","style": {"navigationBarTitleText": "确认订单"}},
-				{"path": "result","style": {"navigationBarTitleText": "操作成功"}}
-			]
-		},
-		{
-			"root": "admin/item",
-			"pages": [
-				{"path": "list","style": {"navigationBarTitleText": "绿植花材"}},
-				{"path": "list2","style": {"navigationBarTitleText": "绿植花材"}},
-				{"path": "copy","style": {"navigationBarTitleText": "复制新建"}},
-				{"path": "detail","style": {"navigationBarTitleText": "花材详情"}},
-				{"path": "add","style": {"navigationBarTitleText": "添加花材"}},
-				{"path": "selectItem","style": {"navigationBarTitleText": "选择花材"}},
-				{"path": "picTextAdd-Edit","style": {"navigationBarTitleText": "修改简介"}}
-			]
-		},
-		{
-			"root": "admin/changePrice",
-			"pages": [
-				{"path": "list","style": {"navigationBarTitleText": "改价"}},
-				{"path": "list2","style": {"navigationBarTitleText": "改价"}},
-				{"path": "costChangeList","style": {"navigationBarTitleText": "成本变动记录"}},
-				{"path": "changeList","style": {"navigationBarTitleText": "价格变动记录"}}
-			]
-		},
-		{
-			"root": "admin/itemClass",
-			"pages": [
-				{"path": "list","style": {"navigationBarTitleText": "花材分类"}},
-				{"path": "addPrice","style": {"navigationBarTitleText": "加价设置"}},
-				{"path": "more","style": {"navigationBarTitleText": "更多"}},
-				{"path": "sort","style": {"navigationBarTitleText": "花材排序"}},
-				{"path": "num","style": {"navigationBarTitleText": "数量排序"}},
-				{"path": "pull","style": {"navigationBarTitleText": "拖拽排序"}}
-			]
-		},
-		{
-			"root": "admin/cg",
-			"pages": [
-				{ "path": "mall", "style": { "navigationBarTitleText": "商城" } },
-				{ "path": "album", "style": { "navigationBarTitleText": "相册" } },
-				{ "path": "item", "style": { "navigationBarTitleText": "绿植花材" } },
-				{ "path": "code", "style": { "navigationBarTitleText": "收款码" } },
-				{ "path": "member", "style": { "navigationBarTitleText": "注册会员码" } },
-				{ "path": "alipay", "style": { "navigationBarTitleText": "付款" } }
-			]
-		},
-		{
-			"root": "admin/student",
-			"pages": [
-				{ "path": "newStudent", "style": { "navigationBarTitleText": "新学员", "enablePullDownRefresh": true } }
-			]
-		},
-		{
-			"root": "admin/ghsProduct",
-			"pages": [
-				{ "path": "detail", "style": { "navigationBarTitleText": "详情", "enablePullDownRefresh": true } }
-			]
-		},
-		{
-			"root": "admin/common",
-			"pages": [
-				{ "path": "result", "style": { "navigationBarTitleText": "", "enablePullDownRefresh": true } },
-				{ "path": "callback", "style": { "navigationBarTitleText": "", "enablePullDownRefresh": true } },
-				{ "path": "redirect", "style": { "navigationBarTitleText": "加载中..." } },
-				{ "path": "pageSuccess", "style": { "navigationBarBackgroundColor": "#ffffff", "navigationBarTextStyle": "black" } }
-			]
-		},
-		{
-			"root": "admin/share",
-			"pages": [
-				{ "path": "index", "style": { "navigationBarTitleText": "分享" } }
-			]
-		},
-		{
-			"root": "pagesClient",
-			"pages": [
-				{ "path": "member/add", "style": { "navigationBarTitleText": "添加客户" } },
-				{ "path": "member/detail", "style": { "navigationBarTitleText": "客户详情" } },
-				{ "path": "member/bind", "style": { "navigationBarTitleText": "绑定微信" } },
-				{ "path": "official/index", "style": { "navigationBarTitleText": "花掌柜" } },
-				{ "path": "official/pay", "style": { "navigationBarTitleText": "支付" } },
-				{ "path": "official/renewal", "style": { "navigationBarTitleText": "续期" } },
-				{ "path": "official/apply", "style": { "navigationBarTitleText": "填写信息" } },
-				{ "path": "official/clientApply", "style": { "navigationBarTitleText": "结果" } },
-				{ "path": "official/clientResult", "style": { "navigationBarTitleText": "提交审核" } },
-				{ "path": "official/callback", "style": { "navigationBarTitleText": "回调" } },
-				{ "path": "official/latest-shop", "style": { "navigationBarTitleText": "最近访问" } },
-				{ "path": "official/result", "style": { "navigationBarTitleText": "结果" } },
-				{ "path": "official/warn", "style": { "navigationBarTitleText": "开启微信提醒" } },
-				{ "path": "official/toLogin", "style": { "navigationBarTitleText": "登录方式" } }
-			]
-		},
-		{
-			"root": "pagesShare",
-			"pages": [
-				{ "path": "pay", "style": { "navigationBarTitleText": "付款" } }
-			]
-		},
-		{
-			"root": "pagesOrder",
-			"pages": [
-				{ "path": "detail", "style": { "navigationBarTitleText": "订单详情" } },
-				{ "path": "ship", "style": { "navigationBarTitleText": "发货" } },
-				{ "path": "shipInfo", "style": { "navigationBarTitleText": "发货" } },
-				{ "path": "select", "style": { "navigationBarTitleText": "重选花材" } }
-			]
-		},
-		{
-			"root": "pagesStore",
-			"pages": [
-				{ "path": "me/shopYeChange", "style": { "navigationBarTitleText": "余额变动" } },
-				{ "path": "me/withdraw", "style": { "navigationBarTitleText": "提现记录" } },
-				{ "path": "me/incomeExpenses", "style": { "navigationBarTitleText": "收支记录" } },
-				{"path": "me/income","style": {"navigationBarTitleText": "收入记录"}},
-				{"path": "me/expend","style": {"navigationBarTitleText": "支出记录"}},
-				{ "path": "me/recharge", "style": { "navigationBarTitleText": "充值" } },
-				{ "path": "me/rechargeList", "style": { "navigationBarTitleText": "充值记录" } },
-				{ "path": "me/cashSet", "style": { "navigationBarTitleText": "提现账号" } },
-				{ "path": "me/rechargeSuccess", "style": { "navigationBarTitleText": "充值成功" } }
-			]
-		},
-		{
-			"root": "admin/ghs",
-			"pages": [
-				{ "path": "shop", "style": {"navigationBarTitleText": "供货商"}},
-				{ "path": "pay", "style": {"navigationBarTitleText": "结账收银台"}},
-				{ "path": "teachPay", "style": {"navigationBarTitleText": "教程"}},
-				{ "path": "result", "style": {"navigationBarTitleText": "付款成功"}},
-				{ "path": "addGhs", "style": {"navigationBarTitleText": "添加"}},
-				{ "path": "debtChange", "style": {"navigationBarTitleText": "挂账变动明细"}},
-				{ "path": "balanceChange", "style": {"navigationBarTitleText": "余额变动"}},
-				{ "path": "rechargeChange", "style": {"navigationBarTitleText": "充值记录"}}
-			]
-		},
-		{
-			"root": "admin/coupon",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "优惠券" } },
-				{ "path": "couponList", "style": { "navigationBarTitleText": "红包" } },
-				{ "path": "selectCouponList", "style": { "navigationBarTitleText": "优惠券" } }
-			]
-		},
-		{
-			"root": "admin/book",
-			"pages": [
-				{"path": "index","style": {"navigationBarTitleText": "视频教程"}},
-				{"path": "detail","style": {"navigationBarTitleText": ""}}
-			]
-		},
-		{
-			"root": "admin/ad",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "广告列表" } },
-				{ "path": "add", "style": { "navigationBarTitleText": "添加广告" } },
-				{ "path": "sel-goods", "style": { "navigationBarTitleText": "商品选择" } }
-			]
-		},
-		{
-			"root": "admin/ljh",
-			"pages": [
-				{"path":"info","style": { "navigationBarTitleText": "零交会"}},
-				{"path":"confirm","style": { "navigationBarTitleText": "请填写信息"}},
-				{"path":"confirmPay","style": { "navigationBarTitleText": "待支付"}},
-				{"path":"payResult","style": { "navigationBarTitleText": "支付成功"}}
-			]
-		},
-		{
-			"root": "admin/staff",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "员工管理" } },
-				{ "path": "add", "style": { "navigationBarTitleText": "添加员工" } },
-				{ "path": "detail", "style": { "navigationBarTitleText": "员工详情" } },
-				{ "path": "admin","style": {"navigationBarTitleText": "个人资料"}},
-				{ "path": "sel-member", "style": { "navigationBarTitleText": "客户列表" } },
-				{ "path": "achieve", "style": { "navigationBarTitleText": "员工业绩" } },
-				{ "path": "miniAutoLogin", "style": { "navigationBarTitleText": "绑定账号" } },
-				{ "path": "dimission", "style": { "navigationBarTitleText": "离职申请" } }
-			]
-		},
-		{
-			"root": "admin/shop",
-			"pages": [
-				{"path": "list","style": {"navigationBarTitleText": "门店"}},
-				{"path": "downloadCode","style": {"navigationBarTitleText": "收款码"}},
-				{"path": "add","style": {"navigationBarTitleText": ""}},
-				{"path": "sk","style": {"navigationBarTitleText": "设置"}},
-				{"path": "print","style": {"navigationBarTitleText": "前台小票机"}},
-				{"path": "mtPrint","style": {"navigationBarTitleText": "美团小票机"}},
-				{"path": "makePrint","style": {"navigationBarTitleText": "操作台小票机"}},
-				{"path": "password","style": {"navigationBarTitleText": "修改密码"}},
-				{"path": "trumpet","style": {"navigationBarTitleText": "前台云音箱"}},
-				{"path": "makeTrumpet","style": {"navigationBarTitleText": "操作台云音箱"}},
-				{"path": "mtTrumpet","style": {"navigationBarTitleText": "美团云音箱"}},
-				{"path": "addressList","style": {"navigationBarTitleText": "请选择地址"}},
-				{"path": "addressAdd","style": {"navigationBarTitleText": "添加地址"}},
-				{"path": "addressUpdate","style": {"navigationBarTitleText": "修改地址"}},
-				{"path": "myShop","style": {"navigationBarTitleText": "我的门店"}}
-			]
-		},
-		{
-			"root": "admin/setting",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "设置" } },
-				{ "path": "wx-menu", "style": { "navigationBarTitleText": "公众号菜单设置" } },
-				{ "path": "coupon", "style": { "navigationBarTitleText": "新客优惠" } },
-				{ "path": "level", "style": { "navigationBarTitleText": "客户等级设置" } },
-				{ "path": "password", "style": { "navigationBarTitleText": "密码设置" } }
-			]
-		},
-		{
-			"root": "admin/goods",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "绿植花束" } },
-				{ "path": "lz", "style": { "navigationBarTitleText": "绿植" } },
-				{ "path": "category", "style": { "navigationBarTitleText": "分类" } },
-				{ "path": "kind", "style": { "navigationBarTitleText": "花束品类" } },
-				{ "path": "lzKind", "style": { "navigationBarTitleText": "绿植品类" } },
-				{ "path": "detail", "style": { "navigationBarTitleText": "商品详情" } },
-				{ "path": "add", "style": { "navigationBarTitleText": "新增商品" } },
-				{ "path": "selectItem", "style": { "navigationBarTitleText": "选择花材" } },
-				{ "path": "img-store", "style": { "navigationBarTitleText": "图库管理" } },
-				{ "path": "goods-name", "style": { "navigationBarTitleText": "填写商品信息" } },
-				{ "path": "freight", "style": { "navigationBarTitleText": "运费设置" } },
-				{ "path": "price-increase", "style": { "navigationBarTitleText": "涨价设置" } },
-				{ "path": "plant", "style": { "navigationBarTitleText": "盆栽绿植" } },
-				{ "path": "flower", "style": { "navigationBarTitleText": "鲜花商品" } },
-				{ "path": "flowerConfirm", "style": { "navigationBarTitleText": "确认" } },
-				{ "path": "flowerResult", "style": { "navigationBarTitleText": "结果" } },
-				{ "path": "plantConfirm", "style": { "navigationBarTitleText": "确认采购" } },
-				{ "path": "plantResult", "style": { "navigationBarTitleText": "结果" } },
-				{ "path": "cgNewPlant", "style": { "navigationBarTitleText": "新绿植采购" } },
-				{ "path": "selectKind", "style": { "navigationBarTitleText": "选择品类" } },
-				{ "path": "cgNewPlantResult", "style": { "navigationBarTitleText": "采购成功" } },
-				{ "path": "stockChange", "style": { "navigationBarTitleText": "库存变动记录" } },
-				{ "path": "plantCg", "style": { "navigationBarTitleText": "绿植采购记录" } },
-				{ "path": "plantCgDetail", "style": { "navigationBarTitleText": "明细" } },
-				{ "path": "pdList", "style": { "navigationBarTitleText": "绿植盘点记录" } },
-				{ "path": "pdGoods", "style": { "navigationBarTitleText": "选择商品" } },
-				{ "path": "pdGoodsConfirm", "style": { "navigationBarTitleText": "确认盘点" } },
-				{ "path": "pdGoodsDetail", "style": { "navigationBarTitleText": "详情" } },
-				{ "path": "categorySort", "style": { "navigationBarTitleText": "排序" } },
-				{ "path": "goodsSort", "style": { "navigationBarTitleText": "排序" } },
-				{ "path": "picTextAdd-Edit", "style": { "navigationBarTitleText": "创建简介" } },
-				{ "path": "result", "style": { "navigationBarTitleText": "添加成功" }}
-			]
-		},
-		{
-			"root": "admin/shopAdmin",
-			"pages": [
-				{ "path": "bind", "style": { "navigationBarTitleText": "管理员绑定" } }
-			]
-		},
-		{
-			"root": "admin/assets",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "收入明细" } }
-			]
-		},
-		{
-			"root": "admin/chat",
-			"pages": [
-				{ "path": "index", "style": { "navigationBarTitleText": "客服", "enablePullDownRefresh": true } },
-				{ "path": "list", "style": { "navigationBarTitleText": "聊天客户", "enablePullDownRefresh": true } },
-				{ "path": "chatPage", "style": { "navigationBarTitleText": "聊天" } }
-			]
-		},
-		{
-			"root": "admin/template",
-			"pages": [
-				{ "path": "index", "style": { "navigationBarTitleText": "选择模板" } }
-			]
-		},
-		{
-			"root": "admin/stat",
-			"pages": [
-				{"path": "profit","style": {"navigationBarTitleText": "利润表"}},
-				{"path": "productSale","style": {"navigationBarTitleText": "花材销量"}},
-				{"path": "kdIncome","style": {"navigationBarTitleText": "收入统计"}},
-				{"path": "incomeStat","style": {"navigationBarTitleText": "应收款"}},
-				{"path": "cgStat","style": {"navigationBarTitleText": "采购统计"}},
-				{"path": "cgItem","style": {"navigationBarTitleText": "采购花材"}},
-				{"path": "mayPayStat","style": {"navigationBarTitleText": "应付款"}},
-				{"path": "kind","style": {"navigationBarTitleText": "生产统计"}},
-				{"path": "kindLz","style": {"navigationBarTitleText": "绿植统计"}},
-				{"path": "makeStat","style": {"navigationBarTitleText": "员工生产统计"}},
-				{"path": "waste","style": {"navigationBarTitleText": "损耗总览"}}
-			]
-		},
-		{
-			"root": "admin/recharge",
-			"pages": [
-				{ "path": "renew", "style": { "navigationBarTitleText": "免费续期"}},
-				{ "path": "rechargeSuccess", "style": { "navigationBarTitleText": "免费续期"}},
-				{ "path": "discount", "style": { "navigationBarTitleText": "充值送钱"}},
-				{ "path": "rechargeCode", "style": { "navigationBarTitleText": "充值码"}}
-			]
-		},
-		{
-			"root": "admin/refund",
-			"pages": [
-				{ "path": "shPayRemind", "style": { "navigationBarTitleText": "提示"}},
-				{ "path": "shPayCp", "style": { "navigationBarTitleText": "成功"}},
-				{ "path": "offlineRemind", "style": { "navigationBarTitleText": "提示"}},
-				{ "path": "offlineCp", "style": { "navigationBarTitleText": "成功"}},
-				{ "path": "debtResult", "style": { "navigationBarTitleText": "结果"}},
-				{ "path": "onlineResult", "style": { "navigationBarTitleText": "结果"}},
-				{ "path": "balanceCp", "style": { "navigationBarTitleText": "结果"}}
-			]
-		},
-		{
-			"root": "admin/billing",
-			"pages": [
-				{ "path": "index", "style": { "navigationBarTitleText": "开单" } },
-				{ "path": "index2", "style": { "navigationBarTitleText": "开单" } },
-				{ "path": "hs", "style": { "navigationBarTitleText": "开单" } },
-				{ "path": "customerPlace", "style": { "navigationBarTitleText": "开单" } },
-				{ "path": "priceChange", "style": { "navigationBarTitleText": "改价", "enablePullDownRefresh": true } },
-				{ "path": "result", "style": { "navigationBarTitleText": "开单状态" } },
-				{ "path": "affirm", "style": { "navigationBarTitleText": "确认订单信息" } },
-				{ "path": "toPay", "style": { "navigationBarTitleText": "等待付款" } },
-				{ "path": "affirmGoods", "style": { "navigationBarTitleText": "确认订单信息" } },
-				{ "path": "affirmGhs", "style": { "navigationBarTitleText": "确认订单信息" } },
-				{ "path": "affirmGhsBook", "style": { "navigationBarTitleText": "确认订单信息" } },
-				{ "path": "affirmPxClass", "style": { "navigationBarTitleText": "确认订单信息" } },
-				{ "path": "customerAffirm", "style": { "navigationBarTitleText": "确认下单" } },
-				{ "path": "confirm", "style": { "navigationBarTitleText": "待确认" } }
-			]
-		},
-		{
-			"root": "admin/order",
-			"pages": [
-				{ "path": "detail", "style": { "navigationBarTitleText": "详情" , "enablePullDownRefresh": true} },
-				{ "path": "info", "style": { "navigationBarTitleText": "详情" } },
-				{ "path": "addOrder", "style": { "navigationBarTitleText": "开单" } },
-				{ "path": "addOrderConfirm", "style": { "navigationBarTitleText": "确认" } },
-				{ "path": "addOrderResult", "style": { "navigationBarTitleText": "结果" } },
-				{ "path": "workOrderResult", "style": { "navigationBarTitleText": "结果" } },
-				{ "path": "refund", "style": { "navigationBarTitleText": "退款" } },
-				{ "path": "refundList", "style": { "navigationBarTitleText": "售后记录" } },
-				{ "path": "refundDetail", "style": { "navigationBarTitleText": "售后详情" } },
-				{ "path": "ship", "style": { "navigationBarTitleText": "发货" } },
-				{ "path": "fill-form", "style": { "navigationBarTitleText": "填写收花人" } },
-				{ "path": "debtList", "style": { "navigationBarTitleText": "待结订单" } },
-				{ "path": "workOrder", "style": { "navigationBarTitleText": "开单" } },
-				{ "path": "modify", "style": { "navigationBarTitleText": "修改" } },
-				{ "path": "clearRemind","style": {"navigationBarTitleText": "如何查看还有多少待结订单"}},
-				{ "path": "itemOrder","style": {"navigationBarTitleText": "订单列表"}},
-				{ "path": "scanPay","style": {"navigationBarTitleText": "收款码流水"}}
-			]
-		},
-		{
-			"root": "admin/express",
-			"pages": [
-				{ "path": "create", "style": { "navigationBarTitleText": "呼叫跑腿" } },
-				{ "path": "success", "style": { "navigationBarTitleText": "配送成功" } }
-			]
-		},
-		{
-			"root": "admin/member",
-			"pages": [
-				{ "path": "detail", "style": { "navigationBarTitleText": "详情" } },
-				{ "path": "modify", "style": { "navigationBarTitleText": "修改地址" } },
-				{"path": "level","style": {"navigationBarTitleText": "会员等级"}},
-				{"path": "buyAmountChange","style": {"navigationBarTitleText": "消费变动记录","enablePullDownRefresh": true}},
-				{"path": "growthChange","style": {"navigationBarTitleText": "成长值变动记录","enablePullDownRefresh": true}},
-				{"path": "integralChange","style": {"navigationBarTitleText": "积分变动记录","enablePullDownRefresh": true}}
-			]
-		},
-		{
-			"root": "pagesStorehouse/shop/",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "门店管理", "enablePullDownRefresh": true } },
-				{ "path": "update", "style": { "navigationBarTitleText": "门店编辑" } }
-			]
-		},
-		{
-			"root": "pagesStorehouse/inventory/",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "盘点", "enablePullDownRefresh": true } },
-				{ "path": "details", "style": { "navigationBarTitleText": "盘点详情" } },
-				{ "path": "update", "style": { "navigationBarTitleText": "新增" } },
-				{ "path": "select", "style": { "navigationBarTitleText": "盘点花材" } }
-			]
-		},
-		{
-			"root": "pagesStorehouse/allot/",
-			"pages": [
-				{ "path": "exDetails", "style": { "navigationBarTitleText": "出库详情" } },
-				{ "path": "addExDetails", "style": { "navigationBarTitleText": "新增" } },
-				{ "path": "allotEx", "style": { "navigationBarTitleText": "调拨出库", "enablePullDownRefresh": true } },
-				{ "path": "exSelect", "style": { "navigationBarTitleText": "选择商品", "enablePullDownRefresh": true } },
-				{ "path": "putDetails", "style": { "navigationBarTitleText": "入库详情" } },
-				{ "path": "allotPut", "style": { "navigationBarTitleText": "调拨入库", "enablePullDownRefresh": true } }
-			]
-		},
-		{
-			"root": "pagesStorehouse/flower/",
-			"pages": [
-				{ "path": "category", "style": { "navigationBarTitleText": "花材管理", "enablePullDownRefresh": true } },
-				{ "path": "manage", "style": { "navigationBarTitleText": "花材", "enablePullDownRefresh": true } }
-			]
-		},
-		{
-			"root": "pagesStorehouse/stockWarn/",
-			"pages": [
-				{ "path": "manage", "style": { "navigationBarTitleText": "库存", "enablePullDownRefresh": true } },
-				{ "path": "detailed", "style": { "navigationBarTitleText": "明细", "enablePullDownRefresh": true } }
-			]
-		},
-		{
-			"root": "pagesPurchase",
-			"pages": [
-				{ "path": "result", "style": { "navigationBarTitleText": "结果" } },
-				{ "path": "selectGhs", "style": { "navigationBarTitleText": "选择供货商" } },
-				{ "path": "add", "style": { "navigationBarTitleText": "新增采购单", "enablePullDownRefresh": true } },
-				{ "path": "gathering", "style": { "navigationBarTitleText": "待结订单", "enablePullDownRefresh": true } },
-				{ "path": "particulars", "style": { "navigationBarTitleText": "", "enablePullDownRefresh": true } },
-				{ "path": "details", "style": { "navigationBarTitleText": "确认订单" } },
-				{ "path": "order", "style": { "navigationBarTitleText": "买花", "enablePullDownRefresh": true } },
-				{ "path": "pb", "style": { "navigationBarTitleText": "已删批发店", "enablePullDownRefresh": true } },
-				{ "path": "open", "style": { "navigationBarTitleText": "商城功能开关", "enablePullDownRefresh": true } },
-				{ "path": "shopping", "style": { "navigationBarTitleText": "采购", "enablePullDownRefresh": true } },
-				{ "path": "ghsProduct", "style": { "navigationBarTitleText": "采购花材", "enablePullDownRefresh": false } },
-				{ "path": "ghsProduct2", "style": { "navigationBarTitleText": "采购花材", "enablePullDownRefresh": false } },
-				{ "path": "setPsd", "style": { "navigationBarTitleText": "设置密码", "enablePullDownRefresh": true } },
-				{ "path": "wechatPay", "style": { "navigationBarTitleText": "待支付"} },
-				{ "path": "aliPay", "style": { "navigationBarTitleText": "待支付"} },
-				{ "path": "cosNext", "style": { "navigationBarTitleText": "下一步", "enablePullDownRefresh": true } },
-				{ "path": "gatherPay", "style": { "navigationBarTitleText": "付款", "enablePullDownRefresh": false } },
-				{ "path": "gatherAliPay", "style": { "navigationBarTitleText": "付款", "enablePullDownRefresh": false } },
-				{ "path": "gatherResult", "style": { "navigationBarTitleText": "结果", "enablePullDownRefresh": false } },
-				{ "path": "purDetails", "style": { "navigationBarTitleText": "采购详情", "enablePullDownRefresh": true } },
-				{ "path": "info", "style": { "navigationBarTitleText": "订单详情", "enablePullDownRefresh": true } },
-				{ "path": "xj", "style": { "navigationBarTitleText": "请选择颜色"} },
-				{ "path": "refund", "style": { "navigationBarTitleText": "申请退款"} },
-				{ "path": "refundResult", "style": { "navigationBarTitleText": "申请状态"} },
-				{ "path": "refundDetail", "style": { "navigationBarTitleText": "退款详情", "enablePullDownRefresh": true } },
-				{ "path": "level", "style": { "navigationBarTitleText": "会员等级", "enablePullDownRefresh": true } },
-				{ "path": "bookProduct", "style": { "navigationBarTitleText": "预订花材", "enablePullDownRefresh": false } },
-				{ "path": "bookProduct2", "style": { "navigationBarTitleText": "预订花材", "enablePullDownRefresh": false } },
-				{ "path": "bookExplain", "style": { "navigationBarTitleText": "预订说明", "enablePullDownRefresh": true } },
-				{ "path": "refundList","style": {"navigationBarTitleText": "售后记录", "enablePullDownRefresh": true } },
-				{ "path": "readMe","style": {"navigationBarTitleText": "购买须知", "enablePullDownRefresh": true } },
-				{ "path": "afterSale","style": {"navigationBarTitleText": "拍照示例", "enablePullDownRefresh": true } },
-				{ "path": "bookReadMe","style": {"navigationBarTitleText": "预订须知", "enablePullDownRefresh": true } },
-				{ "path": "addCg","style": {"navigationBarTitleText": "新增采购", "enablePullDownRefresh": false } },
-				{ "path": "addCgConfirm","style": {"navigationBarTitleText": "确认订单", "enablePullDownRefresh": false } },
-				{ "path": "addCgResult","style": {"navigationBarTitleText": "结果", "enablePullDownRefresh": false } },
-				{ "path": "confirmTake","style": {"navigationBarTitleText": "确认收货", "enablePullDownRefresh": false } },
-				{ "path": "contact","style": {"navigationBarTitleText": "联系我们", "enablePullDownRefresh": false } },
-				{ "path": "appPay","style": {"navigationBarTitleText": "支付", "enablePullDownRefresh": false } }
-			]
-		},
-		{
-			"root": "pagesArrears",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "客户欠款", "enablePullDownRefresh": true } },
-				{ "path": "details", "style": { "navigationBarTitleText": "欠款明细", "enablePullDownRefresh": true } }
-			]
-		},
-		{
-			"root": "pagesInvite",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "邀请开店", "enablePullDownRefresh": true } },
-				{ "path": "inviteShop", "style": { "navigationBarTitleText": "", "enablePullDownRefresh": true } },
-				{ "path": "inviteHdShop", "style": { "navigationBarTitleText": "", "enablePullDownRefresh": true } }
-			]
-		},
-		{
-			"root": "pagesStatistics",
-			"pages": [
-				{ "path": "business", "style": { "navigationBarTitleText": "营业概况", "enablePullDownRefresh": true } },
-				{ "path": "pagesPublicity", "style": { "navigationBarTitleText": "" } },
-				{ "path": "trainingClass", "style": { "navigationBarTitleText": "培训班", "enablePullDownRefresh": true } },
-				{ "path": "trainingClassEdit", "style": { "navigationBarTitleText": "培训班编辑" } }
-			]
-		},
-		{
-			"root": "admin/jc",
-			"pages": [
-				{"path": "index","style": {"navigationBarTitleText": "新手使用教程"}},
-				{"path": "video","style": {"navigationBarTitleText": "播放视频"}}
-			]
-		},
-		{
-			"root": "admin/clear",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "结账单" } },
-				{ "path": "info", "style": { "navigationBarTitleText": "详情" } },
-				{ "path": "alipay", "style": { "navigationBarTitleText": "付款" } }
-			]
-		},
-		{
-			"root": "admin/picText",
-			"pages": [
-				{"path": "picTextList", "style": {"navigationBarTitleText": "图文列表"}},
-				{"path": "picTextAdd", "style": {"navigationBarTitleText": "创建图文"}},
-				{"path": "preview", "style": {"navigationBarTitleText": "内容预览"}},
-				{"path": "demo", "style": {"navigationBarTitleText": "图文示例"}},
-				{"path": "svg-demo", "style": {"navigationBarTitleText": "SVG示例"}},
-				{"path": "viewerDemo", "style": {"navigationBarTitleText": "图文预览"}}
-			]
-		},
-		{
-			"root": "admin/delivery",
-			"pages": [
-				{ "path": "deliveryManage", "style": { "navigationBarTitleText": "跑腿设置" } },
-				{ "path": "shopDetail", "style": { "navigationBarTitleText": "门店" } },
-				{ "path": "allDelivery", "style": { "navigationBarTitleText": "配送平台报价" } }
-			]
-		},
-		{
-			"root": "admin/hb",
-			"pages": [
-				{ "path": "list", "style": { "navigationBarTitleText": "红包列表", "enablePullDownRefresh": true } },
-				{ "path": "send", "style": { "navigationBarTitleText": "发红包" } },
-				{ "path": "ruleList", "style": { "navigationBarTitleText": "红包规则列表" } },
-				{ "path": "sendHb", "style": { "navigationBarTitleText": "创建充值送红包" } },
-				{ "path": "result", "style": { "navigationBarTitleText": "发放成功" } }
-			]
-		}
-	],
-	"globalStyle": {
-		"navigationBarBackgroundColor": "#fff",
-		"navigationBarTitleText": "花掌柜",
-		"navigationBarTextStyle": "black",
-		"backgroundColor": "#f9fbfc"
-	},
-	"tabBar": {
-		"color": "#444444",
-		"selectedColor": "#09C567",
-		"borderStyle": "black",
-		"backgroundColor": "#ffffff",
-		"list": [
-			{
-				"pagePath": "admin/home/mall",
-				"iconPath": "static/images/common/shop-tab_no.png",
-				"selectedIconPath": "static/images/common/shop-tab.png",
-				"text": "店铺"
-			},
-			{
-				"pagePath": "admin/home/order",
-				"iconPath": "static/images/common/order-no.png",
-				"selectedIconPath": "static/images/common/order-is.png",
-				"text": "订单"
-			},
-			{
-				"pagePath": "admin/home/member",
-				"iconPath": "static/images/common/member-no.png",
-				"selectedIconPath": "static/images/common/member-is.png",
-				"text": "客户"
-			},
-			{
-				"pagePath": "admin/home/workbench",
-				"iconPath": "static/images/common/buy-no.png",
-				"selectedIconPath": "static/images/common/buy-is.png",
-				"text": "进货"
-			},
-			{
-				"pagePath": "admin/home/me",
-				"iconPath": "static/images/common/user-no.png",
-				"selectedIconPath": "static/images/common/user-is.png",
-				"text": "我的"
-			}
-		]
-	}
-}

+ 1 - 1
mallApp/src/pages.json

@@ -1,7 +1,7 @@
 {
     "pages": [{ "path": "pages/home/recent", "style": { "navigationBarTitleText": "我的花店","enablePullDownRefresh":true} },
         { "path": "pages/home/index", "style": { "navigationBarTitleText": "首页" } },
-        { "path": "pages/home/category", "style": { "navigationBarTitleText": "绿植花束" } },
+        { "path": "pages/home/category", "style": { "navigationBarTitleText": "花束" } },
         { "path": "pages/home/mall", "style": { "navigationBarTitleText": "相册" } },
         { "path": "pages/home/shop", "style": { "navigationBarTitleText": "门店" } },
         { "path": "pages/home/user", "style": { "navigationBarTitleText": "我的" } },

+ 4 - 2
mallApp/src/pages/callback/pay.vue

@@ -15,10 +15,12 @@
         <view class="status-text app-size-36 app-bold">{{ pageTit }}</view>
         <block v-if="pageStatus == 1 || pageStatus == 2">
 
-          <view class="price" v-if="Number(orderInfo.hbAmount)>0 || Number(orderInfo.discountAmount)>0">
-            <view style="text-decoration:line-through;font-size:30upx;font-weight:bold;color:#8a7f7f;">¥{{ parseFloat((Number(orderInfo.hbAmount)+Number(orderInfo.actPrice)+Number(orderInfo.discountAmount)).toFixed(2)) }}</view>
+          <view class="price" v-if="Number(orderInfo.hbAmount)>0 || Number(orderInfo.discountAmount)>0 || Number(orderInfo.orderReachDiscountPrice)>0">
+            <view style="text-decoration:line-through;font-size:30upx;font-weight:bold;color:#8a7f7f;">¥{{ parseFloat((Number(orderInfo.hbAmount)+Number(orderInfo.actPrice)+Number(orderInfo.discountAmount)+Number(orderInfo.orderReachDiscountPrice)).toFixed(2)) }}</view>
             <view style="color:red;font-size:30upx;font-weight:bold;margin-bottom:10upx;" v-if="Number(orderInfo.hbAmount)>0">红包 -¥{{ parseFloat(orderInfo.hbAmount) }}</view>
             <view style="color:red;font-size:30upx;font-weight:bold;margin-bottom:10upx;" v-if="Number(orderInfo.discountAmount)>0">订单优惠 -¥{{ parseFloat(orderInfo.discountAmount) }}</view>
+            <div class="order-num app-color-3" style="color:red;font-size:30upx;margin-top:10upx;margin-bottom:10upx;font-weight:bold;" 
+            v-if="orderInfo.orderReachDiscountPrice && Number(orderInfo.orderReachDiscountPrice)>0">整单满减 -¥{{ parseFloat(orderInfo.orderReachDiscountPrice) }}</div>
             <span class="app-size-36 app-bold">¥{{ orderInfo.actPrice?parseFloat(orderInfo.actPrice):0 }}</span>
           </view>
           <view class="price" v-else>

+ 94 - 61
mallApp/src/pages/hb/list.vue

@@ -1,62 +1,68 @@
 <template>
 	<view class="app-content coupon-list">
 		<AppTabs :tabs="tabs" :isFixed="true" :currentTab="tabIndex" @change="change" itemWidth="33.3333%" />
-		<view class="list-wrap" :class="{'expired' : tabIndex == 2}">
-			<block v-if="!$util.isEmpty(list.data)">
-				<view class="list" v-for="(item, index) in list.data" :key="index">
-					<view class="list-img">
-						<!-- 已过期 -->
-						<template v-if="tabIndex == 2">
-							<img :src="`${constant.imgUrl}/retail/coupon/expired.png`" alt mode="widthFix" />
-						</template>
-						<template v-else>
-							<img :src="`${constant.imgUrl}/retail/coupon/bg.png`" alt />
-						</template>
-					</view>
-					<!-- 列表 -->
-					<view class="list-det">
-						<view class="list-det-left">
-							<view class="price-wrap">
-								<span>¥</span>
-								<span class="price">{{ item.amount?parseFloat(item.amount):0 }}</span>
-							</view>
-							<view v-if="item.minConsume == 0" class="full-reduc app-size-28">无门槛</view>
-							<view v-else class="full-reduc app-size-28">满{{ item.minConsume?parseFloat(item.minConsume):0 }}可用</view>
-						</view>
-						<view class="list-det-right">
-							<view class="coupon-message">
-								<view class="title">{{ item.name }}</view>
-								<view class="shop">所属门店:{{ item.merchantName }}</view>
-								<template v-if="item.status != -1">
-									<view class="date" v-if="item.beginTime * 1000 > Date.now()">生效时间:{{ item.beginTime | formatTime('YYYY-MM-DD') }}</view>
-									<view class="date" v-if="item.endTime == 4102416000">有效期:永久可用</view>
-									<view class="date" v-else>有效期至:{{ item.endTime | formatTime('YYYY-MM-DD') }}</view>
-								</template>
-							</view>
-							<!-- 未使用 -->
-							<template v-if="item.status == 0">
-								<button class="button-com red big">待用</button>
-							</template>
-							<!-- 已使用 -->
-							<template v-else-if="item.status == 1">
-								<view class="icon-wrap">
-									<i class="iconfont iconyishiyong"></i>
-								</view>
-							</template>
+		<scroll-view class="list-scroll" scroll-y lower-threshold="80" :scroll-top="scrollTop" @scrolltolower="reachBottom">
+			<view class="list-wrap" :class="{'expired' : tabIndex == 2}">
+				<block v-if="!$util.isEmpty(list.data)">
+					<view class="list" v-for="(item, index) in list.data" :key="index">
+						<view class="list-img">
 							<!-- 已过期 -->
+							<template v-if="tabIndex == 2">
+								<img :src="`${constant.imgUrl}/retail/coupon/expired.png`" alt mode="widthFix" />
+							</template>
 							<template v-else>
-								<view class="icon-wrap">
-									<i class="iconfont iconyiguoqi"></i>
-								</view>
+								<img :src="`${constant.imgUrl}/retail/coupon/bg.png`" alt />
 							</template>
 						</view>
+						<!-- 列表 -->
+						<view class="list-det">
+							<view class="list-det-left">
+								<view class="price-wrap">
+									<span>¥</span>
+									<span class="price">{{ item.amount?parseFloat(item.amount):0 }}</span>
+								</view>
+								<view v-if="item.minConsume == 0" class="full-reduc app-size-28">无门槛</view>
+								<view v-else class="full-reduc app-size-28">满{{ item.minConsume?parseFloat(item.minConsume):0 }}可用</view>
+							</view>
+							<view class="list-det-right">
+								<view class="coupon-message">
+									<view class="title">{{ item.name }}</view>
+									<view class="shop">所属门店:{{ item.merchantName }}</view>
+									<template v-if="item.status != -1">
+										<view class="date" v-if="item.beginTime * 1000 > Date.now()">生效时间:{{ item.beginTime | formatTime('YYYY-MM-DD') }}</view>
+										<view class="date" v-if="item.endTime == 4102416000">有效期:永久可用</view>
+										<view class="date" v-else>有效期至:{{ item.endTime | formatTime('YYYY-MM-DD') }}</view>
+									</template>
+								</view>
+								<!-- 未使用 -->
+								<template v-if="item.status == 0">
+									<button class="button-com red big">待用</button>
+								</template>
+								<!-- 已使用 -->
+								<template v-else-if="item.status == 1">
+									<view class="icon-wrap">
+										<i class="iconfont iconyishiyong"></i>
+									</view>
+								</template>
+								<!-- 已过期 -->
+								<template v-else>
+									<view class="icon-wrap">
+										<i class="iconfont iconyiguoqi"></i>
+									</view>
+								</template>
+							</view>
+						</view>
+					</view>
+					<view class="load-more">
+						<text v-if="isRequesting">加载中...</text>
+						<text v-else-if="list.finished">没有更多了</text>
 					</view>
-				</view>
-			</block>
-			<block v-else>
-				<app-wrapper-empty title="暂无数据" :is-empty="$util.isEmpty(list.data)" />
-			</block>
-		</view>
+				</block>
+				<block v-else>
+					<app-wrapper-empty title="暂无数据" :is-empty="$util.isEmpty(list.data)" />
+				</block>
+			</view>
+		</scroll-view>
 	</view>
 </template>
 
@@ -76,6 +82,8 @@ export default {
 		return {
 			constant: this.$constant,
 			tabIndex: 0,
+			scrollTop: 0,
+			isRequesting: false,
 			tabs: [
 				{
 					name: '未使用',
@@ -107,34 +115,43 @@ export default {
 		})
 	},
 	onReachBottom() {
-		if (this.list.moreData == 1) {
-			this.getHbList().then(res => {
-				uni.stopPullDownRefresh()
-			})
-		} else {
-			uni.stopPullDownRefresh()
-		}
+		this.reachBottom()
 	},
 	methods: {
 		async init() {
 			this.getHbList()
 		},
 		getHbList() {
+			if (this.isRequesting || this.list.finished) {
+				return Promise.resolve(false)
+			}
+			this.isRequesting = true
+			this.list.loading = true
 			let status = this.tabs[this.tabIndex].status
-			return getList({ status: status }).then(res => {
+			return getList({ status: status, page: this.list.page }).then(res => {
 				if(res.code == 1){
 					this.completes(res)
 				}else{
+					this.list.loading = false
 					this.$msg(res.msg || '获取红包列表失败')
 				}
+			}).finally(() => {
+				this.isRequesting = false
 			})
 		},
+		reachBottom() {
+			if (this.list.finished) {
+				return false
+			}
+			return this.getHbList()
+		},
 		change(e) {
 			if (this.tabIndex == e.index) {
 				return false
 			} else {
-				this.tabIndex = e.index
 				this.resetList()
+				this.tabIndex = e.index
+				this.scrollTop = 0
 				this.getHbList()
 			}
 		}
@@ -145,8 +162,18 @@ export default {
 <style lang="scss" scoped>
 	.coupon-list {
 		position: relative;
+		height: 100vh;
+		overflow: hidden;
+		display: flex;
+		flex-direction: column;
+		.list-scroll {
+			flex: 1;
+			height: 100%;
+		}
 		.list-wrap {
-			padding: 100upx 22upx 0;
+			min-height: 100%;
+			box-sizing: border-box;
+			padding: 100upx 22upx 40upx;
 			.list {
 				position: relative;
 				margin-bottom: 20upx;
@@ -233,6 +260,12 @@ export default {
 					}
 				}
 			}
+			.load-more {
+				padding: 10upx 0 30upx;
+				text-align: center;
+				font-size: 24upx;
+				color: #999;
+			}
 			// 过期
 			&.expired {
 				.list-det-right {

+ 2 - 2
mallApp/src/pages/home/category.vue

@@ -135,8 +135,8 @@ export default {
       filterTabs: [
         { name: '全部', value: -1 },
         { name: '鲜花', value: 0 },
-        { name: '绿植', value: 1 },
-        { name: '花材', value: 99 }
+        { name: '仿真花', value: 1 },
+        { name: '买绿植', value: 99 }
       ],
       currentFilterTab: 0 // 当前选中的筛选标签
     }

+ 2 - 2
mallApp/src/pages/home/mall.vue

@@ -24,13 +24,13 @@
         <button class="buy-material-btn" @click="buyProduct()">
           <view class="btn-content">
             <text class="material-icon">🌸</text>
-            <text class="btn-text">花材</text>
+            <text class="btn-text">绿植</text>
           </view>
         </button>
         <button class="buy-flower-btn" @click="buyHs()">
           <view class="btn-content">
             <text class="flower-icon">💐</text>
-            <text class="btn-text">绿植花束</text>
+            <text class="btn-text">花束</text>
           </view>
         </button>
       </view>

+ 9 - 9
mallApp/src/pages/home/recent.vue

@@ -147,17 +147,17 @@
               <view class="balance-item" @click.stop="recharge(item)" v-if="item.balance > 0" >
                 <text class="balance-label">可用余额</text>
                 <text class="balance-amount positive" >¥{{ parseFloat(item.balance) }}</text >
-                <text class="balance-action">去充值</text>
+                <text class="balance-action">查看</text>
               </view>
             </view>
 
             <!-- 操作按钮组 -->
             <view class="action-buttons">
-              <view class="action-btn secondary" :class="{ disabled: item.openShop === 0 }" @click.stop="bug(item)">
-                <text class="btn-text">🌸 花材</text>
-              </view>
               <view class="action-btn secondary" :class="{ disabled: item.openShop === 0 }" @click.stop="hs(item)">
-                <text class="btn-text">💐 绿植花束</text>
+                <text class="btn-text">💐 花束</text>
+              </view>
+              <view class="action-btn secondary" :class="{ disabled: item.openShop === 0 }" @click.stop="bug(item)">
+                <text class="btn-text">🪴 绿植花材</text>
               </view>
             </view>
 
@@ -827,12 +827,12 @@ page {
       border-radius: 12upx;
 
       .balance-label {
-        font-size: 32upx;
+        font-size: 38upx;
         color: #666;
       }
 
       .balance-amount {
-        font-size: 34upx;
+        font-size: 38upx;
         font-weight: 600;
 
         &.negative {
@@ -845,13 +845,13 @@ page {
       }
 
       .balance-action {
-        font-size: 34upx;
+        font-size: 38upx;
         color: #667eea;
         text-decoration: underline;
         font-weight: bold;
       }
       .balance-action-2 {
-        font-size: 34upx;
+        font-size: 38upx;
         color: #ff4757;
         text-decoration: underline;
         font-weight: bold;

+ 1 - 1
mallApp/src/pages/item/item.vue

@@ -17,7 +17,7 @@
 			<view class="buy-flower-container">
 				<button class="buy-mall-btn" @click="buyHs()">
 					<view class="btn-content">
-						<text class="btn-text">买绿植花束</text>
+						<text class="btn-text">买花束</text>
 					</view>
 				</button>
 				<button @click="scanCode()" style="background: linear-gradient(135deg, #ff6b6b 0%, #ee5a24 100%);border: none;">

+ 1 - 1
开发http/hdApp/src/manifest.json

@@ -3,7 +3,7 @@
     "appid" : "__UNI__4079DC1",
     "description" : "花店管家婆",
     "versionName" : "2.3.2",
-    "versionCode" : 233,
+    "versionCode" : 234,
     "transformPx" : true,
     /* 5+App特有相关 */
     "app-plus" : {

+ 1 - 1
开发https/hdApp/src/config.js

@@ -4,4 +4,4 @@ export const FORMALHOST = 'https://shop.huaml.com'
 export const IMGHOST = 'https://img.huaml.com'
 export const CURRENT_ENV = 'dev'
 export const WSSHOST = 'wss://chat.shop.huaml.com'
-export const APP_VERSION = '2.3.3'
+export const APP_VERSION = '2.3.4'

+ 2 - 2
开发https/hdApp/src/manifest.json

@@ -2,8 +2,8 @@
     "name" : "花掌柜",
     "appid" : "__UNI__4079DC1",
     "description" : "花店管家婆",
-    "versionName" : "2.3.3",
-    "versionCode" : 233,
+    "versionName" : "2.3.4",
+    "versionCode" : 234,
     "transformPx" : true,
     /* 5+App特有相关 */
     "app-plus" : {

+ 1 - 1
线上/hdApp/src/config.js

@@ -4,4 +4,4 @@ export const FORMALHOST = 'https://shop.huahb.cn'
 export const IMGHOST = 'https://img.huahb.cn'
 export const CURRENT_ENV = 'production'
 export const WSSHOST = 'wss://chat.shop.huahb.cn'
-export const APP_VERSION = '2.3.3'
+export const APP_VERSION = '2.3.4'

+ 2 - 2
线上/hdApp/src/manifest.json

@@ -2,8 +2,8 @@
     "name" : "花掌柜",
     "appid" : "__UNI__4079DC1",
     "description" : "花店管家婆",
-    "versionName" : "2.3.3",
-    "versionCode" : 233,
+    "versionName" : "2.3.4",
+    "versionCode" : 234,
     "transformPx" : true,
     /* 5+App特有相关 */
     "app-plus" : {