package com.xingxi.master.product.service;

import com.xingxi.master.product.domain.ProdTag;

import java.util.List;

/**
 * 商品标签Service接口
 *
 * @author xingxi
 * @date 2025-03-06
 */
public interface IProdTagService {
    /**
     * 查询商品标签
     *
     * @param id 商品标签主键
     * @return 商品标签
     */
    ProdTag selectProdTagById(Long id);

    /**
     * 查询商品标签列表
     *
     * @param prodTag 商品标签
     * @return 商品标签集合
     */
    List<ProdTag> selectProdTagList(ProdTag prodTag);

    /**
     * 新增商品标签
     *
     * @param prodTag 商品标签
     * @return 结果
     */
    int insertProdTag(ProdTag prodTag);

    /**
     * 新增商品标签
     *
     * @param prodTagList 商品标签
     * @return 结果
     */
    int batchInsertProdTag(List<ProdTag> prodTagList);

    /**
     * 修改商品标签
     *
     * @param prodTag 商品标签
     * @return 结果
     */
    int updateProdTag(ProdTag prodTag);

    /**
     * 批量删除商品标签
     *
     * @param ids 需要删除的商品标签主键集合
     * @return 结果
     */
    int deleteProdTagByIds(String ids);

    /**
     * 删除商品标签信息
     *
     * @param id 商品标签主键
     * @return 结果
     */
    int deleteProdTagById(Long id);

    /**
     * 逻辑删除商品标签
     *
     * @param id 商品标签主键
     * @return 结果
     */
    int logicDeleteProdTagById(Long id);

    /**
     * 逻辑批量删除商品标签
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    int logicDeleteProdTagByIds(String[] ids);

    /**
     * 逻辑批量删除商品标签
     *
     * @param prodTag 商品标签
     * @return 结果
     */
    int logicDeleteProdTagByCondition(ProdTag prodTag);
}
