|
@@ -72,7 +72,8 @@ var productDetail = new Vue({
|
|
|
isShowCaimeiShop:false,
|
|
|
isHideButton:false,
|
|
|
returnGoodsStutas: false, // 当前商品是否为特殊商品
|
|
|
- helpContent: '' // 退货提示
|
|
|
+ helpContent: '', // 退货提示
|
|
|
+ tooltipVisible:false
|
|
|
},
|
|
|
filters: {
|
|
|
TypeFormat: function (value) {
|
|
@@ -388,44 +389,63 @@ var productDetail = new Vue({
|
|
|
looseBody();
|
|
|
}
|
|
|
},
|
|
|
- numberSub: function () {
|
|
|
- this.number -= this.priceObj.step;
|
|
|
+ handleNumberSub () {
|
|
|
+ if(this.priceObj.step === 2){
|
|
|
+ this.number -= this.priceObj.minBuyNumber
|
|
|
+ }else{
|
|
|
+ this.number -= this.priceObj.step
|
|
|
+ }
|
|
|
console.log('number', this.number)
|
|
|
this.numberResize();
|
|
|
},
|
|
|
- numberAdd: function () {
|
|
|
- this.number += this.priceObj.step;
|
|
|
+ handleNumberAdd () {
|
|
|
+ if(this.priceObj.step === 2){
|
|
|
+ this.number += this.priceObj.minBuyNumber
|
|
|
+ }else{
|
|
|
+ this.number += this.priceObj.step
|
|
|
+ }
|
|
|
console.log('number', this.number)
|
|
|
this.numberResize();
|
|
|
|
|
|
},
|
|
|
- numberChange: function () {
|
|
|
- this.number = Math.ceil(this.number / this.priceObj.step) * this.priceObj.step;
|
|
|
- this.numberResize();
|
|
|
-
|
|
|
+ handleNumberChange (event) {
|
|
|
+ const value = event.target.value;
|
|
|
+ console.log('value',value)
|
|
|
+ if (value < this.priceObj.minBuyNumber) {
|
|
|
+ this.number = this.priceObj.minBuyNumber
|
|
|
+ } else {
|
|
|
+ if (this.priceObj.step === 2) {
|
|
|
+ if (value % this.priceObj.minBuyNumber !== 0) {
|
|
|
+ this.$message.error('购买量必须为起订量的整数倍');
|
|
|
+ this.number = this.priceObj.minBuyNumber
|
|
|
+ } else if (value > this.priceObj.stock) {
|
|
|
+ this.number = this.priceObj.stock
|
|
|
+ } else {
|
|
|
+ this.number = value
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ if (value > this.priceObj.stock) {
|
|
|
+ this.productCount = this.priceObj.stock
|
|
|
+ } else {
|
|
|
+ this.productCount = value
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
},
|
|
|
- numberResize: function () {
|
|
|
- var _self = this;
|
|
|
+ numberResize () {
|
|
|
if (this.number < this.priceObj.minBuyNumber) {
|
|
|
this.number = this.priceObj.minBuyNumber;
|
|
|
}
|
|
|
if (this.number > this.productStock) {
|
|
|
this.number = this.productStock;
|
|
|
}
|
|
|
- // if (this.priceObj.ladderPriceFlag) {
|
|
|
- // this.ladderList.forEach(function (ladder) {
|
|
|
- // if (_self.number >= ladder.buyNum) {
|
|
|
- // _self.priceObj.price = ladder.buyPrice;
|
|
|
- // }
|
|
|
- // });
|
|
|
- // }
|
|
|
console.log('number', this.number)
|
|
|
},
|
|
|
handleCollection:function (){// 收藏操作
|
|
|
- var _self = this;
|
|
|
+ const _self = this;
|
|
|
console.log('_self.userId',_self.userId)
|
|
|
- if (_self.userId > 0) {
|
|
|
- ProductApi.getProductUserLike({userId: _self.userId, productId: _self.productId}, function (response) {
|
|
|
+ if (this.userId > 0) {
|
|
|
+ ProductApi.getProductUserLike({userId: this.userId, productId: this.productId}, function (response) {
|
|
|
if (response.code === 0 && response.data) {
|
|
|
_self.collectionType = !_self.collectionType
|
|
|
CAIMEI.dialog(response.data,false);
|
|
@@ -434,7 +454,7 @@ var productDetail = new Vue({
|
|
|
}
|
|
|
});
|
|
|
}else{
|
|
|
- _self.toLogin();
|
|
|
+ this.toLogin();
|
|
|
}
|
|
|
},
|
|
|
toLogin: function () {
|
|
@@ -606,24 +626,24 @@ var productDetail = new Vue({
|
|
|
pros.number--
|
|
|
}
|
|
|
}
|
|
|
- _self.numberChange(pros);
|
|
|
+ this.numberChange(pros);
|
|
|
},
|
|
|
supportingNumberAdd: function(pros){ // 配套商品数量加加
|
|
|
- var _self = this;
|
|
|
+ const _self = this;
|
|
|
if (pros.step === 2) {
|
|
|
pros.number += pros.minBuyNumber
|
|
|
} else {
|
|
|
pros.number++
|
|
|
}
|
|
|
- _self.numberChange(pros);
|
|
|
+ this.numberChange(pros);
|
|
|
},
|
|
|
supportingNumberChange: function(pros){ // 配套商品数量输入
|
|
|
- var _self = this;
|
|
|
+ const _self = this;
|
|
|
pros.number = Math.ceil(pros.number/pros.step)*pros.step;
|
|
|
- _self.numberChange(pros);
|
|
|
+ this.numberChange(pros);
|
|
|
},
|
|
|
- numberChange: function(pros){
|
|
|
- var _self = this;
|
|
|
+ numberChange(pros){
|
|
|
+ const _self = this;
|
|
|
if(pros.ladderPriceFlag){
|
|
|
pros.ladderPrices.forEach(function(ladder){
|
|
|
if(pros.number>=ladder.buyNum){
|