package com.cool.store.service;

import com.cool.store.dto.pre.fry.PreFriedProductsBatchDTO;
import com.cool.store.dto.pre.fry.PreFriedProductsDTO;
import com.cool.store.dto.pre.fry.PreFriedProductsDetailDTO;
import com.cool.store.dto.pre.fry.PreFriedProductsQueryDTO;
import com.cool.store.entity.PreFriedProductsDO;
import com.github.pagehelper.PageInfo;


/**
 * @Author suzhuhong
 * @Date 2025/6/20 19:47
 * @Version 1.0
 */
public interface PreFriedProductsService {

    /**
     * 新增产品
     * @param dto 产品信息
     * @return 产品ID
     */
    Long createProduct(PreFriedProductsDTO dto, String userId);

    /**
     * 修改产品
     * @param dto
     * @param userId
     * @return
     */
    Long updateProduct(PreFriedProductsDTO dto, String userId);

    /**
     * 批量删除（逻辑删除）
     * @param batchDTO 包含ID列表和操作人
     * @return 成功数量
     */
    int batchDelete(PreFriedProductsBatchDTO batchDTO, String userId);

    /**
     * 批量上下架
     * @param batchDTO 包含ID列表、目标状态和操作人
     * @return 成功数量
     */
    int batchUpdateStatus(PreFriedProductsBatchDTO batchDTO, String userId);

    /**
     * 条件查询产品列表
     * @param queryDTO 查询条件
     * @return 产品列表
     */
    PageInfo<PreFriedProductsDetailDTO> queryProducts(PreFriedProductsQueryDTO queryDTO);

    /**
     * 根据ID查询详情
     * @param id
     * @return
     */
    PreFriedProductsDetailDTO queryById(Long id);







}
