package com.css.simulation.resource.server.infra.db.mysql.mapper;

import api.common.pojo.param.scene.SceneDeleteParam;
import api.common.pojo.param.scene.SceneNaturalParam;
import api.common.pojo.po.scene.SceneNaturalPO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

@Mapper
public interface SceneNaturalMapper {
    void saveSceneNatural(SceneNaturalPO params);
    void saveSceneNaturalList(List<SceneNaturalPO> list);
    List<SceneNaturalPO> querySceneNaturalList(SceneNaturalParam params);
    List<SceneNaturalPO> querySceneNaturalListByBqAndXlk(Map<String, SceneNaturalParam> map);
    List<SceneNaturalPO> querySceneNaturalListByBq(Map<String, SceneNaturalParam> map);
    void deleteSceneNatural(SceneNaturalPO params);
    SceneNaturalPO querySceneNaturaByName(SceneNaturalPO sceneNaturalPO);
    List<SceneNaturalPO> selectAllByName(SceneNaturalPO sceneNaturalPO);
    Integer querySceneNumBySy(SceneNaturalParam params);
    void updateSceneNatural(SceneNaturalPO params);
    void updateSceneNaturalList(List<SceneNaturalPO> list);
    List<SceneNaturalPO> querySceneNaturalListByQx(SceneNaturalParam params);
    List<SceneNaturalPO> querySceneNaturalListByBqAndXlkAndQx(Map<String, SceneNaturalParam> map);
    List<SceneNaturalPO> querySceneNaturalListByBqAndQx(Map<String, SceneNaturalParam> map);
    SceneNaturalPO querySceneNaturalById(String id);
    List<String> selectIdsByNames(@Param("list")List<String> list);
    void deleteBySceneNames(SceneDeleteParam sceneDeleteParam);
}
