package com.red.circle.other.app.inner.service.team;

import com.red.circle.other.inner.model.dto.agency.agency.BillDiamondBalanceDTO;

import java.math.BigDecimal;

/**
 * 用户账单钻石余额.
 *
 * @author xiaofei on 2024/05/07
 */
public interface UserBillDiamondBalanceClientService {

  /**
   * 根据账单归属和用户id查询用户账单余额信息.
   */
  BillDiamondBalanceDTO getEntityByBillBelongAndUserId(String sysOrigin, Integer billBelong, Long userId);

  /**
   * 扣款.
   */
  BillDiamondBalanceDTO decr(Long userId, Integer billBelong, BigDecimal amount);

  /**
   * 代理扣款.
   */
  BillDiamondBalanceDTO decrAgent(Long userId, Integer billBelong, BigDecimal amount);

}
