| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- package com.ym.mec.biz.service;
- import com.ym.mec.biz.dal.entity.SysUserCashAccount;
- import com.ym.mec.biz.dal.enums.PlatformCashAccountDetailTypeEnum;
- import com.ym.mec.common.service.BaseService;
- import java.math.BigDecimal;
- public interface SysUserCashAccountService extends BaseService<Integer, SysUserCashAccount> {
- /**
- * 更新指定用户的账户余额
- * @param userId 用户编号
- * @param decimal 交易金额(支持负数)
- * @return
- */
- boolean updateBalance(Integer userId, BigDecimal decimal);
- /**
- * 更新指定用户的账户余额
- * @param userId 用户编号
- * @param decimal 交易金额(支持负数)
- * @param type 交易类型
- * @param memo 备注
- * @return
- */
- boolean updateBalance(Integer userId, BigDecimal decimal, PlatformCashAccountDetailTypeEnum type, String memo);
- /**
- * 更新指定用户的账户余额
- * @param userId 用户编号
- * @param decimal 交易金额(支持负数)
- * @param type 交易类型
- * @param memo 备注
- * @param transNo 订单流水编号
- * @return
- */
- boolean updateBalance(Integer userId, BigDecimal decimal, PlatformCashAccountDetailTypeEnum type, String memo,String transNo);
- /**
- * 更新指定用户的账户课程余额
- * @param userId 用户编号
- * @param decimal 交易金额(支持负数)
- * @return
- */
- boolean updateCourseBalance(Integer userId, BigDecimal decimal, PlatformCashAccountDetailTypeEnum type, BigDecimal amount, String description);
- /**
- * 更新指定用户的账户课程余额
- * @param userId 用户编号
- * @param decimal 交易金额(支持负数)
- * @return
- */
- boolean appendCourseBalance(Integer userId, BigDecimal decimal, PlatformCashAccountDetailTypeEnum type, String description);
- /**
- * @describe 从账户金额与课程金额中扣减指定金额
- * 优先课程金额,不够再扣减账户金额
- * @author Joburgess
- * @date 2021/1/20 0020
- * @param userId:
- * @param decimal:
- * @param type:
- * @param description:
- * @return void
- */
- void subtractFromCourseBalanceAndBalance(Integer userId, BigDecimal decimal, PlatformCashAccountDetailTypeEnum type, String description);
- /**
- * 将课程余额转入到可用余额
- * @param userId
- * @return
- */
- boolean transferCourseBalanceToBalance(Integer userId,BigDecimal money);
- /**
- * 获取行级锁
- * @param userId
- * @return
- */
- SysUserCashAccount getLocked(Integer userId);
- }
|