package com.ai.da.service;

import com.ai.da.mapper.primary.entity.PanTone;
import com.ai.da.model.dto.GetRgbByHsvBatchDTO;
import com.ai.da.model.vo.PantoneVO;
import com.baomidou.mybatisplus.extension.service.IService;

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

/**
 * 服务类
 *
 * @author easy-generator
 * @since 2022-09-30
 */
public interface PanToneService extends IService<PanTone> {

    /**
     * 根据rgb值查询
     *
     * @param h
     * @param s
     * @param v
     * @return
     */
    PantoneVO getByHSV(Integer h, Integer s, Integer v);

    /**
     * 根据TCX值查询
     *
     * @param txc
     * @return
     */
    PantoneVO getByTCX(String txc);

    /**
     * 根据TRGB值查询
     *
     * @param r
     * @param g
     * @param b
     * @return
     */
    PantoneVO getByRGB(Integer r, Integer g, Integer b);

    Map<String, PantoneVO> getPantoneByRgbBatch(List<String> colors);

    PantoneVO getPantoneByRgb(String color);

    /**
     * 根据hsv批量查询
     *
     * @param rgbByHsvBatch
     * @return
     */
    List<PantoneVO> getRgbByHsvBatch(List<GetRgbByHsvBatchDTO> rgbByHsvBatch);

}
