package com.casic.missiles.service.equipment;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.casic.missiles.dto.ReturnDTO;
import com.casic.missiles.dto.equipment.RemindQuantityDTO;
import com.casic.missiles.dto.equipment.StandardEquipmentRequest;
import com.casic.missiles.model.equipment.EquipmentStandardEquipment;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * <p>
 * 标准装置表 服务类
 * </p>
 *
 * @author cuicheng
 * @since 2022-12-15
 */
public interface IEquipmentStandardEquipmentService extends IService<EquipmentStandardEquipment> {
    Page<EquipmentStandardEquipment> listPage(Page<EquipmentStandardEquipment> page, StandardEquipmentRequest request) throws Exception;

    ReturnDTO add(EquipmentStandardEquipment meterStandardEquipment);

    ReturnDTO deleteById(Long id);

    ReturnDTO update(EquipmentStandardEquipment meterStandardEquipment);

    List<EquipmentStandardEquipment> list(StandardEquipmentRequest request) throws Exception;

    ReturnDTO addList(List<EquipmentStandardEquipment> meterStandardEquipmentList) throws Exception;

    EquipmentStandardEquipment getById(Long id) throws Exception;

    Page<EquipmentStandardEquipment> remindListPage(Page<EquipmentStandardEquipment> page, StandardEquipmentRequest request) throws Exception;

    RemindQuantityDTO remindQuantity();

    ReturnDTO deleteRemind(Long id);

    ReturnDTO remind(Long id);

    void exportRemindList(HttpServletResponse response, StandardEquipmentRequest request) throws Exception;
}
