代码更新

This commit is contained in:
GaoHao
2025-03-03 09:44:11 +08:00
parent b4a0393d2d
commit fd0c452a76
55 changed files with 2263 additions and 2658 deletions

View File

@@ -1,4 +1,5 @@
export function isTui(item) {
console.log("isTui",item.status);
return item.status == 'return' || item.status == 'refund' || item.status == 'refunding'
}
//是否使用会员价
@@ -19,8 +20,11 @@ export function returnProductCouponPrice(coup, goodsArr, vipUser) {
}
//返回新的商品列表,过滤掉退菜的,退单的商品
export function returnNewGoodsList(arr) {
let goodsMap = {}
return arr.filter(v => !isTui(v))
let goods_list = []
Object.values(arr).forEach(item=>{
goods_list = [...goods_list,...item]
})
return goods_list.filter(v => !isTui(v))
}
//根据当前购物车商品以及数量,已选券对应商品数量,判断该商品券是否可用
export function returnCoupCanUse(goodsArr = [], coup, selCoupArr = []) {
@@ -128,11 +132,15 @@ export function returnProCoupStartIndex(coupArr,index){
}
//返回商品数量从0到n每一个对应的价格对照表
export function returnGoodsPayPriceMap(goodsArr){
return goodsArr.reduce((prve,cur)=>{
let goods_arr = []
Object.values(goodsArr).forEach(item=>{
goods_arr = [...goods_arr,...item]
})
return goods_arr.reduce((prve,cur)=>{
if(!prve.hasOwnProperty(cur.productId)){
prve[cur.productId]=[]
}
const arr=new Array(cur.num).fill(cur).map(v=>{
let arr=new Array(cur.num).fill(cur).map(v=>{
return {
memberPrice:v.memberPrice?v.memberPrice:v.price,
price:v.price
@@ -141,6 +149,7 @@ export function returnGoodsPayPriceMap(goodsArr){
prve[cur.productId].push(...arr)
return prve
},{})
}
//计算商品券总优惠价格
export function returnProductCouponAllPrice(coupArr, goodsArr, vipUser) {
@@ -155,6 +164,7 @@ export function returnProductCouponAllPrice(coupArr, goodsArr, vipUser) {
let coupMap={}
for(let i in coupArr){
const coup=coupArr[i]
console.log(coup)
if(coupMap.hasOwnProperty(coup.proId)){
coupMap[coup.proId].push(coup)
}else{
@@ -178,15 +188,15 @@ export function returnProductCouponAllPrice(coupArr, goodsArr, vipUser) {
return aPrice-bPrice
})
goodsPayPriceMap[coup.proId]=goodsMap[coup.proId].reduce((prve,cur)=>{
const arr=new Array(cur.num).fill(cur.payPrice)
const arr=new Array(cur.number).fill(cur.payPrice)
console.log(arr);
prve.push(...arr)
return prve
},[])
}
const proCoupStartIndex=returnProCoupStartIndex(arr,i)
console.log(proCoupStartIndex);
const coupNum=Math.min(goodsPayPriceMap[coup.proId].length,coup.num)
console.log(coup);
const coupNum = Math.min(goodsPayPriceMap[coup.proId].length,coup.number)
console.log(coupNum);
total+=returnProductCoupAllPrice(goodsPayPriceMap[coup.proId],proCoupStartIndex,coupNum)
}