package com.interplug.qcast.biz.displayItem;

import com.interplug.qcast.biz.displayItem.dto.*;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

@Mapper
public interface DisplayItemMapper {

  void setStoreDisplayItemSave(DisplayItemRequest displayItemRequest) throws Exception;

  List<ItemResponse> getItemList(@Param("saleStoreId") String saleStoreId);

  ItemDetailResponse getItemDetail(@Param("itemId") String itemId);

  List<ItemResponse> selectItemBomList(@Param("itemId") String itemId);

  /**
   * 아이템 정보 동기화
   *
   * @param itemInfoSync 아이템 정보
   * @return
   * @throws Exception
   */
  int setItemSyncSave(ItemSyncResponse itemInfoSync);

  /**
   * BOM 아이템 정보 삭제
   *
   * @param bomInfoSync 아이템 정보
   * @return
   * @throws Exception
   */
  int deleteBomSync(BomSyncResponse bomInfoSync);

  /**
   * BOM 아이템 정보 동기화
   *
   * @param bomInfoSync 아이템 정보
   * @return
   * @throws Exception
   */
  int setBomSyncSave(BomSyncResponse bomInfoSync);

  /**
   * 아이템 가격 정보 동기화
   *
   * @param priceItemSyncResponse 아이템 가격 정보
   * @return
   * @throws Exception
   */
  int setPriceItemSyncSave(PriceItemSyncResponse priceItemSyncResponse);
}
