package com.unis.base.server.dao;

import java.util.List;
import java.util.Map;

import com.unis.base.common.vo.TyLskcxxQueryVO;
import com.unis.base.common.vo.TyLskcxxVO;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;

import tk.mybatis.mapper.common.Mapper;

import com.unis.base.server.entity.TyLskcxxDO;
import com.unis.base.server.example.TyLskcxxExample;

@Transactional(rollbackFor = Exception.class)
@org.apache.ibatis.annotations.Mapper
@Repository
public interface TyLskcxxDao extends Mapper<TyLskcxxDO> {

    TyLskcxxDO selectById(TyLskcxxVO tyLskcxxVO);

    int countByExample(TyLskcxxExample example);

//    int deleteByExample(TyLskcxxExample example);
//
//    int deleteByPrimaryKey(String kcxxid);

    int insert(TyLskcxxDO record);

    int insertSelective(TyLskcxxDO record);

//    List<TyLskcxxDO> selectByExample(TyLskcxxExample example);

//    TyLskcxxDO selectByPrimaryKey(String kcxxid);
    TyLskcxxDO selectByKey(String kcxxid);

    /**
     * 查询历史库存信息
     * @param tyLskcxxQueryVO
     * @return
     */
    List<TyLskcxxDO> selectLastestByEntity(TyLskcxxQueryVO tyLskcxxQueryVO);
//
//    int updateByExampleSelective(@Param("record") TyLskcxxDO record, @Param("example") TyLskcxxExample example);
//
//    int updateByExample(@Param("record") TyLskcxxDO record, @Param("example") TyLskcxxExample example);
//
//    int updateByPrimaryKeySelective(TyLskcxxDO record);

    int updateByPrimaryKey(TyLskcxxDO record);

    List<TyLskcxxDO> selectByQueryVO(TyLskcxxQueryVO tyLskcxxQueryVO);
}