package com.prolog.upcloud.base.wh.operate.service;

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

import com.prolog.entity.vo.CompleteTaskItemVO;
import com.prolog.framework.core.pojo.Page;
import com.prolog.upcloud.base.wh.operate.model.WmsAdjustH;
import com.prolog.upcloud.base.wh.operate.vo.ErpAdjustAddVO;
import com.prolog.upcloud.base.wh.operate.vo.WmsAdjustAddVO;
import com.prolog.upcloud.base.wh.operate.vo.WmsAdjustUpdateVO;

/**
 * @author zzz
 * @desc 库存调整
 * @date 2021-04-07
 */
public interface AdjustService {

    void saveAdjust(WmsAdjustAddVO wmsAdjustAddVO);

    void saveBatchAdjust(String checkLineIds);

    void updateAdjust(WmsAdjustUpdateVO wmsAdjustUpdateVO);

    void examineAdjust(Map<String,Object> map);

    Page<WmsAdjustH> getAdjustHPage(String warehouseId, String srcBillHId, String status, Integer pageSize, Integer pageNum);

	void saveAdjustByPad(WmsAdjustAddVO wmsAdjustAddVO);

	void rejectAdjust(Map<String, Object> map);

	void procesAdjustAudit(String ids);

	void doCallBack2erp(String billids);

	void doCallBackResult2erp(String billids);

	void genAdjust(List<ErpAdjustAddVO> ErpAdjustAddVOList);

	void rejectErpForGen(List<ErpAdjustAddVO> erpAdjustAddVOList);

	Object genBatchInfo(WmsAdjustAddVO addVO);

	Object hostAdd(WmsAdjustAddVO addVO);

	/**
	 * EIS拆零区盘点完成回告WMS后生成库存调整单
	 *
	 * @param backMap 入参
	 */
	void buildAndSaveAdjust(Map<String, List<CompleteTaskItemVO>> backMap);
}
