package com.ho.business.service;

import com.ho.business.entity.DeviceTypeConfig;
import com.ho.business.entity.ModelDevice;
import com.ho.business.entity.ModelType;
import com.ho.business.vo.req.modelType.ModelTypeAddReq;
import com.ho.business.vo.req.modelType.ModelTypeQueryReq;
import com.ho.business.vo.resp.modelType.ModelTypeResp;
import com.ho.common.tools.util.PageResult;

import java.util.List;

/**
 * @author gyan
 * @desc: model_type
 * @DateTime: 2023/3/8 11:29
 */
public interface ModelTypeService {

    /**
     * 新增模型类型
     * @param modelType
     * @return
     */
    int insetModelType(ModelType modelType);

    /**
     * 新增模型数据
     * @param modelDevice
     * @return
     */
    int insetModelDevice(ModelDevice modelDevice);

    /**
     * 更新模型数据
     * @param modelDevice
     */
    void updateModelDevice(ModelDevice modelDevice);

    /**
     * 删除模型数据
     * @param ids
     * @return
     */
    int deleteModelDevice(List<Integer> ids);

    PageResult<ModelTypeResp> selectPage(ModelTypeQueryReq vo);
    //根据model_type查询名称
    ModelType selectByModelType(String modelType);

    List<ModelType> getModelType();

    List<ModelDevice> getDeviceType(String modelType);

    List<ModelTypeAddReq> selectDeviceType(ModelTypeAddReq vo);

    List<DeviceTypeConfig> selectList(ModelTypeAddReq vo);

    ModelDevice selectByDict(String deviceType, String modelType);
}
