package com.ga.core.mapper.commission;

import com.ga.core.vo.commission.CarrierReconciliationInResp;
import com.ga.core.vo.commission.CarrierReconciliationInSearchParam;
import com.ga.core.vo.commission.CarrierReconciliationInVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * carrier_reconciliation_in Mapper — 보험사 정산대사 입수 마스터 (V120)
 */
@Mapper
public interface CarrierReconciliationInMapper {

    CarrierReconciliationInResp selectById(@Param("reconId") Long reconId);

    List<CarrierReconciliationInResp> selectList(CarrierReconciliationInSearchParam param);

    int insert(CarrierReconciliationInVO vo);

    int update(CarrierReconciliationInVO vo);

    /**
     * 보험사 + 정산월 기준 upsert — UNIQUE(company_id, settle_month) 충돌 시 갱신.
     */
    int upsert(CarrierReconciliationInVO vo);
}
