feat: 1. 添加商品会员价 2.空订单直接删除
This commit is contained in:
parent
635ebb138f
commit
896667018a
|
|
@ -61,6 +61,8 @@ public class TbCashierCart implements Serializable {
|
||||||
private String useType;
|
private String useType;
|
||||||
private Integer placeNum;
|
private Integer placeNum;
|
||||||
private String platformType;
|
private String platformType;
|
||||||
|
private BigDecimal memberPrice;
|
||||||
|
private Integer isMember;
|
||||||
|
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private TbProductSpec tbProductSpec;
|
private TbProductSpec tbProductSpec;
|
||||||
|
|
@ -69,4 +71,22 @@ public class TbCashierCart implements Serializable {
|
||||||
private String selectSpec="";
|
private String selectSpec="";
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据是否会员充值价格
|
||||||
|
*/
|
||||||
|
public void resetTotalAmount() {
|
||||||
|
if ("false".equals(isPack)) {
|
||||||
|
packFee = BigDecimal.ZERO;
|
||||||
|
}
|
||||||
|
if ("true".equals(isGift)) {
|
||||||
|
totalAmount = packFee;
|
||||||
|
}else {
|
||||||
|
if (isMember != null && isMember == 1) {
|
||||||
|
totalAmount = BigDecimal.valueOf(totalNumber).multiply(memberPrice).add(packFee);
|
||||||
|
}else {
|
||||||
|
totalAmount = BigDecimal.valueOf(totalNumber).multiply(salePrice).add(packFee);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -47,5 +47,7 @@ public class TbOrderDetail implements Serializable {
|
||||||
|
|
||||||
private String note;
|
private String note;
|
||||||
|
|
||||||
|
private BigDecimal memberPrice;
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,5 +24,12 @@ public interface MpOrderDetailService extends IService<TbOrderDetail> {
|
||||||
* @return 是否成功
|
* @return 是否成功
|
||||||
*/
|
*/
|
||||||
boolean updateStateByCartIds(Integer shopId, List<Integer> cartIds, TableConstant.Status status);
|
boolean updateStateByCartIds(Integer shopId, List<Integer> cartIds, TableConstant.Status status);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据购物车id删除订单详情
|
||||||
|
* @param cartIds 购物车id
|
||||||
|
* @return 是否成功
|
||||||
|
*/
|
||||||
|
boolean removeByCartIds(List<Integer> cartIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -354,6 +354,8 @@ public class OrderService {
|
||||||
cashierCart.setSalePrice(skuWithBLOBs.getSalePrice());
|
cashierCart.setSalePrice(skuWithBLOBs.getSalePrice());
|
||||||
cashierCart.setSkuId(skuWithBLOBs.getId().toString());
|
cashierCart.setSkuId(skuWithBLOBs.getId().toString());
|
||||||
cashierCart.setSkuName(skuWithBLOBs.getSpecSnap());
|
cashierCart.setSkuName(skuWithBLOBs.getSpecSnap());
|
||||||
|
cashierCart.setMemberPrice(skuWithBLOBs.getMemberPrice() != null && skuWithBLOBs.getMemberPrice().compareTo(BigDecimal.ZERO) > 0 ? skuWithBLOBs.getMemberPrice() : skuWithBLOBs.getSalePrice());
|
||||||
|
cashierCart.setIsMember(0);
|
||||||
}
|
}
|
||||||
cashierCart.setShopId(shopId.toString());
|
cashierCart.setShopId(shopId.toString());
|
||||||
cashierCart.setTradeDay(DateUtils.getDay());
|
cashierCart.setTradeDay(DateUtils.getDay());
|
||||||
|
|
@ -536,10 +538,13 @@ public class OrderService {
|
||||||
// 检查购物车商品是否已经全部退款
|
// 检查购物车商品是否已经全部退款
|
||||||
if (!returnCashierCarts.isEmpty() && returnCashierCarts.size() == list.size()) {
|
if (!returnCashierCarts.isEmpty() && returnCashierCarts.size() == list.size()) {
|
||||||
List<Integer> cartIds = returnCashierCarts.stream().map(TbCashierCart::getId).collect(Collectors.toList());
|
List<Integer> cartIds = returnCashierCarts.stream().map(TbCashierCart::getId).collect(Collectors.toList());
|
||||||
mpCashierCartService.updateStateByIds(Integer.valueOf(shopId), cartIds, TableConstant.Status.CLOSED);
|
mpCashierCartService.removeByIds(cartIds);
|
||||||
mpOrderDetailService.updateStateByCartIds(Integer.valueOf(shopId), cartIds, TableConstant.Status.CLOSED);
|
// mpCashierCartService.updateStateByIds(Integer.valueOf(shopId), cartIds, TableConstant.Status.CLOSED);
|
||||||
|
// mpOrderDetailService.updateStateByCartIds(Integer.valueOf(shopId), cartIds, TableConstant.Status.CLOSED);
|
||||||
|
mpOrderDetailService.removeByCartIds(cartIds);
|
||||||
if (StrUtil.isNotBlank(orderId)) {
|
if (StrUtil.isNotBlank(orderId)) {
|
||||||
mpOrderInfoService.updateStateById(Integer.valueOf(shopId), Integer.valueOf(orderId), TableConstant.Status.CANCELLED);
|
mpOrderInfoService.removeById(orderId);
|
||||||
|
// mpOrderInfoService.updateStateById(Integer.valueOf(shopId), Integer.valueOf(orderId), TableConstant.Status.CANCELLED);
|
||||||
}
|
}
|
||||||
|
|
||||||
String finalMasterId = masterId;
|
String finalMasterId = masterId;
|
||||||
|
|
@ -835,6 +840,8 @@ public class OrderService {
|
||||||
|
|
||||||
ArrayList<TbOrderDetail> addOrderDetailList = new ArrayList<>();
|
ArrayList<TbOrderDetail> addOrderDetailList = new ArrayList<>();
|
||||||
for (TbCashierCart cashierCart : list) {
|
for (TbCashierCart cashierCart : list) {
|
||||||
|
cashierCart.setIsMember(orderVo.getVipUserId() == null ? 0: 1);
|
||||||
|
cashierCart.resetTotalAmount();
|
||||||
// 设置下单次数
|
// 设置下单次数
|
||||||
if (cashierCart.getPlaceNum() == null) {
|
if (cashierCart.getPlaceNum() == null) {
|
||||||
cashierCart.setPlaceNum(currentPlaceNum);
|
cashierCart.setPlaceNum(currentPlaceNum);
|
||||||
|
|
@ -893,6 +900,7 @@ public class OrderService {
|
||||||
saleAmount = saleAmount.add(shopInfo.getTableFee());
|
saleAmount = saleAmount.add(shopInfo.getTableFee());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
orderDetail.setMemberPrice(cashierCart.getMemberPrice());
|
||||||
orderDetail.setCreateTime(new Date());
|
orderDetail.setCreateTime(new Date());
|
||||||
orderDetail.setNum(cashierCart.getNumber());
|
orderDetail.setNum(cashierCart.getNumber());
|
||||||
orderDetail.setPrice(cashierCart.getSalePrice());
|
orderDetail.setPrice(cashierCart.getSalePrice());
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
package com.chaozhanggui.system.cashierservice.service.impl;
|
package com.chaozhanggui.system.cashierservice.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
|
@ -37,5 +38,11 @@ public class MpOrderDetailServiceImpl extends ServiceImpl<MPOrderDetailMapper, T
|
||||||
.in(TbOrderDetail::getCartId, cartIds)
|
.in(TbOrderDetail::getCartId, cartIds)
|
||||||
.set(TbOrderDetail::getStatus, status.getValue()));
|
.set(TbOrderDetail::getStatus, status.getValue()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean removeByCartIds(List<Integer> cartIds) {
|
||||||
|
return remove(new LambdaQueryWrapper<TbOrderDetail>()
|
||||||
|
.in(TbOrderDetail::getCartId, cartIds));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue