package com.red.circle.other.infra.database.rds.service.user.user;

import com.red.circle.framework.dto.PageResult;
import com.red.circle.framework.mybatis.service.BaseService;
import com.red.circle.other.infra.database.rds.entity.user.user.InviteTargetTransitBalance;
import com.red.circle.other.inner.model.cmd.user.invite.InviteBalancePageQryCmd;
import com.red.circle.other.inner.model.cmd.user.invite.InviteTargetTransitBalanceCmd;
import java.math.BigDecimal;

/**
 * <p>
 * 邀请新用户-目标中转账户 服务类.
 * </p>
 *
 * @author pengshigang on 2023-12-05 18:10
 */
public interface InviteTargetTransitBalanceService extends BaseService<InviteTargetTransitBalance> {

  boolean decr(Long id, String sysOrigin, BigDecimal expenditure);

  boolean incr(Long id, String sysOrigin, BigDecimal income);

  PageResult<InviteTargetTransitBalance> pageTargetTransitBalance(InviteBalancePageQryCmd cmd);

  void reduceTarget(InviteTargetTransitBalanceCmd cmd);

}
