package com.hzs.scm.io.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hzs.common.domain.scm.io.IoOrder;
import com.hzs.common.domain.scm.io.ext.IoOrderExt;
import com.hzs.scm.io.param.IoOrderParam;
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 2024-04-22
 */
public interface IIoOrderService extends IService<IoOrder> {

    /*
     * @description: 保存业务领用
     * @author: sui q
     * @date: 2023/11/20 15:54
     * @param: null null
     **/
    void insertSaveIoOrderByOrderParam(IoOrderParam ioOrderParam, Long pkMember);

    /*
     * @description: 修改保存业务领用订单
     * @author: sui q
     * @date: 2023/11/21 11:51
     * @param: null null
     **/
    void updateIoOrderByOrderParam(IoOrderExt ioOrderExt, IoOrderParam ioOrderParam, Long pkMember);

    /*
     * @description: 根据订单主键查询业务领用
     * @author: sui q
     * @date: 2023/11/21 10:47
     * @param: null null
     **/
    IoOrderExt queryIoOrderById(Long pkOrder, Integer orderStatus);

    /*
     * @description: 查询签呈显示的业务领用
     * @author: sui q
     * @date: 2023/11/28 15:00
     * @param: null null
     **/
    IoOrderExt queryDisIoOrderById(Long pkOrder, Integer orderStatus);

    /*
     * @description: 根据查询条件查询业务领用
     * @author: sui q
     * @date: 2023/11/21 15:01
     * @param: null null
     **/
    List<IoOrderExt> queryIoOrderByCondition(IoOrderParam ioOrderParam);

    /*
     * @description: 删除业务领用
     * @author: sui q
     * @date: 2023/11/21 14:54
     * @param: null null
     **/
    void deleteIoOrder(Long pkOrder, Long pkMember);

}
