package com.gic.haoban.manage.api.service.role;

import com.gic.api.base.commons.ServiceResponse;
import com.gic.haoban.manage.api.dto.qdto.role.HaobanMenuQDTO;
import com.gic.haoban.manage.api.dto.role.HaobanMenuDTO;

import java.util.List;

/**
 * @author xuwenqian
 * @date 2022/9/7 9:46 上午
 */
public interface HaobanMenuApiService {

    public void deleteByMenuCode(String menuCode) ;
    /**
     * 添加
     *
     * @param haobanMenuDTOList haoban菜单dto
     * @return {@link ServiceResponse}
     */
    ServiceResponse add(List<HaobanMenuQDTO> haobanMenuDTOList);

    ServiceResponse addList(List<HaobanMenuQDTO> haobanMenuDTOList);

    ServiceResponse<List<HaobanMenuDTO>> getAllMenuList();


    /**
     * 获取菜单树
     *
     * @return {@link ServiceResponse }
     * @author mozhu
     * @date 2022-09-07 09:50:37
     */
    ServiceResponse<List<HaobanMenuDTO>> getMenuTreeList();


    /**
     * 得到haoban菜单树列表
     *
     * @param wxEnterpriseId wx企业标识
     * @param clerkType      职员类型
     * @return {@link ServiceResponse}<{@link List}<{@link HaobanMenuDTO}>>
     */
    ServiceResponse<List<HaobanMenuDTO>> getHaobanMenuTreeList(String wxEnterpriseId, String enterpriseId , Integer clerkType);


    ServiceResponse<String> getMenuNameByCode(String menuCode);

}
