From 547b8b0f91162da45df4b86ea6fbfff1ed8c9ec8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=A9=99=E5=AD=90?= <454313500@qq.com>
Date: Mon, 25 Dec 2023 21:41:37 +0800
Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=A4=B4=E5=83=8F?=
=?UTF-8?q?=E5=AD=97=E6=AE=B5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Analyses/BbsDisucssAnalyseService.cs | 58 ---------------
.../Analyses/BbsForumAnalyseService.cs | 59 +++++++++++++++
.../Analyses/BbsUserAnalyseService.cs | 73 +++++++++----------
.../Managers/BbsUserManager.cs | 4 +-
4 files changed, 97 insertions(+), 97 deletions(-)
delete mode 100644 Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsDisucssAnalyseService.cs
create mode 100644 Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsForumAnalyseService.cs
diff --git a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsDisucssAnalyseService.cs b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsDisucssAnalyseService.cs
deleted file mode 100644
index 5c67f099..00000000
--- a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsDisucssAnalyseService.cs
+++ /dev/null
@@ -1,58 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Mapster;
-using Microsoft.AspNetCore.Mvc;
-using SqlSugar;
-using Volo.Abp.Application.Dtos;
-using Volo.Abp.Application.Services;
-using Yi.Framework.Bbs.Application.Contracts.Dtos.BbsUser;
-using Yi.Framework.Bbs.Domain.Managers;
-using Yi.Framework.Rbac.Domain.Shared.Consts;
-
-namespace Yi.Framework.Bbs.Application.Services.Analyses
-{
- public class BbsUserAnalyseService : ApplicationService, IApplicationService
- {
- private BbsUserManager _bbsUserManager;
- public BbsUserAnalyseService(BbsUserManager bbsUserManager)
- {
- _bbsUserManager = bbsUserManager;
- }
-
- ///
- /// 推荐好友,随机返回好友列表
- ///
- ///
- [HttpGet("analyse/bbs-user/random")]
- public async Task> GetRandomUserAsync([FromQuery] PagedResultRequestDto input)
- {
- var randUserIds = await _bbsUserManager._userRepository._DbQueryable
- .Where(x => x.UserName != UserConst.Admin)
- .OrderBy(x => SqlFunc.GetRandom())
- .Select(x => x.Id).
- ToPageListAsync(input.SkipCount, input.MaxResultCount);
- var output = await _bbsUserManager.GetBbsUserInfoAsync(randUserIds);
- return output.Adapt>();
- }
-
- ///
- /// 积分排行榜
- ///
- ///
- [HttpGet("analyse/bbs-user/integral-top")]
- public async Task> GetIntegralTopUserAsync([FromQuery] PagedResultRequestDto input)
- {
- var randUserIds = await _bbsUserManager._userRepository._DbQueryable
- .Where(x => x.UserName != UserConst.Admin)
- .OrderBy(x => SqlFunc.GetRandom())
- .Select(x => x.Id).
- ToPageListAsync(input.SkipCount, input.MaxResultCount);
- var output = await _bbsUserManager.GetBbsUserInfoAsync(randUserIds);
- return output.Adapt>();
- }
-
- }
-}
diff --git a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsForumAnalyseService.cs b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsForumAnalyseService.cs
new file mode 100644
index 00000000..a6e167d4
--- /dev/null
+++ b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsForumAnalyseService.cs
@@ -0,0 +1,59 @@
+using Microsoft.AspNetCore.Mvc;
+using SqlSugar;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Application.Services;
+using Yi.Framework.Bbs.Application.Contracts.Dtos.BbsUser;
+using Yi.Framework.Bbs.Application.Contracts.Dtos.Discuss;
+using Yi.Framework.Bbs.Domain.Entities;
+using Yi.Framework.Bbs.Domain.Managers;
+using Yi.Framework.Bbs.Domain.Shared.Enums;
+using Yi.Framework.Rbac.Domain.Entities;
+using Yi.Framework.Rbac.Domain.Shared.Consts;
+using Yi.Framework.SqlSugarCore.Abstractions;
+
+namespace Yi.Framework.Bbs.Application.Services.Analyses
+{
+ public class BbsForumAnalyseService : ApplicationService, IApplicationService
+ {
+ private ForumManager _forumManager;
+ public BbsForumAnalyseService(ForumManager forumManager)
+ {
+ _forumManager = forumManager;
+ }
+
+ ///
+ /// 推荐主题,随机返回主题列表
+ ///
+ ///
+ [HttpGet("analyse/bbs-discuss/random")]
+ public async Task> GetRandomDiscussAsync([FromQuery] PagedResultRequestDto input)
+ {
+ var output = await _forumManager._discussRepository._DbQueryable
+ .Where(discuss=>discuss.PermissionType== DiscussPermissionTypeEnum.Public)
+ .LeftJoin((discuss, user) => discuss.CreatorId == user.Id)
+ .LeftJoin((discuss, user, info) => user.Id == info.UserId)
+
+ .OrderBy(x => SqlFunc.GetRandom())
+ .Select((discuss, user, info) => new DiscussGetListOutputDto
+ {
+ Id = discuss.Id,
+ IsAgree = SqlFunc.Subqueryable().WhereIF(CurrentUser.Id != null, x => x.CreatorId == CurrentUser.Id && x.DiscussId == discuss.Id).Any(),
+
+ User = new BbsUserGetListOutputDto()
+ {
+ Id = user.Id,
+ UserName = user.UserName,
+ Nick = user.Nick,
+ Icon = user.Icon,
+ Level = info.Level,
+ UserLimit = info.UserLimit
+ }
+
+ }, true)
+ .ToPageListAsync(input.SkipCount, input.MaxResultCount);
+ return output;
+ }
+
+
+ }
+}
diff --git a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsUserAnalyseService.cs b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsUserAnalyseService.cs
index a6e167d4..5c67f099 100644
--- a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsUserAnalyseService.cs
+++ b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Application/Services/Analyses/BbsUserAnalyseService.cs
@@ -1,59 +1,58 @@
-using Microsoft.AspNetCore.Mvc;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Mapster;
+using Microsoft.AspNetCore.Mvc;
using SqlSugar;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;
using Yi.Framework.Bbs.Application.Contracts.Dtos.BbsUser;
-using Yi.Framework.Bbs.Application.Contracts.Dtos.Discuss;
-using Yi.Framework.Bbs.Domain.Entities;
using Yi.Framework.Bbs.Domain.Managers;
-using Yi.Framework.Bbs.Domain.Shared.Enums;
-using Yi.Framework.Rbac.Domain.Entities;
using Yi.Framework.Rbac.Domain.Shared.Consts;
-using Yi.Framework.SqlSugarCore.Abstractions;
namespace Yi.Framework.Bbs.Application.Services.Analyses
{
- public class BbsForumAnalyseService : ApplicationService, IApplicationService
+ public class BbsUserAnalyseService : ApplicationService, IApplicationService
{
- private ForumManager _forumManager;
- public BbsForumAnalyseService(ForumManager forumManager)
+ private BbsUserManager _bbsUserManager;
+ public BbsUserAnalyseService(BbsUserManager bbsUserManager)
{
- _forumManager = forumManager;
+ _bbsUserManager = bbsUserManager;
}
///
- /// 推荐主题,随机返回主题列表
+ /// 推荐好友,随机返回好友列表
///
///
- [HttpGet("analyse/bbs-discuss/random")]
- public async Task> GetRandomDiscussAsync([FromQuery] PagedResultRequestDto input)
+ [HttpGet("analyse/bbs-user/random")]
+ public async Task> GetRandomUserAsync([FromQuery] PagedResultRequestDto input)
{
- var output = await _forumManager._discussRepository._DbQueryable
- .Where(discuss=>discuss.PermissionType== DiscussPermissionTypeEnum.Public)
- .LeftJoin((discuss, user) => discuss.CreatorId == user.Id)
- .LeftJoin((discuss, user, info) => user.Id == info.UserId)
-
- .OrderBy(x => SqlFunc.GetRandom())
- .Select((discuss, user, info) => new DiscussGetListOutputDto
- {
- Id = discuss.Id,
- IsAgree = SqlFunc.Subqueryable().WhereIF(CurrentUser.Id != null, x => x.CreatorId == CurrentUser.Id && x.DiscussId == discuss.Id).Any(),
-
- User = new BbsUserGetListOutputDto()
- {
- Id = user.Id,
- UserName = user.UserName,
- Nick = user.Nick,
- Icon = user.Icon,
- Level = info.Level,
- UserLimit = info.UserLimit
- }
-
- }, true)
- .ToPageListAsync(input.SkipCount, input.MaxResultCount);
- return output;
+ var randUserIds = await _bbsUserManager._userRepository._DbQueryable
+ .Where(x => x.UserName != UserConst.Admin)
+ .OrderBy(x => SqlFunc.GetRandom())
+ .Select(x => x.Id).
+ ToPageListAsync(input.SkipCount, input.MaxResultCount);
+ var output = await _bbsUserManager.GetBbsUserInfoAsync(randUserIds);
+ return output.Adapt>();
}
+ ///
+ /// 积分排行榜
+ ///
+ ///
+ [HttpGet("analyse/bbs-user/integral-top")]
+ public async Task> GetIntegralTopUserAsync([FromQuery] PagedResultRequestDto input)
+ {
+ var randUserIds = await _bbsUserManager._userRepository._DbQueryable
+ .Where(x => x.UserName != UserConst.Admin)
+ .OrderBy(x => SqlFunc.GetRandom())
+ .Select(x => x.Id).
+ ToPageListAsync(input.SkipCount, input.MaxResultCount);
+ var output = await _bbsUserManager.GetBbsUserInfoAsync(randUserIds);
+ return output.Adapt>();
+ }
}
}
diff --git a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/Managers/BbsUserManager.cs b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/Managers/BbsUserManager.cs
index 6c50fc9c..42e5e4c4 100644
--- a/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/Managers/BbsUserManager.cs
+++ b/Yi.Abp.Net8/module/bbs/Yi.Framework.Bbs.Domain/Managers/BbsUserManager.cs
@@ -25,7 +25,7 @@ namespace Yi.Framework.Bbs.Domain.Managers
public async Task GetBbsUserInfoAsync(Guid userId)
{
return await _userRepository._DbQueryable.LeftJoin((user, info) => user.Id == info.Id)
- .Select((user, info) => new BbsUserInfoDto { Id = user.Id }, true)
+ .Select((user, info) => new BbsUserInfoDto { Id = user.Id ,Icon=user.Icon}, true)
.FirstAsync(user => user.Id==userId);
}
@@ -34,7 +34,7 @@ namespace Yi.Framework.Bbs.Domain.Managers
return await _userRepository._DbQueryable
.Where(user => userIds.Contains(user.Id))
.LeftJoin((user, info) => user.Id == info.Id)
- .Select((user, info) => new BbsUserInfoDto { Id = user.Id },true)
+ .Select((user, info) => new BbsUserInfoDto { Id = user.Id , Icon = user.Icon },true)
.ToListAsync();
}