订单列表重构

This commit is contained in:
wangjinlei
2023-12-08 15:21:49 +08:00
parent 2cf8daec16
commit bbe04ad425
3 changed files with 69 additions and 6 deletions

View File

@@ -112,8 +112,8 @@ public class BuyOrderController {
*/
@RequestMapping(path = "/orderList", method = RequestMethod.POST)
public R orderList(@RequestBody BuyOrderListRequestVo requestVo) {
Map<String, Object> result = buyOrderService.orderList(requestVo);
return R.ok().put("result", result);
Page<BuyOrder> buyOrderPage = buyOrderService.orderList(requestVo);
return R.ok().put("result", buyOrderPage);
}
/**
@@ -376,6 +376,7 @@ public class BuyOrderController {
integers.add(1);
integers.add(2);
integers.add(3);
wrapper.gt(BuyOrder::getOrderId,4522);
wrapper.in(BuyOrder::getOrderStatus,integers);
wrapper.eq(BuyOrder::getOrderType,"order");
List<BuyOrder> list = buyOrderService.list(wrapper);
@@ -390,7 +391,7 @@ public class BuyOrderController {
@RequestMapping("/llll1")
public R ls1(){
Integer[] is = {133,134,135};
Integer[] is = {39,62,123,127};
List<Integer> collect = buyOrderProductService.getBaseMapper().selectList(new LambdaQueryWrapper<BuyOrderProduct>().in(BuyOrderProduct::getProductId, is)).stream().map(BuyOrderProduct::getOrderId).collect(Collectors.toList());
LambdaQueryWrapper<BuyOrder> wrapper = new LambdaQueryWrapper<>();
@@ -401,7 +402,7 @@ public class BuyOrderController {
List<BuyOrder> list = buyOrderService.list(wrapper);
for (BuyOrder b : list){
MyUserEntity byId = myUserService.getById(b.getUserId());
byId.setTgdzPower(1);
byId.setWylqPower(1);
myUserService.updateById(byId);
}

View File

@@ -43,7 +43,7 @@ public interface BuyOrderService extends IService<BuyOrder> {
* @param requestVo
* @return
*/
Map<String, Object> orderList(BuyOrderListRequestVo requestVo);
Page<BuyOrder> orderList(BuyOrderListRequestVo requestVo);
/**
* 订单拆分发货

View File

@@ -8,7 +8,9 @@ import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.query.MPJLambdaQueryWrapper;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.peanut.common.utils.DateUtils;
import com.peanut.common.utils.ExcludeEmptyQueryWrapper;
import com.peanut.common.utils.PageUtils;
import com.peanut.common.utils.Query;
@@ -356,7 +358,67 @@ public class BuyOrderServiceImpl extends ServiceImpl<BuyOrderDao, BuyOrder> impl
}
@Override
public Map<String, Object> orderList(BuyOrderListRequestVo requestVo) {
public Page<BuyOrder> orderList(BuyOrderListRequestVo requestVo) {
MPJLambdaWrapper<BuyOrder> wrapper = new MPJLambdaWrapper<>();
wrapper.selectAll(BuyOrder.class);
wrapper.leftJoin(MyUserEntity.class,MyUserEntity::getId,BuyOrder::getUserId);
wrapper.eq(StringUtils.isNotBlank(requestVo.getOrderStatus()),BuyOrder::getOrderStatus,requestVo.getOrderStatus());
wrapper.gt(requestVo.getStartTime()!=null,BuyOrder::getCreateTime,requestVo.getStartTime());
wrapper.lt(requestVo.getEndTime()!=null,BuyOrder::getCreateTime,requestVo.getEndTime());
wrapper.and(StringUtils.isNotBlank(requestVo.getSearchKeyWord()),t->t.like(BuyOrder::getOrderSn,requestVo.getSearchKeyWord()).or().like(MyUserEntity::getTel,requestVo.getSearchKeyWord()).or().like(MyUserEntity::getName,requestVo.getSearchKeyWord()));
if(StringUtils.isNotBlank(requestVo.getProductName())){
MPJLambdaWrapper<BuyOrderProduct> buyOrderProductMPJLambdaWrapper = new MPJLambdaWrapper<>();
buyOrderProductMPJLambdaWrapper.selectAll(BuyOrderProduct.class);
buyOrderProductMPJLambdaWrapper.leftJoin(ShopProduct.class,ShopProduct::getProductId,BuyOrderProduct::getProductId);
buyOrderProductMPJLambdaWrapper.like(ShopProduct::getProductName,requestVo.getProductName());
List<Integer> collect = buyOrderProductDao.selectJoinList(BuyOrderProduct.class, buyOrderProductMPJLambdaWrapper).stream().map(BuyOrderProduct::getOrderId).collect(Collectors.toList());
wrapper.in(BuyOrder::getOrderId,collect);
}
Page<BuyOrder> buyOrderPage = getBaseMapper().selectPage(new Page<BuyOrder>(requestVo.getPageIndex(), requestVo.getPageSize()), wrapper);
//丰富订单内容
for (BuyOrder b : buyOrderPage.getRecords()){
//添加商品信息
List<BuyOrderProduct> buyOrderProducts = buyOrderProductDao.selectList(new LambdaQueryWrapper<BuyOrderProduct>().eq(BuyOrderProduct::getOrderId, b.getOrderId()));
for (BuyOrderProduct b1:buyOrderProducts){
ShopProduct byId = shopProductService.getById(b1.getProductId());
byId.setBooks(shopProductBookService.getBookByProductId(byId.getProductId()));
b1.setProduct(byId);
}
b.setProductList(buyOrderProducts);
//添加快递包裹信息
LambdaQueryWrapper<BuyOrderProduct> b_wrapper = new LambdaQueryWrapper<>();
b_wrapper.eq(BuyOrderProduct::getOrderId,b.getOrderId());
b_wrapper.gt(BuyOrderProduct::getExpressOrderId,0);
List<Integer> collect = buyOrderProductService.getBaseMapper().selectList(b_wrapper).stream().map(BuyOrderProduct::getExpressOrderId).collect(Collectors.toList());
if(collect.size()>0){
List<ExpressOrder> expressOrders = expressOrderService.getBaseMapper().selectList(new LambdaQueryWrapper<ExpressOrder>().in(ExpressOrder::getId, collect));
for (ExpressOrder e : expressOrders){
MPJLambdaWrapper<BuyOrderProduct> buyOrderProductMPJLambdaWrapper = new MPJLambdaWrapper<>();
buyOrderProductMPJLambdaWrapper.selectAll(ShopProduct.class);
buyOrderProductMPJLambdaWrapper.select(BuyOrderProduct::getQuantity);
buyOrderProductMPJLambdaWrapper.select(BuyOrder::getOrderSn);
buyOrderProductMPJLambdaWrapper.leftJoin(ShopProduct.class,ShopProduct::getProductId,BuyOrderProduct::getProductId);
buyOrderProductMPJLambdaWrapper.leftJoin(BuyOrder.class,BuyOrder::getOrderId,BuyOrderProduct::getOrderId);
buyOrderProductMPJLambdaWrapper.eq(BuyOrderProduct::getExpressOrderId,e.getId());
List<ShopProduct> shopProducts = buyOrderProductDao.selectJoinList(ShopProduct.class, buyOrderProductMPJLambdaWrapper);
for(ShopProduct s : shopProducts){
MPJLambdaWrapper<ShopProductBookEntity> shopProductBookEntityMPJLambdaWrapper = new MPJLambdaWrapper<>();
shopProductBookEntityMPJLambdaWrapper.selectAll(BookEntity.class);
shopProductBookEntityMPJLambdaWrapper.leftJoin(BookEntity.class,BookEntity::getId,ShopProductBookEntity::getBookId);
shopProductBookEntityMPJLambdaWrapper.eq(ShopProductBookEntity::getProductId,s.getProductId());
List<BookEntity> bookEntities = shopProductBookDao.selectJoinList(BookEntity.class, shopProductBookEntityMPJLambdaWrapper);
s.setBooks(bookEntities);
}
e.setProducts(shopProducts);
}
b.setExpressList(expressOrders);
}
}
return buyOrderPage;
}
public Map<String, Object> orderList1(BuyOrderListRequestVo requestVo) {
List<BuyOrderResponseVo> data = new ArrayList<>();
requestVo.setIndex((requestVo.getPageIndex()-1)*10);
List<BuyOrder> buyOrderList = buyOrderDao.orderList(requestVo);