From 8d9c5bb76260fa6ede1e795ad22fb90c95da2f42 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=A9=99=E5=AD=90?= <454313500@qq.com>
Date: Sat, 2 Nov 2024 15:28:45 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20bbs=E5=AE=8C=E5=96=84=E9=92=B1=E9=92=B1?=
=?UTF-8?q?=E5=AE=9E=E6=97=B6=E5=8F=98=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Enums/NoticeTypeEnum.cs | 5 ++++
.../Etos/BbsNoticeEventArgs.cs | 7 ++++++
.../BbsNoticeSendEventHandler.cs | 7 ++++++
.../EventHandlers/MoneyChangeEventHandler.cs | 9 ++++++-
Yi.Bbs.Vue3/src/hubs/bbsNoticeHub.js | 8 +++++++
Yi.Bbs.Vue3/src/stores/user.js | 24 ++++---------------
6 files changed, 40 insertions(+), 20 deletions(-)
diff --git a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain.Shared/Enums/NoticeTypeEnum.cs b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain.Shared/Enums/NoticeTypeEnum.cs
index 9177846d..2178ea56 100644
--- a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain.Shared/Enums/NoticeTypeEnum.cs
+++ b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain.Shared/Enums/NoticeTypeEnum.cs
@@ -19,5 +19,10 @@ namespace Yi.Framework.Bbs.Domain.Shared.Enums
/// 广播
///
Broadcast,
+
+ ///
+ /// 钱钱
+ ///
+ Money
}
}
diff --git a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain.Shared/Etos/BbsNoticeEventArgs.cs b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain.Shared/Etos/BbsNoticeEventArgs.cs
index 2823e8b7..4b7cd979 100644
--- a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain.Shared/Etos/BbsNoticeEventArgs.cs
+++ b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain.Shared/Etos/BbsNoticeEventArgs.cs
@@ -16,6 +16,13 @@ namespace Yi.Framework.Bbs.Domain.Shared.Etos
Message = message;
}
+ public BbsNoticeEventArgs( NoticeTypeEnum noticeType, Guid acceptUserId, string message)
+ {
+ NoticeType = noticeType;
+ AcceptUserId = acceptUserId;
+ Message = message;
+ }
+
///
/// 发送广播
///
diff --git a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/EventHandlers/BbsNoticeSendEventHandler.cs b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/EventHandlers/BbsNoticeSendEventHandler.cs
index 6336e260..02be64d9 100644
--- a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/EventHandlers/BbsNoticeSendEventHandler.cs
+++ b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/EventHandlers/BbsNoticeSendEventHandler.cs
@@ -38,6 +38,13 @@ namespace Yi.Framework.Bbs.Domain.EventHandlers
case Shared.Enums.NoticeTypeEnum.Broadcast:
_hubContext.Clients.All.SendAsync(NoticeTypeEnum.Broadcast.ToString(), eventData.Message);
break;
+
+ case Shared.Enums.NoticeTypeEnum.Money:
+ if (BbsNoticeHub.HubUserModels.TryGetValue(eventData.AcceptUserId.ToString(), out var hubUserModel2))
+ {
+ _hubContext.Clients.Client(hubUserModel2.ConnnectionId).SendAsync(NoticeTypeEnum.Personal.ToString(), eventData.Message,entity.CreationTime);
+ }
+ break;
default:
break;
}
diff --git a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/EventHandlers/MoneyChangeEventHandler.cs b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/EventHandlers/MoneyChangeEventHandler.cs
index 53482f01..805178c5 100644
--- a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/EventHandlers/MoneyChangeEventHandler.cs
+++ b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/EventHandlers/MoneyChangeEventHandler.cs
@@ -1,8 +1,10 @@
using Volo.Abp;
using Volo.Abp.DependencyInjection;
using Volo.Abp.EventBus;
+using Volo.Abp.EventBus.Local;
using Yi.Framework.Bbs.Domain.Entities;
using Yi.Framework.Bbs.Domain.Shared.Consts;
+using Yi.Framework.Bbs.Domain.Shared.Enums;
using Yi.Framework.Bbs.Domain.Shared.Etos;
using Yi.Framework.SqlSugarCore.Abstractions;
@@ -11,9 +13,11 @@ namespace Yi.Framework.Bbs.Domain.EventHandlers
public class MoneyChangeEventHandler : ILocalEventHandler, ITransientDependency
{
private ISqlSugarRepository _userInfoRepository;
- public MoneyChangeEventHandler(ISqlSugarRepository userInfoRepository)
+ private ILocalEventBus _localEventBus;
+ public MoneyChangeEventHandler(ISqlSugarRepository userInfoRepository, ILocalEventBus localEventBus)
{
_userInfoRepository = userInfoRepository;
+ _localEventBus = localEventBus;
}
public async Task HandleEventAsync(MoneyChangeEventArgs eventData)
{
@@ -28,6 +32,9 @@ namespace Yi.Framework.Bbs.Domain.EventHandlers
await _userInfoRepository._Db.Updateable()
.SetColumns(it => it.Money == it.Money + eventData.Number)
.Where(x => x.UserId == eventData.UserId).ExecuteCommandAsync();
+
+
+ await _localEventBus.PublishAsync(new BbsNoticeEventArgs(NoticeTypeEnum.Money, eventData.UserId,eventData.Number.ToString()), false);
}
}
}
diff --git a/Yi.Bbs.Vue3/src/hubs/bbsNoticeHub.js b/Yi.Bbs.Vue3/src/hubs/bbsNoticeHub.js
index f266a69b..4b3a3ec5 100644
--- a/Yi.Bbs.Vue3/src/hubs/bbsNoticeHub.js
+++ b/Yi.Bbs.Vue3/src/hubs/bbsNoticeHub.js
@@ -1,5 +1,6 @@
import signalR from "@/utils/signalR";
import useNoticeStore from "@/stores/notice";
+import useUserStore from "@/stores/user";
import { dayjs } from 'element-plus'
const receiveMsg=(connection)=> {
@@ -11,6 +12,13 @@ const receiveMsg=(connection)=> {
creationTime
});
});
+
+
+ const userStore=useUserStore();
+ connection.on("Money", (message,creationTime) => {
+ const updateMoneyNumber=Number(message)
+ userStore.updateMoney(updateMoneyNumber)
+ });
};
export default ()=>{
diff --git a/Yi.Bbs.Vue3/src/stores/user.js b/Yi.Bbs.Vue3/src/stores/user.js
index f286f974..ca51ba69 100644
--- a/Yi.Bbs.Vue3/src/stores/user.js
+++ b/Yi.Bbs.Vue3/src/stores/user.js
@@ -122,23 +122,6 @@ const useUserStore = defineStore("user", {
});
});
},
- //找回密码
- retrievePassword(userInfo)
- {
- const password = userInfo.password.trim();
- const phone = userInfo.phone;
- const uuid = userInfo.uuid;
- const code = userInfo.code;
- return new Promise((resolve, reject) => {
- retrievePassword(password, phone, code, uuid)
- .then((response) => {
- resolve(response);
- })
- .catch((error) => {
- reject(error);
- });
- });
- },
// 重置用户信息
resetInfo() {
this.roles = [];
@@ -153,9 +136,12 @@ const useUserStore = defineStore("user", {
this.codeImageURL = "data:image/jpg;base64," + data.img;
this.codeUUid = data.uuid;
},
- updateToken(token)
- {
+ updateToken(token) {
this.token = token;
+ },
+ //更新钱钱
+ updateMoney(updateMoneyNumber){
+ this.money=this.money+updateMoneyNumber
}
},
persist: {