package com.bailuntec.mapper;

import com.bailuntec.domain.entity.DcAutoTurnover;
import com.bailuntec.domain.example.DcAutoTurnoverExample;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface DcAutoTurnoverMapper {
    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     */
    long countByExample(DcAutoTurnoverExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     */
    int deleteByExample(DcAutoTurnoverExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     */
    int deleteByPrimaryKey(Integer id);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     */
    int insert(DcAutoTurnover record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     */
    int insertSelective(DcAutoTurnover record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    DcAutoTurnover selectOneByExample(DcAutoTurnoverExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     */
    List<DcAutoTurnover> selectByExample(DcAutoTurnoverExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     */
    DcAutoTurnover selectByPrimaryKey(Integer id);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     */
    int updateByExampleSelective(@Param("record") DcAutoTurnover record, @Param("example") DcAutoTurnoverExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     */
    int updateByExample(@Param("record") DcAutoTurnover record, @Param("example") DcAutoTurnoverExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     */
    int updateByPrimaryKeySelective(DcAutoTurnover record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     */
    int updateByPrimaryKey(DcAutoTurnover record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    int upsert(DcAutoTurnover record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_turnover
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    int upsertSelective(DcAutoTurnover record);


    void truncateAutoInboundTable();

    void truncateAutoInventoryTable();

    void truncateAutoShortSupplyTable();

    void truncateAutoTurnoverTable();

    void truncateAutoSalesTable();

    void truncateAutoExceptionTable();

    Integer yesterdayStock(@Param("bailun_sku")String bailun_sku,@Param("warehouse_code") String warehouse_code);
}