mirror of
https://gitee.com/ccnetcore/Yi
synced 2026-03-17 15:06:37 +08:00
50 lines
1.6 KiB
C#
50 lines
1.6 KiB
C#
|
|
using Volo.Abp.Domain.Services;
|
|||
|
|
using Volo.Abp.EventBus.Local;
|
|||
|
|
using Yi.Framework.Bbs.Domain.Entities.Integral;
|
|||
|
|
using Yi.Framework.Bbs.Domain.Shared.Etos;
|
|||
|
|
using Yi.Framework.SqlSugarCore.Abstractions;
|
|||
|
|
|
|||
|
|
namespace Yi.Framework.Bbs.Domain.Managers
|
|||
|
|
{
|
|||
|
|
public class IntegralManager : DomainService
|
|||
|
|
{
|
|||
|
|
private ISqlSugarRepository<LevelEntity> _levelRepository;
|
|||
|
|
private ISqlSugarRepository<SignInEntity> _signInRepository;
|
|||
|
|
private readonly ILocalEventBus _localEventBus;
|
|||
|
|
public IntegralManager(ISqlSugarRepository<LevelEntity> levelRepository, ISqlSugarRepository<SignInEntity> signInRepository, ILocalEventBus localEventBus)
|
|||
|
|
{
|
|||
|
|
_levelRepository = levelRepository;
|
|||
|
|
_localEventBus = localEventBus;
|
|||
|
|
_signInRepository = signInRepository;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
/// <summary>
|
|||
|
|
/// 签到
|
|||
|
|
/// </summary>
|
|||
|
|
/// <returns></returns>
|
|||
|
|
public async Task PostSignInAsync(Guid userId)
|
|||
|
|
{
|
|||
|
|
//签到,添加用户钱钱
|
|||
|
|
//发送一个充值的领域事件即可
|
|||
|
|
|
|||
|
|
|
|||
|
|
//签到添加的钱钱,跟连续签到有关系
|
|||
|
|
//每天随机(3-10),连续签到每次累加多1点,最多一天30
|
|||
|
|
|
|||
|
|
//额外
|
|||
|
|
//如果随机数数字都相同,额外再获取乘10倍
|
|||
|
|
|
|||
|
|
//这种逻辑,就是属于核心领域业务了
|
|||
|
|
decimal number = 3;
|
|||
|
|
|
|||
|
|
|
|||
|
|
//发布一个其他领域的事件
|
|||
|
|
await _localEventBus.PublishAsync(new MoneyChangeEventArgs() { UserId = userId, Number = number });
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|