package com.shkj.wms.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.shkj.wms.bo.BaseBarcodesInQueryBo;
import com.shkj.wms.domain.BaseDerive;
import com.shkj.wms.domain.BaseGoodsData;

import java.util.List;

/**
 * 产品信息Mapper接口
 *
 * @author zjx
 * @date 2023-04-06
 */
public interface BaseGoodsDataMapper extends BaseMapper<BaseGoodsData>
{
    /**
     * 查询产品信息
     *
     * @param id 产品信息主键
     * @return 产品信息
     */
    public BaseGoodsData selectBaseGoodsById(Long id);

    /**
     * 查询产品信息列表
     *
     * @param baseGoods 产品信息
     * @return 产品信息集合
     */
    public List<BaseGoodsData> selectBaseGoodsList(BaseGoodsData baseGoods);

    /**
     * 新增产品信息
     *
     * @param baseGoods 产品信息
     * @return 结果
     */
    public int insertBaseGoods(BaseGoodsData baseGoods);

    /**
     * 修改产品信息
     *
     * @param baseGoods 产品信息
     * @return 结果
     */
    public int updateBaseGoods(BaseGoodsData baseGoods);

    /**
     * 删除产品信息
     *
     * @param id 产品信息主键
     * @return 结果
     */
    public int deleteBaseGoodsById(Long id);

    /**
     * 批量删除产品信息
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBaseGoodsByIds(Long[] ids);


    /**
     * 获取所有颜色数据
     *
     * @param
     * @return 结果
     */
    public List<String> getBumperColor();

    /**
     * 获取所有车型数据
     *
     * @param
     * @return 结果
     */
    public List<String> getBumperVehicheModel();

    /**
     * 获取所有派生信息
     *
     * @param
     * @return 结果
     */
    public List<String> getBumperDerive();

    /**
     * 获取位置代码 QHFR
     */
    public List<String> getBumperLocationCode();

    /**
     * 根据派生获取物料信息
     */

    public List<BaseGoodsData> getBaseGoodDataInByDerice(BaseDerive baseDerive);
    public List<BaseGoodsData> getBaseGoodDatarear(BaseDerive baseDerive);

    public List<BaseGoodsData> getBaseGoodDataNotBarcode(BaseBarcodesInQueryBo bo);

}
