feat: 新增任务需求枚举

This commit is contained in:
chenchun
2024-08-13 15:33:03 +08:00
parent 9530350d06
commit 35ebce6a85
6 changed files with 101 additions and 13 deletions

View File

@@ -7,7 +7,7 @@ public class AssignmentGetListInput
/// <summary>
/// 任务查询条件
/// </summary>
public AssignmentQueryStateEnum? AssignmentQueryState { get; set; }
public AssignmentQueryStateEnum AssignmentQueryState { get; set; } = AssignmentQueryStateEnum.Progress;
}
public enum AssignmentQueryStateEnum

View File

@@ -0,0 +1,26 @@
namespace Yi.Framework.Bbs.Domain.Shared.Enums;
public enum AssignmentRequirementTypeEnum
{
/// <summary>
/// 主题
/// </summary>
Discuss=2,
/// <summary>
/// 评论
/// </summary>
Comment=4,
/// <summary>
/// 更新个人中心
/// </summary>
UpdateProfile=8,
/// <summary>
/// 点赞
/// </summary>
Agree=16
}

View File

@@ -38,7 +38,7 @@ public class AssignmentAggregateRoot : AggregateRoot<Guid>, IHasCreationTime, IO
/// <summary>
/// 任务状态
/// </summary>
public AssignmentStateEnum AssignmentState { get; set; }
public AssignmentStateEnum AssignmentState { get; set; }
/// <summary>
/// 任务奖励的钱钱数量
@@ -52,9 +52,9 @@ public class AssignmentAggregateRoot : AggregateRoot<Guid>, IHasCreationTime, IO
public DateTime? CompleteTime { get; set; }
public DateTime CreationTime { get; }
public DateTime CreationTime { get; set; }
public int OrderNum { get; set; }
public DateTime? LastModificationTime { get; }
public DateTime? LastModificationTime{ get; set; }
public bool IsAllowCompleted()
@@ -72,4 +72,11 @@ public class AssignmentAggregateRoot : AggregateRoot<Guid>, IHasCreationTime, IO
return true;
}
public void SetComplete()
{
this.AssignmentState = AssignmentStateEnum.Completed;
this.CompleteTime=DateTime.Now;
}
}

View File

@@ -31,6 +31,11 @@ public class AssignmentDefineAggregateRoot: AggregateRoot<Guid>, IHasCreationTim
/// </summary>
public AssignmentTypeEnum AssignmentType{ get; set; }
/// <summary>
/// 任务需求类型
/// </summary>
public AssignmentRequirementTypeEnum AssignmentRequirementType{ get; set; }
/// <summary>
/// 总共步骤数
/// </summary>
@@ -46,6 +51,6 @@ public class AssignmentDefineAggregateRoot: AggregateRoot<Guid>, IHasCreationTim
/// </summary>
public decimal RewardsMoneyNumber { get; set; }
public DateTime CreationTime { get; }
public DateTime CreationTime{ get; set; }
public int OrderNum { get; set; }
}

View File

@@ -68,11 +68,18 @@ public class AssignmentManager : DomainService
var assignment = await _assignmentRepository.GetByIdAsync(asignmentId);
if (assignment.IsAllowCompleted())
{
//设置已完成,并领取奖励,钱钱
assignment.AssignmentState = AssignmentStateEnum.Completed;
//加钱加钱
await _localEventBus.PublishAsync(
new MoneyChangeEventArgs { UserId = assignment.UserId, Number = assignment.RewardsMoneyNumber }, false);
//设置已完成,并领取奖励,钱钱
assignment.SetComplete();
await _assignmentRepository.UpdateAsync(assignment);
}
else
{
//不能领取
throw new UserFriendlyException("该任务无法领取奖励,请检查任务详情");
}
}