----bug 修复中

develop
易大师 2021-06-28 20:04:40 +08:00
parent 24d9764e78
commit f65d0a16e1
6 changed files with 69 additions and 35 deletions

View File

@ -20,9 +20,11 @@ namespace New_College.Api.Controllers.Front
public class EnrollMentPlansController : ControllerBase
{
private readonly IT_EnrollmentPlaneServices t_EnrollmentPlane;
public EnrollMentPlansController(IT_EnrollmentPlaneServices enrollmentPlaneServices)
private readonly IT_EnrollmentBatchServices t_EnrollmentBatch;
public EnrollMentPlansController(IT_EnrollmentPlaneServices enrollmentPlaneServices, IT_EnrollmentBatchServices t_EnrollmentBatchServices)
{
this.t_EnrollmentPlane = enrollmentPlaneServices;
this.t_EnrollmentBatch = t_EnrollmentBatchServices;
}
@ -32,16 +34,18 @@ namespace New_College.Api.Controllers.Front
/// <param name="request"></param>
/// <returns></returns>
[HttpGet]
public async Task<MessageModel<List<EnrollmentPlansResult>>> GetEnrollmentPlans([FromQuery] EnrollmentPlanRequest request)
public async Task<MessageModel<PageModel<EnrollmentPlansResult>>> GetEnrollmentPlans([FromQuery] EnrollmentPlanRequest request)
{
try
{
var planinfo = await this.t_EnrollmentPlane.Query(e => e.IsDelete == false && e.Area_Id == request.AreaId && e.Years == request.Years);
if (planinfo.Any())
{
var BatchtypeId = (await this.t_EnrollmentBatch.Query(e => e.Year == request.Years && e.AreaId == request.AreaId && e.Batch_name == request.BatchName)).FirstOrDefault().Id;
request.PlanId = planinfo.FirstOrDefault().Id;
request.BatchtypeId = BatchtypeId;
var result = await this.t_EnrollmentPlane.GetEnrollmentPlans(request);
return new MessageModel<List<EnrollmentPlansResult>>()
return new MessageModel<PageModel<EnrollmentPlansResult>>()
{
msg = "success",
response = result,
@ -50,7 +54,7 @@ namespace New_College.Api.Controllers.Front
}
else
{
return new MessageModel<List<EnrollmentPlansResult>>()
return new MessageModel<PageModel<EnrollmentPlansResult>>()
{
msg = "相关信息更新中...",
};
@ -58,7 +62,7 @@ namespace New_College.Api.Controllers.Front
}
catch (Exception ex)
{
return new MessageModel<List<EnrollmentPlansResult>>()
return new MessageModel<PageModel<EnrollmentPlansResult>>()
{
msg = ex.Message
};

View File

@ -1,4 +1,5 @@
using New_College.IServices.BASE;
using New_College.Model;
using New_College.Model.Models;
using New_College.Model.ViewModels.Query;
using New_College.Model.ViewModels.Result;
@ -12,7 +13,7 @@ namespace New_College.IServices
/// </summary>
public interface IT_EnrollmentPlaneServices : IBaseServices<T_EnrollmentPlane>
{
Task<bool> Import();
//Task<bool> Import();
/// <summary>
@ -20,7 +21,7 @@ namespace New_College.IServices
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
Task<List<EnrollmentPlansResult>> GetEnrollmentPlans(EnrollmentPlanRequest request);
Task<PageModel<EnrollmentPlansResult>> GetEnrollmentPlans(EnrollmentPlanRequest request);
}

View File

@ -4,7 +4,7 @@ using System.Text;
namespace New_College.Model.ViewModels.Query
{
public class EnrollmentPlanRequest
public class EnrollmentPlanRequest : BasePageRequest
{
public string UniversityName { get; set; }
@ -18,5 +18,7 @@ namespace New_College.Model.ViewModels.Query
public string BatchName { get; set; }
public int BatchtypeId { get; set; }
}
}

View File

@ -1,4 +1,5 @@
using New_College.IRepository.Base;
using New_College.Model;
using New_College.Model.Models;
using New_College.Model.ViewModels.Query;
using New_College.Model.ViewModels.Result;
@ -7,11 +8,11 @@ using System.Threading.Tasks;
namespace New_College.IRepository
{
/// <summary>
/// IT_EnrollmentPlaneRepository
/// </summary>
/// <summary>
/// IT_EnrollmentPlaneRepository
/// </summary>
public interface IT_EnrollmentPlaneRepository : IBaseRepository<T_EnrollmentPlane>
{
Task<List<EnrollmentPlansResult>> GetEnrollmentPlans(EnrollmentPlanRequest request);
Task<PageModel<EnrollmentPlansResult>> GetEnrollmentPlans(EnrollmentPlanRequest request);
}
}

View File

@ -1,11 +1,14 @@
using New_College.IRepository;
using New_College.IRepository.UnitOfWork;
using New_College.Model;
using New_College.Model.Models;
using New_College.Model.ViewModels.Query;
using New_College.Model.ViewModels.Result;
using New_College.Repository.Base;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace New_College.Repository
@ -15,33 +18,54 @@ namespace New_College.Repository
/// </summary>
public class T_EnrollmentPlaneRepository : BaseRepository<T_EnrollmentPlane>, IT_EnrollmentPlaneRepository
{
public T_EnrollmentPlaneRepository(IUnitOfWork unitOfWork) : base(unitOfWork)
private readonly ID_UniversityRepository d_University;
public T_EnrollmentPlaneRepository(IUnitOfWork unitOfWork, ID_UniversityRepository d_UniversityRepository) : base(unitOfWork)
{
this.d_University = d_UniversityRepository;
}
/// <summary>
///
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public async Task<List<EnrollmentPlansResult>> GetEnrollmentPlans(EnrollmentPlanRequest request)
public async Task<PageModel<EnrollmentPlansResult>> GetEnrollmentPlans(EnrollmentPlanRequest request)
{
var planinfo = await this.Db.Queryable<T_EnrollmentPlanedesc, D_University, T_EnrollmentBatch>((plans, universitys, batchs) => new object[] { JoinType.Left, plans.UniversityId == universitys.Id, JoinType.Left, plans.BatchtypeId == batchs.Id })
.Where((plans, universitys) => plans.PlanId == request.PlanId)
.WhereIF(!string.IsNullOrEmpty(request.UniversityName), (plans, universitys, batchs) => universitys.Name.Contains(request.UniversityName))
.WhereIF(!string.IsNullOrEmpty(request.MajorName), (plans, universitys, batchs) => plans.MajorName.Contains(request.MajorName))
.WhereIF(!string.IsNullOrEmpty(request.BatchName), (plans, universitys, batchs) => batchs.Batch_name.Contains(request.BatchName))
.OrderBy((plans) => plans.OrderSort, OrderByType.Desc).Select((plans, universitys, batchs) => new EnrollmentPlansResult
{
Id = plans.Id,
BatchName = batchs.Batch_name,
MajorName = plans.MajorName,
PlanCount = plans.Plancount,
UniversityName = universitys.Name
}).ToListAsync();
return planinfo;
;
var ulist = new List<int>();
RefAsync<int> totalNumber = 0;
if (!string.IsNullOrWhiteSpace(request.UniversityName))
{
ulist = (await this.d_University.Query(e => e.Name.Contains(request.UniversityName))).Select(s => s.Id).ToList();
}
var planinfo = await this.Db.Queryable<T_EnrollmentPlanedesc, D_University, T_EnrollmentBatch>((plans, universitys, Batchtype) => new object[] { JoinType.Left, plans.UniversityId == universitys.Id, JoinType.Left, plans.BatchtypeId == Batchtype.Id })
.Where(plans => plans.PlanId == request.PlanId && plans.BatchtypeId == request.BatchtypeId)
.WhereIF(ulist.Any() && ulist.Count() > 0, plans => ulist.Contains(plans.UniversityId))
.WhereIF(!string.IsNullOrEmpty(request.MajorName), plans => plans.MajorName.Contains(request.MajorName))
.OrderBy((plans) => plans.OrderSort, OrderByType.Desc).Select((plans, universitys, Batchtype) => new EnrollmentPlansResult
{
Id = plans.Id,
BatchName = Batchtype.Batch_name,
MajorName = plans.MajorName,
PlanCount = plans.Plancount,
UniversityName = universitys.Name
}).ToPageListAsync(request.PageIndex, request.PageSize, totalNumber);
return new PageModel<EnrollmentPlansResult>()
{
data = planinfo,
page = request.PageIndex,
PageSize = request.PageSize,
dataCount = totalNumber,
pageCount = (int)Math.Ceiling(totalNumber / Convert.ToDecimal(request.PageSize))
};
}
}
}

View File

@ -13,6 +13,7 @@ using System.Data.Entity.ModelConfiguration.Conventions;
using System;
using New_College.Model.ViewModels.Result;
using New_College.Model.ViewModels.Query;
using New_College.Model;
namespace New_College.Services
{
@ -34,15 +35,16 @@ namespace New_College.Services
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public async Task<List<EnrollmentPlansResult>> GetEnrollmentPlans(EnrollmentPlanRequest request)
public async Task<PageModel<EnrollmentPlansResult>> GetEnrollmentPlans(EnrollmentPlanRequest request)
{
return await this.planeRepository.GetEnrollmentPlans(request);
}
public Task<bool> Import()
{
throw new NotImplementedException();
}
//public Task<bool> Import()
//{
// throw new NotImplementedException();
//}
#region 2019上海招生分数更新
///// <summary>