package cn.iocoder.yudao.module.member.service.amount;

import cn.iocoder.yudao.module.member.dal.dataobject.order.DishOrderDO;

import java.math.BigDecimal;

public interface DeductionService {

    /**
     * 餐盘扣减余额
     */
    void deduction(DishOrderDO  dishOrderDO);

    /**
     * 现金提现
     */
    void cashDraw(Long userId, BigDecimal money,String type);

    /**
     * 微信提现 金额单位：分
     */
    void wxDraw(Integer amount, Long userId);

    /**
     * 退款
     */
    void refund(Long userId,BigDecimal money,DishOrderDO dishOrderDO);

    /**
     * 减免、退款
     */
    void reduction(Long userId, BigDecimal money, BigDecimal giftAmount, BigDecimal cashAmount, BigDecimal wxAmount);

    /**
     * 超市扣款
     */
    BigDecimal storeDeduction(BigDecimal total, Long userId);

    /**
     * 扣款
     */
    void deduct(Long userId, BigDecimal money,String type);




}
