package com.hfkj.service.goods;



import com.hfkj.entity.GoodsMsg;

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

/**
 * @serviceName GoodsMsgService.java
 * @author Sum1Dream
 * @version 1.0.0
 * @Description // 商品信息管理
 * @createTime 15:07 2024/4/19
 **/
public interface GoodsMsgService {
    /**
     * @Author Sum1Dream
     * @Name create
     * @Description // 创建
     * @Date 15:11 2024/4/19
     * @Param GoodsMsg
     * @return void
     */
    void create(GoodsMsg goodsMsg);

    /**
     * @Author Sum1Dream
     * @Name update
     * @Description // 修改
     * @Date 15:12 2024/4/19
     * @Param GoodsMsg
     * @return void
     */
    void update(GoodsMsg goodsMsg);

    /**
     * @Author Sum1Dream
     * @Name delete
     * @Description // 修改
     * @Date 15:12 2024/4/19
     * @Param id
     * @return void
     */
    void delete(Long id , Boolean fullDelete);

    /**
     * @Author Sum1Dream
     * @Name queryDetail
     * @Description // 根据ID查询产品类型详情
     * @Date 15:12 2024/4/19
     * @Param id
     * @return com.hfkj.entity.GoodsMsg
     */
    GoodsMsg queryDetail(Long id);

    /**
     * @Author Sum1Dream
     * @Name queryDetailByMap
     * @Description // 根据多条件查询产品类型
     * @Date 15:12 2024/4/19
     * @Param map
     * @return com.hfkj.entity.GoodsMsg
     */
    GoodsMsg queryDetailByMap(Map<String , Object> map);

    /**
     * @Author Sum1Dream
     * @Name getList
     * @Description // 根据多条件查询列表
     * @Date 15:13 2024/4/19
     * @Param map
     * @return java.util.List<com.hfkj.entity.GoodsMsg>
     */
    List<GoodsMsg> getList(Map<String , Object> map);


    /**
     * 编辑商品库存
     * @param goodsId
     * @param num
     * @param type  1： 增加库存 2： 减少库存
     * @return
     */
    void editSaleNum(Long goodsId , Integer num , Integer type);

}
