This commit is contained in:
wangjinlei
2023-10-26 17:52:54 +08:00
parent 7792024b15
commit c5e6cfdc89
9 changed files with 27 additions and 11 deletions

View File

@@ -313,14 +313,21 @@ public class BuyOrderController {
BigDecimal totalWeight = new BigDecimal(0); BigDecimal totalWeight = new BigDecimal(0);
for (ProductRequestVo product : products) { for (ProductRequestVo product : products) {
ShopProduct shopProduct = shopProductService.getById(product.getProductId()); ShopProduct shopProduct = shopProductService.getById(product.getProductId());
if(shopProduct.getIsFreeMail()==0){
continue;
}
BigDecimal weight = BigDecimal.valueOf(Double.valueOf(shopProduct.getWeight()) / 1000.0); BigDecimal weight = BigDecimal.valueOf(Double.valueOf(shopProduct.getWeight()) / 1000.0);
totalWeight = totalWeight.add(weight.multiply(new BigDecimal(product.getQuantity()))); totalWeight = totalWeight.add(weight.multiply(new BigDecimal(product.getQuantity())));
} }
totalWeight = totalWeight.setScale(0, RoundingMode.UP); BigDecimal expressFee = new BigDecimal(0);
QueryWrapper<SysConfigEntity> configQueryWrapper = new QueryWrapper<>(); if(totalWeight.compareTo(BigDecimal.ZERO)!=0){
configQueryWrapper.eq("param_key", "DEFAULT_EXPRESS"); totalWeight = totalWeight.setScale(0, RoundingMode.UP);
SysConfigEntity config = sysConfigService.getOne(configQueryWrapper); QueryWrapper<SysConfigEntity> configQueryWrapper = new QueryWrapper<>();
BigDecimal expressFee = expressFeeService.calculateExpressFee(config.getParamValue(), totalWeight, regionCode); configQueryWrapper.eq("param_key", "DEFAULT_EXPRESS");
SysConfigEntity config = sysConfigService.getOne(configQueryWrapper);
expressFee = expressFeeService.calculateExpressFee(config.getParamValue(), totalWeight, regionCode);
}
return R.ok().put("result", expressFee); return R.ok().put("result", expressFee);
} }

View File

@@ -27,7 +27,7 @@ public class ExpressOrder {
/** /**
* 订单Sn * 订单Sn
*/ */
private String orderSn; // private String orderSn;
/** /**
* 省份 * 省份
*/ */

View File

@@ -138,7 +138,7 @@ public class ShopProduct implements Serializable {
/** /**
* 是否包邮 0包邮 1不包邮 * 是否包邮 0包邮 1不包邮
*/ */
private Object isFreeMail; private Integer isFreeMail;
/** /**
* 绑定电子书id, * 绑定电子书id,

View File

@@ -27,6 +27,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.security.Timestamp;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@@ -336,6 +337,7 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
buyOrderQueryWrapper.eq(StringUtils.isNotBlank(requestVo.getOrderStatus()), "order_status", requestVo.getOrderStatus()); buyOrderQueryWrapper.eq(StringUtils.isNotBlank(requestVo.getOrderStatus()), "order_status", requestVo.getOrderStatus());
buyOrderQueryWrapper.gt(requestVo.getStartTime() != null, "create_time", requestVo.getStartTime()); buyOrderQueryWrapper.gt(requestVo.getStartTime() != null, "create_time", requestVo.getStartTime());
buyOrderQueryWrapper.lt(requestVo.getEndTime() != null, "create_time", requestVo.getStartTime()); buyOrderQueryWrapper.lt(requestVo.getEndTime() != null, "create_time", requestVo.getStartTime());
buyOrderQueryWrapper.eq("order_type","order");
buyOrderQueryWrapper.orderByDesc("create_time"); buyOrderQueryWrapper.orderByDesc("create_time");
Integer totalSize = list(buyOrderQueryWrapper).size(); Integer totalSize = list(buyOrderQueryWrapper).size();
@@ -393,7 +395,7 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
expressOrder.setCreateTime(new Date()); expressOrder.setCreateTime(new Date());
expressOrder.setTotalWeight(totalWeight); expressOrder.setTotalWeight(totalWeight);
expressOrder.setCommodity(commodityList); expressOrder.setCommodity(commodityList);
expressOrder.setOrderSn(buyOrder.getOrderSn()); // expressOrder.setOrderSn(buyOrder.getOrderSn());
expressOrder.setExpressCompanyCode(expressCompanyCode); expressOrder.setExpressCompanyCode(expressCompanyCode);
expressOrder.setConsigneeName(buyOrder.getShippingUser()); expressOrder.setConsigneeName(buyOrder.getShippingUser());
expressOrder.setConsigneeMobile(buyOrder.getUserPhone()); expressOrder.setConsigneeMobile(buyOrder.getUserPhone());
@@ -446,6 +448,7 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
private BuyOrderResponseVo setBuyOrderInfo(BuyOrder buyOrder) { private BuyOrderResponseVo setBuyOrderInfo(BuyOrder buyOrder) {
BuyOrderResponseVo responseVo = new BuyOrderResponseVo(); BuyOrderResponseVo responseVo = new BuyOrderResponseVo();
responseVo.setOrderId(buyOrder.getOrderId()); responseVo.setOrderId(buyOrder.getOrderId());
responseVo.setTimestamp(buyOrder.getCreateTime().getTime());
Integer userId = buyOrder.getUserId(); Integer userId = buyOrder.getUserId();
QueryWrapper<MyUserEntity> userEntityQueryWrapper = new QueryWrapper<>(); QueryWrapper<MyUserEntity> userEntityQueryWrapper = new QueryWrapper<>();
userEntityQueryWrapper.eq("id", userId); userEntityQueryWrapper.eq("id", userId);
@@ -463,6 +466,7 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
if (buyOrder.getCouponId() != null) { if (buyOrder.getCouponId() != null) {
couponResponseVo.setCouponName(buyOrder.getCouponName()); couponResponseVo.setCouponName(buyOrder.getCouponName());
couponResponseVo.setCouponId(buyOrder.getCouponId()); couponResponseVo.setCouponId(buyOrder.getCouponId());
couponResponseVo.setCouponAmount(new BigDecimal(0));
} }
responseVo.setCoupon(couponResponseVo); responseVo.setCoupon(couponResponseVo);
responseVo.setOrderPrice(buyOrder.getOrderMoney()); responseVo.setOrderPrice(buyOrder.getOrderMoney());

View File

@@ -43,7 +43,7 @@ public class ExpressOrderServiceImpl extends ServiceImpl<ExpressOrderDao, Expres
public ExpressOrderResponseVo placeExpressOrder(ExpressOrder expressOrder) { public ExpressOrderResponseVo placeExpressOrder(ExpressOrder expressOrder) {
ExpressOrderRequestVo orderRequestVo = new ExpressOrderRequestVo(); ExpressOrderRequestVo orderRequestVo = new ExpressOrderRequestVo();
// 订单号 // 订单号
orderRequestVo.setOrderCode(expressOrder.getOrderSn()); // orderRequestVo.setOrderCode(expressOrder.getOrderSn());
orderRequestVo.setIsReturnPrintTemplate(1); orderRequestVo.setIsReturnPrintTemplate(1);
orderRequestVo.setShipperCode(expressOrder.getExpressCompanyCode()); orderRequestVo.setShipperCode(expressOrder.getExpressCompanyCode());
orderRequestVo.setPayType(3); orderRequestVo.setPayType(3);

View File

@@ -3,6 +3,7 @@ package com.peanut.modules.book.vo.response;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.sql.Timestamp;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@@ -74,6 +75,8 @@ public class BuyOrderResponseVo {
* 创建时间 * 创建时间
*/ */
private Date createTime; private Date createTime;
private Long timestamp;
/** /**
* 发货时间 * 发货时间
*/ */

View File

@@ -19,4 +19,6 @@ public class CouponResponseVo {
* 优惠券金额 * 优惠券金额
*/ */
Integer couponId; Integer couponId;
BigDecimal couponAmount;
} }

View File

@@ -19,7 +19,7 @@ spring:
driver-class-name: com.mysql.cj.jdbc.Driver driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://59.110.212.44:3306/e_book_test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true url: jdbc:mysql://59.110.212.44:3306/e_book_test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&allowMultiQueries=true
username: root username: root
password: HSXY1234hsxy password: Jgll2023Nutty
initial-size: 10 initial-size: 10
max-active: 100 max-active: 100
min-idle: 10 min-idle: 10

View File

@@ -11,7 +11,7 @@ connection-timeout: 6000000ms
spring: spring:
# 环境 dev|test|prod # 环境 dev|test|prod
profiles: profiles:
active: dev-wcl active: dev
# jackson时间格式化 # jackson时间格式化
jackson: jackson:
time-zone: GMT+8 time-zone: GMT+8