package com.fs.his.service;

import java.util.List;


import com.fs.his.domain.FsInquiryOrderReport;
import com.fs.his.param.FsInquiryOrderReportParam;
import com.fs.his.vo.FsInquiryOrderReportListVO;
import com.fs.his.vo.FsInquiryOrderReportUVO;
import com.fs.his.vo.FsInquiryOrderReportVO;


/**
 * 问诊报告Service接口
 *
 * @author fs
 * @date 2023-09-04
 */
public interface IFsInquiryOrderReportService
{
    /**
     * 查询问诊报告
     *
     * @param reportId 问诊报告主键
     * @return 问诊报告
     */
    public FsInquiryOrderReport selectFsInquiryOrderReportByReportId(Long reportId);

    /**
     * 查询问诊报告列表
     *
     * @param fsInquiryOrderReport 问诊报告
     * @return 问诊报告集合
     */
    public List<FsInquiryOrderReport> selectFsInquiryOrderReportList(FsInquiryOrderReport fsInquiryOrderReport);

    /**
     * 新增问诊报告
     *
     * @param fsInquiryOrderReport 问诊报告
     * @return 结果
     */
    public int insertFsInquiryOrderReport(FsInquiryOrderReport fsInquiryOrderReport);

    /**
     * 修改问诊报告
     *
     * @param fsInquiryOrderReport 问诊报告
     * @return 结果
     */
    public int updateFsInquiryOrderReport(FsInquiryOrderReport fsInquiryOrderReport);

    /**
     * 批量删除问诊报告
     *
     * @param reportIds 需要删除的问诊报告主键集合
     * @return 结果
     */
    public int deleteFsInquiryOrderReportByReportIds(Long[] reportIds);

    /**
     * 删除问诊报告信息
     *
     * @param reportId 问诊报告主键
     * @return 结果
     */
    public int deleteFsInquiryOrderReportByReportId(Long reportId);

    List<FsInquiryOrderReportListVO> selectFsInquiryOrderReportListVO(FsInquiryOrderReportParam fsInquiryOrderReport);

    FsInquiryOrderReportVO selectFsInquiryOrderReportByReportIdVO(Long reportId);

    int updateFsInquiryOrderReportAudit(FsInquiryOrderReport fsInquiryOrderReport);

    FsInquiryOrderReport selectFsInquiryOrderReportByOrderId(Long orderId);

    Integer selectFsInquiryOrderReportIdByOrderId(Long id);

    String selectFsTestBody();

    FsInquiryOrderReportUVO selectFsInquiryOrderReportUVOByOrderId(Long orderId);

    FsInquiryOrderReportVO selectFsInquiryOrderReportByOrderIdVO(Long code);

    Boolean isEntityNull(FsInquiryOrderReportParam fsInquiryOrderReport);

    Long selectFsInquiryOrderReportListVOCount(FsInquiryOrderReportParam fsInquiryOrderReport);

    void exportData(FsInquiryOrderReportParam fsInquiryOrderReport);

}
