package com.gxwebsoft.shop.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.gxwebsoft.booking.param.PeriodParam; import com.gxwebsoft.shop.entity.Order; import com.gxwebsoft.shop.mapper.OrderInfoMapper; import com.gxwebsoft.shop.service.OrderInfoService; import com.gxwebsoft.shop.entity.OrderInfo; import com.gxwebsoft.shop.param.OrderInfoParam; import com.gxwebsoft.common.core.web.PageParam; import com.gxwebsoft.common.core.web.PageResult; import org.springframework.stereotype.Service; import java.util.List; /** * Service实现 * * @author 科技小王子 * @since 2024-08-10 13:44:39 */ @Service public class OrderInfoServiceImpl extends ServiceImpl implements OrderInfoService { @Override public PageResult pageRel(OrderInfoParam param) { PageParam page = new PageParam<>(param); page.setDefaultOrder("order_time desc"); List list = baseMapper.selectPageRel(page, param); return new PageResult<>(list, page.getTotal()); } @Override public List listRel(OrderInfoParam param) { List list = baseMapper.selectListRel(param); // 排序 PageParam page = new PageParam<>(); page.setDefaultOrder("order_time desc"); return page.sortRecords(list); } @Override public OrderInfo getByIdRel(Integer id) { OrderInfoParam param = new OrderInfoParam(); param.setId(id); return param.getOne(baseMapper.selectListRel(param)); } @Override public void updateByOutTradeNo(Order order) { baseMapper.updateByOutTradeNo(order); } @Override public List getTodayOrder(PeriodParam param) { // 多表查询 MPJLambdaWrapper mpjLambdaWrapper = new MPJLambdaWrapper<>(); mpjLambdaWrapper.selectAll(OrderInfo.class) .select(Order::getOrderNo) .select(Order::getOrderStatus) .leftJoin(Order.class,Order::getOrderId,OrderInfo::getOid) .eq(OrderInfo::getDateTime,param.getDateTime()) .eq(Order::getPayStatus,1) .eq(OrderInfo::getSid,param.getMerchantId()); // .gt(OrderInfo::getExpirationTime, LocalDateTime.now()); return baseMapper.selectJoinList(OrderInfo.class, mpjLambdaWrapper); } }