package com.fzm.mall.server.admin.finance_center.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.fzm.mall.server.admin.finance_center.entity.dto.UserAssetsChangeDTO;
import com.fzm.mall.server.admin.finance_center.entity.vo.MerchantAssetsVO;
import com.fzm.mall.server.admin.finance_center.entity.vo.UserAssetsVO;
import com.fzm.mall.server.admin.finance_center.model.UserAsset;
import com.baomidou.mybatisplus.extension.service.IService;

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

/**
 * @author wangp
 * @date 2021/4/29 15:53
 * @description 用户资产信息表 服务类
 * @since JDK 1.8
 */
public interface IUserAssetService extends IService<UserAsset> {
    /**
     * 根据资产类型查询用户资产
     *
     * @param uid  用户id
     * @param coin 资产类型
     * @return 用户信息
     */
    UserAsset queryByUidAndCoin(String uid, String coin);

    /**
     * 分页查询-用户资产
     *
     * @param uid      用户编号
     * @param account  用户登陆账号
     * @param type     资产类型
     * @param pageNum  当前页数
     * @param pageSize 每页个数
     * @return
     */
    IPage<UserAssetsVO> page(String uid, String account, String type, Integer pageNum, Integer pageSize);

    /**
     * 资产类型
     */
    List<String> assetsType();

    void updateAsset(String uid, String coin, BigDecimal amount);

}
