package com.ho.business.service;

import com.ho.business.entity.*;
import com.ho.business.vo.req.DeviceTypeColReqVO;

import java.util.List;

/**
 * @author gyan
 * @description 针对表【model_device_col】的数据库操作Service
 * @createDate 2023-02-09 18:04:50
 */
public interface ModelDeviceService {


 /* 根据deviceType查询到deviceColId 根据idList查询*/
    List<DeviceTypeCol> selectDeviceColsByDeviceType(String deviceType);

    List<ModelDeviceCol> selectModelColsByDeviceType(String deviceType);

    //在model_device_col表中根据deviceType查询
    List<ModelDeviceCol> selectByModelType(String deviceType);


    //在device_type_col表中根据deviceType查询
    List<DeviceTypeCol> selectByDeviceType(String deviceType);

    //在device_type_col表中根据deviceType查询
    List<DeviceTypeCol> selectByDeviceTypeList(DeviceTypeColReqVO deviceTypeColReqVO);

   List<DeviceTypeCol> selectByDeviceTypeAndIsShow(String deviceType,Integer isShow);

    //根据ids集合查询设备col列表
    List<DeviceTypeCol> selectDeviceColsByIds(List<Integer> deviceColIds);

    /**
     * 根据设备类型查询复合体列表
     * @param type  device 设备 model 模型
     * @param typeName typeName: 设备或模型的具体类型 , 例如　inverter_huawei  或者 inverter
     * @param modelCol 模型的col
     * @return
     */
    List<ModelDeviceColComp> getCompListByType(String type ,String typeName, String modelCol);


    List<ModelDevice> selectByModelTypes(String modelType);
}
