lilei 9 months ago
parent
commit
58c88248f6

+ 6 - 6
pagesA/digitalShelf/choosePart.vue

@@ -164,11 +164,11 @@
 										</view>
 										<view class="item-detail-text">
 											<view class="flex align_center qty-box">
-												<view class="qty-btn" @click="updateCartNums(item.qty-1,'cart_'+item.productSn,item.currentInven||999999,1)" :class="(item.qty <= 0)?'qty-disabled':''">-</view>
-												<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+20+'px'}"><input type="number" @blur="e=>updateCartNums(Number(e.detail.value),'cart_'+item.productSn,item.currentInven||999999,0)" :value="item.qty"/></view>
-												<view class="qty-btn" @click="updateCartNums(item.qty+1,'cart_'+item.productSn,item.currentInven||999999,1)" :class="(item.qty >= (item.currentInven||999999))?'qty-disabled':''">+</view>
+												<view class="qty-btn" @click="updateCartNums(item.qty-1,'cart_'+item.productSn,item.currentInven||999,1)" :class="(item.qty <= 0)?'qty-disabled':''">-</view>
+												<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+20+'px'}"><input type="number" @blur="e=>updateCartNums(Number(e.detail.value),'cart_'+item.productSn,item.currentInven||999,0)" :value="item.qty"/></view>
+												<view class="qty-btn" @click="updateCartNums(item.qty+1,'cart_'+item.productSn,item.currentInven||999,1)" :class="(item.qty >= (item.currentInven||999))?'qty-disabled':''">+</view>
 											</view>
-											<!-- <uni-number-box @change="e=>updateCartNums({value:e,index:'cart_'+item.productSn})" v-model="item.qty" :index="'cart_'+item.productSn" :min="0" :max="item.currentInven||999999"></uni-number-box> -->
+											<!-- <uni-number-box @change="e=>updateCartNums({value:e,index:'cart_'+item.productSn})" v-model="item.qty" :index="'cart_'+item.productSn" :min="0" :max="item.currentInven||999"></uni-number-box> -->
 										</view>
 									</view>
 								</view>
@@ -657,9 +657,9 @@
 					}
 				}
 				// 同步更新Vin适配配件列表上的
-				this.updateListData(sn.split('_')[1],'vinPartList',Number(value),!!value)
+				this.updateListData(sn.split('_')[1],'vinPartList',Number(v),!!v)
 				// 同步更新其它配件列表上的
-				this.updateListData(sn.split('_')[1],'partList',Number(value),!!value)
+				this.updateListData(sn.split('_')[1],'partList',Number(v),!!v)
 			},
 			// 打开购物车
 			openCart(){

+ 4 - 4
pagesA/digitalShelf/components/otherPartItem.vue

@@ -44,7 +44,7 @@
 								>+</view>
 								<view class="flex align_center qty-box" v-else>
 									<view class="qty-btn" @click="changeQty(item.qty-1,item,1)" :class="(item.qty <= 0)?'qty-disabled':''">-</view>
-									<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+'px'}"><input type="number" @blur="e=>changeQty(Number(e.detail.value),item,0)" v-model="item.qty"/></view>
+									<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+8+'px'}"><input type="number" @blur="e=>changeQty(Number(e.detail.value),item,0)" v-model="item.qty"/></view>
 									<view class="qty-btn" @click="changeQty(item.qty+1,item,1)" :class="(item.qty >= item.currentInven)?'qty-disabled':''">+</view>
 								</view>
 								<!-- <uni-number-box v-else :hideInput="true" @change="e=>updateNums(e,item.productSn)" v-model="item.qty" :min="0" :max="item.currentInven"></uni-number-box> -->
@@ -53,8 +53,8 @@
 								<text @click="addPart(item)" v-if="!item.checked" class="phtxt">我要急送</text>
 								<view class="flex align_center qty-box" v-else>
 									<view class="qty-btn" @click="changeQty(item.qty-1,item,1)" :class="(item.qty <= 0)?'qty-disabled':''">-</view>
-									<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+'px'}"><input type="number" @blur="e=>changeQty(Number(e.detail.value),item,0)" v-model="item.qty"/></view>
-									<view class="qty-btn" @click="changeQty(item.qty+1,item,1)" :class="(item.qty >= 999999)?'qty-disabled':''">+</view>
+									<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+8+'px'}"><input type="number" @blur="e=>changeQty(Number(e.detail.value),item,0)" v-model="item.qty"/></view>
+									<view class="qty-btn" @click="changeQty(item.qty+1,item,1)" :class="(item.qty >= 999)?'qty-disabled':''">+</view>
 								</view>
 								<!-- <uni-number-box v-else :hideInput="true" @change="e=>updateNums(e,item.productSn)" v-model="item.qty" :min="0"></uni-number-box> -->
 							</view>
@@ -113,7 +113,7 @@
 				this.$emit('addPart', item, 'other')
 			},
 			changeQty(value,item,type) {
-				const max = item.currentInven || 999999
+				const max = item.currentInven || 999
 				const v = value > max ? max : value
 				if(value > max && type == 0){
 					this.updateNums(value,item.productSn)

+ 4 - 4
pagesA/digitalShelf/components/vinPartItem.vue

@@ -48,7 +48,7 @@
 								>+</view>
 								<view class="flex align_center qty-box" v-else>
 									<view class="qty-btn" @click="changeQty(item.qty-1,item,1)" :class="(item.qty <= 0)?'qty-disabled':''">-</view>
-									<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+'px'}"><input type="number" @blur="e=>changeQty(Number(e.detail.value),item,0)" :value="item.qty"/></view>
+									<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+8+'px'}"><input type="number" @blur="e=>changeQty(Number(e.detail.value),item,0)" :value="item.qty"/></view>
 									<view class="qty-btn" @click="changeQty(item.qty+1,item,1)" :class="(item.qty >= item.currentInven)?'qty-disabled':''">+</view>
 								</view>
 								<!-- <uni-number-box v-else :hideInput="true" @change="e=>updateVinNums(e,item.productSn)" v-model="item.qty" :min="0" :max="item.currentInven"></uni-number-box> -->
@@ -57,8 +57,8 @@
 								<text v-if="!item.checked" @click="addPart(item)" class="phtxt">我要急送</text>
 								<view class="flex align_center qty-box" v-else>
 									<view class="qty-btn" @click="changeQty(item.qty-1,item,1)" :class="(item.qty <= 0)?'qty-disabled':''">-</view>
-									<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+'px'}"><input type="number" @blur="e=>changeQty(Number(e.detail.value),item,0)" :value="item.qty"/></view>
-									<view class="qty-btn" @click="changeQty(item.qty+1,item,1)" :class="(item.qty >= 999999)?'qty-disabled':''">+</view>
+									<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+8+'px'}"><input type="number" @blur="e=>changeQty(Number(e.detail.value),item,0)" :value="item.qty"/></view>
+									<view class="qty-btn" @click="changeQty(item.qty+1,item,1)" :class="(item.qty >= 999)?'qty-disabled':''">+</view>
 								</view>
 								<!-- <uni-number-box v-else :hideInput="true" @change="e=>updateVinNums(e,item.productSn)" v-model="item.qty" :min="0"></uni-number-box> -->
 							</view>
@@ -124,7 +124,7 @@
 				this.$emit('addPart', item, 'vin')
 			},
 			changeQty(value,item,type) {
-				const max = item.currentInven || 999999
+				const max = item.currentInven || 999
 				const v = value > max ? max : value
 				if(value > max && type == 0){
 					this.updateNums(value,item.productSn)

+ 17 - 5
pagesB/cart/productitem.vue

@@ -28,7 +28,7 @@
 							<view v-if="item.status==1&&item.dealerScopeFlag==1" :style="{opacity:!item.edit?1:0,width:!item.edit?'auto':0}">
 								<view class="flex align_center qty-box">
 									<view class="qty-btn" @click="changeQty(item.qty-1,item,1)" :class="(item.qty <= 1)?'qty-disabled':''">-</view>
-									<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+'px'}"><input type="number" @blur="changeQty(item.qty,item,0)" v-model="item.qty"/></view>
+									<view class="qty-num" :style="{width:Number(item.qty).toString().length*8+10+'px'}"><input type="number" @input="inputQty(item)" @blur="changeQty(item.qty,item,0)" v-model="item.qty"/></view>
 									<view class="qty-btn" @click="changeQty(item.qty+1,item,1)" :class="(item.qty >= 999)?'qty-disabled':''">+</view>
 								</view>
 							</view>
@@ -62,19 +62,31 @@
 		},
 		data() {
 			return {
+				isChange: false
 			}
 		},
 		methods: {
+			inputQty(item){
+				this.isChange = true
+			},
 			changeQty(value,item,type) {
 				const max = 999
-				const v = value > max ? max : (value==''?1:value)
-				if(value > max && type == 0){
+				const v = value > max ? max : (value==''||value==0?1:value)
+				if(type == 0){
+					if(!this.isChange){
+						return
+					}
 					this.updateNums(value,item.cartSn)
 					this.$nextTick(()=>{
-						this.updateNums(v,item.cartSn)
+						setTimeout(()=>{
+							this.updateNums(v,item.cartSn)
+							this.isChange = false
+						},100)
 					})
 				}else{
-					this.updateNums(v,item.cartSn)
+					if(value<=max && value >= 1){
+						this.updateNums(v,item.cartSn)
+					}
 				}
 			},
 			updateNums(e, cartSn) {