package com.sckw.transport.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sckw.transport.model.KwtWaybillOrderTrack;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author zk
 * @desc 车辆运单状态记录
 * @date 2023/10/16
 */
@Mapper
public interface KwtWaybillOrderTrackMapper extends BaseMapper<KwtWaybillOrderTrack> {

    /**
     * 新增运单状态记录
     * @param record 新增信息
     * @return 更新记录数
     */
    @Override
    int insert(KwtWaybillOrderTrack record);

    /**
     * 查询车辆运单状态信息
     * @param wOrderId 车辆订单id
     * @param status 状态
     * @desc 查询车辆运单状态信息
     * @author zk
     * @date 2023/7/27
     * @return 车辆运单状态信息
     **/
    KwtWaybillOrderTrack findWaybillOrderTrack(@Param("wOrderId") Long wOrderId, @Param("wSubtaskId")  Long wSubtaskId, @Param("wAddressId")  Long wAddressId, @Param("status") Integer status);

    /**
     * 查询车辆运单状态信息
     * @param wOrderId 车辆订单id
     * @param status 状态
     * @desc 查询车辆运单状态信息
     * @author zk
     * @date 2023/7/27
     * @return 车辆运单状态信息
     **/
    KwtWaybillOrderTrack findWaybillOrderTrackV1(@Param("wOrderId") Long wOrderId, @Param("status") String status);

    /**
     * 查询运单状态记录
     * @param wOrderId 运单ID
     * @param wSubtaskId 运单子单ID
     * @param wAddressId 地址ID
     * @param status 状态
     * @return 运单状态记录信息
     */
    List<KwtWaybillOrderTrack> findTrack(@Param("wOrderId") Long wOrderId, @Param("wSubtaskId")  Long wSubtaskId, @Param("wAddressId")  Long wAddressId, @Param("status") Integer status);
}