package com.red.circle.other.infra.database.mongo.service.live;

import com.red.circle.framework.dto.PageResult;
import com.red.circle.other.infra.database.mongo.entity.live.RoomContributionCount;
import com.red.circle.other.inner.model.cmd.live.RoomContributionCountPageQryCmd;
import java.math.BigDecimal;

/**
 * 房间内流水.
 *
 * @author pengshigang on 2022/02/14
 */
public interface RoomContributionCountService {

  /**
   * 分页数据.
   */
  PageResult<RoomContributionCount> pageOps(RoomContributionCountPageQryCmd query);

  /**
   * 房间流水根据时间段累计.
   *
   * @param roomId   房间id
   * @param userId   用户id
   * @param quantity 数量
   */
  void incrQuantity(String sysOrigin, Long roomId, Long userId, BigDecimal quantity);


  /**
   * 矫正数据.
   */
  void correctionData(Long roomId, BigDecimal quantity);


}
