package com.prolog.cs.biz.inbound.dao.rcv;

import com.prolog.cs.biz.inbound.dto.rcv.RcvLinesDTO;
import com.prolog.cs.biz.inbound.model.rcv.RcvLines;
import com.prolog.cs.biz.inbound.vo.LineQueryVO;
import com.prolog.cs.biz.inbound.vo.RcvLineLotInfo;
import com.prolog.cs.biz.inbound.vo.RcvLinesQueryVO;
import com.prolog.framework.dao.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * @Description
 * @Date 2021-03-24
 */

public interface RcvLinesMapper extends BaseMapper<RcvLines> {

	List<RcvLinesDTO> findList(RcvLinesQueryVO queryVO);

	RcvLinesDTO findByPkId(String pkId);

	BigDecimal findRemainQty(@Param("asnLineId") String asnLineId, @Param("enterpriseId") String enterpriseId);

	List<RcvLineLotInfo> getRcvPreItemLotNum(RcvLinesQueryVO queryVo);

	Long saveWithVaildate(RcvLines lines);

	List<RcvLinesDTO> getReport(LineQueryVO lineQueryVO);

	Long updateAsnDetails(String asnLineid);

	Long updateAsnHeader(String asnHeaderId);

	List<RcvLinesDTO> findListNew(@Param("rcvHeaderIdList") List<String> rcvHeaderIdList);

	List<Map<String, Object>> findPrintTempInfo(@Param("warehouseId") String warehouseId,@Param("tempType") String tempType);

}
