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

View File

@ -1,4 +1,5 @@
using New_College.IServices.BASE; using New_College.IServices.BASE;
using New_College.Model;
using New_College.Model.Models; using New_College.Model.Models;
using New_College.Model.ViewModels.Query; using New_College.Model.ViewModels.Query;
using New_College.Model.ViewModels.Result; using New_College.Model.ViewModels.Result;
@ -12,7 +13,7 @@ namespace New_College.IServices
/// </summary> /// </summary>
public interface IT_EnrollmentPlaneServices : IBaseServices<T_EnrollmentPlane> public interface IT_EnrollmentPlaneServices : IBaseServices<T_EnrollmentPlane>
{ {
Task<bool> Import(); //Task<bool> Import();
/// <summary> /// <summary>
@ -20,7 +21,7 @@ namespace New_College.IServices
/// </summary> /// </summary>
/// <param name="request"></param> /// <param name="request"></param>
/// <returns></returns> /// <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 namespace New_College.Model.ViewModels.Query
{ {
public class EnrollmentPlanRequest public class EnrollmentPlanRequest : BasePageRequest
{ {
public string UniversityName { get; set; } public string UniversityName { get; set; }
@ -18,5 +18,7 @@ namespace New_College.Model.ViewModels.Query
public string BatchName { get; set; } public string BatchName { get; set; }
public int BatchtypeId { get; set; }
} }
} }

View File

@ -1,4 +1,5 @@
using New_College.IRepository.Base; using New_College.IRepository.Base;
using New_College.Model;
using New_College.Model.Models; using New_College.Model.Models;
using New_College.Model.ViewModels.Query; using New_College.Model.ViewModels.Query;
using New_College.Model.ViewModels.Result; using New_College.Model.ViewModels.Result;
@ -7,11 +8,11 @@ using System.Threading.Tasks;
namespace New_College.IRepository namespace New_College.IRepository
{ {
/// <summary> /// <summary>
/// IT_EnrollmentPlaneRepository /// IT_EnrollmentPlaneRepository
/// </summary> /// </summary>
public interface IT_EnrollmentPlaneRepository : IBaseRepository<T_EnrollmentPlane> 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;
using New_College.IRepository.UnitOfWork; using New_College.IRepository.UnitOfWork;
using New_College.Model;
using New_College.Model.Models; using New_College.Model.Models;
using New_College.Model.ViewModels.Query; using New_College.Model.ViewModels.Query;
using New_College.Model.ViewModels.Result; using New_College.Model.ViewModels.Result;
using New_College.Repository.Base; using New_College.Repository.Base;
using SqlSugar; using SqlSugar;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
namespace New_College.Repository namespace New_College.Repository
@ -15,33 +18,54 @@ namespace New_College.Repository
/// </summary> /// </summary>
public class T_EnrollmentPlaneRepository : BaseRepository<T_EnrollmentPlane>, IT_EnrollmentPlaneRepository 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>
/// ///
/// </summary> /// </summary>
/// <param name="request"></param> /// <param name="request"></param>
/// <returns></returns> /// <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 }) var ulist = new List<int>();
.Where((plans, universitys) => plans.PlanId == request.PlanId) RefAsync<int> totalNumber = 0;
.WhereIF(!string.IsNullOrEmpty(request.UniversityName), (plans, universitys, batchs) => universitys.Name.Contains(request.UniversityName)) if (!string.IsNullOrWhiteSpace(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)) ulist = (await this.d_University.Query(e => e.Name.Contains(request.UniversityName))).Select(s => s.Id).ToList();
.OrderBy((plans) => plans.OrderSort, OrderByType.Desc).Select((plans, universitys, batchs) => new EnrollmentPlansResult }
{ 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 })
Id = plans.Id, .Where(plans => plans.PlanId == request.PlanId && plans.BatchtypeId == request.BatchtypeId)
BatchName = batchs.Batch_name, .WhereIF(ulist.Any() && ulist.Count() > 0, plans => ulist.Contains(plans.UniversityId))
MajorName = plans.MajorName, .WhereIF(!string.IsNullOrEmpty(request.MajorName), plans => plans.MajorName.Contains(request.MajorName))
PlanCount = plans.Plancount, .OrderBy((plans) => plans.OrderSort, OrderByType.Desc).Select((plans, universitys, Batchtype) => new EnrollmentPlansResult
UniversityName = universitys.Name {
}).ToListAsync(); Id = plans.Id,
return planinfo; 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 System;
using New_College.Model.ViewModels.Result; using New_College.Model.ViewModels.Result;
using New_College.Model.ViewModels.Query; using New_College.Model.ViewModels.Query;
using New_College.Model;
namespace New_College.Services namespace New_College.Services
{ {
@ -34,15 +35,16 @@ namespace New_College.Services
/// </summary> /// </summary>
/// <param name="request"></param> /// <param name="request"></param>
/// <returns></returns> /// <returns></returns>
public async Task<List<EnrollmentPlansResult>> GetEnrollmentPlans(EnrollmentPlanRequest request) public async Task<PageModel<EnrollmentPlansResult>> GetEnrollmentPlans(EnrollmentPlanRequest request)
{ {
return await this.planeRepository.GetEnrollmentPlans(request); return await this.planeRepository.GetEnrollmentPlans(request);
} }
public Task<bool> Import() //public Task<bool> Import()
{ //{
throw new NotImplementedException(); // throw new NotImplementedException();
} //}
#region 2019上海招生分数更新 #region 2019上海招生分数更新
///// <summary> ///// <summary>