This commit is contained in:
Cauchy
2023-10-20 16:31:04 +08:00
parent e4bd2854a3
commit 0633287662
8 changed files with 107 additions and 6 deletions

View File

@@ -81,8 +81,14 @@ public class BuyOrderController {
@Autowired @Autowired
private SysConfigService sysConfigService; private SysConfigService sysConfigService;
@RequestMapping(value = "/decomposeShipment", method = RequestMethod.GET)
public R decomposeShipment(@RequestParam("userId") Integer userId) {
Map<Integer, List<String>> result = buyOrderService.decomposeShipment(userId);
return R.ok().put("result", result);
}
// TODO 新版本上线后废弃
@RequestMapping("/list") @RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params) throws Exception { public R list(@RequestParam Map<String, Object> params) throws Exception {
PageUtils page = buyOrderService.list(params); PageUtils page = buyOrderService.list(params);
@@ -299,6 +305,7 @@ public class BuyOrderController {
/** /**
* 获取订单详情 * 获取订单详情
* TODO 新版本上线后删除
* *
* @param orderId * @param orderId
* @return * @return
@@ -467,10 +474,19 @@ public class BuyOrderController {
return BigDecimal.ZERO; return BigDecimal.ZERO;
} }
@RequestMapping("/modifyOrderAddress") @RequestMapping("/modifyConsigneeAddress")
public R modifyOrderAddress(@RequestBody ModifyOrderAddressRequestVo requestVo) { public R modifyConsigneeAddress(@RequestBody ModifyOrderAddressRequestVo requestVo) {
QueryWrapper<BuyOrder> queryWrapper = new QueryWrapper<>(); QueryWrapper<BuyOrder> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("order_sn", requestVo.getOrderSn()); queryWrapper.eq("order_sn", requestVo.getOrderSn());
BuyOrder buyOrder = buyOrderService.getOne(queryWrapper);
buyOrder.setShippingUser(requestVo.getConsigneeName());
buyOrder.setUserPhone(requestVo.getConsigneeMobile());
buyOrder.setProvince(requestVo.getProvince());
buyOrder.setCity(requestVo.getCity());
buyOrder.setDistrict(requestVo.getCounty());
buyOrder.setAddress(requestVo.getAddress());
buyOrder.setAddressModified(1);
buyOrderService.updateById(buyOrder);
return R.ok(); return R.ok();
} }
@@ -557,4 +573,5 @@ public class BuyOrderController {
return message; return message;
}; };
} }
} }

View File

@@ -173,4 +173,6 @@ public class BuyOrder implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private MyUserEntity user; private MyUserEntity user;
private int addressModified;
} }

View File

@@ -51,5 +51,7 @@ public interface BuyOrderService extends IService<BuyOrder> {
BuyOrderResponseVo orderDetail(String orderSn); BuyOrderResponseVo orderDetail(String orderSn);
Map<Integer, List<String>> decomposeShipment(Integer userId);
} }

View File

@@ -17,10 +17,7 @@ import com.peanut.modules.book.service.*;
import com.peanut.modules.book.vo.ExpressOrderResponseVo; import com.peanut.modules.book.vo.ExpressOrderResponseVo;
import com.peanut.modules.book.vo.UserOrderVo; import com.peanut.modules.book.vo.UserOrderVo;
import com.peanut.modules.book.vo.request.BuyOrderListRequestVo; import com.peanut.modules.book.vo.request.BuyOrderListRequestVo;
import com.peanut.modules.book.vo.response.BuyOrderResponseVo; import com.peanut.modules.book.vo.response.*;
import com.peanut.modules.book.vo.response.ConsigneeVo;
import com.peanut.modules.book.vo.response.ExpressResponseVo;
import com.peanut.modules.book.vo.response.GoodsResponseVo;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@@ -229,6 +226,25 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
return userOrderVoList; return userOrderVoList;
} }
public Map<Integer, List<String>> decomposeShipment(Integer userId) {
QueryWrapper<BuyOrder> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("del_flag", 0);
queryWrapper.eq("userId", userId);
queryWrapper.eq("address_modified", 0);
List<BuyOrder> buyOrderList = list(queryWrapper);
Map<Integer, List<String>> result = new HashMap<>();
for (BuyOrder buyOrder : buyOrderList) {
if (result.containsKey(buyOrder.getAddressId())) {
List<String> orderSnList = result.get(buyOrder.getAddressId());
orderSnList.add(buyOrder.getOrderSn());
} else {
List<String> orderSnList = new ArrayList<>();
result.put(buyOrder.getAddressId(), orderSnList);
}
}
return result;
}
/** /**
* 查询所有订单是否有可合并 * 查询所有订单是否有可合并
* *
@@ -298,6 +314,14 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
List<BuyOrder> buyOrderList = list(buyOrderQueryWrapper); List<BuyOrder> buyOrderList = list(buyOrderQueryWrapper);
for (BuyOrder buyOrder : buyOrderList) { for (BuyOrder buyOrder : buyOrderList) {
BuyOrderResponseVo responseVo = new BuyOrderResponseVo(); BuyOrderResponseVo responseVo = new BuyOrderResponseVo();
Integer userId = buyOrder.getUserId();
QueryWrapper<MyUserEntity> userEntityQueryWrapper = new QueryWrapper<>();
userEntityQueryWrapper.eq("id",userId);
MyUserEntity user = myUserService.getOne(userEntityQueryWrapper);
UserResponseVo userResponseVo = new UserResponseVo();
userResponseVo.setUserPhone(user.getTel());
userResponseVo.setUserName(user.getName());
responseVo.setUserInfo(userResponseVo);
responseVo.setOrderPrice(buyOrder.getOrderMoney()); responseVo.setOrderPrice(buyOrder.getOrderMoney());
BeanUtil.copyProperties(buyOrder, responseVo); BeanUtil.copyProperties(buyOrder, responseVo);
ConsigneeVo consigneeVo = new ConsigneeVo(); ConsigneeVo consigneeVo = new ConsigneeVo();

View File

@@ -33,4 +33,8 @@ public class ModifyOrderAddressRequestVo {
* 收货人电话 * 收货人电话
*/ */
private String consigneeMobile; private String consigneeMobile;
/**
* 详细地址
*/
private String address;
} }

View File

@@ -37,6 +37,18 @@ public class BuyOrderResponseVo {
* 订单金额 * 订单金额
*/ */
private BigDecimal orderPrice; private BigDecimal orderPrice;
/**
* 实际金额
*/
private BigDecimal realPrice;
/**
* 扣减金额
*/
private BigDecimal districtPrice;
/**
* 运费
*/
private BigDecimal shippingPrice;
/** /**
* 商品列表 * 商品列表
*/ */
@@ -45,4 +57,12 @@ public class BuyOrderResponseVo {
* 收货人信息 * 收货人信息
*/ */
private ConsigneeVo consignee; private ConsigneeVo consignee;
/**
* 优惠券
*/
private CouponResponseVo coupon;
/**
* 用户信息
*/
private UserResponseVo userInfo;
} }

View File

@@ -0,0 +1,12 @@
package com.peanut.modules.book.vo.response;
import lombok.Data;
/**
* @Description: 优惠券 Value Object
* @Author: Cauchy
* @CreateTime: 2023/10/20
*/
@Data
public class CouponResponseVo {
}

View File

@@ -0,0 +1,20 @@
package com.peanut.modules.book.vo.response;
import lombok.Data;
/**
* @Description: 用户 Value Object
* @Author: Cauchy
* @CreateTime: 2023/10/20
*/
@Data
public class UserResponseVo {
/**
* 用户姓名
*/
private String userName;
/**
* 用户电话
*/
private String userPhone;
}