diff --git a/Utils/physicalObject.js b/Utils/physicalObject.js index b7d6ad3..22b56ea 100644 --- a/Utils/physicalObject.js +++ b/Utils/physicalObject.js @@ -51,6 +51,11 @@ export const deleteShoppingCart = params => { return POST('GET', `${base}/shoppingCart/deleteShoppingCart`, params).then(res => res.data); } +// 修改购物车选中状态 +export const whetherCheckUpdate = params => { + return POST('GET', `${base}/shoppingCart/whetherCheck`, params).then(res => res.data); +} + // 查询购物车列表 export const getShoppingCartList = params => { return POST('GET', `${base}/shoppingCart/getShoppingCartList`, params).then(res => res.data); diff --git a/components/cart-choose/cart-choose.vue b/components/cart-choose/cart-choose.vue index 5cdb01a..64779c8 100644 --- a/components/cart-choose/cart-choose.vue +++ b/components/cart-choose/cart-choose.vue @@ -214,7 +214,7 @@ goodsId:this.specificationList[this.chooseIndex].goodsId, num:this.chooseNumber, sku:this.specificationList[this.chooseIndex].id, - whetherCheck:false + // whetherCheck:true } insertShoppingCart(params).then(async res=>{ diff --git a/physical-merchants/classify/cart/cart.vue b/physical-merchants/classify/cart/cart.vue index 7afd9c7..43cc861 100644 --- a/physical-merchants/classify/cart/cart.vue +++ b/physical-merchants/classify/cart/cart.vue @@ -15,7 +15,7 @@ + value="item.id" :checked="!isEdit&&item.loseEfficacy?false:item.whetherCheck" /> @@ -116,7 +116,8 @@ import { getShoppingCartList, goodsEditNum, - deleteShoppingCart + deleteShoppingCart, + whetherCheckUpdate } from '@/Utils/physicalObject.js' const app = getApp(); @@ -172,15 +173,9 @@ //现价金额 priceAll() { let str = 0; - // for (var i = 0; i < this.cartList.length; i++) { - // if (this.cartList[i].whetherCheck) { - // str += this.cartList[i].num * this.cartList[i].price; - // } - // } - if (this.cartList.length > 0) { this.cartList.map(item => { - if (item.whetherCheck) { + if (item.whetherCheck&&!item.loseEfficacy) { str =parseFloat((str + (item.num*item.price)).toFixed(2)) @@ -229,7 +224,13 @@ if (res.return_code == '000000') { this.allCheck.whetherCheck = false; this.cartList = res.return_data; - // this.allCheckInit(); + + // 测试失效数据 + this.cartList[0].loseEfficacy=true; + + + + this.allCheckInit(); //全选是否勾中判断 } else { uni.showToast({ @@ -242,74 +243,95 @@ }, editDelete() { this.isEdit = !this.isEdit; - if (!this.isEdit) { //退出编辑 - this.cartList.map(item => { - if (item.whetherCheck && item.loseEfficacy) { - item.whetherCheck = false; - } - }) - } else { //进入编辑 - if (this.allCheck.whetherCheck) { - this.cartList.map(item => { - item.whetherCheck = true; - }) - } - } - + // if (!this.isEdit) { //退出编辑 + // this.allCheck.whetherCheck = false; + // this.cartList.map(item => { + // if (item.whetherCheck && item.loseEfficacy) { + // item.whetherCheck = false; + // } + // }) + // } else { //进入编辑 + // this.allCheck.whetherCheck = false; + // if (this.allCheck.whetherCheck) { + // this.cartList.map(item => { + // item.whetherCheck = true; + // }) + // } + // } + this.allCheckInit(); + + // this.allCheck.whetherCheck = false; + // this.checkAllClickChildMethod() }, // 全选的点击事件 checkAllClick(e) { this.allCheck.whetherCheck = !this.allCheck.whetherCheck; - if (this.allCheck.whetherCheck) { - this.cartList.map(item => { - if (!this.isEdit) { //商品的全选事件,loseEfficacy商品的失效,默认undefined - if (!item.loseEfficacy) { - item.whetherCheck = true - } - } else { //编辑的全选事件 - item.whetherCheck = true - } - - }) - } else { - this.cartList.map(item => { - item.whetherCheck = false - }) + this.checkAllClickChildMethod() + }, + checkAllClickChildMethod(){ + // if (this.allCheck.whetherCheck) { + // this.cartList.map(item => { + // if (!this.isEdit) { //商品的全选事件,loseEfficacy商品的失效,默认undefined + // if (!item.loseEfficacy) { //无失效的商品 + // item.whetherCheck = true + // }else{ //有失效的商品 + // item.whetherCheck = false + // } + // } else { //编辑的全选事件 + // item.whetherCheck = true + // } + + // }) + // } else { + // this.cartList.map(item => { + // item.whetherCheck = false + // }) + // } + + + var select = []; + for (var i = 0; i < this.cartList.length; i++) { + // if (this.cartList[i].whetherCheck) { + select.push(this.cartList[i].id) + // } } + let id=select.join() + + this.whetherCheckUpdate(id,this.allCheck.whetherCheck) + }, + whetherCheckUpdate(id,whetherCheck){ + let params = { + ids:id, + whetherCheck:whetherCheck + } + + whetherCheckUpdate(params).then(res=>{ + if(res.return_code == "000000"){ + }else{ + uni.showToast({title:res.return_msg,icon:'none'}); + + } + this.initData();//刷新购物车 + }) }, - // 单个商品的选择 checkClick(item) { item.whetherCheck = !item.whetherCheck; + + this.whetherCheckUpdate(String(item.id),item.whetherCheck) + + + // if (!item.whetherCheck) { + // if (!this.isEdit && !item.loseEfficacy) { //商品 + // this.allCheck.whetherCheck = false; + // } else if (this.isEdit) { + // this.allCheck.whetherCheck = false; + // } - if (!item.whetherCheck) { - if (!this.isEdit && !item.loseEfficacy) { //商品 - this.allCheck.whetherCheck = false; - } else if (this.isEdit) { - this.allCheck.whetherCheck = false; - } - - } else { - // // 判断每一个商品是否是被选择的状态 - // const goods = this.cartList.every(item => { - // if(!this.isEdit){//商品 - // if(item.loseEfficacy){ - // return true; - // } - // } - - - // return item.whetherCheck === true - // }) - // if (goods) { - // this.allCheck.whetherCheck = true - // } else { - // this.allCheck.whetherCheck = false - // } - - this.allCheckInit() - } + // } else { + // this.allCheckInit() + // } }, allCheckInit() { @@ -377,7 +399,7 @@ if (!this.isHaveGoods()) return; if (this.priceAll > 0) { - let selestArr = this.cartList.filter(item => item.whetherCheck == true) + let selestArr = this.cartList.filter(item => (item.whetherCheck&&!item.loseEfficacy) == true) selestArr = JSON.stringify(selestArr) // console.log(selestArr,"选择的商品")