package com.bonus.canteen.core.account.v3.service;

import com.bonus.canteen.core.account.v3.po.AccWalletBalanceUpdatePO;
import com.bonus.canteen.core.account.v3.po.AccWalletInfoRechargePO;
import com.bonus.canteen.core.account.v3.web.vo.AccUpdateWalletBalanceVO;
import com.bonus.canteen.core.account.v3.web.vo.AccWalletInfoVO;

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

public interface AccWalletInfoService {
   List<AccWalletInfoVO> findAccWalletInfoVOListByCustId(Long custId);
   BigDecimal calculateSubsidyExpirationAmount(Long custId);
   void updateAccWalletInfoForUse(Long custId, Integer walletId, BigDecimal amount);
   AccUpdateWalletBalanceVO updateAccWalletBalance(AccWalletBalanceUpdatePO updatePo);

   AccUpdateWalletBalanceVO getAccWalletBalanceByCustId(Long custId);

   void updateAccWalletInfoForRecharge(AccWalletInfoRechargePO rechargePo);
}
