package com.njcn.energy.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.energy.pojo.param.AirStrategyParam;
import com.njcn.energy.pojo.param.NetDevParam;
import com.njcn.energy.pojo.po.AirStrategy;
import com.njcn.energy.pojo.po.NetDev;
import com.njcn.energy.pojo.vo.AirStrategyVO;
import com.njcn.energy.pojo.vo.EnergyDeviceTreeVO;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;

/**
 * pqs
 *
 * @author cdf
 * @date 2022/4/21
 */
public interface EleAirStrategyService extends IService<AirStrategy> {

    Page<AirStrategy> listAirStrategy(AirStrategyParam.AirStrategyQueryParam airStrategyQueryParam);

    /**
     * 新增空调策略
     *
     * @param airStrategyParam 空调策略数据
     * @return 操作结果
     */
    boolean addAirStrategy(AirStrategyParam airStrategyParam);

    /**
     * 修改空调策略
     *
     * @param updateParam 空调策略数据
     * @return 操作结果
     */
    boolean updateAirStrategy(AirStrategyParam.AirUpdateParam updateParam);

    /**
     * 批量逻辑删除空调策略数据
     * @param id id
     * @return 操作结果
     */
    boolean deleteAirStrategy(String id);

    /**
     * 停止策略
     * @param id id
     * @return 操作结果
     */
    boolean stopAirStrategy(String id);


    /**
     * 获取空调策略信息
     * @param id id
     * @return NetDev
     */
    AirStrategyVO findById(String id);


    /**
     * 停止执行任务
     * @author cdf
     * @date 2022/4/22
     */
    boolean startAirStrategy(String id);


    /**
     * 定时执行任务
     * @author cdf
     * @date 2022/4/22
     */
    void dealAirStrategyId(String operation);



}
