From 08759c7e4b8c8a45e50618dfed8f58a262be1083 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A7=A6=E6=B1=89?= <5725748+qin_and_han_dynasties@user.noreply.gitee.com> Date: Sun, 26 Apr 2026 21:50:58 +0800 Subject: [PATCH] =?UTF-8?q?=E6=AF=8F=E6=97=A5=E4=BB=BB=E5=8A=A1=EF=BC=8C?= =?UTF-8?q?=E5=AE=8C=E6=88=90=E7=9A=84=E7=AC=AC=E4=BA=8C=E5=A4=A9=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E7=BB=93=E7=AE=97=EF=BC=8C=E6=9C=AA=E5=AE=8C=E6=88=90?= =?UTF-8?q?=E7=9A=84=E4=BD=9C=E5=BA=9F=EF=BC=8C=E5=B9=B6=E6=8F=90=E9=86=92?= =?UTF-8?q?=E7=8E=A9=E5=AE=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Build_God_Api/Services/DailyMissionService.cs | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Build_God_Api/Build_God_Api/Services/DailyMissionService.cs b/Build_God_Api/Build_God_Api/Services/DailyMissionService.cs index 63dccab..6ad9733 100644 --- a/Build_God_Api/Build_God_Api/Services/DailyMissionService.cs +++ b/Build_God_Api/Build_God_Api/Services/DailyMissionService.cs @@ -78,11 +78,13 @@ namespace Build_God_Api.Services public class DailyMissionService( ISqlSugarClient db, IBagService bagService, + IChatService chatService, ILogger logger ) : IDailyMissionService { private readonly ISqlSugarClient _db = db; private readonly IBagService _bagService = bagService; + private readonly IChatService _chatService = chatService; private readonly ILogger _logger = logger; private const int DailyMissionCount = 5; @@ -306,6 +308,9 @@ namespace Build_God_Api.Services dailyMission.Status = DailyMissionStatus.Claimed; await _db.Updateable(dailyMission).ExecuteCommandAsync(); + var claimMessage = $"恭喜!任务【{mission.Title}】已完成,奖励:✨{expReward} 💰{moneyReward}"; + await _chatService.AddMessageAsync(characterId, character.Name, claimMessage, ChatMessageType.System); + _logger.LogInformation("角色 {CharacterId} 领取了任务 {MissionId} 的奖励", characterId, mission.Id); return true; @@ -340,9 +345,18 @@ namespace Build_God_Api.Services if (yesterdayUnclaimedMissions.Any()) { + var charInfo = await _db.Queryable() + .FirstAsync(x => x.Id == characterId); + foreach (var mission in yesterdayUnclaimedMissions) { + var missionConfig = await _db.Queryable().FirstAsync(x => x.Id == mission.MissionId); + var missionName = missionConfig?.Title ?? "每日任务"; await _db.Deleteable().Where(x => x.Id == mission.Id).ExecuteCommandAsync(); + + var expireMessage = $"【{missionName}】由于没有完成已自动过期,并已为您分配新的任务,请按时完成任务吧!"; + await _chatService.AddMessageAsync(characterId, charInfo?.Name ?? "玩家", expireMessage, ChatMessageType.System); + _logger.LogInformation("清理角色 {CharacterId} 的昨日未领取任务 {MissionId}", characterId, mission.Id); } }