package com.panzhihua.service_community.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.panzhihua.common.model.dtos.shop.PageComFlowerOrderListDTO; import com.panzhihua.common.model.dtos.shop.PageComShopOrderSearchDTO; import com.panzhihua.common.model.vos.shop.*; import com.panzhihua.service_community.model.dos.ComShopFlowerOrderDO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; import java.util.Date; import java.util.List; /** * @ClassName: ComShopFlowerOrderMapper * @Author: yh * @Date: 2022/11/9 16:46 * @Description: TODO */ @Mapper public interface ComShopFlowerOrderDAO extends BaseMapper { IPage pageOrderList(@Param("page") Page page, @Param("comOrderListDTO") PageComFlowerOrderListDTO comOrderListDTO); IPage pageOrderListNoDelivery(@Param("page") Page page, @Param("comOrderListDTO") PageComFlowerOrderListDTO comOrderListDTO); IPage pageOrderBy(@Param("page") Page page, @Param("pageComShopOrderSearchDTO") PageComShopOrderSearchDTO pageComShopOrderSearchDTO); /** * 修改配送中状态 * * @param orderIds * @param deliveryId * @param status * @param deliveryTime */ void updateOrder(@Param("orderIds") List orderIds, @Param("deliveryId") Long deliveryId, @Param("deliveryNo") String deliveryNo, @Param("status") int status, @Param("deliveryTime") Date deliveryTime); /** * 自提送达后修改配送状态和时间 * * @param deliveryId * @param serviceTime * @param status */ void updateOrderStatus(@Param("deliveryId") Long deliveryId, @Param("serviceTime") Date serviceTime, @Param("status") int status); IPage pageOrderByStoreId(@Param("page") Page page, @Param("comOrderListDTO") PageComFlowerOrderListDTO comOrderListDTO); /** * 根据类型统计订单数量 * * @param deliveryType * @return */ List selectCountByDeliveryType(@Param("deliveryType") Integer deliveryType, @Param("storeId") Long storeId); List selectCountByStoreId(@Param("storeId") Long storeId, @Param("deliveryType") Integer deliveryType); List selectSumAmountByStoreId(@Param("storeId") Long storeId); /** * 获取商家总营业额 * * @param storeId * @return */ BigDecimal selectTurnover(@Param("storeId") Long storeId); /** * 获取商家可结算额度 15天以前的完成的订单 * * @param storeId * @return */ BigDecimal selectSettlement(@Param("storeId") Long storeId); List selectSumOrderAndAmountByStoreId(@Param("storeId") Long storeId); /** * 查询近15天的订单量 * * @param storeId * @return */ List selectCountOrderDayByStoreId(@Param("storeId") Long storeId, @Param("days") Integer days); /** * 查询当年月份的订单量 * * @param storeId * @return */ List selectCountOrderMonthByStoreId(@Param("storeId") Long storeId); IPage pageOrderByDeliveryNo(@Param("page") Page page, @Param("comOrderListDTO") PageComFlowerOrderListDTO comOrderListDTO); /** * 查询近n天的营收 * * @param storeId * @return */ List selectOrderSumPayDayByStoreId(@Param("storeId") Long storeId, @Param("days") Integer days); /** * 查询当年月份的营收 * * @param storeId * @return */ List selectOrderSumMonthByStoreId(@Param("storeId") Long storeId); }