package com.bs.jxc.service;

import com.bs.common.core.domain.AjaxResult;
import com.bs.jxc.domain.CkBillCargo;
import com.bs.jxc.domain.CkBillStock;
import com.bs.jxc.domain.CkCargoStock;
import com.github.yulichang.base.MPJBaseService;
import com.bs.jxc.domain.CkBill;

/**
 * 出入库单据Service接口
 *
 * @author bs
 * @date 2023-07-10
 */
public interface ICkBillService extends MPJBaseService<CkBill> {


    /**
     * 混配
     *
     * @param ckBill
     * @return
     */
    public AjaxResult mixtureCargo(CkBill ckBill);

    /**
     * 转场
     *
     * @param ckBill
     * @return
     */
    public AjaxResult transferCargo(CkBill ckBill);

    /**
     * 出库
     *
     * @param ckBill
     * @return
     */
    public AjaxResult outCargo(CkBill ckBill);
    /**
     * 出库撤回
     *
     * @param id
     * @return
     */
    public AjaxResult recallOutBill(Long id);

    /**
     * 货物入库
     *
     * @param ckBill
     * @return
     */
    public AjaxResult putCargo(CkBill ckBill);
    /**
     * 货物入库 撤回
     *
     * @param id
     * @return
     */
    public AjaxResult recallPutBill(Long id);

    public AjaxResult warehouseWork(CkBill ckBill,Boolean isRevocation);

    public void saveChange(CkBillCargo ckBillCargo, CkBillStock ckBillStock);



}
