package com.xiaoniu.system.platformsettings.storetype.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xiaoniu.common.core.resdata.RowsData;
import com.xiaoniu.common.core.vo.LabelAndValueVO;
import com.xiaoniu.system.platformsettings.storetype.domain.TbStoreType;
import com.xiaoniu.system.platformsettings.storetype.dto.AddStoreTypeDTO;
import com.xiaoniu.system.platformsettings.storetype.dto.EditStoreTypeDTO;
import com.xiaoniu.system.platformsettings.storetype.dto.StoreTypeListQueryDTO;
import com.xiaoniu.system.platformsettings.storetype.vo.StoreTypeDetailsVO;
import com.xiaoniu.system.platformsettings.storetype.vo.StoreTypeListVO;

import java.util.List;

/**
 * <p>
 * 门店类型信息表 服务类
 * </p>
 *
 * @author haoxuyang
 * @since 2024-10-11 02:13:07
 */
public interface ITbStoreTypeService extends IService<TbStoreType> {

    /**
     * 门店类型信息列表
     *
     * @param dto dto
     * @return RowsData<StoreTypeListVO>
     */
    List<StoreTypeListVO> storeTypeList(StoreTypeListQueryDTO dto);

    /**
     * 新增门店类型信息
     *
     * @param dto dto
     */
    void addStoreType(AddStoreTypeDTO dto);

    /**
     * 修改门店类型信息
     *
     * @param dto dto
     */
    void editStoreType(EditStoreTypeDTO dto);

    /**
     * 门店类型信息详情
     *
     * @param id id
     * @return StoreTypeDetailsVO
     */
    StoreTypeDetailsVO details(Long id);

    /**
     * 删除门店类型信息
     *
     * @param id id
     */
    void delStoreType(Long id);

    /**
     * 获取商品类型(下拉选)
     *
     * @param id id
     * @return List<LabelAndValueVO>
     */
    List<LabelAndValueVO> getStoreTyp(Long id);

    /**
     * 获取二级商品类型
     * @param id id
     * @return LabelAndValueVO
     */
    List<LabelAndValueVO> getStoreType2(Long id);
}
