package com.kxs.user.biz.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.kxs.common.core.util.R;
import com.kxs.user.api.dto.kxsapp.userAccount.PayRequestDTO;
import com.kxs.user.api.dto.kxsapp.userAccount.RefundRequestDTO;
import com.kxs.user.api.model.KxsUserAmount;
import com.kxs.user.api.model.KxsUserAmountLog;
import com.kxs.user.api.vo.kxsapp.userAccount.MyAccountVO;

/**
 * 用户账户表(KxsUserAmount)表服务接口
 *
 * @author 系统
 * @since 2023-12-11 23:33:30
 */
public interface KxsUserAmountService extends IService<KxsUserAmount> {

    /**
     * 我帐户
     *
     * @return {@link MyAccountVO}
     */
    MyAccountVO myAccount();

    /**
     * 余额变动
     *
     * @param userAmountLog 变动日志
     * @return {@link R}
     */
    Boolean userAmountChange(KxsUserAmountLog userAmountLog);

    /**
     * 余额支付
     */
    R yuePay(PayRequestDTO req);

    /**
     * 退款
     */
    R refund(RefundRequestDTO req);
}

