package com.huatek.frame.base.service;

import com.huatek.frame.base.dto.DictionnaireDetailDTO;
import com.huatek.frame.base.entity.Dictionnaire;
import com.huatek.frame.base.entity.DictionnaireDetail;
import com.huatek.frame.base.vo.DictionnaireDetailVO;

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

/**
 * 系统_字典明细 Service
 *
 * @author key_dong
 * @date 2018-7-11 14:03:46
 */
public interface DictionnaireDetailService {

    /**
     * 分页查找查找 系统_字典明细
     *
     * @param page 页码
     * @param limit 每页显示数量
     * @param dto 系统_字典明细dto
     * @return map map
     */
    Map<String, Object> findDictionnaireDetailPage(DictionnaireDetailDTO dto);


    /**
     * 添加 系统_字典明细
     *
     * @param detail 系统_字典明细detail
     * @return map map
     */
    Map<String, Object> addDictionnaireDetail(DictionnaireDetail detail);

    /**
     *  通过id查找 系统_字典明细
     *
     * @param id 主键
     * @return map map
     */
    Map<String, Object> findDictionnaireDetail(String id);

    /**
     * 修改 系统_字典明细
     *
     * @param detail 系统_字典明细detail
     * @return map map
     */
    Map<String, Object> updateDictionnaireDetail( DictionnaireDetail detail);

    /**
      * 删除 系统_字典明细
      *
      * @param  ids 主键集合
      * @return map map
      */
    Map<String, Object> deleteDictionnaireDetail( String[] ids);

    DictionnaireDetailVO findByUnit(String unit, String dictKey);

    DictionnaireDetailVO findByDCode(String dCode, String dictKey);

    DictionnaireDetailVO findByValue(String pId, String value);

    DictionnaireDetailDTO findMaxDcodeByCode(String dictKey);

    DictionnaireDetailDTO findMaxDcodeByPId(String pId);

    int insert(DictionnaireDetail dictionnaireDetail);

    DictionnaireDetailVO initDictionnaireDetail(Dictionnaire dictionnaire, String value);

    Map<String, Object> findByCode(String code);

    String findUnit(String code , String dCode);

    List<DictionnaireDetailVO> findByLikeDName(String dictKey, String dName);
}
