package com.zksy.WaterSupply.WaterPlantInfo.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zksy.WaterSupply.WaterPlantInfo.domain.WaterPlantInfo;

import java.time.LocalDateTime;
import java.util.List;

public interface IWaterPlantInfoService extends IService<WaterPlantInfo> {

    /**
     * 分页查询水厂数据
     */
    IPage<WaterPlantInfo> queryPage(Page<WaterPlantInfo> page,
                                    String plantCode,
                                    String plantName,
                                    String status,
                                    String principal,
                                    LocalDateTime startTime,
                                    LocalDateTime endTime);

    /**
     * 分页查询回收站数据
     */
    IPage<WaterPlantInfo> queryDeletedPage(Page<WaterPlantInfo> page,
                                           String plantCode,
                                           String plantName,
                                           String status,
                                           LocalDateTime startTime,
                                           LocalDateTime endTime);

    /**
     * 批量恢复已删除数据
     */
    boolean restoreByIds(List<Long> ids, String updateBy);

    /**
     * 批量彻底物理删除数据
     */
    boolean deleteByIdsPhysically(List<Long> ids);
}