package com.hzs.scm.general.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hzs.common.domain.scm.general.IcGeneralOutH;
import com.hzs.common.domain.scm.general.ext.IcGeneralOutHExt;
import com.hzs.scm.general.param.GeneralParam;
import com.hzs.scm.pub.param.ScmApproveParam;
import com.hzs.system.sys.dto.ApprovalBusinessResultDTO;
import com.hzs.system.sys.dto.LoginUser;

import java.util.List;

/**
 * <p>
 * 其他出库单表头 服务类
 * </p>
 *
 * @author hzs
 * @since 2023-11-27
 */
public interface IIcGeneralOutHService extends IService<IcGeneralOutH> {

    /*
     * @description: 保存其他入库
     * @author: sui q
     * @date: 2023/11/20 15:54
     * @param: null null
     **/
    void insertGeneralOutByGeneralParam(GeneralParam generalParam, Long pkMember);

    /*
     * @description: 修改保存其他入库
     * @author: sui q
     * @date: 2023/11/21 11:51
     * @param: null null
     **/
    void updateGeneralOutByGeneralParam(IcGeneralOutHExt generalOutExt, GeneralParam poOrderParam, Long pkMember);

    /*
     * @description: 根据订单主键查询其他入库
     * @author: sui q
     * @date: 2023/11/21 10:47
     * @param: null null
     **/
    IcGeneralOutHExt queryGeneralOutById(Long pkId, Integer orderStatus);

    /*
     * @description: 查询会员端显示的其他入库
     * @author: sui q
     * @date: 2023/11/25 9:55
     * @param: null null
     **/
    IcGeneralOutHExt queryDisGeneralOutExtById(Long pkId, Integer orderStatus);

    /*
     * @description: 查询会员端显示的其他入库
     * @author: sui q
     * @date: 2023/11/25 9:55
     * @param: null null
     **/
    List<IcGeneralOutHExt> queryDisGeneralOutExtCondition(GeneralParam generalParam);

    /*
     * @description: 删除采购订单
     * @author: sui q
     * @date: 2023/11/21 14:54
     * @param: null null
     **/
    void deleteGeneralOut(Long pkId, Long pkMember);
}
