OL.FrameCore.Application/Home/HomeService.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using OL.FrameCore.Application.Home.Dto;
using OL.FrameCore.Domain.Entity;
using OL.FrameCore.Infrastructure.UnitOfWork;
using System;
using System.Collections.Generic;
using System.Text;
using System.Linq;
namespace OL.FrameCore.Application.Home
{
public class HomeService: IHomeService
{
IUnitOfWork _unitOfwork;
public HomeService(IUnitOfWork unitOfwork)
{
_unitOfwork = unitOfwork;
}
/// <summary>
/// 获取当前数据
/// </summary>
/// <returns></returns>
public GetCurrentDataResponse GetCurrentData()
{
var repositoryArticle = _unitOfwork.GetRepository<AppArticle>();
var repositoryUser = _unitOfwork.GetRepository<SysUser>();
var data = new GetCurrentDataResponse
{
NewNum = repositoryArticle.TableNoTracking.Where(p => p.IsDelete == false && p.Type == 0).Count(),//新闻数
NoticeNum = repositoryArticle.TableNoTracking.Where(p => p.IsDelete == false && p.Type == 1).Count(),//公告数
UserNum = repositoryUser.TableNoTracking.Where(p => p.IsDelete == false).Count()//用户数
};
return data;
}
/// <summary>
/// 获取登录统计
/// </summary>
/// <returns></returns>
public IList<GetLoginStatisticsModel> GetLoginStatistics()
{
//构建每天登录数据sql,用UNION并成列表
string sql = "";
DateTime begin = DateTime.Now.Date.AddDays(-10);
while (begin <= DateTime.Now.Date)
{
if (begin != DateTime.Now.Date.AddDays(-10))
sql += " UNION\n";
sql += $" select '{begin.ToString("MM-dd")}' [Date],count(1) LoginNum from Sys_UserLoginLog where LoginTime>='{begin.ToString("yyyy-MM-dd")}' and LoginTime<'{begin.AddDays(1).ToString("yyyy-MM-dd")}'";
begin = begin.AddDays(1);
}
var list = _unitOfwork.SqlQuery<GetLoginStatisticsModel>(sql);
return list;
}
/// <summary>
/// 获取用户分布
/// </summary>
/// <returns></returns>
public GetUserDistributionResponse GetUserDistribution()
后面还有 33 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
