feat:该表查询条件

develop
old易 2023-09-20 18:12:52 +08:00
parent 657d76d976
commit 865829931a
2 changed files with 11 additions and 27 deletions

View File

@ -1,6 +1,7 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Threading.Tasks;
using LinqKit;
using Microsoft.AspNetCore.Authorization;
@ -10,6 +11,9 @@ using New_College.IServices;
using New_College.Model;
using New_College.Model.Models;
using New_College.Model.Request;
using New_College.Model.ViewModels;
using Newtonsoft.Json;
using SqlSugar;
namespace New_College.Api.Controllers.Front
{
@ -40,20 +44,14 @@ namespace New_College.Api.Controllers.Front
{
try
{
var query = new List<string>();
var universityitems = JsonConvert.DeserializeObject<List<string>>(request.UniversityName);
var majorsitems = JsonConvert.DeserializeObject<List<string>>(request.MajorName);
Expression<Func<SubjectSelection, bool>> exp = Expressionable.Create<SubjectSelection>() //创建表达式
.AndIF(!string.IsNullOrEmpty(request.UniversityName), w => universityitems.Contains(w.UniversityName))
.AndIF(!string.IsNullOrEmpty(request.MajorName), w => majorsitems.Contains(w.MajorName))
.ToExpression();//注意 这一句 不能少
var subjectlist = new PageModel<SubjectSelection>();
if (request.UniversityName != null)
{
query = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(request.UniversityName);
subjectlist = await _selectionServices.QueryPage(w => query.Contains(w.UniversityName), request.PageIndex, request.PageSize);
}
if (request.MajorName != null)
{
query = Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(request.MajorName);
subjectlist = await _selectionServices.QueryPage(w => query.Contains(w.MajorName), request.PageIndex, request.PageSize);
}
var subjectlist = await _selectionServices.QueryPage(exp, request.PageIndex, request.PageSize);
return new MessageModel<PageModel<SubjectSelection>>()
{
msg = "success",

View File

@ -396,20 +396,6 @@ 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 (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))