package com.zfire.mall.manager.commonmapper.manage.product;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zfire.mall.manager.bean.MainBean;
import com.zfire.mall.manager.bean.manage.product.price.ProductUpdPriceBillBean;
import com.zfire.mall.manager.bean.manage.product.price.ProductUpdPriceBillListBean;
import com.zfire.mall.manager.bean.manage.product.price.ProductWalletBean;
import com.zfire.mall.manager.bean.manage.v2.product.price.ProductUpdPriceBillVO;
import com.zfire.mall.manager.zfire.bean.ZfireParamBean;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ProductUpdPriceBillReserveMapper {

    IPage<ProductUpdPriceBillListBean> listPage(Page<Object> objectPage,
                                                @Param("materialOldNumber") String materialOldNumber,
                                                @Param("materialNumber") String materialNumber,
                                                @Param("materialName") String materialName,
                                                @Param("remark") String remark,
                                                @Param("mainId") String mainId,
                                                @Param("saleTypeId") String saleTypeId,
                                                @Param("startDate") String startDate,
                                                @Param("adminCompanyIds") List<String> adminCompanyIds,
                                                @Param("specification") String specification,
                                                @Param("billType") String billType,
                                                @Param("k3CategoryNumber") String k3CategoryNumber,
                                                @Param("k3CategoryIds") List<String> k3CategoryIds);

    ProductUpdPriceBillBean detail(@Param("id") String id, @Param("adminCompanyIds") List<String> adminCompanyIds);

    /**
     * 获取钱包
     */
    //public List<ProductWalletBean> queryWallet(@Param("updPriceBillId") String updPriceBillId);

    /**
     * 获取钱包
     */
    public List<ProductWalletBean> queryWallet(@Param("updPriceBillItemIds") List<String> updPriceBillItemIds);

    /**
     * 查询品类
     */
    public MainBean queryMain(@Param("materialId") String materialId);

    IPage<ProductUpdPriceBillVO> v2ListPage(Page page, @Param("ex") ZfireParamBean zfireParamBean);
}
