package com.liquidnet.service.account.funding.mapper;

import com.liquidnet.service.account.funding.entity.FinAccountBill;
import com.liquidnet.service.account.funding.entity.FinAccountBillExample;
import com.liquidnet.service.account.funding.vo.AccountBalanceInfo;
import org.apache.ibatis.annotations.Param;

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

public interface FinAccountBillMapper {
    int countByExample(FinAccountBillExample example);

    int insert(FinAccountBill record);

    int insertSelective(FinAccountBill record);

    List<FinAccountBill> selectByExample(FinAccountBillExample example);

    FinAccountBill selectByPrimaryKey(String billId);

    int updateByExampleSelective(@Param("record") FinAccountBill record, @Param("example") FinAccountBillExample example);

    int updateByExample(@Param("record") FinAccountBill record, @Param("example") FinAccountBillExample example);

    int updateByPrimaryKeySelective(FinAccountBill record);

    int updateByPrimaryKey(FinAccountBill record);


    List<AccountBalanceInfo> selectByAccNoForGroup(@Param("tSeq") String moduloTableName, @Param("list") List<String> accNoList);

    BigDecimal selectCurrentBalance(@Param("tSeq") String moduloTableName, @Param("accNo") String accNo, @Param("billNo") String billNo);
}