用户订单列表

This commit is contained in:
wangjinlei
2023-10-26 19:37:23 +08:00
parent c5e6cfdc89
commit 78ef8bc4ac
6 changed files with 59 additions and 2 deletions

View File

@@ -10,6 +10,7 @@ import com.peanut.config.Constants;
import com.peanut.config.DelayQueueConfig;
import com.peanut.modules.book.entity.*;
import com.peanut.modules.book.service.*;
import com.peanut.modules.book.to.UserOrderDto;
import com.peanut.modules.book.vo.UserAddressVo;
import com.peanut.modules.book.vo.request.BuyOrderListRequestVo;
import com.peanut.modules.book.vo.request.ModifyOrderAddressRequestVo;
@@ -115,6 +116,17 @@ public class BuyOrderController {
return R.ok().put("result", result);
}
/**
* 获取用户订单列表
* @param userOrderDto
* @return
*/
@RequestMapping("/getUserOrderList")
public R getUserOrderList(@RequestBody UserOrderDto userOrderDto){
Page<BuyOrder> userOrderList = buyOrderService.getUserOrderList(userOrderDto);
return R.ok().put("page",userOrderList);
}
/**
* 订单详情
*

View File

@@ -1,5 +1,6 @@
package com.peanut.modules.book.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@@ -32,7 +33,7 @@ public class BuyOrderProduct {
/**
* 商品价格
*/
// private BigDecimal realPrice;
private BigDecimal realPrice;
/**
* 快递订单 ID
*/
@@ -49,4 +50,7 @@ public class BuyOrderProduct {
* 发货标识
*/
private int shipped;
@TableField(exist = false)
private ShopProduct product;
}

View File

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.peanut.common.utils.PageUtils;
import com.peanut.modules.book.entity.BuyOrder;
import com.peanut.modules.book.to.UserOrderDto;
import com.peanut.modules.book.vo.UserOrderVo;
import com.peanut.modules.book.vo.request.BuyOrderListRequestVo;
import com.peanut.modules.book.vo.response.BuyOrderResponseVo;
@@ -50,6 +51,8 @@ public interface BuyOrderService extends IService<BuyOrder> {
*/
void delivery(String expressCompanyCode, List<Integer> buyOrderDetailId);
Page<BuyOrder> getUserOrderList(UserOrderDto userOrderDto);
BuyOrderResponseVo orderDetail(String orderSn);
Map<String, Object> decomposeShipment(BuyOrderListRequestVo requestVo);

View File

@@ -1,6 +1,7 @@
package com.peanut.modules.book.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
@@ -15,6 +16,7 @@ import com.peanut.modules.book.dao.BuyOrderDao;
import com.peanut.modules.book.dao.ExpressOrderDao;
import com.peanut.modules.book.entity.*;
import com.peanut.modules.book.service.*;
import com.peanut.modules.book.to.UserOrderDto;
import com.peanut.modules.book.vo.ExpressOrderResponseVo;
import com.peanut.modules.book.vo.UserOrderVo;
import com.peanut.modules.book.vo.request.BuyOrderListRequestVo;
@@ -357,6 +359,26 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
return result;
}
@Override
public Page<BuyOrder> getUserOrderList(UserOrderDto userOrderDto) {
LambdaQueryWrapper<BuyOrder> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(BuyOrder::getUserId,userOrderDto.getUserId());
wrapper.eq(userOrderDto.getOrderStatus()!=null,BuyOrder::getOrderStatus,userOrderDto.getOrderStatus());
Page<BuyOrder> buyOrderPage = this.getBaseMapper().selectPage(new Page<>(userOrderDto.getPage(), userOrderDto.getLimit()), wrapper);
for(BuyOrder b : buyOrderPage.getRecords()){
b.setUser(myUserService.getById(b.getUserId()));
//组装商品
List<BuyOrderProduct> buyOrderProducts = buyOrderProductService.getBaseMapper().selectList(new LambdaQueryWrapper<BuyOrderProduct>()
.eq(BuyOrderProduct::getOrderId, b.getOrderId()));
for (BuyOrderProduct bb : buyOrderProducts){
bb.setProduct(shopProductService.getById(bb.getProductId()));
}
b.setProductList(buyOrderProducts);
b.setTimestamp(b.getCreateTime().getTime());
}
return buyOrderPage;
}
@Override
public void delivery(String expressCompanyCode, List<Integer> buyOrderProductId) {
@@ -535,4 +557,6 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
responseVo.setGoodsList(goodsResponseVoList);
return responseVo;
}
}

View File

@@ -0,0 +1,14 @@
package com.peanut.modules.book.to;
import lombok.Data;
import java.io.Serializable;
@Data
public class UserOrderDto implements Serializable {
private Integer userId;
private Integer orderStatus;
private Integer limit;
private Integer page;
}

View File

@@ -50,7 +50,7 @@
order by a.sort desc
</select>
<select id="getTotalWeight" parameterType="list">
<select id="getTotalWeight" parameterType="list" resultType="java.lang.Integer">
select sum(weight) from shop_product where product_id in
<foreach collection="list" item="id" index="index" open="(" close=")" separator=",">
#{id}