package com.sckw.order.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sckw.order.api.model.TradeOrderCountStatisticsDTO;
import com.sckw.order.model.KwoTradeOrder;
import com.sckw.order.model.dto.WbTOrderExcelStsReqDTO;
import com.sckw.order.model.dto.WbTOrderExcelStsResDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * @desc: 交易订单（采购订单/销售订单）mapper
 * @author: yzc
 * @date: 2023-06-25 14:18
 */
@Mapper
public interface KwoTradeOrderMapper extends BaseMapper<KwoTradeOrder> {

    /**
     * @desc: 获取指定日期最大订单号
     * @author: yzc
     * @date: 2023-09-11 11:44
     * @Param date:
     * @return: java.lang.String
     */
    String getMaxOrderNoByDate(@Param("date") Date date);

    /**
     * @desc: 根据一级企业id查询，企业类型分组，统计非草稿的订单数量
     * @author: yzc
     * @date: 2023-09-11 11:44
     * @Param topEntId:
     * @return: java.util.List<com.sckw.order.api.model.TradeOrderCountStatisticsDTO>
     */
    List<TradeOrderCountStatisticsDTO> getOrderNumByTopEntId(@Param("topEntId") Long topEntId);

    /**
     * @desc: 工作台贸易订单表格统计
     * @author: yzc
     * @date: 2023-09-13 15:46
     * @Param item:
     * @return: java.util.List<com.sckw.order.model.dto.WbTOrderExcelStsResDTO>
     */
    List<WbTOrderExcelStsResDTO> workbenchExcel(@Param("item") WbTOrderExcelStsReqDTO item);
}
