package com.xhpc.activity.mapper;

import com.xhpc.activity.domain.XhpcClearingCheckoutDomain;
import com.xhpc.activity.vo.CheckoutBankVo;
import org.apache.ibatis.annotations.Param;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

public interface XhpcClearingCheckoutMapper {
    int deleteByPrimaryKey(Long clearingCheckoutId);

    int insert(XhpcClearingCheckoutDomain record);

    XhpcClearingCheckoutDomain selectByPrimaryKey(Long clearingCheckoutId);

    int updateByPrimaryKey(XhpcClearingCheckoutDomain record);

    List<XhpcClearingCheckoutDomain> selectByParams(@Param("params") Map<String, Object> params);


    List<Map<String, Object>> selectCheckoutMapByParams(@Param("params") Map<String, Object> params);


    int deleteLogicByPrimaryKey(Long clearingCheckoutId);

    boolean checkByPrimaryKey(XhpcClearingCheckoutDomain domain);

    boolean updateStatusByPrimaryKey(XhpcClearingCheckoutDomain domain);

    BigDecimal selectAmountByStatus(@Param("operatorId")String operatorId, @Param("status")Integer status);


    List<CheckoutBankVo> selectOrderMapByCheckoutIds(@Param("checkoutIds")String checkoutIds);

    int updateStatusByIds(@Param("checkoutIds")String checkoutIds, @Param("status")Integer status);


    List<Map<String, Object>> selectMapGroupByStatus(@Param("checkoutIds")String checkoutIds);

    String selectIdsByStatusAndIds(@Param("checkoutIds")String checkoutIds, @Param("status") Integer status);
}