You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
3.5 KiB
94 lines
3.5 KiB
using NFine.Code;
|
|
using NFine.Domain.Entity.SystemSecurity;
|
|
using NFine.Domain.IRepository.SystemSecurity;
|
|
using NFine.Repository.SystemSecurity;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace NFine.Application.SystemSecurity
|
|
{
|
|
public class LogApp
|
|
{
|
|
private ILogRepository service = new LogRepository();
|
|
|
|
public List<LogEntity> GetList(Pagination pagination, string queryJson)
|
|
{
|
|
var expression = ExtLinq.True<LogEntity>();
|
|
var queryParam = queryJson.ToJObject();
|
|
if (!queryParam["keyword"].IsEmpty())
|
|
{
|
|
string keyword = queryParam["keyword"].ToString();
|
|
expression = expression.And(t => t.F_Account.Contains(keyword));
|
|
}
|
|
if (!queryParam["timeType"].IsEmpty())
|
|
{
|
|
string timeType = queryParam["timeType"].ToString();
|
|
DateTime startTime = DateTime.Now.ToString("yyyy-MM-dd").ToDate();
|
|
DateTime endTime = DateTime.Now.ToString("yyyy-MM-dd").ToDate().AddDays(1);
|
|
switch (timeType)
|
|
{
|
|
case "1":
|
|
break;
|
|
case "2":
|
|
startTime = DateTime.Now.AddDays(-7);
|
|
break;
|
|
case "3":
|
|
startTime = DateTime.Now.AddMonths(-1);
|
|
break;
|
|
case "4":
|
|
startTime = DateTime.Now.AddMonths(-3);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
expression = expression.And(t => t.F_Date >= startTime && t.F_Date <= endTime);
|
|
}
|
|
return service.FindList(expression, pagination);
|
|
}
|
|
|
|
public void RemoveLog(string keepTime)
|
|
{
|
|
DateTime operateTime = DateTime.Now;
|
|
if (keepTime == "7") //保留近一周
|
|
{
|
|
operateTime = DateTime.Now.AddDays(-7);
|
|
}
|
|
else if (keepTime == "1") //保留近一个月
|
|
{
|
|
operateTime = DateTime.Now.AddMonths(-1);
|
|
}
|
|
else if (keepTime == "3") //保留近三个月
|
|
{
|
|
operateTime = DateTime.Now.AddMonths(-3);
|
|
}
|
|
var expression = ExtLinq.True<LogEntity>();
|
|
expression = expression.And(t => t.F_Date <= operateTime);
|
|
service.Delete(expression);
|
|
}
|
|
|
|
public void WriteDbLog(bool result, string resultLog)
|
|
{
|
|
LogEntity logEntity = new LogEntity();
|
|
logEntity.F_Id = Common.GuId();
|
|
logEntity.F_Date = DateTime.Now;
|
|
logEntity.F_Account = OperatorProvider.Provider.GetCurrent().UserCode;
|
|
logEntity.F_NickName = OperatorProvider.Provider.GetCurrent().UserName;
|
|
logEntity.F_IPAddress = Net.Ip;
|
|
logEntity.F_IPAddressName = Net.GetLocation(logEntity.F_IPAddress);
|
|
logEntity.F_Result = result;
|
|
logEntity.F_Description = resultLog;
|
|
logEntity.Create();
|
|
service.Insert(logEntity);
|
|
}
|
|
|
|
public void WriteDbLog(LogEntity logEntity)
|
|
{
|
|
logEntity.F_Id = Common.GuId();
|
|
logEntity.F_Date = DateTime.Now;
|
|
logEntity.F_IPAddress = "117.81.192.182";
|
|
logEntity.F_IPAddressName = Net.GetLocation(logEntity.F_IPAddress);
|
|
logEntity.Create();
|
|
service.Insert(logEntity);
|
|
}
|
|
}
|
|
}
|