package com.inspect.metadata.prodevmnt.service;

import com.inspect.metadata.prodevmnt.domain.BasedataDeviceType;
import com.inspect.metadata.prodevmnt.domain.vo.ProDeviceTypeTreeSelectVO;

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

public interface IBasedataDeviceTypeService {
    BasedataDeviceType selectBasedataDeviceTypeByDeviceTypeId(Long typeId);

    List<BasedataDeviceType> selectBasedataDeviceTypeList(BasedataDeviceType deviceType);

    int insertBasedataDeviceType(BasedataDeviceType deviceType);

    int updateBasedataDeviceType(BasedataDeviceType deviceType);

    int deleteBasedataDeviceTypeByDeviceTypeIds(Long[] typeIds);

    int deleteBasedataDeviceTypeByDeviceTypeId(Long typeId);

    Map getDeviceTypeIdByDeviceTypeName(BasedataDeviceType deviceType);

    String checkDeviceTypeNameUnique(BasedataDeviceType deviceType);

    String checkDeviceTypeCodeUnique(BasedataDeviceType deviceType);

    int getMaxDeviceTypeId();

    Map<Long, String> getDeviceTypeAllPatchIdName();

    List<ProDeviceTypeTreeSelectVO> getProDeviceTypeTreeSelect(BasedataDeviceType deviceType);

    List<BasedataDeviceType> getCompTypeTreeSelectByMainDeviceTypeId(BasedataDeviceType deviceType);
}
