package com.zbf.system.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.zbf.system.domain.TBaseGoods;
import org.apache.ibatis.annotations.Select;

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

/**
 * 物料Mapper接口
 *
 * @author sunits
 * @date 2024-06-15
 */
public interface TBaseGoodsMapper extends BaseMapper<TBaseGoods> //修改
{
    /**
     * 查询物料
     *
     * @param id 物料主键
     * @return 物料
     */
    public TBaseGoods selectTBaseGoodsById(Long id);

    /**
     * 查询物料列表
     *
     * @param tBaseGoods 物料
     * @return 物料集合
     */
    public List<TBaseGoods> selectTBaseGoodsList(TBaseGoods tBaseGoods);

    /**
     * 新增物料
     *
     * @param tBaseGoods 物料
     * @return 结果
     */
    public int insertTBaseGoods(TBaseGoods tBaseGoods);

    /**
     * 修改物料
     *
     * @param tBaseGoods 物料
     * @return 结果
     */
    public int updateTBaseGoods(TBaseGoods tBaseGoods);
    public int updateRFID(TBaseGoods tBaseGoods);

    /**
     * 删除物料
     *
     * @param id 物料主键
     * @return 结果
     */
    public int deleteTBaseGoodsById(Long id);

    /**
     * 批量删除物料
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTBaseGoodsByIds(Long[] ids);

    /**
     * 批量启用物料
     *
     * @param ids 需要启用的数据主键集合
     * @return 结果
     */
    public int enableTBaseGoodsByIds(Long[] ids);

    /**
     * 批量禁用物料
     *
     * @param ids 需要禁用的数据主键集合
     * @return 结果
     */
    public int disabledTBaseGoodsByIds(Long[] ids);

    /**
     * 模糊查询商品资料
     *
     * @param goodsId 商品资料主键
     * @return 商品资料
     */
    public List<TBaseGoods> queryTBaseGoodsByGoodsId(String goodsId);

    List<Map<String, Object>> selectTotalPriceBy();
    List<Map<String, Object>> selectChild();



    @Select("select * from t_base_goods where goods_id = #{goodsId}")
    TBaseGoods selebyGoodId(String goodsId);
}
