diff --git a/OpenAuth.App/ServiceApp/InsTaskHallManager/InsTaskHallApp.cs b/OpenAuth.App/ServiceApp/InsTaskHallManager/InsTaskHallApp.cs
index 18a6b6e..a3ec6f6 100644
--- a/OpenAuth.App/ServiceApp/InsTaskHallManager/InsTaskHallApp.cs
+++ b/OpenAuth.App/ServiceApp/InsTaskHallManager/InsTaskHallApp.cs
@@ -12,6 +12,8 @@ using Microsoft.Extensions.Configuration;
using DocumentFormat.OpenXml.Office2010.ExcelAc;
using DocumentFormat.OpenXml.Office2010.CustomUI;
using NPOI.OpenXmlFormats.Dml;
+using Infrastructure.Extensions;
+using Moq;
namespace OpenAuth.App.ServiceApp.InsTaskHallManager
{
@@ -48,6 +50,23 @@ namespace OpenAuth.App.ServiceApp.InsTaskHallManager
return query;
}
+ ///
+ /// 完成任务
+ ///
+ ///
+ public async Task> GetCompleteTaskList()
+ {
+ var query = await client.Queryable().Where(r => r.IsCompleted == true&&r.CompleteTime!=null)
+ .OrderByDescending(r => r.CompleteTime)
+ .GroupBy(r=>r.CompleteTime.ToString("yyyy-MM-dd"))
+ .Select(r => new
+ {
+ count = SqlFunc.AggregateCount(r.Id),
+ time= r.CompleteTime.ToString("yyyy-MM-dd")
+ }).ToListAsync();
+
+ return query;
+ }
}
}
diff --git a/OpenAuth.Repository/Domain/InsTask.cs b/OpenAuth.Repository/Domain/InsTask.cs
index 9ee9a90..ab77083 100644
--- a/OpenAuth.Repository/Domain/InsTask.cs
+++ b/OpenAuth.Repository/Domain/InsTask.cs
@@ -99,5 +99,12 @@ namespace OpenAuth.Repository.Domain
/// Nullable:False
///
public string UpdateUserName { get; set; }
+
+ ///
+ /// Desc:完成时间
+ /// Default:
+ /// Nullable:true
+ ///
+ public DateTime? CompleteTime { get; set; }
}
}
diff --git a/OpenAuth.WebApi/Controllers/ServiceControllers/InsTaskHallController.cs b/OpenAuth.WebApi/Controllers/ServiceControllers/InsTaskHallController.cs
index 0419032..a7418c2 100644
--- a/OpenAuth.WebApi/Controllers/ServiceControllers/InsTaskHallController.cs
+++ b/OpenAuth.WebApi/Controllers/ServiceControllers/InsTaskHallController.cs
@@ -37,5 +37,25 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers
}
return result;
}
+
+ ///
+ ///已完成任务
+ ///
+ ///
+ [HttpGet]
+ public async Task>> GetCompleteTaskList()
+ {
+ var result = new Response>();
+ try
+ {
+ result.Result = await _app.GetCompleteTaskList();
+ }
+ catch (Exception ex)
+ {
+ result.Code = 500;
+ result.Message = ex.InnerException?.Message ?? ex.Message;
+ }
+ return result;
+ }
}
}