--关联院校 bug 问题修复

develop
old易 2023-09-20 10:12:38 +08:00
parent e9dea45dd9
commit 657d76d976
4 changed files with 35 additions and 22 deletions

View File

@ -542,7 +542,7 @@
</member>
<member name="P:New_College.Model.Models.D_University.Nature">
<summary>
办学性质 1、公办2、民办3中外合作,4 港澳台
办学性质 0、公办1、民办2中外合作,3 港澳台
</summary>
</member>
<member name="P:New_College.Model.Models.D_University.Ascription">

View File

@ -35,7 +35,7 @@ namespace New_College.Model.Models
public string Build_Date { get; set; }
/// <summary>
/// 办学性质 1、公办2、民办3中外合作,4 港澳台
/// 办学性质 0、公办1、民办2中外合作,3 港澳台
/// </summary>
[SugarColumn(IsNullable = true)]
public int Nature { get; set; }

View File

@ -28,7 +28,7 @@ namespace New_College.Model.ViewModels
/// <summary>
/// 办学性质
/// </summary>
public int Nature { get; set; } = 1;
public int Nature { get; set; } = -1;
/// <summary>
/// 学校类型
@ -121,7 +121,7 @@ namespace New_College.Model.ViewModels
/// </summary>
public string SubjectClaim { get; set; }
/// <summary>
/// 高考年份

View File

@ -17,7 +17,8 @@ using New_College.Common.Helper;
using New_College.Common;
using New_College.Common.HttpRestSharp;
using System.Text;
using SqlSugar;
using System.Linq.Expressions;
namespace New_College.Services
{
@ -168,7 +169,7 @@ namespace New_College.Services
{
var majorcategories = (await d_MajorCategoryRepository.Query(x => x.Type == query.SchoolLevel && x.IsDelete == false)).Select(x => new uniMajorSelect() { Id = x.Id, Name = x.Name }); ;
var majorclasses = (await d_MajorClassRepository.Query(x => x.IsDelete == false)).Select(x => new uniMajorClassSelect() { Id = x.Id, Name = x.Name, TradeId = x.TradeId });
var majorinfo = (await d_MajorRepository.Query(x => x.IsDelete == false&&x.Type!=3)).Select(s => new uniMajorSelect() { Id = s.CategoryClass_Id, Name = s.Name }).ToList();
var majorinfo = (await d_MajorRepository.Query(x => x.IsDelete == false && x.Type != 3)).Select(s => new uniMajorSelect() { Id = s.CategoryClass_Id, Name = s.Name }).ToList();
List<uniMajorInfoResult> list = new List<uniMajorInfoResult>() { };
foreach (var item in majorcategories)
{
@ -395,23 +396,35 @@ namespace New_College.Services
if (majorinfo.Count <= 0)
return new PageModel<UniversityResult>() { };
var universityids = majorinfo.Select(x => x.Universityid).ToList();
var wheres = PredicateBuilder.New<D_University>();
wheres = wheres.And(x => x.IsDelete == false && universityids.Contains(x.Id));
if (!string.IsNullOrEmpty(query.AreaName) && query.AreaName != "全国")
wheres = wheres.And(x => x.Area_Name.Contains(query.AreaName));
if (query.SubjectLevel > 0)
wheres = wheres.And(x => x.Subject_Level == query.SubjectLevel);
if (query.Type >= 0)
wheres = wheres.And(x => x.Type == query.Type);
if (query.Nhef >= 0)
wheres = wheres.And(x => x.Nhef == query.Nhef);
if (query.Sff >= 0)
wheres = wheres.And(x => x.Sff == query.Sff);
if (query.Syl >= 0)
wheres = wheres.And(x => x.Syl == query.Syl);
wheres = wheres.And(x => x.Nature == query.Nature);
//var wheres = PredicateBuilder.New<D_University>();
//wheres = wheres.And(x => x.IsDelete == false && universityids.Contains(x.Id));
var info = await d_UniversityRepository.QueryPage(wheres, query.PageIndex, query.PageSize, "Rank Asc");
//if (query.SubjectLevel > 0)
// wheres = wheres.And(x => x.Subject_Level == query.SubjectLevel);
//if (query.Type >= 0)
// wheres = wheres.And(x => x.Type == query.Type);
//if (query.Nhef >= 0)
// wheres = wheres.And(x => x.Nhef == query.Nhef);
//if (query.Sff >= 0)
// wheres = wheres.And(x => x.Sff == query.Sff);
//if (query.Syl >= 0)
// wheres = wheres.And(x => x.Syl == query.Syl);
//wheres = wheres.And(x => x.Nature == query.Nature);
Expression<Func<D_University, bool>> exp = Expressionable.Create<D_University>() //创建表达式
.AndIF(!string.IsNullOrEmpty(query.AreaName) && query.AreaName != "全国", x => x.Area_Name.Contains(query.AreaName))
.And(x => x.IsDelete == false && universityids.Contains(x.Id))
.AndIF(query.SubjectLevel > 0, x => x.Subject_Level == query.SubjectLevel)
.AndIF(query.Type >= 0, x => x.Type == query.Type)
.AndIF(query.Nhef >= 0, x => x.Nhef == query.Nhef)
.AndIF(query.Sff >= 0, x => x.Sff == query.Sff)
.AndIF(query.Syl >= 0, x => x.Syl == query.Syl)
.AndIF(query.Nature >= 0, x => x.Nature == query.Nature)
.ToExpression();//注意 这一句 不能少
// var templist = await d_UniversityRepository.Query(c => universityids.Contains(c.Id));
var info = await d_UniversityRepository.QueryPage(exp, query.PageIndex, query.PageSize, "Rank Asc");
if (info.data.Count() <= 0)
return new PageModel<UniversityResult>() { };
List<UniversityResult> list = new List<UniversityResult>() { };