package net.lab1024.sa.admin.module.business.wms.receive.asn.service;


import net.lab1024.sa.admin.module.business.wms.receive.asn.domain.entity.AsnEntity;
import net.lab1024.sa.admin.module.business.wms.receive.asn.domain.form.AsnQueryForm;
import net.lab1024.sa.admin.module.business.wms.receive.asn.domain.vo.AsnVO;
import net.lab1024.sa.base.common.domain.PageResult;

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

public interface AsnQueryService {

    /**
     * 分页查询
     *
     * @param queryForm 查询条件
     * @return PageResult<AsnVO>
     */
    PageResult<AsnVO> queryPage(AsnQueryForm queryForm);

    /**
     * 根据客户订单号查询入库单
     *
     * @param customerNumber 客户订单号
     * @return AsnEntity
     */
    AsnEntity queryByCustomerNumber(String customerNumber);

    /**
     * 根据ids查询入库
     *
     * @param idList 入库集合
     * @return List<AsnEntity>
     */
    List<AsnEntity> queryByAsnIds(List<Long> idList);

    /**
     * 根据入库单集合查询入库单信息
     *
     * @param idList 入库单集合
     * @return Map<String, AsnEntity>
     */
    Map<Long, AsnEntity> queryByAsnIdsToMap(List<Long> idList);


}
