package com.interplug.qcast.biz.object;

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

@Mapper
public interface ObjectMapper {
  // 도도부현 목록 조회
  public List<PrefResponse> selectPrefList();

  // 도도부현 지역 조회
  public List<PrefResponse> selectPrefAreaList(String prefId);

  // 지역 기준풍속 조회
  public List<WindSpeedResponse> selectWindSpeedList(String city);

  // 모든 판매점 목록 조회
  public List<SaleStoreResponse> selectSaleStoreFirstList(String userId);

  // 판매점 목록 조회
  public List<SaleStoreResponse> selectSaleStoreList(
      String saleStoreId, String firstFlg, String userId);

  // 판매점 정보 조회
  public SaleStoreResponse selectSaleStoreInfo(String saleStoreId);

  // 물건정보 목록 조회
  public List<ObjectResponse> selectObjectList(ObjectRequest objectRequest);

  // 물건정보 상세 확인
  public ObjectResponse selectObjectDetail(String objectNo);

  // 물건번호 조회
  public String selectObjectNo(ObjectRequest objectRequest);

  // 물건정보 PLAN 목록 조회
  public List<PlanResponse> selectPlanList(PlanRequest planRequest);

  // 물건번호 등록
  public int insertObjectNo(ObjectRequest objectRequest);

  // 물건정보 등록
  public int insertObject(ObjectRequest objectRequest);

  // 물건정보 복사
  public int insertObjectCopy(ObjectRequest objectRequest);

  // 물건정보 수정
  public int updateObject(ObjectRequest objectRequest);

  // 물건정보 삭제
  public int deleteObject(ObjectRequest objectRequest);

  // 물건정보 > 배송정보 수정
  public int updateObjectDelivery(ObjectRequest objectRequest);

  // 플랜정보 등록
  public int insertPlan(PlanRequest planRequest);

  // 플랜정보 삭제(물리 삭제)
  public int deletePlan(PlanRequest planRequest);

  // 물건정보 물건번호 변경
  public int updateObjectNoChange(ObjectRequest objectRequest);

  // 플랜정보 물건번호 변경
  public int updatePlanObjectNoChange(ObjectRequest objectRequest);

  // 견적서 첨부파일 조회
  public UploadResponse selectUpload(UploadRequest uploadRequest);
}
