From b86b9c7464a93b899c8125e84fd13ff5b362f45e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?old=E6=98=93?= <156663459@qq.com>
Date: Fri, 26 Jan 2024 10:37:43 +0800
Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E9=83=A8=E5=88=86=E9=99=A2?=
=?UTF-8?q?=E6=A0=A1=E6=95=B0=E6=8D=AE=E8=8E=B7=E5=8F=96=E9=80=BB=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Controllers/Front/WeixinPayController.cs | 2 +-
New_College.Api/New_College.Model.xml | 10 +
.../Helper/MajorPlanScoreTool.cs | 4 +-
New_College.Model/Models/T_TbSNeedDataInfo.cs | 16 +-
.../ViewModels/Query/OneSubmitGoRequest.cs | 2 +-
.../D_PlanMajorDescServices.cs | 324 ++++++++----------
6 files changed, 180 insertions(+), 178 deletions(-)
diff --git a/New_College.Api/Controllers/Front/WeixinPayController.cs b/New_College.Api/Controllers/Front/WeixinPayController.cs
index 6501f64..0197211 100644
--- a/New_College.Api/Controllers/Front/WeixinPayController.cs
+++ b/New_College.Api/Controllers/Front/WeixinPayController.cs
@@ -268,7 +268,7 @@ namespace New_College.Api.Controllers.Front
var rep = await v_OrderInfoRepository.Update(oneinfo);
if (rep)
{
- DingHookHelper.DingTalkHookMessage("支付回调成功", oneinfo.out_trade_no + ":修改为VIP");
+ DingHookHelper.DingTalkHookMessage("支付回调成功", oneinfo.out_trade_no);
//修改用户信息 修改为VIp
var customerinfo = await v_CustomerInfoRepository.QueryById(oneinfo.CustomerId);
customerinfo.IsVIP = true;
diff --git a/New_College.Api/New_College.Model.xml b/New_College.Api/New_College.Model.xml
index 95c1509..d578b28 100644
--- a/New_College.Api/New_College.Model.xml
+++ b/New_College.Api/New_College.Model.xml
@@ -2697,6 +2697,11 @@
+
+
+ 主键ID
+
+
招生类型
@@ -2927,6 +2932,11 @@
就业质量
+
+
+ 所在地
+
+
用户跟角色关联表
diff --git a/New_College.Common/Helper/MajorPlanScoreTool.cs b/New_College.Common/Helper/MajorPlanScoreTool.cs
index bb8a961..d6e72e6 100644
--- a/New_College.Common/Helper/MajorPlanScoreTool.cs
+++ b/New_College.Common/Helper/MajorPlanScoreTool.cs
@@ -17,7 +17,7 @@ namespace New_College.Common
///
public static int GetPlanPercentage(int LowScore, int requestScore)
{
- int minscore = requestScore - 15;//最小
+ int minscore = requestScore - 25;//最小
int constscore = requestScore;//中位数
int maxscore = requestScore + 15;//最大
@@ -33,7 +33,7 @@ namespace New_College.Common
///
public static int GetPlanScore(int LowScore, int requestScore)
{
- int minscore = requestScore - 15;//最小
+ int minscore = requestScore - 25;//最小
int constscore = requestScore;//中位数
int maxscore = requestScore + 15;//最大
int type = LowScore <= minscore ? 0 : minscore < LowScore && LowScore <= constscore ? 1 : LowScore > constscore && LowScore <= maxscore ? 2 : 0;
diff --git a/New_College.Model/Models/T_TbSNeedDataInfo.cs b/New_College.Model/Models/T_TbSNeedDataInfo.cs
index c356b5d..70f10d1 100644
--- a/New_College.Model/Models/T_TbSNeedDataInfo.cs
+++ b/New_College.Model/Models/T_TbSNeedDataInfo.cs
@@ -8,6 +8,12 @@ namespace New_College.Model.Models
//[SugarTable("T_TbSNeedDataInfo")]
public class T_TbSNeedDataInfo
{
+
+ ///
+ /// 主键ID
+ ///
+ [SugarColumn(ColumnName = "ID")]
+ public long ID { get; set; }
///
/// 招生类型
///
@@ -238,5 +244,13 @@ namespace New_College.Model.Models
///
[SugarColumn(ColumnName="EmploymentQuality" )]
public string EmploymentQuality { get; set; }
- }
+
+ ///
+ /// 所在地
+ ///
+ [SugarColumn(ColumnName = "Location")]
+ public string Location { get; set; }
+
+
+ }
}
diff --git a/New_College.Model/ViewModels/Query/OneSubmitGoRequest.cs b/New_College.Model/ViewModels/Query/OneSubmitGoRequest.cs
index d5badd8..faf435b 100644
--- a/New_College.Model/ViewModels/Query/OneSubmitGoRequest.cs
+++ b/New_College.Model/ViewModels/Query/OneSubmitGoRequest.cs
@@ -241,7 +241,7 @@ namespace New_College.Model.ViewModels
///
/// 招生计划Id
///
- public int PlanId { get; set; }
+ public long PlanId { get; set; }
}
diff --git a/New_College.Services/D_PlanMajorDescServices.cs b/New_College.Services/D_PlanMajorDescServices.cs
index 13c13b2..c5b5ef4 100644
--- a/New_College.Services/D_PlanMajorDescServices.cs
+++ b/New_College.Services/D_PlanMajorDescServices.cs
@@ -16,6 +16,7 @@ using LinqKit;
using System.Collections.Generic;
using New_College.Repository;
using System.Data.Entity.Infrastructure;
+using NPOI.SS.Formula.Functions;
namespace New_College.Services
{
@@ -29,13 +30,19 @@ namespace New_College.Services
private readonly ID_QualificationLineRepository _qualificationLineRepository;
private readonly ID_PlanMajorDescRepository _planMajorDescRepository;
private readonly IT_BatchlineRepository _batchlineRepository;
- public D_PlanMajorDescServices(IBaseRepository dal, ID_QualificationLineRepository d_QualificationLineRepository, ID_PlanMajorDescRepository planMajorDescRepository, IT_BatchlineRepository batchlineRepository)
+ private readonly IT_TbSNeedDataInfoServices sNeedDataInfoServices;
+ private readonly ID_UniversityServices _UniversityServices;
+ public D_PlanMajorDescServices(IBaseRepository dal, ID_QualificationLineRepository d_QualificationLineRepository,
+ ID_PlanMajorDescRepository planMajorDescRepository, IT_BatchlineRepository batchlineRepository,
+ IT_TbSNeedDataInfoServices sNeedDataInfoServices, ID_UniversityServices d_UniversityServices)
{
this._dal = dal;
base.BaseDal = dal;
_qualificationLineRepository = d_QualificationLineRepository;
_planMajorDescRepository = planMajorDescRepository;
_batchlineRepository = batchlineRepository;
+ this.sNeedDataInfoServices = sNeedDataInfoServices;
+ _UniversityServices = d_UniversityServices;
}
@@ -57,7 +64,7 @@ namespace New_College.Services
///
public async Task> GetAIGoList(OneSubmitGoRequest request)
{
- request.PageSize = request.PageSize > 200 ? 200 : request.PageSize;
+ request.PageSize = request.PageSize > 50 ? 50 : request.PageSize;
var claim = request.SubjectClaim.Split(",", StringSplitOptions.RemoveEmptyEntries).ToList();
var pagemodel = new AIGOPageModel();
int startscore = request.Score - 15;
@@ -66,7 +73,7 @@ namespace New_College.Services
var batlist = await _batchlineRepository.Query(c => c.Year == request.Year && c.Type_name == "综合");
request.BatchName = batlist.Where(c => c.Average <= request.Score && c.Batch_name == "普通类一段").Any() ? "普通类一段" : "普通类二段";
Expression> expression = Expressionable.Create()
- .And(c => c.Years == qyear)
+ .And(c => c.Years == qyear)
.And(c => c.IsDelete == false)
.And(c => c.Location == request.Location)
.AndIF(!string.IsNullOrWhiteSpace(request.BatchName), c => c.BatchName.Equals(request.BatchName))
@@ -85,38 +92,26 @@ namespace New_College.Services
var query = await _qualificationLineRepository.QueryPage(expression, request.PageIndex, request.PageSize, " LowScoreRank desc ");
//var majorarry = query.data.Select(c => c.Major).Distinct().ToArray();
- var universityarry = query.data.Select(c => c.UId).Distinct().ToArray();//
- Expression> expression2 = Expressionable.Create()
- .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, claim[0]) || SqlFunc.Contains(c.SelectSubject, claim[1]) || SqlFunc.Contains(c.SelectSubject, claim[2]) || c.SelectSubject == "不限")
- .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)
- .AndIF(request.Syl.HasValue && request.Syl == 1, c => c._SYL == "是")
- .AndIF(request._211.HasValue && request._211 == 1, c => c._211 == "是")
- .AndIF(request._985.HasValue && request._985 == 1, c => c._985 == "是")
- .AndIF(!string.IsNullOrWhiteSpace(request.Ownership), c => c.Ownership == request.Ownership)
- .AndIF(!string.IsNullOrWhiteSpace(request.Nature), c => c.Nature == request.Nature)
- //.AndIF(majorarry.Any(), c => SqlFunc.ContainsArray(majorarry, c.Major))
- .AndIF(universityarry.Any(), c => SqlFunc.ContainsArray(universityarry, c.UId))
- .AndIF(request.EndScore > endscore || request.StartScore < startscore, c => SqlFunc.Between(c.LowScore, request.StartScore, request.EndScore))
- .ToExpression();
- var list = (await _dal.Query(expression2)).Select(c => new D_PlanMajorDesc()
- {
- Major = c.Major,
- MajorCode = c.MajorCode,
- UniversityName = c.UniversityName,
- UId = c.UId,
- Years = c.Years,
- LowScore = c.LowScore,
- LowScoreRank = c.LowScoreRank,
- PlanCount = c.PlanCount,
- Id = c.Id
- // AcademicYear = c.Years.ToString()
- }).ToList();
+ var universityarry = query.data.Select(c => c.UniversityName).Distinct().ToArray();//
+
+ Expression> expression3 = Expressionable.Create()
+ .And(c => c.Location == request.Location)
+ .AndIF(!string.IsNullOrWhiteSpace(request.Major), c => SqlFunc.Contains(c.MajorName, request.Major))
+ // .AndIF(!string.IsNullOrWhiteSpace(request.SubjectClaim), c => SqlFunc.Contains(c.SelectSubject, request.SubjectClaim)) //此条件不带
+ .AndIF(!string.IsNullOrWhiteSpace(request.SubjectClaim), c => SqlFunc.Contains(c._24subject, claim[0]) || SqlFunc.Contains(c._24subject, claim[1]) || SqlFunc.Contains(c._24subject, claim[2]) || c._24subject == "不限")
+ //.AndIF(!string.IsNullOrWhiteSpace(request.BatchName), c => c.BatchName == request.BatchName)
+ .AndIF(!string.IsNullOrWhiteSpace(request.Province), c => SqlFunc.Contains(request.Province, c.Province))
+ // .AndIF(!string.IsNullOrWhiteSpace(request.SchoolType), c => c.SchoolType == request.SchoolType)
+ .AndIF(request.Syl.HasValue && request.Syl == 1, c => SqlFunc.Contains(c.LnstitutionalLevel, "双一流"))
+ .AndIF(request._211.HasValue && request._211 == 1, c => SqlFunc.Contains(c.LnstitutionalLevel, "211"))
+ .AndIF(request._985.HasValue && request._985 == 1, c => SqlFunc.Contains(c.LnstitutionalLevel, "985"))
+ .AndIF(!string.IsNullOrWhiteSpace(request.Ownership), c => c.Ownership == request.Ownership)
+ .AndIF(!string.IsNullOrWhiteSpace(request.Nature), c => c.Nature == request.Nature)
+ .AndIF(universityarry.Any(), c => SqlFunc.ContainsArray(universityarry, c.UniversityName))
+ .AndIF(request.EndScore > endscore || request.StartScore < startscore, c => SqlFunc.Between(c._23Score, request.StartScore, request.EndScore))
+ .ToExpression();
+ var querylist = await this.sNeedDataInfoServices.Query(expression3);
+
var responselist = query.data.Select(c => new AIGOResponse()
{
AreaName = c.AreaName,
@@ -130,61 +125,59 @@ namespace New_College.Services
collegeCode = c.RecruitCode.ToString(),
LowScoreRank = c.LowScoreRank,
Ownership = c.Ownership,
- //_fscore = c.LowScore,
- //_frank = c.LowScoreRank,
- // SubjectClam = c.SelectSubject,
Type = MajorPlanScoreTool.GetPlanScore(c.LowScore, request.Score),//冲稳保院校
Percentage = MajorPlanScoreTool.GetPlanPercentage(c.LowScore, request.Score),
- planCount = list.Where(w => w.Years == (DateTime.Now.Year - 1) && w.UId == c.UId).Sum(c => c.PlanCount),
- iGoPlanMajorItems = list.Where(w => w.Years == (DateTime.Now.Year - 1) && w.UId == c.UId).Select(t => new AIGoPlanMajorItem()
- {
- PlanId = t.Id,
- MajorCode = t.MajorCode,
- fee = t.Free,
- Major = t.Major,
- MajorGroup = t.MajorGroup,
- MajorRemark = t.Remark,
- planCount = t.PlanCount,
- SubjectClam = t.SelectSubject,
- Type = MajorPlanScoreTool.GetPlanScore(t.LowScore, request.Score),//冲稳保院校
- Percentage = MajorPlanScoreTool.GetPlanPercentage(t.LowScore, request.Score),
- PlanItems = list.Where(ss => ss.UId == c.UId && ss.Major == t.Major).Select(k => new PlanItem()
- {
- PlanCount = k.PlanCount,
- RankLine = k.LowScoreRank,
- Scoreline = k.LowScore,
- Year = k.Years.ToString(),
- Count = "--"
- }).ToList()
- }).ToList(),
+ planCount = querylist.Where(w => w.UniversityName == c.UniversityName).Sum(c => int.Parse(c._23Count)),
}).OrderByDescending(c => c.Type).OrderBy(c => c.LowScoreRank).ToList();
- var _qualifcationlist = await _qualificationLineRepository.Query(c => SqlFunc.ContainsArray(universityarry, c.UId));
-
- // responselist = responselist.Where(e => e.iGoPlanMajorItems.Select(s=>s.planCount).Sum() > 0).ToList();
responselist.ToList().ForEach(c =>
{
- c._fcount = c.iGoPlanMajorItems.Select(s => s.planCount).Sum();
- c._scount = c.iGoPlanMajorItems.Select(s => s.PlanItems.Where(w => w.Year == "2022").Sum(s => s.PlanCount)).Sum();
- c._tcount = c.iGoPlanMajorItems.Select(s => s.PlanItems.Where(w => w.Year == "2021").Sum(s => s.PlanCount)).Sum();
- if (_qualifcationlist.Where(e => e.Years == DateTime.Now.Year && e.UId == c.UniversityId).Any())
+ var items = querylist.Where(e => e.UniversityName == c.UniversityName);
+ c._fcount = items.Select(e => int.Parse(e._23Count)).Sum();
+ c._scount = items.Select(e => int.Parse(e._22Count)).Sum();
+ c._tcount = items.Select(e => int.Parse(e._21Count)).Sum();
+ c._fscore = items.Min(e => int.Parse(e._23SchoolScore));
+ c._frank = items.Min(e => int.Parse(e._23SchoolScoreLine));
+ c._sscore = items.Min(e => int.Parse(e._22Score));
+ c._srank = items.Min(e => int.Parse(e._22ScoreLine));
+ c._tscore = items.Min(e => int.Parse(e._22Score));
+ c._trank = items.Min(e => int.Parse(e._22ScoreLine));
+ c.iGoPlanMajorItems = items.Select(t => new AIGoPlanMajorItem()
{
- var tmpqualif = _qualifcationlist.Where(e => e.Years == DateTime.Now.Year && e.UId == c.UniversityId).FirstOrDefault();
- c._fscore = tmpqualif.LowScore;
- c._frank = tmpqualif.LowScoreRank;
- };
- if (_qualifcationlist.Where(e => e.Years == (DateTime.Now.Year - 1) && e.UId == c.UniversityId).Any())
- {
- var tmpqualif = _qualifcationlist.Where(e => e.Years == (DateTime.Now.Year - 1) && e.UId == c.UniversityId).FirstOrDefault();
- c._sscore = tmpqualif.LowScore;
- c._srank = tmpqualif.LowScoreRank;
- };
- if (_qualifcationlist.Where(e => e.Years == (DateTime.Now.Year - 2) && e.UId == c.UniversityId).Any())
- {
- var tmpqualif = _qualifcationlist.Where(e => e.Years == (DateTime.Now.Year - 2) && e.UId == c.UniversityId).FirstOrDefault();
- c._tscore = tmpqualif.LowScore;
- c._trank = tmpqualif.LowScoreRank;
- };
+
+ PlanId = t.ID,
+ MajorCode = t.MajorCode,
+ fee = t.Fee,
+ Major = t.MajorName,
+ // MajorGroup = t.MajorGroup,//山东无专业组
+ MajorRemark = t.Remark,
+ planCount = int.Parse(t._23Count),
+ SubjectClam = t._23subject,
+ Type = MajorPlanScoreTool.GetPlanScore(int.Parse(t._23Score), request.Score),//冲稳保院校
+ Percentage = MajorPlanScoreTool.GetPlanPercentage(int.Parse(t._23Score), request.Score),
+ PlanItems = new List()
+ {
+ new PlanItem() {
+ PlanCount=int.Parse(t._23Count),
+ RankLine=int.Parse(t._23ScoreLine),
+ Scoreline=int.Parse(t._23Score),
+ Year="2023"
+ },
+ new PlanItem() {
+ PlanCount=int.Parse(t._22Count),
+ RankLine=int.Parse(t._22ScoreLine),
+ Scoreline=int.Parse(t._22Score),
+ Year="2022"
+ },
+ new PlanItem() {
+ PlanCount=int.Parse(t._21Count),
+ RankLine=int.Parse(t._21ScoreLine),
+ Scoreline=int.Parse(t._21Score),
+ Year="2021"
+ },
+ }
+ }).ToList();
+
});
return new AIGOPageModel()
{
@@ -209,112 +202,97 @@ namespace New_College.Services
public async Task> GetPlanMajorList(OneSubmitGoRequest request)
{
- request.PageSize = 999;//山东省
+ var pagemodel = new PageModel();
+
+ request.PageSize = request.PageSize < 100 ? 100 : request.PageSize;
+ //request.PageSize = 150;//山东省
request.Year = request.Year > 2023 ? 2023 : request.Year;
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]) || c.SelectSubject == "不限")
- .AndIF(!string.IsNullOrWhiteSpace(request.Major), c => SqlFunc.Contains(c.Major, request.Major))
- .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)
- .AndIF(!string.IsNullOrWhiteSpace(request.SchoolType), c => c.SchoolType == request.SchoolType)
- .AndIF(request.Score > 0, c => SqlFunc.Between(c.LowScore, request.Score - 15, request.Score + 10))
- .AndIF(request.Syl.HasValue && request.Syl == 1, c => c._SYL == "是")
- .AndIF(request._211.HasValue && request._211 == 1, c => c._211 == "是")
- .AndIF(request._985.HasValue && request._985 == 1, c => c._985 == "是")
- .AndIF(!string.IsNullOrWhiteSpace(request.Ownership), c => c.Ownership == request.Ownership)
- .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 asc ");
+ Expression> expression3 = Expressionable.Create()
- var majorarry = query.data.Select(c => c.Major).Distinct().ToArray();
- var universityarry = query.data.Select(c => c.UId).Distinct().ToArray();//
- Expression> expression2 = Expressionable.Create()
- .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, claim[0]) || SqlFunc.Contains(c.SelectSubject, claim[1]) || SqlFunc.Contains(c.SelectSubject, claim[2]) || c.SelectSubject == "不限") //此条件不带
- .AndIF(!string.IsNullOrWhiteSpace(request.BatchName), c => c.BatchName == request.BatchName.Trim())
- .AndIF(!string.IsNullOrWhiteSpace(request.Province), c => SqlFunc.Contains(request.Province, c.AreaName))
- .AndIF(!string.IsNullOrWhiteSpace(request.SchoolType), c => c.SchoolType == request.SchoolType)
- .AndIF(request.Syl.HasValue && request.Syl == 1, c => c._SYL == "是")
- .AndIF(request._211.HasValue && request._211 == 1, c => c._211 == "是")
- .AndIF(request._985.HasValue && request._985 == 1, c => c._985 == "是")
- .AndIF(!string.IsNullOrWhiteSpace(request.Ownership), c => c.Ownership == request.Ownership)
- .AndIF(!string.IsNullOrWhiteSpace(request.Nature), c => c.Nature == request.Nature)
- .AndIF(majorarry.Any(), c => SqlFunc.ContainsArray(majorarry, c.Major))
- .AndIF(universityarry.Any(), c => SqlFunc.ContainsArray(universityarry, c.UId))
- //.AndIF(request. > 0, c => SqlFunc.Between(c.LowScore, request.Score, request.Score)) 位次区间
- .ToExpression();
- var list = (await _dal.Query(expression2)).Select(c => new D_PlanMajorDesc()
+ .And(c => c.Location == request.Location)
+ .AndIF(!string.IsNullOrWhiteSpace(request.SubjectClaim), c => SqlFunc.Contains(c._24subject, claim[0]) || SqlFunc.Contains(c._24subject, claim[1]) || SqlFunc.Contains(c._24subject, claim[2]) || c._24subject == "不限")
+ .AndIF(!string.IsNullOrWhiteSpace(request.Major), c => SqlFunc.Contains(c.MajorName, request.Major))
+ //.AndIF(!string.IsNullOrWhiteSpace(request.BatchName), c => c.BatchName.Equals(request.BatchName))
+ .AndIF(!string.IsNullOrWhiteSpace(request.Province), c => SqlFunc.Contains(request.Province, c.Province))
+ //.And(c => c.Years == request.Year)
+ //.AndIF(!string.IsNullOrWhiteSpace(request.SchoolType), c => c.SchoolType == request.SchoolType)
+ .AndIF(request.Score > 0, c => SqlFunc.Between(c._23Score, request.Score - 25, request.Score + 15))
+ .AndIF(request.Syl.HasValue && request.Syl == 1, c => SqlFunc.Contains(c.LnstitutionalLevel, "双一流"))
+ .AndIF(request._211.HasValue && request._211 == 1, c => SqlFunc.Contains(c.LnstitutionalLevel, "211"))
+ .AndIF(request._985.HasValue && request._985 == 1, c => SqlFunc.Contains(c.LnstitutionalLevel, "985"))
+ .AndIF(!string.IsNullOrWhiteSpace(request.Ownership), c => c.Ownership == request.Ownership)
+ .AndIF(!string.IsNullOrWhiteSpace(request.Nature), c => c.Nature == request.Nature)
+ //.AndIF(request. > 0, c => SqlFunc.Between(c.LowScore, request.Score, request.Score)) 位次区间
+ .ToExpression();
+
+ var querylist = await this.sNeedDataInfoServices.Query(expression3);
+
+ var universitymaps = (await _UniversityServices.Query(c => c.IsDelete == false)).Select(c => new D_University()
{
- Major = c.Major,
- MajorCode = c.MajorCode,
- UniversityName = c.UniversityName,
- BatchName = c.BatchName,
- SelectSubject = c.SelectSubject,
- UId = c.UId,
- Years = c.Years,
- Remark = c.Remark,
- LowScore = c.LowScore,
- LowScoreRank = c.LowScoreRank,
- PlanCount = c.PlanCount,
- // AcademicYear = c.Years.ToString()
-
+ Id = c.Id,
+ Name = c.Name,
}).ToList();
- var responselist = query.data.OrderByDescending(c => c.SelectSubject).Select(c => new OneSubmitGoResponse()
+
+ var responselist = querylist.Select(c => new OneSubmitGoResponse()
{
- AreaName = c.AreaName,
- fee = c.Free,
- Major = c.Major,
- MajorGroup = c.MajorGroup,
+
+ AreaName = c.Province,
+ fee = c.Fee,
+ Major = c.MajorName,
+ // MajorGroup = c.MajorGroup,
AcademicYear = c.AcademicYear,
MajorRemark = c.Remark,
- planCount = c.PlanCount,
+ planCount = int.Parse(c._23Count),
Ownership = c.Ownership,
- Rank = c.Rank,
- _985 = c._985,
- _211 = c._211,
- _SYL = c._SYL,
- UniversityId = c.UId,
+ Rank = c.UniversityRank,
+ _985 = c.LnstitutionalLevel!=null?(c.LnstitutionalLevel.Contains("985") ? "是" : "否") : "否",
+ _211 = c.LnstitutionalLevel != null ? (c.LnstitutionalLevel.Contains("211") ? "是" : "否") : "否",
+ _SYL = c.LnstitutionalLevel != null ? (c.LnstitutionalLevel.Contains("双一流") ? "是" : "否"): "否",
+ UniversityId = universitymaps.Where(e => e.Name == c.UniversityName).Any() ? universitymaps.FirstOrDefault(e => e.Name == c.UniversityName).Id : 0,
UniversityName = c.UniversityName,
- SubjectClam = c.SelectSubject,
- Type = MajorPlanScoreTool.GetPlanScore(c.LowScore, request.Score),//还缺冲稳保
- Percentage = MajorPlanScoreTool.GetPlanPercentage(c.LowScore, request.Score),
- PlanId = c.Id,
+ SubjectClam = c._23subject,
+ Type = MajorPlanScoreTool.GetPlanScore(int.Parse(c._23Score), request.Score),//还缺冲稳保
+ Percentage = MajorPlanScoreTool.GetPlanPercentage(int.Parse(c._23Score), request.Score),
+ PlanId = (int)c.ID,
UniversityCode = c.EnrollmentCode,
collegeCode = c.EnrollmentCode,
MajorCode = c.MajorCode,
- LowScoreRank = c.LowScoreRank,
- LowScore = c.LowScore,
- PlanItems = list.Where(e => e.UId == c.UId && e.Major.Equals(c.Major) && e.MajorCode == c.MajorCode && e.BatchName == request.BatchName).GroupBy(b => new PlanItem() { Year = b.Years.ToString(), Scoreline = b.LowScore, RankLine = b.LowScoreRank }).Select(s => new PlanItem()
+ LowScoreRank = int.Parse(c._23SchoolScoreLine),
+ LowScore = int.Parse(c._23SchoolScore),
+ PlanItems = new List()
{
- PlanCount = s.Sum(m => m.PlanCount),
- RankLine = s.Key.RankLine,
- Scoreline = s.Key.Scoreline,
- Year = s.Key.Year,
- Count = "--"
- }).OrderByDescending(k => k.Year).ToList()
+ new PlanItem() {
+ PlanCount=int.Parse(c._23Count),
+ RankLine=int.Parse(c._23ScoreLine),
+ Scoreline=int.Parse(c._23Score),
+ Year="2023"
+ },
+ new PlanItem() {
+ PlanCount=int.Parse(c._22Count),
+ RankLine=int.Parse(c._22ScoreLine),
+ Scoreline=int.Parse(c._22Score),
+ Year="2022"
+ },
+ new PlanItem() {
+ PlanCount=int.Parse(c._21Count),
+ RankLine=int.Parse(c._21ScoreLine),
+ Scoreline=int.Parse(c._21Score),
+ Year="2021"
+ },
+ }
}).ToList();
- //冲稳保比例--待定
- var newlist = responselist.Where(c => c.Type == 2).OrderByDescending(c => c.SubjectClam).OrderByDescending(c => c.LowScore).Take(18).ToList();
- newlist.AddRange(responselist.Where(c => c.Type == 1).OrderByDescending(c => c.SubjectClam).OrderByDescending(c => c.LowScore).Take(60).ToList());
- newlist.AddRange(responselist.Where(c => c.Type == 0).OrderByDescending(c => c.SubjectClam).OrderByDescending(c => c.LowScore).Take(18).ToList());
-
- return new PageModel()
- {
- data = newlist,
- dataCount = query.dataCount,
- page = query.page,
- pageCount = query.pageCount,
- PageSize = query.PageSize
- };
+ ////冲稳保比例--待定
+ var newlist = responselist.Where(c => c.Type == 2).OrderByDescending(c => c.SubjectClam).OrderByDescending(c => c.LowScore).Take(25).ToList();
+ newlist.AddRange(responselist.Where(c => c.Type == 1).OrderByDescending(c => c.SubjectClam).OrderByDescending(c => c.LowScore).Take(45).ToList());
+ newlist.AddRange(responselist.Where(c => c.Type == 0).OrderByDescending(c => c.SubjectClam).OrderByDescending(c => c.LowScore).Take(30).ToList());
+ pagemodel.page = request.PageIndex;
+ pagemodel.data = newlist;
+ pagemodel.dataCount = responselist.Count;
+ pagemodel.PageSize = request.PageSize;
+ pagemodel.pageCount= pagemodel.data.Count();
+ return pagemodel;
}