package org.qinan.safetyeval.infrastructure.persistence.repository;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.repository.repo.BaseRepository;
import org.qinan.safetyeval.client.change.request.QualFilingEquipmentChangePageQry;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualFilingEquipmentChangeDO;

import java.util.List;

/**
 * 备案申请装备-变更
 *
 * @Author: ltq
 * @date 2026-07-02 10:03:59
 */
public interface QualFilingEquipmentChangeRepository extends BaseRepository<QualFilingEquipmentChangeDO> {
    /**
     * 根据ID查找
     *
     * @param id 备案申请装备-变更ID
     * @return
     */
    QualFilingEquipmentChangeDO getById(Long id);

    /**
     * 分页查找备案申请装备-变更对象
     *
     * @param iPage                            分页对象
     * @param qualFilingEquipmentChangePageQry 条件对象
     * @return ipage
     */
    IPage<QualFilingEquipmentChangeDO> listQualFilingEquipmentChangePage(IPage iPage, QualFilingEquipmentChangePageQry qualFilingEquipmentChangePageQry);

    /**
     * 新增备案申请装备-变更
     *
     * @param qualFilingEquipmentChangeDO 备案申请装备-变更
     * @return 结果
     */
    Boolean addQualFilingEquipmentChange(QualFilingEquipmentChangeDO qualFilingEquipmentChangeDO);

    /**
     * 修改备案申请装备-变更
     *
     * @param qualFilingEquipmentChangeDO 备案申请装备-变更
     * @return 结果
     */
    Boolean updateQualFilingEquipmentChange(QualFilingEquipmentChangeDO qualFilingEquipmentChangeDO);


    /**
     * 删除备案申请装备-变更
     *
     * @param id
     * @return 结果
     */
    Boolean deletedQualFilingEquipmentChangeById(Long id);

    /**
     * 删除备案申请装备-变更
     *
     * @param ids
     * @return 结果
     */
    Boolean deletedQualFilingEquipmentChangeByIds(Long[] ids);

    /**
     * 根据filingId查询备案申请装备-变更列表
     */
    List<QualFilingEquipmentChangeDO> listByFilingId(Long filingId);

}
