package com.zd.airbottle.service;

import com.zd.airbottle.domain.QpAirGoogs;
import com.zd.airbottle.domain.dto.QpAirGoogsDto;
import com.zd.airbottle.domain.vo.QpAirGoogsVo;

import java.util.List;

/**
 * 气瓶货物Service接口
 *
 * @author zd
 * @date 2022-05-17
 */
public interface IQpAirGoogsService {
    /**
     * 查询气瓶货物
     *
     * @param id 气瓶货物主键
     * @return 气瓶货物
     */
    QpAirGoogs selectQpAirGoogsById(Long id);

    /**
     * 查询气瓶货物详情
     *
     * @param id 气瓶货物主键
     * @return 气瓶货物
     */
    QpAirGoogsVo getById(Long id);

    /**
     * 小程序端获取货品配置信息
     * @param id 货品ID
     * @return 货品配置信息
     */
    QpAirGoogsVo getConfigInfo(Long id);

    /**
     * 查询气瓶货物列表
     *
     * @param qpAirGoogs 气瓶货物
     * @return 气瓶货物集合
     */
    List<QpAirGoogs> selectQpAirGoogsList(QpAirGoogs qpAirGoogs);

    /**
     * 查询气瓶货物列表
     *
     * @param qpAirGoogs 气瓶货物
     * @return 气瓶货物集合
     */
    List<QpAirGoogsVo> list(List<QpAirGoogs> qpAirGoogs);

    /**
     * 新增气瓶货物
     *
     * @param googsDto 气瓶货物
     * @return 结果
     */
    int insertQpAirGoogs(QpAirGoogsDto googsDto);

    /**
     * 修改气瓶货物
     *
     * @param qpAirGoogs 气瓶货物
     * @return 结果
     */
    int updateQpAirGoogs(QpAirGoogs qpAirGoogs);

    /**
     * 修改气瓶货物
     *
     * @param googsDto 气瓶货物
     * @return 结果
     */
    int update(QpAirGoogsDto googsDto);

    /**
     * 批量删除气瓶货物
     *
     * @param ids 需要删除的气瓶货物主键集合
     * @return 结果
     */
    int deleteQpAirGoogsByIds(Long[] ids);

    /**
     * 删除气瓶货物信息
     *
     * @param id 气瓶货物主键
     * @return 结果
     */
    int deleteQpAirGoogsById(Long id);

}
