diff --git a/New_College.Api/Controllers/Front/FrontSelectionController.cs b/New_College.Api/Controllers/Front/FrontSelectionController.cs
index 674d13d..0d4a3c7 100644
--- a/New_College.Api/Controllers/Front/FrontSelectionController.cs
+++ b/New_College.Api/Controllers/Front/FrontSelectionController.cs
@@ -109,5 +109,45 @@ namespace New_College.Api.Controllers.Front
+ ///
+ /// 获取选科数据结果
+ ///
+ ///
+ ///
+ [HttpGet]
+ public async Task>> GetSelect([FromQuery] SelectionRequest request)
+ {
+ var response = new List();
+ Expression> exp = Expressionable.Create() //创建表达式
+ .AndIF(request.UniversityName != null && request.UniversityName.Count() > 0, w => SqlFunc.ContainsArray(request.UniversityName, w.UniversityName))
+ .AndIF(request.MajorName != null && request.MajorName.Count() > 0, w => SqlFunc.ContainsArray(request.MajorName, w.MajorName))
+ .AndIF(!string.IsNullOrWhiteSpace(request.LocationCode), w => w.Province == request.LocationCode)
+ .And(w => w.AcademicYear == DateTime.Now.Year.ToString())
+ .ToExpression();//注意 这一句 不能少
+ var subjectlist = await _selectionServices.Query(exp);
+ response = subjectlist.Select(c => new SelectionResponseDto()
+ {
+ MajorName = c.MajorName
+ }).ToList();
+ response.ForEach(a =>
+ {
+ a.selects = subjectlist.Where(e => e.MajorName == a.MajorName).Select(c => new SelectResponseDto()
+ {
+ Selection = c.Selection,
+ UniversityName = c.UniversityName
+ }).ToList();
+ });
+ return new MessageModel>()
+ {
+ response = response,
+ success = true,
+ msg = "ok"
+ };
+ }
+
+
+
+
+
}
}
diff --git a/New_College.Model/Request/SelectionServiceRequest.cs b/New_College.Model/Request/SelectionServiceRequest.cs
index 9cd7489..e8b2300 100644
--- a/New_College.Model/Request/SelectionServiceRequest.cs
+++ b/New_College.Model/Request/SelectionServiceRequest.cs
@@ -5,7 +5,7 @@ using System.Text;
namespace New_College.Model.Request
{
- public class SelectionServiceRequest: BasePageRequest
+ public class SelectionServiceRequest : BasePageRequest
{
public string UniversityName { get; set; }
@@ -16,4 +16,16 @@ namespace New_College.Model.Request
public int Years { get; set; }
}
+
+
+ public class SelectionRequest
+ {
+
+ ///
+ /// 这里
+ ///
+ public string LocationCode { get; set; }
+ public List UniversityName { get; set; }
+ public List MajorName { get; set; }
+ }
}
diff --git a/New_College.Model/ViewModels/SelectionResponseDto.cs b/New_College.Model/ViewModels/SelectionResponseDto.cs
new file mode 100644
index 0000000..2d14dc5
--- /dev/null
+++ b/New_College.Model/ViewModels/SelectionResponseDto.cs
@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace New_College.Model
+{
+ public class SelectionResponseDto
+ {
+
+ public string MajorName { get; set; }
+ public List selects { get; set; }
+
+ }
+
+ public class SelectResponseDto
+ {
+ public string UniversityName { get; set; }
+ public string Selection { get; set; }
+
+ }
+
+}