diff --git a/CoreCms.Net.Auth/CoreCms.Net.Auth.csproj b/CoreCms.Net.Auth/CoreCms.Net.Auth.csproj
index 7e565cf..a9a3b2e 100644
--- a/CoreCms.Net.Auth/CoreCms.Net.Auth.csproj
+++ b/CoreCms.Net.Auth/CoreCms.Net.Auth.csproj
@@ -5,9 +5,9 @@
-
+
-
+
diff --git a/CoreCms.Net.Caching/CoreCms.Net.Caching.csproj b/CoreCms.Net.Caching/CoreCms.Net.Caching.csproj
index c4c6ce0..7bf66bc 100644
--- a/CoreCms.Net.Caching/CoreCms.Net.Caching.csproj
+++ b/CoreCms.Net.Caching/CoreCms.Net.Caching.csproj
@@ -6,7 +6,7 @@
-
+
diff --git a/CoreCms.Net.CodeGenerator/CoreCms.Net.CodeGenerator.csproj b/CoreCms.Net.CodeGenerator/CoreCms.Net.CodeGenerator.csproj
index 4f3e832..b25e41a 100644
--- a/CoreCms.Net.CodeGenerator/CoreCms.Net.CodeGenerator.csproj
+++ b/CoreCms.Net.CodeGenerator/CoreCms.Net.CodeGenerator.csproj
@@ -19,7 +19,7 @@
-
+
diff --git a/CoreCms.Net.Core/CoreCms.Net.Core.csproj b/CoreCms.Net.Core/CoreCms.Net.Core.csproj
index 1831881..b405e9b 100644
--- a/CoreCms.Net.Core/CoreCms.Net.Core.csproj
+++ b/CoreCms.Net.Core/CoreCms.Net.Core.csproj
@@ -25,7 +25,7 @@
-
+
diff --git a/CoreCms.Net.Model/CoreCms.Net.Model.csproj b/CoreCms.Net.Model/CoreCms.Net.Model.csproj
index 836c681..a246a82 100644
--- a/CoreCms.Net.Model/CoreCms.Net.Model.csproj
+++ b/CoreCms.Net.Model/CoreCms.Net.Model.csproj
@@ -5,7 +5,7 @@
-
+
diff --git a/CoreCms.Net.Model/Entities/Expression/PredicateBuilder.cs b/CoreCms.Net.Model/Entities/Expression/PredicateBuilder.cs
index 0af59b1..7961e1a 100644
--- a/CoreCms.Net.Model/Entities/Expression/PredicateBuilder.cs
+++ b/CoreCms.Net.Model/Entities/Expression/PredicateBuilder.cs
@@ -51,7 +51,7 @@ namespace CoreCms.Net.Model.Entities.Expression
public static Expression> And(this Expression> first,
Expression> second)
{
- return first.Compose(second, System.Linq.Expressions.Expression.And);
+ return first.Compose(second, System.Linq.Expressions.Expression.AndAlso);
}
public static Expression> Or(this Expression> first,
diff --git a/CoreCms.Net.RedisMQ/CoreCms.Net.RedisMQ.csproj b/CoreCms.Net.RedisMQ/CoreCms.Net.RedisMQ.csproj
index 79a7242..cd08989 100644
--- a/CoreCms.Net.RedisMQ/CoreCms.Net.RedisMQ.csproj
+++ b/CoreCms.Net.RedisMQ/CoreCms.Net.RedisMQ.csproj
@@ -5,10 +5,10 @@
-
+
-
+
diff --git a/CoreCms.Net.Repository/Bill/CoreCmsBillDeliveryRepository.cs b/CoreCms.Net.Repository/Bill/CoreCmsBillDeliveryRepository.cs
index eab1948..21a3143 100644
--- a/CoreCms.Net.Repository/Bill/CoreCmsBillDeliveryRepository.cs
+++ b/CoreCms.Net.Repository/Bill/CoreCmsBillDeliveryRepository.cs
@@ -41,30 +41,21 @@ namespace CoreCms.Net.Repository
///
public async Task> Statistics()
{
- var dt = DateTime.Now.AddDays(-8).ToString("yyyy-MM-dd 00:00:00");
+ var dt = DateTime.Now.AddDays(-8);
- var sqlStr = string.Empty;
- string dbTypeString = AppSettingsConstVars.DbDbType;
- if (dbTypeString == DbType.SqlServer.ToString())
- {
- sqlStr = @"SELECT count(1) AS nums,CONVERT(varchar(100),createTime, 23) AS day
- FROM CoreCmsBillDelivery
- WHERE createTime >= '" + dt + @"'
- GROUP BY CONVERT(varchar(100),createTime, 23)";
- }
- else if (dbTypeString == DbType.MySql.ToString())
- {
- sqlStr = @"SELECT count(1) AS nums,date(createTime) AS day
- FROM CoreCmsBillDelivery
- WHERE createTime >= '" + dt + @"'
- GROUP BY date(createTime)";
- }
+ var list = await DbClient.Queryable()
+ .Where(p => p.createTime >= dt)
+ .Select(it => new
+ {
+ it.deliveryId,
+ createTime = it.createTime.Date
+ })
+ .MergeTable()
+ .GroupBy(it => it.createTime)
+ .Select(it => new StatisticsOut { day = it.createTime.ToString("yyyy-MM-dd"), nums = SqlFunc.AggregateCount(it.deliveryId) })
+ .ToListAsync();
- if (string.IsNullOrEmpty(sqlStr))
- {
- return null;
- }
- return await DbClient.SqlQueryable(sqlStr).ToListAsync();
+ return list;
}
}
diff --git a/CoreCms.Net.Repository/Bill/CoreCmsBillPaymentsRepository.cs b/CoreCms.Net.Repository/Bill/CoreCmsBillPaymentsRepository.cs
index d2d20ca..d69dc92 100644
--- a/CoreCms.Net.Repository/Bill/CoreCmsBillPaymentsRepository.cs
+++ b/CoreCms.Net.Repository/Bill/CoreCmsBillPaymentsRepository.cs
@@ -41,31 +41,20 @@ namespace CoreCms.Net.Repository
///
public async Task> Statistics()
{
- var dt = DateTime.Now.AddDays(-8).ToString("yyyy-MM-dd 00:00:00");
+ var dt = DateTime.Now.AddDays(-8);
- var sqlStr = string.Empty;
- string dbTypeString = AppSettingsConstVars.DbDbType;
- if (dbTypeString == DbType.SqlServer.ToString())
- {
- sqlStr = @"SELECT count(1) AS nums,CONVERT(varchar(100),createTime, 23) AS day
- FROM CoreCmsBillPayments
- WHERE createTime >= '" + dt + @"' AND status = " + (int)GlobalEnumVars.BillPaymentsStatus.Payed + @" AND type=" + (int)GlobalEnumVars.BillPaymentsType.Order + @"
- GROUP BY CONVERT(varchar(100),createTime, 23)";
- }
- else if (dbTypeString == DbType.MySql.ToString())
- {
- sqlStr = @"SELECT count(1) AS nums,date(createTime) AS day
- FROM CoreCmsBillPayments
- WHERE createTime >= '" + dt + @"' AND status = " + (int)GlobalEnumVars.BillPaymentsStatus.Payed + @" AND type=" + (int)GlobalEnumVars.BillPaymentsType.Order + @"
- GROUP BY date(createTime)";
- }
+ var list = await DbClient.Queryable()
+ .Where(p => p.createTime >= dt && p.status == (int)GlobalEnumVars.BillPaymentsStatus.Payed && p.type == (int)GlobalEnumVars.BillPaymentsType.Order)
+ .Select(it => new
+ {
+ it.paymentId,
+ createTime = it.createTime.Date
+ })
+ .MergeTable()
+ .GroupBy(it => it.createTime)
+ .Select(it => new StatisticsOut { day = it.createTime.ToString("yyyy-MM-dd"), nums = SqlFunc.AggregateCount(it.paymentId) })
+ .ToListAsync();
- if (string.IsNullOrEmpty(sqlStr))
- {
- return null;
- }
-
- var list = await DbClient.SqlQueryable(sqlStr).ToListAsync();
return list;
}
diff --git a/CoreCms.Net.Repository/CoreCms.Net.Repository.csproj b/CoreCms.Net.Repository/CoreCms.Net.Repository.csproj
index 7236792..ae24f2b 100644
--- a/CoreCms.Net.Repository/CoreCms.Net.Repository.csproj
+++ b/CoreCms.Net.Repository/CoreCms.Net.Repository.csproj
@@ -6,7 +6,7 @@
-
+
diff --git a/CoreCms.Net.Repository/User/CoreCmsUserRepository.cs b/CoreCms.Net.Repository/User/CoreCmsUserRepository.cs
index 295704d..0fc8bb9 100644
--- a/CoreCms.Net.Repository/User/CoreCmsUserRepository.cs
+++ b/CoreCms.Net.Repository/User/CoreCmsUserRepository.cs
@@ -150,30 +150,19 @@ namespace CoreCms.Net.Repository
///
public async Task> Statistics(int day)
{
- var dt = DateTime.Now.AddDays(-day).ToString("yyyy-MM-dd");
+ var dt = DateTime.Now.AddDays(-day);
+ var list = await DbClient.Queryable()
+ .Where(p => p.createTime >= dt)
+ .Select(it => new
+ {
+ it.id,
+ createTime = it.createTime.Date
+ })
+ .MergeTable()
+ .GroupBy(it => it.createTime)
+ .Select(it => new StatisticsOut { day = it.createTime.ToString("yyyy-MM-dd"), nums = SqlFunc.AggregateCount(it.id) })
+ .ToListAsync();
- var sqlStr = string.Empty;
- string dbTypeString = AppSettingsConstVars.DbDbType;
- if (dbTypeString == DbType.SqlServer.ToString())
- {
- sqlStr = @"SELECT count(1) AS nums,CONVERT(varchar(100),createTime, 23) AS day
- FROM CoreCmsUser
- WHERE createTime > '" + dt + @"'
- GROUP BY CONVERT(varchar(100),createTime, 23)";
- }
- else if (dbTypeString == DbType.MySql.ToString())
- {
- sqlStr = @"SELECT count(1) AS nums,date(createTime) AS day
- FROM CoreCmsUser
- WHERE createTime > '" + dt + @"'
- GROUP BY date(createTime)";
- }
- if (string.IsNullOrEmpty(sqlStr))
- {
- return null;
- }
-
- var list = await DbClient.SqlQueryable(sqlStr).ToListAsync();
return list;
}
diff --git a/CoreCms.Net.Services/CoreCms.Net.Services.csproj b/CoreCms.Net.Services/CoreCms.Net.Services.csproj
index e8a57be..53bb184 100644
--- a/CoreCms.Net.Services/CoreCms.Net.Services.csproj
+++ b/CoreCms.Net.Services/CoreCms.Net.Services.csproj
@@ -5,7 +5,7 @@
-
+
diff --git a/CoreCms.Net.Swagger/CoreCms.Net.Swagger.csproj b/CoreCms.Net.Swagger/CoreCms.Net.Swagger.csproj
index e980e42..8c4f0af 100644
--- a/CoreCms.Net.Swagger/CoreCms.Net.Swagger.csproj
+++ b/CoreCms.Net.Swagger/CoreCms.Net.Swagger.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/CoreCms.Net.WeChat.Service/CoreCms.Net.WeChat.Service.csproj b/CoreCms.Net.WeChat.Service/CoreCms.Net.WeChat.Service.csproj
index 50b9850..8420228 100644
--- a/CoreCms.Net.WeChat.Service/CoreCms.Net.WeChat.Service.csproj
+++ b/CoreCms.Net.WeChat.Service/CoreCms.Net.WeChat.Service.csproj
@@ -11,7 +11,7 @@
-
+
diff --git a/CoreCms.Net.Web.Admin/CoreCms.Net.Web.Admin.csproj b/CoreCms.Net.Web.Admin/CoreCms.Net.Web.Admin.csproj
index 8ff3dde..78fed1c 100644
--- a/CoreCms.Net.Web.Admin/CoreCms.Net.Web.Admin.csproj
+++ b/CoreCms.Net.Web.Admin/CoreCms.Net.Web.Admin.csproj
@@ -55,14 +55,14 @@
-
-
-
-
-
+
+
+
+
+
-
+
@@ -73,8 +73,8 @@
-
-
+
+
diff --git a/CoreCms.Net.Web.WebApi/CoreCms.Net.Web.WebApi.csproj b/CoreCms.Net.Web.WebApi/CoreCms.Net.Web.WebApi.csproj
index 714e78e..1e61a1c 100644
--- a/CoreCms.Net.Web.WebApi/CoreCms.Net.Web.WebApi.csproj
+++ b/CoreCms.Net.Web.WebApi/CoreCms.Net.Web.WebApi.csproj
@@ -50,24 +50,24 @@
-
-
+
+
-
-
+
+
-
+
-
+