package com.red.circle.other.app.service.material;

import com.red.circle.common.business.dto.cmd.app.AppRoomIdCmd;
import com.red.circle.common.business.dto.cmd.app.AppUserIdCmd;
import com.red.circle.other.app.dto.clientobject.material.BadgeBackpackCO;
import com.red.circle.other.app.dto.clientobject.material.BadgeGroupTableCO;
import com.red.circle.other.app.dto.clientobject.material.BadgeTableCO;
import com.red.circle.other.app.dto.cmd.material.BadgeProgressRateCmd;
import com.red.circle.other.app.dto.cmd.material.UserBadgeQueryCmd;
import com.red.circle.other.app.dto.cmd.material.ViewOtherBadgeQueryCmd;
import java.math.BigDecimal;
import java.util.List;

/**
 * 系统徽章配置.
 *
 * @author pengliang on 2021/3/12
 */
public interface BadgeService {

  List<BadgeGroupTableCO> listBadgeTable(UserBadgeQueryCmd cmd);

  BigDecimal badgeProgressRate(BadgeProgressRateCmd cmd);

  List<BadgeBackpackCO> listBadgeBackpack(AppUserIdCmd cmd);

  List<BadgeBackpackCO> listRoomBadgeBackpack(AppRoomIdCmd cmd);

  List<BadgeGroupTableCO> viewOtherBadge(ViewOtherBadgeQueryCmd cmd);

  BadgeTableCO getFamilyBadge(AppUserIdCmd cmd);
}
