From c9390b898249d437f60097bcf935e1c4cda126fe Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?old=E6=98=93?= <156663459@qq.com>
Date: Tue, 21 Nov 2023 17:53:45 +0800
Subject: [PATCH] feat:bug fixed
---
.../D_PlanMajorDescServices.cs | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/New_College.Services/D_PlanMajorDescServices.cs b/New_College.Services/D_PlanMajorDescServices.cs
index 44fb6ac..deb9e7e 100644
--- a/New_College.Services/D_PlanMajorDescServices.cs
+++ b/New_College.Services/D_PlanMajorDescServices.cs
@@ -12,6 +12,7 @@ using System;
using System.Linq;
using New_College.Common;
using New_College.IRepository;
+using LinqKit;
namespace New_College.Services
{
@@ -38,6 +39,8 @@ namespace New_College.Services
///
public async Task> GetAIGoList(OneSubmitGoRequest request)
{
+ var claim = request.SubjectClaim.Split(",", StringSplitOptions.RemoveEmptyEntries).ToList();
+
var pagemodel = new AIGOPageModel();
int startscore = request.Score - 15;
int endscore = request.Score + 15;
@@ -65,7 +68,8 @@ namespace New_College.Services
.And(c => c.IsDelete == false)
.And(c => c.Location == request.Location)
.AndIF(!string.IsNullOrWhiteSpace(request.Major), c => SqlFunc.Contains(c.Major, request.Major))
- .AndIF(!string.IsNullOrWhiteSpace(request.SubjectClaim), c => SqlFunc.Contains(c.SelectSubject, request.SubjectClaim)) //此条件不带
+ // .AndIF(!string.IsNullOrWhiteSpace(request.SubjectClaim), c => SqlFunc.Contains(c.SelectSubject, request.SubjectClaim)) //此条件不带
+ .AndIF(!string.IsNullOrWhiteSpace(request.SubjectClaim), c => SqlFunc.Contains(c.SelectSubject, claim[0]) || SqlFunc.Contains(c.SelectSubject, claim[1]) || SqlFunc.Contains(c.SelectSubject, claim[2]))
.AndIF(!string.IsNullOrWhiteSpace(request.BatchName), c => c.BatchName == request.BatchName)
.AndIF(!string.IsNullOrWhiteSpace(request.Province), c => SqlFunc.Contains(request.Province, c.AreaName))
.AndIF(!string.IsNullOrWhiteSpace(request.SchoolType), c => c.SchoolType == request.SchoolType)
@@ -128,9 +132,9 @@ namespace New_College.Services
return new AIGOPageModel()
{
data = responselist,
- c = responselist.Select(c => c.Type == 2).Count(),
- w = responselist.Select(c => c.Type == 1).Count(),
- b = responselist.Select(c => c.Type == 0).Count(),
+ c = responselist.Where(c => c.Type == 2).Count(),
+ w = responselist.Where(c => c.Type == 1).Count(),
+ b = responselist.Where(c => c.Type == 0).Count(),
dataCount = query.dataCount,
page = query.page,
pageCount = query.pageCount,
@@ -147,13 +151,13 @@ namespace New_College.Services
///
public async Task> GetPlanMajorList(OneSubmitGoRequest request)
{
-
+ var claim = request.SubjectClaim.Split(",", StringSplitOptions.RemoveEmptyEntries).ToList();
var pagemodel = new PageModel();
Expression> expression = Expressionable.Create()
.And(c => c.IsDelete == false)
.And(c => c.Location == request.Location)
+ .AndIF(!string.IsNullOrWhiteSpace(request.SubjectClaim), c => SqlFunc.Contains(c.SelectSubject, claim[0]) || SqlFunc.Contains(c.SelectSubject, claim[1]) || SqlFunc.Contains(c.SelectSubject, claim[2]))
.AndIF(!string.IsNullOrWhiteSpace(request.Major), c => SqlFunc.Contains(c.Major, request.Major))
- .AndIF(!string.IsNullOrWhiteSpace(request.SubjectClaim), c => SqlFunc.Contains(request.SubjectClaim, c.SelectSubject))
.AndIF(!string.IsNullOrWhiteSpace(request.BatchName), c => c.BatchName.Equals(request.BatchName))
.AndIF(!string.IsNullOrWhiteSpace(request.Province), c => SqlFunc.Contains(request.Province, c.AreaName))
.And(c => c.Years == request.Year)
@@ -166,6 +170,8 @@ namespace New_College.Services
.AndIF(!string.IsNullOrWhiteSpace(request.Nature), c => c.Nature == request.Nature)
//.AndIF(request. > 0, c => SqlFunc.Between(c.LowScore, request.Score, request.Score)) 位次区间
.ToExpression();
+
+
var query = await _dal.QueryPage(expression, request.PageIndex, request.PageSize, " LowScoreRank desc ");
var majorarry = query.data.Select(c => c.Major).Distinct().ToArray();