package com.xtd.project.assets.service;

import java.util.List;
import com.xtd.project.assets.domain.DbAssetsStockIn;
import com.xtd.project.assets.domain.DbAssetsStockInForm;

/**
 * 资产入库Service接口
 *
 * @author xtd
 * @date 2020-04-09
 */
public interface IDbAssetsStockInService
{
    /**
     * 查询资产入库
     *
     * @param aId 资产入库ID
     * @return 资产入库
     */
    public DbAssetsStockIn selectDbAssetsStockInById(Long aId);

    /**
     * 查询资产入库列表
     *
     * @param dbAssetsStockIn 资产入库
     * @return 资产入库集合
     */
    public List<DbAssetsStockIn> selectDbAssetsStockInList(DbAssetsStockIn dbAssetsStockIn);

    /**
     * 新增资产入库
     *
     * @param dbAssetsStockIn 资产入库
     * @return 结果
     */
    public int insertDbAssetsStockIn(DbAssetsStockIn dbAssetsStockIn);

    /**
     * 修改资产入库
     *
     * @param dbAssetsStockIn 资产入库
     * @return 结果
     */
    public int updateDbAssetsStockIn(DbAssetsStockIn dbAssetsStockIn);

    /**
     * 批量删除资产入库
     *
     * @param aIds 需要删除的资产入库ID
     * @return 结果
     */
    public int deleteDbAssetsStockInByIds(Long[] aIds);

    /**
     * 删除资产入库信息
     *
     * @param aId 资产入库ID
     * @return 结果
     */
    public int deleteDbAssetsStockInById(Long aId);

    void commit(Long aId,String processId);

    void recommit(DbAssetsStockIn dbAssetsStockIn);

    DbAssetsStockInForm form(Long aId);
}
