package com.muchinfo.mtp3century.service;

import com.muchinfo.mtp3century.utils.AjaxResult;
import com.muchinfo.mtp3common.vo.PageResult;
import com.muchinfo.mtp3pojos.entity.Dgfactoryitemtype;
import com.muchinfo.mtp3pojos.vo.LineTreeNode;
import com.muchinfo.mtp3pojos.vo.warehouse.*;

import javax.servlet.http.HttpServletRequest;

public interface IWarehouseService {
    PageResult<WarehouseQueryResult> query(WarehouseQueryParam param, HttpServletRequest request);

    AjaxResult<WarehouseDetailResult> queryDetail(String applyid, HttpServletRequest request);

    AjaxResult<LineTreeNode> warehouseTree(Long categoryid,HttpServletRequest request);

    AjaxResult<Dgfactoryitemtype> querydgfactory(Long wrstandardid, HttpServletRequest request);

    AjaxResult wrInApply(WarehouseInAddParam param, HttpServletRequest request);

    AjaxResult queryUserList(HttpServletRequest request);

    AjaxResult querywslist(Long userid, HttpServletRequest request);

    AjaxResult querywhlist(Long userid, Long wrstandardid, HttpServletRequest request);

    AjaxResult<WrHoldLBResult> queryWRHoldLB(WrHoldLBParam param, HttpServletRequest request);

    AjaxResult wrOutApply(WarehouseOutAddParam param, HttpServletRequest request);

    PageResult<WarehouseReceiptResult> receiptquery(WarehouseReceiptParam param, HttpServletRequest request);

    AjaxResult dealreceipt(WarehouseReceiptAddParam param, HttpServletRequest request);

    AjaxResult<WarehouseReceiptDetailResult> receiptDetail(Long warehouseid, Integer isaudit, HttpServletRequest request);

    AjaxResult receiptaudit(WarehouseReceiptAuditParam param, HttpServletRequest request);

    AjaxResult receiptlogff(Long autoid, HttpServletRequest request);

    PageResult<WarehouseVarietyResult> varietquery(WarehouseVarietyParam param, HttpServletRequest request);

    AjaxResult<WarehouseVarietyDetailResult> varietdetail(Long wrstandardid, HttpServletRequest request);
}
